{"version":3,"file":"index.cjs","names":["createServerFactory","createManager","z","COLORS"],"sources":["../../src/server/createServer.ts"],"sourcesContent":["import { z } from \"zod\";\nimport { createServerFactory } from \"@hellacardgames/lib\";\nimport { createManager } from \"../manager/index.js\";\nimport { COLORS } from \"../game/index.js\";\n\nexport type Server = ReturnType<typeof createServer>;\n\nexport const createServer = createServerFactory(createManager, {\n  drawCard: z\n    .object({\n      gameId: z.string(),\n      playerId: z.string(),\n    })\n    .transform(({ gameId, playerId }) => [gameId, playerId] as const),\n\n  playCard: z\n    .object({\n      gameId: z.string(),\n      playerId: z.string(),\n      cardId: z.string(),\n    })\n    .transform(\n      ({ gameId, playerId, cardId }) => [gameId, playerId, cardId] as const,\n    ),\n\n  playWildCard: z\n    .object({\n      gameId: z.string(),\n      playerId: z.string(),\n      cardId: z.string(),\n      color: z.enum(COLORS),\n    })\n    .transform(\n      ({ gameId, playerId, cardId, color }) =>\n        [gameId, playerId, cardId, color] as const,\n    ),\n});\n"],"mappings":";;;;;;AAOA,MAAa,gBAAA,GAAeA,oBAAAA,oBAAAA,CAAoBC,gBAAAA,eAAe;CAC7D,UAAUC,IAAAA,EACP,OAAO;EACN,QAAQA,IAAAA,EAAE,OAAO;EACjB,UAAUA,IAAAA,EAAE,OAAO;CACrB,CAAC,CAAC,CACD,WAAW,EAAE,QAAQ,eAAe,CAAC,QAAQ,QAAQ,CAAU;CAElE,UAAUA,IAAAA,EACP,OAAO;EACN,QAAQA,IAAAA,EAAE,OAAO;EACjB,UAAUA,IAAAA,EAAE,OAAO;EACnB,QAAQA,IAAAA,EAAE,OAAO;CACnB,CAAC,CAAC,CACD,WACE,EAAE,QAAQ,UAAU,aAAa;EAAC;EAAQ;EAAU;CAAM,CAC7D;CAEF,cAAcA,IAAAA,EACX,OAAO;EACN,QAAQA,IAAAA,EAAE,OAAO;EACjB,UAAUA,IAAAA,EAAE,OAAO;EACnB,QAAQA,IAAAA,EAAE,OAAO;EACjB,OAAOA,IAAAA,EAAE,KAAKC,aAAAA,MAAM;CACtB,CAAC,CAAC,CACD,WACE,EAAE,QAAQ,UAAU,QAAQ,YAC3B;EAAC;EAAQ;EAAU;EAAQ;CAAK,CACpC;AACJ,CAAC"}