Skip to content

Commit

Permalink
refactor adapter to have price/lwba endoints
Browse files Browse the repository at this point in the history
  • Loading branch information
akuzni2 committed Feb 1, 2025
1 parent f32e247 commit 507c4f9
Show file tree
Hide file tree
Showing 7 changed files with 483 additions and 357 deletions.
1 change: 1 addition & 0 deletions packages/composites/glv-token/src/endpoint/index.ts
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
export { endpoint as price } from './price'
export { endpoint as lwba } from './lwba'
38 changes: 38 additions & 0 deletions packages/composites/glv-token/src/endpoint/lwba.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
import {
AdapterEndpoint,
LwbaResponseDataFields,
} from '@chainlink/external-adapter-framework/adapter'
import { InputParameters } from '@chainlink/external-adapter-framework/validation'
import { config } from '../config'
import { glvLwbaTransport } from '../transport/lwba'

export const inputParameters = new InputParameters(
{
glv: {
required: true,
type: 'string',
description: 'Glv address',
},
},
[
{
glv: '0x528A5bac7E746C9A509A1f4F6dF58A03d44279F9',
},
],
)

export type BaseEndpointTypesLwba = {
Parameters: typeof inputParameters.definition
Response: LwbaResponseDataFields & {
Data: {
sources: Record<string, string[]>
}
}
Settings: typeof config.settings
}

export const endpoint = new AdapterEndpoint({
name: 'crypto-lwba',
transport: glvLwbaTransport,
inputParameters,
})
4 changes: 2 additions & 2 deletions packages/composites/glv-token/src/endpoint/price.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import { AdapterEndpoint } from '@chainlink/external-adapter-framework/adapter'
import { InputParameters } from '@chainlink/external-adapter-framework/validation'
import { SingleNumberResultResponse } from '@chainlink/external-adapter-framework/util'
import { config } from '../config'
import { glvTokenTransport } from '../transport/price'
import { glvPriceTransport } from '../transport/price'

export const inputParameters = new InputParameters(
{
Expand Down Expand Up @@ -31,6 +31,6 @@ export type BaseEndpointTypes = {

export const endpoint = new AdapterEndpoint({
name: 'price',
transport: glvTokenTransport,
transport: glvPriceTransport,
inputParameters,
})
4 changes: 2 additions & 2 deletions packages/composites/glv-token/src/index.ts
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
import { expose, ServerInstance } from '@chainlink/external-adapter-framework'
import { Adapter } from '@chainlink/external-adapter-framework/adapter'
import { config } from './config'
import { price } from './endpoint'
import { lwba, price } from './endpoint'

export const adapter = new Adapter({
defaultEndpoint: price.name,
name: 'GLV_TOKEN',
config,
endpoints: [price],
endpoints: [price, lwba],
})

export const server = (): Promise<ServerInstance | undefined> => expose(adapter)
Loading

0 comments on commit 507c4f9

Please sign in to comment.