UNPKG

ltijs

Version:

Easily turn your web application into a LTI 1.3 Learning Tool.

67 lines (66 loc) • 3.27 kB
import { LaunchContext } from '#services/launch/launch-context.service'; import type { HttpHandler } from '#services/http-handler/http-handler.types'; import type { DatabaseManager } from '#services/database-manager/database-manager.types'; import type { PlatformManager } from '#services/platform-manager/platform-manager.service'; import type { AccessTokenManager } from '#services/access-token-manager/access-token-manager.service'; import type { OidcService } from '#services/oidc/oidc.service'; import type { RequestHandler } from '#services/request-handler/request-handler.types'; import type { Logger } from '#services/logger/logger.types'; import type { InactivePlatformHandler, LaunchRoutes, OnLaunchHandler, UnregisteredPlatformHandler } from '#services/launch/launch.types'; export declare class LaunchService { private readonly LOG_COMPONENT; private readonly RECOVERED_STATE_FIELD; private readonly LOCAL_STORAGE_KEY_PREFIX; private readonly DEFAULT_LOGIN_ROUTE; private readonly DEFAULT_LAUNCH_ROUTE; private readonly LTIK_TTL_SECONDS; private readonly LOGIN_REDIRECT_TEMPLATE; private readonly SIGNED_STATE_FORM_TEMPLATE; private readonly DEFAULT_SUCCESS_BODY; private readonly databaseManager; private readonly platformManager; private readonly accessTokenManager; private readonly oidcService; private readonly requestHandler; private readonly httpHandler; private readonly logger; private onResourceLinkHandler; private onDeepLinkingHandler; private onSubmissionReviewHandler; private onUnregisteredPlatformHandler; private onInactivePlatformHandler; constructor(oidcService: OidcService, platformManager: PlatformManager, accessTokenManager: AccessTokenManager, databaseManager: DatabaseManager, requestHandler: RequestHandler, httpHandler: HttpHandler, logger: Logger); setOnResourceLinkHandler(handler: OnLaunchHandler): void; setOnDeepLinkingHandler(handler: OnLaunchHandler): void; setOnSubmissionReviewHandler(handler: OnLaunchHandler): void; setOnUnregisteredPlatformHandler(handler: UnregisteredPlatformHandler): void; setOnInactivePlatformHandler(handler: InactivePlatformHandler): void; private buildDefaultLaunchHandler; private buildDefaultUnregisteredPlatformHandler; private buildDefaultInactivePlatformHandler; getLaunchContext(ltik: string): Promise<LaunchContext>; prepareHttpRoutes(routes?: LaunchRoutes): void; /** Registers `path` as an additional launch route, dispatching through the same launch handlers as any other. */ registerLaunchRoute(path: string): void; private buildLaunchContext; private buildLtik; private peekLtikTid; private verifyLtik; private handleLoginRequest; private handleLaunchRequest; private updateQueryWithState; private resolveHandler; private processLaunch; private resolveTargetLinkUri; private processLogin; private resolvePlatform; private resolveIdTokenPlatform; private resolveRecoveredState; private isSameOriginRequest; private buildLocalStorageKey; private peekStateToken; private toDataScript; private splitTargetLinkUri; private joinTargetLinkUri; } export default LaunchService;