Files
pezkuwi-apps/packages/react-query/src/PoolSize.tsx
T
pezkuwichain 7a4bbeac25 fix: update extension packages and fix type compatibility for pezkuwi-sdk
- Update @pezkuwi/extension-inject to ^0.62.13 with proper /types exports
- Update @pezkuwi/extension-dapp to ^0.62.13
- Update @pezkuwi/extension-compat-metamask to ^0.62.13
- Fix IconTheme type to include 'bizinikiwi' and 'pezkuwi' themes
- Fix endpoint array issues (getTeleports -> direct array references)
- Add type assertions for external package compatibility (acala, moonbeam, parallel)
- Fix subspace.ts dynamic class typing
- Fix conviction type in page-referenda
- Update Pallet type names to Pezpallet prefix across codebase
- Define InjectedExtension types locally for module resolution
- Add styled-components DefaultTheme augmentation
- Add react-copy-to-clipboard type declaration for React 18

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-08 16:24:19 +03:00

39 lines
973 B
TypeScript

// Copyright 2017-2026 @pezkuwi/react-query authors & contributors
// SPDX-License-Identifier: Apache-2.0
import type { PezpalletBrokerStatusRecord } from '@pezkuwi/types/lookup';
import React from 'react';
import { useApi, useCall } from '@pezkuwi/react-hooks';
interface Props {
children?: React.ReactNode;
className?: string;
}
function PoolSize ({ children, className = '' }: Props): React.ReactElement<Props> {
const { api } = useApi();
const status = useCall<PezpalletBrokerStatusRecord>(api.query.broker?.status);
let systemPool = 0;
let privatePool = 0;
let poolSize = '';
if (status === undefined) {
poolSize = '0';
} else {
systemPool = status.toJSON().systemPoolSize as number;
privatePool = status.toJSON().systemPoolSize as number;
poolSize = (systemPool + privatePool).toString();
}
return (
<div className={className}>
{poolSize}
{children}
</div>
);
}
export default React.memo(PoolSize);