add QR scanner for adding a contact #69
Merged
trentlarson
merged 2 commits from qr-reader-rebased
into master
1 year ago
11 changed files with 12876 additions and 33312 deletions
File diff suppressed because it is too large
@ -1,151 +1,7 @@ |
|||
// Created from the setup in https://veramo.io/docs/guides/react_native
|
|||
// see also ../constants/app.ts and
|
|||
|
|||
// Core interfaces
|
|||
/* import { |
|||
createAgent, |
|||
IDIDManager, |
|||
IResolver, |
|||
IDataStore, |
|||
IKeyManager, |
|||
} from "@veramo/core"; |
|||
*/ |
|||
// Core identity manager plugin
|
|||
//import { DIDManager } from "@veramo/did-manager";
|
|||
|
|||
// Ethr did identity provider
|
|||
//import { EthrDIDProvider } from "@veramo/did-provider-ethr";
|
|||
|
|||
// Core key manager plugin
|
|||
//import { KeyManager } from "@veramo/key-manager";
|
|||
|
|||
// Custom key management system for RN
|
|||
//import { KeyManagementSystem } from '@veramo/kms-local-react-native'
|
|||
|
|||
// Custom resolver
|
|||
// Custom resolvers
|
|||
//import { DIDResolverPlugin } from "@veramo/did-resolver";
|
|||
/* import { Resolver } from "did-resolver"; |
|||
import { getResolver as ethrDidResolver } from "ethr-did-resolver"; |
|||
import { getResolver as webDidResolver } from "web-did-resolver"; |
|||
*/ |
|||
// for VCs and VPs https://veramo.io/docs/api/credential-w3c
|
|||
//import { CredentialIssuer } from '@veramo/credential-w3c'
|
|||
|
|||
// Storage plugin using TypeOrm
|
|||
/* import { |
|||
Entities, |
|||
KeyStore, |
|||
DIDStore, |
|||
IDataStoreORM, |
|||
} from "@veramo/data-store"; |
|||
*/ |
|||
// TypeORM is installed with @veramo/typeorm
|
|||
//import { createConnection } from 'typeorm'
|
|||
|
|||
//import * as R from "ramda";
|
|||
|
|||
/* |
|||
import { Contact } from '../entity/contact' |
|||
import { Settings } from '../entity/settings' |
|||
import { PrivateData } from '../entity/privateData' |
|||
|
|||
import { Initial1616938713828 } from '../migration/1616938713828-initial' |
|||
import { SettingsContacts1616967972293 } from '../migration/1616967972293-settings-contacts' |
|||
import { EncryptedSeed1637856484788 } from '../migration/1637856484788-EncryptedSeed' |
|||
import { HomeScreenConfig1639947962124 } from '../migration/1639947962124-HomeScreenConfig' |
|||
import { HandlePublicKeys1652142819353 } from '../migration/1652142819353-HandlePublicKeys' |
|||
import { LastClaimsSeen1656811846836 } from '../migration/1656811846836-LastClaimsSeen' |
|||
import { ContactRegistered1662256903367 }from '../migration/1662256903367-ContactRegistered' |
|||
import { PrivateData1663080623479 } from '../migration/1663080623479-PrivateData' |
|||
|
|||
const ALL_ENTITIES = Entities.concat([Contact, Settings, PrivateData]) |
|||
|
|||
// Create react native DB connection configured by ormconfig.js
|
|||
|
|||
export const dbConnection = createConnection({ |
|||
database: 'endorser-mobile.sqlite', |
|||
entities: ALL_ENTITIES, |
|||
location: 'default', |
|||
logging: ['error', 'info', 'warn'], |
|||
migrations: [ Initial1616938713828, SettingsContacts1616967972293, EncryptedSeed1637856484788, HomeScreenConfig1639947962124, HandlePublicKeys1652142819353, LastClaimsSeen1656811846836, ContactRegistered1662256903367, PrivateData1663080623479 ], |
|||
migrationsRun: true, |
|||
type: 'react-native', |
|||
}) |
|||
*/ |
|||
function didProviderName(netName: string) { |
|||
return "did:ethr" + (netName === "mainnet" ? "" : ":" + netName); |
|||
} |
|||
|
|||
//const NETWORK_NAMES = ["mainnet", "rinkeby"];
|
|||
|
|||
const DEFAULT_DID_PROVIDER_NETWORK_NAME = "mainnet"; |
|||
|
|||
export const DEFAULT_DID_PROVIDER_NAME = didProviderName( |
|||
DEFAULT_DID_PROVIDER_NETWORK_NAME, |
|||
); |
|||
|
|||
export const HANDY_APP = false; |
|||
|
|||
// this is used as the object in RegisterAction claims
|
|||
export const SERVICE_ID = "endorser.ch"; |
|||
|
|||
//const INFURA_PROJECT_ID = "INFURA_PROJECT_ID";
|
|||
/* |
|||
const providers = {} |
|||
NETWORK_NAMES.forEach((networkName) => { |
|||
providers[didProviderName(networkName)] = new EthrDIDProvider({ |
|||
defaultKms: 'local', |
|||
network: networkName, |
|||
rpcUrl: 'https://' + networkName + '.infura.io/v3/' + INFURA_PROJECT_ID, |
|||
gas: 1000001, |
|||
ttl: 60 * 60 * 24 * 30 * 12 + 1, |
|||
}) |
|||
}) |
|||
|
|||
|
|||
const didManager = new DIDManager({ |
|||
store: new DIDStore(dbConnection), |
|||
defaultProvider: DEFAULT_DID_PROVIDER_NAME, |
|||
providers: providers, |
|||
}) |
|||
*/ |
|||
|
|||
/* const basicDidResolvers = NETWORK_NAMES.map((networkName) => [ |
|||
networkName, |
|||
new Resolver({ |
|||
ethr: ethrDidResolver({ |
|||
networks: [ |
|||
{ |
|||
name: networkName, |
|||
rpcUrl: |
|||
"https://" + networkName + ".infura.io/v3/" + INFURA_PROJECT_ID, |
|||
}, |
|||
], |
|||
}).ethr, |
|||
web: webDidResolver().web, |
|||
}), |
|||
]); |
|||
|
|||
const basicResolverMap = R.fromPairs(basicDidResolvers) |
|||
|
|||
export const DEFAULT_BASIC_RESOLVER = basicResolverMap[DEFAULT_DID_PROVIDER_NETWORK_NAME] |
|||
|
|||
const agentDidResolvers = NETWORK_NAMES.map((networkName) => { |
|||
return new DIDResolverPlugin({ |
|||
resolver: basicResolverMap[networkName], |
|||
}) |
|||
}) |
|||
|
|||
let allPlugins = [ |
|||
new CredentialIssuer(), |
|||
new KeyManager({ |
|||
store: new KeyStore(dbConnection), |
|||
kms: { |
|||
local: new KeyManagementSystem(), |
|||
}, |
|||
}), |
|||
didManager, |
|||
].concat(agentDidResolvers) |
|||
*/ |
|||
|
|||
//export const agent = createAgent<IDIDManager & IKeyManager & IDataStore & IDataStoreORM & IResolver>({ plugins: allPlugins })
|
|||
export const DEFAULT_DID_PROVIDER_NAME = didProviderName("mainnet"); |
|||
|
Loading…
Reference in new issue