import { GetConfiguration, NitroConfiguration, RoomSessionEvent } from '@nitrots/nitro-renderer'; import { FC, useState, useCallback } from 'react'; import { GetConfigurationValue } from '../../api'; import { useNitroEvent, useSessionInfo } from '../../hooks'; import { WidgetSlotView } from './views/widgets/WidgetSlotView'; const widgetSlotCount = 7; export const WidgetView: FC<{}> = () => { const [isVisible, setIsVisible] = useState(true); useNitroEvent( [RoomSessionEvent.CREATED, RoomSessionEvent.ENDED], (event) => { switch (event.type) { case RoomSessionEvent.CREATED: setIsVisible(false); return; case RoomSessionEvent.ENDED: setIsVisible(event.openLandingView); return; } } ); if (!isVisible) return null; const assetUrl = GetConfiguration('asset.url'); const backgroundColor = GetConfigurationValue('hotelview')['images']['background.colour']; const renderWidgetSlot = (slot: number) => ( ); const widgetSlots = [1, 2, 3, 4, 5, 6, 7].map((slot) => renderWidgetSlot(slot)); return (
{widgetSlots.slice(0, 6)}
{widgetSlots[6]}
); };