viem
Version:
37 lines • 1.65 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.createClient = createClient;
const createClient_js_1 = require("../clients/createClient.js");
const public_js_1 = require("../clients/decorators/public.js");
const wallet_js_1 = require("../clients/decorators/wallet.js");
const http_js_1 = require("../clients/transports/http.js");
const sets_js_1 = require("../tokens/sets.js");
const Chain_js_1 = require("./Chain.js");
const Decorator_js_1 = require("./Decorator.js");
const Store = require("./Store.js");
const Transport_js_1 = require("./Transport.js");
function createClient(parameters = {}) {
const { chain, experimental_multisig, feeToken, testnet, tokens, transport, ...rest } = parameters;
const baseChain = chain ?? (testnet ? Chain_js_1.tempoTestnet : Chain_js_1.tempo);
const resolvedChain = feeToken && typeof baseChain.extend === 'function'
? baseChain.extend({
feeToken,
})
: baseChain;
const transport_ = transport ?? (0, http_js_1.http)();
const resolvedTransport = experimental_multisig
? (0, Transport_js_1.withMultisig)(transport_, experimental_multisig === true
? { store: Store.memory() }
: experimental_multisig)
: transport_;
return (0, createClient_js_1.createClient)({
...rest,
chain: resolvedChain,
tokens: tokens ?? sets_js_1.tokens.tempo,
transport: resolvedTransport,
})
.extend(public_js_1.publicActions)
.extend(wallet_js_1.walletActions)
.extend((0, Decorator_js_1.decorator)());
}
//# sourceMappingURL=Client.js.map