{"version":3,"file":"wasm.mjs","sources":["../../../../../src/mods/base58/wasm.ts"],"sourcesContent":["import type { Base58Wasm } from \"@hazae41/base58.wasm\"\nimport { Pin, Ref } from \"@hazae41/box\"\nimport { BytesOrCopiable } from \"libs/copiable/index.js\"\nimport { Adapter } from \"./adapter.js\"\n\nexport function fromWasm(wasm: typeof Base58Wasm) {\n  const { Memory, base58_encode, base58_decode } = wasm\n\n  function getMemory(bytesOrCopiable: BytesOrCopiable) {\n    if (bytesOrCopiable instanceof Memory)\n      return new Ref(bytesOrCopiable)\n\n    if (bytesOrCopiable instanceof Uint8Array)\n      return Pin.from(new Memory(bytesOrCopiable))\n\n    return Pin.from(new Memory(bytesOrCopiable.bytes))\n  }\n\n  function encodeOrThrow(bytes: BytesOrCopiable) {\n    using memory = getMemory(bytes)\n\n    return base58_encode(memory.value)\n  }\n\n  function decodeOrThrow(text: string) {\n    return base58_decode(text)\n  }\n\n  return { encodeOrThrow, decodeOrThrow } satisfies Adapter\n}"],"names":[],"mappings":";;;AAKM,SAAU,QAAQ,CAAC,IAAuB,EAAA;IAC9C,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,aAAa,EAAE,GAAG,IAAI;IAErD,SAAS,SAAS,CAAC,eAAgC,EAAA;QACjD,IAAI,eAAe,YAAY,MAAM;AACnC,YAAA,OAAO,IAAI,GAAG,CAAC,eAAe,CAAC;QAEjC,IAAI,eAAe,YAAY,UAAU;YACvC,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,eAAe,CAAC,CAAC;AAE9C,QAAA,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;;IAGpD,SAAS,aAAa,CAAC,KAAsB,EAAA;;;AAC3C,YAAA,MAAM,MAAM,GAAG,uBAAA,CAAA,KAAA,EAAA,SAAS,CAAC,KAAK,CAAC,QAAA;AAE/B,YAAA,OAAO,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC;;;;;;;;;AACnC;IAED,SAAS,aAAa,CAAC,IAAY,EAAA;AACjC,QAAA,OAAO,aAAa,CAAC,IAAI,CAAC;;AAG5B,IAAA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAoB;AAC3D;;;;"}