hunk.code_window:       case "zoom_video":
           // Zoom meetings in our system should always have an ID, a password and a join URL. In the
           // future, it might happen that we consider making passwords for Zoom meetings optional.
           // Then, this part below (where the password existence is checked) needs to be adapted.
           isComplete =
             reference.meetingId != undefined &&
             reference.meetingPassword != undefined &&
             reference.meetingUrl != undefined;
           break;
         default:
           isComplete = true;
  
hunk.labels: keep keep keep keep keep replace replace replace keep keep keep
hunk.after_edit:           reference.meetingId !== undefined &&
             reference.meetingPassword !== undefined &&
             reference.meetingUrl !== undefined;
  
hunk.file_path: lib/events/EventManager.ts
hunk.type: replace
file: /**
   * This file contains the root router of your tRPC-backend
   */
  import superjson from "superjson";
  
  import { createRouter } from "../createRouter";
  import { viewerRouter } from "./viewer";
  
  /**
   * Create your application's root router
   * If you want to use SSG, you need export this
   * @link https://trpc.io/docs/ssg
   * @link https://trpc.io/docs/router
   */
  export const appRouter = createRouter()
    /**
     * Add data transformers
     * @link https://trpc.io/docs/data-transformers
     */
    .transformer(superjson)
    /**
     * Optionally do custom error (type safe!) formatting
     * @link https://trpc.io/docs/error-formatting
     */
    // .formatError(({ shape, error }) => { })
    .merge("viewer.", viewerRouter);
  
  export type AppRouter = typeof appRouter;
  