diff --git a/docs/build/oracle.mdx b/docs/build/oracle.mdx deleted file mode 100644 index e062160b5..000000000 --- a/docs/build/oracle.mdx +++ /dev/null @@ -1,85 +0,0 @@ ---- -id: oracle -sidebar_label: Oracle ---- - -# Introduction - -Oracles are devices or entities that connect a blockchain network to the outside world. -They enable smart contracts to access all kinds of off-chain information by entering every data input through an external transaction. - -# Umbrella - -## Available Price feeds - -https://umbrella-network.github.io/technical-documentation/umbrella-network/docs/price-feeds.html - -## Deployed Smart contracts - -https://umbrella-network.github.io/technical-documentation/umbrella-network/docs/umb-token-contracts.html#contract-registry - -# Example: fetching a price feed - -```tsx -import keccak256 from '@indeliblelabs/keccak256'; -import { - Args, - IDeserializedResult, - ISerializable, - JsonRpcPublicProvider, -} from '@massalabs/massa-web3'; - -export class PriceData implements ISerializable { - constructor( - private data = 0n, - private heartbeat = 0n, - private timestamp = 0n, - private price = 0n, - ) {} - - serialize(): Uint8Array { - let args = new Args() - .addU8(this.data) - .addU32(this.heartbeat) - .addU32(this.timestamp) - .addU128(this.price); - return new Uint8Array(args.serialize()); - } - deserialize( - data: Uint8Array, - offset: number, - ): IDeserializedResult { - const args = new Args(data, offset); - this.data = args.nextU8(); - this.heartbeat = args.nextU32(); - this.timestamp = args.nextU32(); - this.price = args.nextU128(); - return { instance: this, offset: args.getOffset() }; - } -} - -const RegistryContract = 'AS1xBPxEPYoqnXEgC2nJN5s6oeJdKobVqZF3CTvSQCtK582fSDhR'; -const publicProvider = JsonRpcPublicProvider.mainnet(); - -let resp = await publicProvider.readSC({ - target: RegistryContract, - func: 'getAddressByString', - parameter : new Args().addString('UmbrellaFeeds'), -}); - -const UMBPriceFeedContract = new Args(resp.value).nextString(); - -console.log('UMBPriceFeedContract:', UMBPriceFeedContract); - -const pairhash = keccak256('BTC-USD'); -const parameter = new Args().addUint8Array(new Uint8Array(pairhash)); - -resp = await publicProvider.readSC({ - target: UMBPriceFeedContract, - func: 'getPriceData', - parameter, -}); - -const priceData = new Args(resp.value).nextSerializable(PriceData); -console.log('priceData:', priceData); -``` diff --git a/sidebars.js b/sidebars.js index 073b70ac4..0c964bc39 100644 --- a/sidebars.js +++ b/sidebars.js @@ -460,10 +460,6 @@ const sidebars = { type: "doc", id: "build/standards", }, - { - type: "doc", - id: "build/oracle", - }, ], nodeSidebar: [ {