@xyo-network/react-ethereum-gas-price-blocknative-plugin 3.0.15 → 3.0.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser/components/Card/Card.d.ts.map +1 -1
- package/dist/browser/components/Card/CardContent.d.ts.map +1 -1
- package/dist/browser/components/Details/Box/BlocknativeGasPriceDetailsBox.d.ts +2 -2
- package/dist/browser/components/Details/Box/BlocknativeGasPriceDetailsBox.d.ts.map +1 -1
- package/dist/browser/components/hooks/{useBlocknativeTransformer.d.ts → getBlocknativeTransformer.d.ts} +2 -2
- package/dist/browser/components/hooks/getBlocknativeTransformer.d.ts.map +1 -0
- package/dist/browser/components/hooks/index.d.ts +1 -1
- package/dist/browser/index.mjs +6 -6
- package/dist/browser/index.mjs.map +1 -1
- package/package.json +7 -7
- package/src/components/Card/CardContent.tsx +2 -2
- package/src/components/Card/CardHeader.tsx +2 -2
- package/src/components/Details/Box/BlocknativeGasPriceDetailsBox.tsx +4 -4
- package/src/components/hooks/{useBlocknativeTransformer.tsx → getBlocknativeTransformer.tsx} +1 -2
- package/src/components/hooks/index.ts +1 -1
- package/dist/browser/components/hooks/useBlocknativeTransformer.d.ts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Card.d.ts","sourceRoot":"","sources":["../../../../src/components/Card/Card.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAA;AAC3E,OAAO,KAAqB,MAAM,OAAO,CAAA;AAKzC,eAAO,MAAM,uBAAuB
|
|
1
|
+
{"version":3,"file":"Card.d.ts","sourceRoot":"","sources":["../../../../src/components/Card/Card.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAA;AAC3E,OAAO,KAAqB,MAAM,OAAO,CAAA;AAKzC,eAAO,MAAM,uBAAuB;;;;;gBAUkwB,MAAO,WAAW;gDAHtzB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CardContent.d.ts","sourceRoot":"","sources":["../../../../src/components/Card/CardContent.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAA;AAE3E,OAAO,KAAqB,MAAM,OAAO,CAAA;AAMzC,eAAO,MAAM,8BAA8B
|
|
1
|
+
{"version":3,"file":"CardContent.d.ts","sourceRoot":"","sources":["../../../../src/components/Card/CardContent.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAA;AAE3E,OAAO,KAAqB,MAAM,OAAO,CAAA;AAMzC,eAAO,MAAM,8BAA8B;;;;;gBAgBrC,MAAA,WACG;gDAkBR,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { PayloadDetailsListRenderProps } from '@xyo-network/react-payload-plugin';
|
|
2
2
|
import React from 'react';
|
|
3
|
-
export declare const BlocknativeGasPriceDetailsBox: React.ForwardRefExoticComponent<
|
|
3
|
+
export declare const BlocknativeGasPriceDetailsBox: React.ForwardRefExoticComponent<PayloadDetailsListRenderProps & import("@xylabs/react-flexbox").BusyBoxProps & React.RefAttributes<HTMLDivElement>>;
|
|
4
4
|
//# sourceMappingURL=BlocknativeGasPriceDetailsBox.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BlocknativeGasPriceDetailsBox.d.ts","sourceRoot":"","sources":["../../../../../src/components/Details/Box/BlocknativeGasPriceDetailsBox.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"BlocknativeGasPriceDetailsBox.d.ts","sourceRoot":"","sources":["../../../../../src/components/Details/Box/BlocknativeGasPriceDetailsBox.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAA;AAEtF,OAAO,KAAqB,MAAM,OAAO,CAAA;AAOzC,eAAO,MAAM,6BAA6B,qJA0CzC,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { EthereumGasBlocknativePayload } from '@xyo-network/blocknative-ethereum-gas-payload-plugin';
|
|
2
2
|
import type { GasPriceWitnessUIBasePayload } from '@xyo-network/react-gas-price';
|
|
3
|
-
export declare const
|
|
4
|
-
//# sourceMappingURL=
|
|
3
|
+
export declare const getBlocknativeTransformer: (payload?: EthereumGasBlocknativePayload) => GasPriceWitnessUIBasePayload | undefined;
|
|
4
|
+
//# sourceMappingURL=getBlocknativeTransformer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getBlocknativeTransformer.d.ts","sourceRoot":"","sources":["../../../../src/components/hooks/getBlocknativeTransformer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,sDAAsD,CAAA;AACzG,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,8BAA8B,CAAA;AAEhF,eAAO,MAAM,yBAAyB,aAAc,6BAA6B,KAAG,4BAA4B,GAAG,SA6BlH,CAAA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from './
|
|
1
|
+
export * from './getBlocknativeTransformer.tsx';
|
|
2
2
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/browser/index.mjs
CHANGED
|
@@ -11,8 +11,8 @@ import { GasFeeCard, ToggleRawPayloadBox } from "@xyo-network/react-gas-price";
|
|
|
11
11
|
import { PayloadDataMissing } from "@xyo-network/react-shared";
|
|
12
12
|
import React, { forwardRef } from "react";
|
|
13
13
|
|
|
14
|
-
// src/components/hooks/
|
|
15
|
-
var
|
|
14
|
+
// src/components/hooks/getBlocknativeTransformer.tsx
|
|
15
|
+
var getBlocknativeTransformer = /* @__PURE__ */ __name((payload) => {
|
|
16
16
|
const blockPrices = payload?.blockPrices?.[0];
|
|
17
17
|
if (blockPrices && blockPrices.estimatedPrices?.length) {
|
|
18
18
|
const estimatedPrices = blockPrices?.estimatedPrices;
|
|
@@ -40,13 +40,13 @@ var useBlocknativeTransformer = /* @__PURE__ */ __name((payload) => {
|
|
|
40
40
|
website: "https://docs.Blocknative.io/v5/api/providers/provider/#Provider-getFeeData"
|
|
41
41
|
};
|
|
42
42
|
}
|
|
43
|
-
}, "
|
|
43
|
+
}, "getBlocknativeTransformer");
|
|
44
44
|
|
|
45
45
|
// src/components/Card/CardContent.tsx
|
|
46
46
|
var isEmpty = /* @__PURE__ */ __name((obj) => Object.keys(obj ?? {}).length === 0, "isEmpty");
|
|
47
47
|
var BlocknativeGasPriceCardContent = /* @__PURE__ */ forwardRef(({ payload, ...props }, ref) => {
|
|
48
48
|
const gasPricePayload = payload ? payload : void 0;
|
|
49
|
-
const parsedPayload =
|
|
49
|
+
const parsedPayload = getBlocknativeTransformer(gasPricePayload);
|
|
50
50
|
if (isEmpty(gasPricePayload) || !gasPricePayload?.blockPrices?.length) {
|
|
51
51
|
return /* @__PURE__ */ React.createElement(PayloadDataMissing, {
|
|
52
52
|
alertBody: "Payload is missing valid gas fee data.",
|
|
@@ -101,7 +101,7 @@ var RenderTitle = "Blocknative Gas Tracker";
|
|
|
101
101
|
// src/components/Card/CardHeader.tsx
|
|
102
102
|
var BlocknativeGasPriceCardHeader = /* @__PURE__ */ forwardRef2(({ payload }, ref) => {
|
|
103
103
|
const gasPricePayload = payload ? payload : void 0;
|
|
104
|
-
const parsedPayload =
|
|
104
|
+
const parsedPayload = getBlocknativeTransformer(gasPricePayload);
|
|
105
105
|
return /* @__PURE__ */ React2.createElement(GasPriceWitnessCardHeader, {
|
|
106
106
|
title: RenderTitle,
|
|
107
107
|
parsedPayload,
|
|
@@ -137,7 +137,7 @@ var BlocknativeGasPriceDetailsBox = /* @__PURE__ */ forwardRef4(({
|
|
|
137
137
|
...props
|
|
138
138
|
}, ref) => {
|
|
139
139
|
const gasPricePayload = payload ? payload : void 0;
|
|
140
|
-
const parsedPayload =
|
|
140
|
+
const parsedPayload = getBlocknativeTransformer(gasPricePayload);
|
|
141
141
|
return /* @__PURE__ */ React4.createElement(React4.Fragment, null, isEmpty2(gasPricePayload) || !gasPricePayload?.blockPrices?.length ? /* @__PURE__ */ React4.createElement(PayloadDataMissing2, {
|
|
142
142
|
alertBody: "Payload is missing valid gas fee data."
|
|
143
143
|
}) : /* @__PURE__ */ React4.createElement(FlexCol, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/components/Card/Card.tsx","../../src/components/Card/CardContent.tsx","../../src/components/hooks/useBlocknativeTransformer.tsx","../../src/components/Card/CardHeader.tsx","../../src/components/lib/constants.ts","../../src/components/Details/Box/BlocknativeGasPriceDetailsBox.tsx","../../src/Plugin.ts"],"sourcesContent":["import type { CardProps } from '@mui/material'\nimport { Card } from '@mui/material'\nimport type { PayloadRenderProps } from '@xyo-network/react-payload-plugin'\nimport React, { forwardRef } from 'react'\n\nimport { BlocknativeGasPriceCardContent } from './CardContent.tsx'\nimport { BlocknativeGasPriceCardHeader } from './CardHeader.tsx'\n\nexport const BlocknativeGasPriceCard = forwardRef<HTMLDivElement, PayloadRenderProps & CardProps>(({ payload, ...props }, ref) => {\n return (\n <Card ref={ref} {...props}>\n <BlocknativeGasPriceCardHeader payload={payload} />\n <BlocknativeGasPriceCardContent payload={payload} />\n </Card>\n )\n})\n\nBlocknativeGasPriceCard.displayName = 'BlocknativeGasPriceCard'\n","import type { CardContentProps } from '@mui/material'\nimport { CardContent, Grid } from '@mui/material'\nimport type { EthereumGasBlocknativePayload } from '@xyo-network/blocknative-ethereum-gas-payload-plugin'\nimport { GasFeeCard, ToggleRawPayloadBox } from '@xyo-network/react-gas-price'\nimport type { PayloadRenderProps } from '@xyo-network/react-payload-plugin'\nimport { PayloadDataMissing } from '@xyo-network/react-shared'\nimport React, { forwardRef } from 'react'\n\nimport { useBlocknativeTransformer } from '../hooks/index.ts'\n\nconst isEmpty = (obj?: object) => Object.keys(obj ?? {}).length === 0\n\nexport const BlocknativeGasPriceCardContent = forwardRef<HTMLDivElement, Omit<PayloadRenderProps & CardContentProps, 'ref'>>(\n ({ payload, ...props }, ref) => {\n const gasPricePayload = payload ? (payload as EthereumGasBlocknativePayload) : undefined\n const parsedPayload = useBlocknativeTransformer(gasPricePayload)\n\n if (isEmpty(gasPricePayload) || !gasPricePayload?.blockPrices?.length) {\n return <PayloadDataMissing alertBody=\"Payload is missing valid gas fee data.\" sx={{ m: 1 }} />\n }\n\n return (\n <CardContent\n ref={ref}\n sx={{\n display: 'flex', flexDirection: 'column', rowGap: 4,\n }}\n {...props}\n >\n <Grid\n container\n spacing={3}\n columns={{\n lg: 15, md: 15, sm: 12, xs: 12,\n }}\n >\n {parsedPayload\n && parsedPayload?.gasPrice?.map(({ price }) => (\n <Grid key={price?.label} item xs={12} sm={6} md={5} lg={3}>\n <GasFeeCard gasPrice={price?.value} speed={price?.label} speedPaperElevation={4} />\n </Grid>\n ))}\n </Grid>\n <ToggleRawPayloadBox gasPricePayload={gasPricePayload} alignItems=\"start\" pr={1} />\n </CardContent>\n )\n },\n)\n\nBlocknativeGasPriceCardContent.displayName = 'BlocknativeGasPriceCardContent'\n","import type { EthereumGasBlocknativePayload } from '@xyo-network/blocknative-ethereum-gas-payload-plugin'\nimport type { GasPriceWitnessUIBasePayload } from '@xyo-network/react-gas-price'\n\n// eslint-disable-next-line @eslint-react/hooks-extra/ensure-custom-hooks-using-other-hooks\nexport const useBlocknativeTransformer = (payload?: EthereumGasBlocknativePayload): GasPriceWitnessUIBasePayload | undefined => {\n const blockPrices = payload?.blockPrices?.[0]\n if (blockPrices && blockPrices.estimatedPrices?.length) {\n const estimatedPrices = blockPrices?.estimatedPrices\n const gasPrice = estimatedPrices.map(price => ({\n price: {\n label: `Confidence - ${price.confidence}`,\n value: price.price,\n },\n priorityFee: {\n label: 'maxPriorityFeePerGas',\n value: price.maxPriorityFeePerGas,\n },\n }))\n\n return {\n baseFee: {\n label: 'baseFeePerGas',\n value: blockPrices.baseFeePerGas,\n },\n blockNumber: {\n label: 'blockNumber',\n value: blockPrices.blockNumber,\n },\n gasPrice,\n timestamp: payload.timestamp,\n website: 'https://docs.Blocknative.io/v5/api/providers/provider/#Provider-getFeeData',\n }\n }\n}\n","import type { CardHeaderProps } from '@mui/material'\nimport type { EthereumGasBlocknativePayload } from '@xyo-network/blocknative-ethereum-gas-payload-plugin'\nimport { GasPriceWitnessCardHeader } from '@xyo-network/react-gas-price'\nimport type { PayloadRenderProps } from '@xyo-network/react-payload-plugin'\nimport React, { forwardRef } from 'react'\n\nimport { useBlocknativeTransformer } from '../hooks/index.ts'\nimport { RenderTitle } from '../lib/index.ts'\n\nexport const BlocknativeGasPriceCardHeader = forwardRef<HTMLDivElement, PayloadRenderProps & CardHeaderProps>(({ payload }, ref) => {\n const gasPricePayload = payload ? (payload as EthereumGasBlocknativePayload) : undefined\n const parsedPayload = useBlocknativeTransformer(gasPricePayload)\n return <GasPriceWitnessCardHeader title={RenderTitle} parsedPayload={parsedPayload} ref={ref} />\n})\n\nBlocknativeGasPriceCardHeader.displayName = 'BlocknativeGasPriceCardHeader'\n","export const RenderTitle = 'Blocknative Gas Tracker'\n","import { Grid } from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport type { EthereumGasBlocknativePayload } from '@xyo-network/blocknative-ethereum-gas-payload-plugin'\nimport {\n GasFeeCard, GasPriceWitnessHeaderBox, ToggleRawPayloadBox,\n} from '@xyo-network/react-gas-price'\nimport type { PayloadDetailsRenderProps } from '@xyo-network/react-payload-plugin'\nimport { PayloadDataMissing } from '@xyo-network/react-shared'\nimport React, { forwardRef } from 'react'\n\nimport { useBlocknativeTransformer } from '../../hooks/index.ts'\nimport { RenderTitle } from '../../lib/index.ts'\n\nconst isEmpty = (obj?: object) => Object.keys(obj ?? {}).length === 0\n\nexport const BlocknativeGasPriceDetailsBox = forwardRef<HTMLDivElement, PayloadDetailsRenderProps & FlexBoxProps>(\n\n ({\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n payload, listMode, ...props\n }, ref) => {\n const gasPricePayload: EthereumGasBlocknativePayload | undefined = payload ? (payload as EthereumGasBlocknativePayload) : undefined\n const parsedPayload = useBlocknativeTransformer(gasPricePayload)\n\n return (\n <>\n {isEmpty(gasPricePayload) || !gasPricePayload?.blockPrices?.length\n ? <PayloadDataMissing alertBody=\"Payload is missing valid gas fee data.\" />\n : (\n <FlexCol alignItems=\"start\" rowGap={4} {...props} ref={ref}>\n <GasPriceWitnessHeaderBox heading={RenderTitle} parsedPayload={parsedPayload} />\n <Grid\n container\n spacing={3}\n columns={{\n lg: 15, md: 15, sm: 12, xs: 12,\n }}\n >\n {parsedPayload\n && parsedPayload?.gasPrice?.map(({ price, priorityFee }) => (\n <Grid key={price?.label} item xs={12} sm={6} md={5} lg={3}>\n <GasFeeCard\n key={price?.label}\n gasPrice={price?.value}\n speed={price?.label}\n priorityFee={priorityFee?.value}\n priorityFeeLabel={priorityFee?.label}\n />\n </Grid>\n ))}\n </Grid>\n <ToggleRawPayloadBox gasPricePayload={gasPricePayload} alignItems=\"start\" />\n </FlexCol>\n )}\n </>\n )\n },\n)\n\nBlocknativeGasPriceDetailsBox.displayName = 'BlocknativeGasPriceDetailsBox'\n","import { EthereumGasBlocknativeSchema } from '@xyo-network/blocknative-ethereum-gas-payload-plugin'\nimport type { Payload } from '@xyo-network/payload-model'\nimport { EthereumGasPriceAvatar } from '@xyo-network/react-gas-price'\nimport type { PayloadRenderPlugin } from '@xyo-network/react-payload-plugin'\nimport { createPayloadRenderPlugin } from '@xyo-network/react-payload-plugin'\n\nimport {\n BlocknativeGasPriceCardContent, BlocknativeGasPriceCardHeader, BlocknativeGasPriceDetailsBox,\n} from './components/index.ts'\n\nexport const EthereumGasPriceBlocknativePlugin: PayloadRenderPlugin = {\n ...createPayloadRenderPlugin({\n canRender: (payload?: Payload) => payload?.schema === EthereumGasBlocknativeSchema,\n components: {\n avatar: { image: EthereumGasPriceAvatar },\n box: { detailsBox: BlocknativeGasPriceDetailsBox },\n card: {\n content: BlocknativeGasPriceCardContent,\n header: BlocknativeGasPriceCardHeader,\n },\n },\n name: 'Ethereum Gas Price Blocknative',\n }),\n}\n"],"mappings":"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","names":["Card","React","forwardRef","CardContent","Grid","GasFeeCard","ToggleRawPayloadBox","PayloadDataMissing","React","forwardRef","useBlocknativeTransformer","payload","blockPrices","estimatedPrices","length","gasPrice","map","price","label","confidence","value","priorityFee","maxPriorityFeePerGas","baseFee","baseFeePerGas","blockNumber","timestamp","website","isEmpty","obj","Object","keys","length","BlocknativeGasPriceCardContent","forwardRef","payload","props","ref","gasPricePayload","undefined","parsedPayload","useBlocknativeTransformer","blockPrices","PayloadDataMissing","alertBody","sx","m","CardContent","display","flexDirection","rowGap","Grid","container","spacing","columns","lg","md","sm","xs","gasPrice","map","price","key","label","item","GasFeeCard","value","speed","speedPaperElevation","ToggleRawPayloadBox","alignItems","pr","displayName","GasPriceWitnessCardHeader","React","forwardRef","RenderTitle","BlocknativeGasPriceCardHeader","forwardRef","payload","ref","gasPricePayload","undefined","parsedPayload","useBlocknativeTransformer","React","GasPriceWitnessCardHeader","title","RenderTitle","displayName","BlocknativeGasPriceCard","forwardRef","payload","props","ref","React","Card","BlocknativeGasPriceCardHeader","BlocknativeGasPriceCardContent","displayName","Grid","FlexCol","GasFeeCard","GasPriceWitnessHeaderBox","ToggleRawPayloadBox","PayloadDataMissing","React","forwardRef","isEmpty","obj","Object","keys","length","BlocknativeGasPriceDetailsBox","forwardRef","payload","listMode","props","ref","gasPricePayload","undefined","parsedPayload","useBlocknativeTransformer","React","blockPrices","PayloadDataMissing","alertBody","FlexCol","alignItems","rowGap","GasPriceWitnessHeaderBox","heading","RenderTitle","Grid","container","spacing","columns","lg","md","sm","xs","gasPrice","map","price","priorityFee","key","label","item","GasFeeCard","value","speed","priorityFeeLabel","ToggleRawPayloadBox","displayName","EthereumGasBlocknativeSchema","EthereumGasPriceAvatar","createPayloadRenderPlugin","EthereumGasPriceBlocknativePlugin","createPayloadRenderPlugin","canRender","payload","schema","EthereumGasBlocknativeSchema","components","avatar","image","EthereumGasPriceAvatar","box","detailsBox","BlocknativeGasPriceDetailsBox","card","content","BlocknativeGasPriceCardContent","header","BlocknativeGasPriceCardHeader","name"]}
|
|
1
|
+
{"version":3,"sources":["../../src/components/Card/Card.tsx","../../src/components/Card/CardContent.tsx","../../src/components/hooks/getBlocknativeTransformer.tsx","../../src/components/Card/CardHeader.tsx","../../src/components/lib/constants.ts","../../src/components/Details/Box/BlocknativeGasPriceDetailsBox.tsx","../../src/Plugin.ts"],"sourcesContent":["import type { CardProps } from '@mui/material'\nimport { Card } from '@mui/material'\nimport type { PayloadRenderProps } from '@xyo-network/react-payload-plugin'\nimport React, { forwardRef } from 'react'\n\nimport { BlocknativeGasPriceCardContent } from './CardContent.tsx'\nimport { BlocknativeGasPriceCardHeader } from './CardHeader.tsx'\n\nexport const BlocknativeGasPriceCard = forwardRef<HTMLDivElement, PayloadRenderProps & CardProps>(({ payload, ...props }, ref) => {\n return (\n <Card ref={ref} {...props}>\n <BlocknativeGasPriceCardHeader payload={payload} />\n <BlocknativeGasPriceCardContent payload={payload} />\n </Card>\n )\n})\n\nBlocknativeGasPriceCard.displayName = 'BlocknativeGasPriceCard'\n","import type { CardContentProps } from '@mui/material'\nimport { CardContent, Grid } from '@mui/material'\nimport type { EthereumGasBlocknativePayload } from '@xyo-network/blocknative-ethereum-gas-payload-plugin'\nimport { GasFeeCard, ToggleRawPayloadBox } from '@xyo-network/react-gas-price'\nimport type { PayloadRenderProps } from '@xyo-network/react-payload-plugin'\nimport { PayloadDataMissing } from '@xyo-network/react-shared'\nimport React, { forwardRef } from 'react'\n\nimport { getBlocknativeTransformer } from '../hooks/index.ts'\n\nconst isEmpty = (obj?: object) => Object.keys(obj ?? {}).length === 0\n\nexport const BlocknativeGasPriceCardContent = forwardRef<HTMLDivElement, Omit<PayloadRenderProps & CardContentProps, 'ref'>>(\n ({ payload, ...props }, ref) => {\n const gasPricePayload = payload ? (payload as EthereumGasBlocknativePayload) : undefined\n const parsedPayload = getBlocknativeTransformer(gasPricePayload)\n\n if (isEmpty(gasPricePayload) || !gasPricePayload?.blockPrices?.length) {\n return <PayloadDataMissing alertBody=\"Payload is missing valid gas fee data.\" sx={{ m: 1 }} />\n }\n\n return (\n <CardContent\n ref={ref}\n sx={{\n display: 'flex', flexDirection: 'column', rowGap: 4,\n }}\n {...props}\n >\n <Grid\n container\n spacing={3}\n columns={{\n lg: 15, md: 15, sm: 12, xs: 12,\n }}\n >\n {parsedPayload\n && parsedPayload?.gasPrice?.map(({ price }) => (\n <Grid key={price?.label} item xs={12} sm={6} md={5} lg={3}>\n <GasFeeCard gasPrice={price?.value} speed={price?.label} speedPaperElevation={4} />\n </Grid>\n ))}\n </Grid>\n <ToggleRawPayloadBox gasPricePayload={gasPricePayload} alignItems=\"start\" pr={1} />\n </CardContent>\n )\n },\n)\n\nBlocknativeGasPriceCardContent.displayName = 'BlocknativeGasPriceCardContent'\n","import type { EthereumGasBlocknativePayload } from '@xyo-network/blocknative-ethereum-gas-payload-plugin'\nimport type { GasPriceWitnessUIBasePayload } from '@xyo-network/react-gas-price'\n\nexport const getBlocknativeTransformer = (payload?: EthereumGasBlocknativePayload): GasPriceWitnessUIBasePayload | undefined => {\n const blockPrices = payload?.blockPrices?.[0]\n if (blockPrices && blockPrices.estimatedPrices?.length) {\n const estimatedPrices = blockPrices?.estimatedPrices\n const gasPrice = estimatedPrices.map(price => ({\n price: {\n label: `Confidence - ${price.confidence}`,\n value: price.price,\n },\n priorityFee: {\n label: 'maxPriorityFeePerGas',\n value: price.maxPriorityFeePerGas,\n },\n }))\n\n return {\n baseFee: {\n label: 'baseFeePerGas',\n value: blockPrices.baseFeePerGas,\n },\n blockNumber: {\n label: 'blockNumber',\n value: blockPrices.blockNumber,\n },\n gasPrice,\n timestamp: payload.timestamp,\n website: 'https://docs.Blocknative.io/v5/api/providers/provider/#Provider-getFeeData',\n }\n }\n}\n","import type { CardHeaderProps } from '@mui/material'\nimport type { EthereumGasBlocknativePayload } from '@xyo-network/blocknative-ethereum-gas-payload-plugin'\nimport { GasPriceWitnessCardHeader } from '@xyo-network/react-gas-price'\nimport type { PayloadRenderProps } from '@xyo-network/react-payload-plugin'\nimport React, { forwardRef } from 'react'\n\nimport { getBlocknativeTransformer } from '../hooks/index.ts'\nimport { RenderTitle } from '../lib/index.ts'\n\nexport const BlocknativeGasPriceCardHeader = forwardRef<HTMLDivElement, PayloadRenderProps & CardHeaderProps>(({ payload }, ref) => {\n const gasPricePayload = payload ? (payload as EthereumGasBlocknativePayload) : undefined\n const parsedPayload = getBlocknativeTransformer(gasPricePayload)\n return <GasPriceWitnessCardHeader title={RenderTitle} parsedPayload={parsedPayload} ref={ref} />\n})\n\nBlocknativeGasPriceCardHeader.displayName = 'BlocknativeGasPriceCardHeader'\n","export const RenderTitle = 'Blocknative Gas Tracker'\n","import { Grid } from '@mui/material'\nimport type { FlexBoxProps } from '@xylabs/react-flexbox'\nimport { FlexCol } from '@xylabs/react-flexbox'\nimport type { EthereumGasBlocknativePayload } from '@xyo-network/blocknative-ethereum-gas-payload-plugin'\nimport {\n GasFeeCard, GasPriceWitnessHeaderBox, ToggleRawPayloadBox,\n} from '@xyo-network/react-gas-price'\nimport type { PayloadDetailsListRenderProps } from '@xyo-network/react-payload-plugin'\nimport { PayloadDataMissing } from '@xyo-network/react-shared'\nimport React, { forwardRef } from 'react'\n\nimport { getBlocknativeTransformer } from '../../hooks/index.ts'\nimport { RenderTitle } from '../../lib/index.ts'\n\nconst isEmpty = (obj?: object) => Object.keys(obj ?? {}).length === 0\n\nexport const BlocknativeGasPriceDetailsBox = forwardRef<HTMLDivElement, PayloadDetailsListRenderProps & FlexBoxProps>(\n\n ({\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n payload, listMode, ...props\n }, ref) => {\n const gasPricePayload: EthereumGasBlocknativePayload | undefined = payload ? (payload as EthereumGasBlocknativePayload) : undefined\n const parsedPayload = getBlocknativeTransformer(gasPricePayload)\n\n return (\n <>\n {isEmpty(gasPricePayload) || !gasPricePayload?.blockPrices?.length\n ? <PayloadDataMissing alertBody=\"Payload is missing valid gas fee data.\" />\n : (\n <FlexCol alignItems=\"start\" rowGap={4} {...props} ref={ref}>\n <GasPriceWitnessHeaderBox heading={RenderTitle} parsedPayload={parsedPayload} />\n <Grid\n container\n spacing={3}\n columns={{\n lg: 15, md: 15, sm: 12, xs: 12,\n }}\n >\n {parsedPayload\n && parsedPayload?.gasPrice?.map(({ price, priorityFee }) => (\n <Grid key={price?.label} item xs={12} sm={6} md={5} lg={3}>\n <GasFeeCard\n key={price?.label}\n gasPrice={price?.value}\n speed={price?.label}\n priorityFee={priorityFee?.value}\n priorityFeeLabel={priorityFee?.label}\n />\n </Grid>\n ))}\n </Grid>\n <ToggleRawPayloadBox gasPricePayload={gasPricePayload} alignItems=\"start\" />\n </FlexCol>\n )}\n </>\n )\n },\n)\n\nBlocknativeGasPriceDetailsBox.displayName = 'BlocknativeGasPriceDetailsBox'\n","import { EthereumGasBlocknativeSchema } from '@xyo-network/blocknative-ethereum-gas-payload-plugin'\nimport type { Payload } from '@xyo-network/payload-model'\nimport { EthereumGasPriceAvatar } from '@xyo-network/react-gas-price'\nimport type { PayloadRenderPlugin } from '@xyo-network/react-payload-plugin'\nimport { createPayloadRenderPlugin } from '@xyo-network/react-payload-plugin'\n\nimport {\n BlocknativeGasPriceCardContent, BlocknativeGasPriceCardHeader, BlocknativeGasPriceDetailsBox,\n} from './components/index.ts'\n\nexport const EthereumGasPriceBlocknativePlugin: PayloadRenderPlugin = {\n ...createPayloadRenderPlugin({\n canRender: (payload?: Payload) => payload?.schema === EthereumGasBlocknativeSchema,\n components: {\n avatar: { image: EthereumGasPriceAvatar },\n box: { detailsBox: BlocknativeGasPriceDetailsBox },\n card: {\n content: BlocknativeGasPriceCardContent,\n header: BlocknativeGasPriceCardHeader,\n },\n },\n name: 'Ethereum Gas Price Blocknative',\n }),\n}\n"],"mappings":"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","names":["Card","React","forwardRef","CardContent","Grid","GasFeeCard","ToggleRawPayloadBox","PayloadDataMissing","React","forwardRef","getBlocknativeTransformer","payload","blockPrices","estimatedPrices","length","gasPrice","map","price","label","confidence","value","priorityFee","maxPriorityFeePerGas","baseFee","baseFeePerGas","blockNumber","timestamp","website","isEmpty","obj","Object","keys","length","BlocknativeGasPriceCardContent","forwardRef","payload","props","ref","gasPricePayload","undefined","parsedPayload","getBlocknativeTransformer","blockPrices","PayloadDataMissing","alertBody","sx","m","CardContent","display","flexDirection","rowGap","Grid","container","spacing","columns","lg","md","sm","xs","gasPrice","map","price","key","label","item","GasFeeCard","value","speed","speedPaperElevation","ToggleRawPayloadBox","alignItems","pr","displayName","GasPriceWitnessCardHeader","React","forwardRef","RenderTitle","BlocknativeGasPriceCardHeader","forwardRef","payload","ref","gasPricePayload","undefined","parsedPayload","getBlocknativeTransformer","React","GasPriceWitnessCardHeader","title","RenderTitle","displayName","BlocknativeGasPriceCard","forwardRef","payload","props","ref","React","Card","BlocknativeGasPriceCardHeader","BlocknativeGasPriceCardContent","displayName","Grid","FlexCol","GasFeeCard","GasPriceWitnessHeaderBox","ToggleRawPayloadBox","PayloadDataMissing","React","forwardRef","isEmpty","obj","Object","keys","length","BlocknativeGasPriceDetailsBox","forwardRef","payload","listMode","props","ref","gasPricePayload","undefined","parsedPayload","getBlocknativeTransformer","React","blockPrices","PayloadDataMissing","alertBody","FlexCol","alignItems","rowGap","GasPriceWitnessHeaderBox","heading","RenderTitle","Grid","container","spacing","columns","lg","md","sm","xs","gasPrice","map","price","priorityFee","key","label","item","GasFeeCard","value","speed","priorityFeeLabel","ToggleRawPayloadBox","displayName","EthereumGasBlocknativeSchema","EthereumGasPriceAvatar","createPayloadRenderPlugin","EthereumGasPriceBlocknativePlugin","createPayloadRenderPlugin","canRender","payload","schema","EthereumGasBlocknativeSchema","components","avatar","image","EthereumGasPriceAvatar","box","detailsBox","BlocknativeGasPriceDetailsBox","card","content","BlocknativeGasPriceCardContent","header","BlocknativeGasPriceCardHeader","name"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xyo-network/react-ethereum-gas-price-blocknative-plugin",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.17",
|
|
4
4
|
"description": "Common React library for all XYO projects that use React",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"xyo",
|
|
@@ -43,12 +43,12 @@
|
|
|
43
43
|
"lint-pkg": "npmPkgJsonLint ."
|
|
44
44
|
},
|
|
45
45
|
"dependencies": {
|
|
46
|
-
"@xylabs/react-flexbox": "^4.2.
|
|
46
|
+
"@xylabs/react-flexbox": "^4.2.12",
|
|
47
47
|
"@xyo-network/blocknative-ethereum-gas-payload-plugin": "^3.0.17",
|
|
48
48
|
"@xyo-network/payload-model": "^3.1.9",
|
|
49
|
-
"@xyo-network/react-gas-price": "^3.0.
|
|
50
|
-
"@xyo-network/react-payload-plugin": "^3.0.
|
|
51
|
-
"@xyo-network/react-shared": "^3.0.
|
|
49
|
+
"@xyo-network/react-gas-price": "^3.0.17",
|
|
50
|
+
"@xyo-network/react-payload-plugin": "^3.0.17",
|
|
51
|
+
"@xyo-network/react-shared": "^3.0.17"
|
|
52
52
|
},
|
|
53
53
|
"devDependencies": {
|
|
54
54
|
"@emotion/react": "^11.13.3",
|
|
@@ -59,11 +59,11 @@
|
|
|
59
59
|
"@storybook/react": "^8.2.9",
|
|
60
60
|
"@xylabs/ts-scripts-yarn3": "^4.0.7",
|
|
61
61
|
"@xylabs/tsconfig-react": "^4.0.7",
|
|
62
|
-
"@xyo-network/react-storybook": "^3.0.
|
|
62
|
+
"@xyo-network/react-storybook": "^3.0.17",
|
|
63
63
|
"react": "^18.3.1",
|
|
64
64
|
"react-dom": "^18.3.1",
|
|
65
65
|
"storybook": "^8.2.9",
|
|
66
|
-
"typescript": "^5.
|
|
66
|
+
"typescript": "^5.6.2"
|
|
67
67
|
},
|
|
68
68
|
"peerDependencies": {
|
|
69
69
|
"@emotion/react": "^11",
|
|
@@ -6,14 +6,14 @@ import type { PayloadRenderProps } from '@xyo-network/react-payload-plugin'
|
|
|
6
6
|
import { PayloadDataMissing } from '@xyo-network/react-shared'
|
|
7
7
|
import React, { forwardRef } from 'react'
|
|
8
8
|
|
|
9
|
-
import {
|
|
9
|
+
import { getBlocknativeTransformer } from '../hooks/index.ts'
|
|
10
10
|
|
|
11
11
|
const isEmpty = (obj?: object) => Object.keys(obj ?? {}).length === 0
|
|
12
12
|
|
|
13
13
|
export const BlocknativeGasPriceCardContent = forwardRef<HTMLDivElement, Omit<PayloadRenderProps & CardContentProps, 'ref'>>(
|
|
14
14
|
({ payload, ...props }, ref) => {
|
|
15
15
|
const gasPricePayload = payload ? (payload as EthereumGasBlocknativePayload) : undefined
|
|
16
|
-
const parsedPayload =
|
|
16
|
+
const parsedPayload = getBlocknativeTransformer(gasPricePayload)
|
|
17
17
|
|
|
18
18
|
if (isEmpty(gasPricePayload) || !gasPricePayload?.blockPrices?.length) {
|
|
19
19
|
return <PayloadDataMissing alertBody="Payload is missing valid gas fee data." sx={{ m: 1 }} />
|
|
@@ -4,12 +4,12 @@ import { GasPriceWitnessCardHeader } from '@xyo-network/react-gas-price'
|
|
|
4
4
|
import type { PayloadRenderProps } from '@xyo-network/react-payload-plugin'
|
|
5
5
|
import React, { forwardRef } from 'react'
|
|
6
6
|
|
|
7
|
-
import {
|
|
7
|
+
import { getBlocknativeTransformer } from '../hooks/index.ts'
|
|
8
8
|
import { RenderTitle } from '../lib/index.ts'
|
|
9
9
|
|
|
10
10
|
export const BlocknativeGasPriceCardHeader = forwardRef<HTMLDivElement, PayloadRenderProps & CardHeaderProps>(({ payload }, ref) => {
|
|
11
11
|
const gasPricePayload = payload ? (payload as EthereumGasBlocknativePayload) : undefined
|
|
12
|
-
const parsedPayload =
|
|
12
|
+
const parsedPayload = getBlocknativeTransformer(gasPricePayload)
|
|
13
13
|
return <GasPriceWitnessCardHeader title={RenderTitle} parsedPayload={parsedPayload} ref={ref} />
|
|
14
14
|
})
|
|
15
15
|
|
|
@@ -5,23 +5,23 @@ import type { EthereumGasBlocknativePayload } from '@xyo-network/blocknative-eth
|
|
|
5
5
|
import {
|
|
6
6
|
GasFeeCard, GasPriceWitnessHeaderBox, ToggleRawPayloadBox,
|
|
7
7
|
} from '@xyo-network/react-gas-price'
|
|
8
|
-
import type {
|
|
8
|
+
import type { PayloadDetailsListRenderProps } from '@xyo-network/react-payload-plugin'
|
|
9
9
|
import { PayloadDataMissing } from '@xyo-network/react-shared'
|
|
10
10
|
import React, { forwardRef } from 'react'
|
|
11
11
|
|
|
12
|
-
import {
|
|
12
|
+
import { getBlocknativeTransformer } from '../../hooks/index.ts'
|
|
13
13
|
import { RenderTitle } from '../../lib/index.ts'
|
|
14
14
|
|
|
15
15
|
const isEmpty = (obj?: object) => Object.keys(obj ?? {}).length === 0
|
|
16
16
|
|
|
17
|
-
export const BlocknativeGasPriceDetailsBox = forwardRef<HTMLDivElement,
|
|
17
|
+
export const BlocknativeGasPriceDetailsBox = forwardRef<HTMLDivElement, PayloadDetailsListRenderProps & FlexBoxProps>(
|
|
18
18
|
|
|
19
19
|
({
|
|
20
20
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
21
21
|
payload, listMode, ...props
|
|
22
22
|
}, ref) => {
|
|
23
23
|
const gasPricePayload: EthereumGasBlocknativePayload | undefined = payload ? (payload as EthereumGasBlocknativePayload) : undefined
|
|
24
|
-
const parsedPayload =
|
|
24
|
+
const parsedPayload = getBlocknativeTransformer(gasPricePayload)
|
|
25
25
|
|
|
26
26
|
return (
|
|
27
27
|
<>
|
package/src/components/hooks/{useBlocknativeTransformer.tsx → getBlocknativeTransformer.tsx}
RENAMED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import type { EthereumGasBlocknativePayload } from '@xyo-network/blocknative-ethereum-gas-payload-plugin'
|
|
2
2
|
import type { GasPriceWitnessUIBasePayload } from '@xyo-network/react-gas-price'
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
export const useBlocknativeTransformer = (payload?: EthereumGasBlocknativePayload): GasPriceWitnessUIBasePayload | undefined => {
|
|
4
|
+
export const getBlocknativeTransformer = (payload?: EthereumGasBlocknativePayload): GasPriceWitnessUIBasePayload | undefined => {
|
|
6
5
|
const blockPrices = payload?.blockPrices?.[0]
|
|
7
6
|
if (blockPrices && blockPrices.estimatedPrices?.length) {
|
|
8
7
|
const estimatedPrices = blockPrices?.estimatedPrices
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from './
|
|
1
|
+
export * from './getBlocknativeTransformer.tsx'
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useBlocknativeTransformer.d.ts","sourceRoot":"","sources":["../../../../src/components/hooks/useBlocknativeTransformer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,sDAAsD,CAAA;AACzG,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,8BAA8B,CAAA;AAGhF,eAAO,MAAM,yBAAyB,aAAc,6BAA6B,KAAG,4BAA4B,GAAG,SA6BlH,CAAA"}
|