config.ts 588 B

1234567891011121314151617181920212223
  1. import { SchemaOptions } from "mongoose";
  2. import CacheModule from "@/modules/CacheModule";
  3. import getData from "./getData";
  4. import { UserSchema } from "./schema";
  5. export default {
  6. documentVersion: 4,
  7. eventListeners: {
  8. "model.users.updated": async doc => {
  9. CacheModule.removeMany([
  10. `user-permissions.${doc._id}`,
  11. `model-permissions.*.user.${doc._id}`
  12. ]);
  13. },
  14. "model.users.deleted": async oldDoc => {
  15. CacheModule.removeMany([
  16. `user-permissions.${oldDoc._id}`,
  17. `model-permissions.*.user.${oldDoc._id}`
  18. ]);
  19. }
  20. },
  21. getData
  22. } as SchemaOptions<UserSchema>;