import { text } from '@rsdk/common'; import { PlatformAppPlugin } from '../../../types'; import { BootstrapException } from '../../base'; import { Exception } from '../../metadata'; @Exception({ description: text` Plugins are attached to transports. This exception means that there is no appropriate tranport for the plugin you are trying to attach. `, }) export class NoMatchingTransportException extends BootstrapException { constructor(plugin: PlatformAppPlugin>) { const name = plugin.constructor.name; const transports = plugin.forTransports().join(', '); super(text` Plugin ${name} requires one of the following transports: ${transports} (no one is supported by the app). `); } }