123456789101112131415161718192021222324252627 |
- // Copyright (C) 2012-2024 Zammad Foundation, https://zammad-foundation.org/
- import type {
- TwoFactorConfigurationOptions,
- TwoFactorConfigurationPlugin,
- } from '#shared/entities/two-factor/types.ts'
- const pluginsModules = import.meta.glob<TwoFactorConfigurationPlugin>(
- ['./**/*.ts', '!./**/index.ts', '!./__tests__/**/*.ts'],
- {
- eager: true,
- import: 'default',
- },
- )
- export const twoFactorConfigurationPlugins = Object.values(pluginsModules)
- export const twoFactorConfigurationPluginLookup =
- twoFactorConfigurationPlugins.reduce(
- (lookup: Record<string, TwoFactorConfigurationOptions>, plugin) => {
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
- const { name, ...options } = plugin // remove not needed name from options.
- lookup[plugin.name] = options
- return lookup
- },
- {},
- )
|