@xyo-network/react-chain-blockchain 1.2.4 → 1.2.5

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.
@@ -1,6 +1,12 @@
1
+ import type { Hash } from '@xylabs/hex';
1
2
  import React from 'react';
2
3
  import type { BlockTableCellProps } from './lib/index.ts';
3
4
  export interface BlockPayloadCountsTableCellProps extends BlockTableCellProps {
4
5
  }
6
+ export interface BlockPayloadCountsEventData {
7
+ block: Hash;
8
+ privatePayloads: number;
9
+ publicPayloads: number;
10
+ }
5
11
  export declare const BlockPayloadCountsTableCell: React.FC<BlockPayloadCountsTableCellProps>;
6
12
  //# sourceMappingURL=PayloadCounts.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PayloadCounts.d.ts","sourceRoot":"","sources":["../../../../../../src/components/block/table/cell/PayloadCounts.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AAEzD,MAAM,WAAW,gCAAiC,SAAQ,mBAAmB;CAAG;AAEhF,eAAO,MAAM,2BAA2B,EAAE,KAAK,CAAC,EAAE,CAAC,gCAAgC,CAqBlF,CAAA"}
1
+ {"version":3,"file":"PayloadCounts.d.ts","sourceRoot":"","sources":["../../../../../../src/components/block/table/cell/PayloadCounts.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AAEzD,MAAM,WAAW,gCAAiC,SAAQ,mBAAmB;CAAG;AAEhF,MAAM,WAAW,2BAA2B;IAC1C,KAAK,EAAE,IAAI,CAAA;IACX,eAAe,EAAE,MAAM,CAAA;IACvB,cAAc,EAAE,MAAM,CAAA;CACvB;AAED,eAAO,MAAM,2BAA2B,EAAE,KAAK,CAAC,EAAE,CAAC,gCAAgC,CA6BlF,CAAA"}
@@ -1,6 +1,11 @@
1
+ import type { Hash } from '@xylabs/hex';
1
2
  import React from 'react';
2
3
  import type { BlockTableCellProps } from './lib/index.ts';
3
4
  export interface BlockTransactionCountTableCellProps extends BlockTableCellProps {
4
5
  }
6
+ export interface BlockTransactionCountEventData {
7
+ block: Hash;
8
+ transactions: number;
9
+ }
5
10
  export declare const BlockTransactionCountTableCell: React.FC<BlockTransactionCountTableCellProps>;
6
11
  //# sourceMappingURL=TransactionCount.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TransactionCount.d.ts","sourceRoot":"","sources":["../../../../../../src/components/block/table/cell/TransactionCount.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AAEzD,MAAM,WAAW,mCAAoC,SAAQ,mBAAmB;CAAG;AAEnF,eAAO,MAAM,8BAA8B,EAAE,KAAK,CAAC,EAAE,CAAC,mCAAmC,CAoBxF,CAAA"}
1
+ {"version":3,"file":"TransactionCount.d.ts","sourceRoot":"","sources":["../../../../../../src/components/block/table/cell/TransactionCount.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AAEzD,MAAM,WAAW,mCAAoC,SAAQ,mBAAmB;CAAG;AAEnF,MAAM,WAAW,8BAA8B;IAC7C,KAAK,EAAE,IAAI,CAAA;IACX,YAAY,EAAE,MAAM,CAAA;CACrB;AAED,eAAO,MAAM,8BAA8B,EAAE,KAAK,CAAC,EAAE,CAAC,mCAAmC,CA4BxF,CAAA"}
@@ -1,4 +1,4 @@
1
1
  import type { Ref } from 'react';
2
2
  import type { BlockHeaderEventNouns } from '../../../hooks/index.ts';
3
- export declare const useLinkedBlockItem: (noun?: BlockHeaderEventNouns, data?: string) => [Ref<HTMLElement | null>, (event: React.MouseEvent) => void];
3
+ export declare const useLinkedBlockItem: (noun?: BlockHeaderEventNouns, data?: string | object) => [Ref<HTMLElement | null>, (event: React.MouseEvent) => void];
4
4
  //# sourceMappingURL=useLinkedBlockItem.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useLinkedBlockItem.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/block/table/cell/hooks/useLinkedBlockItem.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAEhC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAEpE,eAAO,MAAM,kBAAkB,GAAI,OAAO,qBAAqB,EAAE,OAAO,MAAM,KAAG,CAAC,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAa3I,CAAA"}
1
+ {"version":3,"file":"useLinkedBlockItem.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/block/table/cell/hooks/useLinkedBlockItem.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAEhC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAEpE,eAAO,MAAM,kBAAkB,GAAI,OAAO,qBAAqB,EAAE,OAAO,MAAM,GAAG,MAAM,KAAG,CAAC,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAapJ,CAAA"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "http://json.schemastore.org/package.json",
3
3
  "name": "@xyo-network/react-chain-blockchain",
4
- "version": "1.2.4",
4
+ "version": "1.2.5",
5
5
  "description": "XYO Layer One React SDK Blockchain",
6
6
  "homepage": "https://xylabs.com",
7
7
  "bugs": {
@@ -52,20 +52,20 @@
52
52
  "@xyo-network/boundwitness-builder": "^3.12.4",
53
53
  "@xyo-network/boundwitness-model": "^3.12.4",
54
54
  "@xyo-network/bridge-http": "^3.12.4",
55
- "@xyo-network/chain-ethereum": "^1.2.4",
56
- "@xyo-network/chain-protocol": "^1.2.4",
57
- "@xyo-network/chain-services": "^1.2.4",
55
+ "@xyo-network/chain-ethereum": "^1.2.5",
56
+ "@xyo-network/chain-protocol": "^1.2.5",
57
+ "@xyo-network/chain-services": "^1.2.5",
58
58
  "@xyo-network/module-model": "^3.12.4",
59
59
  "@xyo-network/payload-builder": "^3.12.4",
60
60
  "@xyo-network/payload-model": "^3.12.4",
61
- "@xyo-network/react-chain-blockies": "^1.2.4",
62
- "@xyo-network/react-chain-boundwitness": "^1.2.4",
61
+ "@xyo-network/react-chain-blockies": "^1.2.5",
62
+ "@xyo-network/react-chain-boundwitness": "^1.2.5",
63
63
  "@xyo-network/react-event": "^5.1.7",
64
64
  "@xyo-network/react-payload-raw-info": "^5.1.7",
65
65
  "@xyo-network/react-payload-table": "^5.1.7",
66
66
  "@xyo-network/react-shared": "^5.1.7",
67
67
  "@xyo-network/react-table": "^5.1.7",
68
- "@xyo-network/xl1-model": "^1.2.4"
68
+ "@xyo-network/xl1-model": "^1.2.5"
69
69
  },
70
70
  "devDependencies": {
71
71
  "@emotion/react": "^11.14.0",
@@ -79,7 +79,7 @@
79
79
  "@xylabs/ts-scripts-yarn3": "^6.2.1",
80
80
  "@xylabs/tsconfig-react": "^6.2.1",
81
81
  "@xyo-network/archivist-memory": "^3.12.4",
82
- "@xyo-network/chain-utils": "^1.2.4",
82
+ "@xyo-network/chain-utils": "^1.2.5",
83
83
  "react": "^19.1.0",
84
84
  "react-dom": "^19.1.0",
85
85
  "react-router-dom": "^7.5.0",
@@ -2,6 +2,7 @@ import { Error } from '@mui/icons-material'
2
2
  import {
3
3
  Link, TableCell, Tooltip,
4
4
  } from '@mui/material'
5
+ import type { Hash } from '@xylabs/hex'
5
6
  import React from 'react'
6
7
 
7
8
  import { usePayloadCountsFromBlock } from '../../hooks/index.ts'
@@ -10,13 +11,27 @@ import type { BlockTableCellProps } from './lib/index.ts'
10
11
 
11
12
  export interface BlockPayloadCountsTableCellProps extends BlockTableCellProps {}
12
13
 
14
+ export interface BlockPayloadCountsEventData {
15
+ block: Hash
16
+ privatePayloads: number
17
+ publicPayloads: number
18
+ }
19
+
13
20
  export const BlockPayloadCountsTableCell: React.FC<BlockPayloadCountsTableCellProps> = ({
14
21
  block, linked, ...props
15
22
  }) => {
16
- const [pubPayloads, privPayloads, error] = usePayloadCountsFromBlock(block)
17
- const data = `${pubPayloads}/${privPayloads}`
23
+ const [publicPayloads, privatePayloads, error] = usePayloadCountsFromBlock(block)
24
+ const data: BlockPayloadCountsEventData | undefined = (block && privatePayloads !== undefined && publicPayloads !== undefined)
25
+ ? {
26
+ publicPayloads,
27
+ privatePayloads,
28
+ block: block[0]._hash,
29
+ }
30
+ : undefined
18
31
  const [ref, handleClick] = useLinkedBlockItem('payload-counts', data)
19
32
 
33
+ const renderText = `${publicPayloads ?? '--'} / ${privatePayloads ?? '--'}`
34
+
20
35
  return (
21
36
  <TableCell ref={ref} {...props}>
22
37
  <span>
@@ -27,7 +42,7 @@ export const BlockPayloadCountsTableCell: React.FC<BlockPayloadCountsTableCellPr
27
42
  </Tooltip>
28
43
  )
29
44
  : null}
30
- {linked ? <Link onClick={handleClick} sx={{ cursor: 'pointer' }}>{data ?? '--/--'}</Link> : data ?? '--/--'}
45
+ {linked ? <Link onClick={handleClick} sx={{ cursor: 'pointer' }}>{renderText}</Link> : renderText}
31
46
  </span>
32
47
  </TableCell>
33
48
  )
@@ -2,6 +2,7 @@ import { Error } from '@mui/icons-material'
2
2
  import {
3
3
  Link, TableCell, Tooltip,
4
4
  } from '@mui/material'
5
+ import type { Hash } from '@xylabs/hex'
5
6
  import React from 'react'
6
7
 
7
8
  import { useTxsFromBlock } from '../../hooks/index.ts'
@@ -10,11 +11,24 @@ import type { BlockTableCellProps } from './lib/index.ts'
10
11
 
11
12
  export interface BlockTransactionCountTableCellProps extends BlockTableCellProps {}
12
13
 
14
+ export interface BlockTransactionCountEventData {
15
+ block: Hash
16
+ transactions: number
17
+ }
18
+
13
19
  export const BlockTransactionCountTableCell: React.FC<BlockTransactionCountTableCellProps> = ({
14
20
  block, linked, ...props
15
21
  }) => {
16
- const [txs, error] = useTxsFromBlock(block)
17
- const [ref, handleClick] = useLinkedBlockItem('transaction-count', JSON.stringify(txs ?? null))
22
+ const [transactions, error] = useTxsFromBlock(block)
23
+
24
+ const data: BlockTransactionCountEventData | undefined = (block && transactions !== undefined)
25
+ ? {
26
+ transactions: transactions.length,
27
+ block: block[0]._hash,
28
+ }
29
+ : undefined
30
+
31
+ const [ref, handleClick] = useLinkedBlockItem('transaction-count', data)
18
32
 
19
33
  return (
20
34
  <TableCell ref={ref} {...props}>
@@ -26,7 +40,7 @@ export const BlockTransactionCountTableCell: React.FC<BlockTransactionCountTable
26
40
  </Tooltip>
27
41
  )
28
42
  : null}
29
- {linked ? <Link onClick={handleClick} sx={{ cursor: 'pointer' }}>{txs?.length ?? 0}</Link> : txs?.length ?? 0}
43
+ {linked ? <Link onClick={handleClick} sx={{ cursor: 'pointer' }}>{transactions?.length ?? '--'}</Link> : transactions?.length ?? '--'}
30
44
  </span>
31
45
  </TableCell>
32
46
  )
@@ -3,8 +3,8 @@ import type { Ref } from 'react'
3
3
 
4
4
  import type { BlockHeaderEventNouns } from '../../../hooks/index.ts'
5
5
 
6
- export const useLinkedBlockItem = (noun?: BlockHeaderEventNouns, data?: string): [Ref<HTMLElement | null>, (event: React.MouseEvent) => void] => {
7
- const [ref, dispatch] = useEvent<HTMLAnchorElement, BlockHeaderEventNouns>()
6
+ export const useLinkedBlockItem = (noun?: BlockHeaderEventNouns, data?: string | object): [Ref<HTMLElement | null>, (event: React.MouseEvent) => void] => {
7
+ const [ref, dispatch] = useEvent<HTMLAnchorElement, BlockHeaderEventNouns, string, string | object>()
8
8
 
9
9
  const handleClick = (event: React.MouseEvent) => {
10
10
  event.preventDefault()