injectionSymbols.ts 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. import type { InjectionKey } from 'vue'
  2. import { StudyPlan, StudyPlanStats } from './study';
  3. import { Study, Transfer, University, Voluntary, Major } from '.';
  4. import { useExam } from '@/composables/useExam';
  5. /**
  6. * 打开知识点记录详情
  7. */
  8. export const OPEN_KNOWLEDGE_DETAIL = Symbol('OPEN_KNOWLEDGE_DETAIL') as InjectionKey<(id: number, name: string) => void>;
  9. /**
  10. * 打开刷题记录详情
  11. */
  12. export const OPEN_PRACTICE_DETAIL = Symbol('OPEN_PRACTICE_DETAIL') as InjectionKey<(id: number, name: string) => void>;
  13. /**
  14. * 打开视频记录详情
  15. */
  16. export const OPEN_VIDEO_DETAIL = Symbol('OPEN_VIDEO_DETAIL') as InjectionKey<(id: number, name: string) => void>;
  17. export const EXAM_AUTO_SUBMIT = Symbol('EXAM_AUTO_SUBMIT') as InjectionKey<() => void>;
  18. export const EXAM_PAGE_OPTIONS = Symbol('EXAM_PAGE_OPTIONS') as InjectionKey<Transfer.ExamAnalysisPageOptions>;
  19. export const EXAM_DATA = Symbol('EXAM_DATA') as InjectionKey<ReturnType<typeof useExam>>;
  20. /**
  21. * 学习计划
  22. */
  23. export const STUDY_PLAN = Symbol('STUDY_PLAN') as InjectionKey<Ref<StudyPlan>>;
  24. /**
  25. * 学习计划统计数据
  26. */
  27. export const STUDY_PLAN_STATS = Symbol('STUDY_PLAN_STATS') as InjectionKey<Ref<StudyPlanStats>>;
  28. /**
  29. * 打开VIP弹窗
  30. */
  31. export const OPEN_VIP_POPUP = Symbol('OPEN_VIP_POPUP') as InjectionKey<() => void>;
  32. /**
  33. * 关闭VIP弹窗
  34. */
  35. export const CLOSE_VIP_POPUP = Symbol('CLOSE_VIP_POPUP') as InjectionKey<() => void>;
  36. /*
  37. * 计算录取概率
  38. * */
  39. export const VOLUNTARY_TARGET = Symbol('VOLUNTARY_TARGET') as InjectionKey<Ref<Study.SelectedUniversityMajor>>
  40. export const VOLUNTARY_RULES = Symbol('VOLUNTARY_RULES') as InjectionKey<Ref<Voluntary.EnrollRule[]>>
  41. export const VOLUNTARY_MODEL = Symbol('VOLUNTARY_MODEL') as InjectionKey<Ref<Voluntary.VoluntaryModel>>
  42. export const VOLUNTARY_RESULT = Symbol('VOLUNTARY_RESULT') as InjectionKey<Ref<Voluntary.VoluntaryResult>>
  43. export const UNIVERSITY_FILTER = Symbol('UNIVERSITY_FILTER') as InjectionKey<Ref<University.UniversityQueryDto>>
  44. export const VOLUNTARY_REFRESHER_ENABLED = Symbol('VOLUNTARY_REFRESHER_ENABLED') as InjectionKey<Ref<boolean>>
  45. export const UNIVERSITY_DETAIL = Symbol('UNIVERSITY_DETAIL') as InjectionKey<Ref<University.UniversityDetail>>
  46. export const MAJOR_TREE = Symbol('MAJOR_TREE') as InjectionKey<Ref<Major.MajorItem[]>>