Files
integrations/ts/index.ts
T

93 lines
4.0 KiB
TypeScript
Raw Normal View History

2026-05-05 12:01:30 +00:00
export * from './core/index.js';
export * from './protocols/index.js';
export * from './integrations/index.js';
import { HueIntegration } from './integrations/hue/index.js';
2026-05-05 16:20:10 +00:00
import { AndroidtvIntegration } from './integrations/androidtv/index.js';
import { AxisIntegration } from './integrations/axis/index.js';
import { BraviatvIntegration } from './integrations/braviatv/index.js';
2026-05-05 12:41:31 +00:00
import { CastIntegration } from './integrations/cast/index.js';
2026-05-05 14:57:06 +00:00
import { DeconzIntegration } from './integrations/deconz/index.js';
2026-05-05 16:20:10 +00:00
import { DenonavrIntegration } from './integrations/denonavr/index.js';
import { DlnaDmrIntegration } from './integrations/dlna_dmr/index.js';
2026-05-05 14:57:06 +00:00
import { EsphomeIntegration } from './integrations/esphome/index.js';
import { HomekitControllerIntegration } from './integrations/homekit_controller/index.js';
import { JellyfinIntegration } from './integrations/jellyfin/index.js';
2026-05-05 16:20:10 +00:00
import { KodiIntegration } from './integrations/kodi/index.js';
2026-05-05 14:57:06 +00:00
import { MatterIntegration } from './integrations/matter/index.js';
2026-05-05 12:56:38 +00:00
import { MqttIntegration } from './integrations/mqtt/index.js';
import { MpdIntegration } from './integrations/mpd/index.js';
2026-05-05 14:57:06 +00:00
import { NanoleafIntegration } from './integrations/nanoleaf/index.js';
import { OnvifIntegration } from './integrations/onvif/index.js';
import { PlexIntegration } from './integrations/plex/index.js';
import { RainbirdIntegration } from './integrations/rainbird/index.js';
2026-05-05 12:32:02 +00:00
import { RokuIntegration } from './integrations/roku/index.js';
2026-05-05 16:20:10 +00:00
import { SamsungtvIntegration } from './integrations/samsungtv/index.js';
2026-05-05 12:01:30 +00:00
import { ShellyIntegration } from './integrations/shelly/index.js';
import { SnapcastIntegration } from './integrations/snapcast/index.js';
2026-05-05 12:23:14 +00:00
import { SonosIntegration } from './integrations/sonos/index.js';
2026-05-05 16:20:10 +00:00
import { TplinkIntegration } from './integrations/tplink/index.js';
2026-05-05 14:57:06 +00:00
import { TradfriIntegration } from './integrations/tradfri/index.js';
2026-05-05 16:20:10 +00:00
import { UnifiIntegration } from './integrations/unifi/index.js';
import { VolumioIntegration } from './integrations/volumio/index.js';
2026-05-05 12:01:30 +00:00
import { WolfSmartsetIntegration } from './integrations/wolf_smartset/index.js';
2026-05-05 14:57:06 +00:00
import { WizIntegration } from './integrations/wiz/index.js';
import { XiaomiMiioIntegration } from './integrations/xiaomi_miio/index.js';
import { YeelightIntegration } from './integrations/yeelight/index.js';
import { YamahaMusiccastIntegration } from './integrations/yamaha_musiccast/index.js';
2026-05-05 14:57:06 +00:00
import { ZhaIntegration } from './integrations/zha/index.js';
2026-05-05 13:09:56 +00:00
import { ZwaveJsIntegration } from './integrations/zwave_js/index.js';
2026-05-05 12:01:30 +00:00
import { generatedHomeAssistantPortIntegrations } from './integrations/generated/index.js';
import { IntegrationRegistry } from './core/index.js';
export const integrations = [
2026-05-05 16:20:10 +00:00
new AndroidtvIntegration(),
new AxisIntegration(),
new BraviatvIntegration(),
2026-05-05 12:41:31 +00:00
new CastIntegration(),
2026-05-05 14:57:06 +00:00
new DeconzIntegration(),
2026-05-05 16:20:10 +00:00
new DenonavrIntegration(),
new DlnaDmrIntegration(),
2026-05-05 14:57:06 +00:00
new EsphomeIntegration(),
new HomekitControllerIntegration(),
2026-05-05 12:01:30 +00:00
new HueIntegration(),
new JellyfinIntegration(),
2026-05-05 16:20:10 +00:00
new KodiIntegration(),
2026-05-05 14:57:06 +00:00
new MatterIntegration(),
2026-05-05 12:56:38 +00:00
new MqttIntegration(),
new MpdIntegration(),
2026-05-05 14:57:06 +00:00
new NanoleafIntegration(),
new OnvifIntegration(),
new PlexIntegration(),
new RainbirdIntegration(),
2026-05-05 12:32:02 +00:00
new RokuIntegration(),
2026-05-05 16:20:10 +00:00
new SamsungtvIntegration(),
2026-05-05 12:01:30 +00:00
new ShellyIntegration(),
new SnapcastIntegration(),
2026-05-05 12:23:14 +00:00
new SonosIntegration(),
2026-05-05 16:20:10 +00:00
new TplinkIntegration(),
2026-05-05 14:57:06 +00:00
new TradfriIntegration(),
2026-05-05 16:20:10 +00:00
new UnifiIntegration(),
new VolumioIntegration(),
2026-05-05 12:01:30 +00:00
new WolfSmartsetIntegration(),
2026-05-05 14:57:06 +00:00
new WizIntegration(),
new XiaomiMiioIntegration(),
new YeelightIntegration(),
new YamahaMusiccastIntegration(),
2026-05-05 14:57:06 +00:00
new ZhaIntegration(),
2026-05-05 13:09:56 +00:00
new ZwaveJsIntegration(),
2026-05-05 12:01:30 +00:00
];
export const createDefaultIntegrationRegistry = (): IntegrationRegistry => {
const registry = new IntegrationRegistry();
for (const integration of integrations) {
registry.register(integration);
}
for (const integration of generatedHomeAssistantPortIntegrations) {
if (!registry.get(integration.domain)) {
registry.register(integration);
}
}
return registry;
};