UNPKG

@bigdigital/kiosk-content-sdk

Version:

A Firebase-powered Content Management System SDK optimized for kiosks with offline support, template management, and real-time connection monitoring

46 lines 1.43 kB
import { KioskConnection } from './KioskConnection'; export class KioskSDK { constructor(initialKioskId = 'default') { this.connection = null; this.currentKioskId = 'default'; this.currentKioskId = initialKioskId; } setKioskId(kioskId) { this.currentKioskId = kioskId; // Disconnect existing connection if the kioskId changes if (this.connection) { this.disconnect(); } } initializeMonitoring(options) { if (this.connection) { this.disconnect(); } this.connection = new KioskConnection({ url: options.url, kioskId: this.currentKioskId, onConnectionUpdate: options.onConnectionUpdate }); // Connect immediately after initialization this.connection.connect(); return this.connection; } connect(url, onConnectionUpdate) { this.initializeMonitoring({ url, onConnectionUpdate }); } async disconnect() { if (this.connection) { await this.connection.disconnect(); this.connection = null; } } isConnected() { return this.connection?.isConnectionOpen() || false; } getCurrentKioskId() { return this.currentKioskId; } } // Create and export singleton instance export const kioskSDK = new KioskSDK('default'); //# sourceMappingURL=KioskSDK.js.map