common.ts 679 B

123456789101112131415161718192021
  1. import { Injector, RequestContext } from '@vendure/core';
  2. import { EmailPluginDevModeOptions, EmailPluginOptions, EmailTransportOptions } from './types';
  3. export function isDevModeOptions(
  4. input: EmailPluginOptions | EmailPluginDevModeOptions,
  5. ): input is EmailPluginDevModeOptions {
  6. return (input as EmailPluginDevModeOptions).devMode === true;
  7. }
  8. export async function resolveTransportSettings(
  9. options: EmailPluginOptions,
  10. injector: Injector,
  11. ctx?: RequestContext
  12. ): Promise<EmailTransportOptions> {
  13. if (typeof options.transport === 'function') {
  14. return options.transport(injector, ctx);
  15. } else {
  16. return options.transport;
  17. }
  18. }