Files
pezkuwi-apps/packages/react-hooks/src/useAccountId.ts
T

24 lines
777 B
TypeScript

// Copyright 2017-2026 @pezkuwi/react-hooks authors & contributors
// SPDX-License-Identifier: Apache-2.0
import { useCallback, useState } from 'react';
import { createNamedHook } from './createNamedHook.js';
function useAccountIdImpl (initialValue: string | null = null, onChangeAccountId?: (_: string | null) => void): [string | null, (_: string | null) => void] {
const [accountId, setAccountId] = useState<string | null>(initialValue);
const _setAccountId = useCallback(
(accountId: string | null = null): void => {
setAccountId(accountId);
onChangeAccountId && onChangeAccountId(accountId);
},
[onChangeAccountId]
);
return [accountId, _setAccountId];
}
export const useAccountId = createNamedHook('useAccountId', useAccountIdImpl);