Example Projects
Appraisals
import { ContractConfig, Feature, FunctionConfig, MintConfig, ProjectConfig } from "@patchworkdev/common/types";
const appraisalsProjectConfig: ProjectConfig = {
name: "appraisals",
scopes: [
{
name: "myscope",
whitelist: true,
userAssign: false,
userPatch: false,
mintConfigs: {},
patchFees: {},
assignFees: {}
}
],
contracts: {
"AppraisalPatch": {
scopeName: "myscope",
name: "AppraisalPatch",
symbol: "APPAT",
baseURI: "https://replace-me-with-website/",
schemaURI: "https://replace-me-with-website/schemas/appraisalpatch.json",
imageURI: "https://replace-me-with-website/assets/appraisalpatch/{tokenID}",
fields: [
{
id: 0,
key: "nonce",
type: "uint64",
description: "Signature Nonce - New appraisals must be greater",
},
{
id: 1,
key: "appraisals",
type: "literef",
description: "Appraisals",
arrayLength: 8,
}
],
features: [Feature.PATCH],
fragments: ["Appraisal"]
},
"Appraisal1155Patch": {
scopeName: "myscope",
name: "Appraisal1155Patch",
symbol: "APPAT5",
baseURI: "https://replace-me-with-website/",
schemaURI: "https://replace-me-with-website/schemas/appraisal1155patch.json",
imageURI: "https://replace-me-with-website/assets/appraisal1155patch/{tokenID}",
fields: [
{
id: 0,
key: "nonce",
type: "uint64",
description: "Signature Nonce - New appraisals must be greater",
},
{
id: 1,
key: "appraisals",
type: "literef",
description: "Appraisals",
arrayLength: 8,
}
],
features: [Feature["1155PATCH"]],
fragments: ["Appraisal"]
},
"Appraisal": {
scopeName: "myscope",
name: "Appraisal",
symbol: "APPR",
baseURI: "https://replace-me-with-website/",
schemaURI: "https://replace-me-with-website/schemas/appraisal.json",
imageURI: "https://replace-me-with-website/assets/appraisal/{tokenID}",
fields: [
{
id: 0,
key: "createdat",
type: "uint64",
description: "CreatedAt Timestamp (seconds since epoch)",
functionConfig: FunctionConfig.LOAD,
},
{
id: 1,
key: "appraiser",
type: "address",
description: "Appraiser",
functionConfig: FunctionConfig.LOAD,
},
{
id: 2,
key: "nonce",
type: "uint64",
description: "Nonce",
functionConfig: FunctionConfig.LOAD,
},
{
id: 3,
key: "signature",
type: "uint256",
description: "Appraiser Signature",
functionConfig: FunctionConfig.LOAD,
},
{
id: 4,
key: "value",
type: "uint256",
description: "Appraised Value",
functionConfig: FunctionConfig.LOAD,
}
],
features: [Feature.MINTABLE, Feature.FRAGMENTSINGLE],
fragments: []
}
}
};
export default appraisalsProjectConfig;