Skip to content

Commit

Permalink
make chain a param
Browse files Browse the repository at this point in the history
  • Loading branch information
glitch003 committed Feb 15, 2022
1 parent 18f3d1c commit 7b73161
Show file tree
Hide file tree
Showing 9 changed files with 152 additions and 129 deletions.
Binary file added .DS_Store
Binary file not shown.
6 changes: 4 additions & 2 deletions dist/integration.js
Original file line number Diff line number Diff line change
Expand Up @@ -41,9 +41,11 @@ var lit_1 = require("./lit");
var client_1 = require("./client");
var ceramic_1 = require("./ceramic");
var Integration = /** @class */ (function () {
function Integration(ceramicNodeUrl) {
function Integration(ceramicNodeUrl, chain) {
if (ceramicNodeUrl === void 0) { ceramicNodeUrl = "https://ceramic-clay.3boxlabs.com"; }
if (chain === void 0) { chain = "ethereum"; }
this.ceramicPromise = (0, ceramic_1._createCeramic)(ceramicNodeUrl);
this.chain = chain;
}
Integration.prototype.startLitClient = function (window) {
(0, client_1._startLitClient)(window);
Expand All @@ -66,7 +68,7 @@ var Integration = /** @class */ (function () {
return [4 /*yield*/, (0, ceramic_1._authenticateCeramic)(this.ceramicPromise)];
case 1:
a = _a.sent();
return [4 /*yield*/, (0, lit_1._encryptWithLit)(a, toEncrypt, accessControlConditions)];
return [4 /*yield*/, (0, lit_1._encryptWithLit)(a, toEncrypt, accessControlConditions, this.chain)];
case 2:
en = _a.sent();
return [4 /*yield*/, (0, ceramic_1._writeCeramic)(a, en)];
Expand Down
12 changes: 5 additions & 7 deletions dist/lit.js
Original file line number Diff line number Diff line change
Expand Up @@ -105,16 +105,14 @@ exports.decodeb64 = decodeb64;
* @param {String} aStringThatYouWishToEncrypt the clear text you'd like encrypted
* @returns {Promise<Array<any>>} returns, in this order: encryptedZipBase64, encryptedSymmetricKeyBase64, accessControlConditions, chain
*/
function _encryptWithLit(auth, aStringThatYouWishToEncrypt, accessControlConditions) {
function _encryptWithLit(auth, aStringThatYouWishToEncrypt, accessControlConditions, chain) {
return __awaiter(this, void 0, void 0, function () {
var chain, authSig, _a, encryptedZip, symmetricKey, encryptedSymmetricKey, encryptedZipBase64, encryptedSymmetricKeyBase64;
var authSig, _a, encryptedZip, symmetricKey, encryptedSymmetricKey, encryptedZipBase64, encryptedSymmetricKeyBase64;
return __generator(this, function (_b) {
switch (_b.label) {
case 0:
chain = "ethereum";
return [4 /*yield*/, LitJsSdk.checkAndSignAuthMessage({
chain: chain,
})];
case 0: return [4 /*yield*/, LitJsSdk.checkAndSignAuthMessage({
chain: chain,
})];
case 1:
authSig = _b.sent();
return [4 /*yield*/, LitJsSdk.zipAndEncryptString(aStringThatYouWishToEncrypt)];
Expand Down
63 changes: 15 additions & 48 deletions dist/wallet.js
Original file line number Diff line number Diff line change
Expand Up @@ -39,51 +39,22 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.getAddress = exports.getProvider = exports.web3Modal = exports.threeID = void 0;
var web3_provider_1 = __importDefault(require("@walletconnect/web3-provider"));
exports.getAddress = exports.getProvider = exports.threeID = void 0;
var connect_1 = require("@3id/connect");
var authereum_1 = __importDefault(require("authereum"));
var fortmatic_1 = __importDefault(require("fortmatic"));
var web3modal_1 = __importDefault(require("web3modal"));
var lit_js_sdk_1 = __importDefault(require("lit-js-sdk"));
// @ts-ignore
exports.threeID = new connect_1.ThreeIdConnect();
exports.web3Modal = new web3modal_1.default({
network: 'mainnet',
disableInjectedProvider: false,
cacheProvider: true,
providerOptions: {
walletconnect: {
package: web3_provider_1.default,
options: {
infuraId: 'e87f83fb85bf4aa09bdf6605ebe144b7',
},
},
fortmatic: {
package: fortmatic_1.default,
options: {
key: 'pk_live_EC842EEAC7F08995',
},
},
authereum: {
package: authereum_1.default,
options: {},
},
},
});
function getProvider() {
return __awaiter(this, void 0, void 0, function () {
var ethProvider, addresses;
return __generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, exports.web3Modal.connect()];
var _a, web3, account;
return __generator(this, function (_b) {
switch (_b.label) {
case 0: return [4 /*yield*/, lit_js_sdk_1.default.connectWeb3()];
case 1:
ethProvider = _a.sent();
return [4 /*yield*/, ethProvider.enable()];
_a = _b.sent(), web3 = _a.web3, account = _a.account;
return [4 /*yield*/, exports.threeID.connect(new connect_1.EthereumAuthProvider(web3, account))];
case 2:
addresses = _a.sent();
return [4 /*yield*/, exports.threeID.connect(new connect_1.EthereumAuthProvider(ethProvider, addresses[0]))];
case 3:
_a.sent();
_b.sent();
return [2 /*return*/, exports.threeID.getDidProvider()];
}
});
Expand All @@ -92,17 +63,13 @@ function getProvider() {
exports.getProvider = getProvider;
function getAddress() {
return __awaiter(this, void 0, void 0, function () {
var ethProvider, addresses, addr;
return __generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, exports.web3Modal.connect()];
var _a, web3, account;
return __generator(this, function (_b) {
switch (_b.label) {
case 0: return [4 /*yield*/, lit_js_sdk_1.default.connectWeb3()];
case 1:
ethProvider = _a.sent();
return [4 /*yield*/, ethProvider.enable()];
case 2:
addresses = _a.sent();
addr = addresses[0];
return [2 /*return*/, addr];
_a = _b.sent(), web3 = _a.web3, account = _a.account;
return [2 /*return*/, account];
}
});
});
Expand Down
5 changes: 2 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,7 @@
"keywords": [
"lit",
"ceramic",
"package",
"litelliott"
"package"
],
"scripts": {
"build": "tsc",
Expand All @@ -30,7 +29,7 @@
"fortmatic": "^2.2.1",
"http-server": "^14.0.0",
"key-did-resolver": "^1.2.0",
"lit-js-sdk": "^1.1.80",
"lit-js-sdk": "^1.1.119",
"multiformats": "~4.6.1",
"skynet-js": "^4.0.5-beta",
"typescript": "^4.5.4",
Expand Down
16 changes: 13 additions & 3 deletions src/integration.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// Don't forget to rebuild
import { createIDX } from "./idx";
import type { CeramicApi } from "@ceramicnetwork/common";
import type { DID } from 'dids';
import type { DID } from "dids";
import { _encryptWithLit, _decryptWithLit } from "./lit";
import { _startLitClient } from "./client";
import {
Expand All @@ -19,9 +19,14 @@ declare global {
}
export class Integration {
ceramicPromise: Promise<CeramicApi>;
chain: String;

constructor(ceramicNodeUrl: string = "https://ceramic-clay.3boxlabs.com") {
constructor(
ceramicNodeUrl: string = "https://ceramic-clay.3boxlabs.com",
chain: String = "ethereum"
) {
this.ceramicPromise = _createCeramic(ceramicNodeUrl);
this.chain = chain;
}

startLitClient(window: Window) {
Expand All @@ -42,7 +47,12 @@ export class Integration {
): Promise<String> {
try {
const a = await _authenticateCeramic(this.ceramicPromise);
const en = await _encryptWithLit(a, toEncrypt, accessControlConditions);
const en = await _encryptWithLit(
a,
toEncrypt,
accessControlConditions,
this.chain
);
const wr = await _writeCeramic(a, en);
return wr;
} catch (error) {
Expand Down
8 changes: 4 additions & 4 deletions src/lit.ts
Original file line number Diff line number Diff line change
Expand Up @@ -52,11 +52,11 @@ export function decodeb64(b64String: any) {
export async function _encryptWithLit(
auth: any[],
aStringThatYouWishToEncrypt: String,
accessControlConditions: Array<Object>
accessControlConditions: Array<Object>,
chain: String
): Promise<Array<any>> {
const chain = "ethereum";
let authSig = await LitJsSdk.checkAndSignAuthMessage({
chain: chain,
chain,
});
const { encryptedZip, symmetricKey } = await LitJsSdk.zipAndEncryptString(
aStringThatYouWishToEncrypt
Expand Down Expand Up @@ -95,7 +95,7 @@ export async function _decryptWithLit(
chain: string
): Promise<String> {
let authSig = await LitJsSdk.checkAndSignAuthMessage({
chain: chain,
chain,
});
// encrypted blob, sym key
console.log("encryptedSymKey", encryptedSymmKey);
Expand Down
57 changes: 18 additions & 39 deletions src/wallet.ts
Original file line number Diff line number Diff line change
@@ -1,47 +1,26 @@
import WalletConnectProvider from '@walletconnect/web3-provider'
import { ThreeIdConnect, EthereumAuthProvider } from '@3id/connect'
import Authereum from 'authereum'
import type { DIDProvider } from 'dids'
import Fortmatic from 'fortmatic'
import Web3Modal from 'web3modal'
import WalletConnectProvider from "@walletconnect/web3-provider";
import { ThreeIdConnect, EthereumAuthProvider } from "@3id/connect";
import Authereum from "authereum";
import type { DIDProvider } from "dids";
import Fortmatic from "fortmatic";
import Web3Modal from "web3modal";
import LitJsSdk from "lit-js-sdk";

// @ts-ignore
export const threeID = new ThreeIdConnect()

export const web3Modal = new Web3Modal({
network: 'mainnet',
disableInjectedProvider: false,
cacheProvider: true,
providerOptions: {
walletconnect: {
package: WalletConnectProvider,
options: {
infuraId: 'e87f83fb85bf4aa09bdf6605ebe144b7',
},
},
fortmatic: {
package: Fortmatic,
options: {
key: 'pk_live_EC842EEAC7F08995',
},
},
authereum: {
package: Authereum,
options: {},
},
},
})
export const threeID = new ThreeIdConnect();

export async function getProvider(): Promise<DIDProvider> {
const ethProvider = await web3Modal.connect()
const addresses = await ethProvider.enable()
await threeID.connect(new EthereumAuthProvider(ethProvider, addresses[0]))
return threeID.getDidProvider()
// const ethProvider = await web3Modal.connect()
// const addresses = await ethProvider.enable()
const { web3, account } = await LitJsSdk.connectWeb3();
await threeID.connect(new EthereumAuthProvider(web3, account));
return threeID.getDidProvider();
}

export async function getAddress(): Promise<String> {
const ethProvider = await web3Modal.connect()
const addresses = await ethProvider.enable()
const addr = addresses[0]
return addr
// const ethProvider = await web3Modal.connect()
// const addresses = await ethProvider.enable()
// const addr = addresses[0]
const { web3, account } = await LitJsSdk.connectWeb3();
return account;
}
Loading

0 comments on commit 7b73161

Please sign in to comment.