{"version":3,"file":"cell.cjs","sources":["../../../../../../../../../src/mods/tor/binary/cells/direct/versions/cell.ts"],"sourcesContent":["import { Cursor } from \"@hazae41/cursor\"\n\nexport class VersionsCell {\n  readonly #class = VersionsCell\n\n  static readonly old = true\n  static readonly circuit = false\n  static readonly command = 7\n\n  constructor(\n    readonly versions: number[]\n  ) { }\n\n  get old(): true {\n    return this.#class.old\n  }\n\n  get circuit(): false {\n    return this.#class.circuit\n  }\n\n  get command(): 7 {\n    return this.#class.command\n  }\n\n  sizeOrThrow() {\n    return 2 * this.versions.length\n  }\n\n  writeOrThrow(cursor: Cursor) {\n    for (const version of this.versions)\n      cursor.writeUint16OrThrow(version)\n\n    return\n  }\n\n  static readOrThrow(cursor: Cursor) {\n    const versions = new Array<number>(cursor.remaining / 2)\n\n    for (let i = 0; i < versions.length; i++)\n      versions[i] = cursor.readUint16OrThrow()\n\n    return new VersionsCell(versions)\n  }\n\n}"],"names":[],"mappings":";;;MAEa,YAAY,CAAA;AAQZ,IAAA,QAAA,CAAA;IAPF,MAAM,GAAG,EAAY,CAAA;AAE9B,IAAA,OAAgB,GAAG,GAAG,IAAI,CAAA;AAC1B,IAAA,OAAgB,OAAO,GAAG,KAAK,CAAA;AAC/B,IAAA,OAAgB,OAAO,GAAG,CAAC,CAAA;AAE3B,IAAA,WAAA,CACW,QAAkB,EAAA;QAAlB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAU;KACxB;AAEL,IAAA,IAAI,GAAG,GAAA;AACL,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAA;KACvB;AAED,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAA;KAC3B;AAED,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAA;KAC3B;IAED,WAAW,GAAA;AACT,QAAA,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAA;KAChC;AAED,IAAA,YAAY,CAAC,MAAc,EAAA;AACzB,QAAA,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ;AACjC,YAAA,MAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAA;QAEpC,OAAM;KACP;IAED,OAAO,WAAW,CAAC,MAAc,EAAA;QAC/B,MAAM,QAAQ,GAAG,IAAI,KAAK,CAAS,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,CAAA;AAExD,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE;YACtC,QAAQ,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,iBAAiB,EAAE,CAAA;AAE1C,QAAA,OAAO,IAAI,EAAY,CAAC,QAAQ,CAAC,CAAA;KAClC;;;;;;"}