@sky-mavis/tanto-connect
Version:
Tanto Connect
21 lines (17 loc) • 773 B
JavaScript
;
var safeAppsProvider = require('@safe-global/safe-apps-provider');
var SafeAppsSDK = require('@safe-global/safe-apps-sdk');
var constant = require('../common/constant.cjs');
var connectorError = require('../types/connector-error.cjs');
const requestSafeProvider = async (delay = constant.DEFAULT_DELAY_TIME) => {
const safeSDK = new SafeAppsSDK();
const safeInfo = await Promise.race([
safeSDK.safe.getInfo(),
new Promise(resolve => setTimeout(resolve, delay)),
]);
if (!safeInfo) {
throw new connectorError.ConnectorError(connectorError.ConnectorErrorType.PROVIDER_NOT_FOUND);
}
return new safeAppsProvider.SafeAppProvider(safeInfo, safeSDK);
};
exports.requestSafeProvider = requestSafeProvider;