Files
notify-bridge/frontend/src/lib/providers/scheduler.ts
T
alexei.dolgolyov 8cb836e16c refactor: provider descriptor registry — eliminate provider-specific hardcoding
Replace all if/else chains keyed on provider type strings with a
descriptor-driven architecture. Each provider type (immich, gitea,
planka, scheduler, nut, google_photos) has a descriptor in
frontend/src/lib/providers/ that declares config fields, event
tracking fields, collection metadata, validation, and hooks.

Components now use getDescriptor(type) and render dynamically.
Dashboard provider card shows provider name + type when global
filter is active. Grid-items derived from registry.
2026-03-24 12:40:33 +03:00

25 lines
451 B
TypeScript

import type { ProviderDescriptor } from './types';
export const schedulerDescriptor: ProviderDescriptor = {
type: 'scheduler',
defaultName: 'Scheduler',
icon: 'mdiClockOutline',
hasUrl: false,
configFields: [],
buildConfig() {
return { config: {} };
},
hasConfigChanged() {
return false;
},
eventFields: [
{ key: 'track_scheduled_message', label: 'trackingConfig.scheduledMessage', default: true },
],
collectionMeta: null,
};