mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-07-11 23:26:30 +08:00
e516e0db23
- [x] separates modules into `fundamental`, `core`, `plugins`
- [x] optional modules with `@OptionalModule` decorator to install modules with requirements met(`requires`, `if`)
- [x] `module.contributesTo` defines optional features that will be enabled if module registered
- [x] `AFFiNE.plugins.use('payment', {})` to enable a optional/plugin module
- [x] `PaymentModule` is the first plugin module
- [x] GraphQLSchema will not be generated for non-included modules
- [x] Frontend can use `ServerConfigType` query to detect which features are enabled
- [x] override existing provider globally
9 lines
275 B
TypeScript
9 lines
275 B
TypeScript
import type { AvailablePlugins } from '../fundamentals/config';
|
|
import { PaymentModule } from './payment';
|
|
import { RedisModule } from './redis';
|
|
|
|
export const pluginsMap = new Map<AvailablePlugins, AFFiNEModule>([
|
|
['payment', PaymentModule],
|
|
['redis', RedisModule],
|
|
]);
|