@ledgerhq/coin-canton
Version:
67 lines • 3.34 kB
JavaScript
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.createBridges = createBridges;
const getAddressWrapper_1 = __importDefault(require("@ledgerhq/ledger-wallet-framework/bridge/getAddressWrapper"));
const jsHelpers_1 = require("@ledgerhq/ledger-wallet-framework/bridge/jsHelpers");
const config_1 = __importDefault(require("../config"));
const constants_1 = require("../constants");
const signer_1 = __importDefault(require("../signer"));
const acceptOffer_1 = require("./acceptOffer");
const broadcast_1 = require("./broadcast");
const createTransaction_1 = require("./createTransaction");
const estimateMaxSpendable_1 = require("./estimateMaxSpendable");
const getTransactionStatus_1 = require("./getTransactionStatus");
const onboard_1 = require("./onboard");
const prepareTransaction_1 = require("./prepareTransaction");
const serialization_1 = require("./serialization");
const signOperation_1 = require("./signOperation");
const sync_1 = require("./sync");
const updateTransaction_1 = require("./updateTransaction");
const validateAddress_1 = require("./validateAddress");
function createBridges(signerContext, coinConfig) {
config_1.default.setCoinConfig(coinConfig);
const getAddress = (0, signer_1.default)(signerContext);
const receive = (0, jsHelpers_1.makeAccountBridgeReceive)((0, getAddressWrapper_1.default)(getAddress));
const scanAccounts = (0, jsHelpers_1.makeScanAccounts)({
getAccountShape: (0, sync_1.makeGetAccountShape)(signerContext),
getAddressFn: getAddress,
});
const onboardAccount = (0, onboard_1.buildOnboardAccount)(signerContext);
const authorizePreapproval = (0, onboard_1.buildAuthorizePreapproval)(signerContext);
const transferInstruction = (0, acceptOffer_1.buildTransferInstruction)(signerContext);
const currencyBridge = {
scanAccounts,
onboardAccount,
authorizePreapproval,
transferInstruction,
};
const signOperation = (0, signOperation_1.buildSignOperation)(signerContext);
const sync = (0, jsHelpers_1.makeSync)({ getAccountShape: (0, sync_1.makeGetAccountShape)(signerContext) });
const accountBridge = {
broadcast: broadcast_1.broadcast,
createTransaction: createTransaction_1.createTransaction,
updateTransaction: updateTransaction_1.updateTransaction,
prepareTransaction: prepareTransaction_1.prepareTransaction,
getTransactionStatus: getTransactionStatus_1.getTransactionStatus,
estimateMaxSpendable: estimateMaxSpendable_1.estimateMaxSpendable,
sync,
receive,
signOperation,
signRawOperation: () => {
throw new Error("signRawOperation is not supported");
},
assignToAccountRaw: serialization_1.assignToAccountRaw,
assignFromAccountRaw: serialization_1.assignFromAccountRaw,
getSerializedAddressParameters: jsHelpers_1.getSerializedAddressParameters,
validateAddress: validateAddress_1.validateAddress,
getEstimationRecipient: () => constants_1.CANTON_UNSET_RECIPIENT,
};
return {
currencyBridge,
accountBridge,
};
}
//# sourceMappingURL=index.js.map