@@ -4,6 +4,7 @@ const express = require('express')
44const cors = require ( 'cors' )
55const _ = require ( 'lodash' )
66const conseilUtil = require ( './conseilUtil' )
7+ const { random } = require ( 'lodash' )
78require ( 'dotenv' ) . config ( )
89
910const reducer = ( accumulator , currentValue ) => parseInt ( accumulator ) + parseInt ( currentValue )
@@ -34,7 +35,7 @@ const getTokenHoldersArr = async (arr) => {
3435 return await arr . map ( async e => await axios . get ( 'https://api.better-call.dev/v1/contract/mainnet/KT1RJ6PbjHpwc3M5rw5s2Nbmefwbuwbdxton/tokens/holders?token_id=' + e ) . then ( res => res . data ) )
3536 /* await axios.get('https://api.better-call.dev/v1/contract/mainnet/KT1RJ6PbjHpwc3M5rw5s2Nbmefwbuwbdxton/tokens/holders?token_id=' + arr[0]).then(res => console.log(res.data))
3637 */ /* var result = arr.map(async e => {
37- return await axios.get('https://api.better-call.dev/v1/contract/mainnet/KT1RJ6PbjHpwc3M5rw5s2Nbmefwbuwbdxton/tokens/holders?token_id=' + e).then(res => res.data)
38+ return await axios.get('https://api.better-call.dev/v1/contract/mainnet/KT1RJ6PbjHpwc3M5rw5s2Nbmefwbuwbdxton/tokens/holders?token_id=' + e).then(res => res.data)
3839})
3940
4041console.log(result) */
@@ -54,8 +55,8 @@ const totalAmountIntegral = async (obj) => {
5455 var owners = await axios . get ( 'https://api.better-call.dev/v1/contract/mainnet/KT1RJ6PbjHpwc3M5rw5s2Nbmefwbuwbdxton/tokens/holders?token_id=' + obj . token_id ) . then ( res => res . data )
5556 console . log ( owners )
5657 var values_arr = ( _ . values ( owners ) )
57- obj . total_amount = ( values_arr . map ( e => parseInt ( e ) ) ) . length > 0 ?( values_arr . filter ( e => parseInt ( e ) ) ) : 0
58-
58+ obj . total_amount = ( values_arr . map ( e => parseInt ( e ) ) ) . length > 0 ? ( values_arr . filter ( e => parseInt ( e ) ) ) : 0
59+
5960 obj . owners = owners
6061 return obj
6162}
@@ -71,7 +72,7 @@ const objktOwners = async (arr) => {
7172
7273
7374const getObjktLedger = async ( ) => await axios . get ( 'https://better-call.dev/v1/bigmap/mainnet/511/keys?size=6500' ) . then ( res => res . data . map ( e => ( { amount : parseInt ( e . data . value . value ) , tz : e . data . key . children [ 0 ] . value , tk_id : parseInt ( e . data . key . children [ 1 ] . value ) } ) ) )
74- const gethDAOLedger = async ( ) => await axios . get ( 'https://api.better-call.dev/v1/bigmap/mainnet/519/keys?size=4000' ) . then ( res => res . data . map ( e => {
75+ const gethDAOLedger = async ( counter ) => await axios . get ( 'https://api.better-call.dev/v1/bigmap/mainnet/519/keys?size=10&offset=' + counter * 10 ) . then ( res => res . data . map ( e => {
7576 return { token_id : parseInt ( e . data . key . value ) , hDAO_balance : parseInt ( e . data . value . children [ 0 ] . value ) }
7677} ) )
7778
@@ -134,6 +135,23 @@ const customFloor = function (value, roundTo) {
134135
135136const ONE_MINUTE_MILLIS = 60 * 1000
136137
138+ const randomFeed = async ( counter , res ) => {
139+ var feed = await conseilUtil . getArtisticUniverse ( 0 )
140+ feed = offset ( _ . shuffle ( feed ) , counter )
141+ feed = await feed . map ( async e => {
142+ e . token_info = await getIpfsHash ( e . ipfsHash )
143+ e . token_id = parseInt ( e . objectId )
144+ console . log ( e )
145+ return e
146+ } )
147+ var promise = Promise . all ( feed . map ( e => e ) )
148+ promise . then ( async ( results ) => {
149+ var aux_arr = results . map ( e => e )
150+ //res.set('Cache-Control', `public, max-age=${cache_time}`)
151+ console . log ( aux_arr )
152+ res . json ( { result : aux_arr } )
153+ } )
154+ }
137155
138156const getFeed = async ( counter , res ) => {
139157
@@ -246,13 +264,16 @@ const mergehDAO = async (obj) => {
246264}
247265
248266const hDAOFeed = async ( counter , res ) => {
249- var hDAO = await gethDAOLedger ( )
250- var arr = _ . orderBy ( hDAO , [ 'hDAO_balance' ] , [ 'desc' ] )
251- var objkts = await arr . map ( async e => await mergehDAO ( e ) )
267+
268+ var hDAO = await conseilUtil . hDAOFeed ( )
269+ var set = _ . orderBy ( hDAO , [ 'hDAO_balance' ] , [ 'desc' ] )
270+ var objkts = await ( offset ( set , 0 ) ) . map ( async e => await mergehDAO ( e ) )
271+
252272 var promise = Promise . all ( objkts . map ( e => e ) )
253273 promise . then ( results => {
254274 var result = results . map ( e => e )
255- res . json ( { result : offset ( result , counter ) } )
275+ console . log ( result )
276+ res . json ( { result : result } )
256277 } ) . catch ( e => {
257278 res . status ( 500 ) . json ( { error : 'downstream API failure' } )
258279 } )
@@ -283,6 +304,10 @@ app.post('/feed', async (req, res) => {
283304 await getFeed ( req . body . counter , res )
284305} )
285306
307+ app . post ( '/random' , async ( req , res ) => {
308+ await randomFeed ( parseInt ( req . body . counter ) , res )
309+ } )
310+
286311app . post ( '/tz' , async ( req , res ) => {
287312
288313 // list of restricted addresses
@@ -312,6 +337,9 @@ app.post('/hdao', async (req, res) => {
312337 await hDAOFeed ( parseInt ( req . body . counter ) , res )
313338} )
314339
315- //app.listen(3001)
316- module . exports . handler = serverless ( app )
340+ const testhdao = async ( ) => await hDAOFeed ( parseInt ( 0 ) )
341+ //testhdao()
342+
343+ app . listen ( 3001 )
344+ //module.exports.handler = serverless(app)
317345
0 commit comments