payload 3.0.0-alpha.3 → 3.0.0-alpha.30
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/auth.d.ts +5 -5
- package/auth.js +5 -44
- package/bin.js +40 -1
- package/components.d.ts +14 -0
- package/components.js +71 -0
- package/config.d.ts +10 -10
- package/config.js +10 -59
- package/database.d.ts +22 -22
- package/database.js +21 -108
- package/dist/admin/RichText.d.ts +4 -4
- package/dist/admin/RichText.d.ts.map +1 -1
- package/dist/admin/RichText.js +2 -5
- package/dist/admin/elements/Cell.d.ts +2 -2
- package/dist/admin/elements/Cell.d.ts.map +1 -1
- package/dist/admin/elements/Cell.js +2 -5
- package/dist/admin/elements/DatePicker.js +2 -5
- package/dist/admin/elements/PreviewButton.js +2 -5
- package/dist/admin/elements/PublishButton.js +2 -5
- package/dist/admin/elements/SaveButton.js +2 -5
- package/dist/admin/elements/SaveDraftButton.js +2 -5
- package/dist/admin/elements/Tab.d.ts +3 -3
- package/dist/admin/elements/Tab.d.ts.map +1 -1
- package/dist/admin/elements/Tab.js +2 -5
- package/dist/admin/forms/Error.js +2 -5
- package/dist/admin/forms/FieldDescription.js +2 -5
- package/dist/admin/forms/FieldTypes.js +2 -5
- package/dist/admin/forms/Form.d.ts +22 -0
- package/dist/admin/forms/Form.d.ts.map +1 -1
- package/dist/admin/forms/Form.js +2 -5
- package/dist/admin/forms/Label.js +2 -5
- package/dist/admin/forms/RowLabel.d.ts +1 -1
- package/dist/admin/forms/RowLabel.d.ts.map +1 -1
- package/dist/admin/forms/RowLabel.js +2 -5
- package/dist/admin/types.d.ts +19 -18
- package/dist/admin/types.d.ts.map +1 -1
- package/dist/admin/types.js +2 -5
- package/dist/admin/views/types.d.ts +41 -0
- package/dist/admin/views/types.d.ts.map +1 -0
- package/dist/admin/views/types.js +3 -0
- package/dist/assets/assets.d.js +0 -1
- 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/apiKey.d.ts +1 -1
- package/dist/auth/baseFields/apiKey.d.ts.map +1 -1
- package/dist/auth/baseFields/apiKey.js +6 -21
- 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 +6 -16
- 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 +8 -18
- package/dist/auth/cookies.d.ts +2 -2
- package/dist/auth/cookies.d.ts.map +1 -1
- package/dist/auth/cookies.js +6 -33
- package/dist/auth/crypto.js +7 -30
- package/dist/auth/defaultAccess.d.ts +1 -1
- package/dist/auth/defaultAccess.d.ts.map +1 -1
- package/dist/auth/defaultAccess.js +2 -12
- package/dist/auth/defaultUser.d.ts +1 -1
- package/dist/auth/defaultUser.d.ts.map +1 -1
- package/dist/auth/defaultUser.js +6 -16
- package/dist/auth/executeAccess.d.ts +2 -2
- package/dist/auth/executeAccess.d.ts.map +1 -1
- package/dist/auth/executeAccess.js +5 -15
- 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/getAccessResults.d.ts +2 -2
- package/dist/auth/getAccessResults.d.ts.map +1 -1
- package/dist/auth/getAccessResults.js +9 -19
- package/dist/auth/getAuthenticatedUser.d.ts +1 -1
- package/dist/auth/getAuthenticatedUser.d.ts.map +1 -1
- package/dist/auth/getAuthenticatedUser.js +2 -12
- package/dist/auth/getFieldsToSign.d.ts +2 -2
- package/dist/auth/getFieldsToSign.d.ts.map +1 -1
- package/dist/auth/getFieldsToSign.js +5 -15
- 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/isLocked.js +2 -12
- package/dist/auth/operations/access.d.ts +2 -2
- package/dist/auth/operations/access.d.ts.map +1 -1
- package/dist/auth/operations/access.js +12 -22
- package/dist/auth/operations/forgotPassword.d.ts +2 -2
- package/dist/auth/operations/forgotPassword.d.ts.map +1 -1
- package/dist/auth/operations/forgotPassword.js +17 -32
- package/dist/auth/operations/init.d.ts +1 -1
- package/dist/auth/operations/init.d.ts.map +1 -1
- package/dist/auth/operations/init.js +2 -12
- package/dist/auth/operations/local/forgotPassword.d.ts +3 -3
- 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/index.d.ts +5 -5
- package/dist/auth/operations/local/index.d.ts.map +1 -1
- package/dist/auth/operations/local/index.js +12 -27
- package/dist/auth/operations/local/login.d.ts +4 -4
- 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/resetPassword.d.ts +4 -4
- 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/unlock.d.ts +3 -3
- 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/verifyEmail.d.ts +3 -3
- package/dist/auth/operations/local/verifyEmail.d.ts.map +1 -1
- package/dist/auth/operations/local/verifyEmail.js +8 -18
- package/dist/auth/operations/login.d.ts +7 -7
- package/dist/auth/operations/login.d.ts.map +1 -1
- package/dist/auth/operations/login.js +32 -47
- package/dist/auth/operations/logout.d.ts +2 -2
- package/dist/auth/operations/logout.d.ts.map +1 -1
- package/dist/auth/operations/logout.js +6 -21
- package/dist/auth/operations/me.d.ts +3 -3
- package/dist/auth/operations/me.d.ts.map +1 -1
- package/dist/auth/operations/me.js +4 -19
- package/dist/auth/operations/refresh.d.ts +3 -3
- package/dist/auth/operations/refresh.d.ts.map +1 -1
- package/dist/auth/operations/refresh.js +19 -34
- package/dist/auth/operations/registerFirstUser.d.ts +9 -9
- package/dist/auth/operations/registerFirstUser.d.ts.map +1 -1
- package/dist/auth/operations/registerFirstUser.js +11 -21
- package/dist/auth/operations/resetPassword.d.ts +2 -2
- package/dist/auth/operations/resetPassword.d.ts.map +1 -1
- package/dist/auth/operations/resetPassword.js +20 -43
- package/dist/auth/operations/unlock.d.ts +2 -2
- package/dist/auth/operations/unlock.d.ts.map +1 -1
- package/dist/auth/operations/unlock.js +16 -39
- package/dist/auth/operations/verifyEmail.d.ts +2 -2
- package/dist/auth/operations/verifyEmail.d.ts.map +1 -1
- package/dist/auth/operations/verifyEmail.js +14 -37
- package/dist/auth/sendVerificationEmail.d.ts +5 -5
- package/dist/auth/sendVerificationEmail.d.ts.map +1 -1
- package/dist/auth/sendVerificationEmail.js +4 -14
- 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 +4 -19
- 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/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/generatePasswordSaltHash.js +7 -22
- package/dist/auth/strategies/local/incrementLoginAttempts.d.ts +3 -3
- package/dist/auth/strategies/local/incrementLoginAttempts.d.ts.map +1 -1
- package/dist/auth/strategies/local/incrementLoginAttempts.js +2 -12
- package/dist/auth/strategies/local/register.d.ts +3 -3
- package/dist/auth/strategies/local/register.d.ts.map +1 -1
- package/dist/auth/strategies/local/register.js +6 -16
- package/dist/auth/strategies/local/resetLoginAttempts.d.ts +3 -3
- package/dist/auth/strategies/local/resetLoginAttempts.d.ts.map +1 -1
- package/dist/auth/strategies/local/resetLoginAttempts.js +2 -12
- package/dist/auth/types.d.ts +2 -2
- package/dist/auth/types.d.ts.map +1 -1
- package/dist/auth/types.js +2 -12
- package/dist/bin/generateTypes.d.ts +1 -1
- package/dist/bin/generateTypes.d.ts.map +1 -1
- package/dist/bin/generateTypes.js +12 -27
- package/dist/bin/index.js +11 -53
- package/dist/bin/loadEnv.js +13 -26
- package/dist/bin/migrate.js +15 -30
- 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/defaults.d.ts +5 -5
- package/dist/collections/config/defaults.js +9 -32
- package/dist/collections/config/sanitize.d.ts +2 -2
- package/dist/collections/config/sanitize.d.ts.map +1 -1
- package/dist/collections/config/sanitize.js +34 -49
- package/dist/collections/config/schema.js +157 -172
- package/dist/collections/config/types.d.ts +13 -13
- package/dist/collections/config/types.d.ts.map +1 -1
- package/dist/collections/config/types.js +2 -5
- package/dist/collections/dataloader.d.ts +2 -2
- package/dist/collections/dataloader.d.ts.map +1 -1
- package/dist/collections/dataloader.js +8 -23
- package/dist/collections/operations/create.d.ts +9 -9
- package/dist/collections/operations/create.d.ts.map +1 -1
- package/dist/collections/operations/create.js +38 -53
- package/dist/collections/operations/delete.d.ts +9 -10
- package/dist/collections/operations/delete.d.ts.map +1 -1
- package/dist/collections/operations/delete.js +27 -42
- package/dist/collections/operations/deleteByID.d.ts +2 -3
- package/dist/collections/operations/deleteByID.d.ts.map +1 -1
- package/dist/collections/operations/deleteByID.js +27 -42
- package/dist/collections/operations/docAccess.d.ts +3 -3
- package/dist/collections/operations/docAccess.d.ts.map +1 -1
- package/dist/collections/operations/docAccess.js +12 -22
- package/dist/collections/operations/find.d.ts +3 -4
- package/dist/collections/operations/find.d.ts.map +1 -1
- package/dist/collections/operations/find.js +25 -40
- package/dist/collections/operations/findByID.d.ts +2 -2
- package/dist/collections/operations/findByID.d.ts.map +1 -1
- package/dist/collections/operations/findByID.js +21 -36
- package/dist/collections/operations/findVersionByID.d.ts +3 -3
- package/dist/collections/operations/findVersionByID.d.ts.map +1 -1
- package/dist/collections/operations/findVersionByID.js +19 -34
- package/dist/collections/operations/findVersions.d.ts +4 -5
- package/dist/collections/operations/findVersions.d.ts.map +1 -1
- package/dist/collections/operations/findVersions.js +20 -35
- package/dist/collections/operations/local/create.d.ts +4 -5
- package/dist/collections/operations/local/create.d.ts.map +1 -1
- package/dist/collections/operations/local/create.js +10 -25
- package/dist/collections/operations/local/delete.d.ts +5 -5
- 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/find.d.ts +3 -4
- 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/findByID.d.ts +2 -4
- 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/findVersionByID.d.ts +3 -4
- 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/findVersions.d.ts +4 -5
- 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/index.d.ts +13 -13
- package/dist/collections/operations/local/index.d.ts.map +1 -1
- package/dist/collections/operations/local/index.js +20 -35
- package/dist/collections/operations/local/restoreVersion.d.ts +2 -3
- 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/update.d.ts +4 -5
- package/dist/collections/operations/local/update.d.ts.map +1 -1
- package/dist/collections/operations/local/update.js +12 -27
- package/dist/collections/operations/restoreVersion.d.ts +2 -2
- package/dist/collections/operations/restoreVersion.d.ts.map +1 -1
- package/dist/collections/operations/restoreVersion.js +26 -41
- package/dist/collections/operations/update.d.ts +7 -8
- package/dist/collections/operations/update.d.ts.map +1 -1
- package/dist/collections/operations/update.js +43 -58
- package/dist/collections/operations/updateByID.d.ts +9 -9
- package/dist/collections/operations/updateByID.d.ts.map +1 -1
- package/dist/collections/operations/updateByID.js +44 -59
- package/dist/collections/operations/utils.d.ts +12 -12
- package/dist/collections/operations/utils.d.ts.map +1 -1
- package/dist/collections/operations/utils.js +3 -12
- package/dist/config/build.d.ts +1 -1
- package/dist/config/build.d.ts.map +1 -1
- package/dist/config/build.js +9 -15
- package/dist/config/clientFiles.js +2 -12
- package/dist/config/createClientConfig.d.ts +2 -2
- package/dist/config/createClientConfig.d.ts.map +1 -1
- package/dist/config/createClientConfig.js +12 -25
- package/dist/config/defaults.d.ts +1 -1
- package/dist/config/defaults.d.ts.map +1 -1
- package/dist/config/defaults.js +4 -19
- package/dist/config/find.js +18 -33
- package/dist/config/load.d.ts +2 -4
- package/dist/config/load.d.ts.map +1 -1
- package/dist/config/load.js +8 -37
- package/dist/config/sanitize.d.ts +1 -1
- package/dist/config/sanitize.d.ts.map +1 -1
- package/dist/config/sanitize.js +25 -40
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js +116 -133
- package/dist/config/shared/adminViewSchema.js +9 -24
- package/dist/config/shared/componentSchema.js +21 -50
- package/dist/config/types.d.ts +21 -30
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js +9 -21
- package/dist/config/validate.d.ts +1 -1
- package/dist/config/validate.d.ts.map +1 -1
- package/dist/config/validate.js +15 -71
- 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/createDatabaseAdapter.d.ts +1 -1
- package/dist/database/createDatabaseAdapter.d.ts.map +1 -1
- package/dist/database/createDatabaseAdapter.js +14 -24
- 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/getLocalizedPaths.d.ts +3 -3
- package/dist/database/getLocalizedPaths.d.ts.map +1 -1
- package/dist/database/getLocalizedPaths.js +7 -22
- 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/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/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/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/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/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/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/migrationTemplate.js +2 -12
- 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/readMigrationFiles.d.ts +2 -2
- package/dist/database/migrations/readMigrationFiles.d.ts.map +1 -1
- package/dist/database/migrations/readMigrationFiles.js +12 -24
- 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/validateQueryPaths.d.ts +5 -5
- package/dist/database/queryValidation/validateQueryPaths.d.ts.map +1 -1
- package/dist/database/queryValidation/validateQueryPaths.js +13 -28
- package/dist/database/queryValidation/validateSearchParams.d.ts +5 -5
- package/dist/database/queryValidation/validateSearchParams.d.ts.map +1 -1
- package/dist/database/queryValidation/validateSearchParams.js +17 -25
- package/dist/database/types.d.ts +9 -7
- package/dist/database/types.d.ts.map +1 -1
- package/dist/database/types.js +2 -5
- package/dist/email/build.d.ts +2 -2
- package/dist/email/build.d.ts.map +1 -1
- package/dist/email/build.js +11 -26
- package/dist/email/defaults.d.ts +1 -1
- package/dist/email/defaults.d.ts.map +1 -1
- package/dist/email/defaults.js +2 -12
- package/dist/email/mockHandler.d.ts +2 -2
- package/dist/email/mockHandler.d.ts.map +1 -1
- package/dist/email/mockHandler.js +8 -23
- package/dist/email/sendEmail.js +2 -12
- package/dist/email/types.js +2 -5
- package/dist/errors/APIError.js +4 -19
- package/dist/errors/AuthenticationError.d.ts +1 -1
- package/dist/errors/AuthenticationError.d.ts.map +1 -1
- package/dist/errors/AuthenticationError.js +7 -22
- package/dist/errors/DuplicateCollection.d.ts +1 -1
- package/dist/errors/DuplicateCollection.d.ts.map +1 -1
- package/dist/errors/DuplicateCollection.js +4 -19
- package/dist/errors/DuplicateFieldName.d.ts +1 -1
- package/dist/errors/DuplicateFieldName.d.ts.map +1 -1
- package/dist/errors/DuplicateFieldName.js +4 -19
- package/dist/errors/DuplicateGlobal.d.ts +2 -2
- package/dist/errors/DuplicateGlobal.d.ts.map +1 -1
- package/dist/errors/DuplicateGlobal.js +4 -19
- package/dist/errors/ErrorDeletingFile.d.ts +1 -1
- package/dist/errors/ErrorDeletingFile.d.ts.map +1 -1
- package/dist/errors/ErrorDeletingFile.js +7 -22
- package/dist/errors/FileUploadError.d.ts +1 -1
- package/dist/errors/FileUploadError.d.ts.map +1 -1
- package/dist/errors/FileUploadError.js +7 -22
- package/dist/errors/Forbidden.d.ts +1 -1
- package/dist/errors/Forbidden.d.ts.map +1 -1
- package/dist/errors/Forbidden.js +7 -22
- package/dist/errors/InvalidConfiguration.d.ts +1 -1
- package/dist/errors/InvalidConfiguration.d.ts.map +1 -1
- package/dist/errors/InvalidConfiguration.js +6 -21
- package/dist/errors/InvalidFieldName.d.ts +2 -2
- package/dist/errors/InvalidFieldName.d.ts.map +1 -1
- package/dist/errors/InvalidFieldName.js +4 -19
- package/dist/errors/InvalidFieldRelationship.d.ts +2 -2
- package/dist/errors/InvalidFieldRelationship.d.ts.map +1 -1
- package/dist/errors/InvalidFieldRelationship.js +4 -19
- package/dist/errors/InvalidSchema.d.ts +1 -1
- package/dist/errors/InvalidSchema.d.ts.map +1 -1
- package/dist/errors/InvalidSchema.js +6 -21
- package/dist/errors/LockedAuth.d.ts +1 -1
- package/dist/errors/LockedAuth.d.ts.map +1 -1
- package/dist/errors/LockedAuth.js +7 -22
- package/dist/errors/MissingCollectionLabel.d.ts +1 -1
- package/dist/errors/MissingCollectionLabel.d.ts.map +1 -1
- package/dist/errors/MissingCollectionLabel.js +4 -19
- package/dist/errors/MissingFieldInputOptions.d.ts +2 -2
- package/dist/errors/MissingFieldInputOptions.d.ts.map +1 -1
- package/dist/errors/MissingFieldInputOptions.js +4 -19
- package/dist/errors/MissingFieldType.d.ts +2 -2
- package/dist/errors/MissingFieldType.d.ts.map +1 -1
- package/dist/errors/MissingFieldType.js +6 -21
- package/dist/errors/MissingFile.d.ts +1 -1
- package/dist/errors/MissingFile.d.ts.map +1 -1
- package/dist/errors/MissingFile.js +7 -22
- package/dist/errors/NotFound.d.ts +1 -1
- package/dist/errors/NotFound.d.ts.map +1 -1
- package/dist/errors/NotFound.js +7 -22
- package/dist/errors/QueryError.d.ts +1 -1
- package/dist/errors/QueryError.d.ts.map +1 -1
- package/dist/errors/QueryError.js +6 -21
- package/dist/errors/TimestampsRequired.d.ts +2 -2
- package/dist/errors/TimestampsRequired.d.ts.map +1 -1
- package/dist/errors/TimestampsRequired.js +4 -19
- package/dist/errors/UnathorizedError.d.ts +1 -1
- package/dist/errors/UnathorizedError.d.ts.map +1 -1
- package/dist/errors/UnathorizedError.js +7 -22
- package/dist/errors/ValidationError.d.ts +1 -1
- package/dist/errors/ValidationError.d.ts.map +1 -1
- package/dist/errors/ValidationError.js +8 -23
- package/dist/errors/index.d.ts +19 -19
- package/dist/errors/index.d.ts.map +1 -1
- package/dist/errors/index.js +20 -94
- 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/exports/auth.d.ts +5 -5
- package/dist/exports/auth.d.ts.map +1 -1
- package/dist/exports/auth.js +5 -44
- package/dist/exports/components/utilities.js +0 -1
- package/dist/exports/config.d.ts +10 -10
- package/dist/exports/config.d.ts.map +1 -1
- package/dist/exports/config.js +10 -59
- 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/errors.d.ts +1 -1
- package/dist/exports/errors.d.ts.map +1 -1
- package/dist/exports/errors.js +2 -68
- 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/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/operations.d.ts +28 -28
- package/dist/exports/operations.d.ts.map +1 -1
- package/dist/exports/operations.js +29 -125
- package/dist/exports/types.d.ts +11 -11
- package/dist/exports/types.d.ts.map +1 -1
- package/dist/exports/types.js +4 -74
- package/dist/exports/utilities.d.ts +27 -27
- package/dist/exports/utilities.d.ts.map +1 -1
- package/dist/exports/utilities.js +28 -141
- package/dist/exports/versions.d.ts +9 -9
- package/dist/exports/versions.d.ts.map +1 -1
- package/dist/exports/versions.js +9 -45
- 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/baseIDField.d.ts +1 -1
- package/dist/fields/baseFields/baseIDField.d.ts.map +1 -1
- package/dist/fields/baseFields/baseIDField.js +7 -21
- package/dist/fields/config/sanitize.d.ts +2 -2
- package/dist/fields/config/sanitize.d.ts.map +1 -1
- package/dist/fields/config/sanitize.js +28 -43
- package/dist/fields/config/sanitize.spec.js +25 -29
- package/dist/fields/config/schema.js +336 -431
- package/dist/fields/config/types.d.ts +5 -6
- package/dist/fields/config/types.d.ts.map +1 -1
- package/dist/fields/config/types.js +15 -69
- package/dist/fields/getDefaultValue.d.ts +1 -1
- package/dist/fields/getDefaultValue.d.ts.map +1 -1
- package/dist/fields/getDefaultValue.js +2 -12
- package/dist/fields/hooks/afterChange/index.d.ts +3 -3
- package/dist/fields/hooks/afterChange/index.d.ts.map +1 -1
- package/dist/fields/hooks/afterChange/index.js +6 -16
- package/dist/fields/hooks/afterChange/promise.d.ts +4 -4
- 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/traverseFields.d.ts +4 -4
- package/dist/fields/hooks/afterChange/traverseFields.d.ts.map +1 -1
- package/dist/fields/hooks/afterChange/traverseFields.js +4 -14
- package/dist/fields/hooks/afterRead/index.d.ts +3 -3
- package/dist/fields/hooks/afterRead/index.d.ts.map +1 -1
- package/dist/fields/hooks/afterRead/index.js +6 -16
- package/dist/fields/hooks/afterRead/promise.d.ts +4 -4
- package/dist/fields/hooks/afterRead/promise.d.ts.map +1 -1
- package/dist/fields/hooks/afterRead/promise.js +28 -38
- package/dist/fields/hooks/afterRead/relationshipPopulationPromise.d.ts +2 -2
- package/dist/fields/hooks/afterRead/relationshipPopulationPromise.d.ts.map +1 -1
- package/dist/fields/hooks/afterRead/relationshipPopulationPromise.js +5 -15
- package/dist/fields/hooks/afterRead/traverseFields.d.ts +4 -4
- package/dist/fields/hooks/afterRead/traverseFields.d.ts.map +1 -1
- package/dist/fields/hooks/afterRead/traverseFields.js +4 -14
- package/dist/fields/hooks/beforeChange/cloneDataFromOriginalDoc.js +2 -12
- package/dist/fields/hooks/beforeChange/getExistingRowDoc.js +2 -12
- package/dist/fields/hooks/beforeChange/index.d.ts +3 -4
- package/dist/fields/hooks/beforeChange/index.d.ts.map +1 -1
- package/dist/fields/hooks/beforeChange/index.js +8 -18
- package/dist/fields/hooks/beforeChange/promise.d.ts +4 -5
- package/dist/fields/hooks/beforeChange/promise.d.ts.map +1 -1
- package/dist/fields/hooks/beforeChange/promise.js +26 -35
- package/dist/fields/hooks/beforeChange/traverseFields.d.ts +4 -5
- package/dist/fields/hooks/beforeChange/traverseFields.d.ts.map +1 -1
- package/dist/fields/hooks/beforeChange/traverseFields.js +4 -14
- package/dist/fields/hooks/beforeValidate/index.d.ts +3 -3
- package/dist/fields/hooks/beforeValidate/index.d.ts.map +1 -1
- package/dist/fields/hooks/beforeValidate/index.js +6 -16
- package/dist/fields/hooks/beforeValidate/promise.d.ts +4 -4
- package/dist/fields/hooks/beforeValidate/promise.d.ts.map +1 -1
- package/dist/fields/hooks/beforeValidate/promise.js +30 -39
- package/dist/fields/hooks/beforeValidate/traverseFields.d.ts +4 -4
- package/dist/fields/hooks/beforeValidate/traverseFields.d.ts.map +1 -1
- package/dist/fields/hooks/beforeValidate/traverseFields.js +4 -14
- 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/sortableFieldTypes.js +2 -12
- package/dist/fields/validations.d.ts +6 -6
- package/dist/fields/validations.d.ts.map +1 -1
- package/dist/fields/validations.js +31 -97
- package/dist/fields/validations.spec.js +93 -87
- package/dist/globals/config/sanitize.d.ts +2 -2
- package/dist/globals/config/sanitize.d.ts.map +1 -1
- package/dist/globals/config/sanitize.js +19 -34
- package/dist/globals/config/schema.js +55 -70
- package/dist/globals/config/types.d.ts +11 -11
- package/dist/globals/config/types.d.ts.map +1 -1
- package/dist/globals/config/types.js +2 -5
- package/dist/globals/operations/docAccess.d.ts +3 -3
- package/dist/globals/operations/docAccess.d.ts.map +1 -1
- package/dist/globals/operations/docAccess.js +12 -22
- package/dist/globals/operations/findOne.d.ts +2 -2
- package/dist/globals/operations/findOne.d.ts.map +1 -1
- package/dist/globals/operations/findOne.js +14 -29
- package/dist/globals/operations/findVersionByID.d.ts +3 -3
- package/dist/globals/operations/findVersionByID.d.ts.map +1 -1
- package/dist/globals/operations/findVersionByID.js +18 -33
- package/dist/globals/operations/findVersions.d.ts +4 -5
- package/dist/globals/operations/findVersions.d.ts.map +1 -1
- package/dist/globals/operations/findVersions.js +20 -35
- package/dist/globals/operations/local/findOne.d.ts +2 -4
- 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/findVersionByID.d.ts +3 -5
- package/dist/globals/operations/local/findVersionByID.d.ts.map +1 -1
- package/dist/globals/operations/local/findVersionByID.js +9 -19
- package/dist/globals/operations/local/findVersions.d.ts +4 -6
- 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/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/restoreVersion.d.ts +2 -4
- 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/update.d.ts +2 -4
- package/dist/globals/operations/local/update.d.ts.map +1 -1
- package/dist/globals/operations/local/update.js +9 -19
- package/dist/globals/operations/restoreVersion.d.ts +3 -3
- package/dist/globals/operations/restoreVersion.d.ts.map +1 -1
- package/dist/globals/operations/restoreVersion.js +16 -31
- package/dist/globals/operations/update.d.ts +9 -9
- package/dist/globals/operations/update.d.ts.map +1 -1
- package/dist/globals/operations/update.js +23 -38
- package/dist/index.d.ts +29 -29
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +50 -70
- package/dist/localization/middleware.js +2 -12
- package/dist/localization/sanitizeFallbackLocale.js +2 -12
- package/dist/preferences/deleteUserPreferences.d.ts +3 -3
- package/dist/preferences/deleteUserPreferences.d.ts.map +1 -1
- package/dist/preferences/deleteUserPreferences.js +2 -12
- 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 +10 -25
- 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 +2 -12
- package/dist/preferences/operations/update.d.ts +1 -1
- package/dist/preferences/operations/update.d.ts.map +1 -1
- package/dist/preferences/operations/update.js +8 -23
- 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/requestHandlers/delete.d.ts +1 -1
- package/dist/preferences/requestHandlers/delete.d.ts.map +1 -1
- package/dist/preferences/requestHandlers/delete.js +6 -21
- 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 +6 -21
- 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 +6 -21
- package/dist/preferences/types.d.ts +2 -2
- package/dist/preferences/types.d.ts.map +1 -1
- package/dist/preferences/types.js +2 -5
- package/dist/translations/extractTranslations.js +4 -14
- package/dist/translations/getLocalI18n.d.ts +1 -1
- package/dist/translations/getLocalI18n.d.ts.map +1 -1
- package/dist/translations/getLocalI18n.js +5 -15
- package/dist/types/constants.js +2 -12
- package/dist/types/index.d.ts +8 -6
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +2 -12
- package/dist/uploads/canResizeImage.js +2 -12
- 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/deleteAssociatedFiles.d.ts +4 -4
- package/dist/uploads/deleteAssociatedFiles.d.ts.map +1 -1
- package/dist/uploads/deleteAssociatedFiles.js +11 -26
- package/dist/uploads/docWithFilenameExists.d.ts +1 -1
- package/dist/uploads/docWithFilenameExists.d.ts.map +1 -1
- package/dist/uploads/docWithFilenameExists.js +2 -12
- package/dist/uploads/fileExists.js +4 -19
- package/dist/uploads/formatFilesize.js +2 -12
- package/dist/uploads/generateFileData.d.ts +4 -4
- package/dist/uploads/generateFileData.d.ts.map +1 -1
- package/dist/uploads/generateFileData.js +42 -55
- package/dist/uploads/getBaseFields.d.ts +3 -3
- package/dist/uploads/getBaseFields.d.ts.map +1 -1
- package/dist/uploads/getBaseFields.js +6 -16
- package/dist/uploads/getExternalFile.d.ts +2 -2
- package/dist/uploads/getExternalFile.d.ts.map +1 -1
- package/dist/uploads/getExternalFile.js +5 -15
- package/dist/uploads/getFileByPath.d.ts +1 -1
- package/dist/uploads/getFileByPath.d.ts.map +1 -1
- package/dist/uploads/getFileByPath.js +11 -25
- package/dist/uploads/getImageSize.d.ts +2 -2
- package/dist/uploads/getImageSize.d.ts.map +1 -1
- package/dist/uploads/getImageSize.js +7 -22
- package/dist/uploads/getSafeFilename.d.ts +1 -1
- package/dist/uploads/getSafeFilename.d.ts.map +1 -1
- package/dist/uploads/getSafeFilename.js +8 -23
- package/dist/uploads/imageResizer.d.ts +6 -5
- package/dist/uploads/imageResizer.d.ts.map +1 -1
- package/dist/uploads/imageResizer.js +29 -44
- package/dist/uploads/isImage.js +2 -12
- 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.spec.js +11 -15
- package/dist/uploads/saveBufferToFile.d.ts +1 -1
- package/dist/uploads/saveBufferToFile.js +6 -21
- package/dist/uploads/types.d.ts +8 -2
- package/dist/uploads/types.d.ts.map +1 -1
- package/dist/uploads/types.js +2 -5
- package/dist/uploads/unlinkTempFiles.d.ts +3 -3
- package/dist/uploads/unlinkTempFiles.d.ts.map +1 -1
- package/dist/uploads/unlinkTempFiles.js +9 -22
- package/dist/uploads/uploadFiles.d.ts +3 -3
- package/dist/uploads/uploadFiles.d.ts.map +1 -1
- package/dist/uploads/uploadFiles.js +6 -21
- 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/combineMerge.js +4 -19
- package/dist/utilities/commitTransaction.d.ts +1 -1
- package/dist/utilities/commitTransaction.d.ts.map +1 -1
- package/dist/utilities/commitTransaction.js +4 -12
- package/dist/utilities/configToJSONSchema.d.ts +4 -4
- package/dist/utilities/configToJSONSchema.d.ts.map +1 -1
- package/dist/utilities/configToJSONSchema.js +63 -81
- package/dist/utilities/configToJSONSchema.spec.js +5 -9
- package/dist/utilities/convertData.js +3 -23
- package/dist/utilities/createArrayFromCommaDelineated.js +2 -12
- package/dist/utilities/createLocalReq.d.ts +3 -3
- package/dist/utilities/createLocalReq.d.ts.map +1 -1
- package/dist/utilities/createLocalReq.js +7 -16
- package/dist/utilities/deepCopyObject.js +2 -12
- package/dist/utilities/deepMerge.js +2 -12
- package/dist/utilities/fieldSchemaToJSON.d.ts +2 -2
- package/dist/utilities/fieldSchemaToJSON.d.ts.map +1 -1
- package/dist/utilities/fieldSchemaToJSON.js +2 -12
- package/dist/utilities/flattenTopLevelFields.d.ts +1 -1
- package/dist/utilities/flattenTopLevelFields.d.ts.map +1 -1
- package/dist/utilities/flattenTopLevelFields.js +6 -16
- package/dist/utilities/formatLabels.d.ts +2 -1
- package/dist/utilities/formatLabels.d.ts.map +1 -1
- package/dist/utilities/formatLabels.js +10 -70
- package/dist/utilities/formatLabels.spec.js +8 -12
- package/dist/utilities/getCSSVariable.js +2 -12
- package/dist/utilities/getEntityPolicies.d.ts +4 -4
- package/dist/utilities/getEntityPolicies.d.ts.map +1 -1
- package/dist/utilities/getEntityPolicies.js +4 -14
- package/dist/utilities/getIDType.d.ts +2 -2
- package/dist/utilities/getIDType.d.ts.map +1 -1
- package/dist/utilities/getIDType.js +2 -12
- package/dist/utilities/getObjectDotNotation.js +2 -12
- package/dist/utilities/getUniqueListBy.js +2 -12
- package/dist/utilities/initTransaction.d.ts +1 -1
- package/dist/utilities/initTransaction.d.ts.map +1 -1
- package/dist/utilities/initTransaction.js +5 -12
- package/dist/utilities/isEntityHidden.d.ts +2 -2
- package/dist/utilities/isEntityHidden.d.ts.map +1 -1
- package/dist/utilities/isEntityHidden.js +2 -12
- package/dist/utilities/isNumber.js +2 -12
- 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/isValidID.d.ts.map +1 -1
- package/dist/utilities/isValidID.js +6 -20
- package/dist/utilities/isolateObjectProperty.js +2 -12
- package/dist/utilities/killTransaction.d.ts +1 -1
- package/dist/utilities/killTransaction.d.ts.map +1 -1
- package/dist/utilities/killTransaction.js +4 -12
- 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/mapAsync.js +2 -12
- package/dist/utilities/overwriteMerge.js +2 -12
- package/dist/utilities/parseCookies.js +4 -14
- package/dist/utilities/sanitizeInternalFields.js +2 -12
- package/dist/utilities/setsAreEqual.js +2 -12
- package/dist/utilities/telemetry/events/adminInit.d.ts +2 -2
- package/dist/utilities/telemetry/events/adminInit.d.ts.map +1 -1
- package/dist/utilities/telemetry/events/adminInit.js +7 -17
- 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/index.d.ts +3 -3
- package/dist/utilities/telemetry/index.d.ts.map +1 -1
- package/dist/utilities/telemetry/index.js +18 -40
- package/dist/utilities/telemetry/oneWayHash.js +4 -14
- package/dist/utilities/timestamp.js +2 -12
- package/dist/utilities/toKebabCase.js +2 -12
- package/dist/utilities/wait.js +2 -12
- package/dist/utilities/wordBoundariesRegex.js +3 -13
- package/dist/versions/baseFields.d.ts +1 -1
- package/dist/versions/baseFields.d.ts.map +1 -1
- package/dist/versions/baseFields.js +7 -25
- 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/buildGlobalFields.d.ts +2 -2
- package/dist/versions/buildGlobalFields.d.ts.map +1 -1
- package/dist/versions/buildGlobalFields.js +12 -22
- package/dist/versions/deleteCollectionVersions.d.ts +3 -3
- package/dist/versions/deleteCollectionVersions.d.ts.map +1 -1
- package/dist/versions/deleteCollectionVersions.js +2 -12
- 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/getQueryDraftsSort.js +2 -12
- package/dist/versions/drafts/replaceWithDraftIfAvailable.d.ts +4 -4
- package/dist/versions/drafts/replaceWithDraftIfAvailable.d.ts.map +1 -1
- package/dist/versions/drafts/replaceWithDraftIfAvailable.js +12 -27
- package/dist/versions/enforceMaxVersions.d.ts +3 -3
- package/dist/versions/enforceMaxVersions.d.ts.map +1 -1
- package/dist/versions/enforceMaxVersions.js +2 -12
- package/dist/versions/getLatestCollectionVersion.d.ts +3 -3
- package/dist/versions/getLatestCollectionVersion.d.ts.map +1 -1
- package/dist/versions/getLatestCollectionVersion.js +4 -14
- package/dist/versions/getLatestGlobalVersion.d.ts +3 -3
- package/dist/versions/getLatestGlobalVersion.d.ts.map +1 -1
- package/dist/versions/getLatestGlobalVersion.js +5 -15
- package/dist/versions/getVersionsModelName.d.ts +2 -2
- package/dist/versions/getVersionsModelName.d.ts.map +1 -1
- package/dist/versions/getVersionsModelName.js +2 -12
- package/dist/versions/saveVersion.d.ts +4 -4
- package/dist/versions/saveVersion.d.ts.map +1 -1
- package/dist/versions/saveVersion.js +8 -23
- package/dist/versions/types.js +2 -5
- package/errors.d.ts +1 -1
- package/errors.js +2 -68
- package/graphql.d.ts +3 -0
- package/graphql.js +27 -0
- package/operations.d.ts +28 -28
- package/operations.js +29 -125
- package/package.json +17 -6
- package/types.d.ts +11 -11
- package/types.js +4 -74
- package/utilities.d.ts +27 -27
- package/utilities.js +28 -141
- package/versions.d.ts +9 -9
- package/versions.js +9 -45
- package/.eslintrc.js +0 -58
- 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/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
|
@@ -1,17 +1,9 @@
|
|
|
1
|
-
/* eslint-disable no-param-reassign */
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
get: function() {
|
|
8
|
-
return promise;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
const _types = require("../../config/types");
|
|
12
|
-
const _traverseFields = require("./traverseFields");
|
|
13
|
-
const promise = async ({ collection, context, data, doc, field, global, operation, previousDoc, previousSiblingDoc, req, siblingData, siblingDoc })=>{
|
|
14
|
-
if ((0, _types.fieldAffectsData)(field)) {
|
|
1
|
+
/* eslint-disable no-param-reassign */ import { fieldAffectsData, tabHasName } from '../../config/types.js';
|
|
2
|
+
import { traverseFields } from './traverseFields.js';
|
|
3
|
+
// This function is responsible for the following actions, in order:
|
|
4
|
+
// - Execute field hooks
|
|
5
|
+
export const promise = async ({ collection, context, data, doc, field, global, operation, previousDoc, previousSiblingDoc, req, siblingData, siblingDoc })=>{
|
|
6
|
+
if (fieldAffectsData(field)) {
|
|
15
7
|
// Execute hooks
|
|
16
8
|
if (field.hooks?.afterChange) {
|
|
17
9
|
await field.hooks.afterChange.reduce(async (priorHook, currentHook)=>{
|
|
@@ -41,7 +33,7 @@ const promise = async ({ collection, context, data, doc, field, global, operatio
|
|
|
41
33
|
switch(field.type){
|
|
42
34
|
case 'group':
|
|
43
35
|
{
|
|
44
|
-
await
|
|
36
|
+
await traverseFields({
|
|
45
37
|
collection,
|
|
46
38
|
context,
|
|
47
39
|
data,
|
|
@@ -63,7 +55,7 @@ const promise = async ({ collection, context, data, doc, field, global, operatio
|
|
|
63
55
|
if (Array.isArray(rows)) {
|
|
64
56
|
const promises = [];
|
|
65
57
|
rows.forEach((row, i)=>{
|
|
66
|
-
promises.push(
|
|
58
|
+
promises.push(traverseFields({
|
|
67
59
|
collection,
|
|
68
60
|
context,
|
|
69
61
|
data,
|
|
@@ -92,7 +84,7 @@ const promise = async ({ collection, context, data, doc, field, global, operatio
|
|
|
92
84
|
rows.forEach((row, i)=>{
|
|
93
85
|
const block = field.blocks.find((blockType)=>blockType.slug === row.blockType);
|
|
94
86
|
if (block) {
|
|
95
|
-
promises.push(
|
|
87
|
+
promises.push(traverseFields({
|
|
96
88
|
collection,
|
|
97
89
|
context,
|
|
98
90
|
data,
|
|
@@ -117,7 +109,7 @@ const promise = async ({ collection, context, data, doc, field, global, operatio
|
|
|
117
109
|
case 'row':
|
|
118
110
|
case 'collapsible':
|
|
119
111
|
{
|
|
120
|
-
await
|
|
112
|
+
await traverseFields({
|
|
121
113
|
collection,
|
|
122
114
|
context,
|
|
123
115
|
data,
|
|
@@ -142,12 +134,12 @@ const promise = async ({ collection, context, data, doc, field, global, operatio
|
|
|
142
134
|
let tabSiblingData = siblingData;
|
|
143
135
|
let tabSiblingDoc = siblingDoc;
|
|
144
136
|
let tabPreviousSiblingDoc = siblingDoc;
|
|
145
|
-
if (
|
|
137
|
+
if (tabHasName(field)) {
|
|
146
138
|
tabSiblingData = siblingData[field.name];
|
|
147
139
|
tabSiblingDoc = siblingDoc[field.name];
|
|
148
140
|
tabPreviousSiblingDoc = previousDoc[field.name];
|
|
149
141
|
}
|
|
150
|
-
await
|
|
142
|
+
await traverseFields({
|
|
151
143
|
collection,
|
|
152
144
|
context,
|
|
153
145
|
data,
|
|
@@ -165,7 +157,7 @@ const promise = async ({ collection, context, data, doc, field, global, operatio
|
|
|
165
157
|
}
|
|
166
158
|
case 'tabs':
|
|
167
159
|
{
|
|
168
|
-
await
|
|
160
|
+
await traverseFields({
|
|
169
161
|
collection,
|
|
170
162
|
context,
|
|
171
163
|
data,
|
|
@@ -195,4 +187,4 @@ const promise = async ({ collection, context, data, doc, field, global, operatio
|
|
|
195
187
|
}
|
|
196
188
|
};
|
|
197
189
|
|
|
198
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maWVsZHMvaG9va3MvYWZ0ZXJDaGFuZ2UvcHJvbWlzZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby1wYXJhbS1yZWFzc2lnbiAqL1xuaW1wb3J0IHR5cGUgeyBTYW5pdGl6ZWRDb2xsZWN0aW9uQ29uZmlnIH0gZnJvbSAnLi4vLi4vLi4vY29sbGVjdGlvbnMvY29uZmlnL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBTYW5pdGl6ZWRHbG9iYWxDb25maWcgfSBmcm9tICcuLi8uLi8uLi9nbG9iYWxzL2NvbmZpZy90eXBlcydcbmltcG9ydCB0eXBlIHsgUGF5bG9hZFJlcXVlc3QsIFJlcXVlc3RDb250ZXh0IH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMnXG5pbXBvcnQgdHlwZSB7IEZpZWxkLCBUYWJBc0ZpZWxkIH0gZnJvbSAnLi4vLi4vY29uZmlnL3R5cGVzJ1xuXG5pbXBvcnQgeyBmaWVsZEFmZmVjdHNEYXRhLCB0YWJIYXNOYW1lIH0gZnJvbSAnLi4vLi4vY29uZmlnL3R5cGVzJ1xuaW1wb3J0IHsgdHJhdmVyc2VGaWVsZHMgfSBmcm9tICcuL3RyYXZlcnNlRmllbGRzJ1xuXG50eXBlIEFyZ3MgPSB7XG4gIGNvbGxlY3Rpb246IFNhbml0aXplZENvbGxlY3Rpb25Db25maWcgfCBudWxsXG4gIGNvbnRleHQ6IFJlcXVlc3RDb250ZXh0XG4gIGRhdGE6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gIGRvYzogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgZmllbGQ6IEZpZWxkIHwgVGFiQXNGaWVsZFxuICBnbG9iYWw6IFNhbml0aXplZEdsb2JhbENvbmZpZyB8IG51bGxcbiAgb3BlcmF0aW9uOiAnY3JlYXRlJyB8ICd1cGRhdGUnXG4gIHByZXZpb3VzRG9jOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICBwcmV2aW91c1NpYmxpbmdEb2M6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gIHJlcTogUGF5bG9hZFJlcXVlc3RcbiAgc2libGluZ0RhdGE6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gIHNpYmxpbmdEb2M6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG59XG5cbi8vIFRoaXMgZnVuY3Rpb24gaXMgcmVzcG9uc2libGUgZm9yIHRoZSBmb2xsb3dpbmcgYWN0aW9ucywgaW4gb3JkZXI6XG4vLyAtIEV4ZWN1dGUgZmllbGQgaG9va3NcblxuZXhwb3J0IGNvbnN0IHByb21pc2UgPSBhc3luYyAoe1xuICBjb2xsZWN0aW9uLFxuICBjb250ZXh0LFxuICBkYXRhLFxuICBkb2MsXG4gIGZpZWxkLFxuICBnbG9iYWwsXG4gIG9wZXJhdGlvbixcbiAgcHJldmlvdXNEb2MsXG4gIHByZXZpb3VzU2libGluZ0RvYyxcbiAgcmVxLFxuICBzaWJsaW5nRGF0YSxcbiAgc2libGluZ0RvYyxcbn06IEFyZ3MpOiBQcm9taXNlPHZvaWQ+ID0+IHtcbiAgaWYgKGZpZWxkQWZmZWN0c0RhdGEoZmllbGQpKSB7XG4gICAgLy8gRXhlY3V0ZSBob29rc1xuICAgIGlmIChmaWVsZC5ob29rcz8uYWZ0ZXJDaGFuZ2UpIHtcbiAgICAgIGF3YWl0IGZpZWxkLmhvb2tzLmFmdGVyQ2hhbmdlLnJlZHVjZShhc3luYyAocHJpb3JIb29rLCBjdXJyZW50SG9vaykgPT4ge1xuICAgICAgICBhd2FpdCBwcmlvckhvb2tcblxuICAgICAgICBjb25zdCBob29rZWRWYWx1ZSA9IGF3YWl0IGN1cnJlbnRIb29rKHtcbiAgICAgICAgICBjb2xsZWN0aW9uLFxuICAgICAgICAgIGNvbnRleHQsXG4gICAgICAgICAgZGF0YSxcbiAgICAgICAgICBmaWVsZCxcbiAgICAgICAgICBnbG9iYWwsXG4gICAgICAgICAgb3BlcmF0aW9uLFxuICAgICAgICAgIG9yaWdpbmFsRG9jOiBkb2MsXG4gICAgICAgICAgcHJldmlvdXNEb2MsXG4gICAgICAgICAgcHJldmlvdXNTaWJsaW5nRG9jLFxuICAgICAgICAgIHByZXZpb3VzVmFsdWU6IHByZXZpb3VzRG9jW2ZpZWxkLm5hbWVdLFxuICAgICAgICAgIHJlcSxcbiAgICAgICAgICBzaWJsaW5nRGF0YSxcbiAgICAgICAgICB2YWx1ZTogc2libGluZ0RhdGFbZmllbGQubmFtZV0sXG4gICAgICAgIH0pXG5cbiAgICAgICAgaWYgKGhvb2tlZFZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdID0gaG9va2VkVmFsdWVcbiAgICAgICAgfVxuICAgICAgfSwgUHJvbWlzZS5yZXNvbHZlKCkpXG4gICAgfVxuICB9XG5cbiAgLy8gVHJhdmVyc2Ugc3ViZmllbGRzXG4gIHN3aXRjaCAoZmllbGQudHlwZSkge1xuICAgIGNhc2UgJ2dyb3VwJzoge1xuICAgICAgYXdhaXQgdHJhdmVyc2VGaWVsZHMoe1xuICAgICAgICBjb2xsZWN0aW9uLFxuICAgICAgICBjb250ZXh0LFxuICAgICAgICBkYXRhLFxuICAgICAgICBkb2MsXG4gICAgICAgIGZpZWxkczogZmllbGQuZmllbGRzLFxuICAgICAgICBnbG9iYWwsXG4gICAgICAgIG9wZXJhdGlvbixcbiAgICAgICAgcHJldmlvdXNEb2MsXG4gICAgICAgIHByZXZpb3VzU2libGluZ0RvYzogcHJldmlvdXNEb2NbZmllbGQubmFtZV0gYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gICAgICAgIHJlcSxcbiAgICAgICAgc2libGluZ0RhdGE6IChzaWJsaW5nRGF0YT8uW2ZpZWxkLm5hbWVdIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+KSB8fCB7fSxcbiAgICAgICAgc2libGluZ0RvYzogc2libGluZ0RvY1tmaWVsZC5uYW1lXSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgICAgIH0pXG5cbiAgICAgIGJyZWFrXG4gICAgfVxuXG4gICAgY2FzZSAnYXJyYXknOiB7XG4gICAgICBjb25zdCByb3dzID0gc2libGluZ0RvY1tmaWVsZC5uYW1lXVxuXG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShyb3dzKSkge1xuICAgICAgICBjb25zdCBwcm9taXNlcyA9IFtdXG4gICAgICAgIHJvd3MuZm9yRWFjaCgocm93LCBpKSA9PiB7XG4gICAgICAgICAgcHJvbWlzZXMucHVzaChcbiAgICAgICAgICAgIHRyYXZlcnNlRmllbGRzKHtcbiAgICAgICAgICAgICAgY29sbGVjdGlvbixcbiAgICAgICAgICAgICAgY29udGV4dCxcbiAgICAgICAgICAgICAgZGF0YSxcbiAgICAgICAgICAgICAgZG9jLFxuICAgICAgICAgICAgICBmaWVsZHM6IGZpZWxkLmZpZWxkcyxcbiAgICAgICAgICAgICAgZ2xvYmFsLFxuICAgICAgICAgICAgICBvcGVyYXRpb24sXG4gICAgICAgICAgICAgIHByZXZpb3VzRG9jLFxuICAgICAgICAgICAgICBwcmV2aW91c1NpYmxpbmdEb2M6IHByZXZpb3VzRG9jPy5bZmllbGQubmFtZV0/LltpXSB8fCAoe30gYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4pLFxuICAgICAgICAgICAgICByZXEsXG4gICAgICAgICAgICAgIHNpYmxpbmdEYXRhOiBzaWJsaW5nRGF0YT8uW2ZpZWxkLm5hbWVdPy5baV0gfHwge30sXG4gICAgICAgICAgICAgIHNpYmxpbmdEb2M6IHsgLi4ucm93IH0gfHwge30sXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICApXG4gICAgICAgIH0pXG4gICAgICAgIGF3YWl0IFByb21pc2UuYWxsKHByb21pc2VzKVxuICAgICAgfVxuICAgICAgYnJlYWtcbiAgICB9XG5cbiAgICBjYXNlICdibG9ja3MnOiB7XG4gICAgICBjb25zdCByb3dzID0gc2libGluZ0RvY1tmaWVsZC5uYW1lXVxuXG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShyb3dzKSkge1xuICAgICAgICBjb25zdCBwcm9taXNlcyA9IFtdXG4gICAgICAgIHJvd3MuZm9yRWFjaCgocm93LCBpKSA9PiB7XG4gICAgICAgICAgY29uc3QgYmxvY2sgPSBmaWVsZC5ibG9ja3MuZmluZCgoYmxvY2tUeXBlKSA9PiBibG9ja1R5cGUuc2x1ZyA9PT0gcm93LmJsb2NrVHlwZSlcblxuICAgICAgICAgIGlmIChibG9jaykge1xuICAgICAgICAgICAgcHJvbWlzZXMucHVzaChcbiAgICAgICAgICAgICAgdHJhdmVyc2VGaWVsZHMoe1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb24sXG4gICAgICAgICAgICAgICAgY29udGV4dCxcbiAgICAgICAgICAgICAgICBkYXRhLFxuICAgICAgICAgICAgICAgIGRvYyxcbiAgICAgICAgICAgICAgICBmaWVsZHM6IGJsb2NrLmZpZWxkcyxcbiAgICAgICAgICAgICAgICBnbG9iYWwsXG4gICAgICAgICAgICAgICAgb3BlcmF0aW9uLFxuICAgICAgICAgICAgICAgIHByZXZpb3VzRG9jLFxuICAgICAgICAgICAgICAgIHByZXZpb3VzU2libGluZ0RvYzpcbiAgICAgICAgICAgICAgICAgIHByZXZpb3VzRG9jPy5bZmllbGQubmFtZV0/LltpXSB8fCAoe30gYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4pLFxuICAgICAgICAgICAgICAgIHJlcSxcbiAgICAgICAgICAgICAgICBzaWJsaW5nRGF0YTogc2libGluZ0RhdGE/LltmaWVsZC5uYW1lXT8uW2ldIHx8IHt9LFxuICAgICAgICAgICAgICAgIHNpYmxpbmdEb2M6IHsgLi4ucm93IH0gfHwge30sXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKVxuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICAgYXdhaXQgUHJvbWlzZS5hbGwocHJvbWlzZXMpXG4gICAgICB9XG5cbiAgICAgIGJyZWFrXG4gICAgfVxuXG4gICAgY2FzZSAncm93JzpcbiAgICBjYXNlICdjb2xsYXBzaWJsZSc6IHtcbiAgICAgIGF3YWl0IHRyYXZlcnNlRmllbGRzKHtcbiAgICAgICAgY29sbGVjdGlvbixcbiAgICAgICAgY29udGV4dCxcbiAgICAgICAgZGF0YSxcbiAgICAgICAgZG9jLFxuICAgICAgICBmaWVsZHM6IGZpZWxkLmZpZWxkcyxcbiAgICAgICAgZ2xvYmFsLFxuICAgICAgICBvcGVyYXRpb24sXG4gICAgICAgIHByZXZpb3VzRG9jLFxuICAgICAgICBwcmV2aW91c1NpYmxpbmdEb2M6IHsgLi4ucHJldmlvdXNTaWJsaW5nRG9jIH0sXG4gICAgICAgIHJlcSxcbiAgICAgICAgc2libGluZ0RhdGE6IHNpYmxpbmdEYXRhIHx8IHt9LFxuICAgICAgICBzaWJsaW5nRG9jOiB7IC4uLnNpYmxpbmdEb2MgfSxcbiAgICAgIH0pXG5cbiAgICAgIGJyZWFrXG4gICAgfVxuXG4gICAgY2FzZSAndGFiJzoge1xuICAgICAgbGV0IHRhYlNpYmxpbmdEYXRhID0gc2libGluZ0RhdGFcbiAgICAgIGxldCB0YWJTaWJsaW5nRG9jID0gc2libGluZ0RvY1xuICAgICAgbGV0IHRhYlByZXZpb3VzU2libGluZ0RvYyA9IHNpYmxpbmdEb2NcblxuICAgICAgaWYgKHRhYkhhc05hbWUoZmllbGQpKSB7XG4gICAgICAgIHRhYlNpYmxpbmdEYXRhID0gc2libGluZ0RhdGFbZmllbGQubmFtZV0gYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgICAgICAgdGFiU2libGluZ0RvYyA9IHNpYmxpbmdEb2NbZmllbGQubmFtZV0gYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgICAgICAgdGFiUHJldmlvdXNTaWJsaW5nRG9jID0gcHJldmlvdXNEb2NbZmllbGQubmFtZV0gYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgICAgIH1cblxuICAgICAgYXdhaXQgdHJhdmVyc2VGaWVsZHMoe1xuICAgICAgICBjb2xsZWN0aW9uLFxuICAgICAgICBjb250ZXh0LFxuICAgICAgICBkYXRhLFxuICAgICAgICBkb2MsXG4gICAgICAgIGZpZWxkczogZmllbGQuZmllbGRzLFxuICAgICAgICBnbG9iYWwsXG4gICAgICAgIG9wZXJhdGlvbixcbiAgICAgICAgcHJldmlvdXNEb2MsXG4gICAgICAgIHByZXZpb3VzU2libGluZ0RvYzogdGFiUHJldmlvdXNTaWJsaW5nRG9jLFxuICAgICAgICByZXEsXG4gICAgICAgIHNpYmxpbmdEYXRhOiB0YWJTaWJsaW5nRGF0YSxcbiAgICAgICAgc2libGluZ0RvYzogdGFiU2libGluZ0RvYyxcbiAgICAgIH0pXG5cbiAgICAgIGJyZWFrXG4gICAgfVxuXG4gICAgY2FzZSAndGFicyc6IHtcbiAgICAgIGF3YWl0IHRyYXZlcnNlRmllbGRzKHtcbiAgICAgICAgY29sbGVjdGlvbixcbiAgICAgICAgY29udGV4dCxcbiAgICAgICAgZGF0YSxcbiAgICAgICAgZG9jLFxuICAgICAgICBmaWVsZHM6IGZpZWxkLnRhYnMubWFwKCh0YWIpID0+ICh7IC4uLnRhYiwgdHlwZTogJ3RhYicgfSkpLFxuICAgICAgICBnbG9iYWwsXG4gICAgICAgIG9wZXJhdGlvbixcbiAgICAgICAgcHJldmlvdXNEb2MsXG4gICAgICAgIHByZXZpb3VzU2libGluZ0RvYzogeyAuLi5wcmV2aW91c1NpYmxpbmdEb2MgfSxcbiAgICAgICAgcmVxLFxuICAgICAgICBzaWJsaW5nRGF0YTogc2libGluZ0RhdGEgfHwge30sXG4gICAgICAgIHNpYmxpbmdEb2M6IHsgLi4uc2libGluZ0RvYyB9LFxuICAgICAgfSlcbiAgICAgIGJyZWFrXG4gICAgfVxuXG4gICAgZGVmYXVsdDoge1xuICAgICAgYnJlYWtcbiAgICB9XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJwcm9taXNlIiwiY29sbGVjdGlvbiIsImNvbnRleHQiLCJkYXRhIiwiZG9jIiwiZmllbGQiLCJnbG9iYWwiLCJvcGVyYXRpb24iLCJwcmV2aW91c0RvYyIsInByZXZpb3VzU2libGluZ0RvYyIsInJlcSIsInNpYmxpbmdEYXRhIiwic2libGluZ0RvYyIsImZpZWxkQWZmZWN0c0RhdGEiLCJob29rcyIsImFmdGVyQ2hhbmdlIiwicmVkdWNlIiwicHJpb3JIb29rIiwiY3VycmVudEhvb2siLCJob29rZWRWYWx1ZSIsIm9yaWdpbmFsRG9jIiwicHJldmlvdXNWYWx1ZSIsIm5hbWUiLCJ2YWx1ZSIsInVuZGVmaW5lZCIsIlByb21pc2UiLCJyZXNvbHZlIiwidHlwZSIsInRyYXZlcnNlRmllbGRzIiwiZmllbGRzIiwicm93cyIsIkFycmF5IiwiaXNBcnJheSIsInByb21pc2VzIiwiZm9yRWFjaCIsInJvdyIsImkiLCJwdXNoIiwiYWxsIiwiYmxvY2siLCJibG9ja3MiLCJmaW5kIiwiYmxvY2tUeXBlIiwic2x1ZyIsInRhYlNpYmxpbmdEYXRhIiwidGFiU2libGluZ0RvYyIsInRhYlByZXZpb3VzU2libGluZ0RvYyIsInRhYkhhc05hbWUiLCJ0YWJzIiwibWFwIiwidGFiIl0sIm1hcHBpbmdzIjoiQUFBQSxvQ0FBb0M7Ozs7K0JBMkJ2QkE7OztlQUFBQTs7O3VCQXJCZ0M7Z0NBQ2Q7QUFvQnhCLE1BQU1BLFVBQVUsT0FBTyxFQUM1QkMsVUFBVSxFQUNWQyxPQUFPLEVBQ1BDLElBQUksRUFDSkMsR0FBRyxFQUNIQyxLQUFLLEVBQ0xDLE1BQU0sRUFDTkMsU0FBUyxFQUNUQyxXQUFXLEVBQ1hDLGtCQUFrQixFQUNsQkMsR0FBRyxFQUNIQyxXQUFXLEVBQ1hDLFVBQVUsRUFDTDtJQUNMLElBQUlDLElBQUFBLHVCQUFnQixFQUFDUixRQUFRO1FBQzNCLGdCQUFnQjtRQUNoQixJQUFJQSxNQUFNUyxLQUFLLEVBQUVDLGFBQWE7WUFDNUIsTUFBTVYsTUFBTVMsS0FBSyxDQUFDQyxXQUFXLENBQUNDLE1BQU0sQ0FBQyxPQUFPQyxXQUFXQztnQkFDckQsTUFBTUQ7Z0JBRU4sTUFBTUUsY0FBYyxNQUFNRCxZQUFZO29CQUNwQ2pCO29CQUNBQztvQkFDQUM7b0JBQ0FFO29CQUNBQztvQkFDQUM7b0JBQ0FhLGFBQWFoQjtvQkFDYkk7b0JBQ0FDO29CQUNBWSxlQUFlYixXQUFXLENBQUNILE1BQU1pQixJQUFJLENBQUM7b0JBQ3RDWjtvQkFDQUM7b0JBQ0FZLE9BQU9aLFdBQVcsQ0FBQ04sTUFBTWlCLElBQUksQ0FBQztnQkFDaEM7Z0JBRUEsSUFBSUgsZ0JBQWdCSyxXQUFXO29CQUM3QlosVUFBVSxDQUFDUCxNQUFN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
|
|
190
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maWVsZHMvaG9va3MvYWZ0ZXJDaGFuZ2UvcHJvbWlzZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby1wYXJhbS1yZWFzc2lnbiAqL1xuaW1wb3J0IHR5cGUgeyBTYW5pdGl6ZWRDb2xsZWN0aW9uQ29uZmlnIH0gZnJvbSAnLi4vLi4vLi4vY29sbGVjdGlvbnMvY29uZmlnL3R5cGVzLmQudHMnXG5pbXBvcnQgdHlwZSB7IFNhbml0aXplZEdsb2JhbENvbmZpZyB9IGZyb20gJy4uLy4uLy4uL2dsb2JhbHMvY29uZmlnL3R5cGVzLmQudHMnXG5pbXBvcnQgdHlwZSB7IFBheWxvYWRSZXF1ZXN0LCBSZXF1ZXN0Q29udGV4dCB9IGZyb20gJy4uLy4uLy4uL3R5cGVzL2luZGV4LmQudHMnXG5pbXBvcnQgdHlwZSB7IEZpZWxkLCBUYWJBc0ZpZWxkIH0gZnJvbSAnLi4vLi4vY29uZmlnL3R5cGVzLmQudHMnXG5cbmltcG9ydCB7IGZpZWxkQWZmZWN0c0RhdGEsIHRhYkhhc05hbWUgfSBmcm9tICcuLi8uLi9jb25maWcvdHlwZXMuanMnXG5pbXBvcnQgeyB0cmF2ZXJzZUZpZWxkcyB9IGZyb20gJy4vdHJhdmVyc2VGaWVsZHMuanMnXG5cbnR5cGUgQXJncyA9IHtcbiAgY29sbGVjdGlvbjogU2FuaXRpemVkQ29sbGVjdGlvbkNvbmZpZyB8IG51bGxcbiAgY29udGV4dDogUmVxdWVzdENvbnRleHRcbiAgZGF0YTogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgZG9jOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICBmaWVsZDogRmllbGQgfCBUYWJBc0ZpZWxkXG4gIGdsb2JhbDogU2FuaXRpemVkR2xvYmFsQ29uZmlnIHwgbnVsbFxuICBvcGVyYXRpb246ICdjcmVhdGUnIHwgJ3VwZGF0ZSdcbiAgcHJldmlvdXNEb2M6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gIHByZXZpb3VzU2libGluZ0RvYzogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgcmVxOiBQYXlsb2FkUmVxdWVzdFxuICBzaWJsaW5nRGF0YTogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgc2libGluZ0RvYzogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbn1cblxuLy8gVGhpcyBmdW5jdGlvbiBpcyByZXNwb25zaWJsZSBmb3IgdGhlIGZvbGxvd2luZyBhY3Rpb25zLCBpbiBvcmRlcjpcbi8vIC0gRXhlY3V0ZSBmaWVsZCBob29rc1xuXG5leHBvcnQgY29uc3QgcHJvbWlzZSA9IGFzeW5jICh7XG4gIGNvbGxlY3Rpb24sXG4gIGNvbnRleHQsXG4gIGRhdGEsXG4gIGRvYyxcbiAgZmllbGQsXG4gIGdsb2JhbCxcbiAgb3BlcmF0aW9uLFxuICBwcmV2aW91c0RvYyxcbiAgcHJldmlvdXNTaWJsaW5nRG9jLFxuICByZXEsXG4gIHNpYmxpbmdEYXRhLFxuICBzaWJsaW5nRG9jLFxufTogQXJncyk6IFByb21pc2U8dm9pZD4gPT4ge1xuICBpZiAoZmllbGRBZmZlY3RzRGF0YShmaWVsZCkpIHtcbiAgICAvLyBFeGVjdXRlIGhvb2tzXG4gICAgaWYgKGZpZWxkLmhvb2tzPy5hZnRlckNoYW5nZSkge1xuICAgICAgYXdhaXQgZmllbGQuaG9va3MuYWZ0ZXJDaGFuZ2UucmVkdWNlKGFzeW5jIChwcmlvckhvb2ssIGN1cnJlbnRIb29rKSA9PiB7XG4gICAgICAgIGF3YWl0IHByaW9ySG9va1xuXG4gICAgICAgIGNvbnN0IGhvb2tlZFZhbHVlID0gYXdhaXQgY3VycmVudEhvb2soe1xuICAgICAgICAgIGNvbGxlY3Rpb24sXG4gICAgICAgICAgY29udGV4dCxcbiAgICAgICAgICBkYXRhLFxuICAgICAgICAgIGZpZWxkLFxuICAgICAgICAgIGdsb2JhbCxcbiAgICAgICAgICBvcGVyYXRpb24sXG4gICAgICAgICAgb3JpZ2luYWxEb2M6IGRvYyxcbiAgICAgICAgICBwcmV2aW91c0RvYyxcbiAgICAgICAgICBwcmV2aW91c1NpYmxpbmdEb2MsXG4gICAgICAgICAgcHJldmlvdXNWYWx1ZTogcHJldmlvdXNEb2NbZmllbGQubmFtZV0sXG4gICAgICAgICAgcmVxLFxuICAgICAgICAgIHNpYmxpbmdEYXRhLFxuICAgICAgICAgIHZhbHVlOiBzaWJsaW5nRGF0YVtmaWVsZC5uYW1lXSxcbiAgICAgICAgfSlcblxuICAgICAgICBpZiAoaG9va2VkVmFsdWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHNpYmxpbmdEb2NbZmllbGQubmFtZV0gPSBob29rZWRWYWx1ZVxuICAgICAgICB9XG4gICAgICB9LCBQcm9taXNlLnJlc29sdmUoKSlcbiAgICB9XG4gIH1cblxuICAvLyBUcmF2ZXJzZSBzdWJmaWVsZHNcbiAgc3dpdGNoIChmaWVsZC50eXBlKSB7XG4gICAgY2FzZSAnZ3JvdXAnOiB7XG4gICAgICBhd2FpdCB0cmF2ZXJzZUZpZWxkcyh7XG4gICAgICAgIGNvbGxlY3Rpb24sXG4gICAgICAgIGNvbnRleHQsXG4gICAgICAgIGRhdGEsXG4gICAgICAgIGRvYyxcbiAgICAgICAgZmllbGRzOiBmaWVsZC5maWVsZHMsXG4gICAgICAgIGdsb2JhbCxcbiAgICAgICAgb3BlcmF0aW9uLFxuICAgICAgICBwcmV2aW91c0RvYyxcbiAgICAgICAgcHJldmlvdXNTaWJsaW5nRG9jOiBwcmV2aW91c0RvY1tmaWVsZC5uYW1lXSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgICAgICAgcmVxLFxuICAgICAgICBzaWJsaW5nRGF0YTogKHNpYmxpbmdEYXRhPy5bZmllbGQubmFtZV0gYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4pIHx8IHt9LFxuICAgICAgICBzaWJsaW5nRG9jOiBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICAgICAgfSlcblxuICAgICAgYnJlYWtcbiAgICB9XG5cbiAgICBjYXNlICdhcnJheSc6IHtcbiAgICAgIGNvbnN0IHJvd3MgPSBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdXG5cbiAgICAgIGlmIChBcnJheS5pc0FycmF5KHJvd3MpKSB7XG4gICAgICAgIGNvbnN0IHByb21pc2VzID0gW11cbiAgICAgICAgcm93cy5mb3JFYWNoKChyb3csIGkpID0+IHtcbiAgICAgICAgICBwcm9taXNlcy5wdXNoKFxuICAgICAgICAgICAgdHJhdmVyc2VGaWVsZHMoe1xuICAgICAgICAgICAgICBjb2xsZWN0aW9uLFxuICAgICAgICAgICAgICBjb250ZXh0LFxuICAgICAgICAgICAgICBkYXRhLFxuICAgICAgICAgICAgICBkb2MsXG4gICAgICAgICAgICAgIGZpZWxkczogZmllbGQuZmllbGRzLFxuICAgICAgICAgICAgICBnbG9iYWwsXG4gICAgICAgICAgICAgIG9wZXJhdGlvbixcbiAgICAgICAgICAgICAgcHJldmlvdXNEb2MsXG4gICAgICAgICAgICAgIHByZXZpb3VzU2libGluZ0RvYzogcHJldmlvdXNEb2M/LltmaWVsZC5uYW1lXT8uW2ldIHx8ICh7fSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiksXG4gICAgICAgICAgICAgIHJlcSxcbiAgICAgICAgICAgICAgc2libGluZ0RhdGE6IHNpYmxpbmdEYXRhPy5bZmllbGQubmFtZV0/LltpXSB8fCB7fSxcbiAgICAgICAgICAgICAgc2libGluZ0RvYzogeyAuLi5yb3cgfSB8fCB7fSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgIClcbiAgICAgICAgfSlcbiAgICAgICAgYXdhaXQgUHJvbWlzZS5hbGwocHJvbWlzZXMpXG4gICAgICB9XG4gICAgICBicmVha1xuICAgIH1cblxuICAgIGNhc2UgJ2Jsb2Nrcyc6IHtcbiAgICAgIGNvbnN0IHJvd3MgPSBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdXG5cbiAgICAgIGlmIChBcnJheS5pc0FycmF5KHJvd3MpKSB7XG4gICAgICAgIGNvbnN0IHByb21pc2VzID0gW11cbiAgICAgICAgcm93cy5mb3JFYWNoKChyb3csIGkpID0+IHtcbiAgICAgICAgICBjb25zdCBibG9jayA9IGZpZWxkLmJsb2Nrcy5maW5kKChibG9ja1R5cGUpID0+IGJsb2NrVHlwZS5zbHVnID09PSByb3cuYmxvY2tUeXBlKVxuXG4gICAgICAgICAgaWYgKGJsb2NrKSB7XG4gICAgICAgICAgICBwcm9taXNlcy5wdXNoKFxuICAgICAgICAgICAgICB0cmF2ZXJzZUZpZWxkcyh7XG4gICAgICAgICAgICAgICAgY29sbGVjdGlvbixcbiAgICAgICAgICAgICAgICBjb250ZXh0LFxuICAgICAgICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgICAgICAgZG9jLFxuICAgICAgICAgICAgICAgIGZpZWxkczogYmxvY2suZmllbGRzLFxuICAgICAgICAgICAgICAgIGdsb2JhbCxcbiAgICAgICAgICAgICAgICBvcGVyYXRpb24sXG4gICAgICAgICAgICAgICAgcHJldmlvdXNEb2MsXG4gICAgICAgICAgICAgICAgcHJldmlvdXNTaWJsaW5nRG9jOlxuICAgICAgICAgICAgICAgICAgcHJldmlvdXNEb2M/LltmaWVsZC5uYW1lXT8uW2ldIHx8ICh7fSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiksXG4gICAgICAgICAgICAgICAgcmVxLFxuICAgICAgICAgICAgICAgIHNpYmxpbmdEYXRhOiBzaWJsaW5nRGF0YT8uW2ZpZWxkLm5hbWVdPy5baV0gfHwge30sXG4gICAgICAgICAgICAgICAgc2libGluZ0RvYzogeyAuLi5yb3cgfSB8fCB7fSxcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICApXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgICBhd2FpdCBQcm9taXNlLmFsbChwcm9taXNlcylcbiAgICAgIH1cblxuICAgICAgYnJlYWtcbiAgICB9XG5cbiAgICBjYXNlICdyb3cnOlxuICAgIGNhc2UgJ2NvbGxhcHNpYmxlJzoge1xuICAgICAgYXdhaXQgdHJhdmVyc2VGaWVsZHMoe1xuICAgICAgICBjb2xsZWN0aW9uLFxuICAgICAgICBjb250ZXh0LFxuICAgICAgICBkYXRhLFxuICAgICAgICBkb2MsXG4gICAgICAgIGZpZWxkczogZmllbGQuZmllbGRzLFxuICAgICAgICBnbG9iYWwsXG4gICAgICAgIG9wZXJhdGlvbixcbiAgICAgICAgcHJldmlvdXNEb2MsXG4gICAgICAgIHByZXZpb3VzU2libGluZ0RvYzogeyAuLi5wcmV2aW91c1NpYmxpbmdEb2MgfSxcbiAgICAgICAgcmVxLFxuICAgICAgICBzaWJsaW5nRGF0YTogc2libGluZ0RhdGEgfHwge30sXG4gICAgICAgIHNpYmxpbmdEb2M6IHsgLi4uc2libGluZ0RvYyB9LFxuICAgICAgfSlcblxuICAgICAgYnJlYWtcbiAgICB9XG5cbiAgICBjYXNlICd0YWInOiB7XG4gICAgICBsZXQgdGFiU2libGluZ0RhdGEgPSBzaWJsaW5nRGF0YVxuICAgICAgbGV0IHRhYlNpYmxpbmdEb2MgPSBzaWJsaW5nRG9jXG4gICAgICBsZXQgdGFiUHJldmlvdXNTaWJsaW5nRG9jID0gc2libGluZ0RvY1xuXG4gICAgICBpZiAodGFiSGFzTmFtZShmaWVsZCkpIHtcbiAgICAgICAgdGFiU2libGluZ0RhdGEgPSBzaWJsaW5nRGF0YVtmaWVsZC5uYW1lXSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICAgICAgICB0YWJTaWJsaW5nRG9jID0gc2libGluZ0RvY1tmaWVsZC5uYW1lXSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICAgICAgICB0YWJQcmV2aW91c1NpYmxpbmdEb2MgPSBwcmV2aW91c0RvY1tmaWVsZC5uYW1lXSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICAgICAgfVxuXG4gICAgICBhd2FpdCB0cmF2ZXJzZUZpZWxkcyh7XG4gICAgICAgIGNvbGxlY3Rpb24sXG4gICAgICAgIGNvbnRleHQsXG4gICAgICAgIGRhdGEsXG4gICAgICAgIGRvYyxcbiAgICAgICAgZmllbGRzOiBmaWVsZC5maWVsZHMsXG4gICAgICAgIGdsb2JhbCxcbiAgICAgICAgb3BlcmF0aW9uLFxuICAgICAgICBwcmV2aW91c0RvYyxcbiAgICAgICAgcHJldmlvdXNTaWJsaW5nRG9jOiB0YWJQcmV2aW91c1NpYmxpbmdEb2MsXG4gICAgICAgIHJlcSxcbiAgICAgICAgc2libGluZ0RhdGE6IHRhYlNpYmxpbmdEYXRhLFxuICAgICAgICBzaWJsaW5nRG9jOiB0YWJTaWJsaW5nRG9jLFxuICAgICAgfSlcblxuICAgICAgYnJlYWtcbiAgICB9XG5cbiAgICBjYXNlICd0YWJzJzoge1xuICAgICAgYXdhaXQgdHJhdmVyc2VGaWVsZHMoe1xuICAgICAgICBjb2xsZWN0aW9uLFxuICAgICAgICBjb250ZXh0LFxuICAgICAgICBkYXRhLFxuICAgICAgICBkb2MsXG4gICAgICAgIGZpZWxkczogZmllbGQudGFicy5tYXAoKHRhYikgPT4gKHsgLi4udGFiLCB0eXBlOiAndGFiJyB9KSksXG4gICAgICAgIGdsb2JhbCxcbiAgICAgICAgb3BlcmF0aW9uLFxuICAgICAgICBwcmV2aW91c0RvYyxcbiAgICAgICAgcHJldmlvdXNTaWJsaW5nRG9jOiB7IC4uLnByZXZpb3VzU2libGluZ0RvYyB9LFxuICAgICAgICByZXEsXG4gICAgICAgIHNpYmxpbmdEYXRhOiBzaWJsaW5nRGF0YSB8fCB7fSxcbiAgICAgICAgc2libGluZ0RvYzogeyAuLi5zaWJsaW5nRG9jIH0sXG4gICAgICB9KVxuICAgICAgYnJlYWtcbiAgICB9XG5cbiAgICBkZWZhdWx0OiB7XG4gICAgICBicmVha1xuICAgIH1cbiAgfVxufVxuIl0sIm5hbWVzIjpbImZpZWxkQWZmZWN0c0RhdGEiLCJ0YWJIYXNOYW1lIiwidHJhdmVyc2VGaWVsZHMiLCJwcm9taXNlIiwiY29sbGVjdGlvbiIsImNvbnRleHQiLCJkYXRhIiwiZG9jIiwiZmllbGQiLCJnbG9iYWwiLCJvcGVyYXRpb24iLCJwcmV2aW91c0RvYyIsInByZXZpb3VzU2libGluZ0RvYyIsInJlcSIsInNpYmxpbmdEYXRhIiwic2libGluZ0RvYyIsImhvb2tzIiwiYWZ0ZXJDaGFuZ2UiLCJyZWR1Y2UiLCJwcmlvckhvb2siLCJjdXJyZW50SG9vayIsImhvb2tlZFZhbHVlIiwib3JpZ2luYWxEb2MiLCJwcmV2aW91c1ZhbHVlIiwibmFtZSIsInZhbHVlIiwidW5kZWZpbmVkIiwiUHJvbWlzZSIsInJlc29sdmUiLCJ0eXBlIiwiZmllbGRzIiwicm93cyIsIkFycmF5IiwiaXNBcnJheSIsInByb21pc2VzIiwiZm9yRWFjaCIsInJvdyIsImkiLCJwdXNoIiwiYWxsIiwiYmxvY2siLCJibG9ja3MiLCJmaW5kIiwiYmxvY2tUeXBlIiwic2x1ZyIsInRhYlNpYmxpbmdEYXRhIiwidGFiU2libGluZ0RvYyIsInRhYlByZXZpb3VzU2libGluZ0RvYyIsInRhYnMiLCJtYXAiLCJ0YWIiXSwibWFwcGluZ3MiOiJBQUFBLG9DQUFvQyxHQU1wQyxTQUFTQSxnQkFBZ0IsRUFBRUMsVUFBVSxRQUFRLHdCQUF1QjtBQUNwRSxTQUFTQyxjQUFjLFFBQVEsc0JBQXFCO0FBaUJwRCxvRUFBb0U7QUFDcEUsd0JBQXdCO0FBRXhCLE9BQU8sTUFBTUMsVUFBVSxPQUFPLEVBQzVCQyxVQUFVLEVBQ1ZDLE9BQU8sRUFDUEMsSUFBSSxFQUNKQyxHQUFHLEVBQ0hDLEtBQUssRUFDTEMsTUFBTSxFQUNOQyxTQUFTLEVBQ1RDLFdBQVcsRUFDWEMsa0JBQWtCLEVBQ2xCQyxHQUFHLEVBQ0hDLFdBQVcsRUFDWEMsVUFBVSxFQUNMO0lBQ0wsSUFBSWYsaUJBQWlCUSxRQUFRO1FBQzNCLGdCQUFnQjtRQUNoQixJQUFJQSxNQUFNUSxLQUFLLEVBQUVDLGFBQWE7WUFDNUIsTUFBTVQsTUFBTVEsS0FBSyxDQUFDQyxXQUFXLENBQUNDLE1BQU0sQ0FBQyxPQUFPQyxXQUFXQztnQkFDckQsTUFBTUQ7Z0JBRU4sTUFBTUUsY0FBYyxNQUFNRCxZQUFZO29CQUNwQ2hCO29CQUNBQztvQkFDQUM7b0JBQ0FFO29CQUNBQztvQkFDQUM7b0JBQ0FZLGFBQWFmO29CQUNiSTtvQkFDQUM7b0JBQ0FXLGVBQWVaLFdBQVcsQ0FBQ0gsTUFBTWdCLElBQUksQ0FBQztvQkFDdENYO29CQUNBQztvQkFDQVcsT0FB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
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { SanitizedCollectionConfig } from '../../../collections/config/types';
|
|
2
|
-
import type { SanitizedGlobalConfig } from '../../../globals/config/types';
|
|
3
|
-
import type { PayloadRequest, RequestContext } from '../../../types';
|
|
4
|
-
import type { Field, TabAsField } from '../../config/types';
|
|
1
|
+
import type { SanitizedCollectionConfig } from '../../../collections/config/types.d.ts';
|
|
2
|
+
import type { SanitizedGlobalConfig } from '../../../globals/config/types.d.ts';
|
|
3
|
+
import type { PayloadRequest, RequestContext } from '../../../types/index.d.ts';
|
|
4
|
+
import type { Field, TabAsField } from '../../config/types.d.ts';
|
|
5
5
|
type Args = {
|
|
6
6
|
collection: SanitizedCollectionConfig | null;
|
|
7
7
|
context: RequestContext;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"traverseFields.d.ts","sourceRoot":"","sources":["../../../../src/fields/hooks/afterChange/traverseFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"traverseFields.d.ts","sourceRoot":"","sources":["../../../../src/fields/hooks/afterChange/traverseFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAA;AACvF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAA;AAC/E,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC/E,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAIhE,KAAK,IAAI,GAAG;IACV,UAAU,EAAE,yBAAyB,GAAG,IAAI,CAAA;IAC5C,OAAO,EAAE,cAAc,CAAA;IACvB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7B,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC5B,MAAM,EAAE,CAAC,KAAK,GAAG,UAAU,CAAC,EAAE,CAAA;IAC9B,MAAM,EAAE,qBAAqB,GAAG,IAAI,CAAA;IACpC,SAAS,EAAE,QAAQ,GAAG,QAAQ,CAAA;IAC9B,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACpC,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC3C,GAAG,EAAE,cAAc,CAAA;IACnB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACpC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACpC,CAAA;AAED,eAAO,MAAM,cAAc,kIAaxB,IAAI,KAAG,QAAQ,IAAI,CAuBrB,CAAA"}
|
|
@@ -1,18 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "traverseFields", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return traverseFields;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
const _promise = require("./promise");
|
|
12
|
-
const traverseFields = async ({ collection, context, data, doc, fields, global, operation, previousDoc, previousSiblingDoc, req, siblingData, siblingDoc })=>{
|
|
1
|
+
import { promise } from './promise.js';
|
|
2
|
+
export const traverseFields = async ({ collection, context, data, doc, fields, global, operation, previousDoc, previousSiblingDoc, req, siblingData, siblingDoc })=>{
|
|
13
3
|
const promises = [];
|
|
14
4
|
fields.forEach((field)=>{
|
|
15
|
-
promises.push(
|
|
5
|
+
promises.push(promise({
|
|
16
6
|
collection,
|
|
17
7
|
context,
|
|
18
8
|
data,
|
|
@@ -30,4 +20,4 @@ const traverseFields = async ({ collection, context, data, doc, fields, global,
|
|
|
30
20
|
await Promise.all(promises);
|
|
31
21
|
};
|
|
32
22
|
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maWVsZHMvaG9va3MvYWZ0ZXJDaGFuZ2UvdHJhdmVyc2VGaWVsZHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBTYW5pdGl6ZWRDb2xsZWN0aW9uQ29uZmlnIH0gZnJvbSAnLi4vLi4vLi4vY29sbGVjdGlvbnMvY29uZmlnL3R5cGVzLmQudHMnXG5pbXBvcnQgdHlwZSB7IFNhbml0aXplZEdsb2JhbENvbmZpZyB9IGZyb20gJy4uLy4uLy4uL2dsb2JhbHMvY29uZmlnL3R5cGVzLmQudHMnXG5pbXBvcnQgdHlwZSB7IFBheWxvYWRSZXF1ZXN0LCBSZXF1ZXN0Q29udGV4dCB9IGZyb20gJy4uLy4uLy4uL3R5cGVzL2luZGV4LmQudHMnXG5pbXBvcnQgdHlwZSB7IEZpZWxkLCBUYWJBc0ZpZWxkIH0gZnJvbSAnLi4vLi4vY29uZmlnL3R5cGVzLmQudHMnXG5cbmltcG9ydCB7IHByb21pc2UgfSBmcm9tICcuL3Byb21pc2UuanMnXG5cbnR5cGUgQXJncyA9IHtcbiAgY29sbGVjdGlvbjogU2FuaXRpemVkQ29sbGVjdGlvbkNvbmZpZyB8IG51bGxcbiAgY29udGV4dDogUmVxdWVzdENvbnRleHRcbiAgZGF0YTogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgZG9jOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICBmaWVsZHM6IChGaWVsZCB8IFRhYkFzRmllbGQpW11cbiAgZ2xvYmFsOiBTYW5pdGl6ZWRHbG9iYWxDb25maWcgfCBudWxsXG4gIG9wZXJhdGlvbjogJ2NyZWF0ZScgfCAndXBkYXRlJ1xuICBwcmV2aW91c0RvYzogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgcHJldmlvdXNTaWJsaW5nRG9jOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICByZXE6IFBheWxvYWRSZXF1ZXN0XG4gIHNpYmxpbmdEYXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICBzaWJsaW5nRG9jOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxufVxuXG5leHBvcnQgY29uc3QgdHJhdmVyc2VGaWVsZHMgPSBhc3luYyAoe1xuICBjb2xsZWN0aW9uLFxuICBjb250ZXh0LFxuICBkYXRhLFxuICBkb2MsXG4gIGZpZWxkcyxcbiAgZ2xvYmFsLFxuICBvcGVyYXRpb24sXG4gIHByZXZpb3VzRG9jLFxuICBwcmV2aW91c1NpYmxpbmdEb2MsXG4gIHJlcSxcbiAgc2libGluZ0RhdGEsXG4gIHNpYmxpbmdEb2MsXG59OiBBcmdzKTogUHJvbWlzZTx2b2lkPiA9PiB7XG4gIGNvbnN0IHByb21pc2VzID0gW11cblxuICBmaWVsZHMuZm9yRWFjaCgoZmllbGQpID0+IHtcbiAgICBwcm9taXNlcy5wdXNoKFxuICAgICAgcHJvbWlzZSh7XG4gICAgICAgIGNvbGxlY3Rpb24sXG4gICAgICAgIGNvbnRleHQsXG4gICAgICAgIGRhdGEsXG4gICAgICAgIGRvYyxcbiAgICAgICAgZmllbGQsXG4gICAgICAgIGdsb2JhbCxcbiAgICAgICAgb3BlcmF0aW9uLFxuICAgICAgICBwcmV2aW91c0RvYyxcbiAgICAgICAgcHJldmlvdXNTaWJsaW5nRG9jLFxuICAgICAgICByZXEsXG4gICAgICAgIHNpYmxpbmdEYXRhLFxuICAgICAgICBzaWJsaW5nRG9jLFxuICAgICAgfSksXG4gICAgKVxuICB9KVxuXG4gIGF3YWl0IFByb21pc2UuYWxsKHByb21pc2VzKVxufVxuIl0sIm5hbWVzIjpbInByb21pc2UiLCJ0cmF2ZXJzZUZpZWxkcyIsImNvbGxlY3Rpb24iLCJjb250ZXh0IiwiZGF0YSIsImRvYyIsImZpZWxkcyIsImdsb2JhbCIsIm9wZXJhdGlvbiIsInByZXZpb3VzRG9jIiwicHJldmlvdXNTaWJsaW5nRG9jIiwicmVxIiwic2libGluZ0RhdGEiLCJzaWJsaW5nRG9jIiwicHJvbWlzZXMiLCJmb3JFYWNoIiwiZmllbGQiLCJwdXNoIiwiUHJvbWlzZSIsImFsbCJdLCJtYXBwaW5ncyI6IkFBS0EsU0FBU0EsT0FBTyxRQUFRLGVBQWM7QUFpQnRDLE9BQU8sTUFBTUMsaUJBQWlCLE9BQU8sRUFDbkNDLFVBQVUsRUFDVkMsT0FBTyxFQUNQQyxJQUFJLEVBQ0pDLEdBQUcsRUFDSEMsTUFBTSxFQUNOQyxNQUFNLEVBQ05DLFNBQVMsRUFDVEMsV0FBVyxFQUNYQyxrQkFBa0IsRUFDbEJDLEdBQUcsRUFDSEMsV0FBVyxFQUNYQyxVQUFVLEVBQ0w7SUFDTCxNQUFNQyxXQUFXLEVBQUU7SUFFbkJSLE9BQU9TLE9BQU8sQ0FBQyxDQUFDQztRQUNkRixTQUFTRyxJQUFJLENBQ1hqQixRQUFRO1lBQ05FO1lBQ0FDO1lBQ0FDO1lBQ0FDO1lBQ0FXO1lBQ0FUO1lBQ0FDO1lBQ0FDO1lBQ0FDO1lBQ0FDO1lBQ0FDO1lBQ0FDO1FBQ0Y7SUFFSjtJQUVBLE1BQU1LLFFBQVFDLEdBQUcsQ0FBQ0w7QUFDcEIsRUFBQyJ9
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { SanitizedCollectionConfig } from '../../../collections/config/types';
|
|
2
|
-
import type { SanitizedGlobalConfig } from '../../../globals/config/types';
|
|
3
|
-
import type { PayloadRequest, RequestContext } from '../../../types';
|
|
1
|
+
import type { SanitizedCollectionConfig } from '../../../collections/config/types.d.ts';
|
|
2
|
+
import type { SanitizedGlobalConfig } from '../../../globals/config/types.d.ts';
|
|
3
|
+
import type { PayloadRequest, RequestContext } from '../../../types/index.d.ts';
|
|
4
4
|
type Args = {
|
|
5
5
|
collection: SanitizedCollectionConfig | null;
|
|
6
6
|
context: RequestContext;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/fields/hooks/afterRead/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/fields/hooks/afterRead/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAA;AACvF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAA;AAC/E,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAK/E,KAAK,IAAI,GAAG;IACV,UAAU,EAAE,yBAAyB,GAAG,IAAI,CAAA;IAC5C,OAAO,EAAE,cAAc,CAAA;IACvB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC5B,cAAc,EAAE,IAAI,GAAG,MAAM,CAAA;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,MAAM,EAAE,qBAAqB,GAAG,IAAI,CAAA;IACpC,MAAM,EAAE,MAAM,CAAA;IACd,cAAc,EAAE,OAAO,CAAA;IACvB,GAAG,EAAE,cAAc,CAAA;IACnB,gBAAgB,EAAE,OAAO,CAAA;CAC1B,CAAA;AAED,wBAAsB,SAAS,CAAC,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAqD/D"}
|
|
@@ -1,24 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "afterRead", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return afterRead;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
const _deepCopyObject = require("../../../utilities/deepCopyObject");
|
|
12
|
-
const _traverseFields = require("./traverseFields");
|
|
13
|
-
async function afterRead(args) {
|
|
1
|
+
import { deepCopyObject } from '../../../utilities/deepCopyObject.js';
|
|
2
|
+
import { traverseFields } from './traverseFields.js';
|
|
3
|
+
export async function afterRead(args) {
|
|
14
4
|
const { collection, context, currentDepth: incomingCurrentDepth, depth: incomingDepth, doc: incomingDoc, fallbackLocale, findMany, flattenLocales = true, global, locale, overrideAccess, req, showHiddenFields } = args;
|
|
15
|
-
const doc =
|
|
5
|
+
const doc = deepCopyObject(incomingDoc);
|
|
16
6
|
const fieldPromises = [];
|
|
17
7
|
const populationPromises = [];
|
|
18
8
|
let depth = incomingDepth || incomingDepth === 0 ? parseInt(String(incomingDepth), 10) : req.payload.config.defaultDepth;
|
|
19
9
|
if (depth > req.payload.config.maxDepth) depth = req.payload.config.maxDepth;
|
|
20
10
|
const currentDepth = incomingCurrentDepth || 1;
|
|
21
|
-
|
|
11
|
+
traverseFields({
|
|
22
12
|
collection,
|
|
23
13
|
context,
|
|
24
14
|
currentDepth,
|
|
@@ -42,4 +32,4 @@ async function afterRead(args) {
|
|
|
42
32
|
return doc;
|
|
43
33
|
}
|
|
44
34
|
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maWVsZHMvaG9va3MvYWZ0ZXJSZWFkL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgU2FuaXRpemVkQ29sbGVjdGlvbkNvbmZpZyB9IGZyb20gJy4uLy4uLy4uL2NvbGxlY3Rpb25zL2NvbmZpZy90eXBlcy5kLnRzJ1xuaW1wb3J0IHR5cGUgeyBTYW5pdGl6ZWRHbG9iYWxDb25maWcgfSBmcm9tICcuLi8uLi8uLi9nbG9iYWxzL2NvbmZpZy90eXBlcy5kLnRzJ1xuaW1wb3J0IHR5cGUgeyBQYXlsb2FkUmVxdWVzdCwgUmVxdWVzdENvbnRleHQgfSBmcm9tICcuLi8uLi8uLi90eXBlcy9pbmRleC5kLnRzJ1xuXG5pbXBvcnQgeyBkZWVwQ29weU9iamVjdCB9IGZyb20gJy4uLy4uLy4uL3V0aWxpdGllcy9kZWVwQ29weU9iamVjdC5qcydcbmltcG9ydCB7IHRyYXZlcnNlRmllbGRzIH0gZnJvbSAnLi90cmF2ZXJzZUZpZWxkcy5qcydcblxudHlwZSBBcmdzID0ge1xuICBjb2xsZWN0aW9uOiBTYW5pdGl6ZWRDb2xsZWN0aW9uQ29uZmlnIHwgbnVsbFxuICBjb250ZXh0OiBSZXF1ZXN0Q29udGV4dFxuICBjdXJyZW50RGVwdGg/OiBudW1iZXJcbiAgZGVwdGg6IG51bWJlclxuICBkb2M6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gIGZhbGxiYWNrTG9jYWxlOiBudWxsIHwgc3RyaW5nXG4gIGZpbmRNYW55PzogYm9vbGVhblxuICBmbGF0dGVuTG9jYWxlcz86IGJvb2xlYW5cbiAgZ2xvYmFsOiBTYW5pdGl6ZWRHbG9iYWxDb25maWcgfCBudWxsXG4gIGxvY2FsZTogc3RyaW5nXG4gIG92ZXJyaWRlQWNjZXNzOiBib29sZWFuXG4gIHJlcTogUGF5bG9hZFJlcXVlc3RcbiAgc2hvd0hpZGRlbkZpZWxkczogYm9vbGVhblxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gYWZ0ZXJSZWFkPFQgPSBhbnk+KGFyZ3M6IEFyZ3MpOiBQcm9taXNlPFQ+IHtcbiAgY29uc3Qge1xuICAgIGNvbGxlY3Rpb24sXG4gICAgY29udGV4dCxcbiAgICBjdXJyZW50RGVwdGg6IGluY29taW5nQ3VycmVudERlcHRoLFxuICAgIGRlcHRoOiBpbmNvbWluZ0RlcHRoLFxuICAgIGRvYzogaW5jb21pbmdEb2MsXG4gICAgZmFsbGJhY2tMb2NhbGUsXG4gICAgZmluZE1hbnksXG4gICAgZmxhdHRlbkxvY2FsZXMgPSB0cnVlLFxuICAgIGdsb2JhbCxcbiAgICBsb2NhbGUsXG4gICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgcmVxLFxuICAgIHNob3dIaWRkZW5GaWVsZHMsXG4gIH0gPSBhcmdzXG5cbiAgY29uc3QgZG9jID0gZGVlcENvcHlPYmplY3QoaW5jb21pbmdEb2MpXG4gIGNvbnN0IGZpZWxkUHJvbWlzZXMgPSBbXVxuICBjb25zdCBwb3B1bGF0aW9uUHJvbWlzZXMgPSBbXVxuXG4gIGxldCBkZXB0aCA9XG4gICAgaW5jb21pbmdEZXB0aCB8fCBpbmNvbWluZ0RlcHRoID09PSAwXG4gICAgICA/IHBhcnNlSW50KFN0cmluZyhpbmNvbWluZ0RlcHRoKSwgMTApXG4gICAgICA6IHJlcS5wYXlsb2FkLmNvbmZpZy5kZWZhdWx0RGVwdGhcbiAgaWYgKGRlcHRoID4gcmVxLnBheWxvYWQuY29uZmlnLm1heERlcHRoKSBkZXB0aCA9IHJlcS5wYXlsb2FkLmNvbmZpZy5tYXhEZXB0aFxuXG4gIGNvbnN0IGN1cnJlbnREZXB0aCA9IGluY29taW5nQ3VycmVudERlcHRoIHx8IDFcblxuICB0cmF2ZXJzZUZpZWxkcyh7XG4gICAgY29sbGVjdGlvbixcbiAgICBjb250ZXh0LFxuICAgIGN1cnJlbnREZXB0aCxcbiAgICBkZXB0aCxcbiAgICBkb2MsXG4gICAgZmFsbGJhY2tMb2NhbGUsXG4gICAgZmllbGRQcm9taXNlcyxcbiAgICBmaWVsZHM6IGNvbGxlY3Rpb24/LmZpZWxkcyB8fCBnbG9iYWw/LmZpZWxkcyxcbiAgICBmaW5kTWFueSxcbiAgICBmbGF0dGVuTG9jYWxlcyxcbiAgICBnbG9iYWwsXG4gICAgbG9jYWxlLFxuICAgIG92ZXJyaWRlQWNjZXNzLFxuICAgIHBvcHVsYXRpb25Qcm9taXNlcyxcbiAgICByZXEsXG4gICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgICBzaWJsaW5nRG9jOiBkb2MsXG4gIH0pXG5cbiAgYXdhaXQgUHJvbWlzZS5hbGwoZmllbGRQcm9taXNlcylcbiAgYXdhaXQgUHJvbWlzZS5hbGwocG9wdWxhdGlvblByb21pc2VzKVxuXG4gIHJldHVybiBkb2Ncbn1cbiJdLCJuYW1lcyI6WyJkZWVwQ29weU9iamVjdCIsInRyYXZlcnNlRmllbGRzIiwiYWZ0ZXJSZWFkIiwiYXJncyIsImNvbGxlY3Rpb24iLCJjb250ZXh0IiwiY3VycmVudERlcHRoIiwiaW5jb21pbmdDdXJyZW50RGVwdGgiLCJkZXB0aCIsImluY29taW5nRGVwdGgiLCJkb2MiLCJpbmNvbWluZ0RvYyIsImZhbGxiYWNrTG9jYWxlIiwiZmluZE1hbnkiLCJmbGF0dGVuTG9jYWxlcyIsImdsb2JhbCIsImxvY2FsZSIsIm92ZXJyaWRlQWNjZXNzIiwicmVxIiwic2hvd0hpZGRlbkZpZWxkcyIsImZpZWxkUHJvbWlzZXMiLCJwb3B1bGF0aW9uUHJvbWlzZXMiLCJwYXJzZUludCIsIlN0cmluZyIsInBheWxvYWQiLCJjb25maWciLCJkZWZhdWx0RGVwdGgiLCJtYXhEZXB0aCIsImZpZWxkcyIsInNpYmxpbmdEb2MiLCJQcm9taXNlIiwiYWxsIl0sIm1hcHBpbmdzIjoiQUFJQSxTQUFTQSxjQUFjLFFBQVEsdUNBQXNDO0FBQ3JFLFNBQVNDLGNBQWMsUUFBUSxzQkFBcUI7QUFrQnBELE9BQU8sZUFBZUMsVUFBbUJDLElBQVU7SUFDakQsTUFBTSxFQUNKQyxVQUFVLEVBQ1ZDLE9BQU8sRUFDUEMsY0FBY0Msb0JBQW9CLEVBQ2xDQyxPQUFPQyxhQUFhLEVBQ3BCQyxLQUFLQyxXQUFXLEVBQ2hCQyxjQUFjLEVBQ2RDLFFBQVEsRUFDUkMsaUJBQWlCLElBQUksRUFDckJDLE1BQU0sRUFDTkMsTUFBTSxFQUNOQyxjQUFjLEVBQ2RDLEdBQUcsRUFDSEMsZ0JBQWdCLEVBQ2pCLEdBQUdoQjtJQUVKLE1BQU1PLE1BQU1WLGVBQWVXO0lBQzNCLE1BQU1TLGdCQUFnQixFQUFFO0lBQ3hCLE1BQU1DLHFCQUFxQixFQUFFO0lBRTdCLElBQUliLFFBQ0ZDLGlCQUFpQkEsa0JBQWtCLElBQy9CYSxTQUFTQyxPQUFPZCxnQkFBZ0IsTUFDaENTLElBQUlNLE9BQU8sQ0FBQ0MsTUFBTSxDQUFDQyxZQUFZO0lBQ3JDLElBQUlsQixRQUFRVSxJQUFJTSxPQUFPLENBQUNDLE1BQU0sQ0FBQ0UsUUFBUSxFQUFFbkIsUUFBUVUsSUFBSU0sT0FBTyxDQUFDQyxNQUFNLENBQUNFLFFBQVE7SUFFNUUsTUFBTXJCLGVBQWVDLHdCQUF3QjtJQUU3Q04sZUFBZTtRQUNiRztRQUNBQztRQUNBQztRQUNBRTtRQUNBRTtRQUNBRTtRQUNBUTtRQUNBUSxRQUFReEIsWUFBWXdCLFVBQVViLFFBQVFhO1FBQ3RDZjtRQUNBQztRQUNBQztRQUNBQztRQUNBQztRQUNBSTtRQUNBSDtRQUNBQztRQUNBVSxZQUFZbkI7SUFDZDtJQUVBLE1BQU1vQixRQUFRQyxHQUFHLENBQUNYO0lBQ2xCLE1BQU1VLFFBQVFDLEdBQUcsQ0FBQ1Y7SUFFbEIsT0FBT1g7QUFDVCJ9
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { SanitizedCollectionConfig } from '../../../collections/config/types';
|
|
2
|
-
import type { SanitizedGlobalConfig } from '../../../globals/config/types';
|
|
3
|
-
import type { PayloadRequest, RequestContext } from '../../../types';
|
|
4
|
-
import type { Field, TabAsField } from '../../config/types';
|
|
1
|
+
import type { SanitizedCollectionConfig } from '../../../collections/config/types.d.ts';
|
|
2
|
+
import type { SanitizedGlobalConfig } from '../../../globals/config/types.d.ts';
|
|
3
|
+
import type { PayloadRequest, RequestContext } from '../../../types/index.d.ts';
|
|
4
|
+
import type { Field, TabAsField } from '../../config/types.d.ts';
|
|
5
5
|
type Args = {
|
|
6
6
|
collection: SanitizedCollectionConfig | null;
|
|
7
7
|
context: RequestContext;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promise.d.ts","sourceRoot":"","sources":["../../../../src/fields/hooks/afterRead/promise.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"promise.d.ts","sourceRoot":"","sources":["../../../../src/fields/hooks/afterRead/promise.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAA;AACvF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAA;AAC/E,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC/E,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAOhE,KAAK,IAAI,GAAG;IACV,UAAU,EAAE,yBAAyB,GAAG,IAAI,CAAA;IAC5C,OAAO,EAAE,cAAc,CAAA;IACvB,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC5B,cAAc,EAAE,IAAI,GAAG,MAAM,CAAA;IAC7B,KAAK,EAAE,KAAK,GAAG,UAAU,CAAA;IACzB,aAAa,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAA;IAC9B,QAAQ,EAAE,OAAO,CAAA;IACjB,cAAc,EAAE,OAAO,CAAA;IACvB,MAAM,EAAE,qBAAqB,GAAG,IAAI,CAAA;IACpC,MAAM,EAAE,IAAI,GAAG,MAAM,CAAA;IACrB,cAAc,EAAE,OAAO,CAAA;IACvB,kBAAkB,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAA;IACnC,GAAG,EAAE,cAAc,CAAA;IACnB,gBAAgB,EAAE,OAAO,CAAA;IACzB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnC,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB,CAAA;AAUD,eAAO,MAAM,OAAO,kPAoBjB,IAAI,KAAG,QAAQ,IAAI,CAwerB,CAAA"}
|
|
@@ -1,27 +1,19 @@
|
|
|
1
|
-
/* eslint-disable no-param-reassign */
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
}
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
const
|
|
13
|
-
|
|
14
|
-
const _traverseFields = require("./traverseFields");
|
|
15
|
-
function _interop_require_default(obj) {
|
|
16
|
-
return obj && obj.__esModule ? obj : {
|
|
17
|
-
default: obj
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
const promise = async ({ collection, context, currentDepth, depth, doc, fallbackLocale, field, fieldPromises, findMany, flattenLocales, global, locale, overrideAccess, populationPromises, req, showHiddenFields, siblingDoc, triggerAccessControl = true, triggerHooks = true })=>{
|
|
21
|
-
if ((0, _types.fieldAffectsData)(field) && field.hidden && typeof siblingDoc[field.name] !== 'undefined' && !showHiddenFields) {
|
|
1
|
+
/* eslint-disable no-param-reassign */ import { fieldAffectsData, tabHasName } from '../../config/types.js';
|
|
2
|
+
import getValueWithDefault from '../../getDefaultValue.js';
|
|
3
|
+
import { relationshipPopulationPromise } from './relationshipPopulationPromise.js';
|
|
4
|
+
import { traverseFields } from './traverseFields.js';
|
|
5
|
+
// This function is responsible for the following actions, in order:
|
|
6
|
+
// - Remove hidden fields from response
|
|
7
|
+
// - Flatten locales into requested locale
|
|
8
|
+
// - Sanitize outgoing data (point field, etc.)
|
|
9
|
+
// - Execute field hooks
|
|
10
|
+
// - Execute read access control
|
|
11
|
+
// - Populate relationships
|
|
12
|
+
export const promise = async ({ collection, context, currentDepth, depth, doc, fallbackLocale, field, fieldPromises, findMany, flattenLocales, global, locale, overrideAccess, populationPromises, req, showHiddenFields, siblingDoc, triggerAccessControl = true, triggerHooks = true })=>{
|
|
13
|
+
if (fieldAffectsData(field) && field.hidden && typeof siblingDoc[field.name] !== 'undefined' && !showHiddenFields) {
|
|
22
14
|
delete siblingDoc[field.name];
|
|
23
15
|
}
|
|
24
|
-
const shouldHoistLocalizedValue = flattenLocales &&
|
|
16
|
+
const shouldHoistLocalizedValue = flattenLocales && fieldAffectsData(field) && typeof siblingDoc[field.name] === 'object' && siblingDoc[field.name] !== null && field.localized && locale !== 'all' && req.payload.config.localization;
|
|
25
17
|
if (shouldHoistLocalizedValue) {
|
|
26
18
|
// replace actual value with localized value before sanitizing
|
|
27
19
|
// { [locale]: fields } -> fields
|
|
@@ -66,7 +58,7 @@ const promise = async ({ collection, context, currentDepth, depth, doc, fallback
|
|
|
66
58
|
case 'tabs':
|
|
67
59
|
{
|
|
68
60
|
field.tabs.forEach((tab)=>{
|
|
69
|
-
if (
|
|
61
|
+
if (tabHasName(tab) && (typeof siblingDoc[tab.name] === 'undefined' || siblingDoc[tab.name] === null)) {
|
|
70
62
|
siblingDoc[tab.name] = {};
|
|
71
63
|
}
|
|
72
64
|
});
|
|
@@ -86,8 +78,6 @@ const promise = async ({ collection, context, currentDepth, depth, doc, fallback
|
|
|
86
78
|
flattenLocales,
|
|
87
79
|
overrideAccess,
|
|
88
80
|
populationPromises,
|
|
89
|
-
// TODO: JARROD `req` differs here
|
|
90
|
-
// @ts-ignore-next-line
|
|
91
81
|
req,
|
|
92
82
|
showHiddenFields,
|
|
93
83
|
siblingDoc
|
|
@@ -124,7 +114,7 @@ const promise = async ({ collection, context, currentDepth, depth, doc, fallback
|
|
|
124
114
|
break;
|
|
125
115
|
}
|
|
126
116
|
}
|
|
127
|
-
if (
|
|
117
|
+
if (fieldAffectsData(field)) {
|
|
128
118
|
// Execute hooks
|
|
129
119
|
if (triggerHooks && field.hooks?.afterRead) {
|
|
130
120
|
await field.hooks.afterRead.reduce(async (priorHook, currentHook)=>{
|
|
@@ -187,7 +177,7 @@ const promise = async ({ collection, context, currentDepth, depth, doc, fallback
|
|
|
187
177
|
// Set defaultValue on the field for globals being returned without being first created
|
|
188
178
|
// or collection documents created prior to having a default
|
|
189
179
|
if (allowDefaultValue && typeof siblingDoc[field.name] === 'undefined' && typeof field.defaultValue !== 'undefined') {
|
|
190
|
-
siblingDoc[field.name] = await (
|
|
180
|
+
siblingDoc[field.name] = await getValueWithDefault({
|
|
191
181
|
defaultValue: field.defaultValue,
|
|
192
182
|
locale,
|
|
193
183
|
user: req.user,
|
|
@@ -195,7 +185,7 @@ const promise = async ({ collection, context, currentDepth, depth, doc, fallback
|
|
|
195
185
|
});
|
|
196
186
|
}
|
|
197
187
|
if (field.type === 'relationship' || field.type === 'upload') {
|
|
198
|
-
populationPromises.push(
|
|
188
|
+
populationPromises.push(relationshipPopulationPromise({
|
|
199
189
|
currentDepth,
|
|
200
190
|
depth,
|
|
201
191
|
fallbackLocale,
|
|
@@ -213,7 +203,7 @@ const promise = async ({ collection, context, currentDepth, depth, doc, fallback
|
|
|
213
203
|
{
|
|
214
204
|
let groupDoc = siblingDoc[field.name];
|
|
215
205
|
if (typeof siblingDoc[field.name] !== 'object') groupDoc = {};
|
|
216
|
-
|
|
206
|
+
traverseFields({
|
|
217
207
|
collection,
|
|
218
208
|
context,
|
|
219
209
|
currentDepth,
|
|
@@ -241,7 +231,7 @@ const promise = async ({ collection, context, currentDepth, depth, doc, fallback
|
|
|
241
231
|
const rows = siblingDoc[field.name];
|
|
242
232
|
if (Array.isArray(rows)) {
|
|
243
233
|
rows.forEach((row)=>{
|
|
244
|
-
|
|
234
|
+
traverseFields({
|
|
245
235
|
collection,
|
|
246
236
|
context,
|
|
247
237
|
currentDepth,
|
|
@@ -267,7 +257,7 @@ const promise = async ({ collection, context, currentDepth, depth, doc, fallback
|
|
|
267
257
|
Object.values(rows).forEach((localeRows)=>{
|
|
268
258
|
if (Array.isArray(localeRows)) {
|
|
269
259
|
localeRows.forEach((row)=>{
|
|
270
|
-
|
|
260
|
+
traverseFields({
|
|
271
261
|
collection,
|
|
272
262
|
context,
|
|
273
263
|
currentDepth,
|
|
@@ -303,7 +293,7 @@ const promise = async ({ collection, context, currentDepth, depth, doc, fallback
|
|
|
303
293
|
rows.forEach((row)=>{
|
|
304
294
|
const block = field.blocks.find((blockType)=>blockType.slug === row.blockType);
|
|
305
295
|
if (block) {
|
|
306
|
-
|
|
296
|
+
traverseFields({
|
|
307
297
|
collection,
|
|
308
298
|
context,
|
|
309
299
|
currentDepth,
|
|
@@ -332,7 +322,7 @@ const promise = async ({ collection, context, currentDepth, depth, doc, fallback
|
|
|
332
322
|
localeRows.forEach((row)=>{
|
|
333
323
|
const block = field.blocks.find((blockType)=>blockType.slug === row.blockType);
|
|
334
324
|
if (block) {
|
|
335
|
-
|
|
325
|
+
traverseFields({
|
|
336
326
|
collection,
|
|
337
327
|
context,
|
|
338
328
|
currentDepth,
|
|
@@ -365,7 +355,7 @@ const promise = async ({ collection, context, currentDepth, depth, doc, fallback
|
|
|
365
355
|
case 'row':
|
|
366
356
|
case 'collapsible':
|
|
367
357
|
{
|
|
368
|
-
|
|
358
|
+
traverseFields({
|
|
369
359
|
collection,
|
|
370
360
|
context,
|
|
371
361
|
currentDepth,
|
|
@@ -391,11 +381,11 @@ const promise = async ({ collection, context, currentDepth, depth, doc, fallback
|
|
|
391
381
|
case 'tab':
|
|
392
382
|
{
|
|
393
383
|
let tabDoc = siblingDoc;
|
|
394
|
-
if (
|
|
384
|
+
if (tabHasName(field)) {
|
|
395
385
|
tabDoc = siblingDoc[field.name];
|
|
396
386
|
if (typeof siblingDoc[field.name] !== 'object') tabDoc = {};
|
|
397
387
|
}
|
|
398
|
-
|
|
388
|
+
traverseFields({
|
|
399
389
|
collection,
|
|
400
390
|
context,
|
|
401
391
|
currentDepth,
|
|
@@ -420,7 +410,7 @@ const promise = async ({ collection, context, currentDepth, depth, doc, fallback
|
|
|
420
410
|
}
|
|
421
411
|
case 'tabs':
|
|
422
412
|
{
|
|
423
|
-
|
|
413
|
+
traverseFields({
|
|
424
414
|
collection,
|
|
425
415
|
context,
|
|
426
416
|
currentDepth,
|
|
@@ -453,4 +443,4 @@ const promise = async ({ collection, context, currentDepth, depth, doc, fallback
|
|
|
453
443
|
}
|
|
454
444
|
};
|
|
455
445
|
|
|
456
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maWVsZHMvaG9va3MvYWZ0ZXJSZWFkL3Byb21pc2UudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbm8tcGFyYW0tcmVhc3NpZ24gKi9cbmltcG9ydCB0eXBlIHsgUmljaFRleHRBZGFwdGVyIH0gZnJvbSAnLi4vLi4vLi4vYWRtaW4vdHlwZXMnXG5pbXBvcnQgdHlwZSB7IFNhbml0aXplZENvbGxlY3Rpb25Db25maWcgfSBmcm9tICcuLi8uLi8uLi9jb2xsZWN0aW9ucy9jb25maWcvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IFNhbml0aXplZEdsb2JhbENvbmZpZyB9IGZyb20gJy4uLy4uLy4uL2dsb2JhbHMvY29uZmlnL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBQYXlsb2FkUmVxdWVzdCwgUmVxdWVzdENvbnRleHQgfSBmcm9tICcuLi8uLi8uLi90eXBlcydcbmltcG9ydCB0eXBlIHsgRmllbGQsIFRhYkFzRmllbGQgfSBmcm9tICcuLi8uLi9jb25maWcvdHlwZXMnXG5cbmltcG9ydCB7IGZpZWxkQWZmZWN0c0RhdGEsIHRhYkhhc05hbWUgfSBmcm9tICcuLi8uLi9jb25maWcvdHlwZXMnXG5pbXBvcnQgZ2V0VmFsdWVXaXRoRGVmYXVsdCBmcm9tICcuLi8uLi9nZXREZWZhdWx0VmFsdWUnXG5pbXBvcnQgeyByZWxhdGlvbnNoaXBQb3B1bGF0aW9uUHJvbWlzZSB9IGZyb20gJy4vcmVsYXRpb25zaGlwUG9wdWxhdGlvblByb21pc2UnXG5pbXBvcnQgeyB0cmF2ZXJzZUZpZWxkcyB9IGZyb20gJy4vdHJhdmVyc2VGaWVsZHMnXG5cbnR5cGUgQXJncyA9IHtcbiAgY29sbGVjdGlvbjogU2FuaXRpemVkQ29sbGVjdGlvbkNvbmZpZyB8IG51bGxcbiAgY29udGV4dDogUmVxdWVzdENvbnRleHRcbiAgY3VycmVudERlcHRoOiBudW1iZXJcbiAgZGVwdGg6IG51bWJlclxuICBkb2M6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gIGZhbGxiYWNrTG9jYWxlOiBudWxsIHwgc3RyaW5nXG4gIGZpZWxkOiBGaWVsZCB8IFRhYkFzRmllbGRcbiAgZmllbGRQcm9taXNlczogUHJvbWlzZTx2b2lkPltdXG4gIGZpbmRNYW55OiBib29sZWFuXG4gIGZsYXR0ZW5Mb2NhbGVzOiBib29sZWFuXG4gIGdsb2JhbDogU2FuaXRpemVkR2xvYmFsQ29uZmlnIHwgbnVsbFxuICBsb2NhbGU6IG51bGwgfCBzdHJpbmdcbiAgb3ZlcnJpZGVBY2Nlc3M6IGJvb2xlYW5cbiAgcG9wdWxhdGlvblByb21pc2VzOiBQcm9taXNlPHZvaWQ+W11cbiAgcmVxOiBQYXlsb2FkUmVxdWVzdFxuICBzaG93SGlkZGVuRmllbGRzOiBib29sZWFuXG4gIHNpYmxpbmdEb2M6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gIHRyaWdnZXJBY2Nlc3NDb250cm9sPzogYm9vbGVhblxuICB0cmlnZ2VySG9va3M/OiBib29sZWFuXG59XG5cbi8vIFRoaXMgZnVuY3Rpb24gaXMgcmVzcG9uc2libGUgZm9yIHRoZSBmb2xsb3dpbmcgYWN0aW9ucywgaW4gb3JkZXI6XG4vLyAtIFJlbW92ZSBoaWRkZW4gZmllbGRzIGZyb20gcmVzcG9uc2Vcbi8vIC0gRmxhdHRlbiBsb2NhbGVzIGludG8gcmVxdWVzdGVkIGxvY2FsZVxuLy8gLSBTYW5pdGl6ZSBvdXRnb2luZyBkYXRhIChwb2ludCBmaWVsZCwgZXRjLilcbi8vIC0gRXhlY3V0ZSBmaWVsZCBob29rc1xuLy8gLSBFeGVjdXRlIHJlYWQgYWNjZXNzIGNvbnRyb2xcbi8vIC0gUG9wdWxhdGUgcmVsYXRpb25zaGlwc1xuXG5leHBvcnQgY29uc3QgcHJvbWlzZSA9IGFzeW5jICh7XG4gIGNvbGxlY3Rpb24sXG4gIGNvbnRleHQsXG4gIGN1cnJlbnREZXB0aCxcbiAgZGVwdGgsXG4gIGRvYyxcbiAgZmFsbGJhY2tMb2NhbGUsXG4gIGZpZWxkLFxuICBmaWVsZFByb21pc2VzLFxuICBmaW5kTWFueSxcbiAgZmxhdHRlbkxvY2FsZXMsXG4gIGdsb2JhbCxcbiAgbG9jYWxlLFxuICBvdmVycmlkZUFjY2VzcyxcbiAgcG9wdWxhdGlvblByb21pc2VzLFxuICByZXEsXG4gIHNob3dIaWRkZW5GaWVsZHMsXG4gIHNpYmxpbmdEb2MsXG4gIHRyaWdnZXJBY2Nlc3NDb250cm9sID0gdHJ1ZSxcbiAgdHJpZ2dlckhvb2tzID0gdHJ1ZSxcbn06IEFyZ3MpOiBQcm9taXNlPHZvaWQ+ID0+IHtcbiAgaWYgKFxuICAgIGZpZWxkQWZmZWN0c0RhdGEoZmllbGQpICYmXG4gICAgZmllbGQuaGlkZGVuICYmXG4gICAgdHlwZW9mIHNpYmxpbmdEb2NbZmllbGQubmFtZV0gIT09ICd1bmRlZmluZWQnICYmXG4gICAgIXNob3dIaWRkZW5GaWVsZHNcbiAgKSB7XG4gICAgZGVsZXRlIHNpYmxpbmdEb2NbZmllbGQubmFtZV1cbiAgfVxuXG4gIGNvbnN0IHNob3VsZEhvaXN0TG9jYWxpemVkVmFsdWUgPVxuICAgIGZsYXR0ZW5Mb2NhbGVzICYmXG4gICAgZmllbGRBZmZlY3RzRGF0YShmaWVsZCkgJiZcbiAgICB0eXBlb2Ygc2libGluZ0RvY1tmaWVsZC5uYW1lXSA9PT0gJ29iamVjdCcgJiZcbiAgICBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdICE9PSBudWxsICYmXG4gICAgZmllbGQubG9jYWxpemVkICYmXG4gICAgbG9jYWxlICE9PSAnYWxsJyAmJlxuICAgIHJlcS5wYXlsb2FkLmNvbmZpZy5sb2NhbGl6YXRpb25cblxuICBpZiAoc2hvdWxkSG9pc3RMb2NhbGl6ZWRWYWx1ZSkge1xuICAgIC8vIHJlcGxhY2UgYWN0dWFsIHZhbHVlIHdpdGggbG9jYWxpemVkIHZhbHVlIGJlZm9yZSBzYW5pdGl6aW5nXG4gICAgLy8geyBbbG9jYWxlXTogZmllbGRzIH0gLT4gZmllbGRzXG4gICAgY29uc3QgdmFsdWUgPSBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdW2xvY2FsZV1cblxuICAgIGxldCBob2lzdGVkVmFsdWUgPSB2YWx1ZVxuXG4gICAgaWYgKGZhbGxiYWNrTG9jYWxlICYmIGZhbGxiYWNrTG9jYWxlICE9PSBsb2NhbGUpIHtcbiAgICAgIGNvbnN0IGZhbGxiYWNrVmFsdWUgPSBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdW2ZhbGxiYWNrTG9jYWxlXVxuICAgICAgY29uc3QgaXNOdWxsT3JVbmRlZmluZWQgPSB0eXBlb2YgdmFsdWUgPT09ICd1bmRlZmluZWQnIHx8IHZhbHVlID09PSBudWxsXG5cbiAgICAgIGlmIChmYWxsYmFja1ZhbHVlKSB7XG4gICAgICAgIHN3aXRjaCAoZmllbGQudHlwZSkge1xuICAgICAgICAgIGNhc2UgJ3RleHQnOlxuICAgICAgICAgIGNhc2UgJ3RleHRhcmVhJzoge1xuICAgICAgICAgICAgaWYgKHZhbHVlID09PSAnJyB8fCBpc051bGxPclVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICBob2lzdGVkVmFsdWUgPSBmYWxsYmFja1ZhbHVlXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgICAgIGlmIChpc051bGxPclVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICBob2lzdGVkVmFsdWUgPSBmYWxsYmFja1ZhbHVlXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHNpYmxpbmdEb2NbZmllbGQubmFtZV0gPSBob2lzdGVkVmFsdWVcbiAgfVxuXG4gIC8vIFNhbml0aXplIG91dGdvaW5nIGZpZWxkIHZhbHVlXG4gIHN3aXRjaCAoZmllbGQudHlwZSkge1xuICAgIGNhc2UgJ2dyb3VwJzoge1xuICAgICAgLy8gRmlsbCBncm91cHMgd2l0aCBlbXB0eSBvYmplY3RzIHNvIGZpZWxkcyB3aXRoIGhvb2tzIHdpdGhpbiBncm91cHMgY2FuIHBvcHVsYXRlXG4gICAgICAvLyB0aGVtc2VsdmVzIHZpcnR1YWxseSBhcyBuZWNlc3NhcnlcbiAgICAgIGlmICh0eXBlb2Ygc2libGluZ0RvY1tmaWVsZC5uYW1lXSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgc2libGluZ0RvY1tmaWVsZC5uYW1lXSA9IHt9XG4gICAgICB9XG5cbiAgICAgIGJyZWFrXG4gICAgfVxuICAgIGNhc2UgJ3RhYnMnOiB7XG4gICAgICBmaWVsZC50YWJzLmZvckVhY2goKHRhYikgPT4ge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgdGFiSGFzTmFtZSh0YWIpICYmXG4gICAgICAgICAgKHR5cGVvZiBzaWJsaW5nRG9jW3RhYi5uYW1lXSA9PT0gJ3VuZGVmaW5lZCcgfHwgc2libGluZ0RvY1t0YWIubmFtZV0gPT09IG51bGwpXG4gICAgICAgICkge1xuICAgICAgICAgIHNpYmxpbmdEb2NbdGFiLm5hbWVdID0ge31cbiAgICAgICAgfVxuICAgICAgfSlcblxuICAgICAgYnJlYWtcbiAgICB9XG5cbiAgICBjYXNlICdyaWNoVGV4dCc6IHtcbiAgICAgIGNvbnN0IGVkaXRvcjogUmljaFRleHRBZGFwdGVyID0gZmllbGQ/LmVkaXRvclxuICAgICAgLy8gVGhpcyBpcyBydW4gaGVyZSBBTkQgaW4gdGhlIEdyYXBoUUwgUmVzb2x2ZXJcbiAgICAgIGlmIChlZGl0b3I/LnBvcHVsYXRpb25Qcm9taXNlKSB7XG4gICAgICAgIGNvbnN0IHBvcHVsYXRpb25Qcm9taXNlID0gZWRpdG9yLnBvcHVsYXRpb25Qcm9taXNlKHtcbiAgICAgICAgICBjb250ZXh0LFxuICAgICAgICAgIGN1cnJlbnREZXB0aCxcbiAgICAgICAgICBkZXB0aCxcbiAgICAgICAgICBmaWVsZCxcbiAgICAgICAgICBmaW5kTWFueSxcbiAgICAgICAgICBmbGF0dGVuTG9jYWxlcyxcbiAgICAgICAgICBvdmVycmlkZUFjY2VzcyxcbiAgICAgICAgICBwb3B1bGF0aW9uUHJvbWlzZXMsXG4gICAgICAgICAgLy8gVE9ETzogSkFSUk9EIGByZXFgIGRpZmZlcnMgaGVyZVxuICAgICAgICAgIC8vIEB0cy1pZ25vcmUtbmV4dC1saW5lXG4gICAgICAgICAgcmVxLFxuICAgICAgICAgIHNob3dIaWRkZW5GaWVsZHMsXG4gICAgICAgICAgc2libGluZ0RvYyxcbiAgICAgICAgfSlcblxuICAgICAgICBpZiAocG9wdWxhdGlvblByb21pc2UpIHtcbiAgICAgICAgICBwb3B1bGF0aW9uUHJvbWlzZXMucHVzaChwb3B1bGF0aW9uUHJvbWlzZSlcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBUaGlzIGlzIG9ubHkgcnVuIGhlcmUsIGluZGVwZW5kZW50IG9mIGRlcHRoXG4gICAgICBpZiAoZWRpdG9yPy5hZnRlclJlYWRQcm9taXNlKSB7XG4gICAgICAgIGNvbnN0IGFmdGVyUmVhZFByb21pc2UgPSBlZGl0b3I/LmFmdGVyUmVhZFByb21pc2Uoe1xuICAgICAgICAgIGZpZWxkLFxuICAgICAgICAgIGluY29taW5nRWRpdG9yU3RhdGU6IHNpYmxpbmdEb2NbZmllbGQubmFtZV0gYXMgb2JqZWN0LFxuICAgICAgICAgIHNpYmxpbmdEb2MsXG4gICAgICAgIH0pXG5cbiAgICAgICAgaWYgKGFmdGVyUmVhZFByb21pc2UpIHtcbiAgICAgICAgICBwb3B1bGF0aW9uUHJvbWlzZXMucHVzaChhZnRlclJlYWRQcm9taXNlKVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGJyZWFrXG4gICAgfVxuXG4gICAgY2FzZSAncG9pbnQnOiB7XG4gICAgICBjb25zdCBwb2ludERvYyA9IHNpYmxpbmdEb2NbZmllbGQubmFtZV0gYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgICAgIGlmIChBcnJheS5pc0FycmF5KHBvaW50RG9jPy5jb29yZGluYXRlcykgJiYgcG9pbnREb2MuY29vcmRpbmF0ZXMubGVuZ3RoID09PSAyKSB7XG4gICAgICAgIHNpYmxpbmdEb2NbZmllbGQubmFtZV0gPSBwb2ludERvYy5jb29yZGluYXRlc1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgc2libGluZ0RvY1tmaWVsZC5uYW1lXSA9IHVuZGVmaW5lZFxuICAgICAgfVxuXG4gICAgICBicmVha1xuICAgIH1cblxuICAgIGRlZmF1bHQ6IHtcbiAgICAgIGJyZWFrXG4gICAgfVxuICB9XG5cbiAgaWYgKGZpZWxkQWZmZWN0c0RhdGEoZmllbGQpKSB7XG4gICAgLy8gRXhlY3V0ZSBob29rc1xuICAgIGlmICh0cmlnZ2VySG9va3MgJiYgZmllbGQuaG9va3M/LmFmdGVyUmVhZCkge1xuICAgICAgYXdhaXQgZmllbGQuaG9va3MuYWZ0ZXJSZWFkLnJlZHVjZShhc3luYyAocHJpb3JIb29rLCBjdXJyZW50SG9vaykgPT4ge1xuICAgICAgICBhd2FpdCBwcmlvckhvb2tcblxuICAgICAgICBjb25zdCBzaG91bGRSdW5Ib29rT25BbGxMb2NhbGVzID1cbiAgICAgICAgICBmaWVsZC5sb2NhbGl6ZWQgJiZcbiAgICAgICAgICAobG9jYWxlID09PSAnYWxsJyB8fCAhZmxhdHRlbkxvY2FsZXMpICYmXG4gICAgICAgICAgdHlwZW9mIHNpYmxpbmdEb2NbZmllbGQubmFtZV0gPT09ICdvYmplY3QnXG5cbiAgICAgICAgaWYgKHNob3VsZFJ1bkhvb2tPbkFsbExvY2FsZXMpIHtcbiAgICAgICAgICBjb25zdCBob29rUHJvbWlzZXMgPSBPYmplY3QuZW50cmllcyhzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdKS5tYXAoKFtsb2NhbGUsIHZhbHVlXSkgPT5cbiAgICAgICAgICAgIChhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IGhvb2tlZFZhbHVlID0gYXdhaXQgY3VycmVudEhvb2soe1xuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb24sXG4gICAgICAgICAgICAgICAgY29udGV4dCxcbiAgICAgICAgICAgICAgICBkYXRhOiBkb2MsXG4gICAgICAgICAgICAgICAgZmllbGQsXG4gICAgICAgICAgICAgICAgZ2xvYmFsLFxuICAgICAgICAgICAgICAgIG9wZXJhdGlvbjogJ3JlYWQnLFxuICAgICAgICAgICAgICAgIG9yaWdpbmFsRG9jOiBkb2MsXG4gICAgICAgICAgICAgICAgcmVxLFxuICAgICAgICAgICAgICAgIHNpYmxpbmdEYXRhOiBzaWJsaW5nRG9jLFxuICAgICAgICAgICAgICAgIHZhbHVlLFxuICAgICAgICAgICAgICB9KVxuXG4gICAgICAgICAgICAgIGlmIChob29rZWRWYWx1ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgc2libGluZ0RvY1tmaWVsZC5uYW1lXVtsb2NhbGVdID0gaG9va2VkVmFsdWVcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSkoKSxcbiAgICAgICAgICApXG5cbiAgICAgICAgICBhd2FpdCBQcm9taXNlLmFsbChob29rUHJvbWlzZXMpXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc3QgaG9va2VkVmFsdWUgPSBhd2FpdCBjdXJyZW50SG9vayh7XG4gICAgICAgICAgICBjb2xsZWN0aW9uLFxuICAgICAgICAgICAgY29udGV4dCxcbiAgICAgICAgICAgIGRhdGE6IGRvYyxcbiAgICAgICAgICAgIGZpZWxkLFxuICAgICAgICAgICAgZmluZE1hbnksXG4gICAgICAgICAgICBnbG9iYWwsXG4gICAgICAgICAgICBvcGVyYXRpb246ICdyZWFkJyxcbiAgICAgICAgICAgIG9yaWdpbmFsRG9jOiBkb2MsXG4gICAgICAgICAgICByZXEsXG4gICAgICAgICAgICBzaWJsaW5nRGF0YTogc2libGluZ0RvYyxcbiAgICAgICAgICAgIHZhbHVlOiBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdLFxuICAgICAgICAgIH0pXG5cbiAgICAgICAgICBpZiAoaG9va2VkVmFsdWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgc2libGluZ0RvY1tmaWVsZC5uYW1lXSA9IGhvb2tlZFZhbHVlXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LCBQcm9taXNlLnJlc29sdmUoKSlcbiAgICB9XG5cbiAgICAvLyBFeGVjdXRlIGFjY2VzcyBjb250cm9sXG4gICAgbGV0IGFsbG93RGVmYXVsdFZhbHVlID0gdHJ1ZVxuICAgIGlmICh0cmlnZ2VyQWNjZXNzQ29udHJvbCAmJiBmaWVsZC5hY2Nlc3MgJiYgZmllbGQuYWNjZXNzLnJlYWQpIHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IG92ZXJyaWRlQWNjZXNzXG4gICAgICAgID8gdHJ1ZVxuICAgICAgICA6IGF3YWl0IGZpZWxkLmFjY2Vzcy5yZWFkKHtcbiAgICAgICAgICAgIGlkOiBkb2MuaWQgYXMgbnVtYmVyIHwgc3RyaW5nLFxuICAgICAgICAgICAgZGF0YTogZG9jLFxuICAgICAgICAgICAgZG9jLFxuICAgICAgICAgICAgcmVxLFxuICAgICAgICAgICAgc2libGluZ0RhdGE6IHNpYmxpbmdEb2MsXG4gICAgICAgICAgfSlcblxuICAgICAgaWYgKCFyZXN1bHQpIHtcbiAgICAgICAgYWxsb3dEZWZhdWx0VmFsdWUgPSBmYWxzZVxuICAgICAgICBkZWxldGUgc2libGluZ0RvY1tmaWVsZC5uYW1lXVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldCBkZWZhdWx0VmFsdWUgb24gdGhlIGZpZWxkIGZvciBnbG9iYWxzIGJlaW5nIHJldHVybmVkIHdpdGhvdXQgYmVpbmcgZmlyc3QgY3JlYXRlZFxuICAgIC8vIG9yIGNvbGxlY3Rpb24gZG9jdW1lbnRzIGNyZWF0ZWQgcHJpb3IgdG8gaGF2aW5nIGEgZGVmYXVsdFxuICAgIGlmIChcbiAgICAgIGFsbG93RGVmYXVsdFZhbHVlICYmXG4gICAgICB0eXBlb2Ygc2libGluZ0RvY1tmaWVsZC5uYW1lXSA9PT0gJ3VuZGVmaW5lZCcgJiZcbiAgICAgIHR5cGVvZiBmaWVsZC5kZWZhdWx0VmFsdWUgIT09ICd1bmRlZmluZWQnXG4gICAgKSB7XG4gICAgICBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdID0gYXdhaXQgZ2V0VmFsdWVXaXRoRGVmYXVsdCh7XG4gICAgICAgIGRlZmF1bHRWYWx1ZTogZmllbGQuZGVmYXVsdFZhbHVlLFxuICAgICAgICBsb2NhbGUsXG4gICAgICAgIHVzZXI6IHJlcS51c2VyLFxuICAgICAgICB2YWx1ZTogc2libGluZ0RvY1tmaWVsZC5uYW1lXSxcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgaWYgKGZpZWxkLnR5cGUgPT09ICdyZWxhdGlvbnNoaXAnIHx8IGZpZWxkLnR5cGUgPT09ICd1cGxvYWQnKSB7XG4gICAgICBwb3B1bGF0aW9uUHJvbWlzZXMucHVzaChcbiAgICAgICAgcmVsYXRpb25zaGlwUG9wdWxhdGlvblByb21pc2Uoe1xuICAgICAgICAgIGN1cnJlbnREZXB0aCxcbiAgICAgICAgICBkZXB0aCxcbiAgICAgICAgICBmYWxsYmFja0xvY2FsZSxcbiAgICAgICAgICBmaWVsZCxcbiAgICAgICAgICBsb2NhbGUsXG4gICAgICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICAgICAgcmVxLFxuICAgICAgICAgIHNob3dIaWRkZW5GaWVsZHMsXG4gICAgICAgICAgc2libGluZ0RvYyxcbiAgICAgICAgfSksXG4gICAgICApXG4gICAgfVxuICB9XG5cbiAgc3dpdGNoIChmaWVsZC50eXBlKSB7XG4gICAgY2FzZSAnZ3JvdXAnOiB7XG4gICAgICBsZXQgZ3JvdXBEb2MgPSBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gICAgICBpZiAodHlwZW9mIHNpYmxpbmdEb2NbZmllbGQubmFtZV0gIT09ICdvYmplY3QnKSBncm91cERvYyA9IHt9XG5cbiAgICAgIHRyYXZlcnNlRmllbGRzKHtcbiAgICAgICAgY29sbGVjdGlvbixcbiAgICAgICAgY29udGV4dCxcbiAgICAgICAgY3VycmVudERlcHRoLFxuICAgICAgICBkZXB0aCxcbiAgICAgICAgZG9jLFxuICAgICAgICBmYWxsYmFja0xvY2FsZSxcbiAgICAgICAgZmllbGRQcm9taXNlcyxcbiAgICAgICAgZmllbGRzOiBmaWVsZC5maWVsZHMsXG4gICAgICAgIGZpbmRNYW55LFxuICAgICAgICBmbGF0dGVuTG9jYWxlcyxcbiAgICAgICAgZ2xvYmFsLFxuICAgICAgICBsb2NhbGUsXG4gICAgICAgIG92ZXJyaWRlQWNjZXNzLFxuICAgICAgICBwb3B1bGF0aW9uUHJvbWlzZXMsXG4gICAgICAgIHJlcSxcbiAgICAgICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgICAgICAgc2libGluZ0RvYzogZ3JvdXBEb2MsXG4gICAgICAgIHRyaWdnZXJBY2Nlc3NDb250cm9sLFxuICAgICAgICB0cmlnZ2VySG9va3MsXG4gICAgICB9KVxuXG4gICAgICBicmVha1xuICAgIH1cblxuICAgIGNhc2UgJ2FycmF5Jzoge1xuICAgICAgY29uc3Qgcm93cyA9IHNpYmxpbmdEb2NbZmllbGQubmFtZV1cblxuICAgICAgaWYgKEFycmF5LmlzQXJyYXkocm93cykpIHtcbiAgICAgICAgcm93cy5mb3JFYWNoKChyb3cpID0+IHtcbiAgICAgICAgICB0cmF2ZXJzZUZpZWxkcyh7XG4gICAgICAgICAgICBjb2xsZWN0aW9uLFxuICAgICAgICAgICAgY29udGV4dCxcbiAgICAgICAgICAgIGN1cnJlbnREZXB0aCxcbiAgICAgICAgICAgIGRlcHRoLFxuICAgICAgICAgICAgZG9jLFxuICAgICAgICAgICAgZmFsbGJhY2tMb2NhbGUsXG4gICAgICAgICAgICBmaWVsZFByb21pc2VzLFxuICAgICAgICAgICAgZmllbGRzOiBmaWVsZC5maWVsZHMsXG4gICAgICAgICAgICBmaW5kTWFueSxcbiAgICAgICAgICAgIGZsYXR0ZW5Mb2NhbGVzLFxuICAgICAgICAgICAgZ2xvYmFsLFxuICAgICAgICAgICAgbG9jYWxlLFxuICAgICAgICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICAgICAgICBwb3B1bGF0aW9uUHJvbWlzZXMsXG4gICAgICAgICAgICByZXEsXG4gICAgICAgICAgICBzaG93SGlkZGVuRmllbGRzLFxuICAgICAgICAgICAgc2libGluZ0RvYzogcm93IHx8IHt9LFxuICAgICAgICAgICAgdHJpZ2dlckFjY2Vzc0NvbnRyb2wsXG4gICAgICAgICAgICB0cmlnZ2VySG9va3MsXG4gICAgICAgICAgfSlcbiAgICAgICAgfSlcbiAgICAgIH0gZWxzZSBpZiAoIXNob3VsZEhvaXN0TG9jYWxpemVkVmFsdWUgJiYgdHlwZW9mIHJvd3MgPT09ICdvYmplY3QnICYmIHJvd3MgIT09IG51bGwpIHtcbiAgICAgICAgT2JqZWN0LnZhbHVlcyhyb3dzKS5mb3JFYWNoKChsb2NhbGVSb3dzKSA9PiB7XG4gICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkobG9jYWxlUm93cykpIHtcbiAgICAgICAgICAgIGxvY2FsZVJvd3MuZm9yRWFjaCgocm93KSA9PiB7XG4gICAgICAgICAgICAgIHRyYXZlcnNlRmllbGRzKHtcbiAgICAgICAgICAgICAgICBjb2xsZWN0aW9uLFxuICAgICAgICAgICAgICAgIGNvbnRleHQsXG4gICAgICAgICAgICAgICAgY3VycmVudERlcHRoLFxuICAgICAgICAgICAgICAgIGRlcHRoLFxuICAgICAgICAgICAgICAgIGRvYyxcbiAgICAgICAgICAgICAgICBmYWxsYmFja0xvY2FsZSxcbiAgICAgICAgICAgICAgICBmaWVsZFByb21pc2VzLFxuICAgICAgICAgICAgICAgIGZpZWxkczogZmllbGQuZmllbGRzLFxuICAgICAgICAgICAgICAgIGZpbmRNYW55LFxuICAgICAgICAgICAgICAgIGZsYXR0ZW5Mb2NhbGVzLFxuICAgICAgICAgICAgICAgIGdsb2JhbCxcbiAgICAgICAgICAgICAgICBsb2NhbGUsXG4gICAgICAgICAgICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICAgICAgICAgICAgcG9wdWxhdGlvblByb21pc2VzLFxuICAgICAgICAgICAgICAgIHJlcSxcbiAgICAgICAgICAgICAgICBzaG93SGlkZGVuRmllbGRzLFxuICAgICAgICAgICAgICAgIHNpYmxpbmdEb2M6IHJvdyB8fCB7fSxcbiAgICAgICAgICAgICAgICB0cmlnZ2VyQWNjZXNzQ29udHJvbCxcbiAgICAgICAgICAgICAgICB0cmlnZ2VySG9va3MsXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHNpYmxpbmdEb2NbZmllbGQubmFtZV0gPSBbXVxuICAgICAgfVxuICAgICAgYnJlYWtcbiAgICB9XG5cbiAgICBjYXNlICdibG9ja3MnOiB7XG4gICAgICBjb25zdCByb3dzID0gc2libGluZ0RvY1tmaWVsZC5uYW1lXVxuXG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShyb3dzKSkge1xuICAgICAgICByb3dzLmZvckVhY2goKHJvdykgPT4ge1xuICAgICAgICAgIGNvbnN0IGJsb2NrID0gZmllbGQuYmxvY2tzLmZpbmQoKGJsb2NrVHlwZSkgPT4gYmxvY2tUeXBlLnNsdWcgPT09IHJvdy5ibG9ja1R5cGUpXG5cbiAgICAgICAgICBpZiAoYmxvY2spIHtcbiAgICAgICAgICAgIHRyYXZlcnNlRmllbGRzKHtcbiAgICAgICAgICAgICAgY29sbGVjdGlvbixcbiAgICAgICAgICAgICAgY29udGV4dCxcbiAgICAgICAgICAgICAgY3VycmVudERlcHRoLFxuICAgICAgICAgICAgICBkZXB0aCxcbiAgICAgICAgICAgICAgZG9jLFxuICAgICAgICAgICAgICBmYWxsYmFja0xvY2FsZSxcbiAgICAgICAgICAgICAgZmllbGRQcm9taXNlcyxcbiAgICAgICAgICAgICAgZmllbGRzOiBibG9jay5maWVsZHMsXG4gICAgICAgICAgICAgIGZpbmRNYW55LFxuICAgICAgICAgICAgICBmbGF0dGVuTG9jYWxlcyxcbiAgICAgICAgICAgICAgZ2xvYmFsLFxuICAgICAgICAgICAgICBsb2NhbGUsXG4gICAgICAgICAgICAgIG92ZXJyaWRlQWNjZXNzLFxuICAgICAgICAgICAgICBwb3B1bGF0aW9uUHJvbWlzZXMsXG4gICAgICAgICAgICAgIHJlcSxcbiAgICAgICAgICAgICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgICAgICAgICAgICAgc2libGluZ0RvYzogcm93IHx8IHt9LFxuICAgICAgICAgICAgICB0cmlnZ2VyQWNjZXNzQ29udHJvbCxcbiAgICAgICAgICAgICAgdHJpZ2dlckhvb2tzLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICB9IGVsc2UgaWYgKCFzaG91bGRIb2lzdExvY2FsaXplZFZhbHVlICYmIHR5cGVvZiByb3dzID09PSAnb2JqZWN0JyAmJiByb3dzICE9PSBudWxsKSB7XG4gICAgICAgIE9iamVjdC52YWx1ZXMocm93cykuZm9yRWFjaCgobG9jYWxlUm93cykgPT4ge1xuICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGxvY2FsZVJvd3MpKSB7XG4gICAgICAgICAgICBsb2NhbGVSb3dzLmZvckVhY2goKHJvdykgPT4ge1xuICAgICAgICAgICAgICBjb25zdCBibG9jayA9IGZpZWxkLmJsb2Nrcy5maW5kKChibG9ja1R5cGUpID0+IGJsb2NrVHlwZS5zbHVnID09PSByb3cuYmxvY2tUeXBlKVxuXG4gICAgICAgICAgICAgIGlmIChibG9jaykge1xuICAgICAgICAgICAgICAgIHRyYXZlcnNlRmllbGRzKHtcbiAgICAgICAgICAgICAgICAgIGNvbGxlY3Rpb24sXG4gICAgICAgICAgICAgICAgICBjb250ZXh0LFxuICAgICAgICAgICAgICAgICAgY3VycmVudERlcHRoLFxuICAgICAgICAgICAgICAgICAgZGVwdGgsXG4gICAgICAgICAgICAgICAgICBkb2MsXG4gICAgICAgICAgICAgICAgICBmYWxsYmFja0xvY2FsZSxcbiAgICAgICAgICAgICAgICAgIGZpZWxkUHJvbWlzZXMsXG4gICAgICAgICAgICAgICAgICBmaWVsZHM6IGJsb2NrLmZpZWxkcyxcbiAgICAgICAgICAgICAgICAgIGZpbmRNYW55LFxuICAgICAgICAgICAgICAgICAgZmxhdHRlbkxvY2FsZXMsXG4gICAgICAgICAgICAgICAgICBnbG9iYWwsXG4gICAgICAgICAgICAgICAgICBsb2NhbGUsXG4gICAgICAgICAgICAgICAgICBvdmVycmlkZUFjY2VzcyxcbiAgICAgICAgICAgICAgICAgIHBvcHVsYXRpb25Qcm9taXNlcyxcbiAgICAgICAgICAgICAgICAgIHJlcSxcbiAgICAgICAgICAgICAgICAgIHNob3dIaWRkZW5GaWVsZHMsXG4gICAgICAgICAgICAgICAgICBzaWJsaW5nRG9jOiByb3cgfHwge30sXG4gICAgICAgICAgICAgICAgICB0cmlnZ2VyQWNjZXNzQ29udHJvbCxcbiAgICAgICAgICAgICAgICAgIHRyaWdnZXJIb29rcyxcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHNpYmxpbmdEb2NbZmllbGQubmFtZV0gPSBbXVxuICAgICAgfVxuXG4gICAgICBicmVha1xuICAgIH1cblxuICAgIGNhc2UgJ3Jvdyc6XG4gICAgY2FzZSAnY29sbGFwc2libGUnOiB7XG4gICAgICB0cmF2ZXJzZUZpZWxkcyh7XG4gICAgICAgIGNvbGxlY3Rpb24sXG4gICAgICAgIGNvbnRleHQsXG4gICAgICAgIGN1cnJlbnREZXB0aCxcbiAgICAgICAgZGVwdGgsXG4gICAgICAgIGRvYyxcbiAgICAgICAgZmFsbGJhY2tMb2NhbGUsXG4gICAgICAgIGZpZWxkUHJvbWlzZXMsXG4gICAgICAgIGZpZWxkczogZmllbGQuZmllbGRzLFxuICAgICAgICBmaW5kTWFueSxcbiAgICAgICAgZmxhdHRlbkxvY2FsZXMsXG4gICAgICAgIGdsb2JhbCxcbiAgICAgICAgbG9jYWxlLFxuICAgICAgICBvdmVycmlkZUFjY2VzcyxcbiAgICAgICAgcG9wdWxhdGlvblByb21pc2VzLFxuICAgICAgICByZXEsXG4gICAgICAgIHNob3dIaWRkZW5GaWVsZHMsXG4gICAgICAgIHNpYmxpbmdEb2MsXG4gICAgICAgIHRyaWdnZXJBY2Nlc3NDb250cm9sLFxuICAgICAgICB0cmlnZ2VySG9va3MsXG4gICAgICB9KVxuXG4gICAgICBicmVha1xuICAgIH1cblxuICAgIGNhc2UgJ3RhYic6IHtcbiAgICAgIGxldCB0YWJEb2MgPSBzaWJsaW5nRG9jXG4gICAgICBpZiAodGFiSGFzTmFtZShmaWVsZCkpIHtcbiAgICAgICAgdGFiRG9jID0gc2libGluZ0RvY1tmaWVsZC5uYW1lXSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICAgICAgICBpZiAodHlwZW9mIHNpYmxpbmdEb2NbZmllbGQubmFtZV0gIT09ICdvYmplY3QnKSB0YWJEb2MgPSB7fVxuICAgICAgfVxuXG4gICAgICB0cmF2ZXJzZUZpZWxkcyh7XG4gICAgICAgIGNvbGxlY3Rpb24sXG4gICAgICAgIGNvbnRleHQsXG4gICAgICAgIGN1cnJlbnREZXB0aCxcbiAgICAgICAgZGVwdGgsXG4gICAgICAgIGRvYyxcbiAgICAgICAgZmFsbGJhY2tMb2NhbGUsXG4gICAgICAgIGZpZWxkUHJvbWlzZXMsXG4gICAgICAgIGZpZWxkczogZmllbGQuZmllbGRzLFxuICAgICAgICBmaW5kTWFueSxcbiAgICAgICAgZmxhdHRlbkxvY2FsZXMsXG4gICAgICAgIGdsb2JhbCxcbiAgICAgICAgbG9jYWxlLFxuICAgICAgICBvdmVycmlkZUFjY2VzcyxcbiAgICAgICAgcG9wdWxhdGlvblByb21pc2VzLFxuICAgICAgICByZXEsXG4gICAgICAgIHNob3dIaWRkZW5GaWVsZHMsXG4gICAgICAgIHNpYmxpbmdEb2M6IHRhYkRvYyxcbiAgICAgICAgdHJpZ2dlckFjY2Vzc0NvbnRyb2wsXG4gICAgICAgIHRyaWdnZXJIb29rcyxcbiAgICAgIH0pXG5cbiAgICAgIGJyZWFrXG4gICAgfVxuXG4gICAgY2FzZSAndGFicyc6IHtcbiAgICAgIHRyYXZlcnNlRmllbGRzKHtcbiAgICAgICAgY29sbGVjdGlvbixcbiAgICAgICAgY29udGV4dCxcbiAgICAgICAgY3VycmVudERlcHRoLFxuICAgICAgICBkZXB0aCxcbiAgICAgICAgZG9jLFxuICAgICAgICBmYWxsYmFja0xvY2FsZSxcbiAgICAgICAgZmllbGRQcm9taXNlcyxcbiAgICAgICAgZmllbGRzOiBmaWVsZC50YWJzLm1hcCgodGFiKSA9PiAoeyAuLi50YWIsIHR5cGU6ICd0YWInIH0pKSxcbiAgICAgICAgZmluZE1hbnksXG4gICAgICAgIGZsYXR0ZW5Mb2NhbGVzLFxuICAgICAgICBnbG9iYWwsXG4gICAgICAgIGxvY2FsZSxcbiAgICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICAgIHBvcHVsYXRpb25Qcm9taXNlcyxcbiAgICAgICAgcmVxLFxuICAgICAgICBzaG93SGlkZGVuRmllbGRzLFxuICAgICAgICBzaWJsaW5nRG9jLFxuICAgICAgICB0cmlnZ2VyQWNjZXNzQ29udHJvbCxcbiAgICAgICAgdHJpZ2dlckhvb2tzLFxuICAgICAgfSlcbiAgICAgIGJyZWFrXG4gICAgfVxuXG4gICAgZGVmYXVsdDoge1xuICAgICAgYnJlYWtcbiAgICB9XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJwcm9taXNlIiwiY29sbGVjdGlvbiIsImNvbnRleHQiLCJjdXJyZW50RGVwdGgiLCJkZXB0aCIsImRvYyIsImZhbGxiYWNrTG9jYWxlIiwiZmllbGQiLCJmaWVsZFByb21pc2VzIiwiZmluZE1hbnkiLCJmbGF0dGVuTG9jYWxlcyIsImdsb2JhbCIsImxvY2FsZSIsIm92ZXJyaWRlQWNjZXNzIiwicG9wdWxhdGlvblByb21pc2VzIiwicmVxIiwic2hvd0hpZGRlbkZpZWxkcyIsInNpYmxpbmdEb2MiLCJ0cmlnZ2VyQWNjZXNzQ29udHJvbCIsInRyaWdnZXJIb29rcyIsImZpZWxkQWZmZWN0c0RhdGEiLCJoaWRkZW4iLCJuYW1lIiwic2hvdWxkSG9pc3RMb2NhbGl6ZWRWYWx1ZSIsImxvY2FsaXplZCIsInBheWxvYWQiLCJjb25maWciLCJsb2NhbGl6YXRpb24iLCJ2YWx1ZSIsImhvaXN0ZWRWYWx1ZSIsImZhbGxiYWNrVmFsdWUiLCJpc051bGxPclVuZGVmaW5lZCIsInR5cGUiLCJ0YWJzIiwiZm9yRWFjaCIsInRhYiIsInRhYkhhc05hbWUiLCJlZGl0b3IiLCJwb3B1bGF0aW9uUHJvbWlzZSIsInB1c2giLCJhZnRlclJlYWRQcm9taXNlIiwiaW5jb21pbmdFZGl0b3JTdGF0ZSIsInBvaW50RG9jIiwiQXJyYXkiLCJpc0FycmF5IiwiY29vcmRpbmF0ZXMiLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJob29rcyIsImFmdGVyUmVhZCIsInJlZHVjZSIsInByaW9ySG9vayIsImN1cnJlbnRIb29rIiwic2hvdWxkUnVuSG9va09uQWxsTG9jYWxlcyIsImhvb2tQcm9taXNlcyIsIk9iamVjdCIsImVudHJpZXMiLCJtYXAiLCJob29rZWRWYWx1ZSIsImRhdGEiLCJvcGVyYXRpb24iLCJvcmlnaW5hbERvYyIsInNpYmxpbmdEYXRhIiwiUHJvbWlzZSIsImFsbCIsInJlc29sdmUiLCJhbGxvd0RlZmF1bHRWYWx1ZSIsImFjY2VzcyIsInJlYWQiLCJyZXN1bHQiLCJpZCIsImRlZmF1bHRWYWx1ZSIsImdldFZhbHVlV2l0aERlZmF1bHQiLCJ1c2VyIiwicmVsYXRpb25zaGlwUG9wdWxhdGlvblByb21pc2UiLCJncm91cERvYyIsInRyYXZlcnNlRmllbGRzIiwiZmllbGRzIiwicm93cyIsInJvdyIsInZhbHVlcyIsImxvY2FsZVJvd3MiLCJibG9jayIsImJsb2NrcyIsImZpbmQiLCJibG9ja1R5cGUiLCJzbHVnIiwidGFiRG9jIl0sIm1hcHBpbmdzIjoiQUFBQSxvQ0FBb0M7Ozs7K0JBMEN2QkE7OztlQUFBQTs7O3VCQW5DZ0M7d0VBQ2I7K0NBQ2M7Z0NBQ2Y7Ozs7OztBQWdDeEIsTUFBTUEsVUFBVSxPQUFPLEVBQzVCQyxVQUFVLEVBQ1ZDLE9BQU8sRUFDUEMsWUFBWSxFQUNaQyxLQUFLLEVBQ0xDLEdBQUcsRUFDSEMsY0FBYyxFQUNkQyxLQUFLLEVBQ0xDLGFBQWEsRUFDYkMsUUFBUSxFQUNSQyxjQUFjLEVBQ2RDLE1BQU0sRUFDTkMsTUFBTSxFQUNOQyxjQUFjLEVBQ2RDLGtCQUFrQixFQUNsQkMsR0FBRyxFQUNIQyxnQkFBZ0IsRUFDaEJDLFVBQVUsRUFDVkMsdUJBQXVCLElBQUksRUFDM0JDLGVBQWUsSUFBSSxFQUNkO0lB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
|
|
446
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maWVsZHMvaG9va3MvYWZ0ZXJSZWFkL3Byb21pc2UudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbm8tcGFyYW0tcmVhc3NpZ24gKi9cbmltcG9ydCB0eXBlIHsgUmljaFRleHRBZGFwdGVyIH0gZnJvbSAnLi4vLi4vLi4vYWRtaW4vdHlwZXMuZC50cydcbmltcG9ydCB0eXBlIHsgU2FuaXRpemVkQ29sbGVjdGlvbkNvbmZpZyB9IGZyb20gJy4uLy4uLy4uL2NvbGxlY3Rpb25zL2NvbmZpZy90eXBlcy5kLnRzJ1xuaW1wb3J0IHR5cGUgeyBTYW5pdGl6ZWRHbG9iYWxDb25maWcgfSBmcm9tICcuLi8uLi8uLi9nbG9iYWxzL2NvbmZpZy90eXBlcy5kLnRzJ1xuaW1wb3J0IHR5cGUgeyBQYXlsb2FkUmVxdWVzdCwgUmVxdWVzdENvbnRleHQgfSBmcm9tICcuLi8uLi8uLi90eXBlcy9pbmRleC5kLnRzJ1xuaW1wb3J0IHR5cGUgeyBGaWVsZCwgVGFiQXNGaWVsZCB9IGZyb20gJy4uLy4uL2NvbmZpZy90eXBlcy5kLnRzJ1xuXG5pbXBvcnQgeyBmaWVsZEFmZmVjdHNEYXRhLCB0YWJIYXNOYW1lIH0gZnJvbSAnLi4vLi4vY29uZmlnL3R5cGVzLmpzJ1xuaW1wb3J0IGdldFZhbHVlV2l0aERlZmF1bHQgZnJvbSAnLi4vLi4vZ2V0RGVmYXVsdFZhbHVlLmpzJ1xuaW1wb3J0IHsgcmVsYXRpb25zaGlwUG9wdWxhdGlvblByb21pc2UgfSBmcm9tICcuL3JlbGF0aW9uc2hpcFBvcHVsYXRpb25Qcm9taXNlLmpzJ1xuaW1wb3J0IHsgdHJhdmVyc2VGaWVsZHMgfSBmcm9tICcuL3RyYXZlcnNlRmllbGRzLmpzJ1xuXG50eXBlIEFyZ3MgPSB7XG4gIGNvbGxlY3Rpb246IFNhbml0aXplZENvbGxlY3Rpb25Db25maWcgfCBudWxsXG4gIGNvbnRleHQ6IFJlcXVlc3RDb250ZXh0XG4gIGN1cnJlbnREZXB0aDogbnVtYmVyXG4gIGRlcHRoOiBudW1iZXJcbiAgZG9jOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICBmYWxsYmFja0xvY2FsZTogbnVsbCB8IHN0cmluZ1xuICBmaWVsZDogRmllbGQgfCBUYWJBc0ZpZWxkXG4gIGZpZWxkUHJvbWlzZXM6IFByb21pc2U8dm9pZD5bXVxuICBmaW5kTWFueTogYm9vbGVhblxuICBmbGF0dGVuTG9jYWxlczogYm9vbGVhblxuICBnbG9iYWw6IFNhbml0aXplZEdsb2JhbENvbmZpZyB8IG51bGxcbiAgbG9jYWxlOiBudWxsIHwgc3RyaW5nXG4gIG92ZXJyaWRlQWNjZXNzOiBib29sZWFuXG4gIHBvcHVsYXRpb25Qcm9taXNlczogUHJvbWlzZTx2b2lkPltdXG4gIHJlcTogUGF5bG9hZFJlcXVlc3RcbiAgc2hvd0hpZGRlbkZpZWxkczogYm9vbGVhblxuICBzaWJsaW5nRG9jOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICB0cmlnZ2VyQWNjZXNzQ29udHJvbD86IGJvb2xlYW5cbiAgdHJpZ2dlckhvb2tzPzogYm9vbGVhblxufVxuXG4vLyBUaGlzIGZ1bmN0aW9uIGlzIHJlc3BvbnNpYmxlIGZvciB0aGUgZm9sbG93aW5nIGFjdGlvbnMsIGluIG9yZGVyOlxuLy8gLSBSZW1vdmUgaGlkZGVuIGZpZWxkcyBmcm9tIHJlc3BvbnNlXG4vLyAtIEZsYXR0ZW4gbG9jYWxlcyBpbnRvIHJlcXVlc3RlZCBsb2NhbGVcbi8vIC0gU2FuaXRpemUgb3V0Z29pbmcgZGF0YSAocG9pbnQgZmllbGQsIGV0Yy4pXG4vLyAtIEV4ZWN1dGUgZmllbGQgaG9va3Ncbi8vIC0gRXhlY3V0ZSByZWFkIGFjY2VzcyBjb250cm9sXG4vLyAtIFBvcHVsYXRlIHJlbGF0aW9uc2hpcHNcblxuZXhwb3J0IGNvbnN0IHByb21pc2UgPSBhc3luYyAoe1xuICBjb2xsZWN0aW9uLFxuICBjb250ZXh0LFxuICBjdXJyZW50RGVwdGgsXG4gIGRlcHRoLFxuICBkb2MsXG4gIGZhbGxiYWNrTG9jYWxlLFxuICBmaWVsZCxcbiAgZmllbGRQcm9taXNlcyxcbiAgZmluZE1hbnksXG4gIGZsYXR0ZW5Mb2NhbGVzLFxuICBnbG9iYWwsXG4gIGxvY2FsZSxcbiAgb3ZlcnJpZGVBY2Nlc3MsXG4gIHBvcHVsYXRpb25Qcm9taXNlcyxcbiAgcmVxLFxuICBzaG93SGlkZGVuRmllbGRzLFxuICBzaWJsaW5nRG9jLFxuICB0cmlnZ2VyQWNjZXNzQ29udHJvbCA9IHRydWUsXG4gIHRyaWdnZXJIb29rcyA9IHRydWUsXG59OiBBcmdzKTogUHJvbWlzZTx2b2lkPiA9PiB7XG4gIGlmIChcbiAgICBmaWVsZEFmZmVjdHNEYXRhKGZpZWxkKSAmJlxuICAgIGZpZWxkLmhpZGRlbiAmJlxuICAgIHR5cGVvZiBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdICE9PSAndW5kZWZpbmVkJyAmJlxuICAgICFzaG93SGlkZGVuRmllbGRzXG4gICkge1xuICAgIGRlbGV0ZSBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdXG4gIH1cblxuICBjb25zdCBzaG91bGRIb2lzdExvY2FsaXplZFZhbHVlID1cbiAgICBmbGF0dGVuTG9jYWxlcyAmJlxuICAgIGZpZWxkQWZmZWN0c0RhdGEoZmllbGQpICYmXG4gICAgdHlwZW9mIHNpYmxpbmdEb2NbZmllbGQubmFtZV0gPT09ICdvYmplY3QnICYmXG4gICAgc2libGluZ0RvY1tmaWVsZC5uYW1lXSAhPT0gbnVsbCAmJlxuICAgIGZpZWxkLmxvY2FsaXplZCAmJlxuICAgIGxvY2FsZSAhPT0gJ2FsbCcgJiZcbiAgICByZXEucGF5bG9hZC5jb25maWcubG9jYWxpemF0aW9uXG5cbiAgaWYgKHNob3VsZEhvaXN0TG9jYWxpemVkVmFsdWUpIHtcbiAgICAvLyByZXBsYWNlIGFjdHVhbCB2YWx1ZSB3aXRoIGxvY2FsaXplZCB2YWx1ZSBiZWZvcmUgc2FuaXRpemluZ1xuICAgIC8vIHsgW2xvY2FsZV06IGZpZWxkcyB9IC0+IGZpZWxkc1xuICAgIGNvbnN0IHZhbHVlID0gc2libGluZ0RvY1tmaWVsZC5uYW1lXVtsb2NhbGVdXG5cbiAgICBsZXQgaG9pc3RlZFZhbHVlID0gdmFsdWVcblxuICAgIGlmIChmYWxsYmFja0xvY2FsZSAmJiBmYWxsYmFja0xvY2FsZSAhPT0gbG9jYWxlKSB7XG4gICAgICBjb25zdCBmYWxsYmFja1ZhbHVlID0gc2libGluZ0RvY1tmaWVsZC5uYW1lXVtmYWxsYmFja0xvY2FsZV1cbiAgICAgIGNvbnN0IGlzTnVsbE9yVW5kZWZpbmVkID0gdHlwZW9mIHZhbHVlID09PSAndW5kZWZpbmVkJyB8fCB2YWx1ZSA9PT0gbnVsbFxuXG4gICAgICBpZiAoZmFsbGJhY2tWYWx1ZSkge1xuICAgICAgICBzd2l0Y2ggKGZpZWxkLnR5cGUpIHtcbiAgICAgICAgICBjYXNlICd0ZXh0JzpcbiAgICAgICAgICBjYXNlICd0ZXh0YXJlYSc6IHtcbiAgICAgICAgICAgIGlmICh2YWx1ZSA9PT0gJycgfHwgaXNOdWxsT3JVbmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgaG9pc3RlZFZhbHVlID0gZmFsbGJhY2tWYWx1ZVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBkZWZhdWx0OiB7XG4gICAgICAgICAgICBpZiAoaXNOdWxsT3JVbmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgaG9pc3RlZFZhbHVlID0gZmFsbGJhY2tWYWx1ZVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdID0gaG9pc3RlZFZhbHVlXG4gIH1cblxuICAvLyBTYW5pdGl6ZSBvdXRnb2luZyBmaWVsZCB2YWx1ZVxuICBzd2l0Y2ggKGZpZWxkLnR5cGUpIHtcbiAgICBjYXNlICdncm91cCc6IHtcbiAgICAgIC8vIEZpbGwgZ3JvdXBzIHdpdGggZW1wdHkgb2JqZWN0cyBzbyBmaWVsZHMgd2l0aCBob29rcyB3aXRoaW4gZ3JvdXBzIGNhbiBwb3B1bGF0ZVxuICAgICAgLy8gdGhlbXNlbHZlcyB2aXJ0dWFsbHkgYXMgbmVjZXNzYXJ5XG4gICAgICBpZiAodHlwZW9mIHNpYmxpbmdEb2NbZmllbGQubmFtZV0gPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIHNpYmxpbmdEb2NbZmllbGQubmFtZV0gPSB7fVxuICAgICAgfVxuXG4gICAgICBicmVha1xuICAgIH1cbiAgICBjYXNlICd0YWJzJzoge1xuICAgICAgZmllbGQudGFicy5mb3JFYWNoKCh0YWIpID0+IHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIHRhYkhhc05hbWUodGFiKSAmJlxuICAgICAgICAgICh0eXBlb2Ygc2libGluZ0RvY1t0YWIubmFtZV0gPT09ICd1bmRlZmluZWQnIHx8IHNpYmxpbmdEb2NbdGFiLm5hbWVdID09PSBudWxsKVxuICAgICAgICApIHtcbiAgICAgICAgICBzaWJsaW5nRG9jW3RhYi5uYW1lXSA9IHt9XG4gICAgICAgIH1cbiAgICAgIH0pXG5cbiAgICAgIGJyZWFrXG4gICAgfVxuXG4gICAgY2FzZSAncmljaFRleHQnOiB7XG4gICAgICBjb25zdCBlZGl0b3I6IFJpY2hUZXh0QWRhcHRlciA9IGZpZWxkPy5lZGl0b3JcbiAgICAgIC8vIFRoaXMgaXMgcnVuIGhlcmUgQU5EIGluIHRoZSBHcmFwaFFMIFJlc29sdmVyXG4gICAgICBpZiAoZWRpdG9yPy5wb3B1bGF0aW9uUHJvbWlzZSkge1xuICAgICAgICBjb25zdCBwb3B1bGF0aW9uUHJvbWlzZSA9IGVkaXRvci5wb3B1bGF0aW9uUHJvbWlzZSh7XG4gICAgICAgICAgY29udGV4dCxcbiAgICAgICAgICBjdXJyZW50RGVwdGgsXG4gICAgICAgICAgZGVwdGgsXG4gICAgICAgICAgZmllbGQsXG4gICAgICAgICAgZmluZE1hbnksXG4gICAgICAgICAgZmxhdHRlbkxvY2FsZXMsXG4gICAgICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICAgICAgcG9wdWxhdGlvblByb21pc2VzLFxuICAgICAgICAgIHJlcSxcbiAgICAgICAgICBzaG93SGlkZGVuRmllbGRzLFxuICAgICAgICAgIHNpYmxpbmdEb2MsXG4gICAgICAgIH0pXG5cbiAgICAgICAgaWYgKHBvcHVsYXRpb25Qcm9taXNlKSB7XG4gICAgICAgICAgcG9wdWxhdGlvblByb21pc2VzLnB1c2gocG9wdWxhdGlvblByb21pc2UpXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gVGhpcyBpcyBvbmx5IHJ1biBoZXJlLCBpbmRlcGVuZGVudCBvZiBkZXB0aFxuICAgICAgaWYgKGVkaXRvcj8uYWZ0ZXJSZWFkUHJvbWlzZSkge1xuICAgICAgICBjb25zdCBhZnRlclJlYWRQcm9taXNlID0gZWRpdG9yPy5hZnRlclJlYWRQcm9taXNlKHtcbiAgICAgICAgICBmaWVsZCxcbiAgICAgICAgICBpbmNvbWluZ0VkaXRvclN0YXRlOiBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdIGFzIG9iamVjdCxcbiAgICAgICAgICBzaWJsaW5nRG9jLFxuICAgICAgICB9KVxuXG4gICAgICAgIGlmIChhZnRlclJlYWRQcm9taXNlKSB7XG4gICAgICAgICAgcG9wdWxhdGlvblByb21pc2VzLnB1c2goYWZ0ZXJSZWFkUHJvbWlzZSlcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBicmVha1xuICAgIH1cblxuICAgIGNhc2UgJ3BvaW50Jzoge1xuICAgICAgY29uc3QgcG9pbnREb2MgPSBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShwb2ludERvYz8uY29vcmRpbmF0ZXMpICYmIHBvaW50RG9jLmNvb3JkaW5hdGVzLmxlbmd0aCA9PT0gMikge1xuICAgICAgICBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdID0gcG9pbnREb2MuY29vcmRpbmF0ZXNcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHNpYmxpbmdEb2NbZmllbGQubmFtZV0gPSB1bmRlZmluZWRcbiAgICAgIH1cblxuICAgICAgYnJlYWtcbiAgICB9XG5cbiAgICBkZWZhdWx0OiB7XG4gICAgICBicmVha1xuICAgIH1cbiAgfVxuXG4gIGlmIChmaWVsZEFmZmVjdHNEYXRhKGZpZWxkKSkge1xuICAgIC8vIEV4ZWN1dGUgaG9va3NcbiAgICBpZiAodHJpZ2dlckhvb2tzICYmIGZpZWxkLmhvb2tzPy5hZnRlclJlYWQpIHtcbiAgICAgIGF3YWl0IGZpZWxkLmhvb2tzLmFmdGVyUmVhZC5yZWR1Y2UoYXN5bmMgKHByaW9ySG9vaywgY3VycmVudEhvb2spID0+IHtcbiAgICAgICAgYXdhaXQgcHJpb3JIb29rXG5cbiAgICAgICAgY29uc3Qgc2hvdWxkUnVuSG9va09uQWxsTG9jYWxlcyA9XG4gICAgICAgICAgZmllbGQubG9jYWxpemVkICYmXG4gICAgICAgICAgKGxvY2FsZSA9PT0gJ2FsbCcgfHwgIWZsYXR0ZW5Mb2NhbGVzKSAmJlxuICAgICAgICAgIHR5cGVvZiBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdID09PSAnb2JqZWN0J1xuXG4gICAgICAgIGlmIChzaG91bGRSdW5Ib29rT25BbGxMb2NhbGVzKSB7XG4gICAgICAgICAgY29uc3QgaG9va1Byb21pc2VzID0gT2JqZWN0LmVudHJpZXMoc2libGluZ0RvY1tmaWVsZC5uYW1lXSkubWFwKChbbG9jYWxlLCB2YWx1ZV0pID0+XG4gICAgICAgICAgICAoYXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCBob29rZWRWYWx1ZSA9IGF3YWl0IGN1cnJlbnRIb29rKHtcbiAgICAgICAgICAgICAgICBjb2xsZWN0aW9uLFxuICAgICAgICAgICAgICAgIGNvbnRleHQsXG4gICAgICAgICAgICAgICAgZGF0YTogZG9jLFxuICAgICAgICAgICAgICAgIGZpZWxkLFxuICAgICAgICAgICAgICAgIGdsb2JhbCxcbiAgICAgICAgICAgICAgICBvcGVyYXRpb246ICdyZWFkJyxcbiAgICAgICAgICAgICAgICBvcmlnaW5hbERvYzogZG9jLFxuICAgICAgICAgICAgICAgIHJlcSxcbiAgICAgICAgICAgICAgICBzaWJsaW5nRGF0YTogc2libGluZ0RvYyxcbiAgICAgICAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICAgICAgfSlcblxuICAgICAgICAgICAgICBpZiAoaG9va2VkVmFsdWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgIHNpYmxpbmdEb2NbZmllbGQubmFtZV1bbG9jYWxlXSA9IGhvb2tlZFZhbHVlXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pKCksXG4gICAgICAgICAgKVxuXG4gICAgICAgICAgYXdhaXQgUHJvbWlzZS5hbGwoaG9va1Byb21pc2VzKVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnN0IGhvb2tlZFZhbHVlID0gYXdhaXQgY3VycmVudEhvb2soe1xuICAgICAgICAgICAgY29sbGVjdGlvbixcbiAgICAgICAgICAgIGNvbnRleHQsXG4gICAgICAgICAgICBkYXRhOiBkb2MsXG4gICAgICAgICAgICBmaWVsZCxcbiAgICAgICAgICAgIGZpbmRNYW55LFxuICAgICAgICAgICAgZ2xvYmFsLFxuICAgICAgICAgICAgb3BlcmF0aW9uOiAncmVhZCcsXG4gICAgICAgICAgICBvcmlnaW5hbERvYzogZG9jLFxuICAgICAgICAgICAgcmVxLFxuICAgICAgICAgICAgc2libGluZ0RhdGE6IHNpYmxpbmdEb2MsXG4gICAgICAgICAgICB2YWx1ZTogc2libGluZ0RvY1tmaWVsZC5uYW1lXSxcbiAgICAgICAgICB9KVxuXG4gICAgICAgICAgaWYgKGhvb2tlZFZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHNpYmxpbmdEb2NbZmllbGQubmFtZV0gPSBob29rZWRWYWx1ZVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSwgUHJvbWlzZS5yZXNvbHZlKCkpXG4gICAgfVxuXG4gICAgLy8gRXhlY3V0ZSBhY2Nlc3MgY29udHJvbFxuICAgIGxldCBhbGxvd0RlZmF1bHRWYWx1ZSA9IHRydWVcbiAgICBpZiAodHJpZ2dlckFjY2Vzc0NvbnRyb2wgJiYgZmllbGQuYWNjZXNzICYmIGZpZWxkLmFjY2Vzcy5yZWFkKSB7XG4gICAgICBjb25zdCByZXN1bHQgPSBvdmVycmlkZUFjY2Vzc1xuICAgICAgICA/IHRydWVcbiAgICAgICAgOiBhd2FpdCBmaWVsZC5hY2Nlc3MucmVhZCh7XG4gICAgICAgICAgICBpZDogZG9jLmlkIGFzIG51bWJlciB8IHN0cmluZyxcbiAgICAgICAgICAgIGRhdGE6IGRvYyxcbiAgICAgICAgICAgIGRvYyxcbiAgICAgICAgICAgIHJlcSxcbiAgICAgICAgICAgIHNpYmxpbmdEYXRhOiBzaWJsaW5nRG9jLFxuICAgICAgICAgIH0pXG5cbiAgICAgIGlmICghcmVzdWx0KSB7XG4gICAgICAgIGFsbG93RGVmYXVsdFZhbHVlID0gZmFsc2VcbiAgICAgICAgZGVsZXRlIHNpYmxpbmdEb2NbZmllbGQubmFtZV1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXQgZGVmYXVsdFZhbHVlIG9uIHRoZSBmaWVsZCBmb3IgZ2xvYmFscyBiZWluZyByZXR1cm5lZCB3aXRob3V0IGJlaW5nIGZpcnN0IGNyZWF0ZWRcbiAgICAvLyBvciBjb2xsZWN0aW9uIGRvY3VtZW50cyBjcmVhdGVkIHByaW9yIHRvIGhhdmluZyBhIGRlZmF1bHRcbiAgICBpZiAoXG4gICAgICBhbGxvd0RlZmF1bHRWYWx1ZSAmJlxuICAgICAgdHlwZW9mIHNpYmxpbmdEb2NbZmllbGQubmFtZV0gPT09ICd1bmRlZmluZWQnICYmXG4gICAgICB0eXBlb2YgZmllbGQuZGVmYXVsdFZhbHVlICE9PSAndW5kZWZpbmVkJ1xuICAgICkge1xuICAgICAgc2libGluZ0RvY1tmaWVsZC5uYW1lXSA9IGF3YWl0IGdldFZhbHVlV2l0aERlZmF1bHQoe1xuICAgICAgICBkZWZhdWx0VmFsdWU6IGZpZWxkLmRlZmF1bHRWYWx1ZSxcbiAgICAgICAgbG9jYWxlLFxuICAgICAgICB1c2VyOiByZXEudXNlcixcbiAgICAgICAgdmFsdWU6IHNpYmxpbmdEb2NbZmllbGQubmFtZV0sXG4gICAgICB9KVxuICAgIH1cblxuICAgIGlmIChmaWVsZC50eXBlID09PSAncmVsYXRpb25zaGlwJyB8fCBmaWVsZC50eXBlID09PSAndXBsb2FkJykge1xuICAgICAgcG9wdWxhdGlvblByb21pc2VzLnB1c2goXG4gICAgICAgIHJlbGF0aW9uc2hpcFBvcHVsYXRpb25Qcm9taXNlKHtcbiAgICAgICAgICBjdXJyZW50RGVwdGgsXG4gICAgICAgICAgZGVwdGgsXG4gICAgICAgICAgZmFsbGJhY2tMb2NhbGUsXG4gICAgICAgICAgZmllbGQsXG4gICAgICAgICAgbG9jYWxlLFxuICAgICAgICAgIG92ZXJyaWRlQWNjZXNzLFxuICAgICAgICAgIHJlcSxcbiAgICAgICAgICBzaG93SGlkZGVuRmllbGRzLFxuICAgICAgICAgIHNpYmxpbmdEb2MsXG4gICAgICAgIH0pLFxuICAgICAgKVxuICAgIH1cbiAgfVxuXG4gIHN3aXRjaCAoZmllbGQudHlwZSkge1xuICAgIGNhc2UgJ2dyb3VwJzoge1xuICAgICAgbGV0IGdyb3VwRG9jID0gc2libGluZ0RvY1tmaWVsZC5uYW1lXSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICAgICAgaWYgKHR5cGVvZiBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdICE9PSAnb2JqZWN0JykgZ3JvdXBEb2MgPSB7fVxuXG4gICAgICB0cmF2ZXJzZUZpZWxkcyh7XG4gICAgICAgIGNvbGxlY3Rpb24sXG4gICAgICAgIGNvbnRleHQsXG4gICAgICAgIGN1cnJlbnREZXB0aCxcbiAgICAgICAgZGVwdGgsXG4gICAgICAgIGRvYyxcbiAgICAgICAgZmFsbGJhY2tMb2NhbGUsXG4gICAgICAgIGZpZWxkUHJvbWlzZXMsXG4gICAgICAgIGZpZWxkczogZmllbGQuZmllbGRzLFxuICAgICAgICBmaW5kTWFueSxcbiAgICAgICAgZmxhdHRlbkxvY2FsZXMsXG4gICAgICAgIGdsb2JhbCxcbiAgICAgICAgbG9jYWxlLFxuICAgICAgICBvdmVycmlkZUFjY2VzcyxcbiAgICAgICAgcG9wdWxhdGlvblByb21pc2VzLFxuICAgICAgICByZXEsXG4gICAgICAgIHNob3dIaWRkZW5GaWVsZHMsXG4gICAgICAgIHNpYmxpbmdEb2M6IGdyb3VwRG9jLFxuICAgICAgICB0cmlnZ2VyQWNjZXNzQ29udHJvbCxcbiAgICAgICAgdHJpZ2dlckhvb2tzLFxuICAgICAgfSlcblxuICAgICAgYnJlYWtcbiAgICB9XG5cbiAgICBjYXNlICdhcnJheSc6IHtcbiAgICAgIGNvbnN0IHJvd3MgPSBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdXG5cbiAgICAgIGlmIChBcnJheS5pc0FycmF5KHJvd3MpKSB7XG4gICAgICAgIHJvd3MuZm9yRWFjaCgocm93KSA9PiB7XG4gICAgICAgICAgdHJhdmVyc2VGaWVsZHMoe1xuICAgICAgICAgICAgY29sbGVjdGlvbixcbiAgICAgICAgICAgIGNvbnRleHQsXG4gICAgICAgICAgICBjdXJyZW50RGVwdGgsXG4gICAgICAgICAgICBkZXB0aCxcbiAgICAgICAgICAgIGRvYyxcbiAgICAgICAgICAgIGZhbGxiYWNrTG9jYWxlLFxuICAgICAgICAgICAgZmllbGRQcm9taXNlcyxcbiAgICAgICAgICAgIGZpZWxkczogZmllbGQuZmllbGRzLFxuICAgICAgICAgICAgZmluZE1hbnksXG4gICAgICAgICAgICBmbGF0dGVuTG9jYWxlcyxcbiAgICAgICAgICAgIGdsb2JhbCxcbiAgICAgICAgICAgIGxvY2FsZSxcbiAgICAgICAgICAgIG92ZXJyaWRlQWNjZXNzLFxuICAgICAgICAgICAgcG9wdWxhdGlvblByb21pc2VzLFxuICAgICAgICAgICAgcmVxLFxuICAgICAgICAgICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgICAgICAgICAgIHNpYmxpbmdEb2M6IHJvdyB8fCB7fSxcbiAgICAgICAgICAgIHRyaWdnZXJBY2Nlc3NDb250cm9sLFxuICAgICAgICAgICAgdHJpZ2dlckhvb2tzLFxuICAgICAgICAgIH0pXG4gICAgICAgIH0pXG4gICAgICB9IGVsc2UgaWYgKCFzaG91bGRIb2lzdExvY2FsaXplZFZhbHVlICYmIHR5cGVvZiByb3dzID09PSAnb2JqZWN0JyAmJiByb3dzICE9PSBudWxsKSB7XG4gICAgICAgIE9iamVjdC52YWx1ZXMocm93cykuZm9yRWFjaCgobG9jYWxlUm93cykgPT4ge1xuICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGxvY2FsZVJvd3MpKSB7XG4gICAgICAgICAgICBsb2NhbGVSb3dzLmZvckVhY2goKHJvdykgPT4ge1xuICAgICAgICAgICAgICB0cmF2ZXJzZUZpZWxkcyh7XG4gICAgICAgICAgICAgICAgY29sbGVjdGlvbixcbiAgICAgICAgICAgICAgICBjb250ZXh0LFxuICAgICAgICAgICAgICAgIGN1cnJlbnREZXB0aCxcbiAgICAgICAgICAgICAgICBkZXB0aCxcbiAgICAgICAgICAgICAgICBkb2MsXG4gICAgICAgICAgICAgICAgZmFsbGJhY2tMb2NhbGUsXG4gICAgICAgICAgICAgICAgZmllbGRQcm9taXNlcyxcbiAgICAgICAgICAgICAgICBmaWVsZHM6IGZpZWxkLmZpZWxkcyxcbiAgICAgICAgICAgICAgICBmaW5kTWFueSxcbiAgICAgICAgICAgICAgICBmbGF0dGVuTG9jYWxlcyxcbiAgICAgICAgICAgICAgICBnbG9iYWwsXG4gICAgICAgICAgICAgICAgbG9jYWxlLFxuICAgICAgICAgICAgICAgIG92ZXJyaWRlQWNjZXNzLFxuICAgICAgICAgICAgICAgIHBvcHVsYXRpb25Qcm9taXNlcyxcbiAgICAgICAgICAgICAgICByZXEsXG4gICAgICAgICAgICAgICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgICAgICAgICAgICAgICBzaWJsaW5nRG9jOiByb3cgfHwge30sXG4gICAgICAgICAgICAgICAgdHJpZ2dlckFjY2Vzc0NvbnRyb2wsXG4gICAgICAgICAgICAgICAgdHJpZ2dlckhvb2tzLFxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdID0gW11cbiAgICAgIH1cbiAgICAgIGJyZWFrXG4gICAgfVxuXG4gICAgY2FzZSAnYmxvY2tzJzoge1xuICAgICAgY29uc3Qgcm93cyA9IHNpYmxpbmdEb2NbZmllbGQubmFtZV1cblxuICAgICAgaWYgKEFycmF5LmlzQXJyYXkocm93cykpIHtcbiAgICAgICAgcm93cy5mb3JFYWNoKChyb3cpID0+IHtcbiAgICAgICAgICBjb25zdCBibG9jayA9IGZpZWxkLmJsb2Nrcy5maW5kKChibG9ja1R5cGUpID0+IGJsb2NrVHlwZS5zbHVnID09PSByb3cuYmxvY2tUeXBlKVxuXG4gICAgICAgICAgaWYgKGJsb2NrKSB7XG4gICAgICAgICAgICB0cmF2ZXJzZUZpZWxkcyh7XG4gICAgICAgICAgICAgIGNvbGxlY3Rpb24sXG4gICAgICAgICAgICAgIGNvbnRleHQsXG4gICAgICAgICAgICAgIGN1cnJlbnREZXB0aCxcbiAgICAgICAgICAgICAgZGVwdGgsXG4gICAgICAgICAgICAgIGRvYyxcbiAgICAgICAgICAgICAgZmFsbGJhY2tMb2NhbGUsXG4gICAgICAgICAgICAgIGZpZWxkUHJvbWlzZXMsXG4gICAgICAgICAgICAgIGZpZWxkczogYmxvY2suZmllbGRzLFxuICAgICAgICAgICAgICBmaW5kTWFueSxcbiAgICAgICAgICAgICAgZmxhdHRlbkxvY2FsZXMsXG4gICAgICAgICAgICAgIGdsb2JhbCxcbiAgICAgICAgICAgICAgbG9jYWxlLFxuICAgICAgICAgICAgICBvdmVycmlkZUFjY2VzcyxcbiAgICAgICAgICAgICAgcG9wdWxhdGlvblByb21pc2VzLFxuICAgICAgICAgICAgICByZXEsXG4gICAgICAgICAgICAgIHNob3dIaWRkZW5GaWVsZHMsXG4gICAgICAgICAgICAgIHNpYmxpbmdEb2M6IHJvdyB8fCB7fSxcbiAgICAgICAgICAgICAgdHJpZ2dlckFjY2Vzc0NvbnRyb2wsXG4gICAgICAgICAgICAgIHRyaWdnZXJIb29rcyxcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgfSBlbHNlIGlmICghc2hvdWxkSG9pc3RMb2NhbGl6ZWRWYWx1ZSAmJiB0eXBlb2Ygcm93cyA9PT0gJ29iamVjdCcgJiYgcm93cyAhPT0gbnVsbCkge1xuICAgICAgICBPYmplY3QudmFsdWVzKHJvd3MpLmZvckVhY2goKGxvY2FsZVJvd3MpID0+IHtcbiAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShsb2NhbGVSb3dzKSkge1xuICAgICAgICAgICAgbG9jYWxlUm93cy5mb3JFYWNoKChyb3cpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgYmxvY2sgPSBmaWVsZC5ibG9ja3MuZmluZCgoYmxvY2tUeXBlKSA9PiBibG9ja1R5cGUuc2x1ZyA9PT0gcm93LmJsb2NrVHlwZSlcblxuICAgICAgICAgICAgICBpZiAoYmxvY2spIHtcbiAgICAgICAgICAgICAgICB0cmF2ZXJzZUZpZWxkcyh7XG4gICAgICAgICAgICAgICAgICBjb2xsZWN0aW9uLFxuICAgICAgICAgICAgICAgICAgY29udGV4dCxcbiAgICAgICAgICAgICAgICAgIGN1cnJlbnREZXB0aCxcbiAgICAgICAgICAgICAgICAgIGRlcHRoLFxuICAgICAgICAgICAgICAgICAgZG9jLFxuICAgICAgICAgICAgICAgICAgZmFsbGJhY2tMb2NhbGUsXG4gICAgICAgICAgICAgICAgICBmaWVsZFByb21pc2VzLFxuICAgICAgICAgICAgICAgICAgZmllbGRzOiBibG9jay5maWVsZHMsXG4gICAgICAgICAgICAgICAgICBmaW5kTWFueSxcbiAgICAgICAgICAgICAgICAgIGZsYXR0ZW5Mb2NhbGVzLFxuICAgICAgICAgICAgICAgICAgZ2xvYmFsLFxuICAgICAgICAgICAgICAgICAgbG9jYWxlLFxuICAgICAgICAgICAgICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICAgICAgICAgICAgICBwb3B1bGF0aW9uUHJvbWlzZXMsXG4gICAgICAgICAgICAgICAgICByZXEsXG4gICAgICAgICAgICAgICAgICBzaG93SGlkZGVuRmllbGRzLFxuICAgICAgICAgICAgICAgICAgc2libGluZ0RvYzogcm93IHx8IHt9LFxuICAgICAgICAgICAgICAgICAgdHJpZ2dlckFjY2Vzc0NvbnRyb2wsXG4gICAgICAgICAgICAgICAgICB0cmlnZ2VySG9va3MsXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdID0gW11cbiAgICAgIH1cblxuICAgICAgYnJlYWtcbiAgICB9XG5cbiAgICBjYXNlICdyb3cnOlxuICAgIGNhc2UgJ2NvbGxhcHNpYmxlJzoge1xuICAgICAgdHJhdmVyc2VGaWVsZHMoe1xuICAgICAgICBjb2xsZWN0aW9uLFxuICAgICAgICBjb250ZXh0LFxuICAgICAgICBjdXJyZW50RGVwdGgsXG4gICAgICAgIGRlcHRoLFxuICAgICAgICBkb2MsXG4gICAgICAgIGZhbGxiYWNrTG9jYWxlLFxuICAgICAgICBmaWVsZFByb21pc2VzLFxuICAgICAgICBmaWVsZHM6IGZpZWxkLmZpZWxkcyxcbiAgICAgICAgZmluZE1hbnksXG4gICAgICAgIGZsYXR0ZW5Mb2NhbGVzLFxuICAgICAgICBnbG9iYWwsXG4gICAgICAgIGxvY2FsZSxcbiAgICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICAgIHBvcHVsYXRpb25Qcm9taXNlcyxcbiAgICAgICAgcmVxLFxuICAgICAgICBzaG93SGlkZGVuRmllbGRzLFxuICAgICAgICBzaWJsaW5nRG9jLFxuICAgICAgICB0cmlnZ2VyQWNjZXNzQ29udHJvbCxcbiAgICAgICAgdHJpZ2dlckhvb2tzLFxuICAgICAgfSlcblxuICAgICAgYnJlYWtcbiAgICB9XG5cbiAgICBjYXNlICd0YWInOiB7XG4gICAgICBsZXQgdGFiRG9jID0gc2libGluZ0RvY1xuICAgICAgaWYgKHRhYkhhc05hbWUoZmllbGQpKSB7XG4gICAgICAgIHRhYkRvYyA9IHNpYmxpbmdEb2NbZmllbGQubmFtZV0gYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgICAgICAgaWYgKHR5cGVvZiBzaWJsaW5nRG9jW2ZpZWxkLm5hbWVdICE9PSAnb2JqZWN0JykgdGFiRG9jID0ge31cbiAgICAgIH1cblxuICAgICAgdHJhdmVyc2VGaWVsZHMoe1xuICAgICAgICBjb2xsZWN0aW9uLFxuICAgICAgICBjb250ZXh0LFxuICAgICAgICBjdXJyZW50RGVwdGgsXG4gICAgICAgIGRlcHRoLFxuICAgICAgICBkb2MsXG4gICAgICAgIGZhbGxiYWNrTG9jYWxlLFxuICAgICAgICBmaWVsZFByb21pc2VzLFxuICAgICAgICBmaWVsZHM6IGZpZWxkLmZpZWxkcyxcbiAgICAgICAgZmluZE1hbnksXG4gICAgICAgIGZsYXR0ZW5Mb2NhbGVzLFxuICAgICAgICBnbG9iYWwsXG4gICAgICAgIGxvY2FsZSxcbiAgICAgICAgb3ZlcnJpZGVBY2Nlc3MsXG4gICAgICAgIHBvcHVsYXRpb25Qcm9taXNlcyxcbiAgICAgICAgcmVxLFxuICAgICAgICBzaG93SGlkZGVuRmllbGRzLFxuICAgICAgICBzaWJsaW5nRG9jOiB0YWJEb2MsXG4gICAgICAgIHRyaWdnZXJBY2Nlc3NDb250cm9sLFxuICAgICAgICB0cmlnZ2VySG9va3MsXG4gICAgICB9KVxuXG4gICAgICBicmVha1xuICAgIH1cblxuICAgIGNhc2UgJ3RhYnMnOiB7XG4gICAgICB0cmF2ZXJzZUZpZWxkcyh7XG4gICAgICAgIGNvbGxlY3Rpb24sXG4gICAgICAgIGNvbnRleHQsXG4gICAgICAgIGN1cnJlbnREZXB0aCxcbiAgICAgICAgZGVwdGgsXG4gICAgICAgIGRvYyxcbiAgICAgICAgZmFsbGJhY2tMb2NhbGUsXG4gICAgICAgIGZpZWxkUHJvbWlzZXMsXG4gICAgICAgIGZpZWxkczogZmllbGQudGFicy5tYXAoKHRhYikgPT4gKHsgLi4udGFiLCB0eXBlOiAndGFiJyB9KSksXG4gICAgICAgIGZpbmRNYW55LFxuICAgICAgICBmbGF0dGVuTG9jYWxlcyxcbiAgICAgICAgZ2xvYmFsLFxuICAgICAgICBsb2NhbGUsXG4gICAgICAgIG92ZXJyaWRlQWNjZXNzLFxuICAgICAgICBwb3B1bGF0aW9uUHJvbWlzZXMsXG4gICAgICAgIHJlcSxcbiAgICAgICAgc2hvd0hpZGRlbkZpZWxkcyxcbiAgICAgICAgc2libGluZ0RvYyxcbiAgICAgICAgdHJpZ2dlckFjY2Vzc0NvbnRyb2wsXG4gICAgICAgIHRyaWdnZXJIb29rcyxcbiAgICAgIH0pXG4gICAgICBicmVha1xuICAgIH1cblxuICAgIGRlZmF1bHQ6IHtcbiAgICAgIGJyZWFrXG4gICAgfVxuICB9XG59XG4iXSwibmFtZXMiOlsiZmllbGRBZmZlY3RzRGF0YSIsInRhYkhhc05hbWUiLCJnZXRWYWx1ZVdpdGhEZWZhdWx0IiwicmVsYXRpb25zaGlwUG9wdWxhdGlvblByb21pc2UiLCJ0cmF2ZXJzZUZpZWxkcyIsInByb21pc2UiLCJjb2xsZWN0aW9uIiwiY29udGV4dCIsImN1cnJlbnREZXB0aCIsImRlcHRoIiwiZG9jIiwiZmFsbGJhY2tMb2NhbGUiLCJmaWVsZCIsImZpZWxkUHJvbWlzZXMiLCJmaW5kTWFueSIsImZsYXR0ZW5Mb2NhbGVzIiwiZ2xvYmFsIiwibG9jYWxlIiwib3ZlcnJpZGVBY2Nlc3MiLCJwb3B1bGF0aW9uUHJvbWlzZXMiLCJyZXEiLCJzaG93SGlkZGVuRmllbGRzIiwic2libGluZ0RvYyIsInRyaWdnZXJBY2Nlc3NDb250cm9sIiwidHJpZ2dlckhvb2tzIiwiaGlkZGVuIiwibmFtZSIsInNob3VsZEhvaXN0TG9jYWxpemVkVmFsdWUiLCJsb2NhbGl6ZWQiLCJwYXlsb2FkIiwiY29uZmlnIiwibG9jYWxpemF0aW9uIiwidmFsdWUiLCJob2lzdGVkVmFsdWUiLCJmYWxsYmFja1ZhbHVlIiwiaXNOdWxsT3JVbmRlZmluZWQiLCJ0eXBlIiwidGFicyIsImZvckVhY2giLCJ0YWIiLCJlZGl0b3IiLCJwb3B1bGF0aW9uUHJvbWlzZSIsInB1c2giLCJhZnRlclJlYWRQcm9taXNlIiwiaW5jb21pbmdFZGl0b3JTdGF0ZSIsInBvaW50RG9jIiwiQXJyYXkiLCJpc0FycmF5IiwiY29vcmRpbmF0ZXMiLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJob29rcyIsImFmdGVyUmVhZCIsInJlZHVjZSIsInByaW9ySG9vayIsImN1cnJlbnRIb29rIiwic2hvdWxkUnVuSG9va09uQWxsTG9jYWxlcyIsImhvb2tQcm9taXNlcyIsIk9iamVjdCIsImVudHJpZXMiLCJtYXAiLCJob29rZWRWYWx1ZSIsImRhdGEiLCJvcGVyYXRpb24iLCJvcmlnaW5hbERvYyIsInNpYmxpbmdEYXRhIiwiUHJvbWlzZSIsImFsbCIsInJlc29sdmUiLCJhbGxvd0RlZmF1bHRWYWx1ZSIsImFjY2VzcyIsInJlYWQiLCJyZXN1bHQiLCJpZCIsImRlZmF1bHRWYWx1ZSIsInVzZXIiLCJncm91cERvYyIsImZpZWxkcyIsInJvd3MiLCJyb3ciLCJ2YWx1ZXMiLCJsb2NhbGVSb3dzIiwiYmxvY2siLCJibG9ja3MiLCJmaW5kIiwiYmxvY2tUeXBlIiwic2x1ZyIsInRhYkRvYyJdLCJtYXBwaW5ncyI6IkFBQUEsb0NBQW9DLEdBT3BDLFNBQVNBLGdCQUFnQixFQUFFQyxVQUFVLFFBQVEsd0JBQXVCO0FBQ3BFLE9BQU9DLHlCQUF5QiwyQkFBMEI7QUFDMUQsU0FBU0MsNkJBQTZCLFFBQVEscUNBQW9DO0FBQ2xGLFNBQVNDLGNBQWMsUUFBUSxzQkFBcUI7QUF3QnBELG9FQUFvRTtBQUNwRSx1Q0FBdUM7QUFDdkMsMENBQTBDO0FBQzFDLCtDQUErQztBQUMvQyx3QkFBd0I7QUFDeEIsZ0NBQWdDO0FBQ2hDLDJCQUEyQjtBQUUzQixPQUFPLE1BQU1DLFVBQVUsT0FBTyxFQUM1QkMsVUFBVSxFQUNWQyxPQUFPLEVBQ1BDLFlBQVksRUFDWkMsS0FBSyxFQUNMQyxHQUFHLEVBQ0hDLGNBQWMsRUFDZEMsS0FBSyxFQUNMQyxhQUFhLEVBQ2JDLFFBQVEsRUFDUkMsY0FBYyxFQUNkQyxNQUFNLEVBQ05DLE1BQU0sRUFDTkMsY0FBYyxFQUNkQyxrQkFBa0IsRUFDbEJDLEdBQUcsRUFDSEMsZ0JBQWdCLEVBQ2hCQyxVQUFVLEVBQ1ZDLHVCQUF1QixJQUFJLEVBQzNCQyxlQUFlLElBQUksRUFDZDtJQUNMLElBQ0V4QixpQkFBaUJZLFVBQ2pCQSxNQUFNYSxNQUFNLElBQ1osT0FBT0gsVUFBVSxDQUFDVixNQUFNYyxJQUFJLENBQUMsS0FBSyxlQUNsQyxDQUFDTCxrQkFDRDtRQUNBLE9BQU9DLFVBQVUsQ0FBQ1YsTUFBTWMsSUFBSSxDQUFDO0lBQy9CO0lBRUEsTUFBTUMsNEJBQ0paLGtCQUNBZixpQkFBaUJZLFVBQ2pCLE9BQU9VLFVBQVUsQ0FBQ1YsTUFBTWMsSUFBSSxDQUFDLEtBQUssWUFDbENKLFVBQVUsQ0FBQ1YsTUFBTWMsSUFBSSxDQUFDLEtBQUssUUFDM0JkLE1BQU1nQixTQUFTLElBQ2ZYLFdBQVcsU0FDWEcsSUFBSVMsT0FBTyxDQUFDQyxNQUFNLENBQUNDLFlBQVk7SUFFakMsSUFBSUosMkJBQTJCO1FBQzdCLDhEQUE4RDtRQUM5RCxpQ0FBaUM7UUFDakMsTUFBTUssUUFBUVYsVUFBVSxDQUFDVixNQUFNYyxJQUFJLENBQUMsQ0FBQ1QsT0FBTztRQUU1QyxJQUFJZ0IsZUFBZUQ7UUFFbkIsSUFBSXJCLGtCQUFrQkEsbUJBQW1CTSxRQUFRO1lBQy9DLE1BQU1pQixnQkFBZ0JaLFVBQVUsQ0FBQ1YsTUFBTWMsSUFBSSxDQUFDLENBQUNmLGVBQWU7WUFDNUQsTUFBTXdCLG9CQUFvQixPQUFPSCxVQUFVLGVBQWVBLFVBQVU7WUFFcEUsSUFBSUUsZUFBZTtnQkFDakIsT0FBUXRCLE1BQU13QixJQUFJO29CQUNoQixLQUFLO29CQUNMLEtBQUs7d0JBQVk7NEJBQ2YsSUFBSUosVUFBVSxNQUFNRyxtQkFBbUI7Z0NBQ3JDRixlQUFlQzs0QkFDakI7NEJBQ0E7d0JBQ0Y7b0JBRUE7d0JBQVM7NEJBQ1AsSUFBSUMsbUJBQW1CO2dDQUNyQkYsZUFBZUM7NEJBQ2pCOzRCQUNBO3dCQUNGO2dCQUNGO1lBQ0Y7UUFDRjtRQUVBWixVQUFVLENBQUNWLE1BQU1jLElBQUksQ0FBQyxHQUFHTztJQUMzQjtJQUVBLGdDQUFnQztJQUNoQyxPQUFRckIsTUFBTXdCLElBQUk7UUFDaEIsS0FBSztZQUFTO2dCQUNaLGlGQUFpRjtnQkFDakYsb0NBQW9DO2dCQUNwQyxJQUFJLE9BQU9kLFVBQVUsQ0FBQ1YsTUFBTWMsSUFBSSxDQUFDLEtBQUssYUFBYTtvQkFDakRKLFVBQVUsQ0FBQ1YsTUFBTWMsSUFBSSxDQUFDLEdBQUcsQ0FBQztnQkFDNUI7Z0JBRUE7WUFDRjtRQUNBLEtBQUs7WUFBUTtnQkFDWGQsTUFBTXlCLElBQUksQ0FBQ0MsT0FBTyxDQUFDLENBQUNDO29CQUNsQixJQUNFdEMsV0FBV3NDLFFBQ1YsQ0FBQSxPQUFPakIsVUFBVSxDQUFDaUIsSUFBSWIsSUFBSSxDQUFDLEtBQUssZUFBZUosVUFBVSxDQUFDaUIsSUFBSWIsSUFBSSxDQUFDLEtBQUssSUFBRyxHQUM1RTt3QkFDQUosVUFBVSxDQUFDaUIsSUFBSWIsSUFBSSxDQUFDLEdBQUcsQ0FBQztvQkFDMUI7Z0JBQ0Y7Z0JBRUE7WUFDRjtRQUVBLEtBQUs7WUFBWTtnQkFDZixNQUFNYyxTQUEwQjVCLE9BQU80QjtnQkFDdkMsK0NBQStDO2dCQUMvQyxJQUFJQSxRQUFRQyxtQkFBbUI7b0JBQzdCLE1BQU1BLG9CQUFvQkQsT0FBT0MsaUJBQWlCLENBQUM7d0JBQ2pEbEM7d0JBQ0FDO3dCQUNBQzt3QkFDQUc7d0JBQ0FFO3dCQUNBQzt3QkFDQUc7d0JBQ0FDO3dCQUNBQzt3QkFDQUM7d0JBQ0FDO29CQUNGO29CQUVBLElBQUltQixtQkFBbUI7d0JBQ3JCdEIsbUJBQW1CdUIsSUFBSSxDQUFDRDtvQkFDMUI7Z0JBQ0Y7Z0JBRUEsOENBQThDO2dCQUM5QyxJQUFJRCxRQUFRRyxrQkFBa0I7b0JBQzVCLE1BQU1BLG1CQUFtQkgsUUFBUUcsaUJBQWlCO3dCQUNoRC9CO3dCQUNBZ0MscUJBQXFCdEIsVUFBVSxDQUFDVixNQUFNYyxJQUFJLENBQUM7d0JBQzNDSjtvQkFDRjtvQkFFQSxJQUFJcUIsa0JBQWtCO3dCQUNwQnhCLG1CQUFtQnVCLElBQUksQ0FBQ0M7b0JBQzFCO2dCQUNGO2dCQUVBO1lBQ0Y7UUFFQSxLQUFLO1lBQVM7Z0JBQ1osTUFBTUUsV0FBV3ZCLFVBQVUsQ0FBQ1YsTUFBTWMsSUFBSSxDQUFDO2dCQUN2QyxJQUFJb0IsTUFBTUMsT0FBTyxDQUFDRixVQUFVRyxnQkFBZ0JILFNBQVNHLFdBQVcsQ0FBQ0MsTUFBTSxLQUFLLEdBQUc7b0JBQzdFM0IsVUFBVSxDQUFDVixNQUFNYyxJQUFJLENBQUMsR0FBR21CLFNBQVNHLFdBQVc7Z0JBQy9DLE9BQU87b0JBQ0wxQixVQUFVLENBQUNWLE1BQU1jLElBQUksQ0FBQyxHQUFHd0I7Z0JBQzNCO2dCQUVBO1lBQ0Y7UUFFQTtZQUFTO2dCQUNQO1lBQ0Y7SUFDRjtJQUVBLElBQUlsRCxpQkFBaUJZLFFBQVE7UUFDM0IsZ0JBQWdCO1FBQ2hCLElBQUlZLGdCQUFnQlosTUFBTXVDLEtBQUssRUFBRUMsV0FBVztZQUMxQyxNQUFNeEMsTUFBTXVDLEtBQUssQ0FBQ0MsU0FBUyxDQUFDQyxNQUFNLENBQUMsT0FBT0MsV0FBV0M7Z0JBQ25ELE1BQU1EO2dCQUVOLE1BQU1FLDRCQUNKNUMsTUFBTWdCLFNBQVMsSUFDZFgsQ0FBQUEsV0FBVyxTQUFTLENBQUNGLGNBQWEsS0FDbkMsT0FBT08sVUFBVSxDQUFDVixNQUFNYyxJQUFJLENBQUMsS0FBSztnQkFFcEMsSUFBSThCLDJCQUEyQjtvQkFDN0IsTUFBTUMsZUFBZUMsT0FBT0MsT0FBTyxDQUFDckMsVUFBVSxDQUFDVixNQUFNYyxJQUFJLENBQUMsRUFBRWtDLEdBQUcsQ0FBQyxDQUFDLENBQUMzQyxRQUFRZSxNQUFNLEdBQzlFLEFBQUMsQ0FBQTs0QkFDQyxNQUFNNkIsY0FBYyxNQUFNTixZQUFZO2dDQUNwQ2pEO2dDQUNBQztnQ0FDQXVELE1BQU1wRDtnQ0FDTkU7Z0NBQ0FJO2dDQUNBK0MsV0FBVztnQ0FDWEMsYUFBYXREO2dDQUNiVTtnQ0FDQTZDLGFBQWEzQztnQ0FDYlU7NEJBQ0Y7NEJBRUEsSUFBSTZCLGdCQUFnQlgsV0FBVztnQ0FDN0I1QixVQUFVLENBQUNWLE1BQU1jLElBQUksQ0FBQyxDQUFDVCxPQUFPLEdBQUc0Qzs0QkFDbkM7d0JBQ0YsQ0FBQTtvQkFHRixNQUFNSyxRQUFRQyxHQUFHLENBQUNWO2dCQUNwQixPQUFPO29CQUNMLE1BQU1JLGNBQWMsTUFBTU4sWUFBWTt3QkFDcENqRDt3QkFDQUM7d0JBQ0F1RCxNQUFNcEQ7d0JBQ05FO3dCQUNBRTt3QkFDQUU7d0JBQ0ErQyxXQUFXO3dCQUNYQyxhQUFhdEQ7d0JBQ2JVO3dCQUNBNkMsYUFBYTNDO3dCQUNiVSxPQUFPVixVQUFVLENBQUNWLE1BQU1jLElBQUksQ0FBQztvQkFDL0I7b0JBRUEsSUFBSW1DLGdCQUFnQlgsV0FBVzt3QkFDN0I1QixVQUFVLENBQUNWLE1BQU1jLElBQUksQ0FBQyxHQUFHbUM7b0JBQzNCO2dCQUNGO1lBQ0YsR0FBR0ssUUFBUUUsT0FBTztRQUNwQjtRQUVBLHlCQUF5QjtRQUN6QixJQUFJQyxvQkFBb0I7UUFDeEIsSUFBSTlDLHdCQUF3QlgsTUFBTTBELE1BQU0sSUFBSTFELE1BQU0wRCxNQUFNLENBQUNDLElBQUksRUFBRTtZQUM3RCxNQUFNQyxTQUFTdEQsaUJBQ1gsT0FDQSxNQUFNTixNQUFNMEQsTUFBTSxDQUFDQyxJQUFJLENBQUM7Z0JBQ3RCRSxJQUFJL0QsSUFBSStELEVBQUU7Z0JBQ1ZYLE1BQU1wRDtnQkFDTkE7Z0JBQ0FVO2dCQUNBNkMsYUFBYTNDO1lBQ2Y7WUFFSixJQUFJLENBQUNrRCxRQUFRO2dCQUNYSCxvQkFBb0I7Z0JBQ3BCLE9BQU8vQyxVQUFVLENBQUNWLE1BQU1jLElBQUksQ0FBQztZQUMvQjtRQUNGO1FBRUEsdUZBQXVGO1FBQ3ZGLDREQUE0RDtRQUM1RCxJQUNFMkMscUJBQ0EsT0FBTy9DLFVBQVUsQ0FBQ1YsTUFBTWMsSUFBSSxDQUFDLEtBQUssZUFDbEMsT0FBT2QsTUFBTThELFlBQVksS0FBSyxhQUM5QjtZQUNBcEQsVUFBVSxDQUFDVixNQUFNYyxJQUFJLENBQUMsR0FBRyxNQUFNeEIsb0JBQW9CO2dCQUNqRHdFLGNBQWM5RCxNQUFNOEQsWUFBWTtnQkFDaEN6RDtnQkFDQTBELE1BQU12RCxJQUFJdUQsSUFBSTtnQkFDZDNDLE9BQU9WLFVBQVUsQ0FBQ1YsTUFBTWMsSUFBSSxDQUFDO1lBQy9CO1FBQ0Y7UUFFQSxJQUFJZCxNQUFNd0IsSUFBSSxLQUFLLGtCQUFrQnhCLE1BQU13QixJQUFJLEtBQUssVUFBVTtZQUM1RGpCLG1CQUFtQnVCLElBQUksQ0FDckJ2Qyw4QkFBOEI7Z0JBQzVCSztnQkFDQUM7Z0JBQ0FFO2dCQUNBQztnQkFDQUs7Z0JBQ0FDO2dCQUNBRTtnQkFDQUM7Z0JBQ0FDO1lBQ0Y7UUFFSjtJQUNGO0lBRUEsT0FBUVYsTUFBTXdCLElBQUk7UUFDaEIsS0FBSztZQUFTO2dCQUNaLElBQUl3QyxXQUFXdEQsVUFBVSxDQUFDVixNQUFNYyxJQUFJLENBQUM7Z0JBQ3JDLElBQUksT0FBT0osVUFBVSxDQUFDVixNQUFNYyxJQUFJLENBQUMsS0FBSyxVQUFVa0QsV0FBVyxDQUFDO2dCQUU1RHhFLGVBQWU7b0JBQ2JFO29CQUNBQztvQkFDQUM7b0JBQ0FDO29CQUNBQztvQkFDQUM7b0JBQ0FFO29CQUNBZ0UsUUFBUWpFLE1BQU1pRSxNQUFNO29CQUNwQi9EO29CQUNBQztvQkFDQUM7b0JBQ0FDO29CQUNBQztvQkFDQUM7b0JBQ0FDO29CQUNBQztvQkFDQUMsWUFBWXNEO29CQUNackQ7b0JBQ0FDO2dCQUNGO2dCQUVBO1lBQ0Y7UUFFQSxLQUFLO1lBQVM7Z0JBQ1osTUFBTXNELE9BQU94RCxVQUFVLENBQUNWLE1BQU1jLElBQUksQ0FBQztnQkFFbkMsSUFBSW9CLE1BQU1DLE9BQU8sQ0FBQytCLE9BQU87b0JBQ3ZCQSxLQUFLeEMsT0FBTyxDQUFDLENBQUN5Qzt3QkFDWjNFLGVBQWU7NEJBQ2JFOzRCQUNBQzs0QkFDQUM7NEJBQ0FDOzRCQUNBQzs0QkFDQUM7NEJBQ0FFOzRCQUNBZ0UsUUFBUWpFLE1BQU1pRSxNQUFNOzRCQUNwQi9EOzRCQUNBQzs0QkFDQUM7NEJBQ0FDOzRCQUNBQzs0QkFDQUM7NEJBQ0FDOzRCQUNBQzs0QkFDQUMsWUFBWXlELE9BQU8sQ0FBQzs0QkFDcEJ4RDs0QkFDQUM7d0JBQ0Y7b0JBQ0Y7Z0JBQ0YsT0FBTyxJQUFJLENBQUNHLDZCQUE2QixPQUFPbUQsU0FBUyxZQUFZQSxTQUFTLE1BQU07b0JBQ2xGcEIsT0FBT3NCLE1BQU0sQ0FBQ0YsTUFBTXhDLE9BQU8sQ0FBQyxDQUFDMkM7d0JBQzNCLElBQUluQyxNQUFNQyxPQUFPLENBQUNrQyxhQUFhOzRCQUM3QkEsV0FBVzNDLE9BQU8sQ0FBQyxDQUFDeUM7Z0NBQ2xCM0UsZUFBZTtvQ0FDYkU7b0NBQ0FDO29DQUNBQztvQ0FDQUM7b0NBQ0FDO29DQUNBQztvQ0FDQUU7b0NBQ0FnRSxRQUFRakUsTUFBTWlFLE1BQU07b0NBQ3BCL0Q7b0NBQ0FDO29DQUNBQztvQ0FDQUM7b0NBQ0FDO29DQUNBQztvQ0FDQUM7b0NBQ0FDO29DQUNBQyxZQUFZeUQsT0FBTyxDQUFDO29DQUNwQnhEO29DQUNBQztnQ0FDRjs0QkFDRjt3QkFDRjtvQkFDRjtnQkFDRixPQUFPO29CQUNMRixVQUFVLENBQUNWLE1BQU1jLElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQzdCO2dCQUNBO1lBQ0Y7UUFFQSxLQUFLO1lBQVU7Z0JBQ2IsTUFBTW9ELE9BQU94RCxVQUFVLENBQUNWLE1BQU1jLElBQUksQ0FBQztnQkFFbkMsSUFBSW9CLE1BQU1DLE9BQU8sQ0FBQytCLE9BQU87b0JBQ3ZCQSxLQUFLeEMsT0FBTyxDQUFDLENBQUN5Qzt3QkFDWixNQUFNRyxRQUFRdEUsTUFBTXVFLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDLENBQUNDLFlBQWNBLFVBQVVDLElBQUksS0FBS1AsSUFBSU0sU0FBUzt3QkFFL0UsSUFBSUgsT0FBTzs0QkFDVDlFLGVBQWU7Z0NBQ2JFO2dDQUNBQztnQ0FDQUM7Z0NBQ0FDO2dDQUNBQztnQ0FDQUM7Z0NBQ0FFO2dDQUNBZ0UsUUFBUUssTUFBTUwsTUFBTTtnQ0FDcEIvRDtnQ0FDQUM7Z0NBQ0FDO2dDQUNBQztnQ0FDQUM7Z0NBQ0FDO2dDQUNBQztnQ0FDQUM7Z0NBQ0FDLFlBQVl5RCxPQUFPLENBQUM7Z0NBQ3BCeEQ7Z0NBQ0FDOzRCQUNGO3dCQUNGO29CQUNGO2dCQUNGLE9BQU8sSUFBSSxDQUFDRyw2QkFBNkIsT0FBT21ELFNBQVMsWUFBWUEsU0FBUyxNQUFNO29CQUNsRnBCLE9BQU9zQixNQUFNLENBQUNGLE1BQU14QyxPQUFPLENBQUMsQ0FBQzJDO3dCQUMzQixJQUFJbkMsTUFBTUMsT0FBTyxDQUFDa0MsYUFBYTs0QkFDN0JBLFdBQVczQyxPQUFPLENBQUMsQ0FBQ3lDO2dDQUNsQixNQUFNRyxRQUFRdEUsTUFBTXVFLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDLENBQUNDLFlBQWNBLFVBQVVDLElBQUksS0FBS1AsSUFBSU0sU0FBUztnQ0FFL0UsSUFBSUgsT0FBTztvQ0FDVDlFLGVBQWU7d0NBQ2JFO3dDQUNBQzt3Q0FDQUM7d0NBQ0FDO3dDQUNBQzt3Q0FDQUM7d0NBQ0FFO3dDQUNBZ0UsUUFBUUssTUFBTUwsTUFBTTt3Q0FDcEIvRDt3Q0FDQUM7d0NBQ0FDO3dDQUNBQzt3Q0FDQUM7d0NBQ0FDO3dDQUNBQzt3Q0FDQUM7d0NBQ0FDLFlBQVl5RCxPQUFPLENBQUM7d0NBQ3BCeEQ7d0NBQ0FDO29DQUNGO2dDQUNGOzRCQUNGO3dCQUNGO29CQUNGO2dCQUNGLE9BQU87b0JBQ0xGLFVBQVUsQ0FBQ1YsTUFBTWMsSUFBSSxDQUFDLEdBQUcsRUFBRTtnQkFDN0I7Z0JBRUE7WUFDRjtRQUVBLEtBQUs7UUFDTCxLQUFLO1lBQWU7Z0JBQ2xCdEIsZUFBZTtvQkFDYkU7b0JBQ0FDO29CQUNBQztvQkFDQUM7b0JBQ0FDO29CQUNBQztvQkFDQUU7b0JBQ0FnRSxRQUFRakUsTUFBTWlFLE1BQU07b0JBQ3BCL0Q7b0JBQ0FDO29CQUNBQztvQkFDQUM7b0JBQ0FDO29CQUNBQztvQkFDQUM7b0JBQ0FDO29CQUNBQztvQkFDQUM7b0JBQ0FDO2dCQUNGO2dCQUVBO1lBQ0Y7UUFFQSxLQUFLO1lBQU87Z0JBQ1YsSUFBSStELFNBQVNqRTtnQkFDYixJQUFJckIsV0FBV1csUUFBUTtvQkFDckIyRSxTQUFTakUsVUFBVSxDQUFDVixNQUFNYyxJQUFJLENBQUM7b0JBQy9CLElBQUksT0FBT0osVUFBVSxDQUFDVixNQUFNYyxJQUFJLENBQUMsS0FBSyxVQUFVNkQsU0FBUyxDQUFDO2dCQUM1RDtnQkFFQW5GLGVBQWU7b0JBQ2JFO29CQUNBQztvQkFDQUM7b0JBQ0FDO29CQUNBQztvQkFDQUM7b0JBQ0FFO29CQUNBZ0UsUUFBUWpFLE1BQU1pRSxNQUFNO29CQUNwQi9EO29CQUNBQztvQkFDQUM7b0JBQ0FDO29CQUNBQztvQkFDQUM7b0JBQ0FDO29CQUNBQztvQkFDQUMsWUFBWWlFO29CQUNaaEU7b0JBQ0FDO2dCQUNGO2dCQUVBO1lBQ0Y7UUFFQSxLQUFLO1lBQVE7Z0JBQ1hwQixlQUFlO29CQUNiRTtvQkFDQUM7b0JBQ0FDO29CQUNBQztvQkFDQUM7b0JBQ0FDO29CQUNBRTtvQkFDQWdFLFFBQVFqRSxNQUFNeUIsSUFBSSxDQUFDdUIsR0FBRyxDQUFDLENBQUNyQixNQUFTLENBQUE7NEJBQUUsR0FBR0EsR0FBRzs0QkFBRUgsTUFBTTt3QkFBTSxDQUFBO29CQUN2RHRCO29CQUNBQztvQkFDQUM7b0JBQ0FDO29CQUNBQztvQkFDQUM7b0JBQ0FDO29CQUNBQztvQkFDQUM7b0JBQ0FDO29CQUNBQztnQkFDRjtnQkFDQTtZQUNGO1FBRUE7WUFBUztnQkFDUDtZQUNGO0lBQ0Y7QUFDRixFQUFDIn0=
|