{
  "version": 3,
  "sources": ["../src-backend/colyseus.ext.ts"],
  "sourcesContent": ["import { Room, Client, ClientState, ClientPrivate, AuthContext } from '@colyseus/core';\n\nexport async function applyMonkeyPatch() {\n  /**\n   * Optional: if zod is available, we can use toJSONSchema() for body and query types\n   */\n  let z: any = undefined;\n  try { z = await import(\"zod\"); } catch (e: any) { /* zod not installed  */ }\n\n  const _onJoin = Room.prototype['_onJoin'];\n  Room.prototype['_onJoin'] = async function (this: Room, client: Client & ClientPrivate) {\n    const result = await _onJoin.apply(this, arguments as any);\n\n    if (client.state === ClientState.JOINING) {\n\n      const messages: any = {};\n      Object.keys(this['onMessageEvents'].events).sort().forEach((type) => {\n        if (type.indexOf(\"__\") === 0 || type === \"*\") { return; }\n\n        const messageValidator = this['onMessageValidators'][type];\n        messages[type] = z && messageValidator && z.toJSONSchema(messageValidator) || null;\n      });\n\n      client.send(\"__playground_message_types\", messages);\n    }\n\n    return result;\n  }\n}"],
  "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAAsE;AAEtE,eAAsB,mBAAmB;AAIvC,MAAI,IAAS;AACb,MAAI;AAAE,QAAI,MAAM,OAAO,KAAK;AAAA,EAAG,SAAS,GAAP;AAAA,EAA0C;AAE3E,QAAM,UAAU,iBAAK,UAAU,SAAS;AACxC,mBAAK,UAAU,SAAS,IAAI,eAA4B,QAAgC;AACtF,UAAM,SAAS,MAAM,QAAQ,MAAM,MAAM,SAAgB;AAEzD,QAAI,OAAO,UAAU,wBAAY,SAAS;AAExC,YAAM,WAAgB,CAAC;AACvB,aAAO,KAAK,KAAK,iBAAiB,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC,SAAS;AACnE,YAAI,KAAK,QAAQ,IAAI,MAAM,KAAK,SAAS,KAAK;AAAE;AAAA,QAAQ;AAExD,cAAM,mBAAmB,KAAK,qBAAqB,EAAE,IAAI;AACzD,iBAAS,IAAI,IAAI,KAAK,oBAAoB,EAAE,aAAa,gBAAgB,KAAK;AAAA,MAChF,CAAC;AAED,aAAO,KAAK,8BAA8B,QAAQ;AAAA,IACpD;AAEA,WAAO;AAAA,EACT;AACF;",
  "names": []
}
