Example Projects
Idverification
import { ContractConfig, Feature, FunctionConfig, MintConfig, ProjectConfig } from "@patchworkdev/common/types";
const idverificationProjectConfig: ProjectConfig = {
name: "idverification",
scopes: [
{
name: "myscope",
whitelist: true,
userAssign: false,
userPatch: false,
mintConfigs: {},
patchFees: {},
assignFees: {}
}
],
contracts: {
"IDVerification": {
scopeName: "myscope",
name: "IDVerification",
symbol: "IDV",
baseURI: "https://replace-me-with-website/",
schemaURI: "https://replace-me-with-website/schemas/idverification.json",
imageURI: "https://replace-me-with-website/assets/idverification/{tokenID}",
fields: [
{
id: 0,
key: "status",
type: "uint8",
description: "Verification Status (0 = not verified, 1 = verified, 2 = pending)",
},
{
id: 1,
key: "nonce",
type: "uint64",
description: "Verification Nonce - New verifications must be greater",
},
{
id: 2,
key: "verifications",
type: "literef",
description: "Verifications",
arrayLength: 8,
}
],
features: [Feature.ACCOUNTPATCH],
fragments: ["MyVerification"]
},
"MyVerification": {
scopeName: "myscope",
name: "MyVerification",
symbol: "VER",
baseURI: "https://replace-me-with-website/",
schemaURI: "https://replace-me-with-website/schemas/verification.json",
imageURI: "https://replace-me-with-website/assets/verification/{tokenID}",
fields: [
{
id: 0,
key: "createdat",
type: "uint64",
description: "CreatedAt Timestamp (seconds since epoch)",
functionConfig: FunctionConfig.LOAD,
},
{
id: 1,
key: "verifier",
type: "address",
description: "Verifier",
functionConfig: FunctionConfig.LOAD,
},
{
id: 2,
key: "nonce",
type: "uint64",
description: "Nonce",
functionConfig: FunctionConfig.LOAD,
},
{
id: 3,
key: "signature",
type: "uint256",
description: "Verifier Signature",
functionConfig: FunctionConfig.LOAD,
}
],
features: [Feature.MINTABLE, Feature.FRAGMENTSINGLE],
fragments: []
}
}
};
export default idverificationProjectConfig;