Flipside Team2024-08-26 04:14 PM
    Updated 2024-08-29
    WITH Date_Range AS (
    SELECT
    date_trunc('day', (current_date - seq4())) as date
    FROM
    table(generator(rowcount => 365))
    ),

    NPT_rewward_price_tab AS (
    SELECT
    TO_TIMESTAMP(log.value[0] :: string) as date,
    log.value[1]::string as price,
    'NPT' :: string AS token_symbol,
    '0xe06597d02a2c3aa7a9708de2cfa587b128bd3815' :: string AS token_contract
    FROM (SELECT livequery.live.udf_api('https://api.coingecko.com/api/v3/coins/neopin/market_chart?vs_currency=usd&days=365&interval=daily&precision=3') as resp)
    ,LATERAL FLATTEN (input => resp:data:prices) log
    ),

    neopin_pools_tab AS (
    SELECT
    log.value:PAIR AS pool_name,
    log.value:EXID :: STRING AS exid
    FROM (SELECT livequery.live.udf_api( 'https://flipsidecrypto.xyz/api/v1/queries/1cc027e8-540a-4b33-b08c-c93a63825a5c/data/latest') as resp )
    ,LATERAL FLATTEN (input => resp:data) log
    ),

    raw_reward_tab AS (
    SELECT
    block_timestamp,
    tx_hash,
    CONCAT('0x', SUBSTR(topics [1] :: STRING, 10+17, 40)) AS user,
    TRY_TO_NUMBER(ethereum.public.udf_hex_to_int(topics[2] :: STRING)) + 1 AS pool_ex_id,
    TRY_TO_NUMBER(ethereum.public.udf_hex_to_int(SUBSTR(data :: STRING, 10+17, 40))) AS raw_amount,
    raw_amount/pow(10,18) AS npt_amount,
    npt_amount * price AS usd_amount
    FROM kaia.core.fact_event_logs a
    JOIN NPT_rewward_price_tab c on date_trunc('day' , a.block_timestamp) = c.date
    QueryRunArchived: QueryRun has been archived