@daimo/pay
Version:
Seamless crypto payments. Onboard users from any chain, any coin into your app with one click.
64 lines (61 loc) • 1.43 kB
JavaScript
import { http } from 'wagmi';
import { arbitrum, base, bsc, celo, linea, mainnet, polygon, optimism, scroll, worldchain } from 'wagmi/chains';
import defaultConnectors from './defaultConnectors.js';
let globalAppName;
const getAppName = () => globalAppName;
const REQUIRED_CHAINS = [
arbitrum,
base,
bsc,
celo,
linea,
mainnet,
polygon,
optimism,
scroll,
worldchain
];
const defaultConfig = ({
appName = "Daimo Pay",
appIcon,
appDescription,
appUrl,
additionalConnectors,
chains = REQUIRED_CHAINS,
client,
...props
}) => {
globalAppName = appName;
const paddedChains = [...chains];
for (const chain of REQUIRED_CHAINS) {
if (!paddedChains.includes(chain)) {
paddedChains.push(chain);
}
}
const paddedTransports = {};
for (const chain of paddedChains) {
if (!props?.transports?.[chain.id]) {
paddedTransports[chain.id] = http();
} else {
paddedTransports[chain.id] = props.transports[chain.id];
}
}
const connectors = props?.connectors ?? defaultConnectors({
app: {
name: appName,
icon: appIcon,
description: appDescription,
url: appUrl
},
additionalConnectors
});
const config = {
...props,
chains: paddedChains,
transports: paddedTransports,
connectors
};
return config;
};
export { REQUIRED_CHAINS, defaultConfig as default, getAppName };
//# sourceMappingURL=defaultConfig.js.map