UNPKG

@4players/odin-common

Version:

A collection of commonly used type definitions and utility functions across ODIN web projects

40 lines (39 loc) 1.39 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.RoomNotificationsRpc = exports.RoomNotificationSchema = exports.MainNotificationsRpc = exports.MainNotificationSchema = void 0; const z = require("zod"); const room_1 = require("../schema/room"); const peer_1 = require("../schema/peer"); const message_1 = require("../schema/message"); const webrtc_1 = require("../schema/webrtc"); exports.MainNotificationSchema = z.object({ name: z.literal('WebRtcUpdate'), properties: webrtc_1.WebRtcUpdateSchema, }); exports.MainNotificationsRpc = { WebRtcUpdate: webrtc_1.WebRtcUpdateSchema, }; exports.RoomNotificationSchema = z.union([ z.object({ name: z.literal('RoomStatusChanged'), properties: room_1.RoomV1.RoomStatusChangedSchema, }), z.object({ name: z.literal('RoomUpdated'), properties: room_1.RoomV1.RoomUpdatesSchema, }), z.object({ name: z.literal('PeerUpdated'), properties: peer_1.PeerUpdateSchema, }), z.object({ name: z.literal('MessageReceived'), properties: message_1.MessageReceivedSchema, }), ]); exports.RoomNotificationsRpc = { RoomStatusChanged: room_1.RoomV1.RoomStatusChangedSchema, RoomUpdated: room_1.RoomV1.RoomUpdatesSchema, PeerUpdated: peer_1.PeerUpdateSchema, MessageReceived: message_1.MessageReceivedSchema, };