@lifi/composer-sdk
Version:
Public Composer SDK for building and submitting flows
61 lines • 2.42 kB
JavaScript
;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var sdk_exports = {};
__export(sdk_exports, {
createComposeSdk: () => createComposeSdk
});
module.exports = __toCommonJS(sdk_exports);
var import_FlowBuilderCore = require("./authoring/FlowBuilderCore.js");
var import_client = require("./client.js");
var import_operations_generated = require("./generated/operations.generated.js");
var import_inputs = require("./run/inputs.js");
const createComposeSdk = (options) => {
const composeClient = (0, import_client.createComposeClient)(options);
const request = (flowDoc, run) => ({
flow: flowDoc,
run: (0, import_inputs.buildRun)({
inputs: run.inputs,
preconditions: run.preconditions,
signer: run.signer,
assumptions: run.assumptions,
referrer: run.referrer,
integratorFeeBps: run.integratorFeeBps,
maxPriceImpactBps: run.maxPriceImpactBps,
sweepTo: run.sweepTo,
simulationPolicy: run.simulationPolicy,
checkOnChainAllowances: run.checkOnChainAllowances
})
});
const flow = (chainId, opts) => {
const core = (0, import_FlowBuilderCore.createFlowBuilderCore)(chainId, opts);
const builder = Object.assign(core, (0, import_operations_generated.bindGeneratedOps)(core));
const compile = async (run) => {
const flowDoc = builder.build();
const req = request(flowDoc, run);
return composeClient.compile(req);
};
return Object.assign(builder, { compile });
};
return { client: composeClient, flow, request };
};
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
createComposeSdk
});
//# sourceMappingURL=sdk.cjs.map