@xyo-network/react-gas-price 2.41.0

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.
Files changed (242) hide show
  1. package/LICENSE +165 -0
  2. package/README.md +70 -0
  3. package/dist/cjs/components/Avatar/EthereumGasPriceAvatar.d.ts +4 -0
  4. package/dist/cjs/components/Avatar/EthereumGasPriceAvatar.d.ts.map +1 -0
  5. package/dist/cjs/components/Avatar/EthereumGasPriceAvatar.js +13 -0
  6. package/dist/cjs/components/Avatar/EthereumGasPriceAvatar.js.map +1 -0
  7. package/dist/cjs/components/Avatar/index.d.ts +2 -0
  8. package/dist/cjs/components/Avatar/index.d.ts.map +1 -0
  9. package/dist/cjs/components/Avatar/index.js +5 -0
  10. package/dist/cjs/components/Avatar/index.js.map +1 -0
  11. package/dist/cjs/components/CardHeader/CardHeader.d.ts +9 -0
  12. package/dist/cjs/components/CardHeader/CardHeader.d.ts.map +1 -0
  13. package/dist/cjs/components/CardHeader/CardHeader.js +14 -0
  14. package/dist/cjs/components/CardHeader/CardHeader.js.map +1 -0
  15. package/dist/cjs/components/CardHeader/index.d.ts +2 -0
  16. package/dist/cjs/components/CardHeader/index.d.ts.map +1 -0
  17. package/dist/cjs/components/CardHeader/index.js +5 -0
  18. package/dist/cjs/components/CardHeader/index.js.map +1 -0
  19. package/dist/cjs/components/GasFees/Card.d.ts +11 -0
  20. package/dist/cjs/components/GasFees/Card.d.ts.map +1 -0
  21. package/dist/cjs/components/GasFees/Card.js +16 -0
  22. package/dist/cjs/components/GasFees/Card.js.map +1 -0
  23. package/dist/cjs/components/GasFees/components/GasPriceBox.d.ts +7 -0
  24. package/dist/cjs/components/GasFees/components/GasPriceBox.d.ts.map +1 -0
  25. package/dist/cjs/components/GasFees/components/GasPriceBox.js +17 -0
  26. package/dist/cjs/components/GasFees/components/GasPriceBox.js.map +1 -0
  27. package/dist/cjs/components/GasFees/components/GweiLabelTypography.d.ts +4 -0
  28. package/dist/cjs/components/GasFees/components/GweiLabelTypography.d.ts.map +1 -0
  29. package/dist/cjs/components/GasFees/components/GweiLabelTypography.js +8 -0
  30. package/dist/cjs/components/GasFees/components/GweiLabelTypography.js.map +1 -0
  31. package/dist/cjs/components/GasFees/components/PriorityFeeBox.d.ts +8 -0
  32. package/dist/cjs/components/GasFees/components/PriorityFeeBox.d.ts.map +1 -0
  33. package/dist/cjs/components/GasFees/components/PriorityFeeBox.js +18 -0
  34. package/dist/cjs/components/GasFees/components/PriorityFeeBox.js.map +1 -0
  35. package/dist/cjs/components/GasFees/components/SpeedBox.d.ts +7 -0
  36. package/dist/cjs/components/GasFees/components/SpeedBox.d.ts.map +1 -0
  37. package/dist/cjs/components/GasFees/components/SpeedBox.js +15 -0
  38. package/dist/cjs/components/GasFees/components/SpeedBox.js.map +1 -0
  39. package/dist/cjs/components/GasFees/components/index.d.ts +4 -0
  40. package/dist/cjs/components/GasFees/components/index.d.ts.map +1 -0
  41. package/dist/cjs/components/GasFees/components/index.js +7 -0
  42. package/dist/cjs/components/GasFees/components/index.js.map +1 -0
  43. package/dist/cjs/components/GasFees/index.d.ts +2 -0
  44. package/dist/cjs/components/GasFees/index.d.ts.map +1 -0
  45. package/dist/cjs/components/GasFees/index.js +5 -0
  46. package/dist/cjs/components/GasFees/index.js.map +1 -0
  47. package/dist/cjs/components/HeaderBox.d.ts +9 -0
  48. package/dist/cjs/components/HeaderBox.d.ts.map +1 -0
  49. package/dist/cjs/components/HeaderBox.js +14 -0
  50. package/dist/cjs/components/HeaderBox.js.map +1 -0
  51. package/dist/cjs/components/HeaderComponents/Actions.d.ts +11 -0
  52. package/dist/cjs/components/HeaderComponents/Actions.d.ts.map +1 -0
  53. package/dist/cjs/components/HeaderComponents/Actions.js +13 -0
  54. package/dist/cjs/components/HeaderComponents/Actions.js.map +1 -0
  55. package/dist/cjs/components/HeaderComponents/Header/Header.d.ts +8 -0
  56. package/dist/cjs/components/HeaderComponents/Header/Header.d.ts.map +1 -0
  57. package/dist/cjs/components/HeaderComponents/Header/Header.js +17 -0
  58. package/dist/cjs/components/HeaderComponents/Header/Header.js.map +1 -0
  59. package/dist/cjs/components/HeaderComponents/Header/Heading.d.ts +9 -0
  60. package/dist/cjs/components/HeaderComponents/Header/Heading.d.ts.map +1 -0
  61. package/dist/cjs/components/HeaderComponents/Header/Heading.js +14 -0
  62. package/dist/cjs/components/HeaderComponents/Header/Heading.js.map +1 -0
  63. package/dist/cjs/components/HeaderComponents/Header/index.d.ts +3 -0
  64. package/dist/cjs/components/HeaderComponents/Header/index.d.ts.map +1 -0
  65. package/dist/cjs/components/HeaderComponents/Header/index.js +6 -0
  66. package/dist/cjs/components/HeaderComponents/Header/index.js.map +1 -0
  67. package/dist/cjs/components/HeaderComponents/index.d.ts +3 -0
  68. package/dist/cjs/components/HeaderComponents/index.d.ts.map +1 -0
  69. package/dist/cjs/components/HeaderComponents/index.js +6 -0
  70. package/dist/cjs/components/HeaderComponents/index.js.map +1 -0
  71. package/dist/cjs/components/RawPayload/ToggleRawPayloadBox.d.ts +7 -0
  72. package/dist/cjs/components/RawPayload/ToggleRawPayloadBox.d.ts.map +1 -0
  73. package/dist/cjs/components/RawPayload/ToggleRawPayloadBox.js +15 -0
  74. package/dist/cjs/components/RawPayload/ToggleRawPayloadBox.js.map +1 -0
  75. package/dist/cjs/components/RawPayload/index.d.ts +2 -0
  76. package/dist/cjs/components/RawPayload/index.d.ts.map +1 -0
  77. package/dist/cjs/components/RawPayload/index.js +5 -0
  78. package/dist/cjs/components/RawPayload/index.js.map +1 -0
  79. package/dist/cjs/components/index.d.ts +8 -0
  80. package/dist/cjs/components/index.d.ts.map +1 -0
  81. package/dist/cjs/components/index.js +11 -0
  82. package/dist/cjs/components/index.js.map +1 -0
  83. package/dist/cjs/components/layout/Header.d.ts +3 -0
  84. package/dist/cjs/components/layout/Header.d.ts.map +1 -0
  85. package/dist/cjs/components/layout/Header.js +15 -0
  86. package/dist/cjs/components/layout/Header.js.map +1 -0
  87. package/dist/cjs/components/layout/StyledCardHeader.d.ts +19 -0
  88. package/dist/cjs/components/layout/StyledCardHeader.d.ts.map +1 -0
  89. package/dist/cjs/components/layout/StyledCardHeader.js +9 -0
  90. package/dist/cjs/components/layout/StyledCardHeader.js.map +1 -0
  91. package/dist/cjs/components/layout/index.d.ts +3 -0
  92. package/dist/cjs/components/layout/index.d.ts.map +1 -0
  93. package/dist/cjs/components/layout/index.js +6 -0
  94. package/dist/cjs/components/layout/index.js.map +1 -0
  95. package/dist/cjs/index.d.ts +3 -0
  96. package/dist/cjs/index.d.ts.map +1 -0
  97. package/dist/cjs/index.js +6 -0
  98. package/dist/cjs/index.js.map +1 -0
  99. package/dist/cjs/types/GasPriceWitnessPayload.d.ts +18 -0
  100. package/dist/cjs/types/GasPriceWitnessPayload.d.ts.map +1 -0
  101. package/dist/cjs/types/GasPriceWitnessPayload.js +3 -0
  102. package/dist/cjs/types/GasPriceWitnessPayload.js.map +1 -0
  103. package/dist/cjs/types/index.d.ts +2 -0
  104. package/dist/cjs/types/index.d.ts.map +1 -0
  105. package/dist/cjs/types/index.js +5 -0
  106. package/dist/cjs/types/index.js.map +1 -0
  107. package/dist/docs.json +96191 -0
  108. package/dist/esm/components/Avatar/EthereumGasPriceAvatar.d.ts +4 -0
  109. package/dist/esm/components/Avatar/EthereumGasPriceAvatar.d.ts.map +1 -0
  110. package/dist/esm/components/Avatar/EthereumGasPriceAvatar.js +7 -0
  111. package/dist/esm/components/Avatar/EthereumGasPriceAvatar.js.map +1 -0
  112. package/dist/esm/components/Avatar/index.d.ts +2 -0
  113. package/dist/esm/components/Avatar/index.d.ts.map +1 -0
  114. package/dist/esm/components/Avatar/index.js +2 -0
  115. package/dist/esm/components/Avatar/index.js.map +1 -0
  116. package/dist/esm/components/CardHeader/CardHeader.d.ts +9 -0
  117. package/dist/esm/components/CardHeader/CardHeader.d.ts.map +1 -0
  118. package/dist/esm/components/CardHeader/CardHeader.js +5 -0
  119. package/dist/esm/components/CardHeader/CardHeader.js.map +1 -0
  120. package/dist/esm/components/CardHeader/index.d.ts +2 -0
  121. package/dist/esm/components/CardHeader/index.d.ts.map +1 -0
  122. package/dist/esm/components/CardHeader/index.js +2 -0
  123. package/dist/esm/components/CardHeader/index.js.map +1 -0
  124. package/dist/esm/components/GasFees/Card.d.ts +11 -0
  125. package/dist/esm/components/GasFees/Card.d.ts.map +1 -0
  126. package/dist/esm/components/GasFees/Card.js +10 -0
  127. package/dist/esm/components/GasFees/Card.js.map +1 -0
  128. package/dist/esm/components/GasFees/components/GasPriceBox.d.ts +7 -0
  129. package/dist/esm/components/GasFees/components/GasPriceBox.d.ts.map +1 -0
  130. package/dist/esm/components/GasFees/components/GasPriceBox.js +10 -0
  131. package/dist/esm/components/GasFees/components/GasPriceBox.js.map +1 -0
  132. package/dist/esm/components/GasFees/components/GweiLabelTypography.d.ts +4 -0
  133. package/dist/esm/components/GasFees/components/GweiLabelTypography.d.ts.map +1 -0
  134. package/dist/esm/components/GasFees/components/GweiLabelTypography.js +4 -0
  135. package/dist/esm/components/GasFees/components/GweiLabelTypography.js.map +1 -0
  136. package/dist/esm/components/GasFees/components/PriorityFeeBox.d.ts +8 -0
  137. package/dist/esm/components/GasFees/components/PriorityFeeBox.d.ts.map +1 -0
  138. package/dist/esm/components/GasFees/components/PriorityFeeBox.js +11 -0
  139. package/dist/esm/components/GasFees/components/PriorityFeeBox.js.map +1 -0
  140. package/dist/esm/components/GasFees/components/SpeedBox.d.ts +7 -0
  141. package/dist/esm/components/GasFees/components/SpeedBox.d.ts.map +1 -0
  142. package/dist/esm/components/GasFees/components/SpeedBox.js +9 -0
  143. package/dist/esm/components/GasFees/components/SpeedBox.js.map +1 -0
  144. package/dist/esm/components/GasFees/components/index.d.ts +4 -0
  145. package/dist/esm/components/GasFees/components/index.d.ts.map +1 -0
  146. package/dist/esm/components/GasFees/components/index.js +4 -0
  147. package/dist/esm/components/GasFees/components/index.js.map +1 -0
  148. package/dist/esm/components/GasFees/index.d.ts +2 -0
  149. package/dist/esm/components/GasFees/index.d.ts.map +1 -0
  150. package/dist/esm/components/GasFees/index.js +2 -0
  151. package/dist/esm/components/GasFees/index.js.map +1 -0
  152. package/dist/esm/components/HeaderBox.d.ts +9 -0
  153. package/dist/esm/components/HeaderBox.d.ts.map +1 -0
  154. package/dist/esm/components/HeaderBox.js +7 -0
  155. package/dist/esm/components/HeaderBox.js.map +1 -0
  156. package/dist/esm/components/HeaderComponents/Actions.d.ts +11 -0
  157. package/dist/esm/components/HeaderComponents/Actions.d.ts.map +1 -0
  158. package/dist/esm/components/HeaderComponents/Actions.js +7 -0
  159. package/dist/esm/components/HeaderComponents/Actions.js.map +1 -0
  160. package/dist/esm/components/HeaderComponents/Header/Header.d.ts +8 -0
  161. package/dist/esm/components/HeaderComponents/Header/Header.d.ts.map +1 -0
  162. package/dist/esm/components/HeaderComponents/Header/Header.js +11 -0
  163. package/dist/esm/components/HeaderComponents/Header/Header.js.map +1 -0
  164. package/dist/esm/components/HeaderComponents/Header/Heading.d.ts +9 -0
  165. package/dist/esm/components/HeaderComponents/Header/Heading.d.ts.map +1 -0
  166. package/dist/esm/components/HeaderComponents/Header/Heading.js +8 -0
  167. package/dist/esm/components/HeaderComponents/Header/Heading.js.map +1 -0
  168. package/dist/esm/components/HeaderComponents/Header/index.d.ts +3 -0
  169. package/dist/esm/components/HeaderComponents/Header/index.d.ts.map +1 -0
  170. package/dist/esm/components/HeaderComponents/Header/index.js +3 -0
  171. package/dist/esm/components/HeaderComponents/Header/index.js.map +1 -0
  172. package/dist/esm/components/HeaderComponents/index.d.ts +3 -0
  173. package/dist/esm/components/HeaderComponents/index.d.ts.map +1 -0
  174. package/dist/esm/components/HeaderComponents/index.js +3 -0
  175. package/dist/esm/components/HeaderComponents/index.js.map +1 -0
  176. package/dist/esm/components/RawPayload/ToggleRawPayloadBox.d.ts +7 -0
  177. package/dist/esm/components/RawPayload/ToggleRawPayloadBox.d.ts.map +1 -0
  178. package/dist/esm/components/RawPayload/ToggleRawPayloadBox.js +9 -0
  179. package/dist/esm/components/RawPayload/ToggleRawPayloadBox.js.map +1 -0
  180. package/dist/esm/components/RawPayload/index.d.ts +2 -0
  181. package/dist/esm/components/RawPayload/index.d.ts.map +1 -0
  182. package/dist/esm/components/RawPayload/index.js +2 -0
  183. package/dist/esm/components/RawPayload/index.js.map +1 -0
  184. package/dist/esm/components/index.d.ts +8 -0
  185. package/dist/esm/components/index.d.ts.map +1 -0
  186. package/dist/esm/components/index.js +8 -0
  187. package/dist/esm/components/index.js.map +1 -0
  188. package/dist/esm/components/layout/Header.d.ts +3 -0
  189. package/dist/esm/components/layout/Header.d.ts.map +1 -0
  190. package/dist/esm/components/layout/Header.js +12 -0
  191. package/dist/esm/components/layout/Header.js.map +1 -0
  192. package/dist/esm/components/layout/StyledCardHeader.d.ts +19 -0
  193. package/dist/esm/components/layout/StyledCardHeader.d.ts.map +1 -0
  194. package/dist/esm/components/layout/StyledCardHeader.js +6 -0
  195. package/dist/esm/components/layout/StyledCardHeader.js.map +1 -0
  196. package/dist/esm/components/layout/index.d.ts +3 -0
  197. package/dist/esm/components/layout/index.d.ts.map +1 -0
  198. package/dist/esm/components/layout/index.js +3 -0
  199. package/dist/esm/components/layout/index.js.map +1 -0
  200. package/dist/esm/index.d.ts +3 -0
  201. package/dist/esm/index.d.ts.map +1 -0
  202. package/dist/esm/index.js +3 -0
  203. package/dist/esm/index.js.map +1 -0
  204. package/dist/esm/types/GasPriceWitnessPayload.d.ts +18 -0
  205. package/dist/esm/types/GasPriceWitnessPayload.d.ts.map +1 -0
  206. package/dist/esm/types/GasPriceWitnessPayload.js +2 -0
  207. package/dist/esm/types/GasPriceWitnessPayload.js.map +1 -0
  208. package/dist/esm/types/index.d.ts +2 -0
  209. package/dist/esm/types/index.d.ts.map +1 -0
  210. package/dist/esm/types/index.js +2 -0
  211. package/dist/esm/types/index.js.map +1 -0
  212. package/package.json +71 -0
  213. package/src/components/Avatar/EthereumGasPriceAvatar.stories.tsx +16 -0
  214. package/src/components/Avatar/EthereumGasPriceAvatar.tsx +10 -0
  215. package/src/components/Avatar/index.ts +1 -0
  216. package/src/components/CardHeader/CardHeader.tsx +25 -0
  217. package/src/components/CardHeader/index.ts +1 -0
  218. package/src/components/GasFees/Card.stories.tsx +44 -0
  219. package/src/components/GasFees/Card.tsx +31 -0
  220. package/src/components/GasFees/components/GasPriceBox.tsx +21 -0
  221. package/src/components/GasFees/components/GweiLabelTypography.tsx +7 -0
  222. package/src/components/GasFees/components/PriorityFeeBox.tsx +27 -0
  223. package/src/components/GasFees/components/SpeedBox.tsx +19 -0
  224. package/src/components/GasFees/components/index.ts +3 -0
  225. package/src/components/GasFees/index.ts +1 -0
  226. package/src/components/HeaderBox.tsx +25 -0
  227. package/src/components/HeaderComponents/Actions.stories.tsx +25 -0
  228. package/src/components/HeaderComponents/Actions.tsx +27 -0
  229. package/src/components/HeaderComponents/Header/Header.tsx +21 -0
  230. package/src/components/HeaderComponents/Header/Heading.tsx +18 -0
  231. package/src/components/HeaderComponents/Header/index.ts +2 -0
  232. package/src/components/HeaderComponents/index.ts +2 -0
  233. package/src/components/RawPayload/ToggleRawPayloadBox.stories.tsx +24 -0
  234. package/src/components/RawPayload/ToggleRawPayloadBox.tsx +23 -0
  235. package/src/components/RawPayload/index.ts +1 -0
  236. package/src/components/index.ts +7 -0
  237. package/src/components/layout/Header.tsx +12 -0
  238. package/src/components/layout/StyledCardHeader.tsx +6 -0
  239. package/src/components/layout/index.ts +2 -0
  240. package/src/index.ts +2 -0
  241. package/src/types/GasPriceWitnessPayload.ts +20 -0
  242. package/src/types/index.ts +1 -0
@@ -0,0 +1,19 @@
1
+ /// <reference types="react" />
2
+ export declare const StyledCardHeader: import("@emotion/styled").StyledComponent<Pick<{
3
+ action?: import("react").ReactNode;
4
+ avatar?: import("react").ReactNode;
5
+ classes?: Partial<import("@mui/material").CardHeaderClasses> | undefined;
6
+ disableTypography?: boolean | undefined;
7
+ subheader?: import("react").ReactNode;
8
+ subheaderTypographyProps?: import("@mui/material").TypographyProps<"span", {
9
+ component?: "span" | undefined;
10
+ }> | undefined;
11
+ sx?: import("@mui/material").SxProps<import("@mui/material").Theme> | undefined;
12
+ title?: import("react").ReactNode;
13
+ titleTypographyProps?: import("@mui/material").TypographyProps<"span", {
14
+ component?: "span" | undefined;
15
+ }> | undefined;
16
+ } & import("@mui/material/OverridableComponent").CommonProps & Omit<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof import("react").HTMLAttributes<HTMLDivElement>> & {
17
+ ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
18
+ }, keyof import("@mui/material/OverridableComponent").CommonProps | "sx" | "title" | "action" | "avatar" | "disableTypography" | "subheader" | "subheaderTypographyProps" | "titleTypographyProps">, keyof import("@mui/material/OverridableComponent").CommonProps | "children" | "sx" | "ref" | "slot" | "title" | "key" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "hidden" | "id" | "lang" | "nonce" | "placeholder" | "spellCheck" | "tabIndex" | "translate" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onResize" | "onResizeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "action" | "avatar" | "disableTypography" | "subheader" | "subheaderTypographyProps" | "titleTypographyProps"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
19
+ //# sourceMappingURL=StyledCardHeader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StyledCardHeader.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/StyledCardHeader.tsx"],"names":[],"mappings":";AAEA,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;k+JAG1B,CAAA"}
@@ -0,0 +1,6 @@
1
+ import { CardHeader, styled } from '@mui/material';
2
+ export const StyledCardHeader = styled(CardHeader, { name: 'StyledCardHeader' })(({ theme }) => ({
3
+ flexWrap: 'wrap',
4
+ rowGap: theme.spacing(2),
5
+ }));
6
+ //# sourceMappingURL=StyledCardHeader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StyledCardHeader.js","sourceRoot":"","sources":["../../../../src/components/layout/StyledCardHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAElD,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;IAC/F,QAAQ,EAAE,MAAM;IAChB,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;CACzB,CAAC,CAAC,CAAA"}
@@ -0,0 +1,3 @@
1
+ export * from './Header';
2
+ export * from './StyledCardHeader';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,oBAAoB,CAAA"}
@@ -0,0 +1,3 @@
1
+ export * from './Header';
2
+ export * from './StyledCardHeader';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/layout/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,oBAAoB,CAAA"}
@@ -0,0 +1,3 @@
1
+ export * from './components';
2
+ export * from './types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,SAAS,CAAA"}
@@ -0,0 +1,3 @@
1
+ export * from './components';
2
+ export * from './types';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,SAAS,CAAA"}
@@ -0,0 +1,18 @@
1
+ export interface GasPriceWitnessUIBasePayload {
2
+ website?: string;
3
+ timestamp?: number;
4
+ schema?: string;
5
+ blockNumber?: UIField;
6
+ gasPrice?: GasPrice[];
7
+ baseFee?: UIField;
8
+ }
9
+ interface GasPrice {
10
+ price?: UIField;
11
+ priorityFee?: UIField;
12
+ }
13
+ interface UIField {
14
+ label?: string;
15
+ value?: number;
16
+ }
17
+ export {};
18
+ //# sourceMappingURL=GasPriceWitnessPayload.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GasPriceWitnessPayload.d.ts","sourceRoot":"","sources":["../../../src/types/GasPriceWitnessPayload.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,4BAA4B;IAE3C,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAA;IACrB,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,UAAU,QAAQ;IAChB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAED,UAAU,OAAO;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;CACf"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=GasPriceWitnessPayload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GasPriceWitnessPayload.js","sourceRoot":"","sources":["../../../src/types/GasPriceWitnessPayload.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export * from './GasPriceWitnessPayload';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA"}
@@ -0,0 +1,2 @@
1
+ export * from './GasPriceWitnessPayload';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA"}
package/package.json ADDED
@@ -0,0 +1,71 @@
1
+ {
2
+ "name": "@xyo-network/react-gas-price",
3
+ "author": {
4
+ "email": "support@xyo.network",
5
+ "name": "XYO Development Team",
6
+ "url": "https://xyo.network"
7
+ },
8
+ "bugs": {
9
+ "email": "support@xyo.network",
10
+ "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js/issues"
11
+ },
12
+ "dependencies": {
13
+ "@xylabs/react-flexbox": "^2.15.2",
14
+ "@xylabs/react-shared": "^2.15.2",
15
+ "@xyo-network/react-card": "^2.41.0",
16
+ "@xyo-network/react-shared": "^2.41.0",
17
+ "tslib": "^2.4.1"
18
+ },
19
+ "peerDependencies": {
20
+ "@mui/icons-material": "^5.10.14",
21
+ "@mui/material": "^5.10.3",
22
+ "@mui/styles": "^5.10.3",
23
+ "react": "^18.2.0",
24
+ "react-dom": "^18.2.0",
25
+ "react-router-dom": "^6.4.3"
26
+ },
27
+ "description": "Common React library for all XYO projects that use React",
28
+ "browser": "dist/esm/index.js",
29
+ "docs": "dist/docs.json",
30
+ "exports": {
31
+ ".": {
32
+ "node": {
33
+ "import": "./dist/esm/index.js",
34
+ "require": "./dist/cjs/index.js"
35
+ },
36
+ "browser": {
37
+ "import": "./dist/esm/index.js",
38
+ "require": "./dist/cjs/index.js"
39
+ },
40
+ "default": "./dist/esm/index.js"
41
+ },
42
+ "./dist/docs.json": {
43
+ "default": "./dist/docs.json"
44
+ },
45
+ "./package.json": "./package.json"
46
+ },
47
+ "main": "dist/cjs/index.js",
48
+ "module": "dist/esm/index.js",
49
+ "homepage": "https://xyo.network",
50
+ "keywords": [
51
+ "xyo",
52
+ "utility",
53
+ "typescript",
54
+ "react"
55
+ ],
56
+ "license": "LGPL-3.0",
57
+ "publishConfig": {
58
+ "access": "public"
59
+ },
60
+ "repository": {
61
+ "type": "git",
62
+ "url": "https://github.com/XYOracleNetwork/sdk-xyo-react-js.git"
63
+ },
64
+ "scripts": {
65
+ "lint-pkg": "npmPkgJsonLint .",
66
+ "license": "yarn license-checker --exclude \"MIT, ISC, Apache-2.0, BSD, BSD-2-Clause, CC-BY-4.0, Unlicense, CC-BY-3.0, CC0-1.0\""
67
+ },
68
+ "sideEffects": false,
69
+ "types": "dist/esm/index.d.ts",
70
+ "version": "2.41.0"
71
+ }
@@ -0,0 +1,16 @@
1
+ import { ComponentStory, Meta } from '@storybook/react'
2
+
3
+ import { EthereumGasPriceAvatar } from './EthereumGasPriceAvatar'
4
+
5
+ // eslint-disable-next-line import/no-default-export
6
+ export default {
7
+ component: EthereumGasPriceAvatar,
8
+ title: 'plugin/blockchain/EthereumGasPrice/Avatar',
9
+ } as Meta
10
+
11
+ const Template: ComponentStory<typeof EthereumGasPriceAvatar> = (props) => <EthereumGasPriceAvatar {...props} />
12
+
13
+ const Default = Template.bind({})
14
+ Default.args = {}
15
+
16
+ export { Default }
@@ -0,0 +1,10 @@
1
+ import LocalGasStationRoundedIcon from '@mui/icons-material/LocalGasStationRounded'
2
+ import { Avatar, AvatarProps } from '@mui/material'
3
+
4
+ export const EthereumGasPriceAvatar: React.FC<AvatarProps> = ({ ...props }) => {
5
+ return (
6
+ <Avatar {...props}>
7
+ <LocalGasStationRoundedIcon />
8
+ </Avatar>
9
+ )
10
+ }
@@ -0,0 +1 @@
1
+ export * from './EthereumGasPriceAvatar'
@@ -0,0 +1,25 @@
1
+ import { CardProps } from '@mui/material'
2
+
3
+ import { GasPriceWitnessUIBasePayload } from '../../types'
4
+ import { GasPriceHeaderActionsBox, GasPriceHeaderTypography } from '../HeaderComponents'
5
+ import { StyledCardHeader } from '../layout'
6
+
7
+ export interface GasPriceCardHeaderProps extends CardProps {
8
+ parsedPayload?: GasPriceWitnessUIBasePayload
9
+ title?: string
10
+ }
11
+ export const GasPriceWitnessCardHeader: React.FC<GasPriceCardHeaderProps> = ({ title, parsedPayload, ...props }) => (
12
+ <StyledCardHeader
13
+ title={<GasPriceHeaderTypography heading={title} />}
14
+ action={
15
+ <GasPriceHeaderActionsBox
16
+ timestamp={parsedPayload?.timestamp}
17
+ baseFee={parsedPayload?.baseFee?.value}
18
+ baseFeeLabel={parsedPayload?.baseFee?.label}
19
+ blockNumber={parsedPayload?.blockNumber?.value}
20
+ blockNumberLabel={parsedPayload?.blockNumber?.label}
21
+ />
22
+ }
23
+ {...props}
24
+ />
25
+ )
@@ -0,0 +1 @@
1
+ export * from './CardHeader'
@@ -0,0 +1,44 @@
1
+ import { ComponentStory, Meta } from '@storybook/react'
2
+ import { FlexCol } from '@xylabs/react-flexbox'
3
+
4
+ import { GasFeeCard } from './Card'
5
+
6
+ const DefaultArgs = {
7
+ gasPrice: 15.760184184000002,
8
+ priorityFee: 1.0625,
9
+ }
10
+
11
+ // eslint-disable-next-line import/no-default-export
12
+ export default {
13
+ component: GasFeeCard,
14
+ title: 'plugin/blockchain/GasPrice/GasFeeCard',
15
+ } as Meta
16
+
17
+ const Template: ComponentStory<typeof GasFeeCard> = (props) => {
18
+ return <GasFeeCard {...props} />
19
+ }
20
+
21
+ const Default = Template.bind({})
22
+ Default.args = {}
23
+
24
+ const Contained = Template.bind({})
25
+ Contained.args = DefaultArgs
26
+ Contained.decorators = [
27
+ (Story, args) => (
28
+ <FlexCol alignItems="start">
29
+ <Story {...args} />
30
+ </FlexCol>
31
+ ),
32
+ ]
33
+
34
+ const WithData = Template.bind({})
35
+ WithData.args = DefaultArgs
36
+
37
+ const WithLabel = Template.bind({})
38
+ WithLabel.args = {
39
+ ...DefaultArgs,
40
+ priorityFeeLabel: 'CustomPriorityFeeLabel',
41
+ speed: 'CustomSpeedLabel',
42
+ }
43
+
44
+ export { Contained, Default, WithData, WithLabel }
@@ -0,0 +1,31 @@
1
+ import { Card, CardProps, Paper, useTheme } from '@mui/material'
2
+ import { FlexGrowCol } from '@xylabs/react-flexbox'
3
+ import { CardContentEx } from '@xyo-network/react-card'
4
+
5
+ import { GasPriceBox, PriorityFeeBox, SpeedBox } from './components'
6
+
7
+ export interface GasFeeCardProps extends CardProps {
8
+ gasPrice?: number
9
+ priorityFee?: number
10
+ priorityFeeLabel?: string
11
+ speed?: string
12
+ speedPaperElevation?: number
13
+ }
14
+
15
+ export const GasFeeCard: React.FC<GasFeeCardProps> = ({ gasPrice, speedPaperElevation, priorityFee, priorityFeeLabel, speed = 'low', ...props }) => {
16
+ const theme = useTheme()
17
+
18
+ return (
19
+ <Card sx={{ p: 0 }} {...props}>
20
+ <CardContentEx removePadding sx={{ flexDirection: 'column', flexGrow: 1, p: 0, rowGap: 2 }}>
21
+ <FlexGrowCol bgcolor={'secondary.dark'} alignItems="start" p={2} rowGap={1.5}>
22
+ <GasPriceBox gasPrice={gasPrice} />
23
+ {priorityFee ? <PriorityFeeBox priorityFee={priorityFee} priorityFeeLabel={priorityFeeLabel} /> : null}
24
+ </FlexGrowCol>
25
+ <Paper elevation={speedPaperElevation} sx={{ borderRadius: `0 0 ${theme.shape.borderRadius}px ${theme.shape.borderRadius}px` }}>
26
+ <SpeedBox speed={speed} />
27
+ </Paper>
28
+ </CardContentEx>
29
+ </Card>
30
+ )
31
+ }
@@ -0,0 +1,21 @@
1
+ import { useTheme } from '@mui/material'
2
+ import { FlexBoxProps, FlexRow } from '@xylabs/react-flexbox'
3
+ import { TypographyEx } from '@xyo-network/react-shared'
4
+
5
+ import { GweiLabelTypography } from './GweiLabelTypography'
6
+
7
+ export interface GasPriceBoxProps extends FlexBoxProps {
8
+ gasPrice?: number
9
+ }
10
+
11
+ export const GasPriceBox: React.FC<GasPriceBoxProps> = ({ gasPrice, ...props }) => {
12
+ const theme = useTheme()
13
+ return (
14
+ <FlexRow columnGap={1.5} rowGap={1.5} alignItems="end" {...props}>
15
+ <TypographyEx lineHeight={1} fontWeight="bold" fontSize={theme.spacing(6)} title={gasPrice?.toString() ?? ''}>
16
+ {gasPrice?.toFixed(2)}
17
+ </TypographyEx>
18
+ <GweiLabelTypography fontSize={theme.spacing(2)} />
19
+ </FlexRow>
20
+ )
21
+ }
@@ -0,0 +1,7 @@
1
+ import { TypographyEx, TypographyExProps } from '@xyo-network/react-shared'
2
+
3
+ export const GweiLabelTypography: React.FC<TypographyExProps> = (props) => (
4
+ <TypographyEx variant="caption" {...props}>
5
+ GWEI
6
+ </TypographyEx>
7
+ )
@@ -0,0 +1,27 @@
1
+ import LocalGasStationRoundedIcon from '@mui/icons-material/LocalGasStationRounded'
2
+ import { useTheme } from '@mui/material'
3
+ import { FlexBoxProps, FlexCol, FlexGrowRow } from '@xylabs/react-flexbox'
4
+ import { TypographyEx } from '@xyo-network/react-shared'
5
+
6
+ import { GweiLabelTypography } from './GweiLabelTypography'
7
+
8
+ export interface PriorityFeeBoxProps extends FlexBoxProps {
9
+ priorityFee?: number
10
+ priorityFeeLabel?: string
11
+ }
12
+
13
+ export const PriorityFeeBox: React.FC<PriorityFeeBoxProps> = ({ priorityFee, priorityFeeLabel = 'Priority Fee', ...props }) => {
14
+ const theme = useTheme()
15
+
16
+ return (
17
+ <FlexGrowRow width="100%" justifyContent="space-between" alignItems="end" {...props}>
18
+ <FlexCol alignItems="start">
19
+ <TypographyEx>{priorityFeeLabel}</TypographyEx>
20
+ <TypographyEx title={priorityFee?.toString() ?? ''}>
21
+ {priorityFee?.toFixed(2)} <GweiLabelTypography fontSize={theme.spacing(1)} />
22
+ </TypographyEx>
23
+ </FlexCol>
24
+ <LocalGasStationRoundedIcon />
25
+ </FlexGrowRow>
26
+ )
27
+ }
@@ -0,0 +1,19 @@
1
+ import { useTheme } from '@mui/material'
2
+ import { FlexBoxProps, FlexGrowCol } from '@xylabs/react-flexbox'
3
+ import { TypographyEx } from '@xyo-network/react-shared'
4
+
5
+ export interface SpeedBoxProps extends FlexBoxProps {
6
+ speed?: string
7
+ }
8
+
9
+ export const SpeedBox: React.FC<SpeedBoxProps> = ({ speed, ...props }) => {
10
+ const theme = useTheme()
11
+
12
+ return speed ? (
13
+ <FlexGrowCol {...props}>
14
+ <TypographyEx fontSize={theme.spacing(3)} p={1}>
15
+ {speed}
16
+ </TypographyEx>
17
+ </FlexGrowCol>
18
+ ) : null
19
+ }
@@ -0,0 +1,3 @@
1
+ export * from './GasPriceBox'
2
+ export * from './PriorityFeeBox'
3
+ export * from './SpeedBox'
@@ -0,0 +1 @@
1
+ export * from './Card'
@@ -0,0 +1,25 @@
1
+ import { FlexBoxProps } from '@xylabs/react-flexbox'
2
+
3
+ import { GasPriceWitnessUIBasePayload } from '../types'
4
+ import { GasPriceHeaderActionsBox, GasPriceHeaderTypography } from './HeaderComponents'
5
+ import { StyledGasPriceHeaderBox } from './layout'
6
+
7
+ export interface GasPriceWitnessHeaderBoxProps extends FlexBoxProps {
8
+ parsedPayload?: GasPriceWitnessUIBasePayload
9
+ heading?: string
10
+ }
11
+
12
+ export const GasPriceWitnessHeaderBox: React.FC<GasPriceWitnessHeaderBoxProps> = ({ heading, parsedPayload, ...props }) => {
13
+ return (
14
+ <StyledGasPriceHeaderBox {...props}>
15
+ <GasPriceHeaderTypography heading={heading} />
16
+ <GasPriceHeaderActionsBox
17
+ timestamp={parsedPayload?.timestamp}
18
+ baseFee={parsedPayload?.baseFee?.value}
19
+ baseFeeLabel={parsedPayload?.baseFee?.label}
20
+ blockNumber={parsedPayload?.blockNumber?.value}
21
+ blockNumberLabel={parsedPayload?.blockNumber?.label}
22
+ />
23
+ </StyledGasPriceHeaderBox>
24
+ )
25
+ }
@@ -0,0 +1,25 @@
1
+ import { ComponentStory, Meta } from '@storybook/react'
2
+
3
+ import { GasPriceHeaderActionsBox } from './Actions'
4
+
5
+ // eslint-disable-next-line import/no-default-export
6
+ export default {
7
+ component: GasPriceHeaderActionsBox,
8
+ title: 'plugin/blockchain/GasPrice/GasPriceHeaderActionsBox',
9
+ } as Meta
10
+
11
+ const Template: ComponentStory<typeof GasPriceHeaderActionsBox> = (props) => <GasPriceHeaderActionsBox {...props} />
12
+
13
+ const Default = Template.bind({})
14
+ Default.args = {}
15
+
16
+ const WithData = Template.bind({})
17
+ WithData.args = {
18
+ baseFee: 12,
19
+ baseFeeLabel: 'Custom BaseFee Label',
20
+ blockNumber: 123465,
21
+ blockNumberLabel: 'Custom BlockNumber Label',
22
+ timestamp: 1670530947,
23
+ }
24
+
25
+ export { Default, WithData }
@@ -0,0 +1,27 @@
1
+ import { Chip } from '@mui/material'
2
+ import { FlexBoxProps, FlexRow } from '@xylabs/react-flexbox'
3
+
4
+ export interface GasPriceEstimateActionsBoxProps extends FlexBoxProps {
5
+ timestamp?: number
6
+ baseFee?: number
7
+ baseFeeLabel?: string
8
+ blockNumber?: number
9
+ blockNumberLabel?: string
10
+ }
11
+
12
+ export const GasPriceHeaderActionsBox: React.FC<GasPriceEstimateActionsBoxProps> = ({
13
+ timestamp,
14
+ baseFee,
15
+ baseFeeLabel = 'Base Fee',
16
+ blockNumber,
17
+ blockNumberLabel = 'Block Number',
18
+ ...props
19
+ }) => {
20
+ return (
21
+ <FlexRow columnGap={1} rowGap={1} flexWrap="wrap" {...props}>
22
+ {timestamp ? <Chip label={new Date(timestamp).toLocaleString()} /> : null}
23
+ {baseFee ? <Chip label={`${baseFeeLabel} - ${baseFee.toFixed(2)} GWEI`} /> : null}
24
+ {blockNumber ? <Chip label={`${blockNumberLabel} - ${blockNumber}`} /> : null}
25
+ </FlexRow>
26
+ )
27
+ }
@@ -0,0 +1,21 @@
1
+ import { useTheme } from '@mui/material'
2
+ import { WithChildren } from '@xylabs/react-shared'
3
+ import { TypographyExProps, useGetTokenData } from '@xyo-network/react-shared'
4
+
5
+ import { GasPriceHeadingTypography } from './Heading'
6
+
7
+ export interface GasPriceHeaderTypographyProps extends TypographyExProps, WithChildren {
8
+ heading?: string
9
+ }
10
+
11
+ export const GasPriceHeaderTypography: React.FC<GasPriceHeaderTypographyProps> = ({ heading, children, ...props }) => {
12
+ const theme = useTheme()
13
+ const [ethData] = useGetTokenData(['eth'])
14
+ const networkIcon = <img height={theme.spacing(4)} src={ethData.icon} />
15
+
16
+ return (
17
+ <GasPriceHeadingTypography heading={heading} networkIcon={networkIcon} {...props}>
18
+ {children}
19
+ </GasPriceHeadingTypography>
20
+ )
21
+ }
@@ -0,0 +1,18 @@
1
+ import { useTheme } from '@mui/material'
2
+ import { TypographyEx, TypographyExProps } from '@xyo-network/react-shared'
3
+ import { ReactNode } from 'react'
4
+
5
+ export interface GasPriceHeadingTypographyProps extends TypographyExProps {
6
+ heading?: string
7
+ children?: ReactNode
8
+ networkIcon?: ReactNode
9
+ }
10
+
11
+ export const GasPriceHeadingTypography: React.FC<GasPriceHeadingTypographyProps> = ({ heading, networkIcon, children, ...props }) => {
12
+ const theme = useTheme()
13
+ return (
14
+ <TypographyEx fontSize={theme.spacing(6)} lineHeight={1} {...props}>
15
+ {heading} {networkIcon} {children}
16
+ </TypographyEx>
17
+ )
18
+ }
@@ -0,0 +1,2 @@
1
+ export * from './Header'
2
+ export * from './Heading'
@@ -0,0 +1,2 @@
1
+ export * from './Actions'
2
+ export * from './Header'
@@ -0,0 +1,24 @@
1
+ import { ComponentStory, Meta } from '@storybook/react'
2
+
3
+ import { ToggleRawPayloadBox } from './ToggleRawPayloadBox'
4
+
5
+ // eslint-disable-next-line import/no-default-export
6
+ export default {
7
+ component: ToggleRawPayloadBox,
8
+ title: 'plugin/blockchain/GasPrice/ToggleRawPayloadBox',
9
+ } as Meta
10
+
11
+ const Template: ComponentStory<typeof ToggleRawPayloadBox> = (props) => <ToggleRawPayloadBox {...props} />
12
+
13
+ const Default = Template.bind({})
14
+ Default.args = {}
15
+
16
+ const WithData = Template.bind({})
17
+ WithData.args = {
18
+ gasPricePayload: {
19
+ foo: 'bar',
20
+ schema: 'network.xyo.some.schema',
21
+ },
22
+ }
23
+
24
+ export { Default, WithData }
@@ -0,0 +1,23 @@
1
+ import { Button, Collapse, Paper } from '@mui/material'
2
+ import { FlexBoxProps, FlexCol } from '@xylabs/react-flexbox'
3
+ import { useState } from 'react'
4
+
5
+ export interface ToggleRawPayloadBoxProps extends FlexBoxProps {
6
+ gasPricePayload?: object
7
+ }
8
+
9
+ export const ToggleRawPayloadBox: React.FC<ToggleRawPayloadBoxProps> = ({ gasPricePayload, ...props }) => {
10
+ const [collapse, setCollapse] = useState(false)
11
+ return gasPricePayload ? (
12
+ <FlexCol rowGap={1} {...props}>
13
+ <Button color="secondary" sx={{ bgcolor: 'secondary.dark', color: 'white' }} variant="contained" onClick={() => setCollapse(!collapse)}>
14
+ Raw Payload
15
+ </Button>
16
+ <Collapse in={collapse}>
17
+ <Paper elevation={4} sx={{ p: 2 }}>
18
+ <pre>{JSON.stringify(gasPricePayload, null, 2)}</pre>
19
+ </Paper>
20
+ </Collapse>
21
+ </FlexCol>
22
+ ) : null
23
+ }
@@ -0,0 +1 @@
1
+ export * from './ToggleRawPayloadBox'
@@ -0,0 +1,7 @@
1
+ export * from './Avatar'
2
+ export * from './CardHeader'
3
+ export * from './GasFees'
4
+ export * from './HeaderBox'
5
+ export * from './HeaderComponents'
6
+ export * from './layout'
7
+ export * from './RawPayload'
@@ -0,0 +1,12 @@
1
+ import { styled } from '@mui/material'
2
+ import { FlexRow } from '@xylabs/react-flexbox'
3
+
4
+ export const StyledGasPriceHeaderBox = styled(FlexRow, { name: 'StyledGasPriceEstimateBox' })(({ theme }) => ({
5
+ alignItems: 'end',
6
+ columnGap: theme.spacing(2),
7
+ flexWrap: 'wrap',
8
+ justifyContent: 'space-between',
9
+ justifyItems: 'space-between',
10
+ rowGap: theme.spacing(2),
11
+ width: '100%',
12
+ }))