payload 3.0.0-alpha.7 → 3.0.0-alpha.70
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 -1
- package/dist/admin/RichText.d.ts +37 -19
- package/dist/admin/RichText.d.ts.map +1 -1
- package/dist/admin/RichText.js +2 -5
- package/dist/admin/RichText.js.map +1 -0
- package/dist/admin/elements/Cell.d.ts +8 -8
- package/dist/admin/elements/Cell.d.ts.map +1 -1
- package/dist/admin/elements/Cell.js +2 -5
- package/dist/admin/elements/Cell.js.map +1 -0
- package/dist/admin/elements/DatePicker.js +2 -5
- package/dist/admin/elements/DatePicker.js.map +1 -0
- package/dist/admin/elements/PreviewButton.d.ts +2 -8
- package/dist/admin/elements/PreviewButton.d.ts.map +1 -1
- package/dist/admin/elements/PreviewButton.js +2 -5
- package/dist/admin/elements/PreviewButton.js.map +1 -0
- package/dist/admin/elements/PublishButton.d.ts +2 -10
- package/dist/admin/elements/PublishButton.d.ts.map +1 -1
- package/dist/admin/elements/PublishButton.js +2 -5
- package/dist/admin/elements/PublishButton.js.map +1 -0
- package/dist/admin/elements/SaveButton.d.ts +2 -7
- package/dist/admin/elements/SaveButton.d.ts.map +1 -1
- package/dist/admin/elements/SaveButton.js +2 -5
- package/dist/admin/elements/SaveButton.js.map +1 -0
- package/dist/admin/elements/SaveDraftButton.d.ts +2 -8
- package/dist/admin/elements/SaveDraftButton.d.ts.map +1 -1
- package/dist/admin/elements/SaveDraftButton.js +2 -5
- package/dist/admin/elements/SaveDraftButton.js.map +1 -0
- package/dist/admin/elements/Tab.d.ts +6 -3
- package/dist/admin/elements/Tab.d.ts.map +1 -1
- package/dist/admin/elements/Tab.js +2 -5
- package/dist/admin/elements/Tab.js.map +1 -0
- package/dist/admin/elements/WithServerSideProps.d.ts +5 -0
- package/dist/admin/elements/WithServerSideProps.d.ts.map +1 -0
- package/dist/admin/elements/WithServerSideProps.js +3 -0
- package/dist/admin/elements/WithServerSideProps.js.map +1 -0
- package/dist/admin/forms/Error.d.ts +1 -0
- package/dist/admin/forms/Error.d.ts.map +1 -1
- package/dist/admin/forms/Error.js +2 -5
- package/dist/admin/forms/Error.js.map +1 -0
- package/dist/admin/forms/FieldDescription.d.ts +12 -6
- package/dist/admin/forms/FieldDescription.d.ts.map +1 -1
- package/dist/admin/forms/FieldDescription.js +2 -5
- package/dist/admin/forms/FieldDescription.js.map +1 -0
- package/dist/admin/forms/FieldTypes.js +2 -5
- package/dist/admin/forms/FieldTypes.js.map +1 -0
- package/dist/admin/forms/Form.d.ts +26 -0
- package/dist/admin/forms/Form.d.ts.map +1 -1
- package/dist/admin/forms/Form.js +2 -5
- package/dist/admin/forms/Form.js.map +1 -0
- package/dist/admin/forms/Label.d.ts +5 -1
- package/dist/admin/forms/Label.d.ts.map +1 -1
- package/dist/admin/forms/Label.js +2 -5
- package/dist/admin/forms/Label.js.map +1 -0
- package/dist/admin/forms/RowLabel.d.ts +3 -9
- package/dist/admin/forms/RowLabel.d.ts.map +1 -1
- package/dist/admin/forms/RowLabel.js +2 -5
- package/dist/admin/forms/RowLabel.js.map +1 -0
- package/dist/admin/types.d.ts +16 -18
- package/dist/admin/types.d.ts.map +1 -1
- package/dist/admin/types.js +2 -5
- package/dist/admin/types.js.map +1 -0
- package/dist/admin/views/types.d.ts +55 -0
- package/dist/admin/views/types.d.ts.map +1 -0
- package/dist/admin/views/types.js +3 -0
- package/dist/admin/views/types.js.map +1 -0
- package/dist/assets/assets.d.js +1 -2
- package/dist/assets/assets.d.js.map +1 -0
- package/dist/auth/baseFields/accountLock.d.ts +1 -1
- package/dist/auth/baseFields/accountLock.d.ts.map +1 -1
- package/dist/auth/baseFields/accountLock.js +6 -16
- package/dist/auth/baseFields/accountLock.js.map +1 -0
- package/dist/auth/baseFields/apiKey.d.ts +1 -1
- package/dist/auth/baseFields/apiKey.d.ts.map +1 -1
- package/dist/auth/baseFields/apiKey.js +13 -30
- package/dist/auth/baseFields/apiKey.js.map +1 -0
- package/dist/auth/baseFields/auth.d.ts +1 -1
- package/dist/auth/baseFields/auth.d.ts.map +1 -1
- package/dist/auth/baseFields/auth.js +5 -19
- package/dist/auth/baseFields/auth.js.map +1 -0
- package/dist/auth/baseFields/verification.d.ts +1 -1
- package/dist/auth/baseFields/verification.d.ts.map +1 -1
- package/dist/auth/baseFields/verification.js +6 -20
- package/dist/auth/baseFields/verification.js.map +1 -0
- package/dist/auth/cookies.d.ts +22 -6
- package/dist/auth/cookies.d.ts.map +1 -1
- package/dist/auth/cookies.js +49 -45
- package/dist/auth/cookies.js.map +1 -0
- package/dist/auth/crypto.js +7 -30
- package/dist/auth/crypto.js.map +1 -0
- package/dist/auth/defaultAccess.d.ts +2 -2
- package/dist/auth/defaultAccess.d.ts.map +1 -1
- package/dist/auth/defaultAccess.js +2 -12
- package/dist/auth/defaultAccess.js.map +1 -0
- package/dist/auth/defaultUser.d.ts +1 -1
- package/dist/auth/defaultUser.d.ts.map +1 -1
- package/dist/auth/defaultUser.js +6 -21
- package/dist/auth/defaultUser.js.map +1 -0
- package/dist/auth/executeAccess.d.ts +3 -3
- package/dist/auth/executeAccess.d.ts.map +1 -1
- package/dist/auth/executeAccess.js +5 -15
- package/dist/auth/executeAccess.js.map +1 -0
- package/dist/auth/executeAuthStrategies.d.ts +4 -0
- package/dist/auth/executeAuthStrategies.d.ts.map +1 -0
- package/dist/auth/executeAuthStrategies.js +11 -0
- package/dist/auth/executeAuthStrategies.js.map +1 -0
- package/dist/auth/extractJWT.d.ts +1 -1
- package/dist/auth/extractJWT.d.ts.map +1 -1
- package/dist/auth/extractJWT.js +4 -14
- package/dist/auth/extractJWT.js.map +1 -0
- package/dist/auth/getAccessResults.d.ts +3 -3
- package/dist/auth/getAccessResults.d.ts.map +1 -1
- package/dist/auth/getAccessResults.js +16 -22
- package/dist/auth/getAccessResults.js.map +1 -0
- package/dist/auth/getFieldsToSign.d.ts +3 -3
- package/dist/auth/getFieldsToSign.d.ts.map +1 -1
- package/dist/auth/getFieldsToSign.js +5 -15
- package/dist/auth/getFieldsToSign.js.map +1 -0
- package/dist/auth/index.d.ts +3 -3
- package/dist/auth/index.d.ts.map +1 -1
- package/dist/auth/index.js +4 -27
- package/dist/auth/index.js.map +1 -0
- package/dist/auth/isLocked.js +2 -12
- package/dist/auth/isLocked.js.map +1 -0
- package/dist/auth/operations/access.d.ts +3 -3
- package/dist/auth/operations/access.d.ts.map +1 -1
- package/dist/auth/operations/access.js +12 -22
- package/dist/auth/operations/access.js.map +1 -0
- package/dist/auth/operations/auth.d.ts +14 -0
- package/dist/auth/operations/auth.d.ts.map +1 -0
- package/dist/auth/operations/auth.js +35 -0
- package/dist/auth/operations/auth.js.map +1 -0
- package/dist/auth/operations/forgotPassword.d.ts +3 -3
- package/dist/auth/operations/forgotPassword.d.ts.map +1 -1
- package/dist/auth/operations/forgotPassword.js +27 -39
- package/dist/auth/operations/forgotPassword.js.map +1 -0
- package/dist/auth/operations/init.d.ts +2 -2
- package/dist/auth/operations/init.d.ts.map +1 -1
- package/dist/auth/operations/init.js +2 -12
- package/dist/auth/operations/init.js.map +1 -0
- package/dist/auth/operations/local/auth.d.ts +4 -0
- package/dist/auth/operations/local/auth.d.ts.map +1 -0
- package/dist/auth/operations/local/auth.js +13 -0
- package/dist/auth/operations/local/auth.js.map +1 -0
- package/dist/auth/operations/local/forgotPassword.d.ts +4 -4
- package/dist/auth/operations/local/forgotPassword.d.ts.map +1 -1
- package/dist/auth/operations/local/forgotPassword.js +8 -18
- package/dist/auth/operations/local/forgotPassword.js.map +1 -0
- package/dist/auth/operations/local/index.d.ts +6 -5
- package/dist/auth/operations/local/index.d.ts.map +1 -1
- package/dist/auth/operations/local/index.js +14 -27
- package/dist/auth/operations/local/index.js.map +1 -0
- package/dist/auth/operations/local/login.d.ts +5 -5
- package/dist/auth/operations/local/login.d.ts.map +1 -1
- package/dist/auth/operations/local/login.js +8 -18
- package/dist/auth/operations/local/login.js.map +1 -0
- package/dist/auth/operations/local/resetPassword.d.ts +5 -5
- package/dist/auth/operations/local/resetPassword.d.ts.map +1 -1
- package/dist/auth/operations/local/resetPassword.js +8 -18
- package/dist/auth/operations/local/resetPassword.js.map +1 -0
- package/dist/auth/operations/local/unlock.d.ts +4 -4
- package/dist/auth/operations/local/unlock.d.ts.map +1 -1
- package/dist/auth/operations/local/unlock.js +8 -18
- package/dist/auth/operations/local/unlock.js.map +1 -0
- package/dist/auth/operations/local/verifyEmail.d.ts +4 -4
- package/dist/auth/operations/local/verifyEmail.d.ts.map +1 -1
- package/dist/auth/operations/local/verifyEmail.js +8 -18
- package/dist/auth/operations/local/verifyEmail.js.map +1 -0
- package/dist/auth/operations/login.d.ts +6 -10
- package/dist/auth/operations/login.d.ts.map +1 -1
- package/dist/auth/operations/login.js +52 -50
- package/dist/auth/operations/login.js.map +1 -0
- package/dist/auth/operations/logout.d.ts +3 -3
- package/dist/auth/operations/logout.d.ts.map +1 -1
- package/dist/auth/operations/logout.js +6 -21
- package/dist/auth/operations/logout.js.map +1 -0
- package/dist/auth/operations/me.d.ts +7 -7
- package/dist/auth/operations/me.d.ts.map +1 -1
- package/dist/auth/operations/me.js +4 -19
- package/dist/auth/operations/me.js.map +1 -0
- package/dist/auth/operations/refresh.d.ts +4 -4
- package/dist/auth/operations/refresh.d.ts.map +1 -1
- package/dist/auth/operations/refresh.js +19 -34
- package/dist/auth/operations/refresh.js.map +1 -0
- package/dist/auth/operations/registerFirstUser.d.ts +5 -13
- package/dist/auth/operations/registerFirstUser.d.ts.map +1 -1
- package/dist/auth/operations/registerFirstUser.js +11 -21
- package/dist/auth/operations/registerFirstUser.js.map +1 -0
- package/dist/auth/operations/resetPassword.d.ts +3 -3
- package/dist/auth/operations/resetPassword.d.ts.map +1 -1
- package/dist/auth/operations/resetPassword.js +21 -43
- package/dist/auth/operations/resetPassword.js.map +1 -0
- package/dist/auth/operations/unlock.d.ts +3 -3
- package/dist/auth/operations/unlock.d.ts.map +1 -1
- package/dist/auth/operations/unlock.js +17 -39
- package/dist/auth/operations/unlock.js.map +1 -0
- package/dist/auth/operations/verifyEmail.d.ts +3 -3
- package/dist/auth/operations/verifyEmail.d.ts.map +1 -1
- package/dist/auth/operations/verifyEmail.js +14 -37
- package/dist/auth/operations/verifyEmail.js.map +1 -0
- package/dist/auth/sendVerificationEmail.d.ts +9 -10
- package/dist/auth/sendVerificationEmail.d.ts.map +1 -1
- package/dist/auth/sendVerificationEmail.js +9 -19
- package/dist/auth/sendVerificationEmail.js.map +1 -0
- package/dist/auth/strategies/apiKey.d.ts +2 -2
- package/dist/auth/strategies/apiKey.d.ts.map +1 -1
- package/dist/auth/strategies/apiKey.js +6 -19
- package/dist/auth/strategies/apiKey.js.map +1 -0
- package/dist/auth/strategies/jwt.d.ts +1 -1
- package/dist/auth/strategies/jwt.d.ts.map +1 -1
- package/dist/auth/strategies/jwt.js +6 -21
- package/dist/auth/strategies/jwt.js.map +1 -0
- package/dist/auth/strategies/local/authenticate.d.ts +1 -1
- package/dist/auth/strategies/local/authenticate.d.ts.map +1 -1
- package/dist/auth/strategies/local/authenticate.js +6 -21
- package/dist/auth/strategies/local/authenticate.js.map +1 -0
- package/dist/auth/strategies/local/generatePasswordSaltHash.d.ts.map +1 -1
- package/dist/auth/strategies/local/generatePasswordSaltHash.js +7 -22
- package/dist/auth/strategies/local/generatePasswordSaltHash.js.map +1 -0
- package/dist/auth/strategies/local/incrementLoginAttempts.d.ts +4 -4
- package/dist/auth/strategies/local/incrementLoginAttempts.d.ts.map +1 -1
- package/dist/auth/strategies/local/incrementLoginAttempts.js +4 -12
- package/dist/auth/strategies/local/incrementLoginAttempts.js.map +1 -0
- package/dist/auth/strategies/local/register.d.ts +4 -4
- package/dist/auth/strategies/local/register.d.ts.map +1 -1
- package/dist/auth/strategies/local/register.js +9 -16
- package/dist/auth/strategies/local/register.js.map +1 -0
- package/dist/auth/strategies/local/resetLoginAttempts.d.ts +4 -4
- package/dist/auth/strategies/local/resetLoginAttempts.d.ts.map +1 -1
- package/dist/auth/strategies/local/resetLoginAttempts.js +3 -12
- package/dist/auth/strategies/local/resetLoginAttempts.js.map +1 -0
- package/dist/auth/types.d.ts +12 -7
- package/dist/auth/types.d.ts.map +1 -1
- package/dist/auth/types.js +2 -12
- package/dist/auth/types.js.map +1 -0
- package/dist/bin/generateTypes.d.ts +1 -1
- package/dist/bin/generateTypes.d.ts.map +1 -1
- package/dist/bin/generateTypes.js +10 -34
- package/dist/bin/generateTypes.js.map +1 -0
- package/dist/bin/index.d.ts +1 -1
- package/dist/bin/index.d.ts.map +1 -1
- package/dist/bin/index.js +25 -69
- package/dist/bin/index.js.map +1 -0
- package/dist/bin/loadEnv.js +13 -26
- package/dist/bin/loadEnv.js.map +1 -0
- package/dist/bin/loader/clientExtensions.d.ts +2 -0
- package/dist/bin/loader/clientExtensions.d.ts.map +1 -0
- package/dist/bin/loader/clientExtensions.js +13 -0
- package/dist/bin/loader/clientExtensions.js.map +1 -0
- package/dist/bin/loader/compile.d.ts +5 -0
- package/dist/bin/loader/compile.d.ts.map +1 -0
- package/dist/bin/loader/compile.js +27 -0
- package/dist/bin/loader/compile.js.map +1 -0
- package/dist/bin/loader/index.d.ts +34 -0
- package/dist/bin/loader/index.d.ts.map +1 -0
- package/dist/bin/loader/index.js +118 -0
- package/dist/bin/loader/index.js.map +1 -0
- package/dist/bin/loader/read-default-tsconfig.d.ts +4 -0
- package/dist/bin/loader/read-default-tsconfig.d.ts.map +1 -0
- package/dist/bin/loader/read-default-tsconfig.js +92 -0
- package/dist/bin/loader/read-default-tsconfig.js.map +1 -0
- package/dist/bin/loader/resolveOriginalPath.d.ts +10 -0
- package/dist/bin/loader/resolveOriginalPath.d.ts.map +1 -0
- package/dist/bin/loader/resolveOriginalPath.js +32 -0
- package/dist/bin/loader/resolveOriginalPath.js.map +1 -0
- package/dist/bin/migrate.d.ts +7 -1
- package/dist/bin/migrate.d.ts.map +1 -1
- package/dist/bin/migrate.js +12 -37
- package/dist/bin/migrate.js.map +1 -0
- package/dist/collections/config/build.d.ts +1 -1
- package/dist/collections/config/build.d.ts.map +1 -1
- package/dist/collections/config/build.js +2 -12
- package/dist/collections/config/build.js.map +1 -0
- package/dist/collections/config/client.d.ts +326 -0
- package/dist/collections/config/client.d.ts.map +1 -0
- package/dist/collections/config/client.js +74 -0
- package/dist/collections/config/client.js.map +1 -0
- package/dist/collections/config/defaults.d.ts +6 -5
- package/dist/collections/config/defaults.d.ts.map +1 -1
- package/dist/collections/config/defaults.js +10 -32
- package/dist/collections/config/defaults.js.map +1 -0
- package/dist/collections/config/sanitize.d.ts +3 -4
- package/dist/collections/config/sanitize.d.ts.map +1 -1
- package/dist/collections/config/sanitize.js +42 -55
- package/dist/collections/config/sanitize.js.map +1 -0
- package/dist/collections/config/schema.d.ts.map +1 -1
- package/dist/collections/config/schema.js +155 -176
- package/dist/collections/config/schema.js.map +1 -0
- package/dist/collections/config/types.d.ts +54 -71
- package/dist/collections/config/types.d.ts.map +1 -1
- package/dist/collections/config/types.js +2 -5
- package/dist/collections/config/types.js.map +1 -0
- package/dist/collections/dataloader.d.ts +16 -2
- package/dist/collections/dataloader.d.ts.map +1 -1
- package/dist/collections/dataloader.js +35 -37
- package/dist/collections/dataloader.js.map +1 -0
- package/dist/collections/operations/count.d.ts +13 -0
- package/dist/collections/operations/count.d.ts.map +1 -0
- package/dist/collections/operations/count.js +75 -0
- package/dist/collections/operations/count.js.map +1 -0
- package/dist/collections/operations/create.d.ts +5 -13
- package/dist/collections/operations/create.d.ts.map +1 -1
- package/dist/collections/operations/create.js +40 -58
- package/dist/collections/operations/create.js.map +1 -0
- package/dist/collections/operations/delete.d.ts +6 -15
- package/dist/collections/operations/delete.d.ts.map +1 -1
- package/dist/collections/operations/delete.js +28 -42
- package/dist/collections/operations/delete.js.map +1 -0
- package/dist/collections/operations/deleteByID.d.ts +3 -4
- package/dist/collections/operations/deleteByID.d.ts.map +1 -1
- package/dist/collections/operations/deleteByID.js +28 -42
- package/dist/collections/operations/deleteByID.js.map +1 -0
- package/dist/collections/operations/docAccess.d.ts +4 -4
- package/dist/collections/operations/docAccess.d.ts.map +1 -1
- package/dist/collections/operations/docAccess.js +12 -22
- package/dist/collections/operations/docAccess.js.map +1 -0
- package/dist/collections/operations/duplicate.d.ts +14 -0
- package/dist/collections/operations/duplicate.d.ts.map +1 -0
- package/dist/collections/operations/duplicate.js +259 -0
- package/dist/collections/operations/duplicate.js.map +1 -0
- package/dist/collections/operations/find.d.ts +4 -5
- package/dist/collections/operations/find.d.ts.map +1 -1
- package/dist/collections/operations/find.js +26 -40
- package/dist/collections/operations/find.js.map +1 -0
- package/dist/collections/operations/findByID.d.ts +3 -3
- package/dist/collections/operations/findByID.d.ts.map +1 -1
- package/dist/collections/operations/findByID.js +22 -36
- package/dist/collections/operations/findByID.js.map +1 -0
- package/dist/collections/operations/findVersionByID.d.ts +4 -4
- package/dist/collections/operations/findVersionByID.d.ts.map +1 -1
- package/dist/collections/operations/findVersionByID.js +20 -34
- package/dist/collections/operations/findVersionByID.js.map +1 -0
- package/dist/collections/operations/findVersions.d.ts +5 -6
- package/dist/collections/operations/findVersions.d.ts.map +1 -1
- package/dist/collections/operations/findVersions.js +21 -35
- package/dist/collections/operations/findVersions.js.map +1 -0
- package/dist/collections/operations/local/count.d.ts +20 -0
- package/dist/collections/operations/local/count.d.ts.map +1 -0
- package/dist/collections/operations/local/count.js +19 -0
- package/dist/collections/operations/local/count.js.map +1 -0
- package/dist/collections/operations/local/create.d.ts +7 -8
- package/dist/collections/operations/local/create.d.ts.map +1 -1
- package/dist/collections/operations/local/create.js +11 -25
- package/dist/collections/operations/local/create.js.map +1 -0
- package/dist/collections/operations/local/delete.d.ts +8 -8
- package/dist/collections/operations/local/delete.d.ts.map +1 -1
- package/dist/collections/operations/local/delete.js +10 -20
- package/dist/collections/operations/local/delete.js.map +1 -0
- package/dist/collections/operations/local/duplicate.d.ts +21 -0
- package/dist/collections/operations/local/duplicate.d.ts.map +1 -0
- package/dist/collections/operations/local/duplicate.js +25 -0
- package/dist/collections/operations/local/duplicate.js.map +1 -0
- package/dist/collections/operations/local/find.d.ts +6 -7
- package/dist/collections/operations/local/find.d.ts.map +1 -1
- package/dist/collections/operations/local/find.js +8 -18
- package/dist/collections/operations/local/find.js.map +1 -0
- package/dist/collections/operations/local/findByID.d.ts +5 -7
- package/dist/collections/operations/local/findByID.d.ts.map +1 -1
- package/dist/collections/operations/local/findByID.js +8 -18
- package/dist/collections/operations/local/findByID.js.map +1 -0
- package/dist/collections/operations/local/findVersionByID.d.ts +6 -7
- package/dist/collections/operations/local/findVersionByID.d.ts.map +1 -1
- package/dist/collections/operations/local/findVersionByID.js +8 -18
- package/dist/collections/operations/local/findVersionByID.js.map +1 -0
- package/dist/collections/operations/local/findVersions.d.ts +7 -8
- package/dist/collections/operations/local/findVersions.d.ts.map +1 -1
- package/dist/collections/operations/local/findVersions.js +8 -18
- package/dist/collections/operations/local/findVersions.js.map +1 -0
- package/dist/collections/operations/local/index.d.ts +18 -13
- package/dist/collections/operations/local/index.d.ts.map +1 -1
- package/dist/collections/operations/local/index.js +24 -35
- package/dist/collections/operations/local/index.js.map +1 -0
- package/dist/collections/operations/local/restoreVersion.d.ts +5 -6
- package/dist/collections/operations/local/restoreVersion.d.ts.map +1 -1
- package/dist/collections/operations/local/restoreVersion.js +8 -18
- package/dist/collections/operations/local/restoreVersion.js.map +1 -0
- package/dist/collections/operations/local/update.d.ts +7 -8
- package/dist/collections/operations/local/update.d.ts.map +1 -1
- package/dist/collections/operations/local/update.js +12 -27
- package/dist/collections/operations/local/update.js.map +1 -0
- package/dist/collections/operations/restoreVersion.d.ts +3 -3
- package/dist/collections/operations/restoreVersion.d.ts.map +1 -1
- package/dist/collections/operations/restoreVersion.js +27 -41
- package/dist/collections/operations/restoreVersion.js.map +1 -0
- package/dist/collections/operations/update.d.ts +6 -11
- package/dist/collections/operations/update.d.ts.map +1 -1
- package/dist/collections/operations/update.js +48 -61
- package/dist/collections/operations/update.js.map +1 -0
- package/dist/collections/operations/updateByID.d.ts +5 -13
- package/dist/collections/operations/updateByID.d.ts.map +1 -1
- package/dist/collections/operations/updateByID.js +48 -61
- package/dist/collections/operations/updateByID.js.map +1 -0
- package/dist/collections/operations/utils.d.ts +20 -14
- package/dist/collections/operations/utils.d.ts.map +1 -1
- package/dist/collections/operations/utils.js +3 -12
- package/dist/collections/operations/utils.js.map +1 -0
- package/dist/config/build.d.ts +1 -1
- package/dist/config/build.d.ts.map +1 -1
- package/dist/config/build.js +9 -16
- package/dist/config/build.js.map +1 -0
- package/dist/config/client.d.ts +19 -0
- package/dist/config/client.d.ts.map +1 -0
- package/dist/config/client.js +67 -0
- package/dist/config/client.js.map +1 -0
- package/dist/config/defaults.d.ts +1 -1
- package/dist/config/defaults.d.ts.map +1 -1
- package/dist/config/defaults.js +5 -21
- package/dist/config/defaults.js.map +1 -0
- package/dist/config/find.d.ts +1 -2
- package/dist/config/find.d.ts.map +1 -1
- package/dist/config/find.js +38 -43
- package/dist/config/find.js.map +1 -0
- package/dist/config/sanitize.d.ts +2 -2
- package/dist/config/sanitize.d.ts.map +1 -1
- package/dist/config/sanitize.js +59 -43
- package/dist/config/sanitize.js.map +1 -0
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js +114 -133
- package/dist/config/schema.js.map +1 -0
- package/dist/config/shared/adminViewSchema.js +9 -24
- package/dist/config/shared/adminViewSchema.js.map +1 -0
- package/dist/config/shared/componentSchema.js +21 -50
- package/dist/config/shared/componentSchema.js.map +1 -0
- package/dist/config/types.d.ts +93 -103
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js +4 -25
- package/dist/config/types.js.map +1 -0
- package/dist/config/validate.d.ts +2 -3
- package/dist/config/validate.d.ts.map +1 -1
- package/dist/config/validate.js +17 -74
- package/dist/config/validate.js.map +1 -0
- package/dist/database/combineQueries.d.ts +1 -1
- package/dist/database/combineQueries.d.ts.map +1 -1
- package/dist/database/combineQueries.js +4 -14
- package/dist/database/combineQueries.js.map +1 -0
- package/dist/database/createDatabaseAdapter.d.ts +1 -1
- package/dist/database/createDatabaseAdapter.d.ts.map +1 -1
- package/dist/database/createDatabaseAdapter.js +14 -24
- package/dist/database/createDatabaseAdapter.js.map +1 -0
- package/dist/database/flattenWhereToOperators.d.ts +1 -1
- package/dist/database/flattenWhereToOperators.d.ts.map +1 -1
- package/dist/database/flattenWhereToOperators.js +2 -12
- package/dist/database/flattenWhereToOperators.js.map +1 -0
- package/dist/database/getLocalizedPaths.d.ts +3 -3
- package/dist/database/getLocalizedPaths.d.ts.map +1 -1
- package/dist/database/getLocalizedPaths.js +7 -22
- package/dist/database/getLocalizedPaths.js.map +1 -0
- package/dist/database/migrations/createMigration.d.ts +1 -1
- package/dist/database/migrations/createMigration.d.ts.map +1 -1
- package/dist/database/migrations/createMigration.js +7 -22
- package/dist/database/migrations/createMigration.js.map +1 -0
- package/dist/database/migrations/getMigrations.d.ts +2 -2
- package/dist/database/migrations/getMigrations.d.ts.map +1 -1
- package/dist/database/migrations/getMigrations.js +4 -12
- package/dist/database/migrations/getMigrations.js.map +1 -0
- package/dist/database/migrations/migrate.d.ts +1 -1
- package/dist/database/migrations/migrate.d.ts.map +1 -1
- package/dist/database/migrations/migrate.js +12 -22
- package/dist/database/migrations/migrate.js.map +1 -0
- package/dist/database/migrations/migrateDown.d.ts +1 -1
- package/dist/database/migrations/migrateDown.d.ts.map +1 -1
- package/dist/database/migrations/migrateDown.js +12 -22
- package/dist/database/migrations/migrateDown.js.map +1 -0
- package/dist/database/migrations/migrateRefresh.d.ts +1 -1
- package/dist/database/migrations/migrateRefresh.d.ts.map +1 -1
- package/dist/database/migrations/migrateRefresh.js +16 -24
- package/dist/database/migrations/migrateRefresh.js.map +1 -0
- package/dist/database/migrations/migrateReset.d.ts +1 -1
- package/dist/database/migrations/migrateReset.d.ts.map +1 -1
- package/dist/database/migrations/migrateReset.js +12 -22
- package/dist/database/migrations/migrateReset.js.map +1 -0
- package/dist/database/migrations/migrateStatus.d.ts +1 -1
- package/dist/database/migrations/migrateStatus.d.ts.map +1 -1
- package/dist/database/migrations/migrateStatus.js +8 -18
- package/dist/database/migrations/migrateStatus.js.map +1 -0
- package/dist/database/migrations/migrationTemplate.js +2 -12
- package/dist/database/migrations/migrationTemplate.js.map +1 -0
- package/dist/database/migrations/migrationsCollection.d.ts +1 -1
- package/dist/database/migrations/migrationsCollection.d.ts.map +1 -1
- package/dist/database/migrations/migrationsCollection.js +2 -12
- package/dist/database/migrations/migrationsCollection.js.map +1 -0
- package/dist/database/migrations/readMigrationFiles.d.ts +2 -2
- package/dist/database/migrations/readMigrationFiles.d.ts.map +1 -1
- package/dist/database/migrations/readMigrationFiles.js +18 -25
- package/dist/database/migrations/readMigrationFiles.js.map +1 -0
- package/dist/database/queryValidation/types.d.ts +2 -2
- package/dist/database/queryValidation/types.d.ts.map +1 -1
- package/dist/database/queryValidation/types.js +2 -5
- package/dist/database/queryValidation/types.js.map +1 -0
- package/dist/database/queryValidation/validateQueryPaths.d.ts +6 -6
- package/dist/database/queryValidation/validateQueryPaths.d.ts.map +1 -1
- package/dist/database/queryValidation/validateQueryPaths.js +13 -28
- package/dist/database/queryValidation/validateQueryPaths.js.map +1 -0
- package/dist/database/queryValidation/validateSearchParams.d.ts +6 -6
- package/dist/database/queryValidation/validateSearchParams.d.ts.map +1 -1
- package/dist/database/queryValidation/validateSearchParams.js +18 -25
- package/dist/database/queryValidation/validateSearchParams.js.map +1 -0
- package/dist/database/types.d.ts +44 -28
- package/dist/database/types.d.ts.map +1 -1
- package/dist/database/types.js +2 -5
- package/dist/database/types.js.map +1 -0
- package/dist/email/consoleEmailAdapter.d.ts +3 -0
- package/dist/email/consoleEmailAdapter.d.ts.map +1 -0
- package/dist/email/consoleEmailAdapter.js +17 -0
- package/dist/email/consoleEmailAdapter.js.map +1 -0
- package/dist/email/defaults.d.ts +2 -2
- package/dist/email/defaults.d.ts.map +1 -1
- package/dist/email/defaults.js +4 -14
- package/dist/email/defaults.js.map +1 -0
- package/dist/email/getStringifiedToAddress.d.ts +3 -0
- package/dist/email/getStringifiedToAddress.d.ts.map +1 -0
- package/dist/email/getStringifiedToAddress.js +20 -0
- package/dist/email/getStringifiedToAddress.js.map +1 -0
- package/dist/email/sendEmail.d.ts +3 -2
- package/dist/email/sendEmail.d.ts.map +1 -1
- package/dist/email/sendEmail.js +9 -15
- package/dist/email/sendEmail.js.map +1 -0
- package/dist/email/types.d.ts +26 -18
- package/dist/email/types.d.ts.map +1 -1
- package/dist/email/types.js +6 -5
- package/dist/email/types.js.map +1 -0
- package/dist/errors/APIError.d.ts +2 -2
- package/dist/errors/APIError.d.ts.map +1 -1
- package/dist/errors/APIError.js +4 -20
- package/dist/errors/APIError.js.map +1 -0
- package/dist/errors/AuthenticationError.d.ts +2 -3
- package/dist/errors/AuthenticationError.d.ts.map +1 -1
- package/dist/errors/AuthenticationError.js +6 -22
- package/dist/errors/AuthenticationError.js.map +1 -0
- package/dist/errors/DuplicateCollection.d.ts +2 -3
- package/dist/errors/DuplicateCollection.d.ts.map +1 -1
- package/dist/errors/DuplicateCollection.js +3 -19
- package/dist/errors/DuplicateCollection.js.map +1 -0
- package/dist/errors/DuplicateFieldName.d.ts +2 -3
- package/dist/errors/DuplicateFieldName.d.ts.map +1 -1
- package/dist/errors/DuplicateFieldName.js +3 -19
- package/dist/errors/DuplicateFieldName.js.map +1 -0
- package/dist/errors/DuplicateGlobal.d.ts +3 -4
- package/dist/errors/DuplicateGlobal.d.ts.map +1 -1
- package/dist/errors/DuplicateGlobal.js +3 -19
- package/dist/errors/DuplicateGlobal.js.map +1 -0
- package/dist/errors/ErrorDeletingFile.d.ts +2 -3
- package/dist/errors/ErrorDeletingFile.d.ts.map +1 -1
- package/dist/errors/ErrorDeletingFile.js +6 -22
- package/dist/errors/ErrorDeletingFile.js.map +1 -0
- package/dist/errors/FileRetrievalError.d.ts +6 -0
- package/dist/errors/FileRetrievalError.d.ts.map +1 -0
- package/dist/errors/FileRetrievalError.js +13 -0
- package/dist/errors/FileRetrievalError.js.map +1 -0
- package/dist/errors/FileUploadError.d.ts +2 -3
- package/dist/errors/FileUploadError.d.ts.map +1 -1
- package/dist/errors/FileUploadError.js +6 -22
- package/dist/errors/FileUploadError.js.map +1 -0
- package/dist/errors/Forbidden.d.ts +2 -3
- package/dist/errors/Forbidden.d.ts.map +1 -1
- package/dist/errors/Forbidden.js +6 -22
- package/dist/errors/Forbidden.js.map +1 -0
- package/dist/errors/InvalidConfiguration.d.ts +2 -3
- package/dist/errors/InvalidConfiguration.d.ts.map +1 -1
- package/dist/errors/InvalidConfiguration.js +5 -21
- package/dist/errors/InvalidConfiguration.js.map +1 -0
- package/dist/errors/InvalidFieldName.d.ts +3 -4
- package/dist/errors/InvalidFieldName.d.ts.map +1 -1
- package/dist/errors/InvalidFieldName.js +3 -19
- package/dist/errors/InvalidFieldName.js.map +1 -0
- package/dist/errors/InvalidFieldRelationship.d.ts +3 -4
- package/dist/errors/InvalidFieldRelationship.d.ts.map +1 -1
- package/dist/errors/InvalidFieldRelationship.js +3 -19
- package/dist/errors/InvalidFieldRelationship.js.map +1 -0
- package/dist/errors/InvalidSchema.d.ts +2 -3
- package/dist/errors/InvalidSchema.d.ts.map +1 -1
- package/dist/errors/InvalidSchema.js +5 -21
- package/dist/errors/InvalidSchema.js.map +1 -0
- package/dist/errors/LockedAuth.d.ts +2 -3
- package/dist/errors/LockedAuth.d.ts.map +1 -1
- package/dist/errors/LockedAuth.js +6 -22
- package/dist/errors/LockedAuth.js.map +1 -0
- package/dist/errors/MissingCollectionLabel.d.ts +2 -3
- package/dist/errors/MissingCollectionLabel.d.ts.map +1 -1
- package/dist/errors/MissingCollectionLabel.js +3 -19
- package/dist/errors/MissingCollectionLabel.js.map +1 -0
- package/dist/errors/MissingEditorProp.d.ts +6 -0
- package/dist/errors/MissingEditorProp.d.ts.map +1 -0
- package/dist/errors/MissingEditorProp.js +9 -0
- package/dist/errors/MissingEditorProp.js.map +1 -0
- package/dist/errors/MissingFieldInputOptions.d.ts +3 -4
- package/dist/errors/MissingFieldInputOptions.d.ts.map +1 -1
- package/dist/errors/MissingFieldInputOptions.js +3 -19
- package/dist/errors/MissingFieldInputOptions.js.map +1 -0
- package/dist/errors/MissingFieldType.d.ts +3 -4
- package/dist/errors/MissingFieldType.d.ts.map +1 -1
- package/dist/errors/MissingFieldType.js +5 -21
- package/dist/errors/MissingFieldType.js.map +1 -0
- package/dist/errors/MissingFile.d.ts +2 -3
- package/dist/errors/MissingFile.d.ts.map +1 -1
- package/dist/errors/MissingFile.js +6 -22
- package/dist/errors/MissingFile.js.map +1 -0
- package/dist/errors/NotFound.d.ts +2 -3
- package/dist/errors/NotFound.d.ts.map +1 -1
- package/dist/errors/NotFound.js +6 -22
- package/dist/errors/NotFound.js.map +1 -0
- package/dist/errors/QueryError.d.ts +2 -3
- package/dist/errors/QueryError.d.ts.map +1 -1
- package/dist/errors/QueryError.js +5 -21
- package/dist/errors/QueryError.js.map +1 -0
- package/dist/errors/TimestampsRequired.d.ts +3 -4
- package/dist/errors/TimestampsRequired.d.ts.map +1 -1
- package/dist/errors/TimestampsRequired.js +3 -19
- package/dist/errors/TimestampsRequired.js.map +1 -0
- package/dist/errors/UnathorizedError.d.ts +2 -3
- package/dist/errors/UnathorizedError.d.ts.map +1 -1
- package/dist/errors/UnathorizedError.js +6 -22
- package/dist/errors/UnathorizedError.js.map +1 -0
- package/dist/errors/ValidationError.d.ts +2 -3
- package/dist/errors/ValidationError.d.ts.map +1 -1
- package/dist/errors/ValidationError.js +7 -23
- package/dist/errors/ValidationError.js.map +1 -0
- package/dist/errors/index.d.ts +20 -19
- package/dist/errors/index.d.ts.map +1 -1
- package/dist/errors/index.js +21 -94
- package/dist/errors/index.js.map +1 -0
- package/dist/errors/types.d.ts +1 -1
- package/dist/errors/types.d.ts.map +1 -1
- package/dist/errors/types.js +2 -19
- package/dist/errors/types.js.map +1 -0
- package/dist/exports/auth.d.ts +6 -5
- package/dist/exports/auth.d.ts.map +1 -1
- package/dist/exports/auth.js +6 -44
- package/dist/exports/auth.js.map +1 -0
- package/dist/exports/components/utilities.js +1 -2
- package/dist/exports/components/utilities.js.map +1 -0
- package/dist/exports/config.d.ts +13 -10
- package/dist/exports/config.d.ts.map +1 -1
- package/dist/exports/config.js +13 -59
- package/dist/exports/config.js.map +1 -0
- package/dist/exports/database.d.ts +22 -22
- package/dist/exports/database.d.ts.map +1 -1
- package/dist/exports/database.js +21 -108
- package/dist/exports/database.js.map +1 -0
- package/dist/exports/errors.d.ts +1 -1
- package/dist/exports/errors.d.ts.map +1 -1
- package/dist/exports/errors.js +2 -68
- package/dist/exports/errors.js.map +1 -0
- package/dist/exports/fields/index.d.ts +2 -2
- package/dist/exports/fields/index.d.ts.map +1 -1
- package/dist/exports/fields/index.js +3 -26
- package/dist/exports/fields/index.js.map +1 -0
- package/dist/exports/fields/validations.d.ts +1 -1
- package/dist/exports/fields/validations.d.ts.map +1 -1
- package/dist/exports/fields/validations.js +2 -19
- package/dist/exports/fields/validations.js.map +1 -0
- package/dist/exports/i18n/ar.d.ts +2 -0
- package/dist/exports/i18n/ar.d.ts.map +1 -0
- package/dist/exports/i18n/ar.js +3 -0
- package/dist/exports/i18n/ar.js.map +1 -0
- package/dist/exports/i18n/az.d.ts +2 -0
- package/dist/exports/i18n/az.d.ts.map +1 -0
- package/dist/exports/i18n/az.js +3 -0
- package/dist/exports/i18n/az.js.map +1 -0
- package/dist/exports/i18n/bg.d.ts +2 -0
- package/dist/exports/i18n/bg.d.ts.map +1 -0
- package/dist/exports/i18n/bg.js +3 -0
- package/dist/exports/i18n/bg.js.map +1 -0
- package/dist/exports/i18n/cs.d.ts +2 -0
- package/dist/exports/i18n/cs.d.ts.map +1 -0
- package/dist/exports/i18n/cs.js +3 -0
- package/dist/exports/i18n/cs.js.map +1 -0
- package/dist/exports/i18n/de.d.ts +2 -0
- package/dist/exports/i18n/de.d.ts.map +1 -0
- package/dist/exports/i18n/de.js +3 -0
- package/dist/exports/i18n/de.js.map +1 -0
- package/dist/exports/i18n/en.d.ts +2 -0
- package/dist/exports/i18n/en.d.ts.map +1 -0
- package/dist/exports/i18n/en.js +3 -0
- package/dist/exports/i18n/en.js.map +1 -0
- package/dist/exports/i18n/es.d.ts +2 -0
- package/dist/exports/i18n/es.d.ts.map +1 -0
- package/dist/exports/i18n/es.js +3 -0
- package/dist/exports/i18n/es.js.map +1 -0
- package/dist/exports/i18n/fa.d.ts +2 -0
- package/dist/exports/i18n/fa.d.ts.map +1 -0
- package/dist/exports/i18n/fa.js +3 -0
- package/dist/exports/i18n/fa.js.map +1 -0
- package/dist/exports/i18n/fr.d.ts +2 -0
- package/dist/exports/i18n/fr.d.ts.map +1 -0
- package/dist/exports/i18n/fr.js +3 -0
- package/dist/exports/i18n/fr.js.map +1 -0
- package/dist/exports/i18n/hr.d.ts +2 -0
- package/dist/exports/i18n/hr.d.ts.map +1 -0
- package/dist/exports/i18n/hr.js +3 -0
- package/dist/exports/i18n/hr.js.map +1 -0
- package/dist/exports/i18n/hu.d.ts +2 -0
- package/dist/exports/i18n/hu.d.ts.map +1 -0
- package/dist/exports/i18n/hu.js +3 -0
- package/dist/exports/i18n/hu.js.map +1 -0
- package/dist/exports/i18n/it.d.ts +2 -0
- package/dist/exports/i18n/it.d.ts.map +1 -0
- package/dist/exports/i18n/it.js +3 -0
- package/dist/exports/i18n/it.js.map +1 -0
- package/dist/exports/i18n/ja.d.ts +2 -0
- package/dist/exports/i18n/ja.d.ts.map +1 -0
- package/dist/exports/i18n/ja.js +3 -0
- package/dist/exports/i18n/ja.js.map +1 -0
- package/dist/exports/i18n/ko.d.ts +2 -0
- package/dist/exports/i18n/ko.d.ts.map +1 -0
- package/dist/exports/i18n/ko.js +3 -0
- package/dist/exports/i18n/ko.js.map +1 -0
- package/dist/exports/i18n/my.d.ts +2 -0
- package/dist/exports/i18n/my.d.ts.map +1 -0
- package/dist/exports/i18n/my.js +3 -0
- package/dist/exports/i18n/my.js.map +1 -0
- package/dist/exports/i18n/nb.d.ts +2 -0
- package/dist/exports/i18n/nb.d.ts.map +1 -0
- package/dist/exports/i18n/nb.js +3 -0
- package/dist/exports/i18n/nb.js.map +1 -0
- package/dist/exports/i18n/nl.d.ts +2 -0
- package/dist/exports/i18n/nl.d.ts.map +1 -0
- package/dist/exports/i18n/nl.js +3 -0
- package/dist/exports/i18n/nl.js.map +1 -0
- package/dist/exports/i18n/pl.d.ts +2 -0
- package/dist/exports/i18n/pl.d.ts.map +1 -0
- package/dist/exports/i18n/pl.js +3 -0
- package/dist/exports/i18n/pl.js.map +1 -0
- package/dist/exports/i18n/pt.d.ts +2 -0
- package/dist/exports/i18n/pt.d.ts.map +1 -0
- package/dist/exports/i18n/pt.js +3 -0
- package/dist/exports/i18n/pt.js.map +1 -0
- package/dist/exports/i18n/ro.d.ts +2 -0
- package/dist/exports/i18n/ro.d.ts.map +1 -0
- package/dist/exports/i18n/ro.js +3 -0
- package/dist/exports/i18n/ro.js.map +1 -0
- package/dist/exports/i18n/rs.d.ts +2 -0
- package/dist/exports/i18n/rs.d.ts.map +1 -0
- package/dist/exports/i18n/rs.js +3 -0
- package/dist/exports/i18n/rs.js.map +1 -0
- package/dist/exports/i18n/rsLatin.d.ts +2 -0
- package/dist/exports/i18n/rsLatin.d.ts.map +1 -0
- package/dist/exports/i18n/rsLatin.js +3 -0
- package/dist/exports/i18n/rsLatin.js.map +1 -0
- package/dist/exports/i18n/ru.d.ts +2 -0
- package/dist/exports/i18n/ru.d.ts.map +1 -0
- package/dist/exports/i18n/ru.js +3 -0
- package/dist/exports/i18n/ru.js.map +1 -0
- package/dist/exports/i18n/sv.d.ts +2 -0
- package/dist/exports/i18n/sv.d.ts.map +1 -0
- package/dist/exports/i18n/sv.js +3 -0
- package/dist/exports/i18n/sv.js.map +1 -0
- package/dist/exports/i18n/th.d.ts +2 -0
- package/dist/exports/i18n/th.d.ts.map +1 -0
- package/dist/exports/i18n/th.js +3 -0
- package/dist/exports/i18n/th.js.map +1 -0
- package/dist/exports/i18n/tr.d.ts +2 -0
- package/dist/exports/i18n/tr.d.ts.map +1 -0
- package/dist/exports/i18n/tr.js +3 -0
- package/dist/exports/i18n/tr.js.map +1 -0
- package/dist/exports/i18n/uk.d.ts +2 -0
- package/dist/exports/i18n/uk.d.ts.map +1 -0
- package/dist/exports/i18n/uk.js +3 -0
- package/dist/exports/i18n/uk.js.map +1 -0
- package/dist/exports/i18n/vi.d.ts +2 -0
- package/dist/exports/i18n/vi.d.ts.map +1 -0
- package/dist/exports/i18n/vi.js +3 -0
- package/dist/exports/i18n/vi.js.map +1 -0
- package/dist/exports/i18n/zh.d.ts +2 -0
- package/dist/exports/i18n/zh.d.ts.map +1 -0
- package/dist/exports/i18n/zh.js +3 -0
- package/dist/exports/i18n/zh.js.map +1 -0
- package/dist/exports/i18n/zhTw.d.ts +2 -0
- package/dist/exports/i18n/zhTw.d.ts.map +1 -0
- package/dist/exports/i18n/zhTw.js +3 -0
- package/dist/exports/i18n/zhTw.js.map +1 -0
- package/dist/exports/i18n.d.ts +2 -0
- package/dist/exports/i18n.d.ts.map +1 -0
- package/dist/exports/i18n.js +3 -0
- package/dist/exports/i18n.js.map +1 -0
- package/dist/exports/node.d.ts +6 -0
- package/dist/exports/node.d.ts.map +1 -0
- package/dist/exports/node.js +6 -0
- package/dist/exports/node.js.map +1 -0
- package/dist/exports/operations.d.ts +30 -28
- package/dist/exports/operations.d.ts.map +1 -1
- package/dist/exports/operations.js +31 -125
- package/dist/exports/operations.js.map +1 -0
- package/dist/exports/types.d.ts +17 -11
- package/dist/exports/types.d.ts.map +1 -1
- package/dist/exports/types.js +4 -74
- package/dist/exports/types.js.map +1 -0
- package/dist/exports/uploads.d.ts +2 -0
- package/dist/exports/uploads.d.ts.map +1 -0
- package/dist/exports/uploads.js +3 -0
- package/dist/exports/uploads.js.map +1 -0
- package/dist/exports/utilities.d.ts +36 -27
- package/dist/exports/utilities.d.ts.map +1 -1
- package/dist/exports/utilities.js +36 -141
- package/dist/exports/utilities.js.map +1 -0
- package/dist/exports/versions.d.ts +8 -9
- package/dist/exports/versions.d.ts.map +1 -1
- package/dist/exports/versions.js +8 -45
- package/dist/exports/versions.js.map +1 -0
- package/dist/fields/baseFields/baseBlockFields.d.ts +1 -1
- package/dist/fields/baseFields/baseBlockFields.d.ts.map +1 -1
- package/dist/fields/baseFields/baseBlockFields.js +6 -16
- package/dist/fields/baseFields/baseBlockFields.js.map +1 -0
- package/dist/fields/baseFields/baseIDField.d.ts +2 -2
- package/dist/fields/baseFields/baseIDField.d.ts.map +1 -1
- package/dist/fields/baseFields/baseIDField.js +17 -23
- package/dist/fields/baseFields/baseIDField.js.map +1 -0
- package/dist/fields/config/client.d.ts +1315 -0
- package/dist/fields/config/client.d.ts.map +1 -0
- package/dist/fields/config/client.js +80 -0
- package/dist/fields/config/client.js.map +1 -0
- package/dist/fields/config/sanitize.d.ts +14 -3
- package/dist/fields/config/sanitize.d.ts.map +1 -1
- package/dist/fields/config/sanitize.js +92 -68
- package/dist/fields/config/sanitize.js.map +1 -0
- package/dist/fields/config/sanitize.spec.js +77 -87
- package/dist/fields/config/sanitize.spec.js.map +1 -0
- package/dist/fields/config/schema.d.ts.map +1 -1
- package/dist/fields/config/schema.js +355 -431
- package/dist/fields/config/schema.js.map +1 -0
- package/dist/fields/config/types.d.ts +155 -69
- package/dist/fields/config/types.d.ts.map +1 -1
- package/dist/fields/config/types.js +15 -69
- package/dist/fields/config/types.js.map +1 -0
- package/dist/fields/getDefaultValue.d.ts +3 -3
- package/dist/fields/getDefaultValue.d.ts.map +1 -1
- package/dist/fields/getDefaultValue.js +8 -13
- package/dist/fields/getDefaultValue.js.map +1 -0
- package/dist/fields/hooks/afterChange/index.d.ts +8 -4
- package/dist/fields/hooks/afterChange/index.d.ts.map +1 -1
- package/dist/fields/hooks/afterChange/index.js +9 -16
- package/dist/fields/hooks/afterChange/index.js.map +1 -0
- package/dist/fields/hooks/afterChange/promise.d.ts +5 -5
- package/dist/fields/hooks/afterChange/promise.d.ts.map +1 -1
- package/dist/fields/hooks/afterChange/promise.js +14 -22
- package/dist/fields/hooks/afterChange/promise.js.map +1 -0
- package/dist/fields/hooks/afterChange/traverseFields.d.ts +5 -5
- package/dist/fields/hooks/afterChange/traverseFields.d.ts.map +1 -1
- package/dist/fields/hooks/afterChange/traverseFields.js +4 -14
- package/dist/fields/hooks/afterChange/traverseFields.js.map +1 -0
- package/dist/fields/hooks/afterRead/index.d.ts +14 -4
- package/dist/fields/hooks/afterRead/index.d.ts.map +1 -1
- package/dist/fields/hooks/afterRead/index.js +16 -17
- package/dist/fields/hooks/afterRead/index.js.map +1 -0
- package/dist/fields/hooks/afterRead/promise.d.ts +10 -6
- package/dist/fields/hooks/afterRead/promise.d.ts.map +1 -1
- package/dist/fields/hooks/afterRead/promise.js +47 -55
- package/dist/fields/hooks/afterRead/promise.js.map +1 -0
- package/dist/fields/hooks/afterRead/relationshipPopulationPromise.d.ts +5 -4
- package/dist/fields/hooks/afterRead/relationshipPopulationPromise.d.ts.map +1 -1
- package/dist/fields/hooks/afterRead/relationshipPopulationPromise.js +20 -24
- package/dist/fields/hooks/afterRead/relationshipPopulationPromise.js.map +1 -0
- package/dist/fields/hooks/afterRead/traverseFields.d.ts +10 -6
- package/dist/fields/hooks/afterRead/traverseFields.d.ts.map +1 -1
- package/dist/fields/hooks/afterRead/traverseFields.js +5 -14
- package/dist/fields/hooks/afterRead/traverseFields.js.map +1 -0
- package/dist/fields/hooks/beforeChange/beforeDuplicate.d.ts +3 -0
- package/dist/fields/hooks/beforeChange/beforeDuplicate.d.ts.map +1 -0
- package/dist/fields/hooks/beforeChange/beforeDuplicate.js +6 -0
- package/dist/fields/hooks/beforeChange/beforeDuplicate.js.map +1 -0
- package/dist/fields/hooks/beforeChange/cloneDataFromOriginalDoc.js +2 -12
- package/dist/fields/hooks/beforeChange/cloneDataFromOriginalDoc.js.map +1 -0
- package/dist/fields/hooks/beforeChange/getExistingRowDoc.js +2 -12
- package/dist/fields/hooks/beforeChange/getExistingRowDoc.js.map +1 -0
- package/dist/fields/hooks/beforeChange/index.d.ts +15 -6
- package/dist/fields/hooks/beforeChange/index.d.ts.map +1 -1
- package/dist/fields/hooks/beforeChange/index.js +21 -19
- package/dist/fields/hooks/beforeChange/index.js.map +1 -0
- package/dist/fields/hooks/beforeChange/promise.d.ts +8 -8
- package/dist/fields/hooks/beforeChange/promise.d.ts.map +1 -1
- package/dist/fields/hooks/beforeChange/promise.js +74 -55
- package/dist/fields/hooks/beforeChange/promise.js.map +1 -0
- package/dist/fields/hooks/beforeChange/traverseFields.d.ts +28 -8
- package/dist/fields/hooks/beforeChange/traverseFields.d.ts.map +1 -1
- package/dist/fields/hooks/beforeChange/traverseFields.js +12 -14
- package/dist/fields/hooks/beforeChange/traverseFields.js.map +1 -0
- package/dist/fields/hooks/beforeValidate/index.d.ts +13 -4
- package/dist/fields/hooks/beforeValidate/index.d.ts.map +1 -1
- package/dist/fields/hooks/beforeValidate/index.js +13 -16
- package/dist/fields/hooks/beforeValidate/index.js.map +1 -0
- package/dist/fields/hooks/beforeValidate/promise.d.ts +11 -5
- package/dist/fields/hooks/beforeValidate/promise.d.ts.map +1 -1
- package/dist/fields/hooks/beforeValidate/promise.js +32 -39
- package/dist/fields/hooks/beforeValidate/promise.js.map +1 -0
- package/dist/fields/hooks/beforeValidate/traverseFields.d.ts +11 -5
- package/dist/fields/hooks/beforeValidate/traverseFields.d.ts.map +1 -1
- package/dist/fields/hooks/beforeValidate/traverseFields.js +4 -14
- package/dist/fields/hooks/beforeValidate/traverseFields.js.map +1 -0
- package/dist/fields/mergeBaseFields.d.ts +1 -1
- package/dist/fields/mergeBaseFields.d.ts.map +1 -1
- package/dist/fields/mergeBaseFields.js +8 -23
- package/dist/fields/mergeBaseFields.js.map +1 -0
- package/dist/fields/setDefaultBeforeDuplicate.d.ts +3 -0
- package/dist/fields/setDefaultBeforeDuplicate.d.ts.map +1 -0
- package/dist/fields/setDefaultBeforeDuplicate.js +20 -0
- package/dist/fields/setDefaultBeforeDuplicate.js.map +1 -0
- package/dist/fields/sortableFieldTypes.js +2 -12
- package/dist/fields/sortableFieldTypes.js.map +1 -0
- package/dist/fields/validations.d.ts +10 -8
- package/dist/fields/validations.d.ts.map +1 -1
- package/dist/fields/validations.js +79 -102
- package/dist/fields/validations.js.map +1 -0
- package/dist/fields/validations.spec.js +98 -87
- package/dist/fields/validations.spec.js.map +1 -0
- package/dist/globals/config/client.d.ts +21 -0
- package/dist/globals/config/client.d.ts.map +1 -0
- package/dist/globals/config/client.js +49 -0
- package/dist/globals/config/client.js.map +1 -0
- package/dist/globals/config/sanitize.d.ts +3 -4
- package/dist/globals/config/sanitize.d.ts.map +1 -1
- package/dist/globals/config/sanitize.js +48 -63
- package/dist/globals/config/sanitize.js.map +1 -0
- package/dist/globals/config/schema.d.ts.map +1 -1
- package/dist/globals/config/schema.js +57 -70
- package/dist/globals/config/schema.js.map +1 -0
- package/dist/globals/config/types.d.ts +25 -38
- package/dist/globals/config/types.d.ts.map +1 -1
- package/dist/globals/config/types.js +2 -5
- package/dist/globals/config/types.js.map +1 -0
- package/dist/globals/operations/docAccess.d.ts +4 -4
- package/dist/globals/operations/docAccess.d.ts.map +1 -1
- package/dist/globals/operations/docAccess.js +12 -22
- package/dist/globals/operations/docAccess.js.map +1 -0
- package/dist/globals/operations/findOne.d.ts +3 -4
- package/dist/globals/operations/findOne.d.ts.map +1 -1
- package/dist/globals/operations/findOne.js +15 -29
- package/dist/globals/operations/findOne.js.map +1 -0
- package/dist/globals/operations/findVersionByID.d.ts +4 -4
- package/dist/globals/operations/findVersionByID.d.ts.map +1 -1
- package/dist/globals/operations/findVersionByID.js +19 -33
- package/dist/globals/operations/findVersionByID.js.map +1 -0
- package/dist/globals/operations/findVersions.d.ts +5 -6
- package/dist/globals/operations/findVersions.d.ts.map +1 -1
- package/dist/globals/operations/findVersions.js +21 -35
- package/dist/globals/operations/findVersions.js.map +1 -0
- package/dist/globals/operations/local/findOne.d.ts +5 -7
- package/dist/globals/operations/local/findOne.d.ts.map +1 -1
- package/dist/globals/operations/local/findOne.js +11 -21
- package/dist/globals/operations/local/findOne.js.map +1 -0
- package/dist/globals/operations/local/findVersionByID.d.ts +6 -8
- package/dist/globals/operations/local/findVersionByID.d.ts.map +1 -1
- package/dist/globals/operations/local/findVersionByID.js +10 -19
- package/dist/globals/operations/local/findVersionByID.js.map +1 -0
- package/dist/globals/operations/local/findVersions.d.ts +7 -9
- package/dist/globals/operations/local/findVersions.d.ts.map +1 -1
- package/dist/globals/operations/local/findVersions.js +9 -19
- package/dist/globals/operations/local/findVersions.js.map +1 -0
- package/dist/globals/operations/local/index.d.ts +5 -5
- package/dist/globals/operations/local/index.d.ts.map +1 -1
- package/dist/globals/operations/local/index.js +12 -27
- package/dist/globals/operations/local/index.js.map +1 -0
- package/dist/globals/operations/local/restoreVersion.d.ts +5 -7
- package/dist/globals/operations/local/restoreVersion.d.ts.map +1 -1
- package/dist/globals/operations/local/restoreVersion.js +9 -19
- package/dist/globals/operations/local/restoreVersion.js.map +1 -0
- package/dist/globals/operations/local/update.d.ts +5 -7
- package/dist/globals/operations/local/update.d.ts.map +1 -1
- package/dist/globals/operations/local/update.js +9 -19
- package/dist/globals/operations/local/update.js.map +1 -0
- package/dist/globals/operations/restoreVersion.d.ts +4 -4
- package/dist/globals/operations/restoreVersion.d.ts.map +1 -1
- package/dist/globals/operations/restoreVersion.js +17 -31
- package/dist/globals/operations/restoreVersion.js.map +1 -0
- package/dist/globals/operations/update.d.ts +5 -13
- package/dist/globals/operations/update.d.ts.map +1 -1
- package/dist/globals/operations/update.js +25 -38
- package/dist/globals/operations/update.js.map +1 -0
- package/dist/index.d.ts +75 -53
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +102 -87
- package/dist/index.js.map +1 -0
- package/dist/preferences/deleteUserPreferences.d.ts +4 -4
- package/dist/preferences/deleteUserPreferences.d.ts.map +1 -1
- package/dist/preferences/deleteUserPreferences.js +2 -12
- package/dist/preferences/deleteUserPreferences.js.map +1 -0
- package/dist/preferences/operations/delete.d.ts +2 -2
- package/dist/preferences/operations/delete.d.ts.map +1 -1
- package/dist/preferences/operations/delete.js +14 -31
- package/dist/preferences/operations/delete.js.map +1 -0
- package/dist/preferences/operations/findOne.d.ts +2 -2
- package/dist/preferences/operations/findOne.d.ts.map +1 -1
- package/dist/preferences/operations/findOne.js +5 -19
- package/dist/preferences/operations/findOne.js.map +1 -0
- package/dist/preferences/operations/update.d.ts +2 -2
- package/dist/preferences/operations/update.d.ts.map +1 -1
- package/dist/preferences/operations/update.js +8 -23
- package/dist/preferences/operations/update.js.map +1 -0
- package/dist/preferences/preferencesCollection.d.ts +2 -2
- package/dist/preferences/preferencesCollection.d.ts.map +1 -1
- package/dist/preferences/preferencesCollection.js +8 -18
- package/dist/preferences/preferencesCollection.js.map +1 -0
- package/dist/preferences/requestHandlers/delete.d.ts +1 -1
- package/dist/preferences/requestHandlers/delete.d.ts.map +1 -1
- package/dist/preferences/requestHandlers/delete.js +22 -24
- package/dist/preferences/requestHandlers/delete.js.map +1 -0
- package/dist/preferences/requestHandlers/findOne.d.ts +1 -1
- package/dist/preferences/requestHandlers/findOne.d.ts.map +1 -1
- package/dist/preferences/requestHandlers/findOne.js +22 -24
- package/dist/preferences/requestHandlers/findOne.js.map +1 -0
- package/dist/preferences/requestHandlers/update.d.ts +1 -1
- package/dist/preferences/requestHandlers/update.d.ts.map +1 -1
- package/dist/preferences/requestHandlers/update.js +23 -26
- package/dist/preferences/requestHandlers/update.js.map +1 -0
- package/dist/preferences/types.d.ts +8 -8
- package/dist/preferences/types.d.ts.map +1 -1
- package/dist/preferences/types.js +2 -5
- package/dist/preferences/types.js.map +1 -0
- package/dist/translations/getLocalI18n.d.ts +3 -2
- package/dist/translations/getLocalI18n.d.ts.map +1 -1
- package/dist/translations/getLocalI18n.js +4 -16
- package/dist/translations/getLocalI18n.js.map +1 -0
- package/dist/types/constants.js +2 -12
- package/dist/types/constants.js.map +1 -0
- package/dist/types/index.d.ts +28 -22
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +2 -12
- package/dist/types/index.js.map +1 -0
- package/dist/uploads/canResizeImage.js +4 -13
- package/dist/uploads/canResizeImage.js.map +1 -0
- package/dist/uploads/cropImage.d.ts +3 -7
- package/dist/uploads/cropImage.d.ts.map +1 -1
- package/dist/uploads/cropImage.js +4 -28
- package/dist/uploads/cropImage.js.map +1 -0
- package/dist/uploads/deleteAssociatedFiles.d.ts +5 -5
- package/dist/uploads/deleteAssociatedFiles.d.ts.map +1 -1
- package/dist/uploads/deleteAssociatedFiles.js +11 -26
- package/dist/uploads/deleteAssociatedFiles.js.map +1 -0
- package/dist/uploads/docWithFilenameExists.d.ts +2 -2
- package/dist/uploads/docWithFilenameExists.d.ts.map +1 -1
- package/dist/uploads/docWithFilenameExists.js +2 -12
- package/dist/uploads/docWithFilenameExists.js.map +1 -0
- package/dist/uploads/fileExists.js +4 -19
- package/dist/uploads/fileExists.js.map +1 -0
- package/dist/uploads/formatFilesize.js +2 -12
- package/dist/uploads/formatFilesize.js.map +1 -0
- package/dist/uploads/generateFileData.d.ts +5 -5
- package/dist/uploads/generateFileData.d.ts.map +1 -1
- package/dist/uploads/generateFileData.js +44 -56
- package/dist/uploads/generateFileData.js.map +1 -0
- package/dist/uploads/getBaseFields.d.ts +5 -5
- package/dist/uploads/getBaseFields.d.ts.map +1 -1
- package/dist/uploads/getBaseFields.js +52 -36
- package/dist/uploads/getBaseFields.js.map +1 -0
- package/dist/uploads/getExternalFile.d.ts +5 -4
- package/dist/uploads/getExternalFile.d.ts.map +1 -1
- package/dist/uploads/getExternalFile.js +14 -20
- package/dist/uploads/getExternalFile.js.map +1 -0
- package/dist/uploads/getFileByPath.d.ts +2 -3
- package/dist/uploads/getFileByPath.d.ts.map +1 -1
- package/dist/uploads/getFileByPath.js +11 -26
- package/dist/uploads/getFileByPath.js.map +1 -0
- package/dist/uploads/getImageSize.d.ts +3 -3
- package/dist/uploads/getImageSize.d.ts.map +1 -1
- package/dist/uploads/getImageSize.js +21 -22
- package/dist/uploads/getImageSize.js.map +1 -0
- package/dist/uploads/getSafeFilename.d.ts +2 -2
- package/dist/uploads/getSafeFilename.d.ts.map +1 -1
- package/dist/uploads/getSafeFilename.js +8 -23
- package/dist/uploads/getSafeFilename.js.map +1 -0
- package/dist/uploads/imageResizer.d.ts +8 -7
- package/dist/uploads/imageResizer.d.ts.map +1 -1
- package/dist/uploads/imageResizer.js +29 -44
- package/dist/uploads/imageResizer.js.map +1 -0
- package/dist/uploads/isImage.d.ts.map +1 -1
- package/dist/uploads/isImage.js +4 -13
- package/dist/uploads/isImage.js.map +1 -0
- package/dist/uploads/mimeTypeValidator.d.ts +1 -1
- package/dist/uploads/mimeTypeValidator.d.ts.map +1 -1
- package/dist/uploads/mimeTypeValidator.js +2 -12
- package/dist/uploads/mimeTypeValidator.js.map +1 -0
- package/dist/uploads/mimeTypeValidator.spec.js +11 -15
- package/dist/uploads/mimeTypeValidator.spec.js.map +1 -0
- package/dist/uploads/saveBufferToFile.d.ts +1 -1
- package/dist/uploads/saveBufferToFile.js +6 -21
- package/dist/uploads/saveBufferToFile.js.map +1 -0
- package/dist/uploads/tempFile.d.ts +7 -0
- package/dist/uploads/tempFile.d.ts.map +1 -0
- package/dist/uploads/tempFile.js +39 -0
- package/dist/uploads/tempFile.js.map +1 -0
- package/dist/uploads/types.d.ts +19 -5
- package/dist/uploads/types.d.ts.map +1 -1
- package/dist/uploads/types.js +2 -5
- package/dist/uploads/types.js.map +1 -0
- package/dist/uploads/unlinkTempFiles.d.ts +4 -4
- package/dist/uploads/unlinkTempFiles.d.ts.map +1 -1
- package/dist/uploads/unlinkTempFiles.js +9 -22
- package/dist/uploads/unlinkTempFiles.js.map +1 -0
- package/dist/uploads/uploadFiles.d.ts +4 -4
- package/dist/uploads/uploadFiles.d.ts.map +1 -1
- package/dist/uploads/uploadFiles.js +6 -21
- package/dist/uploads/uploadFiles.js.map +1 -0
- package/dist/utilities/checkDuplicateCollections.d.ts +1 -1
- package/dist/utilities/checkDuplicateCollections.d.ts.map +1 -1
- package/dist/utilities/checkDuplicateCollections.js +4 -14
- package/dist/utilities/checkDuplicateCollections.js.map +1 -0
- package/dist/utilities/combineMerge.js +4 -19
- package/dist/utilities/combineMerge.js.map +1 -0
- package/dist/utilities/commitTransaction.d.ts +2 -2
- package/dist/utilities/commitTransaction.d.ts.map +1 -1
- package/dist/utilities/commitTransaction.js +4 -12
- package/dist/utilities/commitTransaction.js.map +1 -0
- package/dist/utilities/configToJSONSchema.d.ts +12 -6
- package/dist/utilities/configToJSONSchema.d.ts.map +1 -1
- package/dist/utilities/configToJSONSchema.js +138 -98
- package/dist/utilities/configToJSONSchema.js.map +1 -0
- package/dist/utilities/configToJSONSchema.spec.js +6 -10
- package/dist/utilities/configToJSONSchema.spec.js.map +1 -0
- package/dist/utilities/convertData.js +3 -23
- package/dist/utilities/convertData.js.map +1 -0
- package/dist/utilities/createArrayFromCommaDelineated.js +2 -12
- package/dist/utilities/createArrayFromCommaDelineated.js.map +1 -0
- package/dist/utilities/createLocalReq.d.ts +5 -5
- package/dist/utilities/createLocalReq.d.ts.map +1 -1
- package/dist/utilities/createLocalReq.js +32 -41
- package/dist/utilities/createLocalReq.js.map +1 -0
- package/dist/utilities/deepCopyObject.js +2 -12
- package/dist/utilities/deepCopyObject.js.map +1 -0
- package/dist/utilities/deepMerge.js +2 -12
- package/dist/utilities/deepMerge.js.map +1 -0
- package/dist/utilities/fieldSchemaToJSON.d.ts +3 -3
- package/dist/utilities/fieldSchemaToJSON.d.ts.map +1 -1
- package/dist/utilities/fieldSchemaToJSON.js +22 -22
- package/dist/utilities/fieldSchemaToJSON.js.map +1 -0
- package/dist/utilities/flattenTopLevelFields.d.ts +3 -2
- package/dist/utilities/flattenTopLevelFields.d.ts.map +1 -1
- package/dist/utilities/flattenTopLevelFields.js +7 -17
- package/dist/utilities/flattenTopLevelFields.js.map +1 -0
- package/dist/utilities/formatLabels.d.ts +0 -1
- package/dist/utilities/formatLabels.d.ts.map +1 -1
- package/dist/utilities/formatLabels.js +10 -70
- package/dist/utilities/formatLabels.js.map +1 -0
- package/dist/utilities/formatLabels.spec.js +8 -12
- package/dist/utilities/formatLabels.spec.js.map +1 -0
- package/dist/utilities/getCSSVariable.js +2 -12
- package/dist/utilities/getCSSVariable.js.map +1 -0
- package/dist/utilities/getCollectionIDFieldTypes.d.ts +13 -0
- package/dist/utilities/getCollectionIDFieldTypes.d.ts.map +1 -0
- package/dist/utilities/getCollectionIDFieldTypes.js +16 -0
- package/dist/utilities/getCollectionIDFieldTypes.js.map +1 -0
- package/dist/utilities/getEntityPolicies.d.ts +5 -5
- package/dist/utilities/getEntityPolicies.d.ts.map +1 -1
- package/dist/utilities/getEntityPolicies.js +7 -17
- package/dist/utilities/getEntityPolicies.js.map +1 -0
- package/dist/utilities/getObjectDotNotation.d.ts.map +1 -1
- package/dist/utilities/getObjectDotNotation.js +2 -12
- package/dist/utilities/getObjectDotNotation.js.map +1 -0
- package/dist/utilities/getUniqueListBy.js +2 -12
- package/dist/utilities/getUniqueListBy.js.map +1 -0
- package/dist/utilities/importWithoutClientFiles.d.ts +7 -0
- package/dist/utilities/importWithoutClientFiles.d.ts.map +1 -0
- package/dist/utilities/importWithoutClientFiles.js +44 -0
- package/dist/utilities/importWithoutClientFiles.js.map +1 -0
- package/dist/utilities/initTransaction.d.ts +2 -2
- package/dist/utilities/initTransaction.d.ts.map +1 -1
- package/dist/utilities/initTransaction.js +5 -12
- package/dist/utilities/initTransaction.js.map +1 -0
- package/dist/utilities/isEntityHidden.d.ts +4 -4
- package/dist/utilities/isEntityHidden.d.ts.map +1 -1
- package/dist/utilities/isEntityHidden.js +2 -12
- package/dist/utilities/isEntityHidden.js.map +1 -0
- package/dist/utilities/isNumber.js +2 -12
- package/dist/utilities/isNumber.js.map +1 -0
- package/dist/utilities/isPlainObject.d.ts +2 -0
- package/dist/utilities/isPlainObject.d.ts.map +1 -0
- package/dist/utilities/isPlainObject.js +25 -0
- package/dist/utilities/isPlainObject.js.map +1 -0
- package/dist/utilities/isReactComponent.d.ts +6 -0
- package/dist/utilities/isReactComponent.d.ts.map +1 -0
- package/dist/utilities/isReactComponent.js +17 -0
- package/dist/utilities/isReactComponent.js.map +1 -0
- package/dist/utilities/isValidID.d.ts.map +1 -1
- package/dist/utilities/isValidID.js +6 -20
- package/dist/utilities/isValidID.js.map +1 -0
- package/dist/utilities/isolateObjectProperty.js +2 -12
- package/dist/utilities/isolateObjectProperty.js.map +1 -0
- package/dist/utilities/killTransaction.d.ts +2 -2
- package/dist/utilities/killTransaction.d.ts.map +1 -1
- package/dist/utilities/killTransaction.js +4 -12
- package/dist/utilities/killTransaction.js.map +1 -0
- package/dist/utilities/logger.d.ts +6 -6
- package/dist/utilities/logger.d.ts.map +1 -1
- package/dist/utilities/logger.js +18 -37
- package/dist/utilities/logger.js.map +1 -0
- package/dist/utilities/mapAsync.js +2 -12
- package/dist/utilities/mapAsync.js.map +1 -0
- package/dist/utilities/mergeListSearchAndWhere.d.ts +12 -0
- package/dist/utilities/mergeListSearchAndWhere.d.ts.map +1 -0
- package/dist/utilities/mergeListSearchAndWhere.js +57 -0
- package/dist/utilities/mergeListSearchAndWhere.js.map +1 -0
- package/dist/utilities/overwriteMerge.js +2 -12
- package/dist/utilities/overwriteMerge.js.map +1 -0
- package/dist/utilities/parseCookies.js +4 -14
- package/dist/utilities/parseCookies.js.map +1 -0
- package/dist/utilities/sanitizeInternalFields.d.ts.map +1 -1
- package/dist/utilities/sanitizeInternalFields.js +2 -12
- package/dist/utilities/sanitizeInternalFields.js.map +1 -0
- package/dist/utilities/setsAreEqual.js +2 -12
- package/dist/utilities/setsAreEqual.js.map +1 -0
- package/dist/utilities/telemetry/events/adminInit.d.ts +3 -3
- package/dist/utilities/telemetry/events/adminInit.d.ts.map +1 -1
- package/dist/utilities/telemetry/events/adminInit.js +8 -18
- package/dist/utilities/telemetry/events/adminInit.js.map +1 -0
- package/dist/utilities/telemetry/events/serverInit.d.ts +1 -1
- package/dist/utilities/telemetry/events/serverInit.d.ts.map +1 -1
- package/dist/utilities/telemetry/events/serverInit.js +4 -14
- package/dist/utilities/telemetry/events/serverInit.js.map +1 -0
- package/dist/utilities/telemetry/index.d.ts +12 -3
- package/dist/utilities/telemetry/index.d.ts.map +1 -1
- package/dist/utilities/telemetry/index.js +80 -50
- package/dist/utilities/telemetry/index.js.map +1 -0
- package/dist/utilities/telemetry/oneWayHash.d.ts +1 -0
- package/dist/utilities/telemetry/oneWayHash.d.ts.map +1 -1
- package/dist/utilities/telemetry/oneWayHash.js +4 -14
- package/dist/utilities/telemetry/oneWayHash.js.map +1 -0
- package/dist/utilities/timestamp.js +2 -12
- package/dist/utilities/timestamp.js.map +1 -0
- package/dist/utilities/toKebabCase.js +2 -12
- package/dist/utilities/toKebabCase.js.map +1 -0
- package/dist/utilities/wait.d.ts +1 -2
- package/dist/utilities/wait.d.ts.map +1 -1
- package/dist/utilities/wait.js +2 -13
- package/dist/utilities/wait.js.map +1 -0
- package/dist/utilities/wordBoundariesRegex.js +3 -13
- package/dist/utilities/wordBoundariesRegex.js.map +1 -0
- package/dist/versions/baseFields.d.ts +4 -2
- package/dist/versions/baseFields.d.ts.map +1 -1
- package/dist/versions/baseFields.js +8 -32
- package/dist/versions/baseFields.js.map +1 -0
- package/dist/versions/buildCollectionFields.d.ts +2 -2
- package/dist/versions/buildCollectionFields.d.ts.map +1 -1
- package/dist/versions/buildCollectionFields.js +2 -12
- package/dist/versions/buildCollectionFields.js.map +1 -0
- package/dist/versions/buildGlobalFields.d.ts +2 -2
- package/dist/versions/buildGlobalFields.d.ts.map +1 -1
- package/dist/versions/buildGlobalFields.js +12 -22
- package/dist/versions/buildGlobalFields.js.map +1 -0
- package/dist/versions/deleteCollectionVersions.d.ts +4 -4
- package/dist/versions/deleteCollectionVersions.d.ts.map +1 -1
- package/dist/versions/deleteCollectionVersions.js +2 -12
- package/dist/versions/deleteCollectionVersions.js.map +1 -0
- package/dist/versions/drafts/appendVersionToQueryKey.d.ts +1 -1
- package/dist/versions/drafts/appendVersionToQueryKey.d.ts.map +1 -1
- package/dist/versions/drafts/appendVersionToQueryKey.js +2 -12
- package/dist/versions/drafts/appendVersionToQueryKey.js.map +1 -0
- package/dist/versions/drafts/getQueryDraftsSort.js +2 -12
- package/dist/versions/drafts/getQueryDraftsSort.js.map +1 -0
- package/dist/versions/drafts/replaceWithDraftIfAvailable.d.ts +5 -5
- package/dist/versions/drafts/replaceWithDraftIfAvailable.d.ts.map +1 -1
- package/dist/versions/drafts/replaceWithDraftIfAvailable.js +13 -27
- package/dist/versions/drafts/replaceWithDraftIfAvailable.js.map +1 -0
- package/dist/versions/enforceMaxVersions.d.ts +4 -4
- package/dist/versions/enforceMaxVersions.d.ts.map +1 -1
- package/dist/versions/enforceMaxVersions.js +3 -12
- package/dist/versions/enforceMaxVersions.js.map +1 -0
- package/dist/versions/getLatestCollectionVersion.d.ts +4 -4
- package/dist/versions/getLatestCollectionVersion.d.ts.map +1 -1
- package/dist/versions/getLatestCollectionVersion.js +6 -14
- package/dist/versions/getLatestCollectionVersion.js.map +1 -0
- package/dist/versions/getLatestGlobalVersion.d.ts +4 -4
- package/dist/versions/getLatestGlobalVersion.d.ts.map +1 -1
- package/dist/versions/getLatestGlobalVersion.js +6 -15
- package/dist/versions/getLatestGlobalVersion.js.map +1 -0
- package/dist/versions/saveVersion.d.ts +5 -5
- package/dist/versions/saveVersion.d.ts.map +1 -1
- package/dist/versions/saveVersion.js +10 -24
- package/dist/versions/saveVersion.js.map +1 -0
- package/dist/versions/types.js +2 -5
- package/dist/versions/types.js.map +1 -0
- package/package.json +73 -77
- package/.eslintrc.js +0 -58
- package/.release-it.js +0 -51
- package/auth.d.ts +0 -6
- package/auth.js +0 -45
- package/config.d.ts +0 -11
- package/config.js +0 -60
- package/database.d.ts +0 -23
- package/database.js +0 -109
- package/dist/auth/getAuthenticatedUser.d.ts +0 -3
- package/dist/auth/getAuthenticatedUser.d.ts.map +0 -1
- package/dist/auth/getAuthenticatedUser.js +0 -21
- package/dist/bundlers/mocks/db-mongodb.js +0 -3
- package/dist/bundlers/mocks/db-postgres.js +0 -13
- package/dist/bundlers/mocks/dotENV.js +0 -15
- package/dist/bundlers/mocks/emptyModule.js +0 -13
- package/dist/bundlers/mocks/fileMock.js +0 -13
- package/dist/bundlers/types.d.ts +0 -8
- package/dist/bundlers/types.d.ts.map +0 -1
- package/dist/bundlers/types.js +0 -6
- package/dist/config/clientFiles.d.ts +0 -2
- package/dist/config/clientFiles.d.ts.map +0 -1
- package/dist/config/clientFiles.js +0 -23
- package/dist/config/createClientConfig.d.ts +0 -6
- package/dist/config/createClientConfig.d.ts.map +0 -1
- package/dist/config/createClientConfig.js +0 -132
- package/dist/config/load.d.ts +0 -6
- package/dist/config/load.d.ts.map +0 -1
- package/dist/config/load.js +0 -45
- package/dist/email/build.d.ts +0 -5
- package/dist/email/build.d.ts.map +0 -1
- package/dist/email/build.js +0 -78
- package/dist/email/mockHandler.d.ts +0 -5
- package/dist/email/mockHandler.d.ts.map +0 -1
- package/dist/email/mockHandler.js +0 -39
- package/dist/express/middleware/errorHandler.d.ts +0 -2
- package/dist/express/middleware/errorHandler.d.ts.map +0 -1
- package/dist/express/middleware/errorHandler.js +0 -3
- package/dist/express/middleware/index.d.ts +0 -2
- package/dist/express/middleware/index.d.ts.map +0 -1
- package/dist/express/middleware/index.js +0 -3
- package/dist/globals/config/build.d.ts +0 -2
- package/dist/globals/config/build.d.ts.map +0 -1
- package/dist/globals/config/build.js +0 -3
- package/dist/globals/graphql/resolvers/docAccess.d.ts +0 -2
- package/dist/globals/graphql/resolvers/docAccess.d.ts.map +0 -1
- package/dist/globals/graphql/resolvers/docAccess.js +0 -3
- package/dist/localization/middleware.d.ts +0 -5
- package/dist/localization/middleware.d.ts.map +0 -1
- package/dist/localization/middleware.js +0 -47
- package/dist/localization/sanitizeFallbackLocale.d.ts +0 -3
- package/dist/localization/sanitizeFallbackLocale.d.ts.map +0 -1
- package/dist/localization/sanitizeFallbackLocale.js +0 -19
- package/dist/translations/extractTranslations.d.ts +0 -2
- package/dist/translations/extractTranslations.d.ts.map +0 -1
- package/dist/translations/extractTranslations.js +0 -30
- package/dist/utilities/getIDType.d.ts +0 -4
- package/dist/utilities/getIDType.d.ts.map +0 -1
- package/dist/utilities/getIDType.js +0 -18
- package/dist/versions/getVersionsModelName.d.ts +0 -4
- package/dist/versions/getVersionsModelName.d.ts.map +0 -1
- package/dist/versions/getVersionsModelName.js +0 -13
- package/errors.d.ts +0 -2
- package/errors.js +0 -69
- package/operations.d.ts +0 -29
- package/operations.js +0 -126
- package/types.d.ts +0 -12
- package/types.js +0 -75
- package/utilities.d.ts +0 -28
- package/utilities.js +0 -142
- package/versions.d.ts +0 -10
- package/versions.js +0 -46
|
@@ -1,42 +1,27 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
const
|
|
16
|
-
const _errors = require("../errors");
|
|
17
|
-
const _canResizeImage = /*#__PURE__*/ _interop_require_default(require("./canResizeImage"));
|
|
18
|
-
const _cropImage = /*#__PURE__*/ _interop_require_default(require("./cropImage"));
|
|
19
|
-
const _getExternalFile = require("./getExternalFile");
|
|
20
|
-
const _getFileByPath = /*#__PURE__*/ _interop_require_default(require("./getFileByPath"));
|
|
21
|
-
const _getImageSize = /*#__PURE__*/ _interop_require_default(require("./getImageSize"));
|
|
22
|
-
const _getSafeFilename = /*#__PURE__*/ _interop_require_default(require("./getSafeFilename"));
|
|
23
|
-
const _imageResizer = /*#__PURE__*/ _interop_require_default(require("./imageResizer"));
|
|
24
|
-
const _isImage = /*#__PURE__*/ _interop_require_default(require("./isImage"));
|
|
25
|
-
function _interop_require_default(obj) {
|
|
26
|
-
return obj && obj.__esModule ? obj : {
|
|
27
|
-
default: obj
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
const generateFileData = async ({ collection: { config: collectionConfig }, data, overwriteExistingFiles, req, throwOnMissingFile })=>{
|
|
1
|
+
import fileType from 'file-type';
|
|
2
|
+
const { fromBuffer } = fileType;
|
|
3
|
+
import fs from 'fs';
|
|
4
|
+
import mkdirp from 'mkdirp';
|
|
5
|
+
import sanitize from 'sanitize-filename';
|
|
6
|
+
import { FileRetrievalError, FileUploadError, MissingFile } from '../errors/index.js';
|
|
7
|
+
import canResizeImage from './canResizeImage.js';
|
|
8
|
+
import cropImage from './cropImage.js';
|
|
9
|
+
import { getExternalFile } from './getExternalFile.js';
|
|
10
|
+
import { getFileByPath } from './getFileByPath.js';
|
|
11
|
+
import { getImageSize } from './getImageSize.js';
|
|
12
|
+
import getSafeFileName from './getSafeFilename.js';
|
|
13
|
+
import resizeAndTransformImageSizes from './imageResizer.js';
|
|
14
|
+
import isImage from './isImage.js';
|
|
15
|
+
export const generateFileData = async ({ collection: { config: collectionConfig }, data, overwriteExistingFiles, req, throwOnMissingFile })=>{
|
|
31
16
|
if (!collectionConfig.upload) {
|
|
32
17
|
return {
|
|
33
18
|
data,
|
|
34
19
|
files: []
|
|
35
20
|
};
|
|
36
21
|
}
|
|
22
|
+
const { sharp } = req.payload.config;
|
|
37
23
|
let file = req.file;
|
|
38
|
-
const
|
|
39
|
-
const uploadEdits = searchParams.get('uploadEdits') || {};
|
|
24
|
+
const uploadEdits = req.query['uploadEdits'] || {};
|
|
40
25
|
const { disableLocalStorage, formatOptions, imageSizes, resizeOptions, staticDir, trimOptions } = collectionConfig.upload;
|
|
41
26
|
const staticPath = staticDir;
|
|
42
27
|
if (!file && uploadEdits && data) {
|
|
@@ -44,29 +29,30 @@ const generateFileData = async ({ collection: { config: collectionConfig }, data
|
|
|
44
29
|
try {
|
|
45
30
|
if (url && url.startsWith('/') && !disableLocalStorage) {
|
|
46
31
|
const filePath = `${staticPath}/${filename}`;
|
|
47
|
-
const response = await (
|
|
32
|
+
const response = await getFileByPath(filePath);
|
|
48
33
|
file = response;
|
|
49
34
|
overwriteExistingFiles = true;
|
|
50
35
|
} else if (filename && url) {
|
|
51
|
-
file = await
|
|
36
|
+
file = await getExternalFile({
|
|
52
37
|
data: data,
|
|
53
|
-
req
|
|
38
|
+
req,
|
|
39
|
+
uploadConfig: collectionConfig.upload
|
|
54
40
|
});
|
|
55
41
|
overwriteExistingFiles = true;
|
|
56
42
|
}
|
|
57
43
|
} catch (err) {
|
|
58
|
-
throw new
|
|
44
|
+
throw new FileRetrievalError(req.t, err instanceof Error ? err.message : undefined);
|
|
59
45
|
}
|
|
60
46
|
}
|
|
61
47
|
if (!file) {
|
|
62
|
-
if (throwOnMissingFile) throw new
|
|
48
|
+
if (throwOnMissingFile) throw new MissingFile(req.t);
|
|
63
49
|
return {
|
|
64
50
|
data,
|
|
65
51
|
files: []
|
|
66
52
|
};
|
|
67
53
|
}
|
|
68
54
|
if (!disableLocalStorage) {
|
|
69
|
-
|
|
55
|
+
mkdirp.sync(staticPath);
|
|
70
56
|
}
|
|
71
57
|
let newData = data;
|
|
72
58
|
const filesToSave = [];
|
|
@@ -74,7 +60,7 @@ const generateFileData = async ({ collection: { config: collectionConfig }, data
|
|
|
74
60
|
const fileIsAnimated = file.mimetype === 'image/gif' || file.mimetype === 'image/webp';
|
|
75
61
|
const cropData = typeof uploadEdits === 'object' && 'crop' in uploadEdits ? uploadEdits.crop : undefined;
|
|
76
62
|
try {
|
|
77
|
-
const fileSupportsResize = (
|
|
63
|
+
const fileSupportsResize = canResizeImage(file.mimetype);
|
|
78
64
|
let fsSafeName;
|
|
79
65
|
let sharpFile;
|
|
80
66
|
let dimensions;
|
|
@@ -84,12 +70,12 @@ const generateFileData = async ({ collection: { config: collectionConfig }, data
|
|
|
84
70
|
const fileHasAdjustments = fileSupportsResize && Boolean(resizeOptions || formatOptions || trimOptions || file.tempFilePath);
|
|
85
71
|
const sharpOptions = {};
|
|
86
72
|
if (fileIsAnimated) sharpOptions.animated = true;
|
|
87
|
-
if (fileHasAdjustments) {
|
|
73
|
+
if (fileHasAdjustments && sharp) {
|
|
88
74
|
if (file.tempFilePath) {
|
|
89
|
-
sharpFile = (
|
|
75
|
+
sharpFile = sharp(file.tempFilePath, sharpOptions).rotate() // pass rotate() to auto-rotate based on EXIF data. https://github.com/payloadcms/payload/pull/3081
|
|
90
76
|
;
|
|
91
77
|
} else {
|
|
92
|
-
sharpFile = (
|
|
78
|
+
sharpFile = sharp(file.data, sharpOptions).rotate() // pass rotate() to auto-rotate based on EXIF data. https://github.com/payloadcms/payload/pull/3081
|
|
93
79
|
;
|
|
94
80
|
}
|
|
95
81
|
if (resizeOptions) {
|
|
@@ -102,8 +88,8 @@ const generateFileData = async ({ collection: { config: collectionConfig }, data
|
|
|
102
88
|
sharpFile = sharpFile.trim(trimOptions);
|
|
103
89
|
}
|
|
104
90
|
}
|
|
105
|
-
if (
|
|
106
|
-
dimensions = await (
|
|
91
|
+
if (fileSupportsResize || isImage(file.mimetype)) {
|
|
92
|
+
dimensions = await getImageSize(file);
|
|
107
93
|
fileData.width = dimensions.width;
|
|
108
94
|
fileData.height = dimensions.height;
|
|
109
95
|
}
|
|
@@ -112,7 +98,7 @@ const generateFileData = async ({ collection: { config: collectionConfig }, data
|
|
|
112
98
|
fileBuffer = await sharpFile.toBuffer({
|
|
113
99
|
resolveWithObject: true
|
|
114
100
|
});
|
|
115
|
-
({ ext, mime } = await
|
|
101
|
+
({ ext, mime } = await fromBuffer(fileBuffer.data) // This is getting an incorrect gif height back.
|
|
116
102
|
);
|
|
117
103
|
fileData.width = fileBuffer.info.width;
|
|
118
104
|
fileData.height = fileBuffer.info.height;
|
|
@@ -134,10 +120,10 @@ const generateFileData = async ({ collection: { config: collectionConfig }, data
|
|
|
134
120
|
// Adust SVG mime type. fromBuffer modifies it.
|
|
135
121
|
if (mime === 'application/xml' && ext === 'svg') mime = 'image/svg+xml';
|
|
136
122
|
fileData.mimeType = mime;
|
|
137
|
-
const baseFilename = (
|
|
123
|
+
const baseFilename = sanitize(file.name.substring(0, file.name.lastIndexOf('.')) || file.name);
|
|
138
124
|
fsSafeName = `${baseFilename}${ext ? `.${ext}` : ''}`;
|
|
139
125
|
if (!overwriteExistingFiles) {
|
|
140
|
-
fsSafeName = await (
|
|
126
|
+
fsSafeName = await getSafeFileName({
|
|
141
127
|
collectionSlug: collectionConfig.slug,
|
|
142
128
|
desiredFilename: fsSafeName,
|
|
143
129
|
req,
|
|
@@ -146,11 +132,12 @@ const generateFileData = async ({ collection: { config: collectionConfig }, data
|
|
|
146
132
|
}
|
|
147
133
|
fileData.filename = fsSafeName;
|
|
148
134
|
let fileForResize = file;
|
|
149
|
-
if (cropData) {
|
|
150
|
-
const { data: croppedImage, info } = await (
|
|
135
|
+
if (cropData && sharp) {
|
|
136
|
+
const { data: croppedImage, info } = await cropImage({
|
|
151
137
|
cropData,
|
|
152
138
|
dimensions,
|
|
153
|
-
file
|
|
139
|
+
file,
|
|
140
|
+
sharp
|
|
154
141
|
});
|
|
155
142
|
filesToSave.push({
|
|
156
143
|
buffer: croppedImage,
|
|
@@ -165,7 +152,7 @@ const generateFileData = async ({ collection: { config: collectionConfig }, data
|
|
|
165
152
|
fileData.height = info.height;
|
|
166
153
|
fileData.filesize = info.size;
|
|
167
154
|
if (file.tempFilePath) {
|
|
168
|
-
await
|
|
155
|
+
await fs.promises.writeFile(file.tempFilePath, croppedImage) // write fileBuffer to the temp path
|
|
169
156
|
;
|
|
170
157
|
} else {
|
|
171
158
|
req.file = fileForResize;
|
|
@@ -178,7 +165,7 @@ const generateFileData = async ({ collection: { config: collectionConfig }, data
|
|
|
178
165
|
// If using temp files and the image is being resized, write the file to the temp path
|
|
179
166
|
if (fileBuffer?.data || file.data.length > 0) {
|
|
180
167
|
if (file.tempFilePath) {
|
|
181
|
-
await
|
|
168
|
+
await fs.promises.writeFile(file.tempFilePath, fileBuffer?.data || file.data) // write fileBuffer to the temp path
|
|
182
169
|
;
|
|
183
170
|
} else {
|
|
184
171
|
// Assign the _possibly modified_ file to the request object
|
|
@@ -190,9 +177,9 @@ const generateFileData = async ({ collection: { config: collectionConfig }, data
|
|
|
190
177
|
}
|
|
191
178
|
}
|
|
192
179
|
}
|
|
193
|
-
if (Array.isArray(imageSizes) && fileSupportsResize) {
|
|
180
|
+
if (Array.isArray(imageSizes) && fileSupportsResize && sharp) {
|
|
194
181
|
req.payloadUploadSizes = {};
|
|
195
|
-
const { sizeData, sizesToSave } = await (
|
|
182
|
+
const { sizeData, sizesToSave } = await resizeAndTransformImageSizes({
|
|
196
183
|
config: collectionConfig,
|
|
197
184
|
dimensions: !cropData ? dimensions : {
|
|
198
185
|
...dimensions,
|
|
@@ -203,6 +190,7 @@ const generateFileData = async ({ collection: { config: collectionConfig }, data
|
|
|
203
190
|
mimeType: fileData.mimeType,
|
|
204
191
|
req,
|
|
205
192
|
savedFilename: fsSafeName || file.name,
|
|
193
|
+
sharp,
|
|
206
194
|
staticPath
|
|
207
195
|
});
|
|
208
196
|
fileData.sizes = sizeData;
|
|
@@ -210,7 +198,7 @@ const generateFileData = async ({ collection: { config: collectionConfig }, data
|
|
|
210
198
|
}
|
|
211
199
|
} catch (err) {
|
|
212
200
|
console.error(err);
|
|
213
|
-
throw new
|
|
201
|
+
throw new FileUploadError(req.t);
|
|
214
202
|
}
|
|
215
203
|
newData = {
|
|
216
204
|
...newData,
|
|
@@ -222,4 +210,4 @@ const generateFileData = async ({ collection: { config: collectionConfig }, data
|
|
|
222
210
|
};
|
|
223
211
|
};
|
|
224
212
|
|
|
225
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91cGxvYWRzL2dlbmVyYXRlRmlsZURhdGEudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBPdXRwdXRJbmZvLCBTaGFycCwgU2hhcnBPcHRpb25zIH0gZnJvbSAnc2hhcnAnXG5cbmltcG9ydCB7IGZyb21CdWZmZXIgfSBmcm9tICdmaWxlLXR5cGUnXG5pbXBvcnQgZnMgZnJvbSAnZnMnXG5pbXBvcnQgbWtkaXJwIGZyb20gJ21rZGlycCdcbmltcG9ydCBzYW5pdGl6ZSBmcm9tICdzYW5pdGl6ZS1maWxlbmFtZSdcbmltcG9ydCBzaGFycCBmcm9tICdzaGFycCdcblxuaW1wb3J0IHR5cGUgeyBDb2xsZWN0aW9uIH0gZnJvbSAnLi4vY29sbGVjdGlvbnMvY29uZmlnL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBTYW5pdGl6ZWRDb25maWcgfSBmcm9tICcuLi9jb25maWcvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IFBheWxvYWRSZXF1ZXN0IH0gZnJvbSAnLi4vdHlwZXMnXG5pbXBvcnQgdHlwZSB7IEZpbGVEYXRhLCBGaWxlVG9TYXZlLCBQcm9iZWRJbWFnZVNpemUgfSBmcm9tICcuL3R5cGVzJ1xuXG5pbXBvcnQgeyBGaWxlVXBsb2FkRXJyb3IsIE1pc3NpbmdGaWxlIH0gZnJvbSAnLi4vZXJyb3JzJ1xuaW1wb3J0IGNhblJlc2l6ZUltYWdlIGZyb20gJy4vY2FuUmVzaXplSW1hZ2UnXG5pbXBvcnQgY3JvcEltYWdlIGZyb20gJy4vY3JvcEltYWdlJ1xuaW1wb3J0IHsgZ2V0RXh0ZXJuYWxGaWxlIH0gZnJvbSAnLi9nZXRFeHRlcm5hbEZpbGUnXG5pbXBvcnQgZ2V0RmlsZUJ5UGF0aCBmcm9tICcuL2dldEZpbGVCeVBhdGgnXG5pbXBvcnQgZ2V0SW1hZ2VTaXplIGZyb20gJy4vZ2V0SW1hZ2VTaXplJ1xuaW1wb3J0IGdldFNhZmVGaWxlTmFtZSBmcm9tICcuL2dldFNhZmVGaWxlbmFtZSdcbmltcG9ydCByZXNpemVBbmRUcmFuc2Zvcm1JbWFnZVNpemVzIGZyb20gJy4vaW1hZ2VSZXNpemVyJ1xuaW1wb3J0IGlzSW1hZ2UgZnJvbSAnLi9pc0ltYWdlJ1xuXG50eXBlIEFyZ3M8VD4gPSB7XG4gIGNvbGxlY3Rpb246IENvbGxlY3Rpb25cbiAgY29uZmlnOiBTYW5pdGl6ZWRDb25maWdcbiAgZGF0YTogVFxuICBvdmVyd3JpdGVFeGlzdGluZ0ZpbGVzPzogYm9vbGVhblxuICByZXE6IFBheWxvYWRSZXF1ZXN0XG4gIHRocm93T25NaXNzaW5nRmlsZT86IGJvb2xlYW5cbn1cblxudHlwZSBSZXN1bHQ8VD4gPSBQcm9taXNlPHtcbiAgZGF0YTogVFxuICBmaWxlczogRmlsZVRvU2F2ZVtdXG59PlxuXG5leHBvcnQgY29uc3QgZ2VuZXJhdGVGaWxlRGF0YSA9IGFzeW5jIDxUPih7XG4gIGNvbGxlY3Rpb246IHsgY29uZmlnOiBjb2xsZWN0aW9uQ29uZmlnIH0sXG4gIGRhdGEsXG4gIG92ZXJ3cml0ZUV4aXN0aW5nRmlsZXMsXG4gIHJlcSxcbiAgdGhyb3dPbk1pc3NpbmdGaWxlLFxufTogQXJnczxUPik6IFJlc3VsdDxUPiA9PiB7XG4gIGlmICghY29sbGVjdGlvbkNvbmZpZy51cGxvYWQpIHtcbiAgICByZXR1cm4ge1xuICAgICAgZGF0YSxcbiAgICAgIGZpbGVzOiBbXSxcbiAgICB9XG4gIH1cblxuICBsZXQgZmlsZSA9IHJlcS5maWxlXG5cbiAgY29uc3QgeyBzZWFyY2hQYXJhbXMgfSA9IHJlcVxuICBjb25zdCB1cGxvYWRFZGl0cyA9IHNlYXJjaFBhcmFtcy5nZXQoJ3VwbG9hZEVkaXRzJykgfHwge31cblxuICBjb25zdCB7IGRpc2FibGVMb2NhbFN0b3JhZ2UsIGZvcm1hdE9wdGlvbnMsIGltYWdlU2l6ZXMsIHJlc2l6ZU9wdGlvbnMsIHN0YXRpY0RpciwgdHJpbU9wdGlvbnMgfSA9XG4gICAgY29sbGVjdGlvbkNvbmZpZy51cGxvYWRcblxuICBjb25zdCBzdGF0aWNQYXRoID0gc3RhdGljRGlyXG5cbiAgaWYgKCFmaWxlICYmIHVwbG9hZEVkaXRzICYmIGRhdGEpIHtcbiAgICBjb25zdCB7IGZpbGVuYW1lLCB1cmwgfSA9IGRhdGEgYXMgRmlsZURhdGFcblxuICAgIHRyeSB7XG4gICAgICBpZiAodXJsICYmIHVybC5zdGFydHNXaXRoKCcvJykgJiYgIWRpc2FibGVMb2NhbFN0b3JhZ2UpIHtcbiAgICAgICAgY29uc3QgZmlsZVBhdGggPSBgJHtzdGF0aWNQYXRofS8ke2ZpbGVuYW1lfWBcbiAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBnZXRGaWxlQnlQYXRoKGZpbGVQYXRoKVxuICAgICAgICBmaWxlID0gcmVzcG9uc2VcbiAgICAgICAgb3ZlcndyaXRlRXhpc3RpbmdGaWxlcyA9IHRydWVcbiAgICAgIH0gZWxzZSBpZiAoZmlsZW5hbWUgJiYgdXJsKSB7XG4gICAgICAgIGZpbGUgPSBhd2FpdCBnZXRFeHRlcm5hbEZpbGUoeyBkYXRhOiBkYXRhIGFzIEZpbGVEYXRhLCByZXEgfSlcbiAgICAgICAgb3ZlcndyaXRlRXhpc3RpbmdGaWxlcyA9IHRydWVcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIHRocm93IG5ldyBGaWxlVXBsb2FkRXJyb3IocmVxLnQpXG4gICAgfVxuICB9XG5cbiAgaWYgKCFmaWxlKSB7XG4gICAgaWYgKHRocm93T25NaXNzaW5nRmlsZSkgdGhyb3cgbmV3IE1pc3NpbmdGaWxlKHJlcS50KVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIGRhdGEsXG4gICAgICBmaWxlczogW10sXG4gICAgfVxuICB9XG5cbiAgaWYgKCFkaXNhYmxlTG9jYWxTdG9yYWdlKSB7XG4gICAgbWtkaXJwLnN5bmMoc3RhdGljUGF0aClcbiAgfVxuXG4gIGxldCBuZXdEYXRhID0gZGF0YVxuICBjb25zdCBmaWxlc1RvU2F2ZTogRmlsZVRvU2F2ZVtdID0gW11cbiAgY29uc3QgZmlsZURhdGE6IFBhcnRpYWw8RmlsZURhdGE+ID0ge31cbiAgY29uc3QgZmlsZUlzQW5pbWF0ZWQgPSBmaWxlLm1pbWV0eXBlID09PSAnaW1hZ2UvZ2lmJyB8fCBmaWxlLm1pbWV0eXBlID09PSAnaW1hZ2Uvd2VicCdcbiAgY29uc3QgY3JvcERhdGEgPVxuICAgIHR5cGVvZiB1cGxvYWRFZGl0cyA9PT0gJ29iamVjdCcgJiYgJ2Nyb3AnIGluIHVwbG9hZEVkaXRzID8gdXBsb2FkRWRpdHMuY3JvcCA6IHVuZGVmaW5lZFxuXG4gIHRyeSB7XG4gICAgY29uc3QgZmlsZVN1cHBvcnRzUmVzaXplID0gY2FuUmVzaXplSW1hZ2UoZmlsZS5taW1ldHlwZSlcbiAgICBsZXQgZnNTYWZlTmFtZTogc3RyaW5nXG4gICAgbGV0IHNoYXJwRmlsZTogU2hhcnAgfCB1bmRlZmluZWRcbiAgICBsZXQgZGltZW5zaW9uczogUHJvYmVkSW1hZ2VTaXplIHwgdW5kZWZpbmVkXG4gICAgbGV0IGZpbGVCdWZmZXI6IHsgZGF0YTogQnVmZmVyOyBpbmZvOiBPdXRwdXRJbmZvIH1cbiAgICBsZXQgZXh0XG4gICAgbGV0IG1pbWU6IHN0cmluZ1xuICAgIGNvbnN0IGZpbGVIYXNBZGp1c3RtZW50cyA9XG4gICAgICBmaWxlU3VwcG9ydHNSZXNpemUgJiZcbiAgICAgIEJvb2xlYW4ocmVzaXplT3B0aW9ucyB8fCBmb3JtYXRPcHRpb25zIHx8IHRyaW1PcHRpb25zIHx8IGZpbGUudGVtcEZpbGVQYXRoKVxuXG4gICAgY29uc3Qgc2hhcnBPcHRpb25zOiBTaGFycE9wdGlvbnMgPSB7fVxuXG4gICAgaWYgKGZpbGVJc0FuaW1hdGVkKSBzaGFycE9wdGlvbnMuYW5pbWF0ZWQgPSB0cnVlXG5cbiAgICBpZiAoZmlsZUhhc0FkanVzdG1lbnRzKSB7XG4gICAgICBpZiAoZmlsZS50ZW1wRmlsZVBhdGgpIHtcbiAgICAgICAgc2hhcnBGaWxlID0gc2hhcnAoZmlsZS50ZW1wRmlsZVBhdGgsIHNoYXJwT3B0aW9ucykucm90YXRlKCkgLy8gcGFzcyByb3RhdGUoKSB0byBhdXRvLXJvdGF0ZSBiYXNlZCBvbiBFWElGIGRhdGEuIGh0dHBzOi8vZ2l0aHViLmNvbS9wYXlsb2FkY21zL3BheWxvYWQvcHVsbC8zMDgxXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzaGFycEZpbGUgPSBzaGFycChmaWxlLmRhdGEsIHNoYXJwT3B0aW9ucykucm90YXRlKCkgLy8gcGFzcyByb3RhdGUoKSB0byBhdXRvLXJvdGF0ZSBiYXNlZCBvbiBFWElGIGRhdGEuIGh0dHBzOi8vZ2l0aHViLmNvbS9wYXlsb2FkY21zL3BheWxvYWQvcHVsbC8zMDgxXG4gICAgICB9XG5cbiAgICAgIGlmIChyZXNpemVPcHRpb25zKSB7XG4gICAgICAgIHNoYXJwRmlsZSA9IHNoYXJwRmlsZS5yZXNpemUocmVzaXplT3B0aW9ucylcbiAgICAgIH1cbiAgICAgIGlmIChmb3JtYXRPcHRpb25zKSB7XG4gICAgICAgIHNoYXJwRmlsZSA9IHNoYXJwRmlsZS50b0Zvcm1hdChmb3JtYXRPcHRpb25zLmZvcm1hdCwgZm9ybWF0T3B0aW9ucy5vcHRpb25zKVxuICAgICAgfVxuICAgICAgaWYgKHRyaW1PcHRpb25zKSB7XG4gICAgICAgIHNoYXJwRmlsZSA9IHNoYXJwRmlsZS50cmltKHRyaW1PcHRpb25zKVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChpc0ltYWdlKGZpbGUubWltZXR5cGUpKSB7XG4gICAgICBkaW1lbnNpb25zID0gYXdhaXQgZ2V0SW1hZ2VTaXplKGZpbGUpXG4gICAgICBmaWxlRGF0YS53aWR0aCA9IGRpbWVuc2lvbnMud2lkdGhcbiAgICAgIGZpbGVEYXRhLmhlaWdodCA9IGRpbWVuc2lvbnMuaGVpZ2h0XG4gICAgfVxuXG4gICAgaWYgKHNoYXJwRmlsZSkge1xuICAgICAgY29uc3QgbWV0YWRhdGEgPSBhd2FpdCBzaGFycEZpbGUubWV0YWRhdGEoKVxuICAgICAgZmlsZUJ1ZmZlciA9IGF3YWl0IHNoYXJwRmlsZS50b0J1ZmZlcih7IHJlc29sdmVXaXRoT2JqZWN0OiB0cnVlIH0pXG4gICAgICA7KHsgZXh0LCBtaW1lIH0gPSBhd2FpdCBmcm9tQnVmZmVyKGZpbGVCdWZmZXIuZGF0YSkpIC8vIFRoaXMgaXMgZ2V0dGluZyBhbiBpbmNvcnJlY3QgZ2lmIGhlaWdodCBiYWNrLlxuICAgICAgZmlsZURhdGEud2lkdGggPSBmaWxlQnVmZmVyLmluZm8ud2lkdGhcbiAgICAgIGZpbGVEYXRhLmhlaWdodCA9IGZpbGVCdWZmZXIuaW5mby5oZWlnaHRcbiAgICAgIGZpbGVEYXRhLmZpbGVzaXplID0gZmlsZUJ1ZmZlci5pbmZvLnNpemVcblxuICAgICAgLy8gQW5pbWF0ZWQgR0lGcyArIFdlYlAgYWdncmVnYXRlIHRoZSBoZWlnaHQgZnJvbSBldmVyeSBmcmFtZSwgc28gd2UgbmVlZCB0byB1c2UgZGl2aWRlIGJ5IG51bWJlciBvZiBwYWdlc1xuICAgICAgaWYgKG1ldGFkYXRhLnBhZ2VzKSB7XG4gICAgICAgIGZpbGVEYXRhLmhlaWdodCA9IGZpbGVCdWZmZXIuaW5mby5oZWlnaHQgLyBtZXRhZGF0YS5wYWdlc1xuICAgICAgICBmaWxlRGF0YS5maWxlc2l6ZSA9IGZpbGVCdWZmZXIuZGF0YS5sZW5ndGhcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgbWltZSA9IGZpbGUubWltZXR5cGVcbiAgICAgIGZpbGVEYXRhLmZpbGVzaXplID0gZmlsZS5zaXplXG5cbiAgICAgIGlmIChmaWxlLm5hbWUuaW5jbHVkZXMoJy4nKSkge1xuICAgICAgICBleHQgPSBmaWxlLm5hbWUuc3BsaXQoJy4nKS5wb3AoKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZXh0ID0gJydcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBZHVzdCBTVkcgbWltZSB0eXBlLiBmcm9tQnVmZmVyIG1vZGlmaWVzIGl0LlxuICAgIGlmIChtaW1lID09PSAnYXBwbGljYXRpb24veG1sJyAmJiBleHQgPT09ICdzdmcnKSBtaW1lID0gJ2ltYWdlL3N2Zyt4bWwnXG4gICAgZmlsZURhdGEubWltZVR5cGUgPSBtaW1lXG5cbiAgICBjb25zdCBiYXNlRmlsZW5hbWUgPSBzYW5pdGl6ZShmaWxlLm5hbWUuc3Vic3RyaW5nKDAsIGZpbGUubmFtZS5sYXN0SW5kZXhPZignLicpKSB8fCBmaWxlLm5hbWUpXG4gICAgZnNTYWZlTmFtZSA9IGAke2Jhc2VGaWxlbmFtZX0ke2V4dCA/IGAuJHtleHR9YCA6ICcnfWBcblxuICAgIGlmICghb3ZlcndyaXRlRXhpc3RpbmdGaWxlcykge1xuICAgICAgZnNTYWZlTmFtZSA9IGF3YWl0IGdldFNhZmVGaWxlTmFtZSh7XG4gICAgICAgIGNvbGxlY3Rpb25TbHVnOiBjb2xsZWN0aW9uQ29uZmlnLnNsdWcsXG4gICAgICAgIGRlc2lyZWRGaWxlbmFtZTogZnNTYWZlTmFtZSxcbiAgICAgICAgcmVxLFxuICAgICAgICBzdGF0aWNQYXRoLFxuICAgICAgfSlcbiAgICB9XG5cbiAgICBmaWxlRGF0YS5maWxlbmFtZSA9IGZzU2FmZU5hbWVcbiAgICBsZXQgZmlsZUZvclJlc2l6ZSA9IGZpbGVcblxuICAgIGlmIChjcm9wRGF0YSkge1xuICAgICAgY29uc3QgeyBkYXRhOiBjcm9wcGVkSW1hZ2UsIGluZm8gfSA9IGF3YWl0IGNyb3BJbWFnZSh7IGNyb3BEYXRhLCBkaW1lbnNpb25zLCBmaWxlIH0pXG5cbiAgICAgIGZpbGVzVG9TYXZlLnB1c2goe1xuICAgICAgICBidWZmZXI6IGNyb3BwZWRJbWFnZSxcbiAgICAgICAgcGF0aDogYCR7c3RhdGljUGF0aH0vJHtmc1NhZmVOYW1lfWAsXG4gICAgICB9KVxuXG4gICAgICBmaWxlRm9yUmVzaXplID0ge1xuICAgICAgICAuLi5maWxlLFxuICAgICAgICBkYXRhOiBjcm9wcGVkSW1hZ2UsXG4gICAgICAgIHNpemU6IGluZm8uc2l6ZSxcbiAgICAgIH1cbiAgICAgIGZpbGVEYXRhLndpZHRoID0gaW5mby53aWR0aFxuICAgICAgZmlsZURhdGEuaGVpZ2h0ID0gaW5mby5oZWlnaHRcbiAgICAgIGZpbGVEYXRhLmZpbGVzaXplID0gaW5mby5zaXplXG5cbiAgICAgIGlmIChmaWxlLnRlbXBGaWxlUGF0aCkge1xuICAgICAgICBhd2FpdCBmcy5wcm9taXNlcy53cml0ZUZpbGUoZmlsZS50ZW1wRmlsZVBhdGgsIGNyb3BwZWRJbWFnZSkgLy8gd3JpdGUgZmlsZUJ1ZmZlciB0byB0aGUgdGVtcCBwYXRoXG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXEuZmlsZSA9IGZpbGVGb3JSZXNpemVcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgZmlsZXNUb1NhdmUucHVzaCh7XG4gICAgICAgIGJ1ZmZlcjogZmlsZUJ1ZmZlcj8uZGF0YSB8fCBmaWxlLmRhdGEsXG4gICAgICAgIHBhdGg6IGAke3N0YXRpY1BhdGh9LyR7ZnNTYWZlTmFtZX1gLFxuICAgICAgfSlcblxuICAgICAgLy8gSWYgdXNpbmcgdGVtcCBmaWxlcyBhbmQgdGhlIGltYWdlIGlzIGJlaW5nIHJlc2l6ZWQsIHdyaXRlIHRoZSBmaWxlIHRvIHRoZSB0ZW1wIHBhdGhcbiAgICAgIGlmIChmaWxlQnVmZmVyPy5kYXRhIHx8IGZpbGUuZGF0YS5sZW5ndGggPiAwKSB7XG4gICAgICAgIGlmIChmaWxlLnRlbXBGaWxlUGF0aCkge1xuICAgICAgICAgIGF3YWl0IGZzLnByb21pc2VzLndyaXRlRmlsZShmaWxlLnRlbXBGaWxlUGF0aCwgZmlsZUJ1ZmZlcj8uZGF0YSB8fCBmaWxlLmRhdGEpIC8vIHdyaXRlIGZpbGVCdWZmZXIgdG8gdGhlIHRlbXAgcGF0aFxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIEFzc2lnbiB0aGUgX3Bvc3NpYmx5IG1vZGlmaWVkXyBmaWxlIHRvIHRoZSByZXF1ZXN0IG9iamVjdFxuICAgICAgICAgIHJlcS5maWxlID0ge1xuICAgICAgICAgICAgLi4uZmlsZSxcbiAgICAgICAgICAgIGRhdGE6IGZpbGVCdWZmZXI/LmRhdGEgfHwgZmlsZS5kYXRhLFxuICAgICAgICAgICAgc2l6ZTogZmlsZUJ1ZmZlcj8uaW5mby5zaXplLFxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChBcnJheS5pc0FycmF5KGltYWdlU2l6ZXMpICYmIGZpbGVTdXBwb3J0c1Jlc2l6ZSkge1xuICAgICAgcmVxLnBheWxvYWRVcGxvYWRTaXplcyA9IHt9XG4gICAgICBjb25zdCB7IHNpemVEYXRhLCBzaXplc1RvU2F2ZSB9ID0gYXdhaXQgcmVzaXplQW5kVHJhbnNmb3JtSW1hZ2VTaXplcyh7XG4gICAgICAgIGNvbmZpZzogY29sbGVjdGlvbkNvbmZpZyxcbiAgICAgICAgZGltZW5zaW9uczogIWNyb3BEYXRhXG4gICAgICAgICAgPyBkaW1lbnNpb25zXG4gICAgICAgICAgOiB7XG4gICAgICAgICAgICAgIC4uLmRpbWVuc2lvbnMsXG4gICAgICAgICAgICAgIGhlaWdodDogZmlsZURhdGEuaGVpZ2h0LFxuICAgICAgICAgICAgICB3aWR0aDogZmlsZURhdGEud2lkdGgsXG4gICAgICAgICAgICB9LFxuICAgICAgICBmaWxlOiBmaWxlRm9yUmVzaXplLFxuICAgICAgICBtaW1lVHlwZTogZmlsZURhdGEubWltZVR5cGUsXG4gICAgICAgIHJlcSxcbiAgICAgICAgc2F2ZWRGaWxlbmFtZTogZnNTYWZlTmFtZSB8fCBmaWxlLm5hbWUsXG4gICAgICAgIHN0YXRpY1BhdGgsXG4gICAgICB9KVxuXG4gICAgICBmaWxlRGF0YS5zaXplcyA9IHNpemVEYXRhXG4gICAgICBmaWxlc1RvU2F2ZS5wdXNoKC4uLnNpemVzVG9TYXZlKVxuICAgIH1cbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgY29uc29sZS5lcnJvcihlcnIpXG4gICAgdGhyb3cgbmV3IEZpbGVVcGxvYWRFcnJvcihyZXEudClcbiAgfVxuXG4gIG5ld0RhdGEgPSB7XG4gICAgLi4ubmV3RGF0YSxcbiAgICAuLi5maWxlRGF0YSxcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgZGF0YTogbmV3RGF0YSxcbiAgICBmaWxlczogZmlsZXNUb1NhdmUsXG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJnZW5lcmF0ZUZpbGVEYXRhIiwiY29sbGVjdGlvbiIsImNvbmZpZyIsImNvbGxlY3Rpb25Db25maWciLCJkYXRhIiwib3ZlcndyaXRlRXhpc3RpbmdGaWxlcyIsInJlcSIsInRocm93T25NaXNzaW5nRmlsZSIsInVwbG9hZCIsImZpbGVzIiwiZmlsZSIsInNlYXJjaFBhcmFtcyIsInVwbG9hZEVkaXRzIiwiZ2V0IiwiZGlzYWJsZUxvY2FsU3RvcmFnZSIsImZvcm1hdE9wdGlvbnMiLCJpbWFnZVNpemVzIiwicmVzaXplT3B0aW9ucyIsInN0YXRpY0RpciIsInRyaW1PcHRpb25zIiwic3RhdGljUGF0aCIsImZpbGVuYW1lIiwidXJsIiwic3RhcnRzV2l0aCIsImZpbGVQYXRoIiwicmVzcG9uc2UiLCJnZXRGaWxlQnlQYXRoIiwiZ2V0RXh0ZXJuYWxGaWxlIiwiZXJyIiwiRmlsZVVwbG9hZEVycm9yIiwidCIsIk1pc3NpbmdGaWxlIiwibWtkaXJwIiwic3luYyIsIm5ld0RhdGEiLCJmaWxlc1RvU2F2ZSIsImZpbGVEYXRhIiwiZmlsZUlzQW5pbWF0ZWQiLCJtaW1ldHlwZSIsImNyb3BEYXRhIiwiY3JvcCIsInVuZGVmaW5lZCIsImZpbGVTdXBwb3J0c1Jlc2l6ZSIsImNhblJlc2l6ZUltYWdlIiwiZnNTYWZlTmFtZSIsInNoYXJwRmlsZSIsImRpbWVuc2lvbnMiLCJmaWxlQnVmZmVyIiwiZXh0IiwibWltZSIsImZpbGVIYXNBZGp1c3RtZW50cyIsIkJvb2xlYW4iLCJ0ZW1wRmlsZVBhdGgiLCJzaGFycE9wdGlvbnMiLCJhbmltYXRlZCIsInNoYXJwIiwicm90YXRlIiwicmVzaXplIiwidG9Gb3JtYXQiLCJmb3JtYXQiLCJvcHRpb25zIiwidHJpbSIsImlzSW1hZ2UiLCJnZXRJbWFnZVNpemUiLCJ3aWR0aCIsImhlaWdodCIsIm1ldGFkYXRhIiwidG9CdWZmZXIiLCJyZXNvbHZlV2l0aE9iamVjdCIsImZyb21CdWZmZXIiLCJpbmZvIiwiZmlsZXNpemUiLCJzaXplIiwicGFnZXMiLCJsZW5ndGgiLCJuYW1lIiwiaW5jbHVkZXMiLCJzcGxpdCIsInBvcCIsIm1pbWVUeXBlIiwiYmFzZUZpbGVuYW1lIiwic2FuaXRpemUiLCJzdWJzdHJpbmciLCJsYXN0SW5kZXhPZiIsImdldFNhZmVGaWxlTmFtZSIsImNvbGxlY3Rpb25TbHVnIiwic2x1ZyIsImRlc2lyZWRGaWxlbmFtZSIsImZpbGVGb3JSZXNpemUiLCJjcm9wcGVkSW1hZ2UiLCJjcm9wSW1hZ2UiLCJwdXNoIiwiYnVmZmVyIiwicGF0aCIsImZzIiwicHJvbWlzZXMiLCJ3cml0ZUZpbGUiLCJBcnJheSIsImlzQXJyYXkiLCJwYXlsb2FkVXBsb2FkU2l6ZXMiLCJzaXplRGF0YSIsInNpemVzVG9TYXZlIiwicmVzaXplQW5kVHJhbnNmb3JtSW1hZ2VTaXplcyIsInNhdmVkRmlsZW5hbWUiLCJzaXplcyIsImNvbnNvbGUiLCJlcnJvciJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFxQ2FBOzs7ZUFBQUE7OzswQkFuQ2M7MkRBQ1o7K0RBQ0k7eUVBQ0U7OERBQ0g7d0JBTzJCO3VFQUNsQjtrRUFDTDtpQ0FDVTtzRUFDTjtxRUFDRDt3RUFDRztxRUFDYTtnRUFDckI7Ozs7OztBQWdCYixNQUFNQSxtQkFBbUIsT0FBVSxFQUN4Q0MsWUFBWSxFQUFFQyxRQUFRQyxnQkFBZ0IsRUFBRSxFQUN4Q0MsSUFBSSxFQUNKQyxzQkFBc0IsRUFDdEJDLEdBQUcsRUFDSEMsa0JBQWtCLEVBQ1Y7SUFDUixJQUFJLENBQUNKLGlCQUFpQkssTUFBTSxFQUFFO1FBQzVCLE9BQU87WUFDTEo7WUFDQUssT0FBTyxFQUFFO1FBQ1g7SUFDRjtJQUVBLElBQUlDLE9BQU9KLElBQUlJLElBQUk7SUFFbkIsTUFBTSxFQUFFQyxZQUFZLEVBQUUsR0FBR0w7SUFDekIsTUFBTU0sY0FBY0QsYUFBYUUsR0FBRyxDQUFDLGtCQUFrQixDQUFDO0lBRXhELE1BQU0sRUFBRUMsbUJBQW1CLEVBQUVDLGFBQWEsRUFBRUMsVUFBVSxFQUFFQyxhQUFhLEVBQUVDLFNBQVMsRUFBRUMsV0FBVyxFQUFFLEdBQzdGaEIsaUJBQWlCSyxNQUFNO0lBRXpCLE1BQU1ZLGFBQWFGO0lBRW5CLElBQUksQ0FBQ1IsUUFBUUUsZUFBZVIsTUFBTTtRQUNoQyxNQUFN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
|
|
213
|
+
//# sourceMappingURL=generateFileData.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/uploads/generateFileData.ts"],"sourcesContent":["import type { OutputInfo, Sharp, SharpOptions } from 'sharp'\n\nimport fileType from 'file-type'\nconst { fromBuffer } = fileType\nimport fs from 'fs'\nimport mkdirp from 'mkdirp'\nimport sanitize from 'sanitize-filename'\n\nimport type { Collection } from '../collections/config/types.js'\nimport type { SanitizedConfig } from '../config/types.js'\nimport type { PayloadRequestWithData } from '../types/index.js'\nimport type { FileData, FileToSave, ProbedImageSize } from './types.js'\n\nimport { FileRetrievalError, FileUploadError, MissingFile } from '../errors/index.js'\nimport canResizeImage from './canResizeImage.js'\nimport cropImage from './cropImage.js'\nimport { getExternalFile } from './getExternalFile.js'\nimport { getFileByPath } from './getFileByPath.js'\nimport { getImageSize } from './getImageSize.js'\nimport getSafeFileName from './getSafeFilename.js'\nimport resizeAndTransformImageSizes from './imageResizer.js'\nimport isImage from './isImage.js'\n\ntype Args<T> = {\n collection: Collection\n config: SanitizedConfig\n data: T\n overwriteExistingFiles?: boolean\n req: PayloadRequestWithData\n throwOnMissingFile?: boolean\n}\n\ntype Result<T> = Promise<{\n data: T\n files: FileToSave[]\n}>\n\nexport const generateFileData = async <T>({\n collection: { config: collectionConfig },\n data,\n overwriteExistingFiles,\n req,\n throwOnMissingFile,\n}: Args<T>): Result<T> => {\n if (!collectionConfig.upload) {\n return {\n data,\n files: [],\n }\n }\n\n const { sharp } = req.payload.config\n\n let file = req.file\n\n const uploadEdits = req.query['uploadEdits'] || {}\n\n const { disableLocalStorage, formatOptions, imageSizes, resizeOptions, staticDir, trimOptions } =\n collectionConfig.upload\n\n const staticPath = staticDir\n\n if (!file && uploadEdits && data) {\n const { filename, url } = data as FileData\n\n try {\n if (url && url.startsWith('/') && !disableLocalStorage) {\n const filePath = `${staticPath}/${filename}`\n const response = await getFileByPath(filePath)\n file = response\n overwriteExistingFiles = true\n } else if (filename && url) {\n file = await getExternalFile({\n data: data as FileData,\n req,\n uploadConfig: collectionConfig.upload,\n })\n overwriteExistingFiles = true\n }\n } catch (err: unknown) {\n throw new FileRetrievalError(req.t, err instanceof Error ? err.message : undefined)\n }\n }\n\n if (!file) {\n if (throwOnMissingFile) throw new MissingFile(req.t)\n\n return {\n data,\n files: [],\n }\n }\n\n if (!disableLocalStorage) {\n mkdirp.sync(staticPath)\n }\n\n let newData = data\n const filesToSave: FileToSave[] = []\n const fileData: Partial<FileData> = {}\n const fileIsAnimated = file.mimetype === 'image/gif' || file.mimetype === 'image/webp'\n const cropData =\n typeof uploadEdits === 'object' && 'crop' in uploadEdits ? uploadEdits.crop : undefined\n\n try {\n const fileSupportsResize = canResizeImage(file.mimetype)\n let fsSafeName: string\n let sharpFile: Sharp | undefined\n let dimensions: ProbedImageSize | undefined\n let fileBuffer: { data: Buffer; info: OutputInfo }\n let ext\n let mime: string\n const fileHasAdjustments =\n fileSupportsResize &&\n Boolean(resizeOptions || formatOptions || trimOptions || file.tempFilePath)\n\n const sharpOptions: SharpOptions = {}\n\n if (fileIsAnimated) sharpOptions.animated = true\n\n if (fileHasAdjustments && sharp) {\n if (file.tempFilePath) {\n sharpFile = sharp(file.tempFilePath, sharpOptions).rotate() // pass rotate() to auto-rotate based on EXIF data. https://github.com/payloadcms/payload/pull/3081\n } else {\n sharpFile = sharp(file.data, sharpOptions).rotate() // pass rotate() to auto-rotate based on EXIF data. https://github.com/payloadcms/payload/pull/3081\n }\n\n if (resizeOptions) {\n sharpFile = sharpFile.resize(resizeOptions)\n }\n if (formatOptions) {\n sharpFile = sharpFile.toFormat(formatOptions.format, formatOptions.options)\n }\n if (trimOptions) {\n sharpFile = sharpFile.trim(trimOptions)\n }\n }\n\n if (fileSupportsResize || isImage(file.mimetype)) {\n dimensions = await getImageSize(file)\n fileData.width = dimensions.width\n fileData.height = dimensions.height\n }\n\n if (sharpFile) {\n const metadata = await sharpFile.metadata()\n fileBuffer = await sharpFile.toBuffer({ resolveWithObject: true })\n ;({ ext, mime } = await fromBuffer(fileBuffer.data)) // This is getting an incorrect gif height back.\n fileData.width = fileBuffer.info.width\n fileData.height = fileBuffer.info.height\n fileData.filesize = fileBuffer.info.size\n\n // Animated GIFs + WebP aggregate the height from every frame, so we need to use divide by number of pages\n if (metadata.pages) {\n fileData.height = fileBuffer.info.height / metadata.pages\n fileData.filesize = fileBuffer.data.length\n }\n } else {\n mime = file.mimetype\n fileData.filesize = file.size\n\n if (file.name.includes('.')) {\n ext = file.name.split('.').pop()\n } else {\n ext = ''\n }\n }\n\n // Adust SVG mime type. fromBuffer modifies it.\n if (mime === 'application/xml' && ext === 'svg') mime = 'image/svg+xml'\n fileData.mimeType = mime\n\n const baseFilename = sanitize(file.name.substring(0, file.name.lastIndexOf('.')) || file.name)\n fsSafeName = `${baseFilename}${ext ? `.${ext}` : ''}`\n\n if (!overwriteExistingFiles) {\n fsSafeName = await getSafeFileName({\n collectionSlug: collectionConfig.slug,\n desiredFilename: fsSafeName,\n req,\n staticPath,\n })\n }\n\n fileData.filename = fsSafeName\n let fileForResize = file\n\n if (cropData && sharp) {\n const { data: croppedImage, info } = await cropImage({ cropData, dimensions, file, sharp })\n\n filesToSave.push({\n buffer: croppedImage,\n path: `${staticPath}/${fsSafeName}`,\n })\n\n fileForResize = {\n ...file,\n data: croppedImage,\n size: info.size,\n }\n fileData.width = info.width\n fileData.height = info.height\n fileData.filesize = info.size\n\n if (file.tempFilePath) {\n await fs.promises.writeFile(file.tempFilePath, croppedImage) // write fileBuffer to the temp path\n } else {\n req.file = fileForResize\n }\n } else {\n filesToSave.push({\n buffer: fileBuffer?.data || file.data,\n path: `${staticPath}/${fsSafeName}`,\n })\n\n // If using temp files and the image is being resized, write the file to the temp path\n if (fileBuffer?.data || file.data.length > 0) {\n if (file.tempFilePath) {\n await fs.promises.writeFile(file.tempFilePath, fileBuffer?.data || file.data) // write fileBuffer to the temp path\n } else {\n // Assign the _possibly modified_ file to the request object\n req.file = {\n ...file,\n data: fileBuffer?.data || file.data,\n size: fileBuffer?.info.size,\n }\n }\n }\n }\n\n if (Array.isArray(imageSizes) && fileSupportsResize && sharp) {\n req.payloadUploadSizes = {}\n const { sizeData, sizesToSave } = await resizeAndTransformImageSizes({\n config: collectionConfig,\n dimensions: !cropData\n ? dimensions\n : {\n ...dimensions,\n height: fileData.height,\n width: fileData.width,\n },\n file: fileForResize,\n mimeType: fileData.mimeType,\n req,\n savedFilename: fsSafeName || file.name,\n sharp,\n staticPath,\n })\n\n fileData.sizes = sizeData\n filesToSave.push(...sizesToSave)\n }\n } catch (err) {\n console.error(err)\n throw new FileUploadError(req.t)\n }\n\n newData = {\n ...newData,\n ...fileData,\n }\n\n return {\n data: newData,\n files: filesToSave,\n }\n}\n"],"names":["fileType","fromBuffer","fs","mkdirp","sanitize","FileRetrievalError","FileUploadError","MissingFile","canResizeImage","cropImage","getExternalFile","getFileByPath","getImageSize","getSafeFileName","resizeAndTransformImageSizes","isImage","generateFileData","collection","config","collectionConfig","data","overwriteExistingFiles","req","throwOnMissingFile","upload","files","sharp","payload","file","uploadEdits","query","disableLocalStorage","formatOptions","imageSizes","resizeOptions","staticDir","trimOptions","staticPath","filename","url","startsWith","filePath","response","uploadConfig","err","t","Error","message","undefined","sync","newData","filesToSave","fileData","fileIsAnimated","mimetype","cropData","crop","fileSupportsResize","fsSafeName","sharpFile","dimensions","fileBuffer","ext","mime","fileHasAdjustments","Boolean","tempFilePath","sharpOptions","animated","rotate","resize","toFormat","format","options","trim","width","height","metadata","toBuffer","resolveWithObject","info","filesize","size","pages","length","name","includes","split","pop","mimeType","baseFilename","substring","lastIndexOf","collectionSlug","slug","desiredFilename","fileForResize","croppedImage","push","buffer","path","promises","writeFile","Array","isArray","payloadUploadSizes","sizeData","sizesToSave","savedFilename","sizes","console","error"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import type { CollectionConfig } from '../collections/config/types';
|
|
2
|
-
import type { Config } from '../config/types';
|
|
3
|
-
import type { Field } from '../fields/config/types';
|
|
1
|
+
import type { CollectionConfig } from '../collections/config/types.js';
|
|
2
|
+
import type { Config } from '../config/types.js';
|
|
3
|
+
import type { Field } from '../fields/config/types.js';
|
|
4
4
|
type Options = {
|
|
5
5
|
collection: CollectionConfig;
|
|
6
6
|
config: Config;
|
|
7
7
|
};
|
|
8
|
-
declare const getBaseUploadFields: ({ collection, config }: Options) => Field[];
|
|
9
|
-
export
|
|
8
|
+
export declare const getBaseUploadFields: ({ collection, config }: Options) => Field[];
|
|
9
|
+
export {};
|
|
10
10
|
//# sourceMappingURL=getBaseFields.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getBaseFields.d.ts","sourceRoot":"","sources":["../../src/uploads/getBaseFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"getBaseFields.d.ts","sourceRoot":"","sources":["../../src/uploads/getBaseFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACtE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAA;AAiBtD,KAAK,OAAO,GAAG;IACb,UAAU,EAAE,gBAAgB,CAAA;IAC5B,MAAM,EAAE,MAAM,CAAA;CACf,CAAA;AAED,eAAO,MAAM,mBAAmB,2BAA4B,OAAO,KAAG,KAAK,EA+K1E,CAAA"}
|
|
@@ -1,23 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
}
|
|
5
|
-
Object.defineProperty(exports, "default", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return _default;
|
|
1
|
+
import { mimeTypeValidator } from './mimeTypeValidator.js';
|
|
2
|
+
const generateURL = ({ collectionSlug, config, filename })=>{
|
|
3
|
+
if (filename) {
|
|
4
|
+
return `${config.serverURL || ''}${config.routes.api || ''}/${collectionSlug}/file/${filename}`;
|
|
9
5
|
}
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
const
|
|
13
|
-
const labels = (0, _extractTranslations.extractTranslations)([
|
|
14
|
-
'upload:width',
|
|
15
|
-
'upload:height',
|
|
16
|
-
'upload:fileSize',
|
|
17
|
-
'upload:fileName',
|
|
18
|
-
'upload:sizes'
|
|
19
|
-
]);
|
|
20
|
-
const getBaseUploadFields = ({ collection, config })=>{
|
|
6
|
+
return undefined;
|
|
7
|
+
};
|
|
8
|
+
export const getBaseUploadFields = ({ collection, config })=>{
|
|
21
9
|
const uploadOptions = typeof collection.upload === 'object' ? collection.upload : {};
|
|
22
10
|
const mimeType = {
|
|
23
11
|
name: 'mimeType',
|
|
@@ -28,14 +16,34 @@ const getBaseUploadFields = ({ collection, config })=>{
|
|
|
28
16
|
},
|
|
29
17
|
label: 'MIME Type'
|
|
30
18
|
};
|
|
31
|
-
const
|
|
32
|
-
name: '
|
|
19
|
+
const thumbnailURL = {
|
|
20
|
+
name: 'thumbnailURL',
|
|
33
21
|
type: 'text',
|
|
34
22
|
admin: {
|
|
35
23
|
hidden: true,
|
|
36
24
|
readOnly: true
|
|
37
25
|
},
|
|
38
|
-
|
|
26
|
+
hooks: {
|
|
27
|
+
afterRead: [
|
|
28
|
+
({ originalDoc })=>{
|
|
29
|
+
const adminThumbnail = typeof collection.upload !== 'boolean' ? collection.upload?.adminThumbnail : undefined;
|
|
30
|
+
if (typeof adminThumbnail === 'function') {
|
|
31
|
+
return adminThumbnail({
|
|
32
|
+
doc: originalDoc
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
if (typeof adminThumbnail === 'string' && 'sizes' in originalDoc && originalDoc.sizes?.[adminThumbnail]?.filename) {
|
|
36
|
+
return generateURL({
|
|
37
|
+
collectionSlug: collection.slug,
|
|
38
|
+
config,
|
|
39
|
+
filename: originalDoc.sizes?.[adminThumbnail].filename
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
return null;
|
|
43
|
+
}
|
|
44
|
+
]
|
|
45
|
+
},
|
|
46
|
+
label: 'Thumbnail URL'
|
|
39
47
|
};
|
|
40
48
|
const width = {
|
|
41
49
|
name: 'width',
|
|
@@ -44,7 +52,7 @@ const getBaseUploadFields = ({ collection, config })=>{
|
|
|
44
52
|
hidden: true,
|
|
45
53
|
readOnly: true
|
|
46
54
|
},
|
|
47
|
-
label:
|
|
55
|
+
label: ({ t })=>t('upload:width')
|
|
48
56
|
};
|
|
49
57
|
const height = {
|
|
50
58
|
name: 'height',
|
|
@@ -53,7 +61,7 @@ const getBaseUploadFields = ({ collection, config })=>{
|
|
|
53
61
|
hidden: true,
|
|
54
62
|
readOnly: true
|
|
55
63
|
},
|
|
56
|
-
label:
|
|
64
|
+
label: ({ t })=>t('upload:height')
|
|
57
65
|
};
|
|
58
66
|
const filesize = {
|
|
59
67
|
name: 'filesize',
|
|
@@ -62,7 +70,7 @@ const getBaseUploadFields = ({ collection, config })=>{
|
|
|
62
70
|
hidden: true,
|
|
63
71
|
readOnly: true
|
|
64
72
|
},
|
|
65
|
-
label:
|
|
73
|
+
label: ({ t })=>t('upload:fileSize')
|
|
66
74
|
};
|
|
67
75
|
const filename = {
|
|
68
76
|
name: 'filename',
|
|
@@ -73,23 +81,32 @@ const getBaseUploadFields = ({ collection, config })=>{
|
|
|
73
81
|
readOnly: true
|
|
74
82
|
},
|
|
75
83
|
index: true,
|
|
76
|
-
label:
|
|
84
|
+
label: ({ t })=>t('upload:fileName'),
|
|
77
85
|
unique: true
|
|
78
86
|
};
|
|
87
|
+
const url = {
|
|
88
|
+
name: 'url',
|
|
89
|
+
type: 'text',
|
|
90
|
+
admin: {
|
|
91
|
+
hidden: true,
|
|
92
|
+
readOnly: true
|
|
93
|
+
},
|
|
94
|
+
label: 'URL'
|
|
95
|
+
};
|
|
79
96
|
let uploadFields = [
|
|
80
97
|
{
|
|
81
98
|
...url,
|
|
82
99
|
hooks: {
|
|
83
100
|
afterRead: [
|
|
84
|
-
({ data })=>{
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
}
|
|
101
|
+
({ data })=>generateURL({
|
|
102
|
+
collectionSlug: collection.slug,
|
|
103
|
+
config,
|
|
104
|
+
filename: data?.filename
|
|
105
|
+
})
|
|
90
106
|
]
|
|
91
107
|
}
|
|
92
108
|
},
|
|
109
|
+
thumbnailURL,
|
|
93
110
|
filename,
|
|
94
111
|
mimeType,
|
|
95
112
|
filesize,
|
|
@@ -97,7 +114,7 @@ const getBaseUploadFields = ({ collection, config })=>{
|
|
|
97
114
|
height
|
|
98
115
|
];
|
|
99
116
|
if (uploadOptions.mimeTypes) {
|
|
100
|
-
mimeType.validate =
|
|
117
|
+
mimeType.validate = mimeTypeValidator(uploadOptions.mimeTypes);
|
|
101
118
|
}
|
|
102
119
|
if (uploadOptions.imageSizes) {
|
|
103
120
|
uploadFields = uploadFields.concat([
|
|
@@ -139,12 +156,11 @@ const getBaseUploadFields = ({ collection, config })=>{
|
|
|
139
156
|
],
|
|
140
157
|
label: size.name
|
|
141
158
|
})),
|
|
142
|
-
label:
|
|
159
|
+
label: ({ t })=>t('upload:Sizes')
|
|
143
160
|
}
|
|
144
161
|
]);
|
|
145
162
|
}
|
|
146
163
|
return uploadFields;
|
|
147
164
|
};
|
|
148
|
-
const _default = getBaseUploadFields;
|
|
149
165
|
|
|
150
|
-
//# sourceMappingURL=
|
|
166
|
+
//# sourceMappingURL=getBaseFields.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/uploads/getBaseFields.ts"],"sourcesContent":["import type { CollectionConfig } from '../collections/config/types.js'\nimport type { Config } from '../config/types.js'\nimport type { Field } from '../fields/config/types.js'\nimport type { UploadConfig } from './types.js'\n\nimport { mimeTypeValidator } from './mimeTypeValidator.js'\n\ntype GenerateURLArgs = {\n collectionSlug: string\n config: Config\n filename?: string\n}\nconst generateURL = ({ collectionSlug, config, filename }: GenerateURLArgs) => {\n if (filename) {\n return `${config.serverURL || ''}${config.routes.api || ''}/${collectionSlug}/file/${filename}`\n }\n return undefined\n}\n\ntype Options = {\n collection: CollectionConfig\n config: Config\n}\n\nexport const getBaseUploadFields = ({ collection, config }: Options): Field[] => {\n const uploadOptions: UploadConfig = typeof collection.upload === 'object' ? collection.upload : {}\n\n const mimeType: Field = {\n name: 'mimeType',\n type: 'text',\n admin: {\n hidden: true,\n readOnly: true,\n },\n label: 'MIME Type',\n }\n\n const thumbnailURL: Field = {\n name: 'thumbnailURL',\n type: 'text',\n admin: {\n hidden: true,\n readOnly: true,\n },\n hooks: {\n afterRead: [\n ({ originalDoc }) => {\n const adminThumbnail =\n typeof collection.upload !== 'boolean' ? collection.upload?.adminThumbnail : undefined\n\n if (typeof adminThumbnail === 'function') {\n return adminThumbnail({ doc: originalDoc })\n }\n\n if (\n typeof adminThumbnail === 'string' &&\n 'sizes' in originalDoc &&\n originalDoc.sizes?.[adminThumbnail]?.filename\n ) {\n return generateURL({\n collectionSlug: collection.slug,\n config,\n filename: originalDoc.sizes?.[adminThumbnail].filename as string,\n })\n }\n\n return null\n },\n ],\n },\n label: 'Thumbnail URL',\n }\n\n const width: Field = {\n name: 'width',\n type: 'number',\n admin: {\n hidden: true,\n readOnly: true,\n },\n label: ({ t }) => t('upload:width'),\n }\n\n const height: Field = {\n name: 'height',\n type: 'number',\n admin: {\n hidden: true,\n readOnly: true,\n },\n label: ({ t }) => t('upload:height'),\n }\n\n const filesize: Field = {\n name: 'filesize',\n type: 'number',\n admin: {\n hidden: true,\n readOnly: true,\n },\n label: ({ t }) => t('upload:fileSize'),\n }\n\n const filename: Field = {\n name: 'filename',\n type: 'text',\n admin: {\n disableBulkEdit: true,\n hidden: true,\n readOnly: true,\n },\n index: true,\n label: ({ t }) => t('upload:fileName'),\n unique: true,\n }\n\n const url: Field = {\n name: 'url',\n type: 'text',\n admin: {\n hidden: true,\n readOnly: true,\n },\n label: 'URL',\n }\n\n let uploadFields: Field[] = [\n {\n ...url,\n hooks: {\n afterRead: [\n ({ data }) =>\n generateURL({\n collectionSlug: collection.slug,\n config,\n filename: data?.filename,\n }),\n ],\n },\n },\n thumbnailURL,\n filename,\n mimeType,\n filesize,\n width,\n height,\n ]\n\n if (uploadOptions.mimeTypes) {\n mimeType.validate = mimeTypeValidator(uploadOptions.mimeTypes)\n }\n\n if (uploadOptions.imageSizes) {\n uploadFields = uploadFields.concat([\n {\n name: 'sizes',\n type: 'group',\n admin: {\n hidden: true,\n },\n fields: uploadOptions.imageSizes.map((size) => ({\n name: size.name,\n type: 'group',\n admin: {\n hidden: true,\n },\n fields: [\n {\n ...url,\n hooks: {\n afterRead: [\n ({ data }) => {\n const sizeFilename = data?.sizes?.[size.name]?.filename\n\n if (sizeFilename) {\n return `${config.serverURL}${config.routes.api}/${collection.slug}/file/${sizeFilename}`\n }\n\n return null\n },\n ],\n },\n },\n width,\n height,\n mimeType,\n filesize,\n {\n ...filename,\n unique: false,\n },\n ],\n label: size.name,\n })),\n label: ({ t }) => t('upload:Sizes'),\n },\n ])\n }\n return uploadFields\n}\n"],"names":["mimeTypeValidator","generateURL","collectionSlug","config","filename","serverURL","routes","api","undefined","getBaseUploadFields","collection","uploadOptions","upload","mimeType","name","type","admin","hidden","readOnly","label","thumbnailURL","hooks","afterRead","originalDoc","adminThumbnail","doc","sizes","slug","width","t","height","filesize","disableBulkEdit","index","unique","url","uploadFields","data","mimeTypes","validate","imageSizes","concat","fields","map","size","sizeFilename"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type { File, FileData } from './types';
|
|
1
|
+
import type { PayloadRequestWithData } from '../types/index.js';
|
|
2
|
+
import type { File, FileData, UploadConfig } from './types.js';
|
|
3
3
|
type Args = {
|
|
4
4
|
data: FileData;
|
|
5
|
-
req:
|
|
5
|
+
req: PayloadRequestWithData;
|
|
6
|
+
uploadConfig: UploadConfig;
|
|
6
7
|
};
|
|
7
|
-
export declare const getExternalFile: ({ data, req }: Args) => Promise<File>;
|
|
8
|
+
export declare const getExternalFile: ({ data, req, uploadConfig }: Args) => Promise<File>;
|
|
8
9
|
export {};
|
|
9
10
|
//# sourceMappingURL=getExternalFile.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getExternalFile.d.ts","sourceRoot":"","sources":["../../src/uploads/getExternalFile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"getExternalFile.d.ts","sourceRoot":"","sources":["../../src/uploads/getExternalFile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAA;AAC/D,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAI9D,KAAK,IAAI,GAAG;IACV,IAAI,EAAE,QAAQ,CAAA;IACd,GAAG,EAAE,sBAAsB,CAAA;IAC3B,YAAY,EAAE,YAAY,CAAA;CAC3B,CAAA;AACD,eAAO,MAAM,eAAe,gCAAuC,IAAI,KAAG,QAAQ,IAAI,CAiCrF,CAAA"}
|
|
@@ -1,27 +1,21 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "getExternalFile", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return getExternalFile;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
const _errors = require("../errors");
|
|
12
|
-
const getExternalFile = async ({ data, req })=>{
|
|
13
|
-
const baseUrl = req.origin || `${req.protocol}://${req.host}`;
|
|
1
|
+
import { APIError } from '../errors/index.js';
|
|
2
|
+
export const getExternalFile = async ({ data, req, uploadConfig })=>{
|
|
14
3
|
const { filename, url } = data;
|
|
15
4
|
if (typeof url === 'string') {
|
|
16
|
-
|
|
5
|
+
let fileURL = url;
|
|
6
|
+
if (!url.startsWith('http')) {
|
|
7
|
+
const baseUrl = req.headers.get('origin') || `${req.protocol}://${req.headers.get('host')}`;
|
|
8
|
+
fileURL = `${baseUrl}${url}`;
|
|
9
|
+
}
|
|
10
|
+
const headers = uploadConfig.externalFileHeaderFilter ? uploadConfig.externalFileHeaderFilter(Object.fromEntries(new Headers(req.headers))) : {
|
|
11
|
+
cookie: req.headers.get('cookie')
|
|
12
|
+
};
|
|
17
13
|
const res = await fetch(fileURL, {
|
|
18
14
|
credentials: 'include',
|
|
19
|
-
headers
|
|
20
|
-
...req.headers
|
|
21
|
-
},
|
|
15
|
+
headers,
|
|
22
16
|
method: 'GET'
|
|
23
17
|
});
|
|
24
|
-
if (!res.ok) throw new
|
|
18
|
+
if (!res.ok) throw new APIError(`Failed to fetch file from ${fileURL}`, res.status);
|
|
25
19
|
const data = await res.arrayBuffer();
|
|
26
20
|
return {
|
|
27
21
|
name: filename,
|
|
@@ -30,7 +24,7 @@ const getExternalFile = async ({ data, req })=>{
|
|
|
30
24
|
size: Number(res.headers.get('content-length')) || 0
|
|
31
25
|
};
|
|
32
26
|
}
|
|
33
|
-
throw new
|
|
27
|
+
throw new APIError('Invalid file url', 400);
|
|
34
28
|
};
|
|
35
29
|
|
|
36
|
-
//# sourceMappingURL=
|
|
30
|
+
//# sourceMappingURL=getExternalFile.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/uploads/getExternalFile.ts"],"sourcesContent":["import type { PayloadRequestWithData } from '../types/index.js'\nimport type { File, FileData, UploadConfig } from './types.js'\n\nimport { APIError } from '../errors/index.js'\n\ntype Args = {\n data: FileData\n req: PayloadRequestWithData\n uploadConfig: UploadConfig\n}\nexport const getExternalFile = async ({ data, req, uploadConfig }: Args): Promise<File> => {\n const { filename, url } = data\n\n if (typeof url === 'string') {\n let fileURL = url\n if (!url.startsWith('http')) {\n const baseUrl = req.headers.get('origin') || `${req.protocol}://${req.headers.get('host')}`\n fileURL = `${baseUrl}${url}`\n }\n\n const headers = uploadConfig.externalFileHeaderFilter\n ? uploadConfig.externalFileHeaderFilter(Object.fromEntries(new Headers(req.headers)))\n : { cookie: req.headers.get('cookie') }\n\n const res = await fetch(fileURL, {\n credentials: 'include',\n headers,\n method: 'GET',\n })\n\n if (!res.ok) throw new APIError(`Failed to fetch file from ${fileURL}`, res.status)\n\n const data = await res.arrayBuffer()\n\n return {\n name: filename,\n data: Buffer.from(data),\n mimetype: res.headers.get('content-type') || undefined,\n size: Number(res.headers.get('content-length')) || 0,\n }\n }\n\n throw new APIError('Invalid file url', 400)\n}\n"],"names":["APIError","getExternalFile","data","req","uploadConfig","filename","url","fileURL","startsWith","baseUrl","headers","get","protocol","externalFileHeaderFilter","Object","fromEntries","Headers","cookie","res","fetch","credentials","method","ok","status","arrayBuffer","name","Buffer","from","mimetype","undefined","size","Number"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAGA,SAASA,QAAQ,QAAQ,qBAAoB;AAO7C,OAAO,MAAMC,kBAAkB,OAAO,EAAEC,IAAI,EAAEC,GAAG,EAAEC,YAAY,EAAQ;IACrE,MAAM,EAAEC,QAAQ,EAAEC,GAAG,EAAE,GAAGJ;IAE1B,IAAI,OAAOI,QAAQ,UAAU;QAC3B,IAAIC,UAAUD;QACd,IAAI,CAACA,IAAIE,UAAU,CAAC,SAAS;YAC3B,MAAMC,UAAUN,IAAIO,OAAO,CAACC,GAAG,CAAC,aAAa,CAAC,EAAER,IAAIS,QAAQ,CAAC,GAAG,EAAET,IAAIO,OAAO,CAACC,GAAG,CAAC,QAAQ,CAAC;YAC3FJ,UAAU,CAAC,EAAEE,QAAQ,EAAEH,IAAI,CAAC;QAC9B;QAEA,MAAMI,UAAUN,aAAaS,wBAAwB,GACjDT,aAAaS,wBAAwB,CAACC,OAAOC,WAAW,CAAC,IAAIC,QAAQb,IAAIO,OAAO,MAChF;YAAEO,QAAQd,IAAIO,OAAO,CAACC,GAAG,CAAC;QAAU;QAExC,MAAMO,MAAM,MAAMC,MAAMZ,SAAS;YAC/Ba,aAAa;YACbV;YACAW,QAAQ;QACV;QAEA,IAAI,CAACH,IAAII,EAAE,EAAE,MAAM,IAAItB,SAAS,CAAC,0BAA0B,EAAEO,QAAQ,CAAC,EAAEW,IAAIK,MAAM;QAElF,MAAMrB,OAAO,MAAMgB,IAAIM,WAAW;QAElC,OAAO;YACLC,MAAMpB;YACNH,MAAMwB,OAAOC,IAAI,CAACzB;YAClB0B,UAAUV,IAAIR,OAAO,CAACC,GAAG,CAAC,mBAAmBkB;YAC7CC,MAAMC,OAAOb,IAAIR,OAAO,CAACC,GAAG,CAAC,sBAAsB;QACrD;IACF;IAEA,MAAM,IAAIX,SAAS,oBAAoB;AACzC,EAAC"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
declare const getFileByPath: (filePath: string) => Promise<
|
|
3
|
-
export default getFileByPath;
|
|
1
|
+
import type { PayloadRequestWithData } from '../types/index.js';
|
|
2
|
+
export declare const getFileByPath: (filePath: string) => Promise<PayloadRequestWithData['file']>;
|
|
4
3
|
//# sourceMappingURL=getFileByPath.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getFileByPath.d.ts","sourceRoot":"","sources":["../../src/uploads/getFileByPath.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getFileByPath.d.ts","sourceRoot":"","sources":["../../src/uploads/getFileByPath.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAA;AAM/D,eAAO,MAAM,aAAa,aAAoB,MAAM,KAAG,QAAQ,sBAAsB,CAAC,MAAM,CAAC,CAoB5F,CAAA"}
|