chore: code formatting
This commit is contained in:
@@ -6,63 +6,60 @@ export default async function({login, q, imports, data, account}, {enabled = fal
|
|||||||
if ((!q.crypto) || (!imports.metadata.plugins.crypto.enabled(enabled, {extras})))
|
if ((!q.crypto) || (!imports.metadata.plugins.crypto.enabled(enabled, {extras})))
|
||||||
return null
|
return null
|
||||||
|
|
||||||
//Load inputs
|
//Load inputs
|
||||||
let {id, days, vs_currency, precision } = imports.metadata.plugins.crypto.inputs({data, account, q})
|
let {id, days, vs_currency, precision} = imports.metadata.plugins.crypto.inputs({data, account, q})
|
||||||
if (!id)
|
if (!id)
|
||||||
throw { error: { message: "Crypto currency id is not set" } }
|
throw {error: {message: "Crypto currency id is not set"}}
|
||||||
|
|
||||||
console.debug(`metrics/compute/${login}/plugins > crypto > querying api for crypto`)
|
console.debug(`metrics/compute/${login}/plugins > crypto > querying api for crypto`)
|
||||||
|
|
||||||
const {
|
const {
|
||||||
data: coin
|
data: coin,
|
||||||
} = await imports.axios.get(`https://api.coingecko.com/api/v3/coins/${id}`,
|
} = await imports.axios.get(`https://api.coingecko.com/api/v3/coins/${id}`, {
|
||||||
{
|
params: {
|
||||||
params: {
|
market_data: true,
|
||||||
market_data:true
|
},
|
||||||
}
|
})
|
||||||
})
|
|
||||||
|
|
||||||
if (!coin) {
|
if (!coin)
|
||||||
throw {error: {message: "Crypto currency not found"}}
|
throw {error: {message: "Crypto currency not found"}}
|
||||||
}
|
|
||||||
|
|
||||||
const {
|
const {
|
||||||
data: { prices },
|
data: {prices},
|
||||||
} = await imports.axios.get(`https://api.coingecko.com/api/v3/coins/${id}/market_chart`, {
|
} = await imports.axios.get(`https://api.coingecko.com/api/v3/coins/${id}/market_chart`, {
|
||||||
params: {
|
params: {
|
||||||
vs_currency,
|
vs_currency,
|
||||||
days,
|
days,
|
||||||
precision
|
precision,
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
const chart = imports.Graph.timeline(
|
const chart = imports.Graph.timeline(
|
||||||
prices.map((y, _) => ({ x: new Date(y[0]), y: y[1] })),
|
prices.map((y, _) => ({x: new Date(y[0]), y: y[1]})),
|
||||||
{
|
{
|
||||||
low: Math.min(...prices.map((y, _) => y[1])),
|
low: Math.min(...prices.map((y, _) => y[1])),
|
||||||
|
|
||||||
high: Math.max(...prices.map((y, _) => y[1])),
|
high: Math.max(...prices.map((y, _) => y[1])),
|
||||||
|
|
||||||
points: false, text: false,
|
points: false,
|
||||||
|
text: false,
|
||||||
width: 480 * (1 + data.large),
|
width: 480 * (1 + data.large),
|
||||||
height: 200
|
height: 200,
|
||||||
}
|
},
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
//Results
|
//Results
|
||||||
return {
|
return {
|
||||||
chart,
|
chart,
|
||||||
id,
|
id,
|
||||||
precision,
|
precision,
|
||||||
days:{"1":"Today", "14":"2 Weeks", "30":"1 Month", max :"All-time"}[days],
|
days: {"1": "Today", "14": "2 Weeks", "30": "1 Month", max: "All-time"}[days],
|
||||||
symbol: coin.symbol,
|
symbol: coin.symbol,
|
||||||
name: coin.name,
|
name: coin.name,
|
||||||
current_price: coin.market_data.current_price[vs_currency],
|
current_price: coin.market_data.current_price[vs_currency],
|
||||||
price_change_percentage_24h: coin.market_data.price_change_percentage_24h,
|
price_change_percentage_24h: coin.market_data.price_change_percentage_24h,
|
||||||
vs_currency,
|
vs_currency,
|
||||||
logo:coin.image.small,
|
logo: coin.image.small,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//Handle errors
|
//Handle errors
|
||||||
@@ -70,4 +67,3 @@ export default async function({login, q, imports, data, account}, {enabled = fal
|
|||||||
throw imports.format.error(error)
|
throw imports.format.error(error)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user