payload 4.0.0-internal.cd69eef → 4.0.0-internal.ce66a41
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/bin.js +17 -24
- package/dist/admin/RichText.d.ts +23 -1
- package/dist/admin/RichText.d.ts.map +1 -1
- package/dist/admin/RichText.js.map +1 -1
- package/dist/admin/adapters/devReload.d.ts +13 -0
- package/dist/admin/adapters/devReload.d.ts.map +1 -1
- package/dist/admin/adapters/devReload.js +14 -1
- package/dist/admin/adapters/devReload.js.map +1 -1
- package/dist/admin/fields/Array.d.ts +11 -13
- package/dist/admin/fields/Array.d.ts.map +1 -1
- package/dist/admin/fields/Array.js.map +1 -1
- package/dist/admin/fields/Blocks.d.ts +13 -16
- package/dist/admin/fields/Blocks.d.ts.map +1 -1
- package/dist/admin/fields/Blocks.js.map +1 -1
- package/dist/admin/fields/Checkbox.d.ts +11 -13
- package/dist/admin/fields/Checkbox.d.ts.map +1 -1
- package/dist/admin/fields/Checkbox.js.map +1 -1
- package/dist/admin/fields/Code.d.ts +11 -13
- package/dist/admin/fields/Code.d.ts.map +1 -1
- package/dist/admin/fields/Code.js.map +1 -1
- package/dist/admin/fields/Collapsible.d.ts +11 -13
- package/dist/admin/fields/Collapsible.d.ts.map +1 -1
- package/dist/admin/fields/Collapsible.js.map +1 -1
- package/dist/admin/fields/Date.d.ts +11 -13
- package/dist/admin/fields/Date.d.ts.map +1 -1
- package/dist/admin/fields/Date.js.map +1 -1
- package/dist/admin/fields/Email.d.ts +11 -13
- package/dist/admin/fields/Email.d.ts.map +1 -1
- package/dist/admin/fields/Email.js.map +1 -1
- package/dist/admin/fields/Group.d.ts +11 -13
- package/dist/admin/fields/Group.d.ts.map +1 -1
- package/dist/admin/fields/Group.js.map +1 -1
- package/dist/admin/fields/JSON.d.ts +11 -13
- package/dist/admin/fields/JSON.d.ts.map +1 -1
- package/dist/admin/fields/JSON.js.map +1 -1
- package/dist/admin/fields/Join.d.ts +12 -14
- package/dist/admin/fields/Join.d.ts.map +1 -1
- package/dist/admin/fields/Join.js.map +1 -1
- package/dist/admin/fields/Number.d.ts +11 -13
- package/dist/admin/fields/Number.d.ts.map +1 -1
- package/dist/admin/fields/Number.js.map +1 -1
- package/dist/admin/fields/Point.d.ts +11 -13
- package/dist/admin/fields/Point.d.ts.map +1 -1
- package/dist/admin/fields/Point.js.map +1 -1
- package/dist/admin/fields/Radio.d.ts +11 -13
- package/dist/admin/fields/Radio.d.ts.map +1 -1
- package/dist/admin/fields/Radio.js.map +1 -1
- package/dist/admin/fields/Relationship.d.ts +11 -13
- package/dist/admin/fields/Relationship.d.ts.map +1 -1
- package/dist/admin/fields/Relationship.js.map +1 -1
- package/dist/admin/fields/RichText.d.ts +13 -15
- package/dist/admin/fields/RichText.d.ts.map +1 -1
- package/dist/admin/fields/RichText.js.map +1 -1
- package/dist/admin/fields/Row.d.ts +10 -12
- package/dist/admin/fields/Row.d.ts.map +1 -1
- package/dist/admin/fields/Row.js.map +1 -1
- package/dist/admin/fields/Select.d.ts +11 -13
- package/dist/admin/fields/Select.d.ts.map +1 -1
- package/dist/admin/fields/Select.js.map +1 -1
- package/dist/admin/fields/Tabs.d.ts +11 -13
- package/dist/admin/fields/Tabs.d.ts.map +1 -1
- package/dist/admin/fields/Tabs.js.map +1 -1
- package/dist/admin/fields/Text.d.ts +11 -13
- package/dist/admin/fields/Text.d.ts.map +1 -1
- package/dist/admin/fields/Text.js.map +1 -1
- package/dist/admin/fields/Textarea.d.ts +11 -13
- package/dist/admin/fields/Textarea.d.ts.map +1 -1
- package/dist/admin/fields/Textarea.js.map +1 -1
- package/dist/admin/fields/UI.d.ts +3 -5
- package/dist/admin/fields/UI.d.ts.map +1 -1
- package/dist/admin/fields/UI.js.map +1 -1
- package/dist/admin/fields/Upload.d.ts +11 -13
- package/dist/admin/fields/Upload.d.ts.map +1 -1
- package/dist/admin/fields/Upload.js.map +1 -1
- package/dist/admin/forms/Description.d.ts +0 -2
- package/dist/admin/forms/Description.d.ts.map +1 -1
- package/dist/admin/forms/Description.js.map +1 -1
- package/dist/admin/forms/Diff.d.ts +0 -2
- package/dist/admin/forms/Diff.d.ts.map +1 -1
- package/dist/admin/forms/Diff.js.map +1 -1
- package/dist/admin/forms/Error.d.ts +0 -2
- package/dist/admin/forms/Error.d.ts.map +1 -1
- package/dist/admin/forms/Error.js.map +1 -1
- package/dist/admin/forms/Field.d.ts +4 -2
- package/dist/admin/forms/Field.d.ts.map +1 -1
- package/dist/admin/forms/Field.js.map +1 -1
- package/dist/admin/forms/Form.d.ts +2 -0
- package/dist/admin/forms/Form.d.ts.map +1 -1
- package/dist/admin/forms/Form.js.map +1 -1
- package/dist/admin/forms/Label.d.ts +2 -2
- package/dist/admin/forms/Label.d.ts.map +1 -1
- package/dist/admin/forms/Label.js.map +1 -1
- package/dist/admin/functions/index.d.ts +15 -11
- package/dist/admin/functions/index.d.ts.map +1 -1
- package/dist/admin/functions/index.js.map +1 -1
- package/dist/admin/getRequestLocale.d.ts +6 -0
- package/dist/admin/getRequestLocale.d.ts.map +1 -0
- package/dist/admin/getRequestLocale.js +38 -0
- package/dist/admin/getRequestLocale.js.map +1 -0
- package/dist/admin/initAdminContext.d.ts +39 -0
- package/dist/admin/initAdminContext.d.ts.map +1 -0
- package/dist/admin/initAdminContext.js +154 -0
- package/dist/admin/initAdminContext.js.map +1 -0
- package/dist/admin/types.d.ts +32 -32
- package/dist/admin/types.d.ts.map +1 -1
- package/dist/admin/types.js.map +1 -1
- package/dist/admin/views/dashboard.d.ts +2 -2
- package/dist/admin/views/dashboard.d.ts.map +1 -1
- package/dist/admin/views/dashboard.js.map +1 -1
- package/dist/admin/views/index.d.ts +2 -2
- package/dist/admin/views/index.d.ts.map +1 -1
- package/dist/admin/views/index.js.map +1 -1
- package/dist/admin/views/list.d.ts +9 -0
- package/dist/admin/views/list.d.ts.map +1 -1
- package/dist/admin/views/list.js.map +1 -1
- package/dist/auth/applyUserReadAccess.d.ts +13 -0
- package/dist/auth/applyUserReadAccess.d.ts.map +1 -0
- package/dist/auth/applyUserReadAccess.js +41 -0
- package/dist/auth/applyUserReadAccess.js.map +1 -0
- package/dist/auth/baseFields/apiKey/canCreateOrUpdateAPIKey.d.ts +4 -0
- package/dist/auth/baseFields/apiKey/canCreateOrUpdateAPIKey.d.ts.map +1 -0
- package/dist/auth/baseFields/apiKey/canCreateOrUpdateAPIKey.js +20 -0
- package/dist/auth/baseFields/apiKey/canCreateOrUpdateAPIKey.js.map +1 -0
- package/dist/auth/baseFields/apiKey/encryptAPIKey.d.ts +4 -0
- package/dist/auth/baseFields/apiKey/encryptAPIKey.d.ts.map +1 -0
- package/dist/auth/baseFields/apiKey/encryptAPIKey.js +11 -0
- package/dist/auth/baseFields/apiKey/encryptAPIKey.js.map +1 -0
- package/dist/auth/baseFields/apiKey/getAPIKeyLast4.d.ts +3 -0
- package/dist/auth/baseFields/apiKey/getAPIKeyLast4.d.ts.map +1 -0
- package/dist/auth/baseFields/apiKey/getAPIKeyLast4.js +5 -0
- package/dist/auth/baseFields/apiKey/getAPIKeyLast4.js.map +1 -0
- package/dist/auth/baseFields/apiKey/omitAPIKey.d.ts +5 -0
- package/dist/auth/baseFields/apiKey/omitAPIKey.d.ts.map +1 -0
- package/dist/auth/baseFields/apiKey/omitAPIKey.js +11 -0
- package/dist/auth/baseFields/apiKey/omitAPIKey.js.map +1 -0
- package/dist/auth/baseFields/apiKey/omitAPIKeyIndex.d.ts +4 -0
- package/dist/auth/baseFields/apiKey/omitAPIKeyIndex.d.ts.map +1 -0
- package/dist/auth/baseFields/apiKey/omitAPIKeyIndex.js +5 -0
- package/dist/auth/baseFields/apiKey/omitAPIKeyIndex.js.map +1 -0
- package/dist/auth/baseFields/apiKey/omitEncryptedAPIKey.d.ts +4 -0
- package/dist/auth/baseFields/apiKey/omitEncryptedAPIKey.d.ts.map +1 -0
- package/dist/auth/baseFields/apiKey/omitEncryptedAPIKey.js +5 -0
- package/dist/auth/baseFields/apiKey/omitEncryptedAPIKey.js.map +1 -0
- package/dist/auth/baseFields/apiKey/setAPIKeyIndex.d.ts +4 -0
- package/dist/auth/baseFields/apiKey/setAPIKeyIndex.d.ts.map +1 -0
- package/dist/auth/baseFields/apiKey/setAPIKeyIndex.js +12 -0
- package/dist/auth/baseFields/apiKey/setAPIKeyIndex.js.map +1 -0
- package/dist/auth/baseFields/apiKey/setKeyLast4.d.ts +4 -0
- package/dist/auth/baseFields/apiKey/setKeyLast4.d.ts.map +1 -0
- package/dist/auth/baseFields/apiKey/setKeyLast4.js +12 -0
- package/dist/auth/baseFields/apiKey/setKeyLast4.js.map +1 -0
- package/dist/auth/baseFields/apiKey.d.ts +6 -6
- package/dist/auth/baseFields/apiKey.d.ts.map +1 -1
- package/dist/auth/baseFields/apiKey.js +88 -57
- package/dist/auth/baseFields/apiKey.js.map +1 -1
- package/dist/auth/baseFields/auth.d.ts +1 -0
- package/dist/auth/baseFields/auth.d.ts.map +1 -1
- package/dist/auth/baseFields/auth.js +9 -0
- package/dist/auth/baseFields/auth.js.map +1 -1
- package/dist/auth/crypto.d.ts +73 -2
- package/dist/auth/crypto.d.ts.map +1 -1
- package/dist/auth/crypto.js +90 -13
- package/dist/auth/crypto.js.map +1 -1
- package/dist/auth/defaultUnlockAccess.d.ts +3 -0
- package/dist/auth/defaultUnlockAccess.d.ts.map +1 -0
- package/dist/auth/defaultUnlockAccess.js +8 -0
- package/dist/auth/defaultUnlockAccess.js.map +1 -0
- package/dist/auth/endpoints/index.d.ts +1 -0
- package/dist/auth/endpoints/index.d.ts.map +1 -1
- package/dist/auth/endpoints/index.js +8 -0
- package/dist/auth/endpoints/index.js.map +1 -1
- package/dist/auth/endpoints/login.d.ts.map +1 -1
- package/dist/auth/endpoints/login.js +2 -11
- package/dist/auth/endpoints/login.js.map +1 -1
- package/dist/auth/endpoints/refresh.d.ts.map +1 -1
- package/dist/auth/endpoints/refresh.js +4 -6
- package/dist/auth/endpoints/refresh.js.map +1 -1
- package/dist/auth/endpoints/revealAPIKey.d.ts +7 -0
- package/dist/auth/endpoints/revealAPIKey.d.ts.map +1 -0
- package/dist/auth/endpoints/revealAPIKey.js +122 -0
- package/dist/auth/endpoints/revealAPIKey.js.map +1 -0
- package/dist/auth/executeAccess.d.ts +2 -1
- package/dist/auth/executeAccess.d.ts.map +1 -1
- package/dist/auth/executeAccess.js +2 -1
- package/dist/auth/executeAccess.js.map +1 -1
- package/dist/auth/getAccessResults.js +1 -0
- package/dist/auth/getAccessResults.js.map +1 -1
- package/dist/auth/getAuthFields.d.ts +1 -1
- package/dist/auth/getAuthFields.d.ts.map +1 -1
- package/dist/auth/getAuthFields.js +7 -4
- package/dist/auth/getAuthFields.js.map +1 -1
- package/dist/auth/getFieldsToSign.d.ts.map +1 -1
- package/dist/auth/getFieldsToSign.js +20 -10
- package/dist/auth/getFieldsToSign.js.map +1 -1
- package/dist/auth/getLoginOptions.js.map +1 -1
- package/dist/auth/jwt.d.ts.map +1 -1
- package/dist/auth/jwt.js +2 -0
- package/dist/auth/jwt.js.map +1 -1
- package/dist/auth/jwtAuth.d.ts +9 -0
- package/dist/auth/jwtAuth.d.ts.map +1 -0
- package/dist/auth/jwtAuth.js +8 -0
- package/dist/auth/jwtAuth.js.map +1 -0
- package/dist/auth/loginWithCookie.d.ts +33 -0
- package/dist/auth/loginWithCookie.d.ts.map +1 -0
- package/dist/auth/loginWithCookie.js +34 -0
- package/dist/auth/loginWithCookie.js.map +1 -0
- package/dist/auth/operations/access.d.ts.map +1 -1
- package/dist/auth/operations/access.js +3 -9
- package/dist/auth/operations/access.js.map +1 -1
- package/dist/auth/operations/auth.d.ts.map +1 -1
- package/dist/auth/operations/auth.js +16 -21
- package/dist/auth/operations/auth.js.map +1 -1
- package/dist/auth/operations/forgotPassword.d.ts.map +1 -1
- package/dist/auth/operations/forgotPassword.js +97 -14
- package/dist/auth/operations/forgotPassword.js.map +1 -1
- package/dist/auth/operations/local/auth.js +7 -4
- package/dist/auth/operations/local/auth.js.map +1 -1
- package/dist/auth/operations/local/forgotPassword.d.ts +2 -2
- package/dist/auth/operations/local/forgotPassword.d.ts.map +1 -1
- package/dist/auth/operations/local/forgotPassword.js +6 -3
- package/dist/auth/operations/local/forgotPassword.js.map +1 -1
- package/dist/auth/operations/local/login.d.ts +2 -2
- package/dist/auth/operations/local/login.d.ts.map +1 -1
- package/dist/auth/operations/local/login.js +6 -3
- package/dist/auth/operations/local/login.js.map +1 -1
- package/dist/auth/operations/local/resetPassword.js +5 -2
- package/dist/auth/operations/local/resetPassword.js.map +1 -1
- package/dist/auth/operations/local/unlock.d.ts +2 -2
- package/dist/auth/operations/local/unlock.d.ts.map +1 -1
- package/dist/auth/operations/local/unlock.js +6 -3
- package/dist/auth/operations/local/unlock.js.map +1 -1
- package/dist/auth/operations/local/verifyEmail.js +5 -2
- package/dist/auth/operations/local/verifyEmail.js.map +1 -1
- package/dist/auth/operations/login.d.ts.map +1 -1
- package/dist/auth/operations/login.js +48 -26
- package/dist/auth/operations/login.js.map +1 -1
- package/dist/auth/operations/me.d.ts +0 -7
- package/dist/auth/operations/me.d.ts.map +1 -1
- package/dist/auth/operations/me.js +0 -6
- package/dist/auth/operations/me.js.map +1 -1
- package/dist/auth/operations/refresh.d.ts +0 -7
- package/dist/auth/operations/refresh.d.ts.map +1 -1
- package/dist/auth/operations/refresh.js +32 -15
- package/dist/auth/operations/refresh.js.map +1 -1
- package/dist/auth/operations/registerFirstUser.d.ts.map +1 -1
- package/dist/auth/operations/registerFirstUser.js +4 -4
- package/dist/auth/operations/registerFirstUser.js.map +1 -1
- package/dist/auth/operations/resetPassword.d.ts.map +1 -1
- package/dist/auth/operations/resetPassword.js +31 -22
- package/dist/auth/operations/resetPassword.js.map +1 -1
- package/dist/auth/operations/unlock.d.ts.map +1 -1
- package/dist/auth/operations/unlock.js +1 -0
- package/dist/auth/operations/unlock.js.map +1 -1
- package/dist/auth/rotateSecret.d.ts +51 -0
- package/dist/auth/rotateSecret.d.ts.map +1 -0
- package/dist/auth/rotateSecret.js +131 -0
- package/dist/auth/rotateSecret.js.map +1 -0
- package/dist/auth/serverFunctions/cookies.d.ts +47 -0
- package/dist/auth/serverFunctions/cookies.d.ts.map +1 -0
- package/dist/auth/serverFunctions/cookies.js +52 -0
- package/dist/auth/serverFunctions/cookies.js.map +1 -0
- package/dist/auth/serverFunctions/login.d.ts +29 -0
- package/dist/auth/serverFunctions/login.d.ts.map +1 -0
- package/dist/auth/serverFunctions/login.js +65 -0
- package/dist/auth/serverFunctions/login.js.map +1 -0
- package/dist/auth/serverFunctions/logout.d.ts +17 -0
- package/dist/auth/serverFunctions/logout.d.ts.map +1 -0
- package/dist/auth/serverFunctions/logout.js +59 -0
- package/dist/auth/serverFunctions/logout.js.map +1 -0
- package/dist/auth/serverFunctions/refresh.d.ts +17 -0
- package/dist/auth/serverFunctions/refresh.d.ts.map +1 -0
- package/dist/auth/serverFunctions/refresh.js +62 -0
- package/dist/auth/serverFunctions/refresh.js.map +1 -0
- package/dist/auth/strategies/apiKey.d.ts.map +1 -1
- package/dist/auth/strategies/apiKey.js +42 -4
- package/dist/auth/strategies/apiKey.js.map +1 -1
- package/dist/auth/strategies/jwt.d.ts.map +1 -1
- package/dist/auth/strategies/jwt.js +83 -11
- package/dist/auth/strategies/jwt.js.map +1 -1
- package/dist/auth/strategies/local/authenticate.d.ts +5 -1
- package/dist/auth/strategies/local/authenticate.d.ts.map +1 -1
- package/dist/auth/strategies/local/authenticate.js +8 -3
- package/dist/auth/strategies/local/authenticate.js.map +1 -1
- package/dist/auth/strategies/local/generatePasswordSaltHash.d.ts +9 -1
- package/dist/auth/strategies/local/generatePasswordSaltHash.d.ts.map +1 -1
- package/dist/auth/strategies/local/generatePasswordSaltHash.js +61 -34
- package/dist/auth/strategies/local/generatePasswordSaltHash.js.map +1 -1
- package/dist/auth/strategies/local/register.d.ts.map +1 -1
- package/dist/auth/strategies/local/register.js +1 -0
- package/dist/auth/strategies/local/register.js.map +1 -1
- package/dist/auth/types.d.ts +36 -20
- package/dist/auth/types.d.ts.map +1 -1
- package/dist/auth/types.js.map +1 -1
- package/dist/auth/withBaseAccess.d.ts +22 -0
- package/dist/auth/withBaseAccess.d.ts.map +1 -0
- package/dist/auth/withBaseAccess.js +61 -0
- package/dist/auth/withBaseAccess.js.map +1 -0
- package/dist/{bin → cli/commands/build}/build.d.ts +8 -13
- package/dist/cli/commands/build/build.d.ts.map +1 -0
- package/dist/{bin → cli/commands/build}/build.js +26 -27
- package/dist/cli/commands/build/build.js.map +1 -0
- package/dist/cli/commands/build/index.d.ts +2 -0
- package/dist/cli/commands/build/index.d.ts.map +1 -0
- package/dist/cli/commands/build/index.js +26 -0
- package/dist/cli/commands/build/index.js.map +1 -0
- package/dist/cli/commands/collections/countDocuments.d.ts +2 -0
- package/dist/cli/commands/collections/countDocuments.d.ts.map +1 -0
- package/dist/cli/commands/collections/countDocuments.js +37 -0
- package/dist/cli/commands/collections/countDocuments.js.map +1 -0
- package/dist/cli/commands/collections/countVersions.d.ts +2 -0
- package/dist/cli/commands/collections/countVersions.d.ts.map +1 -0
- package/dist/cli/commands/collections/countVersions.js +36 -0
- package/dist/cli/commands/collections/countVersions.js.map +1 -0
- package/dist/cli/commands/collections/createDocuments.d.ts +2 -0
- package/dist/cli/commands/collections/createDocuments.d.ts.map +1 -0
- package/dist/cli/commands/collections/createDocuments.js +132 -0
- package/dist/cli/commands/collections/createDocuments.js.map +1 -0
- package/dist/cli/commands/collections/deleteDocuments.d.ts +2 -0
- package/dist/cli/commands/collections/deleteDocuments.d.ts.map +1 -0
- package/dist/cli/commands/collections/deleteDocuments.js +64 -0
- package/dist/cli/commands/collections/deleteDocuments.js.map +1 -0
- package/dist/cli/commands/collections/duplicateDocument.d.ts +2 -0
- package/dist/cli/commands/collections/duplicateDocument.d.ts.map +1 -0
- package/dist/cli/commands/collections/duplicateDocument.js +109 -0
- package/dist/cli/commands/collections/duplicateDocument.js.map +1 -0
- package/dist/cli/commands/collections/findDistinct.d.ts +2 -0
- package/dist/cli/commands/collections/findDistinct.d.ts.map +1 -0
- package/dist/cli/commands/collections/findDistinct.js +52 -0
- package/dist/cli/commands/collections/findDistinct.js.map +1 -0
- package/dist/cli/commands/collections/findDocuments.d.ts +2 -0
- package/dist/cli/commands/collections/findDocuments.d.ts.map +1 -0
- package/dist/cli/commands/collections/findDocuments.js +79 -0
- package/dist/cli/commands/collections/findDocuments.js.map +1 -0
- package/dist/cli/commands/collections/findVersionByID.d.ts +2 -0
- package/dist/cli/commands/collections/findVersionByID.d.ts.map +1 -0
- package/dist/cli/commands/collections/findVersionByID.js +48 -0
- package/dist/cli/commands/collections/findVersionByID.js.map +1 -0
- package/dist/cli/commands/collections/findVersions.d.ts +2 -0
- package/dist/cli/commands/collections/findVersions.d.ts.map +1 -0
- package/dist/cli/commands/collections/findVersions.js +57 -0
- package/dist/cli/commands/collections/findVersions.js.map +1 -0
- package/dist/cli/commands/collections/getCollectionSchema.d.ts +2 -0
- package/dist/cli/commands/collections/getCollectionSchema.d.ts.map +1 -0
- package/dist/cli/commands/collections/getCollectionSchema.js +61 -0
- package/dist/cli/commands/collections/getCollectionSchema.js.map +1 -0
- package/dist/cli/commands/collections/restoreVersion.d.ts +2 -0
- package/dist/cli/commands/collections/restoreVersion.d.ts.map +1 -0
- package/dist/cli/commands/collections/restoreVersion.js +47 -0
- package/dist/cli/commands/collections/restoreVersion.js.map +1 -0
- package/dist/cli/commands/collections/updateDocument.d.ts +2 -0
- package/dist/cli/commands/collections/updateDocument.d.ts.map +1 -0
- package/dist/cli/commands/collections/updateDocument.js +192 -0
- package/dist/cli/commands/collections/updateDocument.js.map +1 -0
- package/dist/cli/commands/data/input.d.ts +28 -0
- package/dist/cli/commands/data/input.d.ts.map +1 -0
- package/dist/cli/commands/data/input.js +76 -0
- package/dist/cli/commands/data/input.js.map +1 -0
- package/dist/cli/commands/data/utilities.d.ts +65 -0
- package/dist/cli/commands/data/utilities.d.ts.map +1 -0
- package/dist/cli/commands/data/utilities.js +67 -0
- package/dist/cli/commands/data/utilities.js.map +1 -0
- package/dist/cli/commands/generateDBSchema.d.ts +2 -0
- package/dist/cli/commands/generateDBSchema.d.ts.map +1 -0
- package/dist/cli/commands/generateDBSchema.js +29 -0
- package/dist/cli/commands/generateDBSchema.js.map +1 -0
- package/dist/cli/commands/generateImportMap/frameworkConventions.d.ts.map +1 -0
- package/dist/cli/commands/generateImportMap/frameworkConventions.js.map +1 -0
- package/dist/{bin/generateImportMap/index.d.ts → cli/commands/generateImportMap/generateImportMap.d.ts} +8 -4
- package/dist/cli/commands/generateImportMap/generateImportMap.d.ts.map +1 -0
- package/dist/{bin/generateImportMap/index.js → cli/commands/generateImportMap/generateImportMap.js} +9 -4
- package/dist/cli/commands/generateImportMap/generateImportMap.js.map +1 -0
- package/dist/cli/commands/generateImportMap/index.d.ts +2 -0
- package/dist/cli/commands/generateImportMap/index.d.ts.map +1 -0
- package/dist/cli/commands/generateImportMap/index.js +18 -0
- package/dist/cli/commands/generateImportMap/index.js.map +1 -0
- package/dist/{bin → cli/commands}/generateImportMap/iterateCollections.d.ts +3 -3
- package/dist/cli/commands/generateImportMap/iterateCollections.d.ts.map +1 -0
- package/dist/cli/commands/generateImportMap/iterateCollections.js.map +1 -0
- package/dist/{bin → cli/commands}/generateImportMap/iterateConfig.d.ts +2 -2
- package/dist/cli/commands/generateImportMap/iterateConfig.d.ts.map +1 -0
- package/dist/{bin → cli/commands}/generateImportMap/iterateConfig.js +1 -1
- package/dist/cli/commands/generateImportMap/iterateConfig.js.map +1 -0
- package/dist/{bin → cli/commands}/generateImportMap/iterateFields.d.ts +3 -3
- package/dist/cli/commands/generateImportMap/iterateFields.d.ts.map +1 -0
- package/dist/cli/commands/generateImportMap/iterateFields.js.map +1 -0
- package/dist/{bin → cli/commands}/generateImportMap/iterateGlobals.d.ts +3 -3
- package/dist/cli/commands/generateImportMap/iterateGlobals.d.ts.map +1 -0
- package/dist/cli/commands/generateImportMap/iterateGlobals.js.map +1 -0
- package/dist/{bin → cli/commands}/generateImportMap/utilities/addPayloadComponentToImportMap.d.ts +2 -2
- package/dist/cli/commands/generateImportMap/utilities/addPayloadComponentToImportMap.d.ts.map +1 -0
- package/dist/cli/commands/generateImportMap/utilities/addPayloadComponentToImportMap.js.map +1 -0
- package/dist/{bin → cli/commands}/generateImportMap/utilities/getFromImportMap.d.ts +2 -2
- package/dist/cli/commands/generateImportMap/utilities/getFromImportMap.d.ts.map +1 -0
- package/dist/cli/commands/generateImportMap/utilities/getFromImportMap.js.map +1 -0
- package/dist/cli/commands/generateImportMap/utilities/getImportMapToBaseDirPath.d.ts.map +1 -0
- package/dist/cli/commands/generateImportMap/utilities/getImportMapToBaseDirPath.js.map +1 -0
- package/dist/{bin → cli/commands}/generateImportMap/utilities/parsePayloadComponent.d.ts +1 -1
- package/dist/cli/commands/generateImportMap/utilities/parsePayloadComponent.d.ts.map +1 -0
- package/dist/cli/commands/generateImportMap/utilities/parsePayloadComponent.js.map +1 -0
- package/dist/cli/commands/generateImportMap/utilities/resolveImportMapFilePath.d.ts.map +1 -0
- package/dist/{bin → cli/commands}/generateImportMap/utilities/resolveImportMapFilePath.js +1 -1
- package/dist/cli/commands/generateImportMap/utilities/resolveImportMapFilePath.js.map +1 -0
- package/dist/cli/commands/generateTypes.d.ts +12 -0
- package/dist/cli/commands/generateTypes.d.ts.map +1 -0
- package/dist/{bin → cli/commands}/generateTypes.js +33 -7
- package/dist/cli/commands/generateTypes.js.map +1 -0
- package/dist/cli/commands/getConfigInfo.d.ts +2 -0
- package/dist/cli/commands/getConfigInfo.d.ts.map +1 -0
- package/dist/cli/commands/getConfigInfo.js +23 -0
- package/dist/cli/commands/getConfigInfo.js.map +1 -0
- package/dist/cli/commands/globals/countGlobalVersions.d.ts +2 -0
- package/dist/cli/commands/globals/countGlobalVersions.d.ts.map +1 -0
- package/dist/cli/commands/globals/countGlobalVersions.js +36 -0
- package/dist/cli/commands/globals/countGlobalVersions.js.map +1 -0
- package/dist/cli/commands/globals/findGlobal.d.ts +2 -0
- package/dist/cli/commands/globals/findGlobal.d.ts.map +1 -0
- package/dist/cli/commands/globals/findGlobal.js +42 -0
- package/dist/cli/commands/globals/findGlobal.js.map +1 -0
- package/dist/cli/commands/globals/findGlobalVersionByID.d.ts +2 -0
- package/dist/cli/commands/globals/findGlobalVersionByID.d.ts.map +1 -0
- package/dist/cli/commands/globals/findGlobalVersionByID.js +46 -0
- package/dist/cli/commands/globals/findGlobalVersionByID.js.map +1 -0
- package/dist/cli/commands/globals/findGlobalVersions.d.ts +2 -0
- package/dist/cli/commands/globals/findGlobalVersions.d.ts.map +1 -0
- package/dist/cli/commands/globals/findGlobalVersions.js +55 -0
- package/dist/cli/commands/globals/findGlobalVersions.js.map +1 -0
- package/dist/cli/commands/globals/getGlobalSchema.d.ts +2 -0
- package/dist/cli/commands/globals/getGlobalSchema.d.ts.map +1 -0
- package/dist/cli/commands/globals/getGlobalSchema.js +46 -0
- package/dist/cli/commands/globals/getGlobalSchema.js.map +1 -0
- package/dist/cli/commands/globals/restoreGlobalVersion.d.ts +2 -0
- package/dist/cli/commands/globals/restoreGlobalVersion.d.ts.map +1 -0
- package/dist/cli/commands/globals/restoreGlobalVersion.js +46 -0
- package/dist/cli/commands/globals/restoreGlobalVersion.js.map +1 -0
- package/dist/cli/commands/globals/updateGlobal.d.ts +2 -0
- package/dist/cli/commands/globals/updateGlobal.d.ts.map +1 -0
- package/dist/cli/commands/globals/updateGlobal.js +95 -0
- package/dist/cli/commands/globals/updateGlobal.js.map +1 -0
- package/dist/cli/commands/help.d.ts +2 -0
- package/dist/cli/commands/help.d.ts.map +1 -0
- package/dist/cli/commands/help.js +42 -0
- package/dist/cli/commands/help.js.map +1 -0
- package/dist/cli/commands/info.d.ts +2 -0
- package/dist/cli/commands/info.d.ts.map +1 -0
- package/dist/cli/commands/info.js +78 -0
- package/dist/cli/commands/info.js.map +1 -0
- package/dist/cli/commands/jobs/handleSchedules.d.ts +2 -0
- package/dist/cli/commands/jobs/handleSchedules.d.ts.map +1 -0
- package/dist/cli/commands/jobs/handleSchedules.js +17 -0
- package/dist/cli/commands/jobs/handleSchedules.js.map +1 -0
- package/dist/cli/commands/jobs/run.d.ts +2 -0
- package/dist/cli/commands/jobs/run.d.ts.map +1 -0
- package/dist/cli/commands/jobs/run.js +30 -0
- package/dist/cli/commands/jobs/run.js.map +1 -0
- package/dist/cli/commands/migrate/create.d.ts +2 -0
- package/dist/cli/commands/migrate/create.d.ts.map +1 -0
- package/dist/cli/commands/migrate/create.js +44 -0
- package/dist/cli/commands/migrate/create.js.map +1 -0
- package/dist/cli/commands/migrate/down.d.ts +2 -0
- package/dist/cli/commands/migrate/down.d.ts.map +1 -0
- package/dist/cli/commands/migrate/down.js +22 -0
- package/dist/cli/commands/migrate/down.js.map +1 -0
- package/dist/cli/commands/migrate/fresh.d.ts +2 -0
- package/dist/cli/commands/migrate/fresh.d.ts.map +1 -0
- package/dist/cli/commands/migrate/fresh.js +28 -0
- package/dist/cli/commands/migrate/fresh.js.map +1 -0
- package/dist/cli/commands/migrate/initialize.d.ts +11 -0
- package/dist/cli/commands/migrate/initialize.d.ts.map +1 -0
- package/dist/cli/commands/migrate/initialize.js +17 -0
- package/dist/cli/commands/migrate/initialize.js.map +1 -0
- package/dist/cli/commands/migrate/refresh.d.ts +2 -0
- package/dist/cli/commands/migrate/refresh.d.ts.map +1 -0
- package/dist/cli/commands/migrate/refresh.js +22 -0
- package/dist/cli/commands/migrate/refresh.js.map +1 -0
- package/dist/cli/commands/migrate/reset.d.ts +2 -0
- package/dist/cli/commands/migrate/reset.d.ts.map +1 -0
- package/dist/cli/commands/migrate/reset.js +22 -0
- package/dist/cli/commands/migrate/reset.js.map +1 -0
- package/dist/cli/commands/migrate/run.d.ts +2 -0
- package/dist/cli/commands/migrate/run.d.ts.map +1 -0
- package/dist/cli/commands/migrate/run.js +28 -0
- package/dist/cli/commands/migrate/run.js.map +1 -0
- package/dist/cli/commands/migrate/status.d.ts +2 -0
- package/dist/cli/commands/migrate/status.d.ts.map +1 -0
- package/dist/cli/commands/migrate/status.js +22 -0
- package/dist/cli/commands/migrate/status.js.map +1 -0
- package/dist/cli/commands/run.d.ts +2 -0
- package/dist/cli/commands/run.d.ts.map +1 -0
- package/dist/cli/commands/run.js +45 -0
- package/dist/cli/commands/run.js.map +1 -0
- package/dist/cli/defineCLICommand.d.ts +32 -0
- package/dist/cli/defineCLICommand.d.ts.map +1 -0
- package/dist/cli/defineCLICommand.js +26 -0
- package/dist/cli/defineCLICommand.js.map +1 -0
- package/dist/cli/index.d.ts +7 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +95 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/program/createHelp.d.ts +8 -0
- package/dist/cli/program/createHelp.d.ts.map +1 -0
- package/dist/cli/program/createHelp.js +26 -0
- package/dist/cli/program/createHelp.js.map +1 -0
- package/dist/cli/program/loadCommands.d.ts +12 -0
- package/dist/cli/program/loadCommands.d.ts.map +1 -0
- package/dist/cli/program/loadCommands.js +62 -0
- package/dist/cli/program/loadCommands.js.map +1 -0
- package/dist/cli/program/normalizeHelpArguments.d.ts +12 -0
- package/dist/cli/program/normalizeHelpArguments.d.ts.map +1 -0
- package/dist/cli/program/normalizeHelpArguments.js +34 -0
- package/dist/cli/program/normalizeHelpArguments.js.map +1 -0
- package/dist/cli/program/registerCommand.d.ts +10 -0
- package/dist/cli/program/registerCommand.d.ts.map +1 -0
- package/dist/cli/program/registerCommand.js +185 -0
- package/dist/cli/program/registerCommand.js.map +1 -0
- package/dist/cli/runtime/createRuntime.d.ts +9 -0
- package/dist/cli/runtime/createRuntime.d.ts.map +1 -0
- package/dist/cli/runtime/createRuntime.js +81 -0
- package/dist/cli/runtime/createRuntime.js.map +1 -0
- package/dist/cli/runtime/getCommandInput.d.ts +17 -0
- package/dist/cli/runtime/getCommandInput.d.ts.map +1 -0
- package/dist/cli/runtime/getCommandInput.js +86 -0
- package/dist/cli/runtime/getCommandInput.js.map +1 -0
- package/dist/cli/runtime/invokeCommand.d.ts +23 -0
- package/dist/cli/runtime/invokeCommand.d.ts.map +1 -0
- package/dist/cli/runtime/invokeCommand.js +107 -0
- package/dist/cli/runtime/invokeCommand.js.map +1 -0
- package/dist/cli/runtime/loadEnv.d.ts.map +1 -0
- package/dist/{bin → cli/runtime}/loadEnv.js +1 -1
- package/dist/cli/runtime/loadEnv.js.map +1 -0
- package/dist/cli/runtime/output.d.ts +50 -0
- package/dist/cli/runtime/output.d.ts.map +1 -0
- package/dist/cli/runtime/output.js +125 -0
- package/dist/cli/runtime/output.js.map +1 -0
- package/dist/cli/runtime/redirectOutputToStderr.d.ts +8 -0
- package/dist/cli/runtime/redirectOutputToStderr.d.ts.map +1 -0
- package/dist/cli/runtime/redirectOutputToStderr.js +31 -0
- package/dist/cli/runtime/redirectOutputToStderr.js.map +1 -0
- package/dist/collections/config/client.d.ts +6 -6
- package/dist/collections/config/client.d.ts.map +1 -1
- package/dist/collections/config/client.js +12 -11
- package/dist/collections/config/client.js.map +1 -1
- package/dist/collections/config/defaults.d.ts +6 -4
- package/dist/collections/config/defaults.d.ts.map +1 -1
- package/dist/collections/config/defaults.js +49 -33
- package/dist/collections/config/defaults.js.map +1 -1
- package/dist/collections/config/sanitize.d.ts +4 -8
- package/dist/collections/config/sanitize.d.ts.map +1 -1
- package/dist/collections/config/sanitize.js +100 -28
- package/dist/collections/config/sanitize.js.map +1 -1
- package/dist/collections/config/types.d.ts +76 -51
- package/dist/collections/config/types.d.ts.map +1 -1
- package/dist/collections/config/types.js.map +1 -1
- package/dist/collections/config/useAsThumbnail.d.ts +6 -0
- package/dist/collections/config/useAsThumbnail.d.ts.map +1 -0
- package/dist/collections/config/useAsThumbnail.js +21 -0
- package/dist/collections/config/useAsThumbnail.js.map +1 -0
- package/dist/collections/endpoints/index.d.ts +1 -0
- package/dist/collections/endpoints/index.d.ts.map +1 -1
- package/dist/collections/endpoints/index.js +6 -5
- package/dist/collections/endpoints/index.js.map +1 -1
- package/dist/collections/operations/count.d.ts.map +1 -1
- package/dist/collections/operations/count.js +65 -70
- package/dist/collections/operations/count.js.map +1 -1
- package/dist/collections/operations/countVersions.d.ts.map +1 -1
- package/dist/collections/operations/countVersions.js +61 -66
- package/dist/collections/operations/countVersions.js.map +1 -1
- package/dist/collections/operations/create.d.ts.map +1 -1
- package/dist/collections/operations/create.js +144 -13
- package/dist/collections/operations/create.js.map +1 -1
- package/dist/collections/operations/delete.d.ts.map +1 -1
- package/dist/collections/operations/delete.js +215 -129
- package/dist/collections/operations/delete.js.map +1 -1
- package/dist/collections/operations/deleteByID.d.ts.map +1 -1
- package/dist/collections/operations/deleteByID.js +14 -13
- package/dist/collections/operations/deleteByID.js.map +1 -1
- package/dist/collections/operations/docAccess.d.ts.map +1 -1
- package/dist/collections/operations/docAccess.js +19 -25
- package/dist/collections/operations/docAccess.js.map +1 -1
- package/dist/collections/operations/find.d.ts.map +1 -1
- package/dist/collections/operations/find.js +248 -246
- package/dist/collections/operations/find.js.map +1 -1
- package/dist/collections/operations/findByID.d.ts.map +1 -1
- package/dist/collections/operations/findByID.js +258 -215
- package/dist/collections/operations/findByID.js.map +1 -1
- package/dist/collections/operations/findDistinct.d.ts.map +1 -1
- package/dist/collections/operations/findDistinct.js +235 -154
- package/dist/collections/operations/findDistinct.js.map +1 -1
- package/dist/collections/operations/findVersionByID.d.ts.map +1 -1
- package/dist/collections/operations/findVersionByID.js +145 -128
- package/dist/collections/operations/findVersionByID.js.map +1 -1
- package/dist/collections/operations/findVersions.d.ts.map +1 -1
- package/dist/collections/operations/findVersions.js +152 -149
- package/dist/collections/operations/findVersions.js.map +1 -1
- package/dist/collections/operations/inputSchemas.d.ts +877 -0
- package/dist/collections/operations/inputSchemas.d.ts.map +1 -0
- package/dist/collections/operations/inputSchemas.js +217 -0
- package/dist/collections/operations/inputSchemas.js.map +1 -0
- package/dist/collections/operations/local/count.d.ts +2 -7
- package/dist/collections/operations/local/count.d.ts.map +1 -1
- package/dist/collections/operations/local/count.js +6 -3
- package/dist/collections/operations/local/count.js.map +1 -1
- package/dist/collections/operations/local/countVersions.d.ts +2 -7
- package/dist/collections/operations/local/countVersions.d.ts.map +1 -1
- package/dist/collections/operations/local/countVersions.js +6 -3
- package/dist/collections/operations/local/countVersions.js.map +1 -1
- package/dist/collections/operations/local/create.d.ts +2 -7
- package/dist/collections/operations/local/create.d.ts.map +1 -1
- package/dist/collections/operations/local/create.js +6 -3
- package/dist/collections/operations/local/create.js.map +1 -1
- package/dist/collections/operations/local/delete.d.ts +2 -7
- package/dist/collections/operations/local/delete.d.ts.map +1 -1
- package/dist/collections/operations/local/delete.js +6 -3
- package/dist/collections/operations/local/delete.js.map +1 -1
- package/dist/collections/operations/local/duplicate.d.ts +2 -7
- package/dist/collections/operations/local/duplicate.d.ts.map +1 -1
- package/dist/collections/operations/local/duplicate.js +6 -3
- package/dist/collections/operations/local/duplicate.js.map +1 -1
- package/dist/collections/operations/local/find.d.ts +2 -7
- package/dist/collections/operations/local/find.d.ts.map +1 -1
- package/dist/collections/operations/local/find.js +6 -3
- package/dist/collections/operations/local/find.js.map +1 -1
- package/dist/collections/operations/local/findByID.d.ts +2 -7
- package/dist/collections/operations/local/findByID.d.ts.map +1 -1
- package/dist/collections/operations/local/findByID.js +6 -3
- package/dist/collections/operations/local/findByID.js.map +1 -1
- package/dist/collections/operations/local/findDistinct.d.ts +2 -7
- package/dist/collections/operations/local/findDistinct.d.ts.map +1 -1
- package/dist/collections/operations/local/findDistinct.js +6 -3
- package/dist/collections/operations/local/findDistinct.js.map +1 -1
- package/dist/collections/operations/local/findVersionByID.d.ts +2 -7
- package/dist/collections/operations/local/findVersionByID.d.ts.map +1 -1
- package/dist/collections/operations/local/findVersionByID.js +6 -3
- package/dist/collections/operations/local/findVersionByID.js.map +1 -1
- package/dist/collections/operations/local/findVersions.d.ts +2 -7
- package/dist/collections/operations/local/findVersions.d.ts.map +1 -1
- package/dist/collections/operations/local/findVersions.js +6 -3
- package/dist/collections/operations/local/findVersions.js.map +1 -1
- package/dist/collections/operations/local/restoreVersion.d.ts +2 -7
- package/dist/collections/operations/local/restoreVersion.d.ts.map +1 -1
- package/dist/collections/operations/local/restoreVersion.js +6 -3
- package/dist/collections/operations/local/restoreVersion.js.map +1 -1
- package/dist/collections/operations/local/update.d.ts +2 -7
- package/dist/collections/operations/local/update.d.ts.map +1 -1
- package/dist/collections/operations/local/update.js +6 -3
- package/dist/collections/operations/local/update.js.map +1 -1
- package/dist/collections/operations/restoreVersion.d.ts.map +1 -1
- package/dist/collections/operations/restoreVersion.js +48 -13
- package/dist/collections/operations/restoreVersion.js.map +1 -1
- package/dist/collections/operations/update.d.ts.map +1 -1
- package/dist/collections/operations/update.js +148 -24
- package/dist/collections/operations/update.js.map +1 -1
- package/dist/collections/operations/updateByID.d.ts.map +1 -1
- package/dist/collections/operations/updateByID.js +80 -2
- package/dist/collections/operations/updateByID.js.map +1 -1
- package/dist/collections/operations/utilities/prefetchVersionForInheritedReadAccess.d.ts +15 -0
- package/dist/collections/operations/utilities/prefetchVersionForInheritedReadAccess.d.ts.map +1 -0
- package/dist/collections/operations/utilities/prefetchVersionForInheritedReadAccess.js +54 -0
- package/dist/collections/operations/utilities/prefetchVersionForInheritedReadAccess.js.map +1 -0
- package/dist/collections/operations/utilities/update.d.ts +2 -2
- package/dist/collections/operations/utilities/update.d.ts.map +1 -1
- package/dist/collections/operations/utilities/update.js +83 -19
- package/dist/collections/operations/utilities/update.js.map +1 -1
- package/dist/config/assertNoLegacySharpConfig.d.ts +21 -0
- package/dist/config/assertNoLegacySharpConfig.d.ts.map +1 -0
- package/dist/config/assertNoLegacySharpConfig.js +50 -0
- package/dist/config/assertNoLegacySharpConfig.js.map +1 -0
- package/dist/config/build.d.ts.map +1 -1
- package/dist/config/build.js +22 -1
- package/dist/config/build.js.map +1 -1
- package/dist/config/client.d.ts +2 -2
- package/dist/config/client.d.ts.map +1 -1
- package/dist/config/client.js +5 -6
- package/dist/config/client.js.map +1 -1
- package/dist/config/defaults.d.ts.map +1 -1
- package/dist/config/defaults.js +98 -43
- package/dist/config/defaults.js.map +1 -1
- package/dist/config/orderable/index.d.ts +1 -1
- package/dist/config/orderable/index.d.ts.map +1 -1
- package/dist/config/orderable/index.js +73 -16
- package/dist/config/orderable/index.js.map +1 -1
- package/dist/config/orderable/utils/getJoinScopeContext.d.ts.map +1 -1
- package/dist/config/orderable/utils/getJoinScopeContext.js +1 -0
- package/dist/config/orderable/utils/getJoinScopeContext.js.map +1 -1
- package/dist/config/orderable/utils/resolvePendingTargetKey.d.ts.map +1 -1
- package/dist/config/orderable/utils/resolvePendingTargetKey.js +1 -0
- package/dist/config/orderable/utils/resolvePendingTargetKey.js.map +1 -1
- package/dist/config/sanitize.d.ts +1 -1
- package/dist/config/sanitize.d.ts.map +1 -1
- package/dist/config/sanitize.js +98 -38
- package/dist/config/sanitize.js.map +1 -1
- package/dist/config/types.d.ts +527 -441
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js.map +1 -1
- package/dist/database/createDatabaseAdapter.d.ts +1 -1
- package/dist/database/createDatabaseAdapter.d.ts.map +1 -1
- package/dist/database/createDatabaseAdapter.js +4 -2
- package/dist/database/createDatabaseAdapter.js.map +1 -1
- package/dist/database/createSchemaBuildContext.d.ts +12 -0
- package/dist/database/createSchemaBuildContext.d.ts.map +1 -0
- package/dist/database/createSchemaBuildContext.js +24 -0
- package/dist/database/createSchemaBuildContext.js.map +1 -0
- package/dist/database/defaultBatchProcessing.d.ts +3 -0
- package/dist/database/defaultBatchProcessing.d.ts.map +1 -0
- package/dist/database/defaultBatchProcessing.js +93 -0
- package/dist/database/defaultBatchProcessing.js.map +1 -0
- package/dist/database/defaultCopy.d.ts +3 -0
- package/dist/database/defaultCopy.d.ts.map +1 -0
- package/dist/database/defaultCopy.js +73 -0
- package/dist/database/defaultCopy.js.map +1 -0
- package/dist/database/getLocalizedPaths.d.ts +2 -1
- package/dist/database/getLocalizedPaths.d.ts.map +1 -1
- package/dist/database/getLocalizedPaths.js +12 -3
- package/dist/database/getLocalizedPaths.js.map +1 -1
- package/dist/database/isNestedRelationshipQuery.d.ts +14 -0
- package/dist/database/isNestedRelationshipQuery.d.ts.map +1 -0
- package/dist/database/isNestedRelationshipQuery.js +19 -0
- package/dist/database/isNestedRelationshipQuery.js.map +1 -0
- package/dist/database/migrations/createMigration.d.ts.map +1 -1
- package/dist/database/migrations/createMigration.js +4 -0
- package/dist/database/migrations/createMigration.js.map +1 -1
- package/dist/database/migrations/getMigrations.d.ts.map +1 -1
- package/dist/database/migrations/getMigrations.js +1 -0
- package/dist/database/migrations/getMigrations.js.map +1 -1
- package/dist/database/migrations/getPredefinedMigration.js +2 -2
- package/dist/database/migrations/getPredefinedMigration.js.map +1 -1
- package/dist/database/migrations/migrate.d.ts.map +1 -1
- package/dist/database/migrations/migrate.js +14 -2
- package/dist/database/migrations/migrate.js.map +1 -1
- package/dist/database/migrations/migrateDown.d.ts +2 -2
- package/dist/database/migrations/migrateDown.d.ts.map +1 -1
- package/dist/database/migrations/migrateDown.js +17 -4
- package/dist/database/migrations/migrateDown.js.map +1 -1
- package/dist/database/migrations/migrateRefresh.d.ts +2 -2
- package/dist/database/migrations/migrateRefresh.d.ts.map +1 -1
- package/dist/database/migrations/migrateRefresh.js +16 -4
- package/dist/database/migrations/migrateRefresh.js.map +1 -1
- package/dist/database/migrations/migrateReset.d.ts +2 -2
- package/dist/database/migrations/migrateReset.d.ts.map +1 -1
- package/dist/database/migrations/migrateReset.js +17 -3
- package/dist/database/migrations/migrateReset.js.map +1 -1
- package/dist/database/migrations/migrateStatus.d.ts +2 -2
- package/dist/database/migrations/migrateStatus.d.ts.map +1 -1
- package/dist/database/migrations/migrateStatus.js +11 -6
- package/dist/database/migrations/migrateStatus.js.map +1 -1
- package/dist/database/migrations/migrationsCollection.d.ts.map +1 -1
- package/dist/database/migrations/migrationsCollection.js +1 -0
- package/dist/database/migrations/migrationsCollection.js.map +1 -1
- package/dist/database/prefixWherePaths.d.ts +6 -0
- package/dist/database/prefixWherePaths.d.ts.map +1 -0
- package/dist/database/prefixWherePaths.js +19 -0
- package/dist/database/prefixWherePaths.js.map +1 -0
- package/dist/database/queryValidation/validateQueryPaths.d.ts +2 -1
- package/dist/database/queryValidation/validateQueryPaths.d.ts.map +1 -1
- package/dist/database/queryValidation/validateQueryPaths.js +12 -2
- package/dist/database/queryValidation/validateQueryPaths.js.map +1 -1
- package/dist/database/queryValidation/validateSearchParams.d.ts +2 -1
- package/dist/database/queryValidation/validateSearchParams.d.ts.map +1 -1
- package/dist/database/queryValidation/validateSearchParams.js +88 -7
- package/dist/database/queryValidation/validateSearchParams.js.map +1 -1
- package/dist/database/queryValidation/validateSortQuery.d.ts +23 -0
- package/dist/database/queryValidation/validateSortQuery.d.ts.map +1 -0
- package/dist/database/queryValidation/validateSortQuery.js +54 -0
- package/dist/database/queryValidation/validateSortQuery.js.map +1 -0
- package/dist/database/sanitizeJoinQuery.d.ts.map +1 -1
- package/dist/database/sanitizeJoinQuery.js +9 -1
- package/dist/database/sanitizeJoinQuery.js.map +1 -1
- package/dist/database/sanitizeWhereQuery.d.ts +1 -1
- package/dist/database/sanitizeWhereQuery.d.ts.map +1 -1
- package/dist/database/sanitizeWhereQuery.js +44 -1
- package/dist/database/sanitizeWhereQuery.js.map +1 -1
- package/dist/database/types.d.ts +94 -8
- package/dist/database/types.d.ts.map +1 -1
- package/dist/database/types.js.map +1 -1
- package/dist/duplicateDocument/index.js +1 -0
- package/dist/duplicateDocument/index.js.map +1 -1
- package/dist/errors/APIError.d.ts +4 -0
- package/dist/errors/APIError.d.ts.map +1 -1
- package/dist/errors/APIError.js +5 -1
- package/dist/errors/APIError.js.map +1 -1
- package/dist/errors/AuthenticationError.d.ts.map +1 -1
- package/dist/errors/AuthenticationError.js +1 -0
- package/dist/errors/AuthenticationError.js.map +1 -1
- package/dist/errors/DuplicateCollection.d.ts.map +1 -1
- package/dist/errors/DuplicateCollection.js +1 -0
- package/dist/errors/DuplicateCollection.js.map +1 -1
- package/dist/errors/DuplicateFieldName.d.ts.map +1 -1
- package/dist/errors/DuplicateFieldName.js +1 -0
- package/dist/errors/DuplicateFieldName.js.map +1 -1
- package/dist/errors/DuplicateGlobal.d.ts.map +1 -1
- package/dist/errors/DuplicateGlobal.js +1 -0
- package/dist/errors/DuplicateGlobal.js.map +1 -1
- package/dist/errors/ErrorDeletingFile.d.ts.map +1 -1
- package/dist/errors/ErrorDeletingFile.js +1 -0
- package/dist/errors/ErrorDeletingFile.js.map +1 -1
- package/dist/errors/FileRetrievalError.d.ts.map +1 -1
- package/dist/errors/FileRetrievalError.js +1 -0
- package/dist/errors/FileRetrievalError.js.map +1 -1
- package/dist/errors/FileUploadError.d.ts.map +1 -1
- package/dist/errors/FileUploadError.js +1 -0
- package/dist/errors/FileUploadError.js.map +1 -1
- package/dist/errors/Forbidden.d.ts.map +1 -1
- package/dist/errors/Forbidden.js +1 -0
- package/dist/errors/Forbidden.js.map +1 -1
- package/dist/errors/InvalidConfiguration.d.ts.map +1 -1
- package/dist/errors/InvalidConfiguration.js +1 -0
- package/dist/errors/InvalidConfiguration.js.map +1 -1
- package/dist/errors/InvalidFieldJoin.d.ts.map +1 -1
- package/dist/errors/InvalidFieldJoin.js +1 -0
- package/dist/errors/InvalidFieldJoin.js.map +1 -1
- package/dist/errors/InvalidFieldName.d.ts.map +1 -1
- package/dist/errors/InvalidFieldName.js +1 -0
- package/dist/errors/InvalidFieldName.js.map +1 -1
- package/dist/errors/InvalidFieldRelationship.d.ts.map +1 -1
- package/dist/errors/InvalidFieldRelationship.js +1 -0
- package/dist/errors/InvalidFieldRelationship.js.map +1 -1
- package/dist/errors/InvalidSchema.d.ts.map +1 -1
- package/dist/errors/InvalidSchema.js +1 -0
- package/dist/errors/InvalidSchema.js.map +1 -1
- package/dist/errors/Locked.d.ts.map +1 -1
- package/dist/errors/Locked.js +1 -0
- package/dist/errors/Locked.js.map +1 -1
- package/dist/errors/LockedAuth.d.ts.map +1 -1
- package/dist/errors/LockedAuth.js +1 -0
- package/dist/errors/LockedAuth.js.map +1 -1
- package/dist/errors/MissingCollectionLabel.d.ts.map +1 -1
- package/dist/errors/MissingCollectionLabel.js +1 -0
- package/dist/errors/MissingCollectionLabel.js.map +1 -1
- package/dist/errors/MissingEditorProp.d.ts.map +1 -1
- package/dist/errors/MissingEditorProp.js +1 -0
- package/dist/errors/MissingEditorProp.js.map +1 -1
- package/dist/errors/MissingFieldInputOptions.d.ts.map +1 -1
- package/dist/errors/MissingFieldInputOptions.js +1 -0
- package/dist/errors/MissingFieldInputOptions.js.map +1 -1
- package/dist/errors/MissingFieldType.d.ts.map +1 -1
- package/dist/errors/MissingFieldType.js +1 -0
- package/dist/errors/MissingFieldType.js.map +1 -1
- package/dist/errors/MissingFile.d.ts.map +1 -1
- package/dist/errors/MissingFile.js +1 -0
- package/dist/errors/MissingFile.js.map +1 -1
- package/dist/errors/NotFound.d.ts.map +1 -1
- package/dist/errors/NotFound.js +1 -0
- package/dist/errors/NotFound.js.map +1 -1
- package/dist/errors/QueryError.d.ts.map +1 -1
- package/dist/errors/QueryError.js +1 -0
- package/dist/errors/QueryError.js.map +1 -1
- package/dist/errors/ReservedFieldName.d.ts.map +1 -1
- package/dist/errors/ReservedFieldName.js +1 -0
- package/dist/errors/ReservedFieldName.js.map +1 -1
- package/dist/errors/TimestampsRequired.d.ts.map +1 -1
- package/dist/errors/TimestampsRequired.js +1 -0
- package/dist/errors/TimestampsRequired.js.map +1 -1
- package/dist/errors/TransformerContractError.d.ts +11 -0
- package/dist/errors/TransformerContractError.d.ts.map +1 -0
- package/dist/errors/TransformerContractError.js +15 -0
- package/dist/errors/TransformerContractError.js.map +1 -0
- package/dist/errors/UnauthorizedError.d.ts.map +1 -1
- package/dist/errors/UnauthorizedError.js +1 -0
- package/dist/errors/UnauthorizedError.js.map +1 -1
- package/dist/errors/UnverifiedEmail.d.ts.map +1 -1
- package/dist/errors/UnverifiedEmail.js +1 -0
- package/dist/errors/UnverifiedEmail.js.map +1 -1
- package/dist/errors/ValidationError.d.ts.map +1 -1
- package/dist/errors/ValidationError.js +1 -0
- package/dist/errors/ValidationError.js.map +1 -1
- package/dist/errors/index.d.ts +1 -0
- package/dist/errors/index.d.ts.map +1 -1
- package/dist/errors/index.js +1 -0
- package/dist/errors/index.js.map +1 -1
- package/dist/exports/auth.d.ts +5 -0
- package/dist/exports/auth.d.ts.map +1 -0
- package/dist/exports/auth.js +6 -0
- package/dist/exports/auth.js.map +1 -0
- package/dist/exports/cli.d.ts +4 -0
- package/dist/exports/cli.d.ts.map +1 -0
- package/dist/exports/cli.js +4 -0
- package/dist/exports/cli.js.map +1 -0
- package/dist/exports/cliBuiltin.d.ts +37 -0
- package/dist/exports/cliBuiltin.d.ts.map +1 -0
- package/dist/exports/cliBuiltin.js +38 -0
- package/dist/exports/cliBuiltin.js.map +1 -0
- package/dist/exports/internal.d.ts +20 -1
- package/dist/exports/internal.d.ts.map +1 -1
- package/dist/exports/internal.js +17 -1
- package/dist/exports/internal.js.map +1 -1
- package/dist/exports/node.d.ts +2 -2
- package/dist/exports/node.d.ts.map +1 -1
- package/dist/exports/node.js +2 -2
- package/dist/exports/node.js.map +1 -1
- package/dist/exports/shared.d.ts +11 -4
- package/dist/exports/shared.d.ts.map +1 -1
- package/dist/exports/shared.js +10 -4
- package/dist/exports/shared.js.map +1 -1
- package/dist/fields/baseFields/authorship/index.d.ts +30 -0
- package/dist/fields/baseFields/authorship/index.d.ts.map +1 -0
- package/dist/fields/baseFields/authorship/index.js +151 -0
- package/dist/fields/baseFields/authorship/index.js.map +1 -0
- package/dist/fields/baseFields/authorship/types.d.ts +28 -0
- package/dist/fields/baseFields/authorship/types.d.ts.map +1 -0
- package/dist/fields/baseFields/authorship/types.js +10 -0
- package/dist/fields/baseFields/authorship/types.js.map +1 -0
- package/dist/fields/baseFields/slug/duplicateContext.d.ts +11 -0
- package/dist/fields/baseFields/slug/duplicateContext.d.ts.map +1 -0
- package/dist/fields/baseFields/slug/duplicateContext.js +21 -0
- package/dist/fields/baseFields/slug/duplicateContext.js.map +1 -0
- package/dist/fields/baseFields/slug/fillEmptyLocalizedSlugs.d.ts +23 -0
- package/dist/fields/baseFields/slug/fillEmptyLocalizedSlugs.d.ts.map +1 -0
- package/dist/fields/baseFields/slug/fillEmptyLocalizedSlugs.js +65 -0
- package/dist/fields/baseFields/slug/fillEmptyLocalizedSlugs.js.map +1 -0
- package/dist/fields/baseFields/slug/generateSlug.d.ts +13 -8
- package/dist/fields/baseFields/slug/generateSlug.d.ts.map +1 -1
- package/dist/fields/baseFields/slug/generateSlug.js +102 -45
- package/dist/fields/baseFields/slug/generateSlug.js.map +1 -1
- package/dist/fields/baseFields/slug/generateSlugBeforeDuplicate.d.ts +18 -0
- package/dist/fields/baseFields/slug/generateSlugBeforeDuplicate.d.ts.map +1 -0
- package/dist/fields/baseFields/slug/generateSlugBeforeDuplicate.js +20 -0
- package/dist/fields/baseFields/slug/generateSlugBeforeDuplicate.js.map +1 -0
- package/dist/fields/baseFields/slug/getSlugFallbackValue.d.ts +23 -0
- package/dist/fields/baseFields/slug/getSlugFallbackValue.d.ts.map +1 -0
- package/dist/fields/baseFields/slug/getSlugFallbackValue.js +24 -0
- package/dist/fields/baseFields/slug/getSlugFallbackValue.js.map +1 -0
- package/dist/fields/baseFields/slug/hasValue.d.ts +3 -0
- package/dist/fields/baseFields/slug/hasValue.d.ts.map +1 -0
- package/dist/fields/baseFields/slug/hasValue.js +3 -0
- package/dist/fields/baseFields/slug/hasValue.js.map +1 -0
- package/dist/fields/config/client.d.ts +1 -1
- package/dist/fields/config/client.d.ts.map +1 -1
- package/dist/fields/config/client.js +1 -1
- package/dist/fields/config/client.js.map +1 -1
- package/dist/fields/config/reservedFieldNames.js.map +1 -1
- package/dist/fields/config/sanitize.d.ts +6 -6
- package/dist/fields/config/sanitize.d.ts.map +1 -1
- package/dist/fields/config/sanitize.js +32 -22
- package/dist/fields/config/sanitize.js.map +1 -1
- package/dist/fields/config/types.d.ts +53 -50
- package/dist/fields/config/types.d.ts.map +1 -1
- package/dist/fields/config/types.js +1 -1
- package/dist/fields/config/types.js.map +1 -1
- package/dist/fields/hooks/beforeChange/index.d.ts +7 -1
- package/dist/fields/hooks/beforeChange/index.d.ts.map +1 -1
- package/dist/fields/hooks/beforeChange/index.js +4 -2
- package/dist/fields/hooks/beforeChange/index.js.map +1 -1
- package/dist/fields/hooks/beforeChange/promise.d.ts +2 -1
- package/dist/fields/hooks/beforeChange/promise.d.ts.map +1 -1
- package/dist/fields/hooks/beforeChange/promise.js +52 -9
- package/dist/fields/hooks/beforeChange/promise.js.map +1 -1
- package/dist/fields/hooks/beforeChange/traverseFields.d.ts +2 -1
- package/dist/fields/hooks/beforeChange/traverseFields.d.ts.map +1 -1
- package/dist/fields/hooks/beforeChange/traverseFields.js +3 -2
- package/dist/fields/hooks/beforeChange/traverseFields.js.map +1 -1
- package/dist/fields/hooks/beforeDuplicate/promise.d.ts.map +1 -1
- package/dist/fields/hooks/beforeDuplicate/promise.js +4 -0
- package/dist/fields/hooks/beforeDuplicate/promise.js.map +1 -1
- package/dist/fields/hooks/beforeValidate/getFallbackValue.d.ts +2 -1
- package/dist/fields/hooks/beforeValidate/getFallbackValue.d.ts.map +1 -1
- package/dist/fields/hooks/beforeValidate/getFallbackValue.js +2 -2
- package/dist/fields/hooks/beforeValidate/getFallbackValue.js.map +1 -1
- package/dist/fields/hooks/beforeValidate/index.d.ts +6 -1
- package/dist/fields/hooks/beforeValidate/index.d.ts.map +1 -1
- package/dist/fields/hooks/beforeValidate/index.js +3 -1
- package/dist/fields/hooks/beforeValidate/index.js.map +1 -1
- package/dist/fields/hooks/beforeValidate/promise.d.ts +6 -1
- package/dist/fields/hooks/beforeValidate/promise.d.ts.map +1 -1
- package/dist/fields/hooks/beforeValidate/promise.js +29 -12
- package/dist/fields/hooks/beforeValidate/promise.js.map +1 -1
- package/dist/fields/hooks/beforeValidate/stripNullRows.d.ts +10 -0
- package/dist/fields/hooks/beforeValidate/stripNullRows.d.ts.map +1 -0
- package/dist/fields/hooks/beforeValidate/stripNullRows.js +18 -0
- package/dist/fields/hooks/beforeValidate/stripNullRows.js.map +1 -0
- package/dist/fields/hooks/beforeValidate/traverseFields.d.ts +6 -1
- package/dist/fields/hooks/beforeValidate/traverseFields.d.ts.map +1 -1
- package/dist/fields/hooks/beforeValidate/traverseFields.js +5 -1
- package/dist/fields/hooks/beforeValidate/traverseFields.js.map +1 -1
- package/dist/fields/validations.d.ts.map +1 -1
- package/dist/fields/validations.js +17 -15
- package/dist/fields/validations.js.map +1 -1
- package/dist/globals/config/client.d.ts +2 -2
- package/dist/globals/config/client.d.ts.map +1 -1
- package/dist/globals/config/client.js +1 -0
- package/dist/globals/config/client.js.map +1 -1
- package/dist/globals/config/sanitize.d.ts +3 -7
- package/dist/globals/config/sanitize.d.ts.map +1 -1
- package/dist/globals/config/sanitize.js +78 -9
- package/dist/globals/config/sanitize.js.map +1 -1
- package/dist/globals/config/types.d.ts +35 -16
- package/dist/globals/config/types.d.ts.map +1 -1
- package/dist/globals/config/types.js.map +1 -1
- package/dist/globals/operations/countGlobalVersions.d.ts.map +1 -1
- package/dist/globals/operations/countGlobalVersions.js +57 -55
- package/dist/globals/operations/countGlobalVersions.js.map +1 -1
- package/dist/globals/operations/docAccess.d.ts.map +1 -1
- package/dist/globals/operations/docAccess.js +19 -25
- package/dist/globals/operations/docAccess.js.map +1 -1
- package/dist/globals/operations/findOne.d.ts.map +1 -1
- package/dist/globals/operations/findOne.js +169 -174
- package/dist/globals/operations/findOne.js.map +1 -1
- package/dist/globals/operations/findVersionByID.d.ts.map +1 -1
- package/dist/globals/operations/findVersionByID.js +112 -108
- package/dist/globals/operations/findVersionByID.js.map +1 -1
- package/dist/globals/operations/findVersions.d.ts.map +1 -1
- package/dist/globals/operations/findVersions.js +118 -109
- package/dist/globals/operations/findVersions.js.map +1 -1
- package/dist/globals/operations/inputSchemas.d.ts +365 -0
- package/dist/globals/operations/inputSchemas.d.ts.map +1 -0
- package/dist/globals/operations/inputSchemas.js +104 -0
- package/dist/globals/operations/inputSchemas.js.map +1 -0
- package/dist/globals/operations/local/countVersions.d.ts +2 -7
- package/dist/globals/operations/local/countVersions.d.ts.map +1 -1
- package/dist/globals/operations/local/countVersions.js +6 -3
- package/dist/globals/operations/local/countVersions.js.map +1 -1
- package/dist/globals/operations/local/findOne.d.ts +2 -7
- package/dist/globals/operations/local/findOne.d.ts.map +1 -1
- package/dist/globals/operations/local/findOne.js +6 -3
- package/dist/globals/operations/local/findOne.js.map +1 -1
- package/dist/globals/operations/local/findVersionByID.d.ts +2 -7
- package/dist/globals/operations/local/findVersionByID.d.ts.map +1 -1
- package/dist/globals/operations/local/findVersionByID.js +6 -3
- package/dist/globals/operations/local/findVersionByID.js.map +1 -1
- package/dist/globals/operations/local/findVersions.d.ts +2 -7
- package/dist/globals/operations/local/findVersions.d.ts.map +1 -1
- package/dist/globals/operations/local/findVersions.js +6 -3
- package/dist/globals/operations/local/findVersions.js.map +1 -1
- package/dist/globals/operations/local/restoreVersion.d.ts +2 -7
- package/dist/globals/operations/local/restoreVersion.d.ts.map +1 -1
- package/dist/globals/operations/local/restoreVersion.js +6 -3
- package/dist/globals/operations/local/restoreVersion.js.map +1 -1
- package/dist/globals/operations/local/update.d.ts +2 -7
- package/dist/globals/operations/local/update.d.ts.map +1 -1
- package/dist/globals/operations/local/update.js +6 -3
- package/dist/globals/operations/local/update.js.map +1 -1
- package/dist/globals/operations/restoreVersion.d.ts.map +1 -1
- package/dist/globals/operations/restoreVersion.js +60 -14
- package/dist/globals/operations/restoreVersion.js.map +1 -1
- package/dist/globals/operations/update.d.ts.map +1 -1
- package/dist/globals/operations/update.js +106 -19
- package/dist/globals/operations/update.js.map +1 -1
- package/dist/hierarchy/addHierarchyToCollection.js +2 -0
- package/dist/hierarchy/addHierarchyToCollection.js.map +1 -1
- package/dist/hierarchy/hooks/collectionAfterDelete.d.ts.map +1 -1
- package/dist/hierarchy/hooks/collectionAfterDelete.js +1 -0
- package/dist/hierarchy/hooks/collectionAfterDelete.js.map +1 -1
- package/dist/hierarchy/hooks/collectionBeforeChange.js +1 -0
- package/dist/hierarchy/hooks/collectionBeforeChange.js.map +1 -1
- package/dist/hierarchy/hooks/collectionBeforeDelete.d.ts.map +1 -1
- package/dist/hierarchy/hooks/collectionBeforeDelete.js +1 -0
- package/dist/hierarchy/hooks/collectionBeforeDelete.js.map +1 -1
- package/dist/hierarchy/hooks/ensureSafeCollectionsChange.d.ts.map +1 -1
- package/dist/hierarchy/hooks/ensureSafeCollectionsChange.js +71 -33
- package/dist/hierarchy/hooks/ensureSafeCollectionsChange.js.map +1 -1
- package/dist/hierarchy/resolveHierarchyCollections.js +29 -20
- package/dist/hierarchy/resolveHierarchyCollections.js.map +1 -1
- package/dist/index.bundled.d.ts +3223 -1384
- package/dist/index.d.ts +117 -56
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +90 -70
- package/dist/index.js.map +1 -1
- package/dist/kv/adapters/DatabaseKVAdapter.d.ts.map +1 -1
- package/dist/kv/adapters/DatabaseKVAdapter.js +2 -1
- package/dist/kv/adapters/DatabaseKVAdapter.js.map +1 -1
- package/dist/llm-instructions/addLLMInstructions.d.ts +5 -0
- package/dist/llm-instructions/addLLMInstructions.d.ts.map +1 -0
- package/dist/llm-instructions/addLLMInstructions.js +31 -0
- package/dist/llm-instructions/addLLMInstructions.js.map +1 -0
- package/dist/llm-instructions/getInstructionTargetAccess.d.ts +8 -0
- package/dist/llm-instructions/getInstructionTargetAccess.d.ts.map +1 -0
- package/dist/llm-instructions/getInstructionTargetAccess.js +40 -0
- package/dist/llm-instructions/getInstructionTargetAccess.js.map +1 -0
- package/dist/llm-instructions/getInstructions.d.ts +8 -0
- package/dist/llm-instructions/getInstructions.d.ts.map +1 -0
- package/dist/llm-instructions/getInstructions.js +46 -0
- package/dist/llm-instructions/getInstructions.js.map +1 -0
- package/dist/llm-instructions/getInstructionsCollection.d.ts +6 -0
- package/dist/llm-instructions/getInstructionsCollection.d.ts.map +1 -0
- package/dist/llm-instructions/getInstructionsCollection.js +367 -0
- package/dist/llm-instructions/getInstructionsCollection.js.map +1 -0
- package/dist/llm-instructions/shared.d.ts +11 -0
- package/dist/llm-instructions/shared.d.ts.map +1 -0
- package/dist/llm-instructions/shared.js +3 -0
- package/dist/llm-instructions/shared.js.map +1 -0
- package/dist/locked-documents/config.d.ts.map +1 -1
- package/dist/locked-documents/config.js +1 -0
- package/dist/locked-documents/config.js.map +1 -1
- package/dist/preferences/config.d.ts.map +1 -1
- package/dist/preferences/config.js +3 -1
- package/dist/preferences/config.js.map +1 -1
- package/dist/preferences/types.d.ts +2 -0
- package/dist/preferences/types.d.ts.map +1 -1
- package/dist/preferences/types.js.map +1 -1
- package/dist/query-presets/access.d.ts.map +1 -1
- package/dist/query-presets/access.js +2 -1
- package/dist/query-presets/access.js.map +1 -1
- package/dist/query-presets/config.d.ts.map +1 -1
- package/dist/query-presets/config.js +1 -0
- package/dist/query-presets/config.js.map +1 -1
- package/dist/query-presets/constraints.js +1 -1
- package/dist/query-presets/constraints.js.map +1 -1
- package/dist/query-presets/preventLockout.js +6 -3
- package/dist/query-presets/preventLockout.js.map +1 -1
- package/dist/queues/config/collection.d.ts.map +1 -1
- package/dist/queues/config/collection.js +44 -43
- package/dist/queues/config/collection.js.map +1 -1
- package/dist/queues/config/global.d.ts +5 -6
- package/dist/queues/config/global.d.ts.map +1 -1
- package/dist/queues/config/global.js +2 -1
- package/dist/queues/config/global.js.map +1 -1
- package/dist/queues/config/types/index.d.ts +33 -25
- package/dist/queues/config/types/index.d.ts.map +1 -1
- package/dist/queues/config/types/index.js.map +1 -1
- package/dist/queues/config/types/taskTypes.d.ts +4 -7
- package/dist/queues/config/types/taskTypes.d.ts.map +1 -1
- package/dist/queues/config/types/taskTypes.js.map +1 -1
- package/dist/queues/config/types/workflowJSONTypes.d.ts +10 -9
- package/dist/queues/config/types/workflowJSONTypes.d.ts.map +1 -1
- package/dist/queues/config/types/workflowJSONTypes.js.map +1 -1
- package/dist/queues/config/types/workflowTypes.d.ts +11 -58
- package/dist/queues/config/types/workflowTypes.d.ts.map +1 -1
- package/dist/queues/config/types/workflowTypes.js.map +1 -1
- package/dist/queues/endpoints/handleSchedules.d.ts.map +1 -1
- package/dist/queues/endpoints/handleSchedules.js +3 -2
- package/dist/queues/endpoints/handleSchedules.js.map +1 -1
- package/dist/queues/endpoints/run.d.ts.map +1 -1
- package/dist/queues/endpoints/run.js +2 -1
- package/dist/queues/endpoints/run.js.map +1 -1
- package/dist/queues/errors/handleTaskError.js +4 -4
- package/dist/queues/errors/handleTaskError.js.map +1 -1
- package/dist/queues/errors/handleWorkflowError.js +1 -1
- package/dist/queues/errors/handleWorkflowError.js.map +1 -1
- package/dist/queues/errors/index.d.ts +6 -0
- package/dist/queues/errors/index.d.ts.map +1 -1
- package/dist/queues/errors/index.js +5 -0
- package/dist/queues/errors/index.js.map +1 -1
- package/dist/queues/localAPI.d.ts +10 -63
- package/dist/queues/localAPI.d.ts.map +1 -1
- package/dist/queues/localAPI.js +87 -78
- package/dist/queues/localAPI.js.map +1 -1
- package/dist/queues/operations/handleSchedules/countRunnableOrActiveJobsForQueue.d.ts +4 -4
- package/dist/queues/operations/handleSchedules/countRunnableOrActiveJobsForQueue.d.ts.map +1 -1
- package/dist/queues/operations/handleSchedules/countRunnableOrActiveJobsForQueue.js.map +1 -1
- package/dist/queues/operations/handleSchedules/index.d.ts +1 -1
- package/dist/queues/operations/handleSchedules/index.d.ts.map +1 -1
- package/dist/queues/operations/handleSchedules/index.js +2 -1
- package/dist/queues/operations/handleSchedules/index.js.map +1 -1
- package/dist/queues/operations/runJobs/heartbeat.d.ts +13 -0
- package/dist/queues/operations/runJobs/heartbeat.d.ts.map +1 -0
- package/dist/queues/operations/runJobs/heartbeat.js +66 -0
- package/dist/queues/operations/runJobs/heartbeat.js.map +1 -0
- package/dist/queues/operations/runJobs/index.d.ts.map +1 -1
- package/dist/queues/operations/runJobs/index.js +133 -84
- package/dist/queues/operations/runJobs/index.js.map +1 -1
- package/dist/queues/operations/runJobs/runJSONJob/index.d.ts.map +1 -1
- package/dist/queues/operations/runJobs/runJSONJob/index.js +6 -3
- package/dist/queues/operations/runJobs/runJSONJob/index.js.map +1 -1
- package/dist/queues/operations/runJobs/runJob/getRunTaskFunction.js +5 -5
- package/dist/queues/operations/runJobs/runJob/getRunTaskFunction.js.map +1 -1
- package/dist/queues/operations/runJobs/runJob/getUpdateJobFunction.d.ts +2 -1
- package/dist/queues/operations/runJobs/runJob/getUpdateJobFunction.d.ts.map +1 -1
- package/dist/queues/operations/runJobs/runJob/getUpdateJobFunction.js +39 -8
- package/dist/queues/operations/runJobs/runJob/getUpdateJobFunction.js.map +1 -1
- package/dist/queues/operations/runJobs/runJob/importHandlerPath.js.map +1 -1
- package/dist/queues/operations/runJobs/runJob/index.d.ts.map +1 -1
- package/dist/queues/operations/runJobs/runJob/index.js +4 -4
- package/dist/queues/operations/runJobs/runJob/index.js.map +1 -1
- package/dist/queues/utilities/updateJob.d.ts.map +1 -1
- package/dist/queues/utilities/updateJob.js +3 -0
- package/dist/queues/utilities/updateJob.js.map +1 -1
- package/dist/types/constants.d.ts +21 -0
- package/dist/types/constants.d.ts.map +1 -1
- package/dist/types/constants.js +23 -0
- package/dist/types/constants.js.map +1 -1
- package/dist/types/index.d.ts +11 -4
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/operations.d.ts +9 -0
- package/dist/types/operations.d.ts.map +1 -0
- package/dist/types/operations.js +3 -0
- package/dist/types/operations.js.map +1 -0
- package/dist/uploads/assertClientUploadAccess.d.ts +7 -0
- package/dist/uploads/assertClientUploadAccess.d.ts.map +1 -0
- package/dist/uploads/assertClientUploadAccess.js +29 -0
- package/dist/uploads/assertClientUploadAccess.js.map +1 -0
- package/dist/uploads/assertClientUploadAllowed.d.ts +10 -0
- package/dist/uploads/assertClientUploadAllowed.d.ts.map +1 -0
- package/dist/uploads/assertClientUploadAllowed.js +41 -0
- package/dist/uploads/assertClientUploadAllowed.js.map +1 -0
- package/dist/uploads/checkFileAccess.d.ts.map +1 -1
- package/dist/uploads/checkFileAccess.js +6 -18
- package/dist/uploads/checkFileAccess.js.map +1 -1
- package/dist/uploads/checkFileRestrictions.d.ts +11 -1
- package/dist/uploads/checkFileRestrictions.d.ts.map +1 -1
- package/dist/uploads/checkFileRestrictions.js +91 -26
- package/dist/uploads/checkFileRestrictions.js.map +1 -1
- package/dist/uploads/clientUploadReceipt.d.ts +29 -0
- package/dist/uploads/clientUploadReceipt.d.ts.map +1 -0
- package/dist/uploads/clientUploadReceipt.js +76 -0
- package/dist/uploads/clientUploadReceipt.js.map +1 -0
- package/dist/uploads/deleteAssociatedFiles.d.ts.map +1 -1
- package/dist/uploads/deleteAssociatedFiles.js +59 -11
- package/dist/uploads/deleteAssociatedFiles.js.map +1 -1
- package/dist/uploads/detectSvgFromXml.d.ts +1 -4
- package/dist/uploads/detectSvgFromXml.d.ts.map +1 -1
- package/dist/uploads/detectSvgFromXml.js +2 -41
- package/dist/uploads/detectSvgFromXml.js.map +1 -1
- package/dist/uploads/docWithFilenameExists.d.ts +2 -1
- package/dist/uploads/docWithFilenameExists.d.ts.map +1 -1
- package/dist/uploads/docWithFilenameExists.js +27 -10
- package/dist/uploads/docWithFilenameExists.js.map +1 -1
- package/dist/uploads/downloadFileToBuffer.d.ts +11 -0
- package/dist/uploads/downloadFileToBuffer.d.ts.map +1 -0
- package/dist/uploads/downloadFileToBuffer.js +72 -0
- package/dist/uploads/downloadFileToBuffer.js.map +1 -0
- package/dist/uploads/endpoints/getFile.d.ts +17 -0
- package/dist/uploads/endpoints/getFile.d.ts.map +1 -1
- package/dist/uploads/endpoints/getFile.js +46 -12
- package/dist/uploads/endpoints/getFile.js.map +1 -1
- package/dist/uploads/endpoints/index.js +2 -2
- package/dist/uploads/endpoints/index.js.map +1 -1
- package/dist/uploads/endpoints/pasteURL.d.ts +3 -0
- package/dist/uploads/endpoints/pasteURL.d.ts.map +1 -0
- package/dist/uploads/endpoints/{getFileFromURL.js → pasteURL.js} +19 -55
- package/dist/uploads/endpoints/pasteURL.js.map +1 -0
- package/dist/uploads/endpoints/uploadInstructions.d.ts +12 -0
- package/dist/uploads/endpoints/uploadInstructions.d.ts.map +1 -1
- package/dist/uploads/endpoints/uploadInstructions.js +70 -21
- package/dist/uploads/endpoints/uploadInstructions.js.map +1 -1
- package/dist/uploads/fetchAPI-multipart/handlers.d.ts +2 -2
- package/dist/uploads/fetchAPI-multipart/handlers.d.ts.map +1 -1
- package/dist/uploads/fetchAPI-multipart/handlers.js +18 -5
- package/dist/uploads/fetchAPI-multipart/handlers.js.map +1 -1
- package/dist/uploads/fetchAPI-multipart/index.d.ts.map +1 -1
- package/dist/uploads/fetchAPI-multipart/index.js +24 -2
- package/dist/uploads/fetchAPI-multipart/index.js.map +1 -1
- package/dist/uploads/fetchAPI-multipart/isEligibleRequest.js +1 -2
- package/dist/uploads/fetchAPI-multipart/isEligibleRequest.js.map +1 -1
- package/dist/uploads/fetchAPI-multipart/processMultipart.d.ts +0 -6
- package/dist/uploads/fetchAPI-multipart/processMultipart.d.ts.map +1 -1
- package/dist/uploads/fetchAPI-multipart/processMultipart.js +146 -130
- package/dist/uploads/fetchAPI-multipart/processMultipart.js.map +1 -1
- package/dist/uploads/fetchAPI-stream-file/index.d.ts +4 -1
- package/dist/uploads/fetchAPI-stream-file/index.d.ts.map +1 -1
- package/dist/uploads/fetchAPI-stream-file/index.js +9 -2
- package/dist/uploads/fetchAPI-stream-file/index.js.map +1 -1
- package/dist/uploads/fetchWithRedirects.d.ts +19 -0
- package/dist/uploads/fetchWithRedirects.d.ts.map +1 -0
- package/dist/uploads/fetchWithRedirects.js +53 -0
- package/dist/uploads/fetchWithRedirects.js.map +1 -0
- package/dist/uploads/generateFileData.d.ts +31 -1
- package/dist/uploads/generateFileData.d.ts.map +1 -1
- package/dist/uploads/generateFileData.js +259 -199
- package/dist/uploads/generateFileData.js.map +1 -1
- package/dist/uploads/generateImageSizeFilename.d.ts.map +1 -0
- package/dist/uploads/generateImageSizeFilename.js.map +1 -0
- package/dist/uploads/generatePayloadFileURL.d.ts +25 -0
- package/dist/uploads/generatePayloadFileURL.d.ts.map +1 -0
- package/dist/uploads/generatePayloadFileURL.js +64 -0
- package/dist/uploads/generatePayloadFileURL.js.map +1 -0
- package/dist/uploads/getBaseFields.d.ts.map +1 -1
- package/dist/uploads/getBaseFields.js +12 -9
- package/dist/uploads/getBaseFields.js.map +1 -1
- package/dist/uploads/getFileContentRequirement.d.ts +39 -0
- package/dist/uploads/getFileContentRequirement.d.ts.map +1 -0
- package/dist/uploads/getFileContentRequirement.js +45 -0
- package/dist/uploads/getFileContentRequirement.js.map +1 -0
- package/dist/uploads/getFileFromUploadInstructions.d.ts +8 -0
- package/dist/uploads/getFileFromUploadInstructions.d.ts.map +1 -0
- package/dist/uploads/getFileFromUploadInstructions.js +307 -0
- package/dist/uploads/getFileFromUploadInstructions.js.map +1 -0
- package/dist/uploads/getFileTypeFallback.d.ts.map +1 -1
- package/dist/uploads/getFileTypeFallback.js +3 -1
- package/dist/uploads/getFileTypeFallback.js.map +1 -1
- package/dist/uploads/getFileTypeIdentity.d.ts +19 -0
- package/dist/uploads/getFileTypeIdentity.d.ts.map +1 -0
- package/dist/uploads/getFileTypeIdentity.js +34 -0
- package/dist/uploads/getFileTypeIdentity.js.map +1 -0
- package/dist/uploads/getImageSize.d.ts +8 -1
- package/dist/uploads/getImageSize.d.ts.map +1 -1
- package/dist/uploads/getImageSize.js +11 -19
- package/dist/uploads/getImageSize.js.map +1 -1
- package/dist/uploads/hasCropOrResizeEdit.d.ts +7 -0
- package/dist/uploads/hasCropOrResizeEdit.d.ts.map +1 -0
- package/dist/uploads/hasCropOrResizeEdit.js +6 -0
- package/dist/uploads/hasCropOrResizeEdit.js.map +1 -0
- package/dist/uploads/hasFullFileContents.d.ts +13 -0
- package/dist/uploads/hasFullFileContents.d.ts.map +1 -0
- package/dist/uploads/hasFullFileContents.js +12 -0
- package/dist/uploads/hasFullFileContents.js.map +1 -0
- package/dist/uploads/isAnimatedImage.d.ts +8 -0
- package/dist/uploads/isAnimatedImage.d.ts.map +1 -0
- package/dist/uploads/isAnimatedImage.js +22 -0
- package/dist/uploads/isAnimatedImage.js.map +1 -0
- package/dist/uploads/isProcessableImage.d.ts +2 -0
- package/dist/uploads/isProcessableImage.d.ts.map +1 -0
- package/dist/uploads/isProcessableImage.js +7 -0
- package/dist/uploads/isProcessableImage.js.map +1 -0
- package/dist/uploads/parseFilename.d.ts.map +1 -0
- package/dist/uploads/parseFilename.js.map +1 -0
- package/dist/uploads/probeImageSize.d.ts +39 -0
- package/dist/uploads/probeImageSize.d.ts.map +1 -0
- package/dist/uploads/probeImageSize.js +374 -0
- package/dist/uploads/probeImageSize.js.map +1 -0
- package/dist/uploads/resolveURLUploadInput.d.ts +25 -0
- package/dist/uploads/resolveURLUploadInput.d.ts.map +1 -0
- package/dist/uploads/resolveURLUploadInput.js +53 -0
- package/dist/uploads/resolveURLUploadInput.js.map +1 -0
- package/dist/uploads/safeFetch.d.ts.map +1 -1
- package/dist/uploads/safeFetch.js +3 -2
- package/dist/uploads/safeFetch.js.map +1 -1
- package/dist/uploads/sanitizeUploadData.d.ts +26 -0
- package/dist/uploads/sanitizeUploadData.d.ts.map +1 -0
- package/dist/uploads/sanitizeUploadData.js +161 -0
- package/dist/uploads/sanitizeUploadData.js.map +1 -0
- package/dist/uploads/stagedUpload.d.ts +27 -0
- package/dist/uploads/stagedUpload.d.ts.map +1 -0
- package/dist/uploads/stagedUpload.js +197 -0
- package/dist/uploads/stagedUpload.js.map +1 -0
- package/dist/uploads/transformers/createLazySourceGetter.d.ts +15 -0
- package/dist/uploads/transformers/createLazySourceGetter.d.ts.map +1 -0
- package/dist/uploads/transformers/createLazySourceGetter.js +22 -0
- package/dist/uploads/transformers/createLazySourceGetter.js.map +1 -0
- package/dist/uploads/transformers/finalizeFileResponse.d.ts +14 -0
- package/dist/uploads/transformers/finalizeFileResponse.d.ts.map +1 -0
- package/dist/uploads/transformers/finalizeFileResponse.js +49 -0
- package/dist/uploads/transformers/finalizeFileResponse.js.map +1 -0
- package/dist/uploads/transformers/getSourceFileResponse.d.ts +16 -0
- package/dist/uploads/transformers/getSourceFileResponse.d.ts.map +1 -0
- package/dist/uploads/transformers/getSourceFileResponse.js +17 -0
- package/dist/uploads/transformers/getSourceFileResponse.js.map +1 -0
- package/dist/uploads/transformers/handleDynamicFileRequest.d.ts +18 -0
- package/dist/uploads/transformers/handleDynamicFileRequest.d.ts.map +1 -0
- package/dist/uploads/transformers/handleDynamicFileRequest.js +277 -0
- package/dist/uploads/transformers/handleDynamicFileRequest.js.map +1 -0
- package/dist/uploads/transformers/matchesMimeType.d.ts +11 -0
- package/dist/uploads/transformers/matchesMimeType.d.ts.map +1 -0
- package/dist/uploads/transformers/matchesMimeType.js +39 -0
- package/dist/uploads/transformers/matchesMimeType.js.map +1 -0
- package/dist/uploads/transformers/planTransformerPipeline.d.ts +26 -0
- package/dist/uploads/transformers/planTransformerPipeline.d.ts.map +1 -0
- package/dist/uploads/transformers/planTransformerPipeline.js +36 -0
- package/dist/uploads/transformers/planTransformerPipeline.js.map +1 -0
- package/dist/uploads/transformers/resolveUploadDocument.d.ts +46 -0
- package/dist/uploads/transformers/resolveUploadDocument.d.ts.map +1 -0
- package/dist/uploads/transformers/resolveUploadDocument.js +77 -0
- package/dist/uploads/transformers/resolveUploadDocument.js.map +1 -0
- package/dist/uploads/transformers/transformUploadFile.d.ts +18 -0
- package/dist/uploads/transformers/transformUploadFile.d.ts.map +1 -0
- package/dist/uploads/transformers/transformUploadFile.js +30 -0
- package/dist/uploads/transformers/transformUploadFile.js.map +1 -0
- package/dist/uploads/transformers/types.d.ts +71 -0
- package/dist/uploads/transformers/types.d.ts.map +1 -0
- package/dist/uploads/transformers/types.js +6 -0
- package/dist/uploads/transformers/types.js.map +1 -0
- package/dist/uploads/transformers/uploadTransformerBridge.d.ts +48 -0
- package/dist/uploads/transformers/uploadTransformerBridge.d.ts.map +1 -0
- package/dist/uploads/transformers/uploadTransformerBridge.js +22 -0
- package/dist/uploads/transformers/uploadTransformerBridge.js.map +1 -0
- package/dist/uploads/transformers/validateTransformers.d.ts +11 -0
- package/dist/uploads/transformers/validateTransformers.d.ts.map +1 -0
- package/dist/uploads/transformers/validateTransformers.js +67 -0
- package/dist/uploads/transformers/validateTransformers.js.map +1 -0
- package/dist/uploads/transformers/withFileTransformAccessContext.d.ts +13 -0
- package/dist/uploads/transformers/withFileTransformAccessContext.d.ts.map +1 -0
- package/dist/uploads/transformers/withFileTransformAccessContext.js +18 -0
- package/dist/uploads/transformers/withFileTransformAccessContext.js.map +1 -0
- package/dist/uploads/types.d.ts +77 -73
- package/dist/uploads/types.d.ts.map +1 -1
- package/dist/uploads/types.js.map +1 -1
- package/dist/uploads/unlinkTempFiles.d.ts.map +1 -1
- package/dist/uploads/unlinkTempFiles.js +6 -2
- package/dist/uploads/unlinkTempFiles.js.map +1 -1
- package/dist/uploads/uploadContentSecurityPolicy.d.ts +2 -0
- package/dist/uploads/uploadContentSecurityPolicy.d.ts.map +1 -0
- package/dist/uploads/uploadContentSecurityPolicy.js +3 -0
- package/dist/uploads/uploadContentSecurityPolicy.js.map +1 -0
- package/dist/uploads/uploadFiles.d.ts.map +1 -1
- package/dist/uploads/uploadFiles.js +7 -2
- package/dist/uploads/uploadFiles.js.map +1 -1
- package/dist/uploads/validateISOBaseMediaFile.d.ts +4 -0
- package/dist/uploads/validateISOBaseMediaFile.d.ts.map +1 -0
- package/dist/uploads/validateISOBaseMediaFile.js +91 -0
- package/dist/uploads/validateISOBaseMediaFile.js.map +1 -0
- package/dist/uploads/validateSvg.d.ts +10 -4
- package/dist/uploads/validateSvg.d.ts.map +1 -1
- package/dist/uploads/validateSvg.js +280 -40
- package/dist/uploads/validateSvg.js.map +1 -1
- package/dist/uploads/validateUploadFilename.d.ts +3 -0
- package/dist/uploads/validateUploadFilename.d.ts.map +1 -0
- package/dist/uploads/validateUploadFilename.js +13 -0
- package/dist/uploads/validateUploadFilename.js.map +1 -0
- package/dist/uploads/validateUploadURL.d.ts +13 -0
- package/dist/uploads/validateUploadURL.d.ts.map +1 -0
- package/dist/uploads/validateUploadURL.js +37 -0
- package/dist/uploads/validateUploadURL.js.map +1 -0
- package/dist/utilities/addDataAndFileToRequest.d.ts.map +1 -1
- package/dist/utilities/addDataAndFileToRequest.js +14 -46
- package/dist/utilities/addDataAndFileToRequest.js.map +1 -1
- package/dist/utilities/appendNonTrashedFilter.d.ts +1 -1
- package/dist/utilities/appendNonTrashedFilter.d.ts.map +1 -1
- package/dist/utilities/appendNonTrashedFilter.js.map +1 -1
- package/dist/utilities/appendUploadSelectFields.d.ts.map +1 -1
- package/dist/utilities/appendUploadSelectFields.js +4 -3
- package/dist/utilities/appendUploadSelectFields.js.map +1 -1
- package/dist/utilities/batchProcessing.d.ts +23 -0
- package/dist/utilities/batchProcessing.d.ts.map +1 -0
- package/dist/utilities/batchProcessing.js +34 -0
- package/dist/utilities/batchProcessing.js.map +1 -0
- package/dist/utilities/canAccessAdmin.d.ts.map +1 -1
- package/dist/utilities/canAccessAdmin.js +2 -0
- package/dist/utilities/canAccessAdmin.js.map +1 -1
- package/dist/utilities/checkDocumentLockStatus.d.ts +19 -0
- package/dist/utilities/checkDocumentLockStatus.d.ts.map +1 -1
- package/dist/utilities/checkDocumentLockStatus.js +74 -0
- package/dist/utilities/checkDocumentLockStatus.js.map +1 -1
- package/dist/utilities/createPayloadRequest.d.ts +12 -10
- package/dist/utilities/createPayloadRequest.d.ts.map +1 -1
- package/dist/utilities/createPayloadRequest.js +98 -81
- package/dist/utilities/createPayloadRequest.js.map +1 -1
- package/dist/utilities/createPayloadRequestFromWebRequest.d.ts +14 -0
- package/dist/utilities/createPayloadRequestFromWebRequest.d.ts.map +1 -0
- package/dist/utilities/createPayloadRequestFromWebRequest.js +95 -0
- package/dist/utilities/createPayloadRequestFromWebRequest.js.map +1 -0
- package/dist/utilities/deepCopyObject.d.ts.map +1 -1
- package/dist/utilities/deepCopyObject.js +110 -19
- package/dist/utilities/deepCopyObject.js.map +1 -1
- package/dist/utilities/entityInputSchema/filterFieldsByAccess.d.ts +30 -0
- package/dist/utilities/entityInputSchema/filterFieldsByAccess.d.ts.map +1 -0
- package/dist/utilities/entityInputSchema/filterFieldsByAccess.js +71 -0
- package/dist/utilities/entityInputSchema/filterFieldsByAccess.js.map +1 -0
- package/dist/utilities/entityInputSchema/getEntityInputSchema.d.ts +13 -0
- package/dist/utilities/entityInputSchema/getEntityInputSchema.d.ts.map +1 -0
- package/dist/utilities/entityInputSchema/getEntityInputSchema.js +66 -0
- package/dist/utilities/entityInputSchema/getEntityInputSchema.js.map +1 -0
- package/dist/utilities/entityInputSchema/sanitizeEntitySchema.d.ts +10 -0
- package/dist/utilities/entityInputSchema/sanitizeEntitySchema.d.ts.map +1 -0
- package/dist/utilities/entityInputSchema/sanitizeEntitySchema.js +384 -0
- package/dist/utilities/entityInputSchema/sanitizeEntitySchema.js.map +1 -0
- package/dist/utilities/entityInputSchema/types.d.ts +16 -0
- package/dist/utilities/entityInputSchema/types.d.ts.map +1 -0
- package/dist/utilities/entityInputSchema/types.js +3 -0
- package/dist/utilities/entityInputSchema/types.js.map +1 -0
- package/dist/utilities/entityInputSchema/validateEntityData.d.ts +13 -0
- package/dist/utilities/entityInputSchema/validateEntityData.d.ts.map +1 -0
- package/dist/utilities/entityInputSchema/validateEntityData.js +138 -0
- package/dist/utilities/entityInputSchema/validateEntityData.js.map +1 -0
- package/dist/utilities/fieldPath.d.ts +13 -0
- package/dist/utilities/fieldPath.d.ts.map +1 -0
- package/dist/utilities/fieldPath.js +51 -0
- package/dist/utilities/fieldPath.js.map +1 -0
- package/dist/utilities/fieldValueExists.d.ts +29 -0
- package/dist/utilities/fieldValueExists.d.ts.map +1 -0
- package/dist/utilities/fieldValueExists.js +37 -0
- package/dist/utilities/fieldValueExists.js.map +1 -0
- package/dist/utilities/flattenAllFields.js +1 -1
- package/dist/utilities/flattenAllFields.js.map +1 -1
- package/dist/utilities/formatAdminURL.d.ts +1 -0
- package/dist/utilities/formatAdminURL.d.ts.map +1 -1
- package/dist/utilities/formatAdminURL.js +22 -4
- package/dist/utilities/formatAdminURL.js.map +1 -1
- package/dist/utilities/getEntityPermissions/entityDocExists.d.ts.map +1 -1
- package/dist/utilities/getEntityPermissions/entityDocExists.js +36 -5
- package/dist/utilities/getEntityPermissions/entityDocExists.js.map +1 -1
- package/dist/utilities/getEntityPermissions/getEntityPermissions.d.ts.map +1 -1
- package/dist/utilities/getEntityPermissions/getEntityPermissions.js +1 -0
- package/dist/utilities/getEntityPermissions/getEntityPermissions.js.map +1 -1
- package/dist/utilities/getNextVersion.d.ts +7 -0
- package/dist/utilities/getNextVersion.d.ts.map +1 -0
- package/dist/utilities/getNextVersion.js +20 -0
- package/dist/utilities/getNextVersion.js.map +1 -0
- package/dist/utilities/getObjectDotNotation.d.ts.map +1 -1
- package/dist/utilities/getObjectDotNotation.js +7 -1
- package/dist/utilities/getObjectDotNotation.js.map +1 -1
- package/dist/utilities/getRequestOrigin.d.ts.map +1 -1
- package/dist/utilities/getRequestOrigin.js.map +1 -1
- package/dist/utilities/getSafeRedirect.d.ts.map +1 -1
- package/dist/utilities/getSafeRedirect.js +16 -9
- package/dist/utilities/getSafeRedirect.js.map +1 -1
- package/dist/utilities/getTopLevelFieldNames.d.ts +2 -0
- package/dist/utilities/getTopLevelFieldNames.d.ts.map +1 -0
- package/dist/utilities/getTopLevelFieldNames.js +3 -0
- package/dist/utilities/getTopLevelFieldNames.js.map +1 -0
- package/dist/utilities/getUniqueFieldValue.d.ts +28 -0
- package/dist/utilities/getUniqueFieldValue.d.ts.map +1 -0
- package/dist/utilities/getUniqueFieldValue.js +27 -0
- package/dist/utilities/getUniqueFieldValue.js.map +1 -0
- package/dist/utilities/getVirtualFieldNames.d.ts +14 -0
- package/dist/utilities/getVirtualFieldNames.d.ts.map +1 -0
- package/dist/utilities/getVirtualFieldNames.js +35 -0
- package/dist/utilities/getVirtualFieldNames.js.map +1 -0
- package/dist/utilities/handleEndpoints.d.ts.map +1 -1
- package/dist/utilities/handleEndpoints.js +8 -7
- package/dist/utilities/handleEndpoints.js.map +1 -1
- package/dist/utilities/headersWithCors.js +1 -1
- package/dist/utilities/headersWithCors.js.map +1 -1
- package/dist/utilities/killTransaction.d.ts +7 -0
- package/dist/utilities/killTransaction.d.ts.map +1 -1
- package/dist/utilities/killTransaction.js +7 -0
- package/dist/utilities/killTransaction.js.map +1 -1
- package/dist/utilities/logError.d.ts.map +1 -1
- package/dist/utilities/logError.js +5 -2
- package/dist/utilities/logError.js.map +1 -1
- package/dist/utilities/nextJsDevReloadStrategy.d.ts +7 -0
- package/dist/utilities/nextJsDevReloadStrategy.d.ts.map +1 -0
- package/dist/utilities/nextJsDevReloadStrategy.js +62 -0
- package/dist/utilities/nextJsDevReloadStrategy.js.map +1 -0
- package/dist/utilities/parseDocumentID.d.ts +4 -1
- package/dist/utilities/parseDocumentID.d.ts.map +1 -1
- package/dist/utilities/parseDocumentID.js +7 -1
- package/dist/utilities/parseDocumentID.js.map +1 -1
- package/dist/utilities/parseParams/index.d.ts.map +1 -1
- package/dist/utilities/parseParams/index.js +3 -1
- package/dist/utilities/parseParams/index.js.map +1 -1
- package/dist/utilities/sanitizeUploadPrefix.d.ts +5 -0
- package/dist/utilities/sanitizeUploadPrefix.d.ts.map +1 -0
- package/dist/utilities/sanitizeUploadPrefix.js +18 -0
- package/dist/utilities/sanitizeUploadPrefix.js.map +1 -0
- package/dist/utilities/sharedInputSchemas.d.ts +52 -0
- package/dist/utilities/sharedInputSchemas.d.ts.map +1 -0
- package/dist/utilities/sharedInputSchemas.js +101 -0
- package/dist/utilities/sharedInputSchemas.js.map +1 -0
- package/dist/utilities/telemetry/featureInfo/getFeatureInfo.d.ts +4 -0
- package/dist/utilities/telemetry/featureInfo/getFeatureInfo.d.ts.map +1 -0
- package/dist/utilities/telemetry/featureInfo/getFeatureInfo.js +262 -0
- package/dist/utilities/telemetry/featureInfo/getFeatureInfo.js.map +1 -0
- package/dist/utilities/telemetry/featureInfo/types.d.ts +63 -0
- package/dist/utilities/telemetry/featureInfo/types.d.ts.map +1 -0
- package/dist/utilities/telemetry/featureInfo/types.js +3 -0
- package/dist/utilities/telemetry/featureInfo/types.js.map +1 -0
- package/dist/utilities/telemetry/getProjectContext.d.ts +16 -0
- package/dist/utilities/telemetry/getProjectContext.d.ts.map +1 -0
- package/dist/utilities/telemetry/getProjectContext.js +43 -0
- package/dist/utilities/telemetry/getProjectContext.js.map +1 -0
- package/dist/utilities/telemetry/index.d.ts +6 -1
- package/dist/utilities/telemetry/index.d.ts.map +1 -1
- package/dist/utilities/telemetry/index.js +21 -1
- package/dist/utilities/telemetry/index.js.map +1 -1
- package/dist/utilities/transformPointDataToPayload.d.ts +7 -0
- package/dist/utilities/transformPointDataToPayload.d.ts.map +1 -0
- package/dist/utilities/transformPointDataToPayload.js +28 -0
- package/dist/utilities/transformPointDataToPayload.js.map +1 -0
- package/dist/utilities/traverseFields.d.ts.map +1 -1
- package/dist/utilities/traverseFields.js +25 -36
- package/dist/utilities/traverseFields.js.map +1 -1
- package/dist/utilities/unflatten.d.ts.map +1 -1
- package/dist/utilities/unflatten.js +21 -9
- package/dist/utilities/unflatten.js.map +1 -1
- package/dist/utilities/unflattenData.d.ts +3 -0
- package/dist/utilities/unflattenData.d.ts.map +1 -0
- package/dist/utilities/unflattenData.js +14 -0
- package/dist/utilities/unflattenData.js.map +1 -0
- package/dist/utilities/zod.d.ts +5 -0
- package/dist/utilities/zod.d.ts.map +1 -0
- package/dist/utilities/zod.js +21 -0
- package/dist/utilities/zod.js.map +1 -0
- package/dist/versions/allLocalesPublicationStatus.d.ts +38 -0
- package/dist/versions/allLocalesPublicationStatus.d.ts.map +1 -0
- package/dist/versions/allLocalesPublicationStatus.js +57 -0
- package/dist/versions/allLocalesPublicationStatus.js.map +1 -0
- package/dist/versions/deleteCollectionVersions.d.ts +11 -1
- package/dist/versions/deleteCollectionVersions.d.ts.map +1 -1
- package/dist/versions/deleteCollectionVersions.js +10 -3
- package/dist/versions/deleteCollectionVersions.js.map +1 -1
- package/dist/versions/deleteScheduledPublishJobs.d.ts +5 -1
- package/dist/versions/deleteScheduledPublishJobs.d.ts.map +1 -1
- package/dist/versions/deleteScheduledPublishJobs.js +11 -5
- package/dist/versions/deleteScheduledPublishJobs.js.map +1 -1
- package/dist/versions/drafts/appendVersionToQueryKey.d.ts +1 -0
- package/dist/versions/drafts/appendVersionToQueryKey.d.ts.map +1 -1
- package/dist/versions/drafts/appendVersionToQueryKey.js +6 -12
- package/dist/versions/drafts/appendVersionToQueryKey.js.map +1 -1
- package/dist/versions/getLatestGlobalVersion.d.ts.map +1 -1
- package/dist/versions/getLatestGlobalVersion.js +10 -2
- package/dist/versions/getLatestGlobalVersion.js.map +1 -1
- package/dist/versions/getRestoredStatusesToAuthorize.d.ts +9 -0
- package/dist/versions/getRestoredStatusesToAuthorize.d.ts.map +1 -0
- package/dist/versions/getRestoredStatusesToAuthorize.js +22 -0
- package/dist/versions/getRestoredStatusesToAuthorize.js.map +1 -0
- package/dist/versions/isInheritedReadVersionsAccess.d.ts +6 -0
- package/dist/versions/isInheritedReadVersionsAccess.d.ts.map +1 -0
- package/dist/versions/isInheritedReadVersionsAccess.js +30 -0
- package/dist/versions/isInheritedReadVersionsAccess.js.map +1 -0
- package/dist/versions/payloadPackageList.d.ts.map +1 -1
- package/dist/versions/payloadPackageList.js +0 -1
- package/dist/versions/payloadPackageList.js.map +1 -1
- package/dist/versions/schedule/job.d.ts +2 -2
- package/dist/versions/schedule/job.d.ts.map +1 -1
- package/dist/versions/schedule/job.js +12 -8
- package/dist/versions/schedule/job.js.map +1 -1
- package/dist/versions/schedule/types.d.ts +5 -1
- package/dist/versions/schedule/types.d.ts.map +1 -1
- package/dist/versions/schedule/types.js.map +1 -1
- package/package.json +30 -13
- package/skills/payload/SKILL.md +544 -0
- package/skills/payload/reference/ACCESS-CONTROL-ADVANCED.md +718 -0
- package/skills/payload/reference/ACCESS-CONTROL.md +700 -0
- package/skills/payload/reference/ADAPTERS.md +312 -0
- package/skills/payload/reference/ADVANCED.md +393 -0
- package/skills/payload/reference/COLLECTIONS.md +336 -0
- package/skills/payload/reference/ENDPOINTS.md +650 -0
- package/skills/payload/reference/FIELD-TYPE-GUARDS.md +553 -0
- package/skills/payload/reference/FIELDS.md +748 -0
- package/skills/payload/reference/HOOKS.md +186 -0
- package/skills/payload/reference/PLUGIN-DEVELOPMENT.md +1445 -0
- package/skills/payload/reference/QUERIES.md +282 -0
- package/dist/auth/cookies.spec.js +0 -34
- package/dist/auth/cookies.spec.js.map +0 -1
- package/dist/auth/strategies/local/authenticate.spec.js +0 -83
- package/dist/auth/strategies/local/authenticate.spec.js.map +0 -1
- package/dist/bin/build.d.ts.map +0 -1
- package/dist/bin/build.js.map +0 -1
- package/dist/bin/build.spec.js +0 -594
- package/dist/bin/build.spec.js.map +0 -1
- package/dist/bin/frameworkConventions.d.ts.map +0 -1
- package/dist/bin/frameworkConventions.js.map +0 -1
- package/dist/bin/generateImportMap/generateImportMap.spec.js +0 -176
- package/dist/bin/generateImportMap/generateImportMap.spec.js.map +0 -1
- package/dist/bin/generateImportMap/index.d.ts.map +0 -1
- package/dist/bin/generateImportMap/index.js.map +0 -1
- package/dist/bin/generateImportMap/iterateCollections.d.ts.map +0 -1
- package/dist/bin/generateImportMap/iterateCollections.js.map +0 -1
- package/dist/bin/generateImportMap/iterateConfig.d.ts.map +0 -1
- package/dist/bin/generateImportMap/iterateConfig.js.map +0 -1
- package/dist/bin/generateImportMap/iterateFields.d.ts.map +0 -1
- package/dist/bin/generateImportMap/iterateFields.js.map +0 -1
- package/dist/bin/generateImportMap/iterateGlobals.d.ts.map +0 -1
- package/dist/bin/generateImportMap/iterateGlobals.js.map +0 -1
- package/dist/bin/generateImportMap/utilities/addPayloadComponentToImportMap.d.ts.map +0 -1
- package/dist/bin/generateImportMap/utilities/addPayloadComponentToImportMap.js.map +0 -1
- package/dist/bin/generateImportMap/utilities/getFromImportMap.d.ts.map +0 -1
- package/dist/bin/generateImportMap/utilities/getFromImportMap.js.map +0 -1
- package/dist/bin/generateImportMap/utilities/getImportMapToBaseDirPath.d.ts.map +0 -1
- package/dist/bin/generateImportMap/utilities/getImportMapToBaseDirPath.js.map +0 -1
- package/dist/bin/generateImportMap/utilities/parsePayloadComponent.d.ts.map +0 -1
- package/dist/bin/generateImportMap/utilities/parsePayloadComponent.js.map +0 -1
- package/dist/bin/generateImportMap/utilities/resolveImportMapFilePath.d.ts.map +0 -1
- package/dist/bin/generateImportMap/utilities/resolveImportMapFilePath.js.map +0 -1
- package/dist/bin/generateTypes.d.ts +0 -6
- package/dist/bin/generateTypes.d.ts.map +0 -1
- package/dist/bin/generateTypes.js.map +0 -1
- package/dist/bin/index.d.ts +0 -2
- package/dist/bin/index.d.ts.map +0 -1
- package/dist/bin/index.js +0 -200
- package/dist/bin/index.js.map +0 -1
- package/dist/bin/info.d.ts +0 -2
- package/dist/bin/info.d.ts.map +0 -1
- package/dist/bin/info.js +0 -56
- package/dist/bin/info.js.map +0 -1
- package/dist/bin/loadEnv.d.ts.map +0 -1
- package/dist/bin/loadEnv.js.map +0 -1
- package/dist/bin/migrate.d.ts +0 -15
- package/dist/bin/migrate.d.ts.map +0 -1
- package/dist/bin/migrate.js +0 -102
- package/dist/bin/migrate.js.map +0 -1
- package/dist/collections/config/defaults.spec.js +0 -47
- package/dist/collections/config/defaults.spec.js.map +0 -1
- package/dist/collections/config/sanitize.spec.js +0 -120
- package/dist/collections/config/sanitize.spec.js.map +0 -1
- package/dist/collections/config/useAsTitle.spec.js +0 -187
- package/dist/collections/config/useAsTitle.spec.js.map +0 -1
- package/dist/database/defaultUpdateJobs.d.ts +0 -3
- package/dist/database/defaultUpdateJobs.d.ts.map +0 -1
- package/dist/database/defaultUpdateJobs.js +0 -41
- package/dist/database/defaultUpdateJobs.js.map +0 -1
- package/dist/database/migrations/findMigrationDir.spec.js +0 -47
- package/dist/database/migrations/findMigrationDir.spec.js.map +0 -1
- package/dist/fields/baseFields/slug/countVersions.d.ts +0 -13
- package/dist/fields/baseFields/slug/countVersions.d.ts.map +0 -1
- package/dist/fields/baseFields/slug/countVersions.js +0 -27
- package/dist/fields/baseFields/slug/countVersions.js.map +0 -1
- package/dist/fields/config/reservedFieldNames.spec.js +0 -149
- package/dist/fields/config/reservedFieldNames.spec.js.map +0 -1
- package/dist/fields/config/sanitize.spec.js +0 -745
- package/dist/fields/config/sanitize.spec.js.map +0 -1
- package/dist/fields/isFieldDisabled.spec.js +0 -134
- package/dist/fields/isFieldDisabled.spec.js.map +0 -1
- package/dist/fields/validations.spec.js +0 -990
- package/dist/fields/validations.spec.js.map +0 -1
- package/dist/globals/config/sanitize.spec.js +0 -43
- package/dist/globals/config/sanitize.spec.js.map +0 -1
- package/dist/hierarchy/utils/getLocalizedValue.spec.js +0 -250
- package/dist/hierarchy/utils/getLocalizedValue.spec.js.map +0 -1
- package/dist/locked-documents/config.spec.js +0 -298
- package/dist/locked-documents/config.spec.js.map +0 -1
- package/dist/uploads/checkFileAccess.spec.js +0 -109
- package/dist/uploads/checkFileAccess.spec.js.map +0 -1
- package/dist/uploads/cropImage.d.ts +0 -30
- package/dist/uploads/cropImage.d.ts.map +0 -1
- package/dist/uploads/cropImage.js +0 -58
- package/dist/uploads/cropImage.js.map +0 -1
- package/dist/uploads/endpoints/getFileFromURL.d.ts +0 -3
- package/dist/uploads/endpoints/getFileFromURL.d.ts.map +0 -1
- package/dist/uploads/endpoints/getFileFromURL.js.map +0 -1
- package/dist/uploads/fetchAPI-multipart/isEligibleRequest.spec.js +0 -29
- package/dist/uploads/fetchAPI-multipart/isEligibleRequest.spec.js.map +0 -1
- package/dist/uploads/getExternalFile.d.ts +0 -10
- package/dist/uploads/getExternalFile.d.ts.map +0 -1
- package/dist/uploads/getExternalFile.js +0 -73
- package/dist/uploads/getExternalFile.js.map +0 -1
- package/dist/uploads/getSafeFilename.spec.js +0 -274
- package/dist/uploads/getSafeFilename.spec.js.map +0 -1
- package/dist/uploads/image-resizing/createImageSize.d.ts +0 -24
- package/dist/uploads/image-resizing/createImageSize.d.ts.map +0 -1
- package/dist/uploads/image-resizing/createImageSize.js +0 -23
- package/dist/uploads/image-resizing/createImageSize.js.map +0 -1
- package/dist/uploads/image-resizing/createImageSizes.d.ts +0 -39
- package/dist/uploads/image-resizing/createImageSizes.d.ts.map +0 -1
- package/dist/uploads/image-resizing/createImageSizes.js +0 -208
- package/dist/uploads/image-resizing/createImageSizes.js.map +0 -1
- package/dist/uploads/image-resizing/extractHeightFromImage.d.ts +0 -9
- package/dist/uploads/image-resizing/extractHeightFromImage.d.ts.map +0 -1
- package/dist/uploads/image-resizing/extractHeightFromImage.js +0 -13
- package/dist/uploads/image-resizing/extractHeightFromImage.js.map +0 -1
- package/dist/uploads/image-resizing/generateImageSizeFilename.d.ts.map +0 -1
- package/dist/uploads/image-resizing/generateImageSizeFilename.js.map +0 -1
- package/dist/uploads/image-resizing/getImageResizeAction.d.ts +0 -24
- package/dist/uploads/image-resizing/getImageResizeAction.d.ts.map +0 -1
- package/dist/uploads/image-resizing/getImageResizeAction.js +0 -56
- package/dist/uploads/image-resizing/getImageResizeAction.js.map +0 -1
- package/dist/uploads/image-resizing/parseFilename.d.ts.map +0 -1
- package/dist/uploads/image-resizing/parseFilename.js.map +0 -1
- package/dist/uploads/image-resizing/sanitizeResizeConfig.d.ts +0 -11
- package/dist/uploads/image-resizing/sanitizeResizeConfig.d.ts.map +0 -1
- package/dist/uploads/image-resizing/sanitizeResizeConfig.js +0 -20
- package/dist/uploads/image-resizing/sanitizeResizeConfig.js.map +0 -1
- package/dist/uploads/matchMimeType.spec.js +0 -66
- package/dist/uploads/matchMimeType.spec.js.map +0 -1
- package/dist/uploads/mimeTypeValidator.spec.js +0 -84
- package/dist/uploads/mimeTypeValidator.spec.js.map +0 -1
- package/dist/uploads/optionallyAppendMetadata.d.ts +0 -12
- package/dist/uploads/optionallyAppendMetadata.d.ts.map +0 -1
- package/dist/uploads/optionallyAppendMetadata.js +0 -17
- package/dist/uploads/optionallyAppendMetadata.js.map +0 -1
- package/dist/uploads/tempFile.d.ts +0 -7
- package/dist/uploads/tempFile.d.ts.map +0 -1
- package/dist/uploads/tempFile.js +0 -39
- package/dist/uploads/tempFile.js.map +0 -1
- package/dist/utilities/addDataAndFileToRequest.spec.js +0 -41
- package/dist/utilities/addDataAndFileToRequest.spec.js.map +0 -1
- package/dist/utilities/addSelectGenericsToGeneratedTypes.spec.js +0 -563
- package/dist/utilities/addSelectGenericsToGeneratedTypes.spec.js.map +0 -1
- package/dist/utilities/combineWhereConstraints.spec.js +0 -131
- package/dist/utilities/combineWhereConstraints.spec.js.map +0 -1
- package/dist/utilities/configToJSONSchema.spec.js +0 -1162
- package/dist/utilities/configToJSONSchema.spec.js.map +0 -1
- package/dist/utilities/createLocalReq.d.ts +0 -15
- package/dist/utilities/createLocalReq.d.ts.map +0 -1
- package/dist/utilities/createLocalReq.js +0 -110
- package/dist/utilities/createLocalReq.js.map +0 -1
- package/dist/utilities/createLocalReq.spec.js +0 -125
- package/dist/utilities/createLocalReq.spec.js.map +0 -1
- package/dist/utilities/filterDataToSelectedLocales.spec.js +0 -529
- package/dist/utilities/filterDataToSelectedLocales.spec.js.map +0 -1
- package/dist/utilities/flattenTopLevelFields.spec.js +0 -659
- package/dist/utilities/flattenTopLevelFields.spec.js.map +0 -1
- package/dist/utilities/formatAdminURL.spec.js +0 -168
- package/dist/utilities/formatAdminURL.spec.js.map +0 -1
- package/dist/utilities/formatErrors.spec.js +0 -101
- package/dist/utilities/formatErrors.spec.js.map +0 -1
- package/dist/utilities/formatLabels.spec.js +0 -38
- package/dist/utilities/formatLabels.spec.js.map +0 -1
- package/dist/utilities/getFieldByPath.spec.js +0 -157
- package/dist/utilities/getFieldByPath.spec.js.map +0 -1
- package/dist/utilities/getFieldPermissions.spec.js +0 -78
- package/dist/utilities/getFieldPermissions.spec.js.map +0 -1
- package/dist/utilities/getRequestOrigin.spec.js +0 -151
- package/dist/utilities/getRequestOrigin.spec.js.map +0 -1
- package/dist/utilities/getSafeRedirect.spec.js +0 -84
- package/dist/utilities/getSafeRedirect.spec.js.map +0 -1
- package/dist/utilities/isURLAllowed.spec.js +0 -78
- package/dist/utilities/isURLAllowed.spec.js.map +0 -1
- package/dist/utilities/isolateObjectProperty.spec.js +0 -120
- package/dist/utilities/isolateObjectProperty.spec.js.map +0 -1
- package/dist/utilities/mergeLocalizedData.spec.js +0 -1108
- package/dist/utilities/mergeLocalizedData.spec.js.map +0 -1
- package/dist/utilities/optionsAreEqual.spec.js +0 -319
- package/dist/utilities/optionsAreEqual.spec.js.map +0 -1
- package/dist/utilities/parseParams/index.spec.js +0 -384
- package/dist/utilities/parseParams/index.spec.js.map +0 -1
- package/dist/utilities/profiling.spec.js +0 -53
- package/dist/utilities/profiling.spec.js.map +0 -1
- package/dist/utilities/sanitizePermissions.spec.js +0 -1639
- package/dist/utilities/sanitizePermissions.spec.js.map +0 -1
- package/dist/utilities/sanitizeUserDataForEmail.spec.js +0 -134
- package/dist/utilities/sanitizeUserDataForEmail.spec.js.map +0 -1
- package/dist/utilities/telemetry/index.spec.js +0 -43
- package/dist/utilities/telemetry/index.spec.js.map +0 -1
- package/dist/utilities/traverseFields.spec.js +0 -53
- package/dist/utilities/traverseFields.spec.js.map +0 -1
- package/dist/utilities/validateTimezones.spec.js +0 -493
- package/dist/utilities/validateTimezones.spec.js.map +0 -1
- /package/dist/{bin → cli/commands/generateImportMap}/frameworkConventions.d.ts +0 -0
- /package/dist/{bin → cli/commands/generateImportMap}/frameworkConventions.js +0 -0
- /package/dist/{bin → cli/commands}/generateImportMap/iterateCollections.js +0 -0
- /package/dist/{bin → cli/commands}/generateImportMap/iterateFields.js +0 -0
- /package/dist/{bin → cli/commands}/generateImportMap/iterateGlobals.js +0 -0
- /package/dist/{bin → cli/commands}/generateImportMap/utilities/addPayloadComponentToImportMap.js +0 -0
- /package/dist/{bin → cli/commands}/generateImportMap/utilities/getFromImportMap.js +0 -0
- /package/dist/{bin → cli/commands}/generateImportMap/utilities/getImportMapToBaseDirPath.d.ts +0 -0
- /package/dist/{bin → cli/commands}/generateImportMap/utilities/getImportMapToBaseDirPath.js +0 -0
- /package/dist/{bin → cli/commands}/generateImportMap/utilities/parsePayloadComponent.js +0 -0
- /package/dist/{bin → cli/commands}/generateImportMap/utilities/resolveImportMapFilePath.d.ts +0 -0
- /package/dist/{bin → cli/runtime}/loadEnv.d.ts +0 -0
- /package/dist/uploads/{image-resizing/generateImageSizeFilename.d.ts → generateImageSizeFilename.d.ts} +0 -0
- /package/dist/uploads/{image-resizing/generateImageSizeFilename.js → generateImageSizeFilename.js} +0 -0
- /package/dist/uploads/{image-resizing/parseFilename.d.ts → parseFilename.d.ts} +0 -0
- /package/dist/uploads/{image-resizing/parseFilename.js → parseFilename.js} +0 -0
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import { fieldAffectsData } from '../../fields/config/types.js';
|
|
2
|
-
import { SAFE_FIELD_PATH_REGEX } from '../../types/constants.js';
|
|
2
|
+
import { hasManyRelationshipOperatorSet, SAFE_FIELD_PATH_REGEX } from '../../types/constants.js';
|
|
3
3
|
import { getEntityPermissions } from '../../utilities/getEntityPermissions/getEntityPermissions.js';
|
|
4
4
|
import { isolateObjectProperty } from '../../utilities/isolateObjectProperty.js';
|
|
5
5
|
import { getLocalizedPaths } from '../getLocalizedPaths.js';
|
|
6
|
+
import { isNestedRelationshipQuery } from '../isNestedRelationshipQuery.js';
|
|
7
|
+
import { prefixWherePaths } from '../prefixWherePaths.js';
|
|
6
8
|
import { validateQueryPaths } from './validateQueryPaths.js';
|
|
7
9
|
/**
|
|
8
10
|
* Validate the Payload key / value / operator
|
|
9
|
-
*/ export async function validateSearchParam({ collectionConfig, constraint, errors, fields, globalConfig, operator, overrideAccess, parentIsLocalized, path: incomingPath, policies, polymorphicJoin, req, val, versionFields }) {
|
|
11
|
+
*/ export async function validateSearchParam({ collectionConfig, constraint, errors, fields, globalConfig, operator, overrideAccess, parentIsLocalized, path: incomingPath, policies, polymorphicJoin, req, showHiddenFields, val, versionFields }) {
|
|
10
12
|
// Replace GraphQL nested field double underscore formatting
|
|
11
13
|
let sanitizedPath;
|
|
12
14
|
if (incomingPath === '_id') {
|
|
@@ -38,10 +40,37 @@ import { validateQueryPaths } from './validateQueryPaths.js';
|
|
|
38
40
|
locale: req.locale,
|
|
39
41
|
overrideAccess,
|
|
40
42
|
parentIsLocalized,
|
|
41
|
-
payload: req.payload
|
|
43
|
+
payload: req.payload,
|
|
44
|
+
showHiddenFields
|
|
42
45
|
});
|
|
43
46
|
}
|
|
44
47
|
const promises = [];
|
|
48
|
+
const relationshipField = paths.length === 1 ? paths[0]?.field : undefined;
|
|
49
|
+
const hasNestedWhere = isNestedRelationshipQuery(val);
|
|
50
|
+
const relatedCollectionSlug = relationshipField && (relationshipField.type === 'relationship' || relationshipField.type === 'upload') && relationshipField.hasMany && typeof relationshipField.relationTo === 'string' ? relationshipField.relationTo : undefined;
|
|
51
|
+
const isNestedHasManyQuery = hasManyRelationshipOperatorSet.has(operator) && hasNestedWhere && Boolean(relatedCollectionSlug);
|
|
52
|
+
if (operator === 'like' || operator === 'not_like' || operator === 'contains') {
|
|
53
|
+
const isLegitimateNestedContains = operator === 'contains' && isNestedHasManyQuery;
|
|
54
|
+
const containsPlainObject = hasNestedWhere || Array.isArray(val) && val.some((entry)=>isNestedRelationshipQuery(entry));
|
|
55
|
+
if (containsPlainObject && !isLegitimateNestedContains) {
|
|
56
|
+
errors.push({
|
|
57
|
+
path: incomingPath
|
|
58
|
+
});
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
if (isNestedHasManyQuery && relatedCollectionSlug) {
|
|
63
|
+
// Validate the nested query against the related collection.
|
|
64
|
+
promises.push(validateQueryPaths({
|
|
65
|
+
collectionConfig: req.payload.collections[relatedCollectionSlug].config,
|
|
66
|
+
errors,
|
|
67
|
+
overrideAccess,
|
|
68
|
+
policies,
|
|
69
|
+
req,
|
|
70
|
+
showHiddenFields,
|
|
71
|
+
where: val
|
|
72
|
+
}));
|
|
73
|
+
}
|
|
45
74
|
// Sanitize relation.otherRelation.id to relation.otherRelation
|
|
46
75
|
if (paths.at(-1)?.path === 'id') {
|
|
47
76
|
const previousField = paths.at(-2)?.field;
|
|
@@ -51,7 +80,8 @@ import { validateQueryPaths } from './validateQueryPaths.js';
|
|
|
51
80
|
}
|
|
52
81
|
promises.push(...paths.map(async ({ collectionSlug, field, invalid, path }, i)=>{
|
|
53
82
|
if (invalid) {
|
|
54
|
-
|
|
83
|
+
const isUnknownPolymorphicJoinField = polymorphicJoin && !field && SAFE_FIELD_PATH_REGEX.test(incomingPath);
|
|
84
|
+
if (!isUnknownPolymorphicJoinField) {
|
|
55
85
|
errors.push({
|
|
56
86
|
path
|
|
57
87
|
});
|
|
@@ -60,8 +90,9 @@ import { validateQueryPaths } from './validateQueryPaths.js';
|
|
|
60
90
|
}
|
|
61
91
|
// where: { relatedPosts: { equals: 1}} -> { 'relatedPosts.id': { equals: 1}}
|
|
62
92
|
if (field.type === 'join' && path === incomingPath) {
|
|
63
|
-
|
|
64
|
-
|
|
93
|
+
const mutableConstraint = constraint;
|
|
94
|
+
mutableConstraint[`${path}.id`] = mutableConstraint[path];
|
|
95
|
+
delete mutableConstraint[path];
|
|
65
96
|
}
|
|
66
97
|
if ('virtual' in field && field.virtual) {
|
|
67
98
|
if (field.virtual === true) {
|
|
@@ -95,6 +126,55 @@ import { validateQueryPaths } from './validateQueryPaths.js';
|
|
|
95
126
|
path: incomingPath
|
|
96
127
|
});
|
|
97
128
|
}
|
|
129
|
+
const relatedCollectionReadPermission = policies.collections[collectionSlug].read;
|
|
130
|
+
const previousSegment = paths[i - 1];
|
|
131
|
+
const traversedField = previousSegment?.field;
|
|
132
|
+
const isRelationshipHop = Boolean(traversedField) && (traversedField.type === 'relationship' || traversedField.type === 'upload' || traversedField.type === 'join');
|
|
133
|
+
if (isRelationshipHop && relatedCollectionReadPermission && typeof relatedCollectionReadPermission === 'object' && relatedCollectionReadPermission.where) {
|
|
134
|
+
const relationshipPath = paths.slice(0, i).map(({ path: pathToRelationship })=>pathToRelationship).join('.');
|
|
135
|
+
const mutableWhere = constraint;
|
|
136
|
+
const existingAnd = Array.isArray(mutableWhere.and) ? mutableWhere.and : [];
|
|
137
|
+
// Has-many relationships and joins can point to many related documents, so the user's
|
|
138
|
+
// filter and the access constraint must be satisfied by the SAME related document.
|
|
139
|
+
// Scoping both into a single `contains` prevents a different, readable document from
|
|
140
|
+
// masking one the user cannot read (a related-document oracle).
|
|
141
|
+
const isHasManyRelationship = (traversedField.type === 'relationship' || traversedField.type === 'upload') && traversedField.hasMany;
|
|
142
|
+
const isJoin = traversedField.type === 'join';
|
|
143
|
+
if (isHasManyRelationship || isJoin) {
|
|
144
|
+
const relatedFieldPath = paths.at(-1)?.path;
|
|
145
|
+
if (relatedFieldPath) {
|
|
146
|
+
mutableWhere.and = [
|
|
147
|
+
...existingAnd,
|
|
148
|
+
{
|
|
149
|
+
[relationshipPath]: {
|
|
150
|
+
contains: {
|
|
151
|
+
and: [
|
|
152
|
+
{
|
|
153
|
+
[relatedFieldPath]: {
|
|
154
|
+
[operator]: val
|
|
155
|
+
}
|
|
156
|
+
},
|
|
157
|
+
relatedCollectionReadPermission.where
|
|
158
|
+
]
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
];
|
|
163
|
+
// The scoped `contains` above fully replaces the user's original filter;
|
|
164
|
+
// so we can remove it from the top-level where clause
|
|
165
|
+
delete mutableWhere[incomingPath];
|
|
166
|
+
}
|
|
167
|
+
} else {
|
|
168
|
+
const accessWhere = prefixWherePaths({
|
|
169
|
+
prefix: relationshipPath,
|
|
170
|
+
where: relatedCollectionReadPermission.where
|
|
171
|
+
});
|
|
172
|
+
mutableWhere.and = [
|
|
173
|
+
...existingAnd,
|
|
174
|
+
accessWhere
|
|
175
|
+
];
|
|
176
|
+
}
|
|
177
|
+
}
|
|
98
178
|
}
|
|
99
179
|
let fieldPath = path;
|
|
100
180
|
// remove locale from end of path
|
|
@@ -134,7 +214,7 @@ import { validateQueryPaths } from './validateQueryPaths.js';
|
|
|
134
214
|
}
|
|
135
215
|
}
|
|
136
216
|
}
|
|
137
|
-
if (i > 1) {
|
|
217
|
+
if (!isNestedHasManyQuery && i > 1) {
|
|
138
218
|
// Remove top collection and reverse array
|
|
139
219
|
// to work backwards from top
|
|
140
220
|
const pathsToQuery = paths.slice(1).reverse();
|
|
@@ -149,6 +229,7 @@ import { validateQueryPaths } from './validateQueryPaths.js';
|
|
|
149
229
|
overrideAccess,
|
|
150
230
|
policies,
|
|
151
231
|
req,
|
|
232
|
+
showHiddenFields,
|
|
152
233
|
where: {
|
|
153
234
|
[subPath]: {
|
|
154
235
|
[operator]: val
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/database/queryValidation/validateSearchParams.ts"],"sourcesContent":["import type { SanitizedCollectionConfig } from '../../collections/config/types.js'\nimport type { FlattenedField } from '../../fields/config/types.js'\nimport type { SanitizedGlobalConfig } from '../../globals/config/types.js'\nimport type { PayloadRequest, WhereField } from '../../types/index.js'\nimport type { EntityPolicies, PathToQuery } from './types.js'\n\nimport { fieldAffectsData } from '../../fields/config/types.js'\nimport { SAFE_FIELD_PATH_REGEX } from '../../types/constants.js'\nimport { getEntityPermissions } from '../../utilities/getEntityPermissions/getEntityPermissions.js'\nimport { isolateObjectProperty } from '../../utilities/isolateObjectProperty.js'\nimport { getLocalizedPaths } from '../getLocalizedPaths.js'\nimport { validateQueryPaths } from './validateQueryPaths.js'\n\ntype Args = {\n collectionConfig?: SanitizedCollectionConfig\n constraint: WhereField\n errors: { path: string }[]\n fields: FlattenedField[]\n globalConfig?: SanitizedGlobalConfig\n operator: string\n overrideAccess: boolean\n parentIsLocalized?: boolean\n path: string\n // TODO: Rename to permissions or entityPermissions in 4.0\n policies: EntityPolicies\n polymorphicJoin?: boolean\n req: PayloadRequest\n val: unknown\n versionFields?: FlattenedField[]\n}\n\n/**\n * Validate the Payload key / value / operator\n */\nexport async function validateSearchParam({\n collectionConfig,\n constraint,\n errors,\n fields,\n globalConfig,\n operator,\n overrideAccess,\n parentIsLocalized,\n path: incomingPath,\n policies,\n polymorphicJoin,\n req,\n val,\n versionFields,\n}: Args): Promise<void> {\n // Replace GraphQL nested field double underscore formatting\n let sanitizedPath\n if (incomingPath === '_id') {\n sanitizedPath = 'id'\n } else {\n sanitizedPath = incomingPath.replace(/__/g, '.')\n }\n let paths: PathToQuery[] = []\n const { slug } = (collectionConfig || globalConfig)!\n\n const blockReferencesPermissions = {}\n\n if (globalConfig && !policies.globals![slug]) {\n policies.globals![slug] = await getEntityPermissions({\n blockReferencesPermissions,\n entity: globalConfig,\n entityType: 'global',\n fetchData: false,\n operations: ['read'],\n req,\n })\n }\n\n if (sanitizedPath !== 'id') {\n paths = getLocalizedPaths({\n collectionSlug: collectionConfig?.slug,\n fields,\n globalSlug: globalConfig?.slug,\n incomingPath: sanitizedPath,\n locale: req.locale!,\n overrideAccess,\n parentIsLocalized,\n payload: req.payload,\n })\n }\n const promises: Promise<void>[] = []\n\n // Sanitize relation.otherRelation.id to relation.otherRelation\n if (paths.at(-1)?.path === 'id') {\n const previousField = paths.at(-2)?.field\n if (\n previousField &&\n (previousField.type === 'relationship' || previousField.type === 'upload') &&\n typeof previousField.relationTo === 'string'\n ) {\n paths.pop()\n }\n }\n\n promises.push(\n ...paths.map(async ({ collectionSlug, field, invalid, path }, i) => {\n if (invalid) {\n if (!polymorphicJoin || !SAFE_FIELD_PATH_REGEX.test(incomingPath)) {\n errors.push({ path })\n }\n\n return\n }\n\n // where: { relatedPosts: { equals: 1}} -> { 'relatedPosts.id': { equals: 1}}\n if (field.type === 'join' && path === incomingPath) {\n constraint[`${path}.id` as keyof WhereField] = constraint[path as keyof WhereField]\n delete constraint[path as keyof WhereField]\n }\n\n if ('virtual' in field && field.virtual) {\n if (field.virtual === true) {\n errors.push({ path })\n }\n }\n\n if (polymorphicJoin && path === 'relationTo') {\n return\n }\n\n if (!overrideAccess && fieldAffectsData(field)) {\n if (collectionSlug) {\n if (!policies.collections![collectionSlug]) {\n policies.collections![collectionSlug] = await getEntityPermissions({\n blockReferencesPermissions,\n entity: req.payload.collections[collectionSlug]!.config,\n entityType: 'collection',\n fetchData: false,\n operations: ['read'],\n req: isolateObjectProperty(req, 'transactionID'),\n })\n }\n\n if (\n ['hash', 'salt'].includes(incomingPath) &&\n collectionConfig!.auth &&\n !collectionConfig!.auth?.disableLocalStrategy\n ) {\n errors.push({ path: incomingPath })\n }\n }\n let fieldPath = path\n // remove locale from end of path\n if (path.endsWith(`.${req.locale}`)) {\n fieldPath = path.slice(0, -(req.locale!.length + 1))\n }\n // remove \".value\" from ends of polymorphic relationship paths\n if (\n (field.type === 'relationship' || field.type === 'upload') &&\n Array.isArray(field.relationTo)\n ) {\n fieldPath = fieldPath.replace('.value', '')\n }\n\n const entityType: 'collections' | 'globals' = globalConfig ? 'globals' : 'collections'\n const entitySlug = collectionSlug || globalConfig!.slug\n const segments = fieldPath.split('.')\n\n let fieldAccess: any\n\n if (versionFields) {\n fieldAccess = policies[entityType]![entitySlug]!.fields\n\n if (\n segments[0] === 'parent' ||\n segments[0] === 'version' ||\n segments[0] === 'snapshot' ||\n segments[0] === 'latest'\n ) {\n segments.shift()\n }\n } else {\n fieldAccess = policies[entityType]![entitySlug]!.fields\n }\n\n if (segments.length) {\n segments.forEach((segment) => {\n if (fieldAccess[segment]) {\n if ('fields' in fieldAccess[segment]) {\n fieldAccess = fieldAccess[segment].fields\n } else {\n fieldAccess = fieldAccess[segment]\n }\n }\n })\n\n if (!fieldAccess?.read?.permission) {\n errors.push({ path: fieldPath })\n }\n }\n }\n\n if (i > 1) {\n // Remove top collection and reverse array\n // to work backwards from top\n const pathsToQuery = paths.slice(1).reverse()\n\n pathsToQuery.forEach(\n ({ collectionSlug: pathCollectionSlug, path: subPath }, pathToQueryIndex) => {\n // On the \"deepest\" collection,\n // validate query of the relationship\n if (pathToQueryIndex === 0) {\n promises.push(\n validateQueryPaths({\n collectionConfig: req.payload.collections[pathCollectionSlug!]!.config,\n errors,\n globalConfig: undefined,\n overrideAccess,\n policies,\n req,\n where: {\n [subPath]: {\n [operator]: val,\n },\n },\n }),\n )\n }\n },\n )\n }\n }),\n )\n await Promise.all(promises)\n}\n"],"names":["fieldAffectsData","SAFE_FIELD_PATH_REGEX","getEntityPermissions","isolateObjectProperty","getLocalizedPaths","validateQueryPaths","validateSearchParam","collectionConfig","constraint","errors","fields","globalConfig","operator","overrideAccess","parentIsLocalized","path","incomingPath","policies","polymorphicJoin","req","val","versionFields","sanitizedPath","replace","paths","slug","blockReferencesPermissions","globals","entity","entityType","fetchData","operations","collectionSlug","globalSlug","locale","payload","promises","at","previousField","field","type","relationTo","pop","push","map","invalid","i","test","virtual","collections","config","includes","auth","disableLocalStrategy","fieldPath","endsWith","slice","length","Array","isArray","entitySlug","segments","split","fieldAccess","shift","forEach","segment","read","permission","pathsToQuery","reverse","pathCollectionSlug","subPath","pathToQueryIndex","undefined","where","Promise","all"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/database/queryValidation/validateSearchParams.ts"],"sourcesContent":["import type { SanitizedCollectionConfig } from '../../collections/config/types.js'\nimport type { FlattenedField } from '../../fields/config/types.js'\nimport type { SanitizedGlobalConfig } from '../../globals/config/types.js'\nimport type { HasManyRelationshipOperator, PayloadRequest, WhereField } from '../../types/index.js'\nimport type { EntityPolicies, PathToQuery } from './types.js'\n\nimport { fieldAffectsData } from '../../fields/config/types.js'\nimport { hasManyRelationshipOperatorSet, SAFE_FIELD_PATH_REGEX } from '../../types/constants.js'\nimport { getEntityPermissions } from '../../utilities/getEntityPermissions/getEntityPermissions.js'\nimport { isolateObjectProperty } from '../../utilities/isolateObjectProperty.js'\nimport { getLocalizedPaths } from '../getLocalizedPaths.js'\nimport { isNestedRelationshipQuery } from '../isNestedRelationshipQuery.js'\nimport { prefixWherePaths } from '../prefixWherePaths.js'\nimport { validateQueryPaths } from './validateQueryPaths.js'\n\ntype Args = {\n collectionConfig?: SanitizedCollectionConfig\n constraint: WhereField\n errors: { path: string }[]\n fields: FlattenedField[]\n globalConfig?: SanitizedGlobalConfig\n operator: string\n overrideAccess: boolean\n parentIsLocalized?: boolean\n path: string\n // TODO: Rename to permissions or entityPermissions in 4.0\n policies: EntityPolicies\n polymorphicJoin?: boolean\n req: PayloadRequest\n showHiddenFields?: boolean\n val: unknown\n versionFields?: FlattenedField[]\n}\n\n/**\n * Validate the Payload key / value / operator\n */\nexport async function validateSearchParam({\n collectionConfig,\n constraint,\n errors,\n fields,\n globalConfig,\n operator,\n overrideAccess,\n parentIsLocalized,\n path: incomingPath,\n policies,\n polymorphicJoin,\n req,\n showHiddenFields,\n val,\n versionFields,\n}: Args): Promise<void> {\n // Replace GraphQL nested field double underscore formatting\n let sanitizedPath\n if (incomingPath === '_id') {\n sanitizedPath = 'id'\n } else {\n sanitizedPath = incomingPath.replace(/__/g, '.')\n }\n let paths: PathToQuery[] = []\n const { slug } = (collectionConfig || globalConfig)!\n\n const blockReferencesPermissions = {}\n\n if (globalConfig && !policies.globals![slug]) {\n policies.globals![slug] = await getEntityPermissions({\n blockReferencesPermissions,\n entity: globalConfig,\n entityType: 'global',\n fetchData: false,\n operations: ['read'],\n req,\n })\n }\n\n if (sanitizedPath !== 'id') {\n paths = getLocalizedPaths({\n collectionSlug: collectionConfig?.slug,\n fields,\n globalSlug: globalConfig?.slug,\n incomingPath: sanitizedPath,\n locale: req.locale!,\n overrideAccess,\n parentIsLocalized,\n payload: req.payload,\n showHiddenFields,\n })\n }\n const promises: Promise<void>[] = []\n\n const relationshipField = paths.length === 1 ? paths[0]?.field : undefined\n const hasNestedWhere = isNestedRelationshipQuery(val)\n const relatedCollectionSlug =\n relationshipField &&\n (relationshipField.type === 'relationship' || relationshipField.type === 'upload') &&\n relationshipField.hasMany &&\n typeof relationshipField.relationTo === 'string'\n ? relationshipField.relationTo\n : undefined\n const isNestedHasManyQuery =\n hasManyRelationshipOperatorSet.has(operator as HasManyRelationshipOperator) &&\n hasNestedWhere &&\n Boolean(relatedCollectionSlug)\n\n if (operator === 'like' || operator === 'not_like' || operator === 'contains') {\n const isLegitimateNestedContains = operator === 'contains' && isNestedHasManyQuery\n const containsPlainObject =\n hasNestedWhere ||\n (Array.isArray(val) && val.some((entry) => isNestedRelationshipQuery(entry)))\n\n if (containsPlainObject && !isLegitimateNestedContains) {\n errors.push({ path: incomingPath })\n return\n }\n }\n\n if (isNestedHasManyQuery && relatedCollectionSlug) {\n // Validate the nested query against the related collection.\n promises.push(\n validateQueryPaths({\n collectionConfig: req.payload.collections[relatedCollectionSlug]!.config,\n errors,\n overrideAccess,\n policies,\n req,\n showHiddenFields,\n where: val,\n }),\n )\n }\n\n // Sanitize relation.otherRelation.id to relation.otherRelation\n if (paths.at(-1)?.path === 'id') {\n const previousField = paths.at(-2)?.field\n if (\n previousField &&\n (previousField.type === 'relationship' || previousField.type === 'upload') &&\n typeof previousField.relationTo === 'string'\n ) {\n paths.pop()\n }\n }\n\n promises.push(\n ...paths.map(async ({ collectionSlug, field, invalid, path }, i) => {\n if (invalid) {\n const isUnknownPolymorphicJoinField =\n polymorphicJoin && !field && SAFE_FIELD_PATH_REGEX.test(incomingPath)\n\n if (!isUnknownPolymorphicJoinField) {\n errors.push({ path })\n }\n\n return\n }\n\n // where: { relatedPosts: { equals: 1}} -> { 'relatedPosts.id': { equals: 1}}\n if (field.type === 'join' && path === incomingPath) {\n const mutableConstraint = constraint as Record<string, unknown>\n\n mutableConstraint[`${path}.id`] = mutableConstraint[path]\n delete mutableConstraint[path]\n }\n\n if ('virtual' in field && field.virtual) {\n if (field.virtual === true) {\n errors.push({ path })\n }\n }\n\n if (polymorphicJoin && path === 'relationTo') {\n return\n }\n\n if (!overrideAccess && fieldAffectsData(field)) {\n if (collectionSlug) {\n if (!policies.collections![collectionSlug]) {\n policies.collections![collectionSlug] = await getEntityPermissions({\n blockReferencesPermissions,\n entity: req.payload.collections[collectionSlug]!.config,\n entityType: 'collection',\n fetchData: false,\n operations: ['read'],\n req: isolateObjectProperty(req, 'transactionID'),\n })\n }\n\n if (\n ['hash', 'salt'].includes(incomingPath) &&\n collectionConfig!.auth &&\n !collectionConfig!.auth?.disableLocalStrategy\n ) {\n errors.push({ path: incomingPath })\n }\n\n const relatedCollectionReadPermission = policies.collections![collectionSlug].read\n const previousSegment = paths[i - 1]\n const traversedField = previousSegment?.field\n const isRelationshipHop =\n Boolean(traversedField) &&\n (traversedField!.type === 'relationship' ||\n traversedField!.type === 'upload' ||\n traversedField!.type === 'join')\n\n if (\n isRelationshipHop &&\n relatedCollectionReadPermission &&\n typeof relatedCollectionReadPermission === 'object' &&\n relatedCollectionReadPermission.where\n ) {\n const relationshipPath = paths\n .slice(0, i)\n .map(({ path: pathToRelationship }) => pathToRelationship)\n .join('.')\n\n const mutableWhere = constraint as Record<string, unknown>\n const existingAnd = Array.isArray(mutableWhere.and) ? mutableWhere.and : []\n\n // Has-many relationships and joins can point to many related documents, so the user's\n // filter and the access constraint must be satisfied by the SAME related document.\n // Scoping both into a single `contains` prevents a different, readable document from\n // masking one the user cannot read (a related-document oracle).\n const isHasManyRelationship =\n (traversedField!.type === 'relationship' || traversedField!.type === 'upload') &&\n traversedField!.hasMany\n const isJoin = traversedField!.type === 'join'\n\n if (isHasManyRelationship || isJoin) {\n const relatedFieldPath = paths.at(-1)?.path\n\n if (relatedFieldPath) {\n mutableWhere.and = [\n ...existingAnd,\n {\n [relationshipPath]: {\n contains: {\n and: [\n {\n [relatedFieldPath]: {\n [operator]: val,\n },\n },\n relatedCollectionReadPermission.where,\n ],\n },\n },\n },\n ]\n\n // The scoped `contains` above fully replaces the user's original filter;\n // so we can remove it from the top-level where clause\n delete mutableWhere[incomingPath]\n }\n } else {\n const accessWhere = prefixWherePaths({\n prefix: relationshipPath,\n where: relatedCollectionReadPermission.where,\n })\n\n mutableWhere.and = [...existingAnd, accessWhere]\n }\n }\n }\n let fieldPath = path\n // remove locale from end of path\n if (path.endsWith(`.${req.locale}`)) {\n fieldPath = path.slice(0, -(req.locale!.length + 1))\n }\n // remove \".value\" from ends of polymorphic relationship paths\n if (\n (field.type === 'relationship' || field.type === 'upload') &&\n Array.isArray(field.relationTo)\n ) {\n fieldPath = fieldPath.replace('.value', '')\n }\n\n const entityType: 'collections' | 'globals' = globalConfig ? 'globals' : 'collections'\n const entitySlug = collectionSlug || globalConfig!.slug\n const segments = fieldPath.split('.')\n\n let fieldAccess: any\n\n if (versionFields) {\n fieldAccess = policies[entityType]![entitySlug]!.fields\n\n if (\n segments[0] === 'parent' ||\n segments[0] === 'version' ||\n segments[0] === 'snapshot' ||\n segments[0] === 'latest'\n ) {\n segments.shift()\n }\n } else {\n fieldAccess = policies[entityType]![entitySlug]!.fields\n }\n\n if (segments.length) {\n segments.forEach((segment) => {\n if (fieldAccess[segment]) {\n if ('fields' in fieldAccess[segment]) {\n fieldAccess = fieldAccess[segment].fields\n } else {\n fieldAccess = fieldAccess[segment]\n }\n }\n })\n\n if (!fieldAccess?.read?.permission) {\n errors.push({ path: fieldPath })\n }\n }\n }\n\n if (!isNestedHasManyQuery && i > 1) {\n // Remove top collection and reverse array\n // to work backwards from top\n const pathsToQuery = paths.slice(1).reverse()\n\n pathsToQuery.forEach(\n ({ collectionSlug: pathCollectionSlug, path: subPath }, pathToQueryIndex) => {\n // On the \"deepest\" collection,\n // validate query of the relationship\n if (pathToQueryIndex === 0) {\n promises.push(\n validateQueryPaths({\n collectionConfig: req.payload.collections[pathCollectionSlug!]!.config,\n errors,\n globalConfig: undefined,\n overrideAccess,\n policies,\n req,\n showHiddenFields,\n where: {\n [subPath]: {\n [operator]: val,\n },\n },\n }),\n )\n }\n },\n )\n }\n }),\n )\n await Promise.all(promises)\n}\n"],"names":["fieldAffectsData","hasManyRelationshipOperatorSet","SAFE_FIELD_PATH_REGEX","getEntityPermissions","isolateObjectProperty","getLocalizedPaths","isNestedRelationshipQuery","prefixWherePaths","validateQueryPaths","validateSearchParam","collectionConfig","constraint","errors","fields","globalConfig","operator","overrideAccess","parentIsLocalized","path","incomingPath","policies","polymorphicJoin","req","showHiddenFields","val","versionFields","sanitizedPath","replace","paths","slug","blockReferencesPermissions","globals","entity","entityType","fetchData","operations","collectionSlug","globalSlug","locale","payload","promises","relationshipField","length","field","undefined","hasNestedWhere","relatedCollectionSlug","type","hasMany","relationTo","isNestedHasManyQuery","has","Boolean","isLegitimateNestedContains","containsPlainObject","Array","isArray","some","entry","push","collections","config","where","at","previousField","pop","map","invalid","i","isUnknownPolymorphicJoinField","test","mutableConstraint","virtual","includes","auth","disableLocalStrategy","relatedCollectionReadPermission","read","previousSegment","traversedField","isRelationshipHop","relationshipPath","slice","pathToRelationship","join","mutableWhere","existingAnd","and","isHasManyRelationship","isJoin","relatedFieldPath","contains","accessWhere","prefix","fieldPath","endsWith","entitySlug","segments","split","fieldAccess","shift","forEach","segment","permission","pathsToQuery","reverse","pathCollectionSlug","subPath","pathToQueryIndex","Promise","all"],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { SanitizedCollectionConfig } from '../../collections/config/types.js';
|
|
2
|
+
import type { FlattenedField } from '../../fields/config/types.js';
|
|
3
|
+
import type { SanitizedGlobalConfig } from '../../globals/config/types.js';
|
|
4
|
+
import type { PayloadRequest, Sort } from '../../types/index.js';
|
|
5
|
+
type Args = {
|
|
6
|
+
overrideAccess: boolean;
|
|
7
|
+
req: PayloadRequest;
|
|
8
|
+
sort?: Sort;
|
|
9
|
+
versionFields?: FlattenedField[];
|
|
10
|
+
} & ({
|
|
11
|
+
collectionConfig: SanitizedCollectionConfig;
|
|
12
|
+
globalConfig?: undefined;
|
|
13
|
+
} | {
|
|
14
|
+
collectionConfig?: undefined;
|
|
15
|
+
globalConfig: SanitizedGlobalConfig;
|
|
16
|
+
});
|
|
17
|
+
/**
|
|
18
|
+
* Ensures sort paths are subject to the same field-read access checks as query `where` paths,
|
|
19
|
+
* since database sorting happens before response-time field redaction.
|
|
20
|
+
*/
|
|
21
|
+
export declare const validateSortQuery: ({ collectionConfig, globalConfig, overrideAccess, req, sort, versionFields, }: Args) => Promise<void>;
|
|
22
|
+
export {};
|
|
23
|
+
//# sourceMappingURL=validateSortQuery.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validateSortQuery.d.ts","sourceRoot":"","sources":["../../../src/database/queryValidation/validateSortQuery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAA;AAClF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAClE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAA;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,IAAI,EAAS,MAAM,sBAAsB,CAAA;AAKvE,KAAK,IAAI,GAAG;IACV,cAAc,EAAE,OAAO,CAAA;IACvB,GAAG,EAAE,cAAc,CAAA;IACnB,IAAI,CAAC,EAAE,IAAI,CAAA;IACX,aAAa,CAAC,EAAE,cAAc,EAAE,CAAA;CACjC,GAAG,CACA;IACE,gBAAgB,EAAE,yBAAyB,CAAA;IAC3C,YAAY,CAAC,EAAE,SAAS,CAAA;CACzB,GACD;IACE,gBAAgB,CAAC,EAAE,SAAS,CAAA;IAC5B,YAAY,EAAE,qBAAqB,CAAA;CACpC,CACJ,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,kFAO3B,IAAI,KAAG,OAAO,CAAC,IAAI,CA+CrB,CAAA"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { getLocalizedPaths } from '../getLocalizedPaths.js';
|
|
2
|
+
import { validateQueryPaths } from './validateQueryPaths.js';
|
|
3
|
+
/**
|
|
4
|
+
* Ensures sort paths are subject to the same field-read access checks as query `where` paths,
|
|
5
|
+
* since database sorting happens before response-time field redaction.
|
|
6
|
+
*/ export const validateSortQuery = async ({ collectionConfig, globalConfig, overrideAccess, req, sort, versionFields })=>{
|
|
7
|
+
if (overrideAccess || !sort) {
|
|
8
|
+
return;
|
|
9
|
+
}
|
|
10
|
+
const fields = versionFields || (globalConfig || collectionConfig).flattenedFields;
|
|
11
|
+
const sortFields = Array.isArray(sort) ? sort : [
|
|
12
|
+
sort
|
|
13
|
+
];
|
|
14
|
+
const where = {};
|
|
15
|
+
for (const sortField of sortFields){
|
|
16
|
+
const path = sortField.replace(/^-/, '').replace(/__/g, '.');
|
|
17
|
+
const paths = getLocalizedPaths({
|
|
18
|
+
collectionSlug: collectionConfig?.slug,
|
|
19
|
+
fields,
|
|
20
|
+
globalSlug: globalConfig?.slug,
|
|
21
|
+
incomingPath: path,
|
|
22
|
+
locale: req.locale,
|
|
23
|
+
overrideAccess: true,
|
|
24
|
+
payload: req.payload
|
|
25
|
+
});
|
|
26
|
+
if (path !== 'id' && path !== '_id' && paths.every(({ invalid })=>!invalid)) {
|
|
27
|
+
where[path] = {
|
|
28
|
+
exists: true
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
if (Object.keys(where).length === 0) {
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
if (collectionConfig) {
|
|
36
|
+
await validateQueryPaths({
|
|
37
|
+
collectionConfig,
|
|
38
|
+
overrideAccess,
|
|
39
|
+
req,
|
|
40
|
+
versionFields,
|
|
41
|
+
where
|
|
42
|
+
});
|
|
43
|
+
} else {
|
|
44
|
+
await validateQueryPaths({
|
|
45
|
+
globalConfig,
|
|
46
|
+
overrideAccess,
|
|
47
|
+
req,
|
|
48
|
+
versionFields,
|
|
49
|
+
where
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
//# sourceMappingURL=validateSortQuery.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/database/queryValidation/validateSortQuery.ts"],"sourcesContent":["import type { SanitizedCollectionConfig } from '../../collections/config/types.js'\nimport type { FlattenedField } from '../../fields/config/types.js'\nimport type { SanitizedGlobalConfig } from '../../globals/config/types.js'\nimport type { PayloadRequest, Sort, Where } from '../../types/index.js'\n\nimport { getLocalizedPaths } from '../getLocalizedPaths.js'\nimport { validateQueryPaths } from './validateQueryPaths.js'\n\ntype Args = {\n overrideAccess: boolean\n req: PayloadRequest\n sort?: Sort\n versionFields?: FlattenedField[]\n} & (\n | {\n collectionConfig: SanitizedCollectionConfig\n globalConfig?: undefined\n }\n | {\n collectionConfig?: undefined\n globalConfig: SanitizedGlobalConfig\n }\n)\n\n/**\n * Ensures sort paths are subject to the same field-read access checks as query `where` paths,\n * since database sorting happens before response-time field redaction.\n */\nexport const validateSortQuery = async ({\n collectionConfig,\n globalConfig,\n overrideAccess,\n req,\n sort,\n versionFields,\n}: Args): Promise<void> => {\n if (overrideAccess || !sort) {\n return\n }\n\n const fields = versionFields || (globalConfig || collectionConfig).flattenedFields\n const sortFields = Array.isArray(sort) ? sort : [sort]\n const where: Where = {}\n\n for (const sortField of sortFields) {\n const path = sortField.replace(/^-/, '').replace(/__/g, '.')\n const paths = getLocalizedPaths({\n collectionSlug: collectionConfig?.slug,\n fields,\n globalSlug: globalConfig?.slug,\n incomingPath: path,\n locale: req.locale!,\n overrideAccess: true,\n payload: req.payload,\n })\n\n if (path !== 'id' && path !== '_id' && paths.every(({ invalid }) => !invalid)) {\n where[path] = { exists: true }\n }\n }\n\n if (Object.keys(where).length === 0) {\n return\n }\n\n if (collectionConfig) {\n await validateQueryPaths({\n collectionConfig,\n overrideAccess,\n req,\n versionFields,\n where,\n })\n } else {\n await validateQueryPaths({\n globalConfig,\n overrideAccess,\n req,\n versionFields,\n where,\n })\n }\n}\n"],"names":["getLocalizedPaths","validateQueryPaths","validateSortQuery","collectionConfig","globalConfig","overrideAccess","req","sort","versionFields","fields","flattenedFields","sortFields","Array","isArray","where","sortField","path","replace","paths","collectionSlug","slug","globalSlug","incomingPath","locale","payload","every","invalid","exists","Object","keys","length"],"mappings":"AAKA,SAASA,iBAAiB,QAAQ,0BAAyB;AAC3D,SAASC,kBAAkB,QAAQ,0BAAyB;AAkB5D;;;CAGC,GACD,OAAO,MAAMC,oBAAoB,OAAO,EACtCC,gBAAgB,EAChBC,YAAY,EACZC,cAAc,EACdC,GAAG,EACHC,IAAI,EACJC,aAAa,EACR;IACL,IAAIH,kBAAkB,CAACE,MAAM;QAC3B;IACF;IAEA,MAAME,SAASD,iBAAiB,AAACJ,CAAAA,gBAAgBD,gBAAe,EAAGO,eAAe;IAClF,MAAMC,aAAaC,MAAMC,OAAO,CAACN,QAAQA,OAAO;QAACA;KAAK;IACtD,MAAMO,QAAe,CAAC;IAEtB,KAAK,MAAMC,aAAaJ,WAAY;QAClC,MAAMK,OAAOD,UAAUE,OAAO,CAAC,MAAM,IAAIA,OAAO,CAAC,OAAO;QACxD,MAAMC,QAAQlB,kBAAkB;YAC9BmB,gBAAgBhB,kBAAkBiB;YAClCX;YACAY,YAAYjB,cAAcgB;YAC1BE,cAAcN;YACdO,QAAQjB,IAAIiB,MAAM;YAClBlB,gBAAgB;YAChBmB,SAASlB,IAAIkB,OAAO;QACtB;QAEA,IAAIR,SAAS,QAAQA,SAAS,SAASE,MAAMO,KAAK,CAAC,CAAC,EAAEC,OAAO,EAAE,GAAK,CAACA,UAAU;YAC7EZ,KAAK,CAACE,KAAK,GAAG;gBAAEW,QAAQ;YAAK;QAC/B;IACF;IAEA,IAAIC,OAAOC,IAAI,CAACf,OAAOgB,MAAM,KAAK,GAAG;QACnC;IACF;IAEA,IAAI3B,kBAAkB;QACpB,MAAMF,mBAAmB;YACvBE;YACAE;YACAC;YACAE;YACAM;QACF;IACF,OAAO;QACL,MAAMb,mBAAmB;YACvBG;YACAC;YACAC;YACAE;YACAM;QACF;IACF;AACF,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sanitizeJoinQuery.d.ts","sourceRoot":"","sources":["../../src/database/sanitizeJoinQuery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAiB,MAAM,gCAAgC,CAAA;AAC9F,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"sanitizeJoinQuery.d.ts","sourceRoot":"","sources":["../../src/database/sanitizeJoinQuery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAiB,MAAM,gCAAgC,CAAA;AAC9F,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAUlE,KAAK,IAAI,GAAG;IACV,gBAAgB,EAAE,yBAAyB,CAAA;IAC3C,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,cAAc,EAAE,OAAO,CAAA;IACvB,GAAG,EAAE,cAAc,CAAA;CACpB,CAAA;AAmFD;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,kEAK3B,IAAI;;;;;;;;GA+CN,CAAA"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { executeAccess } from '../auth/executeAccess.js';
|
|
2
2
|
import { QueryError } from '../errors/QueryError.js';
|
|
3
|
+
import { deepCopyObjectSimple } from '../utilities/deepCopyObject.js';
|
|
3
4
|
import { combineQueries } from './combineQueries.js';
|
|
4
5
|
import { validateQueryPaths } from './queryValidation/validateQueryPaths.js';
|
|
6
|
+
import { validateSortQuery } from './queryValidation/validateSortQuery.js';
|
|
5
7
|
import { sanitizeWhereQuery } from './sanitizeWhereQuery.js';
|
|
6
8
|
const sanitizeJoinFieldQuery = async ({ collectionSlug, errors, join, joinsQuery, overrideAccess, promises, req })=>{
|
|
7
9
|
const { joinPath } = join;
|
|
@@ -11,6 +13,7 @@ const sanitizeJoinFieldQuery = async ({ collectionSlug, errors, join, joinsQuery
|
|
|
11
13
|
}
|
|
12
14
|
const joinCollectionConfig = req.payload.collections[collectionSlug].config;
|
|
13
15
|
const accessResult = !overrideAccess ? await executeAccess({
|
|
16
|
+
slug: joinCollectionConfig.slug,
|
|
14
17
|
disableErrors: true,
|
|
15
18
|
req
|
|
16
19
|
}, joinCollectionConfig.access.read) : true;
|
|
@@ -28,7 +31,7 @@ const sanitizeJoinFieldQuery = async ({ collectionSlug, errors, join, joinsQuery
|
|
|
28
31
|
joinQuery.where = {};
|
|
29
32
|
}
|
|
30
33
|
if (join.field.where) {
|
|
31
|
-
joinQuery.where = combineQueries(joinQuery.where, join.field.where);
|
|
34
|
+
joinQuery.where = combineQueries(joinQuery.where, deepCopyObjectSimple(join.field.where));
|
|
32
35
|
}
|
|
33
36
|
promises.push(validateQueryPaths({
|
|
34
37
|
collectionConfig: joinCollectionConfig,
|
|
@@ -38,6 +41,11 @@ const sanitizeJoinFieldQuery = async ({ collectionSlug, errors, join, joinsQuery
|
|
|
38
41
|
req,
|
|
39
42
|
// incoming where input, but we shouldn't validate generated from the access control.
|
|
40
43
|
where: joinQuery.where
|
|
44
|
+
}), validateSortQuery({
|
|
45
|
+
collectionConfig: joinCollectionConfig,
|
|
46
|
+
overrideAccess,
|
|
47
|
+
req,
|
|
48
|
+
sort: joinQuery.sort || join.field.defaultSort || joinCollectionConfig.defaultSort
|
|
41
49
|
}));
|
|
42
50
|
if (typeof accessResult === 'object') {
|
|
43
51
|
sanitizeWhereQuery({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/database/sanitizeJoinQuery.ts"],"sourcesContent":["import type { SanitizedCollectionConfig, SanitizedJoin } from '../collections/config/types.js'\nimport type { JoinQuery, PayloadRequest } from '../types/index.js'\n\nimport { executeAccess } from '../auth/executeAccess.js'\nimport { QueryError } from '../errors/QueryError.js'\nimport { combineQueries } from './combineQueries.js'\nimport { validateQueryPaths } from './queryValidation/validateQueryPaths.js'\nimport { sanitizeWhereQuery } from './sanitizeWhereQuery.js'\n\ntype Args = {\n collectionConfig: SanitizedCollectionConfig\n joins?: JoinQuery\n overrideAccess: boolean\n req: PayloadRequest\n}\n\nconst sanitizeJoinFieldQuery = async ({\n collectionSlug,\n errors,\n join,\n joinsQuery,\n overrideAccess,\n promises,\n req,\n}: {\n collectionSlug: string\n errors: { path: string }[]\n join: SanitizedJoin\n joinsQuery: JoinQuery\n overrideAccess: boolean\n promises: Promise<void>[]\n req: PayloadRequest\n}) => {\n const { joinPath } = join\n\n // TODO: fix any's in joinsQuery[joinPath]\n\n if ((joinsQuery as any)[joinPath] === false) {\n return\n }\n\n const joinCollectionConfig = req.payload.collections[collectionSlug]!.config\n\n const accessResult = !overrideAccess\n ? await executeAccess({ disableErrors: true, req }
|
|
1
|
+
{"version":3,"sources":["../../src/database/sanitizeJoinQuery.ts"],"sourcesContent":["import type { SanitizedCollectionConfig, SanitizedJoin } from '../collections/config/types.js'\nimport type { JoinQuery, PayloadRequest } from '../types/index.js'\n\nimport { executeAccess } from '../auth/executeAccess.js'\nimport { QueryError } from '../errors/QueryError.js'\nimport { deepCopyObjectSimple } from '../utilities/deepCopyObject.js'\nimport { combineQueries } from './combineQueries.js'\nimport { validateQueryPaths } from './queryValidation/validateQueryPaths.js'\nimport { validateSortQuery } from './queryValidation/validateSortQuery.js'\nimport { sanitizeWhereQuery } from './sanitizeWhereQuery.js'\n\ntype Args = {\n collectionConfig: SanitizedCollectionConfig\n joins?: JoinQuery\n overrideAccess: boolean\n req: PayloadRequest\n}\n\nconst sanitizeJoinFieldQuery = async ({\n collectionSlug,\n errors,\n join,\n joinsQuery,\n overrideAccess,\n promises,\n req,\n}: {\n collectionSlug: string\n errors: { path: string }[]\n join: SanitizedJoin\n joinsQuery: JoinQuery\n overrideAccess: boolean\n promises: Promise<void>[]\n req: PayloadRequest\n}) => {\n const { joinPath } = join\n\n // TODO: fix any's in joinsQuery[joinPath]\n\n if ((joinsQuery as any)[joinPath] === false) {\n return\n }\n\n const joinCollectionConfig = req.payload.collections[collectionSlug]!.config\n\n const accessResult = !overrideAccess\n ? await executeAccess(\n { slug: joinCollectionConfig.slug, disableErrors: true, req },\n joinCollectionConfig.access.read,\n )\n : true\n\n if (accessResult === false) {\n ;(joinsQuery as any)[joinPath] = false\n return\n }\n\n if (!(joinsQuery as any)[joinPath]) {\n ;(joinsQuery as any)[joinPath] = {}\n }\n\n const joinQuery = (joinsQuery as any)[joinPath]\n\n if (!joinQuery.where) {\n joinQuery.where = {}\n }\n\n if (join.field.where) {\n joinQuery.where = combineQueries(joinQuery.where, deepCopyObjectSimple(join.field.where))\n }\n\n promises.push(\n validateQueryPaths({\n collectionConfig: joinCollectionConfig,\n errors,\n overrideAccess,\n polymorphicJoin: Array.isArray(join.field.collection),\n req,\n // incoming where input, but we shouldn't validate generated from the access control.\n where: joinQuery.where,\n }),\n validateSortQuery({\n collectionConfig: joinCollectionConfig,\n overrideAccess,\n req,\n sort: joinQuery.sort || join.field.defaultSort || joinCollectionConfig.defaultSort,\n }),\n )\n\n if (typeof accessResult === 'object') {\n sanitizeWhereQuery({\n fields: joinCollectionConfig.flattenedFields,\n payload: req.payload,\n where: accessResult,\n })\n joinQuery.where = combineQueries(joinQuery.where, accessResult)\n }\n}\n\n/**\n * * Validates `where` for each join\n * * Combines the access result for joined collection\n * * Combines the default join's `where`\n */\nexport const sanitizeJoinQuery = async ({\n collectionConfig,\n joins: joinsQuery,\n overrideAccess,\n req,\n}: Args) => {\n if (joinsQuery === false) {\n return false\n }\n\n if (!joinsQuery) {\n joinsQuery = {}\n }\n\n const errors: { path: string }[] = []\n const promises: Promise<void>[] = []\n\n for (const collectionSlug in collectionConfig.joins) {\n for (const join of collectionConfig.joins[collectionSlug]!) {\n await sanitizeJoinFieldQuery({\n collectionSlug,\n errors,\n join,\n joinsQuery,\n overrideAccess,\n promises,\n req,\n })\n }\n }\n\n for (const join of collectionConfig.polymorphicJoins) {\n for (const collectionSlug of join.field.collection) {\n await sanitizeJoinFieldQuery({\n collectionSlug,\n errors,\n join,\n joinsQuery,\n overrideAccess,\n promises,\n req,\n })\n }\n }\n\n await Promise.all(promises)\n\n if (errors.length > 0) {\n throw new QueryError(errors)\n }\n\n return joinsQuery\n}\n"],"names":["executeAccess","QueryError","deepCopyObjectSimple","combineQueries","validateQueryPaths","validateSortQuery","sanitizeWhereQuery","sanitizeJoinFieldQuery","collectionSlug","errors","join","joinsQuery","overrideAccess","promises","req","joinPath","joinCollectionConfig","payload","collections","config","accessResult","slug","disableErrors","access","read","joinQuery","where","field","push","collectionConfig","polymorphicJoin","Array","isArray","collection","sort","defaultSort","fields","flattenedFields","sanitizeJoinQuery","joins","polymorphicJoins","Promise","all","length"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { FlattenedField } from '../fields/config/types.js';
|
|
2
2
|
import type { Payload, Where } from '../types/index.js';
|
|
3
3
|
/**
|
|
4
|
-
*
|
|
4
|
+
* Replaces virtual field names in a `where` query with the database paths they point to.
|
|
5
5
|
*/
|
|
6
6
|
export declare const sanitizeWhereQuery: ({ fields, payload, where, }: {
|
|
7
7
|
fields: FlattenedField[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sanitizeWhereQuery.d.ts","sourceRoot":"","sources":["../../src/database/sanitizeWhereQuery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC/D,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"sanitizeWhereQuery.d.ts","sourceRoot":"","sources":["../../src/database/sanitizeWhereQuery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC/D,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAKvD;;GAEG;AACH,eAAO,MAAM,kBAAkB,gCAI5B;IACD,MAAM,EAAE,cAAc,EAAE,CAAA;IACxB,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,KAAK,CAAA;CACb,SAuDA,CAAA"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
+
import { hasManyRelationshipOperators } from '../types/constants.js';
|
|
2
|
+
import { isNestedRelationshipQuery } from './isNestedRelationshipQuery.js';
|
|
1
3
|
/**
|
|
2
|
-
*
|
|
4
|
+
* Replaces virtual field names in a `where` query with the database paths they point to.
|
|
3
5
|
*/ export const sanitizeWhereQuery = ({ fields, payload, where })=>{
|
|
4
6
|
for(const key in where){
|
|
5
7
|
const value = where[key];
|
|
@@ -19,12 +21,14 @@
|
|
|
19
21
|
const paths = key.split('.');
|
|
20
22
|
let pathHasChanged = false;
|
|
21
23
|
let currentFields = fields;
|
|
24
|
+
let finalField;
|
|
22
25
|
for(let i = 0; i < paths.length; i++){
|
|
23
26
|
const path = paths[i];
|
|
24
27
|
const field = currentFields.find((each)=>each.name === path);
|
|
25
28
|
if (!field) {
|
|
26
29
|
break;
|
|
27
30
|
}
|
|
31
|
+
finalField = field;
|
|
28
32
|
if ('virtual' in field && field.virtual && typeof field.virtual === 'string') {
|
|
29
33
|
paths[i] = field.virtual;
|
|
30
34
|
pathHasChanged = true;
|
|
@@ -39,11 +43,50 @@
|
|
|
39
43
|
}
|
|
40
44
|
}
|
|
41
45
|
}
|
|
46
|
+
// Follow relationship fields so virtual fields on related documents are also resolved.
|
|
47
|
+
sanitizeNestedHasManyRelationshipQueries({
|
|
48
|
+
field: finalField,
|
|
49
|
+
payload,
|
|
50
|
+
value
|
|
51
|
+
});
|
|
42
52
|
if (pathHasChanged) {
|
|
43
53
|
where[paths.join('.')] = where[key];
|
|
44
54
|
delete where[key];
|
|
45
55
|
}
|
|
46
56
|
}
|
|
47
57
|
};
|
|
58
|
+
/**
|
|
59
|
+
* Resolves virtual field paths inside a nested has-many relationship query.
|
|
60
|
+
* The nested query uses fields from the related collection, not fields from the parent collection.
|
|
61
|
+
*
|
|
62
|
+
* @example
|
|
63
|
+
* ```ts
|
|
64
|
+
* {
|
|
65
|
+
* ingredients: {
|
|
66
|
+
* contains: {
|
|
67
|
+
* displayName: { equals: 'Lettuce' }, // `displayName` may be a virtual field
|
|
68
|
+
* },
|
|
69
|
+
* },
|
|
70
|
+
* }
|
|
71
|
+
* ```
|
|
72
|
+
*/ function sanitizeNestedHasManyRelationshipQueries({ field, payload, value }) {
|
|
73
|
+
if (!field || field.type !== 'relationship' && field.type !== 'upload' || !field.hasMany || typeof field.relationTo !== 'string' || value === null || typeof value !== 'object' || Array.isArray(value)) {
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
const relatedFields = payload.collections[field.relationTo]?.config.flattenedFields;
|
|
77
|
+
if (!relatedFields) {
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
for (const operator of hasManyRelationshipOperators){
|
|
81
|
+
const nestedWhere = value[operator];
|
|
82
|
+
if (isNestedRelationshipQuery(nestedWhere)) {
|
|
83
|
+
sanitizeWhereQuery({
|
|
84
|
+
fields: relatedFields,
|
|
85
|
+
payload,
|
|
86
|
+
where: nestedWhere
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
48
91
|
|
|
49
92
|
//# sourceMappingURL=sanitizeWhereQuery.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/database/sanitizeWhereQuery.ts"],"sourcesContent":["import type { FlattenedField } from '../fields/config/types.js'\nimport type { Payload, Where } from '../types/index.js'\n\n/**\n *
|
|
1
|
+
{"version":3,"sources":["../../src/database/sanitizeWhereQuery.ts"],"sourcesContent":["import type { FlattenedField } from '../fields/config/types.js'\nimport type { Payload, Where } from '../types/index.js'\n\nimport { hasManyRelationshipOperators } from '../types/constants.js'\nimport { isNestedRelationshipQuery } from './isNestedRelationshipQuery.js'\n\n/**\n * Replaces virtual field names in a `where` query with the database paths they point to.\n */\nexport const sanitizeWhereQuery = ({\n fields,\n payload,\n where,\n}: {\n fields: FlattenedField[]\n payload: Payload\n where: Where\n}) => {\n for (const key in where) {\n const value = where[key]\n\n if (['and', 'or'].includes(key.toLowerCase()) && Array.isArray(value)) {\n for (const where of value) {\n sanitizeWhereQuery({ fields, payload, where })\n }\n continue\n }\n\n const paths = key.split('.')\n let pathHasChanged = false\n\n let currentFields = fields\n let finalField: FlattenedField | undefined\n\n for (let i = 0; i < paths.length; i++) {\n const path = paths[i]!\n const field = currentFields.find((each) => each.name === path)\n\n if (!field) {\n break\n }\n\n finalField = field\n\n if ('virtual' in field && field.virtual && typeof field.virtual === 'string') {\n paths[i] = field.virtual\n pathHasChanged = true\n }\n\n if ('flattenedFields' in field) {\n currentFields = field.flattenedFields\n }\n\n if (\n (field.type === 'relationship' || field.type === 'upload') &&\n typeof field.relationTo === 'string'\n ) {\n const relatedCollection = payload.collections[field.relationTo]\n if (relatedCollection) {\n currentFields = relatedCollection.config.flattenedFields\n }\n }\n }\n\n // Follow relationship fields so virtual fields on related documents are also resolved.\n sanitizeNestedHasManyRelationshipQueries({ field: finalField, payload, value })\n\n if (pathHasChanged) {\n where[paths.join('.')] = where[key]!\n delete where[key]\n }\n }\n}\n\n/**\n * Resolves virtual field paths inside a nested has-many relationship query.\n * The nested query uses fields from the related collection, not fields from the parent collection.\n *\n * @example\n * ```ts\n * {\n * ingredients: {\n * contains: {\n * displayName: { equals: 'Lettuce' }, // `displayName` may be a virtual field\n * },\n * },\n * }\n * ```\n */\nfunction sanitizeNestedHasManyRelationshipQueries({\n field,\n payload,\n value,\n}: {\n field?: FlattenedField\n payload: Payload\n value: unknown\n}): void {\n if (\n !field ||\n (field.type !== 'relationship' && field.type !== 'upload') ||\n !field.hasMany ||\n typeof field.relationTo !== 'string' ||\n value === null ||\n typeof value !== 'object' ||\n Array.isArray(value)\n ) {\n return\n }\n\n const relatedFields = payload.collections[field.relationTo]?.config.flattenedFields\n if (!relatedFields) {\n return\n }\n\n for (const operator of hasManyRelationshipOperators) {\n const nestedWhere = (value as Record<string, unknown>)[operator]\n\n if (isNestedRelationshipQuery(nestedWhere)) {\n sanitizeWhereQuery({ fields: relatedFields, payload, where: nestedWhere })\n }\n }\n}\n"],"names":["hasManyRelationshipOperators","isNestedRelationshipQuery","sanitizeWhereQuery","fields","payload","where","key","value","includes","toLowerCase","Array","isArray","paths","split","pathHasChanged","currentFields","finalField","i","length","path","field","find","each","name","virtual","flattenedFields","type","relationTo","relatedCollection","collections","config","sanitizeNestedHasManyRelationshipQueries","join","hasMany","relatedFields","operator","nestedWhere"],"mappings":"AAGA,SAASA,4BAA4B,QAAQ,wBAAuB;AACpE,SAASC,yBAAyB,QAAQ,iCAAgC;AAE1E;;CAEC,GACD,OAAO,MAAMC,qBAAqB,CAAC,EACjCC,MAAM,EACNC,OAAO,EACPC,KAAK,EAKN;IACC,IAAK,MAAMC,OAAOD,MAAO;QACvB,MAAME,QAAQF,KAAK,CAACC,IAAI;QAExB,IAAI;YAAC;YAAO;SAAK,CAACE,QAAQ,CAACF,IAAIG,WAAW,OAAOC,MAAMC,OAAO,CAACJ,QAAQ;YACrE,KAAK,MAAMF,SAASE,MAAO;gBACzBL,mBAAmB;oBAAEC;oBAAQC;oBAASC;gBAAM;YAC9C;YACA;QACF;QAEA,MAAMO,QAAQN,IAAIO,KAAK,CAAC;QACxB,IAAIC,iBAAiB;QAErB,IAAIC,gBAAgBZ;QACpB,IAAIa;QAEJ,IAAK,IAAIC,IAAI,GAAGA,IAAIL,MAAMM,MAAM,EAAED,IAAK;YACrC,MAAME,OAAOP,KAAK,CAACK,EAAE;YACrB,MAAMG,QAAQL,cAAcM,IAAI,CAAC,CAACC,OAASA,KAAKC,IAAI,KAAKJ;YAEzD,IAAI,CAACC,OAAO;gBACV;YACF;YAEAJ,aAAaI;YAEb,IAAI,aAAaA,SAASA,MAAMI,OAAO,IAAI,OAAOJ,MAAMI,OAAO,KAAK,UAAU;gBAC5EZ,KAAK,CAACK,EAAE,GAAGG,MAAMI,OAAO;gBACxBV,iBAAiB;YACnB;YAEA,IAAI,qBAAqBM,OAAO;gBAC9BL,gBAAgBK,MAAMK,eAAe;YACvC;YAEA,IACE,AAACL,CAAAA,MAAMM,IAAI,KAAK,kBAAkBN,MAAMM,IAAI,KAAK,QAAO,KACxD,OAAON,MAAMO,UAAU,KAAK,UAC5B;gBACA,MAAMC,oBAAoBxB,QAAQyB,WAAW,CAACT,MAAMO,UAAU,CAAC;gBAC/D,IAAIC,mBAAmB;oBACrBb,gBAAgBa,kBAAkBE,MAAM,CAACL,eAAe;gBAC1D;YACF;QACF;QAEA,uFAAuF;QACvFM,yCAAyC;YAAEX,OAAOJ;YAAYZ;YAASG;QAAM;QAE7E,IAAIO,gBAAgB;YAClBT,KAAK,CAACO,MAAMoB,IAAI,CAAC,KAAK,GAAG3B,KAAK,CAACC,IAAI;YACnC,OAAOD,KAAK,CAACC,IAAI;QACnB;IACF;AACF,EAAC;AAED;;;;;;;;;;;;;;CAcC,GACD,SAASyB,yCAAyC,EAChDX,KAAK,EACLhB,OAAO,EACPG,KAAK,EAKN;IACC,IACE,CAACa,SACAA,MAAMM,IAAI,KAAK,kBAAkBN,MAAMM,IAAI,KAAK,YACjD,CAACN,MAAMa,OAAO,IACd,OAAOb,MAAMO,UAAU,KAAK,YAC5BpB,UAAU,QACV,OAAOA,UAAU,YACjBG,MAAMC,OAAO,CAACJ,QACd;QACA;IACF;IAEA,MAAM2B,gBAAgB9B,QAAQyB,WAAW,CAACT,MAAMO,UAAU,CAAC,EAAEG,OAAOL;IACpE,IAAI,CAACS,eAAe;QAClB;IACF;IAEA,KAAK,MAAMC,YAAYnC,6BAA8B;QACnD,MAAMoC,cAAc,AAAC7B,KAAiC,CAAC4B,SAAS;QAEhE,IAAIlC,0BAA0BmC,cAAc;YAC1ClC,mBAAmB;gBAAEC,QAAQ+B;gBAAe9B;gBAASC,OAAO+B;YAAY;QAC1E;IACF;AACF"}
|