/ app / actions / getPosts.ts
getPosts.ts
 1  // "use server";
 2  
 3  // import { readContract } from '@wagmi/core'
 4  
 5  // const abi = {
 6  //     "_format": "hh-sol-artifact-1",
 7  //     "contractName": "MasterFactory",
 8  //     "sourceName": "contracts/MasterFactory.sol",
 9  //     "abi": [
10  //         {
11  //             "anonymous": false,
12  //             "inputs": [
13  //                 {
14  //                     "indexed": true,
15  //                     "internalType": "address",
16  //                     "name": "userProfileAddress",
17  //                     "type": "address"
18  //                 },
19  //                 {
20  //                     "indexed": true,
21  //                     "internalType": "address",
22  //                     "name": "owner",
23  //                     "type": "address"
24  //                 }
25  //             ],
26  //             "name": "DeployedUserProfile",
27  //             "type": "event"
28  //         },
29  //         {
30  //             "inputs": [],
31  //             "name": "deployUserProfile",
32  //             "outputs": [
33  //                 {
34  //                     "internalType": "address",
35  //                     "name": "userProfileAddress",
36  //                     "type": "address"
37  //                 }
38  //             ],
39  //             "stateMutability": "nonpayable",
40  //             "type": "function"
41  //         },
42  //         {
43  //             "inputs": [],
44  //             "name": "getAllUserProfiles",
45  //             "outputs": [
46  //                 {
47  //                     "internalType": "address[]",
48  //                     "name": "",
49  //                     "type": "address[]"
50  //                 }
51  //             ],
52  //             "stateMutability": "view",
53  //             "type": "function"
54  //         },
55  //         {
56  //             "inputs": [
57  //                 {
58  //                     "internalType": "uint256",
59  //                     "name": "",
60  //                     "type": "uint256"
61  //                 }
62  //             ],
63  //             "name": "userProfileContracts",
64  //             "outputs": [
65  //                 {
66  //                     "internalType": "address",
67  //                     "name": "",
68  //                     "type": "address"
69  //                 }
70  //             ],
71  //             "stateMutability": "view",
72  //             "type": "function"
73  //         }
74  //     ],
75  //     "bytecode": "0x6080604052348015600f57600080fd5b50610f548061001f6000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063a2664b1014610046578063efbeebae14610064578063fc6e94bd14610094575b600080fd5b61004e6100b2565b60405161005b91906102bf565b60405180910390f35b61007e60048036038101906100799190610315565b6101a4565b60405161008b91906102bf565b60405180910390f35b61009c6101e3565b6040516100a99190610400565b60405180910390f35b6000806040516100c190610271565b604051809103906000f0801580156100dd573d6000803e3d6000fd5b5090506000819080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167fa4d9052f306a63eb2ceec77690b81ebfdf2cab4899f26013f531716e652f2d2360405160405180910390a38091505090565b600081815481106101b457600080fd5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6060600080548060200260200160405190810160405280929190818152602001828054801561026757602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001906001019080831161021d575b5050505050905090565b610afc8061042383390190565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006102a98261027e565b9050919050565b6102b98161029e565b82525050565b60006020820190506102d460008301846102b0565b92915050565b600080fd5b6000819050919050565b6102f2816102df565b81146102fd57600080fd5b50565b60008135905061030f816102e9565b92915050565b60006020828403121561032b5761032a6102da565b5b600061033984828501610300565b91505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6103778161029e565b82525050565b6000610389838361036e565b60208301905092915050565b6000602082019050919050565b60006103ad82610342565b6103b7818561034d565b93506103c28361035e565b8060005b838110156103f35781516103da888261037d565b97506103e583610395565b9250506001810190506103c6565b5085935050505092915050565b6000602082019050818103600083015261041a81846103a2565b90509291505056fe6080604052348015600f57600080fd5b50610add8061001f6000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80630f53a4701461003b578063526403141461006d575b600080fd5b610055600480360381019061005091906104e0565b610089565b6040516100649392919061059d565b60405180910390f35b6100876004803603810190610082919061064e565b6102ae565b005b606080606060008060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206040518060600160405290816000820180546100e990610731565b80601f016020809104026020016040519081016040528092919081815260200182805461011590610731565b80156101625780601f1061013757610100808354040283529160200191610162565b820191906000526020600020905b81548152906001019060200180831161014557829003601f168201915b5050505050815260200160018201805461017b90610731565b80601f01602080910402602001604051908101604052809291908181526020018280546101a790610731565b80156101f45780601f106101c9576101008083540402835291602001916101f4565b820191906000526020600020905b8154815290600101906020018083116101d757829003601f168201915b5050505050815260200160028201805461020d90610731565b80601f016020809104026020016040519081016040528092919081815260200182805461023990610731565b80156102865780601f1061025b57610100808354040283529160200191610286565b820191906000526020600020905b81548152906001019060200180831161026957829003601f168201915b5050505050815250509050806000015181602001518260400151935093509350509193909250565b604051806060016040528087878080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050815260200185858080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050815260200183838080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508152506000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000190816103e89190610947565b5060208201518160010190816103fe9190610947565b5060408201518160020190816104149190610947565b509050503373ffffffffffffffffffffffffffffffffffffffff167f6420daf1b58438e85465ef21dee378d307a509caab491149e3f066c5caf1266d87878787878760405161046896959493929190610a55565b60405180910390a2505050505050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006104ad82610482565b9050919050565b6104bd816104a2565b81146104c857600080fd5b50565b6000813590506104da816104b4565b92915050565b6000602082840312156104f6576104f5610478565b5b6000610504848285016104cb565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561054757808201518184015260208101905061052c565b60008484015250505050565b6000601f19601f8301169050919050565b600061056f8261050d565b6105798185610518565b9350610589818560208601610529565b61059281610553565b840191505092915050565b600060608201905081810360008301526105b78186610564565b905081810360208301526105cb8185610564565b905081810360408301526105df8184610564565b9050949350505050565b600080fd5b600080fd5b600080fd5b60008083601f84011261060e5761060d6105e9565b5b8235905067ffffffffffffffff81111561062b5761062a6105ee565b5b602083019150836001820283011115610647576106466105f3565b5b9250929050565b6000806000806000806060878903121561066b5761066a610478565b5b600087013567ffffffffffffffff8111156106895761068861047d565b5b61069589828a016105f8565b9650965050602087013567ffffffffffffffff8111156106b8576106b761047d565b5b6106c489828a016105f8565b9450945050604087013567ffffffffffffffff8111156106e7576106e661047d565b5b6106f389828a016105f8565b92509250509295509295509295565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061074957607f821691505b60208210810361075c5761075b610702565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026107f37fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826107b6565b6107fd86836107b6565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b600061084461083f61083a84610815565b61081f565b610815565b9050919050565b6000819050919050565b61085e83610829565b61087261086a8261084b565b8484546107c3565b825550505050565b600090565b61088761087a565b610892818484610855565b505050565b5b818110156108b6576108ab60008261087f565b600181019050610898565b5050565b601f8211156108fb576108cc81610791565b6108d5846107a6565b810160208510156108e4578190505b6108f86108f0856107a6565b830182610897565b50505b505050565b600082821c905092915050565b600061091e60001984600802610900565b1980831691505092915050565b6000610937838361090d565b9150826002028217905092915050565b6109508261050d565b67ffffffffffffffff81111561096957610968610762565b5b6109738254610731565b61097e8282856108ba565b600060209050601f8311600181146109b1576000841561099f578287015190505b6109a9858261092b565b865550610a11565b601f1984166109bf86610791565b60005b828110156109e7578489015182556001820191506020850194506020810190506109c2565b86831015610a045784890151610a00601f89168261090d565b8355505b6001600288020188555050505b505050505050565b82818337600083830152505050565b6000610a348385610518565b9350610a41838584610a19565b610a4a83610553565b840190509392505050565b60006060820190508181036000830152610a7081888a610a28565b90508181036020830152610a85818688610a28565b90508181036040830152610a9a818486610a28565b905097965050505050505056fea2646970667358221220d70e8b24eea1328ca445a4bd7eb9783e2ca17de50203720457bc488893dee32f64736f6c634300081c0033a26469706673582212209c3a06e3d0a85227369c72e263916de037ea3d99bf11f8ce7dafe216825524c564736f6c634300081c0033",
76  //     "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100415760003560e01c8063a2664b1014610046578063efbeebae14610064578063fc6e94bd14610094575b600080fd5b61004e6100b2565b60405161005b91906102bf565b60405180910390f35b61007e60048036038101906100799190610315565b6101a4565b60405161008b91906102bf565b60405180910390f35b61009c6101e3565b6040516100a99190610400565b60405180910390f35b6000806040516100c190610271565b604051809103906000f0801580156100dd573d6000803e3d6000fd5b5090506000819080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167fa4d9052f306a63eb2ceec77690b81ebfdf2cab4899f26013f531716e652f2d2360405160405180910390a38091505090565b600081815481106101b457600080fd5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6060600080548060200260200160405190810160405280929190818152602001828054801561026757602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001906001019080831161021d575b5050505050905090565b610afc8061042383390190565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006102a98261027e565b9050919050565b6102b98161029e565b82525050565b60006020820190506102d460008301846102b0565b92915050565b600080fd5b6000819050919050565b6102f2816102df565b81146102fd57600080fd5b50565b60008135905061030f816102e9565b92915050565b60006020828403121561032b5761032a6102da565b5b600061033984828501610300565b91505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6103778161029e565b82525050565b6000610389838361036e565b60208301905092915050565b6000602082019050919050565b60006103ad82610342565b6103b7818561034d565b93506103c28361035e565b8060005b838110156103f35781516103da888261037d565b97506103e583610395565b9250506001810190506103c6565b5085935050505092915050565b6000602082019050818103600083015261041a81846103a2565b90509291505056fe6080604052348015600f57600080fd5b50610add8061001f6000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80630f53a4701461003b578063526403141461006d575b600080fd5b610055600480360381019061005091906104e0565b610089565b6040516100649392919061059d565b60405180910390f35b6100876004803603810190610082919061064e565b6102ae565b005b606080606060008060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206040518060600160405290816000820180546100e990610731565b80601f016020809104026020016040519081016040528092919081815260200182805461011590610731565b80156101625780601f1061013757610100808354040283529160200191610162565b820191906000526020600020905b81548152906001019060200180831161014557829003601f168201915b5050505050815260200160018201805461017b90610731565b80601f01602080910402602001604051908101604052809291908181526020018280546101a790610731565b80156101f45780601f106101c9576101008083540402835291602001916101f4565b820191906000526020600020905b8154815290600101906020018083116101d757829003601f168201915b5050505050815260200160028201805461020d90610731565b80601f016020809104026020016040519081016040528092919081815260200182805461023990610731565b80156102865780601f1061025b57610100808354040283529160200191610286565b820191906000526020600020905b81548152906001019060200180831161026957829003601f168201915b5050505050815250509050806000015181602001518260400151935093509350509193909250565b604051806060016040528087878080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050815260200185858080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050815260200183838080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508152506000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000190816103e89190610947565b5060208201518160010190816103fe9190610947565b5060408201518160020190816104149190610947565b509050503373ffffffffffffffffffffffffffffffffffffffff167f6420daf1b58438e85465ef21dee378d307a509caab491149e3f066c5caf1266d87878787878760405161046896959493929190610a55565b60405180910390a2505050505050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006104ad82610482565b9050919050565b6104bd816104a2565b81146104c857600080fd5b50565b6000813590506104da816104b4565b92915050565b6000602082840312156104f6576104f5610478565b5b6000610504848285016104cb565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561054757808201518184015260208101905061052c565b60008484015250505050565b6000601f19601f8301169050919050565b600061056f8261050d565b6105798185610518565b9350610589818560208601610529565b61059281610553565b840191505092915050565b600060608201905081810360008301526105b78186610564565b905081810360208301526105cb8185610564565b905081810360408301526105df8184610564565b9050949350505050565b600080fd5b600080fd5b600080fd5b60008083601f84011261060e5761060d6105e9565b5b8235905067ffffffffffffffff81111561062b5761062a6105ee565b5b602083019150836001820283011115610647576106466105f3565b5b9250929050565b6000806000806000806060878903121561066b5761066a610478565b5b600087013567ffffffffffffffff8111156106895761068861047d565b5b61069589828a016105f8565b9650965050602087013567ffffffffffffffff8111156106b8576106b761047d565b5b6106c489828a016105f8565b9450945050604087013567ffffffffffffffff8111156106e7576106e661047d565b5b6106f389828a016105f8565b92509250509295509295509295565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061074957607f821691505b60208210810361075c5761075b610702565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026107f37fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826107b6565b6107fd86836107b6565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b600061084461083f61083a84610815565b61081f565b610815565b9050919050565b6000819050919050565b61085e83610829565b61087261086a8261084b565b8484546107c3565b825550505050565b600090565b61088761087a565b610892818484610855565b505050565b5b818110156108b6576108ab60008261087f565b600181019050610898565b5050565b601f8211156108fb576108cc81610791565b6108d5846107a6565b810160208510156108e4578190505b6108f86108f0856107a6565b830182610897565b50505b505050565b600082821c905092915050565b600061091e60001984600802610900565b1980831691505092915050565b6000610937838361090d565b9150826002028217905092915050565b6109508261050d565b67ffffffffffffffff81111561096957610968610762565b5b6109738254610731565b61097e8282856108ba565b600060209050601f8311600181146109b1576000841561099f578287015190505b6109a9858261092b565b865550610a11565b601f1984166109bf86610791565b60005b828110156109e7578489015182556001820191506020850194506020810190506109c2565b86831015610a045784890151610a00601f89168261090d565b8355505b6001600288020188555050505b505050505050565b82818337600083830152505050565b6000610a348385610518565b9350610a41838584610a19565b610a4a83610553565b840190509392505050565b60006060820190508181036000830152610a7081888a610a28565b90508181036020830152610a85818688610a28565b90508181036040830152610a9a818486610a28565b905097965050505050505056fea2646970667358221220d70e8b24eea1328ca445a4bd7eb9783e2ca17de50203720457bc488893dee32f64736f6c634300081c0033a26469706673582212209c3a06e3d0a85227369c72e263916de037ea3d99bf11f8ce7dafe216825524c564736f6c634300081c0033",
77  //     "linkReferences": {},
78  //     "deployedLinkReferences": {}
79  // }
80  
81  
82  // export async function getPosts() {
83  //     try {
84  //         const data = await readContract({
85  //             abi,
86  //             address: "0xa513E6E4b8f2a923D98304ec87F64353C4D5C853",
87  //             functionName: "getAllUserProfiles"
88  //         })
89  //         return data
90  //     } catch (error) {
91  //         console.error("Error reading contract:", error)
92  //         return []
93  //     }
94  // }
95  
96  // export default getPosts