event-manifest.ts 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. export * as EventManifest from "./event-manifest"
  2. import { Catalog } from "./catalog"
  3. import { Durable } from "./durable-event-manifest"
  4. import { Event } from "./event"
  5. import { FileSystem } from "./filesystem"
  6. import { FileSystemWatcher } from "./filesystem-watcher"
  7. import { InstallationEvent } from "./installation-event"
  8. import { Integration } from "./integration"
  9. import { LegacyEvent } from "./legacy-event"
  10. import { LspEvent } from "./lsp-event"
  11. import { McpEvent } from "./mcp-event"
  12. import { ModelsDev } from "./models-dev"
  13. import { Permission } from "./permission"
  14. import { PermissionV1 } from "./permission-v1"
  15. import { Plugin } from "./plugin"
  16. import { Project } from "./project"
  17. import { ProjectDirectories } from "./project-directories"
  18. import { Pty } from "./pty"
  19. import { Question } from "./question"
  20. import { QuestionV1 } from "./question-v1"
  21. import { Reference } from "./reference"
  22. import { ServerEvent } from "./server-event"
  23. import { SessionCompactionEvent } from "./session-compaction-event"
  24. import { SessionEvent } from "./session-event"
  25. import { SessionStatusEvent } from "./session-status-event"
  26. import { SessionTodo } from "./session-todo"
  27. import { SessionV1 } from "./session-v1"
  28. import { TuiEvent } from "./tui-event"
  29. import { VcsEvent } from "./vcs-event"
  30. import { WorkspaceEvent } from "./workspace-event"
  31. import { WorktreeEvent } from "./worktree-event"
  32. const sessionV1DurableDefinitions = SessionV1.Event.Definitions.filter((definition) => definition.durable !== undefined)
  33. const sessionV1LiveDefinitions = SessionV1.Event.Definitions.filter((definition) => definition.durable === undefined)
  34. const coreDefinitions = Event.inventory(...sessionV1DurableDefinitions, ...SessionEvent.Definitions)
  35. const foundationDefinitions = Event.inventory(
  36. ...ModelsDev.Event.Definitions,
  37. ...Integration.Event.Definitions,
  38. ...Catalog.Event.Definitions,
  39. ...coreDefinitions,
  40. )
  41. const featureDefinitions = Event.inventory(
  42. ...FileSystem.Event.Definitions,
  43. ...Reference.Event.Definitions,
  44. ...Permission.Event.Definitions,
  45. ...Plugin.Event.Definitions,
  46. ...ProjectDirectories.Event.Definitions,
  47. ...FileSystemWatcher.Event.Definitions,
  48. ...Pty.Event.Definitions,
  49. ...Question.Event.Definitions,
  50. )
  51. export const ServerDefinitions = Event.inventory(
  52. ...foundationDefinitions,
  53. ...featureDefinitions,
  54. ...SessionTodo.Event.Definitions,
  55. )
  56. export const Definitions = Event.inventory(
  57. ...foundationDefinitions,
  58. ...sessionV1LiveDefinitions,
  59. ...InstallationEvent.Definitions,
  60. ...featureDefinitions,
  61. ...SessionTodo.Event.Definitions,
  62. ...LspEvent.Definitions,
  63. ...PermissionV1.Event.Definitions,
  64. ...TuiEvent.Definitions,
  65. ...McpEvent.Definitions,
  66. ...LegacyEvent.Definitions,
  67. ...Project.Event.Definitions,
  68. ...SessionStatusEvent.Definitions,
  69. ...QuestionV1.Event.Definitions,
  70. ...SessionCompactionEvent.Definitions,
  71. ...VcsEvent.Definitions,
  72. ...WorkspaceEvent.Definitions,
  73. ...WorktreeEvent.Definitions,
  74. ...ServerEvent.Definitions,
  75. )
  76. export const Latest = Event.latest(Definitions)
  77. export { Durable }