FRE-600: Fix code review blockers

- Consolidated duplicate UndoManagers to single instance
- Fixed connection promise to only resolve on 'connected' status
- Fixed WebSocketProvider import (WebsocketProvider)
- Added proper doc.destroy() cleanup
- Renamed isPresenceInitialized property to avoid conflict

Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
2026-04-25 00:08:01 -04:00
parent 65b552bb08
commit 7c684a42cc
48450 changed files with 5679671 additions and 383 deletions

39
node_modules/viem/utils/address/isAddress.ts generated vendored Normal file
View File

@@ -0,0 +1,39 @@
import type { Address } from 'abitype'
import type { ErrorType } from '../../errors/utils.js'
import { LruMap } from '../lru.js'
import { checksumAddress } from './getAddress.js'
const addressRegex = /^0x[a-fA-F0-9]{40}$/
/** @internal */
export const isAddressCache = /*#__PURE__*/ new LruMap<boolean>(8192)
export type IsAddressOptions = {
/**
* Enables strict mode. Whether or not to compare the address against its checksum.
*
* @default true
*/
strict?: boolean | undefined
}
export type IsAddressErrorType = ErrorType
export function isAddress(
address: string,
options?: IsAddressOptions | undefined,
): address is Address {
const { strict = true } = options ?? {}
const cacheKey = `${address}.${strict}`
if (isAddressCache.has(cacheKey)) return isAddressCache.get(cacheKey)!
const result = (() => {
if (!addressRegex.test(address)) return false
if (address.toLowerCase() === address) return true
if (strict) return checksumAddress(address as Address) === address
return true
})()
isAddressCache.set(cacheKey, result)
return result
}