1- // Copyright (c) 2021 MC-Market (Mick Capital Pty. Ltd.)
2- // MIT License (https://github.com/MC-Market-org/ js-api-wrapper/blob/main/LICENSE)
1+ // Copyright (c) 2021 Harry [Majored] [[email protected] ] 2+ // MIT License (https://github.com/Majored/mcm- js-api-wrapper/blob/main/LICENSE)
33
4- // TODO
4+ const { Wrapper, Token, TokenType } = require ( "mcm-js-api-wrapper" ) ;
5+ const fs = require ( "fs" )
6+
7+ let token = new Token ( TokenType . PRIVATE , "Find @ https://www.mc-market.org/account/api" ) ;
8+ let wrapper = new Wrapper ( ) ;
9+
10+ async function main ( ) {
11+ await run ( ) . catch ( error => console . log ( error . toString ( ) ) ) ;
12+ }
13+
14+ async function run ( ) {
15+ await wrapper . init ( token ) ;
16+
17+ let ownedResources = await wrapper . resources ( ) . listOwnedAll ( ) ;
18+ let fileData = "Resource ID,Purchase ID,Member ID,Renewal,Price,Currency,Date\n" ;
19+
20+ for ( const rIndex in ownedResources ) {
21+ let resourceId = ownedResources [ rIndex ] [ "resource_id" ] ;
22+ let purchases = await wrapper . resources ( ) . purchases ( ) . listAll ( resourceId ) ;
23+
24+ for ( const pIndex in purchases ) {
25+ let purchaseId = purchases [ pIndex ] [ "purchase_id" ] ;
26+ let memberId = purchases [ pIndex ] [ "purchaser_id" ] ;
27+ let renewal = purchases [ pIndex ] [ "renewal" ] ;
28+ let price = purchases [ pIndex ] [ "price" ] ;
29+ let currency = purchases [ pIndex ] [ "currency" ] ;
30+ let date = purchases [ pIndex ] [ "purchase_date" ] ;
31+
32+ fileData += `${ resourceId } ,${ purchaseId } ,${ memberId } ,${ renewal } ,${ price } ,${ currency } ,${ date } \n` ;
33+ }
34+
35+ console . log ( `Fetched all purchases for ${ resourceId } .` ) ;
36+ }
37+
38+ await fs . promises . writeFile ( "./purchases.json" , fileData , { encoding : 'utf8' } ) ;
39+ console . log ( "Done!" ) ;
40+ }
41+
42+ main ( ) ;
0 commit comments