@kryptogo/kryptogokit-sdk-react
Version:
KryptogoKit offers a comprehensive web3 wallet solution with seamless KryptoGO Auth integration and multi-wallet connection support. Designed for users. Built for developers.
148 lines (144 loc) • 8.82 kB
JavaScript
"use client";
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __commonJS = (cb, mod) => function __require() {
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
};
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 __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
// If the importer is in node compatibility mode or this is not an ESM
// file that has been converted to a CommonJS file using a Babel-
// compatible transform (i.e. "__esModule" has not been set), then set
// "default" to the CommonJS "module.exports" for node compatibility.
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
mod
));
// src/wallets/walletConnectors/bitskiWallet/bitskiWallet.svg
var require_bitskiWallet = __commonJS({
"src/wallets/walletConnectors/bitskiWallet/bitskiWallet.svg"(exports, module) {
module.exports = 'data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 28 28"><g clip-path="url(%23a)"><mask id="b" width="28" height="28" x="0" y="0" maskUnits="userSpaceOnUse" style="mask-type:luminance"><path fill="%23fff" d="M0 0h28v28H0V0Z"/></mask><g mask="url(%23b)"><path fill="%23FF245A" d="M0 0h28v28H0V0Z"/><g filter="url(%23c)"><path stroke="url(%23d)" stroke-width="16" d="M7 7h14v14H7V7Z"/></g><mask id="e" width="18" height="18" x="5" y="5" maskUnits="userSpaceOnUse" style="mask-type:alpha"><path fill="%23fff" fill-rule="evenodd" d="M9.08 7.103 5.98 10.202c-.232.232-.217.421.015.654l9.513 9.513c.233.233.422.248.655.015l4.35-4.35c2.268-2.268 2.08-4.669.29-6.458-1.28-1.28-2.618-1.746-4.146-1.324-.247.073-.364.044-.48-.072-.043-.043-.077-.093-.122-.157l-.053-.076c-.175-.262-.466-.67-.698-.902-1.833-1.833-4.175-1.993-6.226.057v.001Zm4 4-.742.742c-.232.233-.421.218-.654-.015l-.698-.698c-.233-.233-.248-.422-.015-.655l.742-.742c.378-.378.916-.421 1.353.015.45.45.392.975.014 1.353Zm4.757 2.342-1.949 1.95c-.232.232-.421.218-.654-.015l-.698-.698c-.233-.233-.248-.422-.015-.655l1.95-1.95c.566-.566 1.104-.669 1.57-.203.48.48.364 1.003-.204 1.57v.001ZM6.818 15.183a.857.857 0 0 0 0 1.212l6.061 6.061a.857.857 0 0 0 1.212-1.212L8.03 15.183a.857.857 0 0 0-1.212 0Z" clip-rule="evenodd"/></mask><g filter="url(%23f)" mask="url(%23e)"><path fill="url(%23g)" d="M22.18 13.8a8.183 8.183 0 0 0-16.366 0v.889a8.183 8.183 0 0 0 16.366 0V13.8Z"/><path fill="url(%23h)" fill-opacity=".12" d="M22.18 13.8a8.183 8.183 0 0 0-16.366 0v.889a8.183 8.183 0 0 0 16.366 0V13.8Z"/><path fill="%23fff" fill-opacity=".2" d="M22.18 13.8a8.183 8.183 0 0 0-16.366 0v.889a8.183 8.183 0 0 0 16.366 0V13.8Z" style="mix-blend-mode:overlay"/></g></g></g><defs><linearGradient id="d" x1="14" x2="14" y1="0" y2="27.645" gradientUnits="userSpaceOnUse"><stop stop-color="%23fff" stop-opacity=".5"/><stop offset=".633" stop-color="%23E00037"/></linearGradient><linearGradient id="g" x1="13.997" x2="13.997" y1="5.618" y2="22.872" gradientUnits="userSpaceOnUse"><stop stop-color="%23fff"/><stop offset=".544" stop-color="%23F9F7FA"/><stop offset=".77" stop-color="%23F7F7F7"/><stop offset="1" stop-color="%23E6E6E6"/></linearGradient><filter id="c" width="230" height="230" x="-101" y="-101" color-interpolation-filters="sRGB" filterUnits="userSpaceOnUse"><feFlood flood-opacity="0" result="BackgroundImageFix"/><feBlend in="SourceGraphic" in2="BackgroundImageFix" result="shape"/><feGaussianBlur result="effect1_foregroundBlur_2903_48224" stdDeviation="50"/></filter><filter id="f" width="136.366" height="137.254" x="-54.186" y="-10.382" color-interpolation-filters="sRGB" filterUnits="userSpaceOnUse"><feFlood flood-opacity="0" result="BackgroundImageFix"/><feColorMatrix in="SourceAlpha" result="hardAlpha" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0"/><feOffset dy="44"/><feGaussianBlur stdDeviation="30"/><feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.28 0"/><feBlend in2="BackgroundImageFix" result="effect1_dropShadow_2903_48224"/><feBlend in="SourceGraphic" in2="effect1_dropShadow_2903_48224" result="shape"/></filter><radialGradient id="h" cx="0" cy="0" r="1" gradientTransform="matrix(0 12.4616 -11.8201 0 13.997 10.41)" gradientUnits="userSpaceOnUse"><stop offset=".479" stop-color="%23fff"/><stop offset="1"/></radialGradient><clipPath id="a"><path fill="%23fff" d="M0 0h28v28H0z"/></clipPath></defs></svg>';
}
});
// src/wallets/getInjectedConnector.ts
import { createConnector } from "wagmi";
import { injected } from "wagmi/connectors";
function getExplicitInjectedProvider(flag) {
const _window = typeof window !== "undefined" ? window : void 0;
if (typeof _window === "undefined" || typeof _window.ethereum === "undefined")
return;
const providers = _window.ethereum.providers;
return providers ? providers.find((provider) => provider[flag]) : _window.ethereum[flag] ? _window.ethereum : void 0;
}
function getWindowProviderNamespace(namespace) {
const providerSearch = (provider, namespace2) => {
const [property, ...path] = namespace2.split(".");
const _provider = provider[property];
if (_provider) {
if (path.length === 0)
return _provider;
return providerSearch(_provider, path.join("."));
}
};
if (typeof window !== "undefined")
return providerSearch(window, namespace);
}
function hasInjectedProvider({ flag, namespace }) {
if (namespace && typeof getWindowProviderNamespace(namespace) !== "undefined")
return true;
if (flag && typeof getExplicitInjectedProvider(flag) !== "undefined")
return true;
return false;
}
function getInjectedProvider({ flag, namespace }) {
const _window = typeof window !== "undefined" ? window : void 0;
if (typeof _window === "undefined")
return;
if (namespace) {
const windowProvider = getWindowProviderNamespace(namespace);
if (windowProvider)
return windowProvider;
}
const providers = _window.ethereum?.providers;
if (flag) {
const provider = getExplicitInjectedProvider(flag);
if (provider)
return provider;
}
if (typeof providers !== "undefined" && providers.length > 0)
return providers[0];
return _window.ethereum;
}
function createInjectedConnector(provider) {
return (walletDetails) => {
const injectedConfig = provider ? {
shimDisconnect: false,
target: () => ({
id: walletDetails.rkDetails.id,
name: walletDetails.rkDetails.name,
provider
})
} : { shimDisconnect: false };
return createConnector((config) => ({
// Spread the injectedConfig object, which may be empty or contain the target function
...injected(injectedConfig)(config),
...walletDetails
}));
};
}
function getInjectedConnector({
flag,
namespace,
target
}) {
const provider = target ? target : getInjectedProvider({ flag, namespace });
return createInjectedConnector(provider);
}
// src/wallets/walletConnectors/bitskiWallet/bitskiWallet.ts
var bitskiWallet = () => ({
id: "bitski",
name: "Bitski",
installed: hasInjectedProvider({ flag: "isBitski" }),
iconUrl: async () => (await Promise.resolve().then(() => __toESM(require_bitskiWallet(), 1))).default,
iconBackground: "#fff",
downloadUrls: {
chrome: "https://chrome.google.com/webstore/detail/bitski/feejiigddaafeojfddjjlmfkabimkell",
browserExtension: "https://bitski.com"
},
extension: {
instructions: {
learnMoreUrl: "https://bitski.zendesk.com/hc/articles/12803972818836-How-to-install-the-Bitski-browser-extension",
steps: [
{
description: "wallet_connectors.bitski.extension.step1.description",
step: "install",
title: "wallet_connectors.bitski.extension.step1.title"
},
{
description: "wallet_connectors.bitski.extension.step2.description",
step: "create",
title: "wallet_connectors.bitski.extension.step2.title"
},
{
description: "wallet_connectors.bitski.extension.step3.description",
step: "refresh",
title: "wallet_connectors.bitski.extension.step3.title"
}
]
}
},
createConnector: getInjectedConnector({ flag: "isBitski" })
});
export {
bitskiWallet
};