postPersistProfileRefresh.ts 768 B

12345678910111213141516171819202122
  1. import { DataPersisterArgs, HookPersister } from '~/types/interfaces'
  2. import BaseHook from '~/services/data/hooks/baseHook'
  3. import DataPersister from "~/services/data/dataPersister";
  4. /**
  5. * Access profile (and its embed organization profile) shall be re-fetched after some
  6. * data updates
  7. */
  8. class PostPersistProfileRefresh extends BaseHook implements HookPersister {
  9. public static priority = 10
  10. async invoke (_args: DataPersisterArgs): Promise<any> {
  11. await (this.parent as DataPersister).fetchProfile()
  12. }
  13. static support (_args: DataPersisterArgs): boolean {
  14. return (typeof _args.model !== 'undefined') &&
  15. ['accesses', 'organizations', 'parameters', 'subdomains'].includes(_args.model.entity)
  16. }
  17. }
  18. export default PostPersistProfileRefresh