Member Junction
    Preparing search index...
    Index

    Constructors

    Accessors

    • get Enabled(): boolean

      Whether this middleware is active. Override to check config, env vars, etc. Disabled middleware classes are never instantiated or activated by serve(). Default: true.

      Returns boolean

    • get Label(): string

      Human-readable label for logging (e.g., 'mj:tenantFilter', 'bcsaas').

      Returns string

    Methods

    • Optional escape hatch for advanced Express app configuration. Called once during server setup with the Express app instance. Use for: trust proxy settings, custom CORS, body parser config. Return undefined to skip (default).

      Parameters

      • app: Application

      Returns void | Promise<void>

    • Additional Apollo Server plugins merged with built-in plugins. Use for: query tracing, caching, custom error formatting.

      Returns ApolloServerPlugin<BaseContext>[]

    • Express middleware that runs AFTER authentication has resolved UserInfo. The authenticated user payload is available at req.userPayload. Use for: tenant context resolution, org membership loading.

      Returns RequestHandler<ParamsDictionary, any, any, ParsedQs, Record<string, any>>[]

    • Express middleware/error handlers applied AFTER all routes. Use for: catch-all error handlers, response logging.

      Returns (
          | RequestHandler<
              ParamsDictionary,
              any,
              any,
              ParsedQs,
              Record<string, any>,
          >
          | ErrorRequestHandler<
              ParamsDictionary,
              any,
              any,
              ParsedQs,
              Record<string, any>,
          >
      )[]

    • Express middleware applied BEFORE authentication. Runs after compression but before OAuth/REST/GraphQL routes. Use for: rate limiting, request logging, custom headers.

      Returns RequestHandler<ParamsDictionary, any, any, ParsedQs, Record<string, any>>[]

    • Additional TypeGraphQL resolver glob paths to include in the Apollo schema. serve() collects these from all active middleware and adds them to the resolvers array passed to buildSchema().

      Return absolute glob paths (use path.join(__dirname, ...) or equivalent).

      Use for: Open App resolvers, domain-specific GraphQL queries/mutations that live outside MJServer's built-in resolver set.

      Returns string[]

      GetResolverPaths(): string[] {
      return [path.join(__dirname, 'resolvers', '*Resolver.{js,ts}')];
      }
    • Schema transformers applied after built-in directive transformers. Use for: custom directives, schema stitching, field-level auth.

      Returns ((schema: GraphQLSchema) => GraphQLSchema)[]

    • Optional async initialization (read config, warm caches, etc.). Called by serve() after instantiation, before middleware/hooks are extracted.

      Returns Promise<void>

    • Hook that runs before a Save operation on a BaseEntity. Return true to allow, false to reject silently, or a string to reject with that error message.

      Parameters

      Returns string | boolean | Promise<string | boolean>