@xyo-network/xl1-rpc 1.15.21 → 1.15.23
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.
- package/dist/neutral/index.mjs +7 -2
- package/dist/neutral/index.mjs.map +1 -1
- package/dist/neutral/provider/gateway/Abstract.d.ts.map +1 -1
- package/dist/node/index-node.mjs +7 -2
- package/dist/node/index-node.mjs.map +1 -1
- package/dist/node/provider/gateway/Abstract.d.ts.map +1 -1
- package/package.json +28 -28
- package/src/provider/gateway/Abstract.ts +7 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/engine/requestSchemas.ts","../../src/engine/rpcMethodHandlersFromRunner.ts","../../src/engine/rpcMethodHandlersFromSigner.ts","../../src/engine/rpcMethodHandlersFromViewer.ts","../../src/engine/rpcMethodHandlersFromConnection.ts","../../src/engine/rpcMethodHandlersFromPermissions.ts","../../src/provider/client/MemoryXyoClient.ts","../../src/provider/connection/HttpRpcXyoConnection.ts","../../src/transport/HttpRpcTransport.ts","../../src/types/ErrorCodes.ts","../../src/types/JsonRpc.ts","../../src/types/schema/XyoPermissionsRpcSchemas.ts","../../src/types/schema/common/Address.ts","../../src/types/schema/common/BlockBoundWitness.ts","../../src/types/schema/common/BoundWitness.ts","../../src/types/schema/common/Payload.ts","../../src/types/schema/common/Sequence.ts","../../src/types/schema/common/Chain.ts","../../src/types/schema/common/HydratedBlock.ts","../../src/types/schema/common/HydratedTransaction.ts","../../src/types/schema/common/TransactionBoundWitness.ts","../../src/types/schema/common/TransactionFees.ts","../../src/types/schema/common/Json.ts","../../src/types/schema/common/Permission.ts","../../src/types/schema/common/Stake.ts","../../src/types/schema/common/StepIdentity.ts","../../src/types/schema/common/Transfer.ts","../../src/types/schema/common/TransferPair.ts","../../src/types/schema/XyoProviderRpcSchemas.ts","../../src/types/schema/XyoRunnerRpcSchemas.ts","../../src/types/schema/XyoSignerRpcSchemas.ts","../../src/types/schema/XyoViewerRpcSchemas.ts","../../src/types/schema/AllRpcSchemas.ts","../../src/types/schema/createRequestSchema.ts","../../src/types/schema/createResponseSchema.ts","../../src/transport/MemoryRpcTransport.ts","../../src/transport/post-message/SessionEnvelope.ts","../../src/provider/datalake/AbstractXyoDataLake.ts","../../src/provider/datalake/ArchivistXyoDataLake.ts","../../src/provider/datalake/HttpXyoDataLake.ts","../../src/provider/runner/JsonRpcXyoRunner.ts","../../src/provider/runner/MemoryXyoRunner.ts","../../src/provider/runner/NodeXyoRunner.ts","../../src/provider/signer/JsonRpcXyoSigner.ts","../../src/provider/signer/MemoryXyoSigner.ts","../../src/provider/viewer/JsonRpcXyoViewer.ts","../../src/provider/connection/XyoBaseConnection.ts","../../src/provider/gateway/Abstract.ts","../../src/provider/gateway/MemoryXyoGateway.ts","../../src/provider/network/MemoryXyoNetwork.ts","../../src/provider/network/lib/FailedNetworkStatusPayloads.ts","../../src/provider/network/lib/StatusNetworks.ts","../../src/provider/permissions/MemoryXyoPermissions.ts","../../src/provider/permissions/RpcXyoPermissions.ts","../../src/provider/permissions/store/MemoryPermissions.ts"],"sourcesContent":["import type { ZodObject, ZodRawShape } from 'zod'\n\nexport const requestSchemas: Record<string, ZodObject<ZodRawShape> | undefined> = {}\n","import type { XyoRunner } from '@xyo-network/xl1-protocol'\n\nimport type { XyoRunnerRpcMethodHandlers } from '../types/index.ts'\n\nexport const rpcMethodHandlersFromRunner = (runner: XyoRunner): XyoRunnerRpcMethodHandlers => {\n return { xyoRunner_broadcastTransaction: params => runner.broadcastTransaction(...(params ?? [])) }\n}\n","import type { XyoSigner } from '@xyo-network/xl1-protocol'\n\nimport type { XyoSignerRpcMethodHandlers } from '../types/index.ts'\n\nexport const rpcMethodHandlersFromSigner = (signer: XyoSigner): XyoSignerRpcMethodHandlers => {\n return {\n xyoSigner_address: params => signer.address(...(params ?? [])),\n xyoSigner_createSignedTransaction: params => signer.createSignedTransaction(...(params ?? [])),\n xyoSigner_signTransaction: params => signer.signTransaction(...(params ?? [])),\n }\n}\n","import type { XyoViewer } from '@xyo-network/xl1-protocol'\n\nimport type { XyoViewerRpcMethodHandlers } from '../types/index.ts'\n\nexport const rpcMethodHandlersFromViewer = (viewer: XyoViewer): XyoViewerRpcMethodHandlers => {\n return {\n xyoViewer_networkStakeStepRewardClaimedByAddress: params => viewer.networkStakeStepRewardClaimedByAddress(...(params ?? [])),\n xyoViewer_networkStakeStepRewardAddressReward: params => viewer.networkStakeStepRewardAddressReward(...(params ?? [])),\n xyoViewer_networkStakeStepRewardAddressHistory: params => viewer.networkStakeStepRewardAddressHistory(...(params ?? [])),\n xyoViewer_networkStakeStepRewardAddressShare: params => viewer.networkStakeStepRewardAddressShare(...(params ?? [])),\n xyoViewer_networkStakeStepRewardWeightForAddress: params => viewer.networkStakeStepRewardWeightForAddress?.(...(params ?? [])),\n xyoViewer_networkStakeStepRewardUnclaimedByAddress: params => viewer.networkStakeStepRewardUnclaimedByAddress(...(params ?? [])),\n xyoViewer_networkStakeStepRewardPoolShares: params => viewer.networkStakeStepRewardPoolShares(...(params ?? [])),\n xyoViewer_networkStakeStepRewardPoolRewards: params => viewer.networkStakeStepRewardPoolRewards(...(params ?? [])),\n xyoViewer_networkStakeStepRewardPositionWeight: params => viewer.networkStakeStepRewardPositionWeight?.(...(params ?? [])),\n xyoViewer_networkStakeStepRewardPotentialPositionLoss: params => viewer.networkStakeStepRewardPotentialPositionLoss?.(...(params ?? [])),\n xyoViewer_networkStakeStepRewardForStep: params => viewer.networkStakeStepRewardForStep?.(...(params ?? [])),\n xyoViewer_networkStakeStepRewardRandomizer: params => viewer.networkStakeStepRewardRandomizer?.(...(params ?? [])),\n xyoViewer_networkStakeStepRewardStakerCount: params => viewer.networkStakeStepRewardStakerCount?.(...(params ?? [])),\n xyoViewer_networkStakeStepRewardForStepForPosition: params => viewer.networkStakeStepRewardForStepForPosition?.(...(params ?? [])),\n xyoViewer_networkStakeStepRewardForPosition: params => viewer.networkStakeStepRewardForPosition?.(...(params ?? [])),\n xyoViewer_networkStakeStepRewardsForPosition: params => viewer.networkStakeStepRewardsForPosition?.(...(params ?? [])),\n xyoViewer_networkStakeStepRewardsForRange: params => viewer.networkStakeStepRewardsForRange?.(...(params ?? [])),\n xyoViewer_networkStakeStepRewardsForStepLevel: params => viewer.networkStakeStepRewardsForStepLevel?.(...(params ?? [])),\n xyoViewer_accountBalance: params => viewer.accountBalance(...(params ?? [])),\n xyoViewer_accountBalanceHistory: params => viewer.accountBalanceHistory(...(params ?? [])),\n xyoViewer_blockByHash: params => viewer.blockByHash(...(params ?? [])),\n xyoViewer_blockByNumber: params => viewer.blockByNumber(...(params ?? [])),\n xyoViewer_blocksByHash: params => viewer.blocksByHash(...(params ?? [])),\n xyoViewer_chainId: params => viewer.chainId(...(params ?? [])),\n xyoViewer_chainIdAtBlock: params => viewer.chainIdAtBlock(...(params ?? [])),\n xyoViewer_currentBlock: params => viewer.currentBlock(...(params ?? [])),\n xyoViewer_currentBlockHash: params => viewer.currentBlockHash(...(params ?? [])),\n xyoViewer_currentBlockNumber: params => viewer.currentBlockNumber(...(params ?? [])),\n xyoViewer_forkHistory: params => viewer.forkHistory(...(params ?? [])),\n xyoViewer_stakeById: params => viewer.stakeById(...(params ?? [])),\n xyoViewer_stakeByStaker: params => viewer.stakeByStaker(...(params ?? [])),\n xyoViewer_stakesByStaked: params => viewer.stakesByStaked(...(params ?? [])),\n xyoViewer_stakesByStaker: params => viewer.stakesByStaker(...(params ?? [])),\n xyoViewer_stakedByStaker: params => viewer.stakedByStaker(...(params ?? [])),\n xyoViewer_transactionByBlockHashAndIndex: params => viewer.transactionByBlockHashAndIndex(...(params ?? [])),\n xyoViewer_transactionByBlockNumberAndIndex: params => viewer.transactionByBlockNumberAndIndex(...(params ?? [])),\n xyoViewer_transactionByHash: params => viewer.transactionByHash(...(params ?? [])),\n xyoViewer_transferBalance: params => viewer.transferBalance(...(params ?? [])),\n xyoViewer_transferBalanceHistory: params => viewer.transferBalanceHistory(...(params ?? [])),\n xyoViewer_transferPairBalance: params => viewer.transferPairBalance(...(params ?? [])),\n xyoViewer_transferPairBalanceHistory: params => viewer.transferPairBalanceHistory(...(params ?? [])),\n }\n}\n","import type { XyoConnection } from '@xyo-network/xl1-protocol'\n\nimport type { XyoProviderRpcMethodHandlers } from '../types/index.ts'\nimport { rpcMethodHandlersFromRunner } from './rpcMethodHandlersFromRunner.ts'\nimport { rpcMethodHandlersFromSigner } from './rpcMethodHandlersFromSigner.ts'\nimport { rpcMethodHandlersFromViewer } from './rpcMethodHandlersFromViewer.ts'\n\nexport const rpcMethodHandlersFromConnection = (connection: XyoConnection): XyoProviderRpcMethodHandlers => {\n const {\n runner, signer, viewer,\n } = connection\n let result: XyoProviderRpcMethodHandlers = { xyoProvider_send: params => (connection as Required<XyoConnection>).send(...(params ?? [])) }\n if (runner) result = { ...result, ...rpcMethodHandlersFromRunner(runner) }\n if (signer) result = { ...result, ...rpcMethodHandlersFromSigner(signer) }\n if (viewer) result = { ...result, ...rpcMethodHandlersFromViewer(viewer) }\n return result\n}\n","import type { XyoPermissions } from '@xyo-network/xl1-protocol'\n\nimport type { XyoPermissionsRpcMethodHandlers } from '../types/index.ts'\n\nexport const rpcMethodHandlersFromPermissions = (permissions: XyoPermissions): XyoPermissionsRpcMethodHandlers => {\n return {\n xyoPermissions_getPermissions: params => permissions.getPermissions(...(params ?? [])),\n xyoPermissions_requestPermissions: params => permissions.requestPermissions(...(params ?? [])),\n xyoPermissions_revokePermissions: params => permissions.revokePermissions(...(params ?? [])),\n }\n}\n","import type {\n PermissionsProvider, XyoClient, XyoGatewayProvider,\n XyoPermissions,\n} from '@xyo-network/xl1-protocol'\n\nexport class MemoryXyoClient implements XyoClient {\n gateways: Readonly<Record<string, XyoGatewayProvider>>\n permissions: PermissionsProvider\n\n constructor(gateways: Readonly<Record<string, XyoGatewayProvider>>, permissions: XyoPermissions) {\n this.gateways = gateways\n this.permissions = permissions\n }\n}\n","import { isDefined, isString } from '@xylabs/typeof'\nimport type { AccountInstance } from '@xyo-network/account-model'\nimport type { XyoDataLake } from '@xyo-network/xl1-protocol'\nimport { isDataLakeProvider } from '@xyo-network/xl1-protocol'\n\nimport { HttpRpcTransport } from '../../transport/index.ts'\nimport { XyoRunnerRpcSchemas, XyoViewerRpcSchemas } from '../../types/index.ts'\nimport { HttpXyoDataLake } from '../datalake/index.ts'\nimport { JsonRpcXyoRunner } from '../runner/index.ts'\nimport { MemoryXyoSigner } from '../signer/index.ts'\nimport { JsonRpcXyoViewer } from '../viewer/index.ts'\nimport { XyoBaseConnection } from './XyoBaseConnection.ts'\n\nexport interface RpcXyoProviderParams {\n account?: AccountInstance\n endpoint: string\n storage?: string | XyoDataLake\n}\n\nexport class HttpRpcXyoConnection extends XyoBaseConnection {\n constructor(params: RpcXyoProviderParams) {\n const {\n account, endpoint, storage: storageParam,\n } = params\n const signer = isDefined(account) ? new MemoryXyoSigner(account) : undefined\n const transport = new HttpRpcTransport(endpoint, { ...XyoRunnerRpcSchemas, ...XyoViewerRpcSchemas })\n const runner = new JsonRpcXyoRunner(transport)\n const viewer = new JsonRpcXyoViewer(transport)\n const storage = isDataLakeProvider(storageParam) ? storageParam : isString(storageParam) ? new HttpXyoDataLake(storageParam) : undefined\n super({\n signer, runner, viewer, storage,\n })\n }\n}\n\n/**\n * @deprecated Use `HttpRpcXyoConnection` instead.\n */\nexport class RpcXyoConnection extends HttpRpcXyoConnection {}\n","import type {\n JsonRpcFailure, JsonRpcRequest, JsonRpcSuccess,\n} from '@metamask/utils'\nimport { AxiosJson } from '@xylabs/axios'\nimport { isError, isUndefinedOrNull } from '@xylabs/typeof'\nimport { isAxiosError } from 'axios'\nimport { v4 } from 'uuid'\nimport type * as z from 'zod'\n\nimport type { RpcSchemaMap } from '../types/index.ts'\nimport { jsonrpc } from '../types/index.ts'\nimport type { RpcTransport } from './RpcTransport.ts'\n\nexport class HttpRpcTransport<T extends RpcSchemaMap = RpcSchemaMap> implements RpcTransport<T> {\n protected readonly _rpcUrl: string\n protected readonly _schemas: T\n\n constructor(rpcUrl: string, schemas: T) {\n this._rpcUrl = rpcUrl\n this._schemas = schemas\n }\n\n async sendRequest<\n TMethod extends keyof T,\n >(\n method: TMethod,\n params?: z.input<T[TMethod]['params']['to']>,\n ): Promise<z.output<T[TMethod]['result']['from']>> {\n return await this.callRpc(this._rpcUrl, this._schemas, method, params)\n }\n\n private async callRpc<\n TSchemas extends RpcSchemaMap,\n TMethod extends keyof TSchemas,\n >(\n url: string,\n schemas: TSchemas,\n method: TMethod,\n params?: z.input<TSchemas[TMethod]['params']['to']>,\n ): Promise<z.output<TSchemas[TMethod]['result']['from']>> {\n try {\n const id = v4()\n const body: JsonRpcRequest = {\n jsonrpc,\n id,\n method: method as string,\n }\n\n if (params) {\n body.params = schemas[method].params.to.parse(params) as JsonRpcRequest\n }\n\n const res = await new AxiosJson().post(url, body)\n\n const json = res.data\n if (isUndefinedOrNull(json) || (json as Partial<JsonRpcFailure>).error) {\n throw new Error((json as JsonRpcFailure).error.message)\n }\n\n return schemas[method].result.from.parse((json as JsonRpcSuccess).result) as z.output<TSchemas[TMethod]['result']['from']>\n } catch (ex) {\n let message = isError(ex) ? ex.message : String(ex)\n if (isAxiosError(ex)) {\n message = `Http error occurred [${ex.status}|${ex.code ?? '<unknown>'}]: ${ex.message}`\n }\n throw new Error(`Error occurred while calling RPC method ${String(method)}: ${message}`)\n }\n }\n}\n","// NOTE: See https://www.npmjs.com/package/@metamask/rpc-errors for\n// better error codes & protocol specific error codes. Migrate to that\n// if fuller support is needed.\nexport const JsonRpcErrorCodes: Record<string, { code: number; message: string }> = {\n InternalError: { code: -32_603, message: 'Internal JSON-RPC error (unexpected exception).' },\n InvalidParams: { code: -32_602, message: 'Invalid method parameter(s).' },\n InvalidRequest: { code: -32_600, message: 'The JSON sent is not a valid Request object.' },\n MethodNotFound: { code: -32_601, message: 'The method does not exist or is not available.' },\n UserRejected: { code: 4001, message: 'User rejected the request.' },\n}\n","export const jsonrpc = '2.0' as const\n","import * as z from 'zod'\n\nimport type { XyoPermissionsRpcMethodName } from '../XyoPermissions.ts'\nimport {\n InvokerPermissionZod, PermissionRequestZod, RequestedPermissionZod,\n} from './common/index.ts'\nimport type { RpcSchemaMap } from './RpcSchemaMap.ts'\n\nexport const XyoPermissionsRpcSchemas = {\n xyoPermissions_getPermissions: {\n params: {\n to: z.array(z.any()).length(0),\n from: z.array(z.any()).length(0),\n },\n result: {\n to: z.array(InvokerPermissionZod),\n from: z.array(InvokerPermissionZod),\n },\n },\n xyoPermissions_requestPermissions: {\n params: {\n to: z.tuple([z.array(PermissionRequestZod)]),\n from: z.tuple([z.array(PermissionRequestZod)]),\n },\n result: {\n to: z.array(RequestedPermissionZod),\n from: z.array(RequestedPermissionZod),\n },\n },\n xyoPermissions_revokePermissions: {\n params: {\n to: z.tuple([z.array(PermissionRequestZod)]),\n from: z.tuple([z.array(PermissionRequestZod)]),\n },\n result: {\n to: z.array(RequestedPermissionZod),\n from: z.array(RequestedPermissionZod),\n },\n },\n} satisfies RpcSchemaMap<XyoPermissionsRpcMethodName>\n","import type { Address } from '@xylabs/hex'\nimport { AddressRegEx, toAddress } from '@xylabs/hex'\nimport * as z from 'zod'\n\nexport const AddressZod = z.string().toLowerCase().regex(AddressRegEx).transform<Address>(v => toAddress(v))\n","import { HexZod } from '@xylabs/hex'\nimport * as z from 'zod'\n\nimport {\n SignedBoundWitnessWithStorageMetaZod, SignedBoundWitnessZod, UnsignedBoundWitnessWithStorageMetaZod,\n UnsignedBoundWitnessZod,\n} from './BoundWitness.ts'\nimport { ChainZod } from './Chain.ts'\nimport { StorageMetaZod } from './Payload.ts'\n\nexport const BlockNumberZod = z.number().int().nonnegative()\n\nconst BlockBoundWitnessFieldsZod = z.object({\n block: BlockNumberZod,\n chain: ChainZod,\n previous: HexZod.nullable(),\n protocol: z.number().optional(),\n step_hashes: z.array(HexZod).optional(),\n})\n\nconst BlockBoundWitnessMetaZod = z.object({ $epoch: z.number() })\n\nexport const BlockBoundWitnessZod = UnsignedBoundWitnessZod\n// eslint-disable-next-line sonarjs/deprecation\n .merge(StorageMetaZod.partial())\n // eslint-disable-next-line sonarjs/deprecation\n .merge(BlockBoundWitnessFieldsZod)\n // eslint-disable-next-line sonarjs/deprecation\n .merge(BlockBoundWitnessMetaZod)\nexport const BlockBoundWitnessWithStorageMetaZod = UnsignedBoundWitnessWithStorageMetaZod\n // eslint-disable-next-line sonarjs/deprecation\n .merge(BlockBoundWitnessFieldsZod)\n // eslint-disable-next-line sonarjs/deprecation\n .merge(BlockBoundWitnessMetaZod)\n\nexport const SignedBlockBoundWitnessZod = SignedBoundWitnessZod\n // eslint-disable-next-line sonarjs/deprecation\n .merge(StorageMetaZod.partial())\n // eslint-disable-next-line sonarjs/deprecation\n .merge(BlockBoundWitnessFieldsZod)\n // eslint-disable-next-line sonarjs/deprecation\n .merge(BlockBoundWitnessMetaZod)\nexport const SignedBlockBoundWitnessWithStorageMetaZod = SignedBoundWitnessWithStorageMetaZod\n // eslint-disable-next-line sonarjs/deprecation\n .merge(StorageMetaZod.partial())\n // eslint-disable-next-line sonarjs/deprecation\n .merge(BlockBoundWitnessFieldsZod)\n // eslint-disable-next-line sonarjs/deprecation\n .merge(BlockBoundWitnessMetaZod)\n","import { HashZod, HexZod } from '@xylabs/hex'\nimport { BoundWitnessSchema } from '@xyo-network/boundwitness-model'\nimport * as z from 'zod'\n\nimport { AddressZod } from './Address.ts'\nimport { PayloadZod, SchemaZod } from './Payload.ts'\n\nconst BoundWitnessRequiredFieldsZod = z.object({\n addresses: z.array(AddressZod),\n payload_hashes: z.array(HashZod),\n payload_schemas: z.array(SchemaZod),\n previous_hashes: z.array(HashZod.nullable()),\n})\n\nconst BoundWitnessMetaZod = z.object({\n $destination: AddressZod.optional(),\n $sourceQuery: HashZod.optional(),\n $signatures: z.array(z.union([HexZod, z.null()])),\n})\n\nexport const BoundWitnessZod = PayloadZod\n .extend({ schema: z.literal(BoundWitnessSchema) })\n .extend(BoundWitnessRequiredFieldsZod.shape)\n .extend(BoundWitnessMetaZod.shape)\n .refine(data => data.$signatures.length === data.addresses.length, { message: '$signatures length must equal addresses length' })\n\nexport type BoundWitness = z.infer<typeof BoundWitnessZod>\n\nexport const AnyBoundWitnessZod = BoundWitnessZod\n .catchall(z.any())\n\nexport type AnyBoundWitness = z.infer<typeof AnyBoundWitnessZod>\n\nexport const UnsignedBoundWitnessZod = BoundWitnessZod.refine(data => data.$signatures.includes(null), { message: 'all $signatures must be null' })\n\nexport type UnsignedBoundWitness = z.infer<typeof UnsignedBoundWitnessZod>\n\nexport const AnyUnsignedBoundWitnessZod = UnsignedBoundWitnessZod\n .catchall(z.any())\n\nexport type AnyUnsignedBoundWitness = z.infer<typeof AnyUnsignedBoundWitnessZod>\n\nexport const UnsignedBoundWitnessWithStorageMetaZod = UnsignedBoundWitnessZod\n .safeExtend(BoundWitnessRequiredFieldsZod.shape)\n .safeExtend(BoundWitnessMetaZod.shape)\n\nexport const SignedBoundWitnessZod = BoundWitnessZod.refine(data => !data.$signatures.includes(null), { message: 'all $signatures must not be null' })\n\nexport const SignedBoundWitnessWithStorageMetaZod = UnsignedBoundWitnessWithStorageMetaZod\n\nexport const AnySignedBoundWitnessZod = UnsignedBoundWitnessZod.catchall(z.any())\n\nexport const AnySignedBoundWitnessWithStorageMetaZod = UnsignedBoundWitnessWithStorageMetaZod.catchall(z.any())\n","import { HashToJsonZod } from '@xylabs/hex'\nimport * as z from 'zod'\n\nimport { SequenceToStringZod } from './Sequence.ts'\n\nexport const StorageMetaZod = z.object({\n _hash: HashToJsonZod,\n _dataHash: HashToJsonZod,\n _sequence: SequenceToStringZod,\n})\n\nexport const SchemaZod = z.string()\nexport type Schema = z.infer<typeof SchemaZod>\n\nexport const PayloadZod = z.object({ schema: SchemaZod }).catchall(z.any())\nexport const PayloadWithStorageMetaZod = PayloadZod.extend(StorageMetaZod.shape)\n\nexport const AnyPayloadZod = PayloadZod.catchall(z.json())\nexport const AnyPayloadWithStorageMetaZod = AnyPayloadZod.extend(StorageMetaZod.shape)\n\nexport type PayloadZodType = z.infer<typeof PayloadZod>\nexport type PayloadWithStorageMetaZodType = z.infer<typeof PayloadWithStorageMetaZod>\n\nexport type AnyPayloadZodType = z.infer<typeof AnyPayloadZod>\nexport type AnyPayloadWithStorageMetaZodType = z.infer<typeof AnyPayloadWithStorageMetaZod>\n\nexport function WithStorageMetaZod<T extends typeof PayloadZod>(valueZod: T) {\n return StorageMetaZod.extend(valueZod.shape)\n}\n\nexport type WithStorageMetaZodType = z.infer<typeof WithStorageMetaZod>\n","import { HexRegExMinMax, toHex } from '@xylabs/hex'\nimport type {\n LocalSequence,\n QualifiedSequence,\n} from '@xyo-network/payload-model'\nimport { SequenceConstants } from '@xyo-network/payload-model'\nimport * as z from 'zod'\n\nconst LocalSequenceRegex = new RegExp(HexRegExMinMax(SequenceConstants.localSequenceBytes, SequenceConstants.localSequenceBytes))\nexport const LocalSequenceToStringZod = z.string().regex(LocalSequenceRegex)\nexport const LocalSequenceFromStringZod = z.string().regex(LocalSequenceRegex).transform<LocalSequence>(v => toHex(v) as LocalSequence)\n\nconst QualifiedSequenceRegex = new RegExp(HexRegExMinMax(SequenceConstants.qualifiedSequenceBytes, SequenceConstants.qualifiedSequenceBytes))\nexport const QualifiedSequenceToStringZod = z.string().regex(QualifiedSequenceRegex)\nexport const QualifiedSequenceFromStringZod = z.string().regex(QualifiedSequenceRegex).transform<QualifiedSequence>(v => toHex(v) as QualifiedSequence)\n\nexport const SequenceToStringZod = z.union([LocalSequenceToStringZod, QualifiedSequenceToStringZod])\nexport const SequenceFromStringZod = z.union([LocalSequenceFromStringZod, QualifiedSequenceFromStringZod])\n","import { AddressRegEx, toAddress } from '@xylabs/hex'\nimport type { ChainId } from '@xyo-network/xl1-protocol'\nimport * as z from 'zod'\n\nexport const ChainZod = z.string().toLowerCase().regex(AddressRegEx).transform<ChainId>(v => toAddress(v) as ChainId)\n","import * as z from 'zod'\n\nimport {\n BlockBoundWitnessWithStorageMetaZod, BlockBoundWitnessZod, SignedBlockBoundWitnessWithStorageMetaZod,\n SignedBlockBoundWitnessZod,\n} from './BlockBoundWitness.ts'\nimport { PayloadWithStorageMetaZod, PayloadZod } from './Payload.ts'\n\nexport const HydratedBlockZod = z.tuple([\n BlockBoundWitnessZod,\n z.array(PayloadZod),\n])\n\nexport const HydratedBlockWithStorageMetaZod = z.tuple([\n BlockBoundWitnessWithStorageMetaZod,\n z.array(PayloadWithStorageMetaZod),\n])\n\nexport const SignedHydratedBlockZod = z.tuple([\n SignedBlockBoundWitnessZod,\n z.array(PayloadZod),\n])\n\nexport const SignedHydratedBlockToJsonZod = z.tuple([\n SignedBlockBoundWitnessZod,\n z.array(PayloadZod),\n])\n\nexport const SignedHydratedBlockWithStorageMetaZod = z.tuple([\n SignedBlockBoundWitnessWithStorageMetaZod,\n z.array(PayloadWithStorageMetaZod),\n])\n","import type { JsonObject } from '@xylabs/object'\nimport { asAnyPayload } from '@xyo-network/payload-model'\nimport { asSignedHydratedTransaction } from '@xyo-network/xl1-protocol'\nimport * as z from 'zod'\n\nimport { PayloadZod } from './Payload.ts'\nimport { SignedTransactionBoundWitnessZod, TransactionBoundWitnessZod } from './TransactionBoundWitness.ts'\n\nexport const HydratedTransactionZod = z.tuple([\n TransactionBoundWitnessZod,\n z.array(PayloadZod),\n])\n\nexport const UnsignedHydratedTransactionZod = z.tuple([\n TransactionBoundWitnessZod,\n z.array(PayloadZod),\n])\n\nexport const SignedHydratedTransactionZod = z.tuple([\n SignedTransactionBoundWitnessZod,\n z.array(PayloadZod),\n])\n\nexport const SignedHydratedTransactionToJsonZod = SignedHydratedTransactionZod.transform(([\n tx,\n payloads,\n]) => asSignedHydratedTransaction([\n tx as JsonObject,\n payloads.map(payload => payload as JsonObject),\n]))\n\nexport const JsonToSignedHydratedTransactionZod = SignedHydratedTransactionZod.transform(([\n tx,\n payloads,\n]) => ([\n asSignedHydratedTransaction(tx),\n payloads.map(p => asAnyPayload(p)),\n]))\n","import * as z from 'zod'\n\nimport { BlockNumberZod } from './BlockBoundWitness.ts'\nimport { SignedBoundWitnessZod, UnsignedBoundWitnessZod } from './BoundWitness.ts'\nimport { ChainZod } from './Chain.ts'\nimport { StorageMetaZod } from './Payload.ts'\nimport { TransactionFeesHexZod } from './TransactionFees.ts'\n\nexport const BlockStartZod = z.object({ nbf: BlockNumberZod })\nexport const BlockEndZod = z.object({ exp: BlockNumberZod })\nexport const BlockDurationZod = z.object({ nbf: BlockNumberZod, exp: BlockNumberZod })\nexport const BlockScriptsZod = z.object({ script: z.array(z.string()).optional() })\n\nexport const WithTransactionFeesZod = z.object({ fees: TransactionFeesHexZod })\n\nconst TransactionBoundWitnessFields = z.object({ chain: ChainZod, from: ChainZod })\n\n// Note: It seems like zod marked all of merge as deprecated even though just multiple merges should have been deprecated\n\nexport const TransactionBoundWitnessZod = UnsignedBoundWitnessZod\n // eslint-disable-next-line sonarjs/deprecation\n .merge(StorageMetaZod.partial())\n // eslint-disable-next-line sonarjs/deprecation\n .merge(BlockDurationZod)\n // eslint-disable-next-line sonarjs/deprecation\n .merge(WithTransactionFeesZod)\n // eslint-disable-next-line sonarjs/deprecation\n .merge(TransactionBoundWitnessFields)\n // eslint-disable-next-line sonarjs/deprecation\n .merge(BlockScriptsZod)\n\nexport const SignedTransactionBoundWitnessZod = SignedBoundWitnessZod\n // eslint-disable-next-line sonarjs/deprecation\n .merge(StorageMetaZod.partial())\n // eslint-disable-next-line sonarjs/deprecation\n .merge(BlockDurationZod)\n // eslint-disable-next-line sonarjs/deprecation\n .merge(WithTransactionFeesZod)\n // eslint-disable-next-line sonarjs/deprecation\n .merge(TransactionBoundWitnessFields)\n // eslint-disable-next-line sonarjs/deprecation\n .merge(BlockScriptsZod.partial())\n","import {\n BigIntToJsonZod, HexZod, JsonToBigIntZod,\n} from '@xylabs/hex'\nimport { asAttoXL1 } from '@xyo-network/xl1-protocol'\nimport * as z from 'zod'\n\nexport const AttoZod = z.bigint()\nexport const JsonToAttoZod = JsonToBigIntZod.transform(v => asAttoXL1(v))\n// eslint-disable-next-line unicorn/prefer-export-from\nexport const AttoToJsonZod = BigIntToJsonZod\n\nexport const TransactionFeesHexZod = z.object({\n base: HexZod,\n gasLimit: HexZod,\n gasPrice: HexZod,\n priority: HexZod,\n})\n\nexport type TransactionFeesHexZodType = z.infer<typeof TransactionFeesHexZod>\n\nexport const TransactionFeesBigIntZod = z.object({\n base: AttoZod,\n gasLimit: AttoZod,\n gasPrice: AttoZod,\n priority: AttoZod,\n})\n\nexport type TransactionFeesBigIntZodType = z.infer<typeof TransactionFeesBigIntZod>\n\nexport const TransactionFeesJsonToBigIntZod = TransactionFeesHexZod.transform(val => ({\n base: JsonToBigIntZod.parse(val.base),\n gasLimit: JsonToBigIntZod.parse(val.gasLimit),\n gasPrice: JsonToBigIntZod.parse(val.gasPrice),\n priority: JsonToBigIntZod.parse(val.priority),\n}))\n\nexport const TransactionFeesBigIntToJsonZod = TransactionFeesBigIntZod.transform(val => ({\n base: BigIntToJsonZod.parse(val.base),\n gasLimit: BigIntToJsonZod.parse(val.gasLimit),\n gasPrice: BigIntToJsonZod.parse(val.gasPrice),\n priority: BigIntToJsonZod.parse(val.priority),\n}))\n\nexport type TransactionFeesJsonToBigIntZodType = z.infer<typeof TransactionFeesJsonToBigIntZod>\nexport type TransactionFeesBigIntToJsonZodType = z.infer<typeof TransactionFeesBigIntToJsonZod>\n","import * as z from 'zod'\n\n// Define recursive JSON value schema\nconst JsonValueZod: z.ZodType<unknown> = z.lazy(() =>\n z.union([\n z.string(),\n z.number(),\n z.boolean(),\n z.null(),\n z.array(JsonValueZod),\n z.record(z.string(), JsonValueZod), // object with string keys and JSON values\n ]))\n\n// JSON object schema — top-level must be an object\nexport const JsonObjectZod = z.record(z.string(), JsonValueZod)\n\n// TypeScript type for reference\nexport type JsonValue = z.infer<typeof JsonValueZod>\nexport type JsonObject = z.infer<typeof JsonObjectZod>\n","import { z } from 'zod'\n\nexport const CaveatTypesZod = z.enum(['chain', 'expiration', 'filteredResponse', 'rateLimit', 'restrictReturnedAccounts'])\n\nexport const CaveatsZod = z.object({\n type: CaveatTypesZod,\n value: z.json(),\n})\n\nexport const PermissionZod = z.object({\n parentCapability: z.string(),\n caveats: CaveatsZod.array().optional(),\n invoker: z.string(),\n})\n\nexport const InvokerPermissionZod = PermissionZod.extend({ date: z.number().optional() })\n\nexport const PermissionRequestZod = z.record(z.string(), z.record(z.string(), z.any()))\n\nexport const RequestedPermissionZod = z.object({\n parentCapability: z.string(),\n date: z.number().optional(),\n})\n","import { HexZod } from '@xylabs/hex'\nimport * as z from 'zod'\n\nimport { AddressZod } from './Address.ts'\nimport {\n AttoToJsonZod, AttoZod, JsonToAttoZod,\n} from './TransactionFees.ts'\n\nexport const StakeZod = z.object({\n amount: AttoZod,\n // the block number when the stake was added\n addBlock: z.number(),\n // the unique id for the stake item\n id: z.number(),\n // the block number when the stake was removed (set to 0 if not removed)\n removeBlock: z.number(),\n // the address that is being staked\n staked: AddressZod,\n // the address that owns the stake\n staker: AddressZod,\n // the block number when the stake was withdrawn (set to 0 if not withdrawn)\n withdrawBlock: z.number(),\n})\n\nexport const StakeToJsonZod = StakeZod.transform(val => ({\n addBlock: val.addBlock,\n amount: AttoToJsonZod.parse(val.amount),\n id: val.id,\n removeBlock: val.removeBlock,\n staked: AddressZod.parse(val.staked),\n staker: AddressZod.parse(val.staker),\n withdrawBlock: val.withdrawBlock,\n}))\n\nexport const JsonToStakeZod = StakeZod.extend({ amount: HexZod }).transform(val => ({\n addBlock: val.addBlock,\n amount: JsonToAttoZod.parse(val.amount),\n id: val.id,\n removeBlock: val.removeBlock,\n staked: val.staked,\n staker: val.staker,\n withdrawBlock: val.withdrawBlock,\n}))\n","import * as z from 'zod'\n\nexport const StepIdentityZod = z.object({\n block: z.number(),\n step: z.number(),\n})\n","import { BigIntToJsonZod } from '@xylabs/hex'\nimport { PayloadZodStrictOfSchema } from '@xyo-network/payload-model'\nimport { TransferSchema } from '@xyo-network/xl1-protocol'\nimport z from 'zod'\n\nimport { AddressZod } from './Address.ts'\n\nexport const TransferFieldsZod = z.object({\n epoch: z.number(),\n from: AddressZod,\n transfers: z.record(AddressZod, BigIntToJsonZod),\n})\n\nexport const TransferZod = PayloadZodStrictOfSchema(TransferSchema).extend(TransferFieldsZod.shape)\n","import z from 'zod'\n\nimport { AddressZod } from './Address.ts'\n\nexport const TransferPairZod = z.tuple([\n AddressZod, AddressZod,\n])\n","import * as z from 'zod'\n\nimport type { XyoProviderRpcMethodName } from '../XyoProviderRpc.ts'\nimport {\n AddressZod, PayloadZod, SignedTransactionBoundWitnessZod, TransactionFeesBigIntToJsonZod,\n TransactionFeesJsonToBigIntZod,\n} from './common/index.ts'\nimport type { RpcSchemaMap } from './RpcSchemaMap.ts'\n\nexport const XyoProviderRpcSchemas = {\n xyoProvider_send: {\n params: {\n to: z.tuple([\n AddressZod,\n z.array(PayloadZod),\n z.array(PayloadZod),\n z.number().nonnegative(),\n z.number().nonnegative(),\n TransactionFeesBigIntToJsonZod,\n AddressZod.optional(),\n ]),\n from: z.tuple([\n AddressZod,\n z.array(PayloadZod),\n z.array(PayloadZod),\n z.number().nonnegative(),\n z.number().nonnegative(),\n TransactionFeesJsonToBigIntZod,\n AddressZod.optional(),\n ]),\n },\n result: {\n to: SignedTransactionBoundWitnessZod,\n from: SignedTransactionBoundWitnessZod,\n },\n },\n} satisfies RpcSchemaMap<XyoProviderRpcMethodName>\n","import { HashToJsonZod, JsonToHashZod } from '@xylabs/hex'\nimport * as z from 'zod'\n\nimport type { XyoRunnerRpcMethodName } from '../XyoRunnerRpc.ts'\nimport { SignedHydratedTransactionZod } from './common/index.ts'\nimport type { RpcSchemaMap } from './RpcSchemaMap.ts'\n\nexport const XyoRunnerRpcSchemas = {\n xyoRunner_broadcastTransaction: {\n params: {\n to: z.tuple([SignedHydratedTransactionZod]),\n from: z.tuple([SignedHydratedTransactionZod]),\n },\n result: {\n to: HashToJsonZod,\n from: JsonToHashZod,\n },\n },\n} satisfies RpcSchemaMap<XyoRunnerRpcMethodName>\n","import type { Signed } from '@xyo-network/boundwitness-model'\nimport type { TransactionBoundWitness } from '@xyo-network/xl1-protocol'\nimport { AllowedBlockPayloadZod, asHydratedTransactionWithStorageMeta } from '@xyo-network/xl1-protocol'\nimport { z } from 'zod'\n\nimport type { XyoSignerRpcMethodName } from '../XyoSignerRpc.ts'\nimport {\n AddressZod,\n ChainZod,\n PayloadZod, SignedHydratedTransactionZod, SignedTransactionBoundWitnessZod,\n TransactionFeesBigIntToJsonZod,\n TransactionFeesJsonToBigIntZod,\n UnsignedHydratedTransactionZod,\n} from './common/index.ts'\nimport type { RpcSchemaMap } from './RpcSchemaMap.ts'\n\nexport const XyoSignerRpcSchemas = {\n xyoSigner_address: {\n params: {\n to: z.array(z.any()).length(0).optional(),\n from: z.array(z.any()).length(0).optional(),\n },\n result: {\n to: AddressZod,\n from: AddressZod,\n },\n },\n // NOTE: method is deprecated which is why it uses deprecated types\n xyoSigner_createSignedTransaction: {\n params: {\n to: z.tuple([\n ChainZod,\n z.array(AllowedBlockPayloadZod),\n z.array(PayloadZod),\n z.number().nonnegative(),\n z.number().nonnegative(),\n TransactionFeesBigIntToJsonZod,\n AddressZod.optional(),\n ]),\n from: z.tuple([\n ChainZod,\n z.array(PayloadZod),\n z.array(PayloadZod),\n z.number().nonnegative(),\n z.number().nonnegative(),\n TransactionFeesJsonToBigIntZod,\n AddressZod.optional(),\n ]),\n },\n result: {\n to: SignedTransactionBoundWitnessZod,\n from: SignedTransactionBoundWitnessZod.transform(data => data as Signed<TransactionBoundWitness>),\n },\n },\n xyoSigner_signTransaction: {\n params: {\n to: z.tuple([UnsignedHydratedTransactionZod]),\n from: z.tuple([UnsignedHydratedTransactionZod]),\n },\n result: {\n to: SignedHydratedTransactionZod,\n from: SignedHydratedTransactionZod.transform(data => asHydratedTransactionWithStorageMeta(data, { required: true })),\n },\n },\n} as const satisfies RpcSchemaMap<XyoSignerRpcMethodName>\n","/* eslint-disable max-lines */\nimport {\n BigIntToJsonZod, HashToJsonZod, HashZod, JsonToBigIntZod,\n JsonToHashZod,\n} from '@xylabs/hex'\nimport * as z from 'zod'\n\nimport type { XyoViewerRpcMethodName } from '../XyoViewerRpc.ts'\nimport {\n AddressZod,\n BlockNumberZod,\n JsonToStakeZod,\n PayloadZod,\n SignedHydratedBlockZod,\n SignedHydratedTransactionZod,\n StakeToJsonZod,\n StepIdentityZod,\n TransferPairZod,\n TransferZod,\n} from './common/index.ts'\nimport type { RpcSchemaMap } from './RpcSchemaMap.ts'\n\nexport const XyoViewerRpcSchemas = {\n xyoViewer_networkStakeStepRewardClaimedByAddress: {\n params: {\n to: z.union([\n z.tuple([AddressZod]),\n ]),\n from: z.union([\n z.tuple([AddressZod]),\n ]),\n },\n result: {\n to: BigIntToJsonZod,\n from: JsonToBigIntZod,\n },\n },\n xyoViewer_networkStakeStepRewardAddressReward: {\n params: {\n to: z.union([\n z.tuple([StepIdentityZod, AddressZod]),\n ]),\n from: z.union([\n z.tuple([StepIdentityZod, AddressZod]),\n ]),\n },\n result: {\n to: z.record(AddressZod, BigIntToJsonZod),\n from: z.record(AddressZod, JsonToBigIntZod),\n },\n },\n xyoViewer_networkStakeStepRewardAddressHistory: {\n params: {\n to: z.union([\n z.tuple([AddressZod]),\n ]),\n from: z.union([\n z.tuple([AddressZod]),\n ]),\n },\n result: {\n to: z.record(AddressZod, BigIntToJsonZod),\n from: z.record(AddressZod, JsonToBigIntZod),\n },\n },\n xyoViewer_networkStakeStepRewardAddressShare: {\n params: {\n to: z.union([\n z.tuple([StepIdentityZod, AddressZod]),\n ]),\n from: z.union([\n z.tuple([StepIdentityZod, AddressZod]),\n ]),\n },\n result: {\n to: z.tuple([BigIntToJsonZod, BigIntToJsonZod]),\n from: z.tuple([JsonToBigIntZod, JsonToBigIntZod]),\n },\n },\n xyoViewer_networkStakeStepRewardWeightForAddress: {\n params: {\n to: z.union([\n z.tuple([StepIdentityZod, AddressZod]),\n ]),\n from: z.union([\n z.tuple([StepIdentityZod, AddressZod]),\n ]),\n },\n result: {\n to: BigIntToJsonZod,\n from: JsonToBigIntZod,\n },\n },\n xyoViewer_networkStakeStepRewardUnclaimedByAddress: {\n params: {\n to: z.union([\n z.tuple([AddressZod]),\n ]),\n from: z.union([\n z.tuple([AddressZod]),\n ]),\n },\n result: {\n to: BigIntToJsonZod,\n from: JsonToBigIntZod,\n },\n },\n xyoViewer_networkStakeStepRewardPoolRewards: {\n params: {\n to: z.union([\n z.tuple([StepIdentityZod]),\n ]),\n from: z.union([\n z.tuple([StepIdentityZod]),\n ]),\n },\n result: {\n to: z.record(AddressZod, BigIntToJsonZod),\n from: z.record(AddressZod, JsonToBigIntZod),\n },\n },\n xyoViewer_networkStakeStepRewardPositionWeight: {\n params: {\n to: z.union([\n z.tuple([StepIdentityZod, z.number()]),\n ]),\n from: z.union([\n z.tuple([StepIdentityZod, z.number()]),\n ]),\n },\n result: {\n to: BigIntToJsonZod,\n from: JsonToBigIntZod,\n },\n },\n xyoViewer_networkStakeStepRewardPotentialPositionLoss: {\n params: {\n to: z.union([\n z.tuple([StepIdentityZod, z.number()]),\n ]),\n from: z.union([\n z.tuple([StepIdentityZod, z.number()]),\n ]),\n },\n result: {\n to: BigIntToJsonZod,\n from: JsonToBigIntZod,\n },\n },\n xyoViewer_networkStakeStepRewardForStep: {\n params: {\n to: z.union([\n z.tuple([StepIdentityZod]),\n ]),\n from: z.union([\n z.tuple([StepIdentityZod]),\n ]),\n },\n result: {\n to: BigIntToJsonZod,\n from: JsonToBigIntZod,\n },\n },\n xyoViewer_networkStakeStepRewardRandomizer: {\n params: {\n to: z.union([\n z.tuple([StepIdentityZod]),\n ]),\n from: z.union([\n z.tuple([StepIdentityZod]),\n ]),\n },\n result: {\n to: BigIntToJsonZod,\n from: JsonToBigIntZod,\n },\n },\n xyoViewer_networkStakeStepRewardStakerCount: {\n params: {\n to: z.union([\n z.tuple([StepIdentityZod]),\n ]),\n from: z.union([\n z.tuple([StepIdentityZod]),\n ]),\n },\n result: {\n to: z.number(),\n from: z.number(),\n },\n },\n xyoViewer_networkStakeStepRewardPoolShares: {\n params: {\n to: z.union([\n z.tuple([StepIdentityZod]),\n ]),\n from: z.union([\n z.tuple([StepIdentityZod]),\n ]),\n },\n result: {\n to: z.record(AddressZod, BigIntToJsonZod),\n from: z.record(AddressZod, JsonToBigIntZod),\n },\n },\n xyoViewer_networkStakeStepRewardForStepForPosition: {\n params: {\n to: z.union([\n z.tuple([StepIdentityZod, z.number()]),\n ]),\n from: z.union([\n z.tuple([StepIdentityZod, z.number()]),\n ]),\n },\n result: {\n to: z.tuple([BigIntToJsonZod, BigIntToJsonZod]),\n from: z.tuple([JsonToBigIntZod, JsonToBigIntZod]),\n },\n },\n xyoViewer_networkStakeStepRewardForPosition: {\n params: {\n to: z.union([\n z.tuple([z.number(), z.tuple([z.number(), z.number()])]),\n ]),\n from: z.union([\n z.tuple([z.number(), z.tuple([z.number(), z.number()])]),\n ]),\n },\n result: {\n to: z.tuple([BigIntToJsonZod, BigIntToJsonZod]),\n from: z.tuple([JsonToBigIntZod, JsonToBigIntZod]),\n },\n },\n xyoViewer_networkStakeStepRewardsForRange: {\n params: {\n to: z.union([\n z.tuple([z.tuple([z.number(), z.number()])]),\n ]),\n from: z.union([\n z.tuple([z.tuple([z.number(), z.number()])]),\n ]),\n },\n result: {\n to: BigIntToJsonZod,\n from: JsonToBigIntZod,\n },\n },\n xyoViewer_networkStakeStepRewardsForStepLevel: {\n params: {\n to: z.union([\n z.tuple([z.number(), z.tuple([z.number(), z.number()])]),\n ]),\n from: z.union([\n z.tuple([z.number(), z.tuple([z.number(), z.number()])]),\n ]),\n },\n result: {\n to: BigIntToJsonZod,\n from: JsonToBigIntZod,\n },\n },\n xyoViewer_networkStakeStepRewardsForPosition: {\n params: {\n to: z.union([\n z.tuple([z.number(), z.tuple([z.number(), z.number()])]),\n ]),\n from: z.union([\n z.tuple([z.number(), z.tuple([z.number(), z.number()])]),\n ]),\n },\n result: {\n to: z.record(z.string(), z.tuple([BigIntToJsonZod, BigIntToJsonZod])),\n from: z.record(z.string(), z.tuple([JsonToBigIntZod, JsonToBigIntZod])),\n },\n },\n xyoViewer_accountBalance: {\n params: {\n to: z.union([\n z.tuple([AddressZod]),\n ]),\n from: z.union([\n z.tuple([AddressZod]),\n ]),\n },\n result: {\n to: BigIntToJsonZod,\n from: JsonToBigIntZod,\n },\n },\n xyoViewer_accountBalanceHistory: {\n params: {\n to: z.union([\n z.tuple([AddressZod]),\n ]),\n from: z.union([\n z.tuple([AddressZod]),\n ]),\n },\n result: {\n to: z.array(z.tuple([HashZod, HashZod, TransferZod])),\n from: z.array(z.tuple([HashZod, HashZod, TransferZod])),\n },\n },\n xyoViewer_transferPairBalance: {\n params: {\n to: z.union([\n z.tuple([TransferPairZod]),\n ]),\n from: z.union([\n z.tuple([TransferPairZod]),\n ]),\n },\n result: {\n to: BigIntToJsonZod,\n from: JsonToBigIntZod,\n },\n },\n xyoViewer_transferPairBalanceHistory: {\n params: {\n to: z.union([\n z.tuple([TransferPairZod]),\n ]),\n from: z.union([\n z.tuple([TransferPairZod]),\n ]),\n },\n result: {\n to: z.array(z.tuple([HashZod, HashZod, PayloadZod])),\n from: z.array(z.tuple([HashZod, HashZod, PayloadZod])),\n },\n },\n xyoViewer_transferBalance: {\n params: {\n to: z.union([\n z.tuple([AddressZod]),\n ]),\n from: z.union([\n z.tuple([AddressZod]),\n ]),\n },\n result: {\n to: BigIntToJsonZod,\n from: JsonToBigIntZod,\n },\n },\n xyoViewer_transferBalanceHistory: {\n params: {\n to: z.union([\n z.tuple([AddressZod]),\n ]),\n from: z.union([\n z.tuple([AddressZod]),\n ]),\n },\n result: {\n to: z.array(z.tuple([HashZod, HashZod, PayloadZod])),\n from: z.array(z.tuple([HashZod, HashZod, PayloadZod])),\n },\n },\n xyoViewer_blockByHash: {\n params: {\n to: z.tuple([HashToJsonZod]),\n from: z.tuple([JsonToHashZod]),\n },\n result: {\n to: SignedHydratedBlockZod,\n from: SignedHydratedBlockZod,\n },\n },\n xyoViewer_blockByNumber: {\n params: {\n to: z.tuple([z.number()]),\n from: z.tuple([z.number()]),\n },\n result: {\n to: SignedHydratedBlockZod,\n from: SignedHydratedBlockZod,\n },\n },\n xyoViewer_blocksByHash: {\n params: {\n to: z.tuple([HashZod, z.number().optional()]),\n from: z.tuple([HashZod, z.number().optional()]),\n },\n result: {\n to: z.array(SignedHydratedBlockZod),\n from: z.array(SignedHydratedBlockZod),\n },\n },\n xyoViewer_chainId: {\n params: {\n to: z.array(z.any()).length(0).optional(),\n from: z.array(z.any()).length(0).optional(),\n },\n result: {\n to: AddressZod,\n from: AddressZod,\n },\n },\n xyoViewer_chainIdAtBlock: {\n params: {\n to: z.tuple([BlockNumberZod]),\n from: z.tuple([BlockNumberZod]),\n },\n result: {\n to: AddressZod,\n from: AddressZod,\n },\n },\n xyoViewer_currentBlock: {\n params: {\n to: z.array(z.any()).length(0).optional(),\n from: z.array(z.any()).length(0).optional(),\n },\n result: {\n to: SignedHydratedBlockZod,\n from: SignedHydratedBlockZod,\n },\n },\n xyoViewer_currentBlockHash: {\n params: {\n to: z.array(z.any()).length(0).optional(),\n from: z.array(z.any()).length(0).optional(),\n },\n result: {\n to: HashZod,\n from: HashZod,\n },\n },\n xyoViewer_currentBlockNumber: {\n params: {\n to: z.array(z.any()).length(0).optional(),\n from: z.array(z.any()).length(0).optional(),\n },\n result: {\n to: BlockNumberZod,\n from: BlockNumberZod,\n },\n },\n xyoViewer_forkHistory: {\n params: {\n to: z.array(z.any()).length(0).optional(),\n from: z.array(z.any()).length(0).optional(),\n },\n result: {\n to: z.record(z.number(), AddressZod),\n from: z.record(z.number(), AddressZod),\n },\n },\n xyoViewer_stakeByStaker: {\n params: {\n to: z.tuple([AddressZod, z.number()]),\n from: z.tuple([AddressZod, z.number()]),\n },\n result: {\n to: StakeToJsonZod,\n from: JsonToStakeZod,\n },\n },\n xyoViewer_stakeById: {\n params: {\n to: z.tuple([z.number()]),\n from: z.tuple([z.number()]),\n },\n result: {\n to: StakeToJsonZod,\n from: JsonToStakeZod,\n },\n },\n xyoViewer_stakedByStaker: {\n params: {\n to: z.tuple([AddressZod]),\n from: z.tuple([AddressZod]),\n },\n result: {\n to: z.array(AddressZod),\n from: z.array(AddressZod),\n },\n },\n xyoViewer_stakesByStaker: {\n params: {\n to: z.tuple([AddressZod]),\n from: z.tuple([AddressZod]),\n },\n result: {\n to: z.array(StakeToJsonZod),\n from: z.array(JsonToStakeZod),\n },\n },\n xyoViewer_stakesByStaked: {\n params: {\n to: z.tuple([AddressZod]),\n from: z.tuple([AddressZod]),\n },\n result: {\n to: z.array(StakeToJsonZod),\n from: z.array(JsonToStakeZod),\n },\n },\n xyoViewer_transactionByBlockHashAndIndex: {\n params: {\n to: z.tuple([HashZod, z.number()]),\n from: z.tuple([HashZod, z.number()]),\n },\n result: {\n to: SignedHydratedTransactionZod.nullable(),\n from: SignedHydratedTransactionZod.nullable(),\n },\n },\n xyoViewer_transactionByBlockNumberAndIndex: {\n params: {\n to: z.tuple([z.number(), z.number()]),\n from: z.tuple([z.number(), z.number()]),\n },\n result: {\n to: SignedHydratedTransactionZod.nullable(),\n from: SignedHydratedTransactionZod.nullable(),\n },\n },\n xyoViewer_transactionByHash: {\n params: {\n to: z.tuple([HashZod]),\n from: z.tuple([HashZod]),\n },\n result: {\n to: SignedHydratedTransactionZod.nullable(),\n from: SignedHydratedTransactionZod.nullable(),\n },\n },\n} satisfies RpcSchemaMap<XyoViewerRpcMethodName>\n","import type { RpcSchemaMap } from './RpcSchemaMap.ts'\nimport { XyoPermissionsRpcSchemas } from './XyoPermissionsRpcSchemas.ts'\nimport { XyoProviderRpcSchemas } from './XyoProviderRpcSchemas.ts'\nimport { XyoRunnerRpcSchemas } from './XyoRunnerRpcSchemas.ts'\nimport { XyoSignerRpcSchemas } from './XyoSignerRpcSchemas.ts'\nimport { XyoViewerRpcSchemas } from './XyoViewerRpcSchemas.ts'\n\nexport const AllRpcSchemas = {\n ...XyoProviderRpcSchemas,\n ...XyoRunnerRpcSchemas,\n ...XyoSignerRpcSchemas,\n ...XyoViewerRpcSchemas,\n ...XyoPermissionsRpcSchemas,\n} satisfies RpcSchemaMap\n","import type { ZodUndefined } from 'zod'\nimport * as z from 'zod'\n\nimport { jsonrpc } from '../JsonRpc.ts'\n\nexport const createRequestSchema = <TParams extends z.ZodTypeAny, TMethodName extends string = string>(\n methodName: TMethodName,\n paramsSchema: TParams | ZodUndefined = z.undefined(),\n) =>\n z.object({\n id: z.union([z.string(), z.number()]),\n jsonrpc: z.literal(jsonrpc),\n method: z.literal(methodName),\n params: paramsSchema,\n })\n","import type { ZodUndefined } from 'zod'\nimport * as z from 'zod'\n\nimport { jsonrpc } from '../JsonRpc.ts'\n\nexport const createResponseSchema = <TParams extends z.ZodTypeAny>(\n resultSchema: TParams | ZodUndefined = z.undefined(),\n) =>\n z.object({\n id: z.union([z.string(), z.number()]),\n jsonrpc: z.literal(jsonrpc),\n result: resultSchema,\n })\n","import type { JsonRpcEngine } from '@metamask/json-rpc-engine'\nimport type { JsonRpcParams, JsonRpcRequest } from '@metamask/utils'\nimport { assertEx } from '@xylabs/assert'\nimport { isObject, isString } from '@xylabs/typeof'\nimport { v4 } from 'uuid'\nimport type { ZodRawShape } from 'zod'\nimport type * as z from 'zod'\n\nimport type { RpcSchemaMap } from '../types/index.ts'\nimport {\n createRequestSchema, createResponseSchema, jsonrpc,\n} from '../types/index.ts'\nimport type { RpcTransport } from './RpcTransport.ts'\n\nexport class MemoryRpcTransport<T extends RpcSchemaMap> implements RpcTransport<T> {\n protected readonly _rpcEngine: JsonRpcEngine\n protected readonly _schemas: T\n protected readonly requestSchemas = {} as Record<keyof T, z.ZodObject<ZodRawShape>>\n protected readonly responseSchemas = {} as Record<keyof T, z.ZodObject<ZodRawShape>>\n\n constructor(rpcEngine: JsonRpcEngine, schemas: T) {\n this._rpcEngine = rpcEngine\n this._schemas = schemas\n }\n\n async sendRequest<\n TMethod extends keyof T,\n >(\n method: TMethod,\n params?: z.input<T[TMethod]['params']['to']>,\n ): Promise<z.output<T[TMethod]['result']['from']>> {\n // Get schema for method\n // Get handler for method\n const schema = this._schemas[method]\n let requestSchema = this.requestSchemas[method]\n if (!isObject(requestSchema)) {\n const stringMethod = assertEx(isString(method) ? method : null, () => 'Method must be a string')\n requestSchema = createRequestSchema(stringMethod, schema.params.to)\n this.requestSchemas[method] = requestSchema\n }\n const req = {\n jsonrpc, id: v4(), method: method as string, params: params as JsonRpcParams,\n } satisfies JsonRpcRequest\n const request = requestSchema.parse(req) as JsonRpcRequest\n const response = await this._rpcEngine.handle(request)\n let responseSchema = this.responseSchemas[method]\n if (!isObject(responseSchema)) {\n responseSchema = createResponseSchema(schema.result.from)\n this.responseSchemas[method] = responseSchema\n }\n return responseSchema.parse(response)?.result as z.infer<T[TMethod]['result']['from']>\n }\n}\n","import type { JsonRpcRequest } from '@metamask/utils'\nimport type { JsonValue } from '@xylabs/object'\n\nexport interface SessionMessageEnvelope<T extends JsonValue> {\n data: T\n destination?: string\n sessionId: string\n}\n\n/** Only intended for web pages where the xyo global object was injected */\n/** @deprecated - this is now handled in the wallet extension */\nexport const buildSessionMessageRequest = <T extends JsonRpcRequest>(data: T, destination?: string) => {\n const request: SessionMessageEnvelope<T> = {\n data,\n destination,\n sessionId: globalThis.xyo.walletExtensionId() ?? '',\n }\n\n return request\n}\n","import type { Hash } from '@xylabs/hex'\nimport { ObjectHasher } from '@xyo-network/hash'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport type { Payload } from '@xyo-network/payload-model'\nimport { isAnyPayload } from '@xyo-network/payload-model'\nimport {\n type DataLakeData,\n isHashPayload,\n type XyoDataLake,\n} from '@xyo-network/xl1-protocol'\n\nexport abstract class AbstractXyoDataLake implements XyoDataLake {\n async fetch(hashes: Hash[], maxDepth: number = 10): Promise<DataLakeData[]> {\n const results: DataLakeData[] = await this.get(hashes)\n if (maxDepth > 0) {\n const hashPayloads = results.filter(isHashPayload)\n const otherPayloads = results.filter(item => !isHashPayload(item))\n const found = await this.fetch(hashPayloads.map(item => item.hash), maxDepth - 1)\n const foundHashes = await Promise.all(found.map(async item => isAnyPayload(item) ? await PayloadBuilder.hash(item) : ObjectHasher.hashBytes(item)))\n const notFound = hashPayloads.filter(item => !foundHashes.includes(item.hash))\n return [...otherPayloads, ...found, ...notFound]\n }\n return results\n }\n\n async trace(hash: Hash): Promise<[DataLakeData | undefined, Payload[]]> {\n const [result] = await this.get([hash])\n if (isHashPayload(result)) {\n const [payload, route] = await this.trace(result.hash)\n return [payload, [result, ...route]]\n }\n return [result, []]\n }\n\n abstract add(items: DataLakeData[]): Promise<DataLakeData[]>\n\n abstract get(hashes: Hash[]): Promise<DataLakeData[]>\n}\n","import { assertEx } from '@xylabs/assert'\nimport type { Hash } from '@xylabs/hex'\nimport type { ReadWriteArchivist } from '@xyo-network/archivist-model'\nimport { isAnyPayload } from '@xyo-network/payload-model'\nimport { type DataLakeData } from '@xyo-network/xl1-protocol'\n\nimport { AbstractXyoDataLake } from './AbstractXyoDataLake.ts'\n\nexport class ArchivistXyoDataLake extends AbstractXyoDataLake {\n private _archivist: ReadWriteArchivist\n\n constructor(archivist: ReadWriteArchivist) {\n super()\n this._archivist = archivist\n }\n\n async add(items: DataLakeData[]): Promise<DataLakeData[]> {\n const payloads = items.filter(isAnyPayload)\n assertEx(payloads.length === items.length, () => 'Some items are not payloads')\n return await this._archivist.insert(payloads)\n }\n\n async get(hashes: Hash[]): Promise<DataLakeData[]> {\n return await this._archivist.get(hashes)\n }\n}\n","import { isArrayBuffer } from '@xylabs/arraybuffer'\nimport { assertEx } from '@xylabs/assert'\nimport { AxiosJson } from '@xylabs/axios'\nimport { exists } from '@xylabs/exists'\nimport type { Hash } from '@xylabs/hex'\nimport type { Promisable } from '@xylabs/promise'\nimport { isDefined } from '@xylabs/typeof'\nimport { isAnyPayload, type Payload } from '@xyo-network/payload-model'\nimport { type DataLakeData, isHashPayload } from '@xyo-network/xl1-protocol'\nimport { Axios } from 'axios'\n\nimport { AbstractXyoDataLake } from './AbstractXyoDataLake.ts'\n\nexport class HttpXyoDataLake extends AbstractXyoDataLake {\n private _axiosGet: Axios\n private _axiosInsertBlob: Axios\n private _axiosInsertJson: AxiosJson\n private _endpoint: string\n\n constructor(endpoint: string) {\n super()\n this._endpoint = endpoint\n this._axiosInsertJson = new AxiosJson({ baseURL: endpoint })\n this._axiosInsertBlob = new Axios({ baseURL: endpoint, headers: { 'Content-Type': 'application/octet-stream', 'Accept': 'application/octet-stream' } })\n this._axiosGet = new Axios({ baseURL: endpoint, headers: { 'Content-Type': 'application/json', 'Accept': 'application/octet-stream, application/json' } })\n }\n\n get endpoint(): string {\n return this._endpoint\n }\n\n async add(items: DataLakeData[]): Promise<DataLakeData[]> {\n const results: DataLakeData[] = []\n for (const item of items) {\n if (isAnyPayload(item)) {\n const result = await this.addPayload(item)\n if (isAnyPayload(result)) {\n results.push(result)\n } else if (isDefined(result)) {\n assertEx(false, () => 'Expected result to be a Payload')\n }\n } else if (isArrayBuffer(item)) {\n const result = await this.addArrayBuffer(item)\n if (isAnyPayload(result)) {\n results.push(result)\n } else if (isDefined(result)) {\n assertEx(false, () => 'Expected result to be a Payload')\n }\n }\n }\n return results\n }\n\n async get(hashes: Hash[]): Promise<DataLakeData[]> {\n return (await Promise.all(hashes.map(async (hash) => {\n return await this.getOne(hash)\n }))).filter(exists)\n }\n\n protected async addArrayBuffer(item: ArrayBuffer): Promise<ArrayBuffer | undefined> {\n const result = await this._axiosInsertBlob.post('/insert', item)\n if (result.status < 200 || result.status >= 300) {\n throw new Error(`Failed to add items [${result.status}]: ${result.statusText}`)\n }\n if (!isArrayBuffer(result.data)) {\n throw new Error('Invalid response from server (expected a ArrayBuffer)')\n }\n\n return result.data\n }\n\n protected async addPayload(item: Payload): Promise<Payload | undefined> {\n const result = await this._axiosInsertJson.post('/insert', item)\n if (result.status < 200 || result.status >= 300) {\n throw new Error(`Failed to add items [${result.status}]: ${result.statusText}`)\n }\n if (!Array.isArray(result.data) || result.data.length !== 1) {\n throw new Error('Invalid response from server (expected an Array of Payloads)')\n }\n const [response] = result.data\n if (!isAnyPayload(response)) {\n throw new Error('Invalid response from server (expected a Payload)')\n }\n return response\n }\n\n protected async fetchOne(hash: Hash, maxDepth: number = Number.MAX_SAFE_INTEGER): Promise<DataLakeData | undefined> {\n if (maxDepth <= 0) {\n return undefined\n }\n const result = await this.getOne(hash)\n if (isHashPayload(result)) {\n return await this.fetchOne(result.hash, maxDepth - 1)\n }\n return result\n }\n\n protected getOne(hash: Hash): Promisable<DataLakeData | undefined> {\n return this._axiosGet.get(`/get/${hash}`).then((response) => {\n if (response.status < 200 || response.status >= 300) {\n throw new Error(`Failed to get item [${response.status}]: ${response.statusText}`)\n }\n const contentType = response.headers['content-type']\n if (contentType && contentType.includes('application/json')) {\n const parsed = JSON.parse(response.data)\n if (!isAnyPayload(parsed)) {\n throw new Error('Invalid response from server (expected a Payload)')\n }\n return parsed\n } else {\n throw new Error(`Unexpected content type: ${contentType}`)\n }\n })\n }\n}\n","import { type Hash } from '@xylabs/hex'\nimport type { SignedHydratedTransaction, XyoRunner } from '@xyo-network/xl1-protocol'\n\nimport type { RpcTransport } from '../../transport/index.ts'\nimport type { XyoRunnerRpcSchemas } from '../../types/index.ts'\nexport class JsonRpcXyoRunner implements XyoRunner {\n protected readonly transport: RpcTransport<typeof XyoRunnerRpcSchemas>\n\n constructor(transport: RpcTransport<typeof XyoRunnerRpcSchemas>) {\n this.transport = transport\n }\n\n async broadcastTransaction(transaction: SignedHydratedTransaction): Promise<Hash> {\n return await this.transport.sendRequest('xyoRunner_broadcastTransaction', [transaction])\n }\n}\n","import type { Hash } from '@xylabs/hex'\nimport { MemoryArchivist } from '@xyo-network/archivist-memory'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport type { SignedHydratedTransactionWithStorageMeta, XyoRunner } from '@xyo-network/xl1-protocol'\nimport { flattenHydratedTransaction } from '@xyo-network/xl1-protocol-sdk'\n\nexport class MemoryXyoRunner implements XyoRunner {\n protected _archivist: MemoryArchivist | undefined\n\n async broadcastTransaction(transaction: SignedHydratedTransactionWithStorageMeta): Promise<Hash> {\n const archivist = await this.getArchivist()\n await archivist.insert(flattenHydratedTransaction(transaction))\n return await PayloadBuilder.hash(transaction[0])\n }\n\n protected async getArchivist(): Promise<MemoryArchivist> {\n if (!this._archivist) {\n this._archivist = await MemoryArchivist.create({ account: 'random' })\n }\n return this._archivist\n }\n}\n","import { assertEx } from '@xylabs/assert'\nimport { type Hash } from '@xylabs/hex'\nimport type { ArchivistInstance } from '@xyo-network/archivist-model'\nimport { asArchivistInstance } from '@xyo-network/archivist-model'\nimport type { ModuleIdentifier } from '@xyo-network/module-model'\nimport type { NodeInstance } from '@xyo-network/node-model'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport type { PayloadBundle } from '@xyo-network/payload-model'\nimport { PayloadBundleSchema } from '@xyo-network/payload-model'\nimport type {\n SignedHydratedTransaction,\n XyoRunner,\n} from '@xyo-network/xl1-protocol'\nimport { flattenHydratedTransaction } from '@xyo-network/xl1-protocol-sdk'\n\nexport class NodeXyoRunner implements XyoRunner {\n // TODO: Make configurable with defaults\n protected readonly node: NodeInstance\n protected readonly pendingArchivistPath: ModuleIdentifier = 'XYOChain:Pending:PendingTransactions'\n\n private _pendingArchivist: ArchivistInstance | undefined\n\n constructor(node: NodeInstance) {\n this.node = node\n }\n\n async broadcastTransaction(transaction: SignedHydratedTransaction): Promise<Hash> {\n const flattened = flattenHydratedTransaction(transaction)\n\n const pendingArchivist = await this.getPendingArchivist()\n\n const txHash = await PayloadBuilder.hash(transaction[0])\n const payloadBundle: PayloadBundle = {\n schema: PayloadBundleSchema, payloads: flattened, root: txHash,\n }\n\n await pendingArchivist.insert([payloadBundle])\n\n return txHash\n }\n\n protected getArchivist = async (identifier: ModuleIdentifier) => {\n const archivist = await this.node.resolve(identifier)\n return assertEx(asArchivistInstance(archivist), () => `Error: Could not resolve ${identifier} to an archivist instance`)\n }\n\n protected getPendingArchivist = async () => {\n if (this._pendingArchivist) return this._pendingArchivist\n this._pendingArchivist = await this.getArchivist(this.pendingArchivistPath)\n return assertEx(this._pendingArchivist, () => `Error: Could not resolve pending archivist at ${this.pendingArchivistPath}`)\n }\n}\n","import type { Address } from '@xylabs/hex'\nimport type { Signed } from '@xyo-network/boundwitness-model'\nimport type { Payload } from '@xyo-network/payload-model'\nimport type {\n AllowedBlockPayload,\n ChainId,\n SignedHydratedTransaction,\n TransactionBoundWitness,\n TransactionFeesBigInt,\n UnsignedHydratedTransaction,\n XyoSigner,\n} from '@xyo-network/xl1-protocol'\n\nimport type { RpcTransport } from '../../transport/index.ts'\nimport type { XyoSignerRpcSchemas } from '../../types/index.ts'\n\nexport class RpcXyoSigner implements XyoSigner {\n protected readonly transport: RpcTransport<typeof XyoSignerRpcSchemas>\n\n constructor(transport: RpcTransport<typeof XyoSignerRpcSchemas>) {\n this.transport = transport\n }\n\n async address(): Promise<Address> {\n return await this.transport.sendRequest('xyoSigner_address')\n }\n\n /** @deprecated - use signTransaction instead */\n async createSignedTransaction(\n chain: ChainId,\n elevatedPayloads: AllowedBlockPayload[],\n additionalPayloads: Payload[],\n nbf: number,\n exp: number,\n fees: TransactionFeesBigInt,\n from?: Address,\n ): Promise<Signed<TransactionBoundWitness>> {\n const ret = await this.transport.sendRequest('xyoSigner_createSignedTransaction', [\n chain,\n elevatedPayloads,\n additionalPayloads,\n nbf,\n exp,\n fees,\n from,\n ])\n return ret\n }\n\n async signTransaction(tx: UnsignedHydratedTransaction): Promise<SignedHydratedTransaction> {\n const ret = await this.transport.sendRequest('xyoSigner_signTransaction', [tx])\n return ret\n }\n}\n\n/**\n * @deprecated Use `RpcXyoSigner` instead.\n */\nexport class JsonRpcXyoSigner extends RpcXyoSigner {}\n","import type { Address } from '@xylabs/hex'\nimport type { AccountInstance } from '@xyo-network/account-model'\nimport type { Signed, UnsignedBoundWitness } from '@xyo-network/boundwitness-model'\nimport { type Payload } from '@xyo-network/payload-model'\nimport type {\n AllowedBlockPayload, ChainId, TransactionBoundWitness, TransactionFeesBigInt, XyoSigner,\n} from '@xyo-network/xl1-protocol'\nimport { buildTransaction, signTransaction } from '@xyo-network/xl1-protocol-sdk'\n\nexport class MemoryXyoSigner implements XyoSigner {\n protected readonly _account: AccountInstance\n\n constructor(account: AccountInstance) {\n this._account = account\n }\n\n address(): Address {\n return this._account.address\n }\n\n async createSignedTransaction(\n chain: ChainId,\n elevatedPayloads: AllowedBlockPayload[],\n additionalPayloads: Payload[],\n nbf: number,\n exp: number,\n fees: TransactionFeesBigInt,\n from?: Address,\n ): Promise<Signed<TransactionBoundWitness>> {\n const fromAddress = from ?? this._account.address\n const transaction = await buildTransaction(\n chain,\n elevatedPayloads,\n additionalPayloads,\n this._account,\n nbf,\n exp,\n fromAddress,\n fees,\n )\n return transaction[0]\n }\n\n async signTransaction(tx: [UnsignedBoundWitness<TransactionBoundWitness>, Payload[]]): Promise<[Signed<TransactionBoundWitness>, Payload[]]> {\n const txBW = await signTransaction(tx[0], this._account)\n return [txBW, tx[1]]\n }\n}\n","import type { Address, Hash } from '@xylabs/hex'\nimport type {\n AttoXL1,\n ChainId,\n ForkHistory,\n HydratedBlock, SignedHydratedTransaction,\n Stake,\n StepIdentity,\n StepIdentityString,\n Transfer,\n TransferBalanceHistoryItem,\n TransferPair,\n XyoViewer,\n} from '@xyo-network/xl1-protocol'\nimport { asAttoXL1, asHydratedBlock } from '@xyo-network/xl1-protocol'\n\nimport type { RpcTransport } from '../../transport/index.ts'\nimport type { XyoViewerRpcSchemas } from '../../types/index.ts'\nexport class JsonRpcXyoViewer implements XyoViewer {\n protected readonly transport: RpcTransport<typeof XyoViewerRpcSchemas>\n\n constructor(transport: RpcTransport<typeof XyoViewerRpcSchemas>) {\n this.transport = transport\n }\n\n async accountBalance(address: Address): Promise<AttoXL1> {\n return asAttoXL1(await this.transport.sendRequest('xyoViewer_accountBalance', [address]))\n }\n\n async accountBalanceHistory(address: Address): Promise<[Hash, Hash, Transfer][]> {\n return (await this.transport.sendRequest('xyoViewer_accountBalanceHistory', [address]))\n }\n\n async blockByHash(hash: Hash): Promise<HydratedBlock | null> {\n return asHydratedBlock(await this.transport.sendRequest('xyoViewer_blockByHash', [hash])) ?? null\n }\n\n async blockByNumber(blockNumber: number): Promise<HydratedBlock | null> {\n return asHydratedBlock(await this.transport.sendRequest('xyoViewer_blockByNumber', [blockNumber])) ?? null\n }\n\n async blocksByHash(hash: Hash, limit?: number): Promise<HydratedBlock[]> {\n return (await this.transport.sendRequest('xyoViewer_blocksByHash', [hash, limit])).map(b => asHydratedBlock(b, { required: true }))\n }\n\n async chainId(): Promise<Address> {\n return await this.transport.sendRequest('xyoViewer_chainId')\n }\n\n async chainIdAtBlock(blockNumber: number): Promise<ChainId | undefined> {\n return (await this.transport.sendRequest('xyoViewer_chainIdAtBlock', [blockNumber]))\n }\n\n async currentBlock(): Promise<HydratedBlock> {\n return asHydratedBlock(await this.transport.sendRequest('xyoViewer_currentBlock'), { required: true })\n }\n\n async currentBlockHash(): Promise<Hash> {\n return (await this.transport.sendRequest('xyoViewer_currentBlockHash'))\n }\n\n async currentBlockNumber(): Promise<number> {\n return (await this.transport.sendRequest('xyoViewer_currentBlockNumber'))\n }\n\n async forkHistory(): Promise<ForkHistory> {\n return (await this.transport.sendRequest('xyoViewer_forkHistory'))\n }\n\n async networkStakeStepRewardAddressHistory(address: Address): Promise<Record<Address, bigint>> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardAddressHistory', [address]))\n }\n\n async networkStakeStepRewardAddressReward(context: StepIdentity, address: Address): Promise<Record<Address, bigint>> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardAddressReward', [context, address]))\n }\n\n async networkStakeStepRewardAddressShare(context: StepIdentity, address: Address): Promise<[bigint, bigint]> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardAddressShare', [context, address]))\n }\n\n async networkStakeStepRewardClaimedByAddress(address: Address): Promise<bigint> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardClaimedByAddress', [address]))\n }\n\n async networkStakeStepRewardForPosition(position: number, range: [number, number]): Promise<[bigint, bigint]> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardForPosition', [position, range]))\n }\n\n async networkStakeStepRewardForStep(context: StepIdentity): Promise<bigint> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardForStep', [context]))\n }\n\n async networkStakeStepRewardForStepForPosition(context: StepIdentity, position: number): Promise<[bigint, bigint]> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardForStepForPosition', [context, position]))\n }\n\n async networkStakeStepRewardPoolRewards(context: StepIdentity): Promise<Record<Address, bigint>> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardPoolRewards', [context]))\n }\n\n async networkStakeStepRewardPoolShares(context: StepIdentity): Promise<Record<Address, bigint>> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardPoolShares', [context]))\n }\n\n async networkStakeStepRewardPositionWeight(context: StepIdentity, position: number): Promise<bigint> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardPositionWeight', [context, position]))\n }\n\n async networkStakeStepRewardPotentialPositionLoss(context: StepIdentity, position: number): Promise<bigint> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardPotentialPositionLoss', [context, position]))\n }\n\n async networkStakeStepRewardRandomizer(context: StepIdentity): Promise<bigint> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardRandomizer', [context]))\n }\n\n async networkStakeStepRewardStakerCount(context: StepIdentity): Promise<number> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardStakerCount', [context]))\n }\n\n async networkStakeStepRewardUnclaimedByAddress(address: Address): Promise<bigint> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardUnclaimedByAddress', [address]))\n }\n\n async networkStakeStepRewardWeightForAddress(context: StepIdentity, address: Address): Promise<bigint> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardWeightForAddress', [context, address]))\n }\n\n async networkStakeStepRewardsForPosition(position: number, range: [number, number]): Promise<Record<StepIdentityString, [bigint, bigint]>> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardsForPosition', [position, range]))\n }\n\n async networkStakeStepRewardsForRange(range: [number, number]): Promise<bigint> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardsForRange', [range]))\n }\n\n async networkStakeStepRewardsForStepLevel(stepLevel: number, range: [number, number]): Promise<bigint> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardsForStepLevel', [stepLevel, range]))\n }\n\n async stakeById(id: number): Promise<Stake> {\n return (await this.transport.sendRequest('xyoViewer_stakeById', [id]))\n }\n\n async stakeByStaker(staker: Address, slot: number): Promise<Stake> {\n return (await this.transport.sendRequest('xyoViewer_stakeByStaker', [staker, slot]))\n }\n\n async stakedByStaker(staker: Address): Promise<Address[]> {\n return (await this.transport.sendRequest('xyoViewer_stakedByStaker', [staker]))\n }\n\n async stakesByStaked(staked: Address): Promise<Stake[]> {\n return (await this.transport.sendRequest('xyoViewer_stakesByStaked', [staked]))\n }\n\n async stakesByStaker(staker: Address): Promise<Stake[]> {\n return (await this.transport.sendRequest('xyoViewer_stakesByStaker', [staker]))\n }\n\n async transactionByBlockHashAndIndex(blockHash: Hash, transactionIndex: number): Promise<SignedHydratedTransaction | null> {\n return (await this.transport.sendRequest('xyoViewer_transactionByBlockHashAndIndex', [blockHash, transactionIndex])) as SignedHydratedTransaction | null\n }\n\n async transactionByBlockNumberAndIndex(blockNumber: number, transactionIndex: number): Promise<SignedHydratedTransaction | null> {\n return (await this.transport.sendRequest('xyoViewer_transactionByBlockNumberAndIndex', [blockNumber, transactionIndex])) as SignedHydratedTransaction | null\n }\n\n async transactionByHash(transactionHash: Hash): Promise<SignedHydratedTransaction | null> {\n return (await this.transport.sendRequest('xyoViewer_transactionByHash', [transactionHash])) as SignedHydratedTransaction | null\n }\n\n async transferBalance(address: Address): Promise<AttoXL1> {\n return asAttoXL1(await this.transport.sendRequest('xyoViewer_transferBalance', [address]))\n }\n\n async transferBalanceHistory(address: Address): Promise<TransferBalanceHistoryItem[]> {\n return (await this.transport.sendRequest('xyoViewer_transferBalanceHistory', [address])) as TransferBalanceHistoryItem[]\n }\n\n async transferPairBalance(pair: TransferPair): Promise<AttoXL1> {\n return asAttoXL1(await this.transport.sendRequest('xyoViewer_transferPairBalance', [pair]))\n }\n\n async transferPairBalanceHistory(pair: TransferPair): Promise<TransferBalanceHistoryItem[]> {\n return (await this.transport.sendRequest('xyoViewer_transferPairBalanceHistory', [pair])) as TransferBalanceHistoryItem[]\n }\n}\n","import { assertEx } from '@xylabs/assert'\nimport type { Address, Hex } from '@xylabs/hex'\nimport type { Signed } from '@xyo-network/boundwitness-model'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { isAnyPayload, type Payload } from '@xyo-network/payload-model'\nimport type {\n AllowedBlockPayload,\n SignedHydratedTransactionWithStorageMeta,\n TransactionBoundWitness, TransactionFeesBigInt,\n TransactionOptions, XyoConnection, XyoDataLake, XyoDataLakeViewer, XyoNetwork, XyoRunner, XyoSigner, XyoViewer,\n} from '@xyo-network/xl1-protocol'\nimport { defaultTransactionFees, isDataLakeProvider } from '@xyo-network/xl1-protocol'\nimport { HydratedTransactionWrapper } from '@xyo-network/xl1-wrappers'\n\nexport class XyoBaseConnection implements XyoConnection {\n private readonly _network?: XyoNetwork\n private readonly _runner?: XyoRunner\n private readonly _signer?: XyoSigner\n private readonly _storage?: XyoDataLake | XyoDataLakeViewer\n private readonly _viewer?: XyoViewer\n\n constructor(params?: {\n network?: XyoNetwork\n runner?: XyoRunner\n signer?: XyoSigner\n storage?: XyoDataLake | XyoDataLakeViewer\n viewer?: XyoViewer\n }) {\n this._network = params?.network\n this._runner = params?.runner\n this._signer = params?.signer\n this._storage = params?.storage\n this._viewer = params?.viewer\n }\n\n get network(): XyoNetwork | undefined {\n return this._network\n }\n\n get runner(): XyoRunner | undefined {\n return this._runner\n }\n\n /** @deprecated use signer from gateway instead */\n get signer(): XyoSigner | undefined {\n return this._signer\n }\n\n get storage(): XyoDataLake | XyoDataLakeViewer | undefined {\n return this._storage\n }\n\n get viewer(): XyoViewer | undefined {\n return this._viewer\n }\n\n /** @deprecated use submitTransaction instead */\n async send(\n elevatedPayloads: AllowedBlockPayload[],\n additionalPayloads: Payload[],\n chain?: Hex,\n nbf?: number,\n exp?: number,\n from?: Address,\n fees?: TransactionFeesBigInt,\n ): Promise<Signed<TransactionBoundWitness>> {\n // eslint-disable-next-line sonarjs/deprecation\n return (await this.submitTransaction(elevatedPayloads, additionalPayloads, {\n chain, nbf, exp, from, fees,\n }))[0]\n }\n\n /** @deprecated use addPayloadsToChain from gateway instead */\n async submitTransaction(\n elevatedPayloads: AllowedBlockPayload[],\n additionalPayloads: Payload[],\n {\n chain, exp, fees, from, nbf,\n }: TransactionOptions = {},\n ): Promise<SignedHydratedTransactionWithStorageMeta> {\n const viewer = assertEx(this.viewer, () => 'No viewer available')\n // eslint-disable-next-line sonarjs/deprecation\n const signer = assertEx(this.signer, () => 'No signer available')\n const runner = assertEx(this.runner, () => 'No runner available')\n const storage = this.storage\n const chainResolved = chain ?? await viewer.chainId()\n if (chainResolved === undefined) throw new Error('Failed to determine chain')\n const nbfResolved = Math.max(await viewer.currentBlockNumber() ?? 0, nbf ?? 0)\n const expResolved = exp ?? (nbfResolved + 1000)\n const feesResolved = fees ?? defaultTransactionFees\n const fromResolved = from ?? await signer.address()\n if (fromResolved === undefined) throw new Error('Failed to determine from address')\n // eslint-disable-next-line sonarjs/deprecation\n const signedTransaction = assertEx(await signer.createSignedTransaction(\n chainResolved,\n elevatedPayloads,\n additionalPayloads,\n nbfResolved,\n expResolved,\n feesResolved,\n fromResolved,\n ), () => 'Failed to create transaction')\n const hydratedTransaction: SignedHydratedTransactionWithStorageMeta = [await PayloadBuilder.addStorageMeta(signedTransaction),\n await PayloadBuilder.addStorageMeta(elevatedPayloads)]\n\n // if storage configured, add the external payloads to it\n if (isDataLakeProvider(storage)) {\n const wrapper = await HydratedTransactionWrapper.parse(hydratedTransaction)\n await storage.add(Object.values(wrapper.externalPayloads).filter(isAnyPayload))\n }\n\n assertEx(await runner.broadcastTransaction(hydratedTransaction), () => 'Failed to broadcast transaction')\n\n return hydratedTransaction\n }\n}\n","import { assertEx } from '@xylabs/assert'\nimport type { Hash } from '@xylabs/hex'\nimport type { Promisable } from '@xylabs/promise'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport type { Payload } from '@xyo-network/payload-model'\nimport type {\n AllowedBlockPayload,\n SignedHydratedTransaction,\n XyoConnection, XyoGatewayProvider, XyoSigner,\n} from '@xyo-network/xl1-protocol'\nimport { buildUnsignedTransaction } from '@xyo-network/xl1-protocol-sdk'\n\nexport abstract class AbstractXyoGateway implements XyoGatewayProvider {\n async addPayloadsToChain(onChain: AllowedBlockPayload[], offChain: Payload[]): Promise<[Hash, SignedHydratedTransaction]> {\n const connection = await this.connection()\n const viewer = assertEx(connection.viewer, () => 'No viewer available on connection')\n const signer = await this.signer()\n const chainId = await viewer.chainId()\n const nbf = await viewer.currentBlockNumber()\n const tx = await buildUnsignedTransaction(chainId, onChain, offChain, nbf, nbf + 1000, await signer.address())\n const hash = await this.addTransactionToChain(tx)\n return [hash, tx]\n }\n\n async addTransactionToChain(tx: SignedHydratedTransaction): Promise<Hash> {\n const connection = await this.connection()\n const signer = await this.signer()\n const runner = assertEx(connection.runner, () => 'No runner available on connection')\n const signedTx = await signer.signTransaction(tx)\n return await runner.broadcastTransaction(\n [await PayloadBuilder.addStorageMeta(signedTx[0]),\n await PayloadBuilder.addStorageMeta(signedTx[1])],\n )\n }\n\n /** @deprecated use addPayloadsToChain instead */\n async submitTransaction(elevatedPayloads: AllowedBlockPayload[], additionalPayloads: Payload[]): Promise<SignedHydratedTransaction> {\n const connection = await this.connection()\n // eslint-disable-next-line sonarjs/deprecation\n assertEx(connection.submitTransaction, () => 'Active connection does not support transaction submission')\n // eslint-disable-next-line sonarjs/deprecation\n const tx = await connection.submitTransaction?.(elevatedPayloads, additionalPayloads)\n return assertEx(tx, () => 'Transaction submission failed')\n }\n\n abstract connection(): Promisable<XyoConnection>\n abstract signer(): Promisable<XyoSigner>\n}\n","import type { XyoConnection, XyoSigner } from '@xyo-network/xl1-protocol'\n\nimport { AbstractXyoGateway } from './Abstract.ts'\n\nexport class MemoryXyoGateway extends AbstractXyoGateway {\n private readonly _connection: XyoConnection\n private readonly _signer: XyoSigner\n\n constructor(signer: XyoSigner, connection: XyoConnection) {\n super()\n this._signer = signer\n this._connection = connection\n }\n\n connection(): XyoConnection {\n return this._connection\n }\n\n signer(): XyoSigner {\n return this._signer\n }\n}\n","import { isUndefined } from '@xylabs/typeof'\nimport type {\n GatewayName,\n NetworkStatus, XyoNetwork,\n} from '@xyo-network/xl1-protocol'\nimport { isNetworkStatus } from '@xyo-network/xl1-protocol'\nimport axios from 'axios'\n\nimport {\n errorStatus, StatusNetworks, unknownStatus,\n} from './lib/index.ts'\n\nexport class MemoryXyoNetwork implements XyoNetwork {\n protected readonly _networkId: GatewayName\n\n constructor(networkId: GatewayName) {\n this._networkId = networkId\n }\n\n async status(): Promise<NetworkStatus> {\n const statusNetwork = StatusNetworks[this._networkId]\n if (isUndefined(statusNetwork)) {\n throw new Error(`Unknown status network ID: ${this._networkId}`)\n }\n\n return await this.makeRequest(statusNetwork.statusUrl)\n }\n\n private async makeRequest(url: string): Promise<NetworkStatus> {\n try {\n const response = await axios.get(url)\n if (isNetworkStatus(response.data)) {\n return response.data\n } else {\n if (response.status === 200) {\n console.error('Unknown network status response:', response.data)\n\n return unknownStatus\n }\n return errorStatus\n }\n } catch (error) {\n console.error('Error fetching network status:', error)\n return errorStatus\n }\n }\n}\n","import type { NetworkStatus } from '@xyo-network/xl1-protocol'\nimport { NetworkStatusSchema } from '@xyo-network/xl1-protocol'\n\nexport const unknownStatus: NetworkStatus = {\n description: 'Unknown Network Status',\n schema: NetworkStatusSchema,\n state: 'unknown',\n}\n\nexport const errorStatus: NetworkStatus = {\n description: 'Error Fetching Network Status',\n schema: NetworkStatusSchema,\n state: 'unknown',\n}\n","import type { GatewayName } from '@xyo-network/xl1-protocol'\n\nexport type StatusNetwork = {\n id: GatewayName\n statusUrl: string\n}\n\nexport const MainNetworkStats: StatusNetwork = {\n id: 'mainnet' as GatewayName,\n statusUrl: 'https://xyo.network/chain-network-status-mainnet.json',\n}\n\nexport const SequenceNetworkStats: StatusNetwork = {\n id: 'sequence' as GatewayName,\n statusUrl: 'https://beta.xyo.network/chain-network-status-sequence.json',\n}\n\nexport const LocalNetworkStats: StatusNetwork = {\n id: 'local' as GatewayName,\n statusUrl: 'http://localhost:3002/chain-network-status-local.json',\n}\n\nexport const StatusNetworks: Record<GatewayName, StatusNetwork> = {\n ['mainnet' as GatewayName]: MainNetworkStats,\n ['sequence' as GatewayName]: SequenceNetworkStats,\n ['local' as GatewayName]: LocalNetworkStats,\n}\n","import { assertEx } from '@xylabs/assert'\nimport type {\n CaveatTypes, InvokerPermission, PermissionRequest, RequestedPermission,\n XyoPermissions,\n} from '@xyo-network/xl1-protocol'\n\nimport type { Invoker, PermissionsStore } from './store/index.ts'\n\n/**\n * In-memory implementation of XyoPermissions for testing or ephemeral use cases.\n * Does not persist data beyond the lifetime of the instance.\n * Assumes all permission requests are granted and revocations always succeed.\n */\nexport class MemoryXyoPermissions implements XyoPermissions {\n invoker: Invoker\n private _store: PermissionsStore\n\n constructor(store: PermissionsStore) {\n this._store = store\n this.invoker = store.invoker\n }\n\n get store(): PermissionsStore {\n return assertEx(this._store, () => 'Store must be defined to get permissions')\n }\n\n async getPermissions(): Promise<InvokerPermission[]> {\n return await this.store.getPermissions()\n }\n\n // assumed the permissions are always granted\n async requestPermissions(permissions: PermissionRequest[]): Promise<RequestedPermission[]> {\n await Promise.resolve()\n // Flatten PermissionRequest[] into InvokerPermission[]\n const newPermissions: InvokerPermission[] = []\n const now = Date.now()\n for (const req of permissions) {\n for (const parentCapability in req) {\n newPermissions.push({\n invoker: this.invoker,\n parentCapability,\n caveats: Object.entries(req[parentCapability]).map(([type, value]) => ({ type: type as CaveatTypes, value })),\n date: now,\n })\n }\n }\n\n // Update or add permissions in the store\n const existingPermissions = await this.getPermissions()\n for (const perm of newPermissions) {\n const idx = existingPermissions.findIndex(\n p => p.invoker === perm.invoker && p.parentCapability === perm.parentCapability,\n )\n if (idx === -1) {\n existingPermissions.push(perm)\n } else {\n existingPermissions[idx] = perm\n }\n }\n await this.store.setPermissions(existingPermissions)\n\n // Return the granted permissions in RequestedPermission shape\n return newPermissions.map(({ parentCapability, date }) => ({ parentCapability, date }))\n }\n\n // Assumes the permissions are always revoked\n async revokePermissions(permissions: PermissionRequest): Promise<RequestedPermission[]> {\n const existingPermissions = await this.getPermissions()\n const revoked: RequestedPermission[] = []\n for (const parentCapability in permissions) {\n const idx = existingPermissions.findIndex(\n p => p.invoker === this.invoker && p.parentCapability === parentCapability,\n )\n if (idx !== -1) {\n const removed = existingPermissions.splice(idx, 1)[0]\n revoked.push({ parentCapability: removed.parentCapability, date: removed.date })\n }\n }\n await this.store.setPermissions(existingPermissions)\n return revoked\n }\n}\n","import type {\n InvokerPermission,\n PermissionRequest,\n RequestedPermission,\n XyoPermissions,\n} from '@xyo-network/xl1-protocol'\n\nimport type { RpcTransport } from '../../transport/index.ts'\nimport type { XyoPermissionsRpcSchemas } from '../../types/index.ts'\n\nexport class RpcXyoPermissions implements XyoPermissions {\n protected readonly transport: RpcTransport<typeof XyoPermissionsRpcSchemas>\n\n constructor(transport: RpcTransport<typeof XyoPermissionsRpcSchemas>) {\n this.transport = transport\n }\n\n async getPermissions(): Promise<InvokerPermission[]> {\n return await this.transport.sendRequest('xyoPermissions_getPermissions', [])\n }\n\n async requestPermissions(permissions: PermissionRequest[]): Promise<RequestedPermission[]> {\n return await this.transport.sendRequest('xyoPermissions_requestPermissions', [permissions])\n }\n\n async revokePermissions(_permissions: PermissionRequest): Promise<RequestedPermission[]> {\n await Promise.resolve()\n throw new Error('Method not implemented.')\n }\n}\n","import { assertEx } from '@xylabs/assert'\nimport type { InvokerPermission } from '@xyo-network/xl1-protocol'\n\nimport type { Invoker, PermissionsStore } from './PermissionsStore.ts'\n\n/**\n * In-memory implementation of XyoPermissions for testing or ephemeral use cases.\n * Does not persist data beyond the lifetime of the instance.\n * Assumes all permission requests are granted and revocations always succeed.\n */\nexport class MemoryPermissionsStore implements PermissionsStore {\n private _invoker: Invoker\n private permissions: InvokerPermission[] = []\n\n constructor(invoker: Invoker) {\n this._invoker = invoker\n }\n\n get invoker(): Invoker {\n return assertEx(this._invoker, () => 'Invoker must be defined to get permissions')\n }\n\n async getPermissions(): Promise<InvokerPermission[]> {\n await Promise.resolve()\n return this.permissions\n }\n\n async setPermissions(permissions: InvokerPermission[]): Promise<void> {\n await Promise.resolve()\n this.permissions = permissions\n }\n}\n"],"mappings":"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","names":["requestSchemas","rpcMethodHandlersFromRunner","runner","xyoRunner_broadcastTransaction","params","broadcastTransaction","rpcMethodHandlersFromSigner","signer","xyoSigner_address","params","address","xyoSigner_createSignedTransaction","createSignedTransaction","xyoSigner_signTransaction","signTransaction","rpcMethodHandlersFromViewer","viewer","xyoViewer_networkStakeStepRewardClaimedByAddress","params","networkStakeStepRewardClaimedByAddress","xyoViewer_networkStakeStepRewardAddressReward","networkStakeStepRewardAddressReward","xyoViewer_networkStakeStepRewardAddressHistory","networkStakeStepRewardAddressHistory","xyoViewer_networkStakeStepRewardAddressShare","networkStakeStepRewardAddressShare","xyoViewer_networkStakeStepRewardWeightForAddress","networkStakeStepRewardWeightForAddress","xyoViewer_networkStakeStepRewardUnclaimedByAddress","networkStakeStepRewardUnclaimedByAddress","xyoViewer_networkStakeStepRewardPoolShares","networkStakeStepRewardPoolShares","xyoViewer_networkStakeStepRewardPoolRewards","networkStakeStepRewardPoolRewards","xyoViewer_networkStakeStepRewardPositionWeight","networkStakeStepRewardPositionWeight","xyoViewer_networkStakeStepRewardPotentialPositionLoss","networkStakeStepRewardPotentialPositionLoss","xyoViewer_networkStakeStepRewardForStep","networkStakeStepRewardForStep","xyoViewer_networkStakeStepRewardRandomizer","networkStakeStepRewardRandomizer","xyoViewer_networkStakeStepRewardStakerCount","networkStakeStepRewardStakerCount","xyoViewer_networkStakeStepRewardForStepForPosition","networkStakeStepRewardForStepForPosition","xyoViewer_networkStakeStepRewardForPosition","networkStakeStepRewardForPosition","xyoViewer_networkStakeStepRewardsForPosition","networkStakeStepRewardsForPosition","xyoViewer_networkStakeStepRewardsForRange","networkStakeStepRewardsForRange","xyoViewer_networkStakeStepRewardsForStepLevel","networkStakeStepRewardsForStepLevel","xyoViewer_accountBalance","accountBalance","xyoViewer_accountBalanceHistory","accountBalanceHistory","xyoViewer_blockByHash","blockByHash","xyoViewer_blockByNumber","blockByNumber","xyoViewer_blocksByHash","blocksByHash","xyoViewer_chainId","chainId","xyoViewer_chainIdAtBlock","chainIdAtBlock","xyoViewer_currentBlock","currentBlock","xyoViewer_currentBlockHash","currentBlockHash","xyoViewer_currentBlockNumber","currentBlockNumber","xyoViewer_forkHistory","forkHistory","xyoViewer_stakeById","stakeById","xyoViewer_stakeByStaker","stakeByStaker","xyoViewer_stakesByStaked","stakesByStaked","xyoViewer_stakesByStaker","stakesByStaker","xyoViewer_stakedByStaker","stakedByStaker","xyoViewer_transactionByBlockHashAndIndex","transactionByBlockHashAndIndex","xyoViewer_transactionByBlockNumberAndIndex","transactionByBlockNumberAndIndex","xyoViewer_transactionByHash","transactionByHash","xyoViewer_transferBalance","transferBalance","xyoViewer_transferBalanceHistory","transferBalanceHistory","xyoViewer_transferPairBalance","transferPairBalance","xyoViewer_transferPairBalanceHistory","transferPairBalanceHistory","rpcMethodHandlersFromConnection","connection","runner","signer","viewer","result","xyoProvider_send","params","send","rpcMethodHandlersFromRunner","rpcMethodHandlersFromSigner","rpcMethodHandlersFromViewer","rpcMethodHandlersFromPermissions","permissions","xyoPermissions_getPermissions","params","getPermissions","xyoPermissions_requestPermissions","requestPermissions","xyoPermissions_revokePermissions","revokePermissions","MemoryXyoClient","gateways","permissions","isDefined","isString","isDataLakeProvider","AxiosJson","isError","isUndefinedOrNull","isAxiosError","v4","JsonRpcErrorCodes","InternalError","code","message","InvalidParams","InvalidRequest","MethodNotFound","UserRejected","jsonrpc","z","AddressRegEx","toAddress","z","AddressZod","string","toLowerCase","regex","transform","v","HexZod","z","HashZod","HexZod","BoundWitnessSchema","z","HashToJsonZod","z","HexRegExMinMax","toHex","SequenceConstants","z","LocalSequenceRegex","RegExp","localSequenceBytes","LocalSequenceToStringZod","string","regex","LocalSequenceFromStringZod","transform","v","QualifiedSequenceRegex","qualifiedSequenceBytes","QualifiedSequenceToStringZod","QualifiedSequenceFromStringZod","SequenceToStringZod","union","SequenceFromStringZod","StorageMetaZod","object","_hash","HashToJsonZod","_dataHash","_sequence","SequenceToStringZod","SchemaZod","string","PayloadZod","schema","catchall","any","PayloadWithStorageMetaZod","extend","shape","AnyPayloadZod","json","AnyPayloadWithStorageMetaZod","WithStorageMetaZod","valueZod","BoundWitnessRequiredFieldsZod","object","addresses","array","AddressZod","payload_hashes","HashZod","payload_schemas","SchemaZod","previous_hashes","nullable","BoundWitnessMetaZod","$destination","optional","$sourceQuery","$signatures","union","HexZod","null","BoundWitnessZod","PayloadZod","extend","schema","literal","BoundWitnessSchema","shape","refine","data","length","message","AnyBoundWitnessZod","catchall","any","UnsignedBoundWitnessZod","includes","AnyUnsignedBoundWitnessZod","UnsignedBoundWitnessWithStorageMetaZod","safeExtend","SignedBoundWitnessZod","SignedBoundWitnessWithStorageMetaZod","AnySignedBoundWitnessZod","AnySignedBoundWitnessWithStorageMetaZod","AddressRegEx","toAddress","z","ChainZod","string","toLowerCase","regex","transform","v","BlockNumberZod","number","int","nonnegative","BlockBoundWitnessFieldsZod","object","block","chain","ChainZod","previous","HexZod","nullable","protocol","optional","step_hashes","array","BlockBoundWitnessMetaZod","$epoch","BlockBoundWitnessZod","UnsignedBoundWitnessZod","merge","StorageMetaZod","partial","BlockBoundWitnessWithStorageMetaZod","UnsignedBoundWitnessWithStorageMetaZod","SignedBlockBoundWitnessZod","SignedBoundWitnessZod","SignedBlockBoundWitnessWithStorageMetaZod","SignedBoundWitnessWithStorageMetaZod","z","HydratedBlockZod","tuple","BlockBoundWitnessZod","array","PayloadZod","HydratedBlockWithStorageMetaZod","BlockBoundWitnessWithStorageMetaZod","PayloadWithStorageMetaZod","SignedHydratedBlockZod","SignedBlockBoundWitnessZod","SignedHydratedBlockToJsonZod","SignedHydratedBlockWithStorageMetaZod","SignedBlockBoundWitnessWithStorageMetaZod","asAnyPayload","asSignedHydratedTransaction","z","z","BigIntToJsonZod","HexZod","JsonToBigIntZod","asAttoXL1","z","AttoZod","bigint","JsonToAttoZod","transform","v","AttoToJsonZod","TransactionFeesHexZod","object","base","gasLimit","gasPrice","priority","TransactionFeesBigIntZod","TransactionFeesJsonToBigIntZod","val","parse","TransactionFeesBigIntToJsonZod","BlockStartZod","object","nbf","BlockNumberZod","BlockEndZod","exp","BlockDurationZod","BlockScriptsZod","script","array","string","optional","WithTransactionFeesZod","fees","TransactionFeesHexZod","TransactionBoundWitnessFields","chain","ChainZod","from","TransactionBoundWitnessZod","UnsignedBoundWitnessZod","merge","StorageMetaZod","partial","SignedTransactionBoundWitnessZod","SignedBoundWitnessZod","HydratedTransactionZod","tuple","TransactionBoundWitnessZod","array","PayloadZod","UnsignedHydratedTransactionZod","SignedHydratedTransactionZod","SignedTransactionBoundWitnessZod","SignedHydratedTransactionToJsonZod","transform","tx","payloads","asSignedHydratedTransaction","map","payload","JsonToSignedHydratedTransactionZod","p","asAnyPayload","z","JsonValueZod","lazy","union","string","number","boolean","null","array","record","JsonObjectZod","z","CaveatTypesZod","enum","CaveatsZod","object","type","value","json","PermissionZod","parentCapability","string","caveats","array","optional","invoker","InvokerPermissionZod","extend","date","number","PermissionRequestZod","record","any","RequestedPermissionZod","HexZod","z","StakeZod","object","amount","AttoZod","addBlock","number","id","removeBlock","staked","AddressZod","staker","withdrawBlock","StakeToJsonZod","transform","val","AttoToJsonZod","parse","JsonToStakeZod","extend","HexZod","JsonToAttoZod","z","StepIdentityZod","object","block","number","step","BigIntToJsonZod","PayloadZodStrictOfSchema","TransferSchema","z","TransferFieldsZod","z","object","epoch","number","from","AddressZod","transfers","record","BigIntToJsonZod","TransferZod","PayloadZodStrictOfSchema","TransferSchema","extend","shape","z","TransferPairZod","z","tuple","AddressZod","XyoPermissionsRpcSchemas","xyoPermissions_getPermissions","params","to","array","any","length","from","result","InvokerPermissionZod","xyoPermissions_requestPermissions","tuple","PermissionRequestZod","RequestedPermissionZod","xyoPermissions_revokePermissions","z","XyoProviderRpcSchemas","xyoProvider_send","params","to","tuple","AddressZod","array","PayloadZod","number","nonnegative","TransactionFeesBigIntToJsonZod","optional","from","TransactionFeesJsonToBigIntZod","result","SignedTransactionBoundWitnessZod","HashToJsonZod","JsonToHashZod","z","XyoRunnerRpcSchemas","xyoRunner_broadcastTransaction","params","to","tuple","SignedHydratedTransactionZod","from","result","HashToJsonZod","JsonToHashZod","AllowedBlockPayloadZod","asHydratedTransactionWithStorageMeta","z","XyoSignerRpcSchemas","xyoSigner_address","params","to","z","array","any","length","optional","from","result","AddressZod","xyoSigner_createSignedTransaction","tuple","ChainZod","AllowedBlockPayloadZod","PayloadZod","number","nonnegative","TransactionFeesBigIntToJsonZod","TransactionFeesJsonToBigIntZod","SignedTransactionBoundWitnessZod","transform","data","xyoSigner_signTransaction","UnsignedHydratedTransactionZod","SignedHydratedTransactionZod","asHydratedTransactionWithStorageMeta","required","BigIntToJsonZod","HashToJsonZod","HashZod","JsonToBigIntZod","JsonToHashZod","z","XyoViewerRpcSchemas","xyoViewer_networkStakeStepRewardClaimedByAddress","params","to","union","tuple","AddressZod","from","result","BigIntToJsonZod","JsonToBigIntZod","xyoViewer_networkStakeStepRewardAddressReward","StepIdentityZod","record","xyoViewer_networkStakeStepRewardAddressHistory","xyoViewer_networkStakeStepRewardAddressShare","xyoViewer_networkStakeStepRewardWeightForAddress","xyoViewer_networkStakeStepRewardUnclaimedByAddress","xyoViewer_networkStakeStepRewardPoolRewards","xyoViewer_networkStakeStepRewardPositionWeight","number","xyoViewer_networkStakeStepRewardPotentialPositionLoss","xyoViewer_networkStakeStepRewardForStep","xyoViewer_networkStakeStepRewardRandomizer","xyoViewer_networkStakeStepRewardStakerCount","xyoViewer_networkStakeStepRewardPoolShares","xyoViewer_networkStakeStepRewardForStepForPosition","xyoViewer_networkStakeStepRewardForPosition","xyoViewer_networkStakeStepRewardsForRange","xyoViewer_networkStakeStepRewardsForStepLevel","xyoViewer_networkStakeStepRewardsForPosition","string","xyoViewer_accountBalance","xyoViewer_accountBalanceHistory","array","HashZod","TransferZod","xyoViewer_transferPairBalance","TransferPairZod","xyoViewer_transferPairBalanceHistory","PayloadZod","xyoViewer_transferBalance","xyoViewer_transferBalanceHistory","xyoViewer_blockByHash","HashToJsonZod","JsonToHashZod","SignedHydratedBlockZod","xyoViewer_blockByNumber","xyoViewer_blocksByHash","optional","xyoViewer_chainId","any","length","xyoViewer_chainIdAtBlock","BlockNumberZod","xyoViewer_currentBlock","xyoViewer_currentBlockHash","xyoViewer_currentBlockNumber","xyoViewer_forkHistory","xyoViewer_stakeByStaker","StakeToJsonZod","JsonToStakeZod","xyoViewer_stakeById","xyoViewer_stakedByStaker","xyoViewer_stakesByStaker","xyoViewer_stakesByStaked","xyoViewer_transactionByBlockHashAndIndex","SignedHydratedTransactionZod","nullable","xyoViewer_transactionByBlockNumberAndIndex","xyoViewer_transactionByHash","AllRpcSchemas","XyoProviderRpcSchemas","XyoRunnerRpcSchemas","XyoSignerRpcSchemas","XyoViewerRpcSchemas","XyoPermissionsRpcSchemas","z","createRequestSchema","methodName","paramsSchema","undefined","object","id","union","string","number","jsonrpc","literal","method","params","z","createResponseSchema","resultSchema","undefined","object","id","union","string","number","jsonrpc","literal","result","HttpRpcTransport","_rpcUrl","_schemas","rpcUrl","schemas","sendRequest","method","params","callRpc","url","id","v4","body","jsonrpc","to","parse","res","AxiosJson","post","json","data","isUndefinedOrNull","error","Error","message","result","from","ex","isError","String","isAxiosError","status","code","assertEx","isObject","isString","v4","MemoryRpcTransport","_rpcEngine","_schemas","requestSchemas","responseSchemas","rpcEngine","schemas","sendRequest","method","params","schema","requestSchema","isObject","stringMethod","assertEx","isString","createRequestSchema","to","req","jsonrpc","id","v4","request","parse","response","handle","responseSchema","createResponseSchema","result","from","buildSessionMessageRequest","data","destination","request","sessionId","globalThis","xyo","walletExtensionId","ObjectHasher","PayloadBuilder","isAnyPayload","isHashPayload","AbstractXyoDataLake","fetch","hashes","maxDepth","results","get","hashPayloads","filter","isHashPayload","otherPayloads","item","found","map","hash","foundHashes","Promise","all","isAnyPayload","PayloadBuilder","ObjectHasher","hashBytes","notFound","includes","trace","result","payload","route","assertEx","isAnyPayload","ArchivistXyoDataLake","AbstractXyoDataLake","_archivist","archivist","add","items","payloads","filter","isAnyPayload","assertEx","length","insert","get","hashes","isArrayBuffer","assertEx","AxiosJson","exists","isDefined","isAnyPayload","isHashPayload","Axios","HttpXyoDataLake","AbstractXyoDataLake","_axiosGet","_axiosInsertBlob","_axiosInsertJson","_endpoint","endpoint","AxiosJson","baseURL","Axios","headers","add","items","results","item","isAnyPayload","result","addPayload","push","isDefined","assertEx","isArrayBuffer","addArrayBuffer","get","hashes","Promise","all","map","hash","getOne","filter","exists","post","status","Error","statusText","data","Array","isArray","length","response","fetchOne","maxDepth","Number","MAX_SAFE_INTEGER","undefined","isHashPayload","then","contentType","includes","parsed","JSON","parse","JsonRpcXyoRunner","transport","broadcastTransaction","transaction","sendRequest","MemoryArchivist","PayloadBuilder","flattenHydratedTransaction","MemoryXyoRunner","_archivist","broadcastTransaction","transaction","archivist","getArchivist","insert","flattenHydratedTransaction","PayloadBuilder","hash","MemoryArchivist","create","account","assertEx","asArchivistInstance","PayloadBuilder","PayloadBundleSchema","flattenHydratedTransaction","NodeXyoRunner","node","pendingArchivistPath","_pendingArchivist","broadcastTransaction","transaction","flattened","flattenHydratedTransaction","pendingArchivist","getPendingArchivist","txHash","PayloadBuilder","hash","payloadBundle","schema","PayloadBundleSchema","payloads","root","insert","getArchivist","identifier","archivist","resolve","assertEx","asArchivistInstance","RpcXyoSigner","transport","address","sendRequest","createSignedTransaction","chain","elevatedPayloads","additionalPayloads","nbf","exp","fees","from","ret","signTransaction","tx","JsonRpcXyoSigner","buildTransaction","signTransaction","MemoryXyoSigner","_account","account","address","createSignedTransaction","chain","elevatedPayloads","additionalPayloads","nbf","exp","fees","from","fromAddress","transaction","buildTransaction","signTransaction","tx","txBW","asAttoXL1","asHydratedBlock","JsonRpcXyoViewer","transport","accountBalance","address","asAttoXL1","sendRequest","accountBalanceHistory","blockByHash","hash","asHydratedBlock","blockByNumber","blockNumber","blocksByHash","limit","map","b","required","chainId","chainIdAtBlock","currentBlock","currentBlockHash","currentBlockNumber","forkHistory","networkStakeStepRewardAddressHistory","networkStakeStepRewardAddressReward","context","networkStakeStepRewardAddressShare","networkStakeStepRewardClaimedByAddress","networkStakeStepRewardForPosition","position","range","networkStakeStepRewardForStep","networkStakeStepRewardForStepForPosition","networkStakeStepRewardPoolRewards","networkStakeStepRewardPoolShares","networkStakeStepRewardPositionWeight","networkStakeStepRewardPotentialPositionLoss","networkStakeStepRewardRandomizer","networkStakeStepRewardStakerCount","networkStakeStepRewardUnclaimedByAddress","networkStakeStepRewardWeightForAddress","networkStakeStepRewardsForPosition","networkStakeStepRewardsForRange","networkStakeStepRewardsForStepLevel","stepLevel","stakeById","id","stakeByStaker","staker","slot","stakedByStaker","stakesByStaked","staked","stakesByStaker","transactionByBlockHashAndIndex","blockHash","transactionIndex","transactionByBlockNumberAndIndex","transactionByHash","transactionHash","transferBalance","transferBalanceHistory","transferPairBalance","pair","transferPairBalanceHistory","assertEx","PayloadBuilder","isAnyPayload","defaultTransactionFees","isDataLakeProvider","HydratedTransactionWrapper","XyoBaseConnection","_network","_runner","_signer","_storage","_viewer","params","network","runner","signer","storage","viewer","send","elevatedPayloads","additionalPayloads","chain","nbf","exp","from","fees","submitTransaction","assertEx","chainResolved","chainId","undefined","Error","nbfResolved","Math","max","currentBlockNumber","expResolved","feesResolved","defaultTransactionFees","fromResolved","address","signedTransaction","createSignedTransaction","hydratedTransaction","PayloadBuilder","addStorageMeta","isDataLakeProvider","wrapper","HydratedTransactionWrapper","parse","add","Object","values","externalPayloads","filter","isAnyPayload","broadcastTransaction","HttpRpcXyoConnection","XyoBaseConnection","params","account","endpoint","storage","storageParam","signer","isDefined","MemoryXyoSigner","undefined","transport","HttpRpcTransport","XyoRunnerRpcSchemas","XyoViewerRpcSchemas","runner","JsonRpcXyoRunner","viewer","JsonRpcXyoViewer","isDataLakeProvider","isString","HttpXyoDataLake","RpcXyoConnection","assertEx","PayloadBuilder","buildUnsignedTransaction","AbstractXyoGateway","addPayloadsToChain","onChain","offChain","connection","viewer","assertEx","signer","chainId","nbf","currentBlockNumber","tx","buildUnsignedTransaction","address","hash","addTransactionToChain","runner","signedTx","signTransaction","broadcastTransaction","PayloadBuilder","addStorageMeta","submitTransaction","elevatedPayloads","additionalPayloads","MemoryXyoGateway","AbstractXyoGateway","_connection","_signer","signer","connection","isUndefined","isNetworkStatus","axios","NetworkStatusSchema","unknownStatus","description","schema","state","errorStatus","MainNetworkStats","id","statusUrl","SequenceNetworkStats","LocalNetworkStats","StatusNetworks","MemoryXyoNetwork","_networkId","networkId","status","statusNetwork","StatusNetworks","isUndefined","Error","makeRequest","statusUrl","url","response","axios","get","isNetworkStatus","data","console","error","unknownStatus","errorStatus","assertEx","MemoryXyoPermissions","invoker","_store","store","assertEx","getPermissions","requestPermissions","permissions","Promise","resolve","newPermissions","now","Date","req","parentCapability","push","caveats","Object","entries","map","type","value","date","existingPermissions","perm","idx","findIndex","p","setPermissions","revokePermissions","revoked","removed","splice","RpcXyoPermissions","transport","getPermissions","sendRequest","requestPermissions","permissions","revokePermissions","_permissions","Promise","resolve","Error","assertEx","MemoryPermissionsStore","_invoker","permissions","invoker","assertEx","getPermissions","Promise","resolve","setPermissions"]}
|
|
1
|
+
{"version":3,"sources":["../../src/engine/requestSchemas.ts","../../src/engine/rpcMethodHandlersFromRunner.ts","../../src/engine/rpcMethodHandlersFromSigner.ts","../../src/engine/rpcMethodHandlersFromViewer.ts","../../src/engine/rpcMethodHandlersFromConnection.ts","../../src/engine/rpcMethodHandlersFromPermissions.ts","../../src/provider/client/MemoryXyoClient.ts","../../src/provider/connection/HttpRpcXyoConnection.ts","../../src/transport/HttpRpcTransport.ts","../../src/types/ErrorCodes.ts","../../src/types/JsonRpc.ts","../../src/types/schema/XyoPermissionsRpcSchemas.ts","../../src/types/schema/common/Address.ts","../../src/types/schema/common/BlockBoundWitness.ts","../../src/types/schema/common/BoundWitness.ts","../../src/types/schema/common/Payload.ts","../../src/types/schema/common/Sequence.ts","../../src/types/schema/common/Chain.ts","../../src/types/schema/common/HydratedBlock.ts","../../src/types/schema/common/HydratedTransaction.ts","../../src/types/schema/common/TransactionBoundWitness.ts","../../src/types/schema/common/TransactionFees.ts","../../src/types/schema/common/Json.ts","../../src/types/schema/common/Permission.ts","../../src/types/schema/common/Stake.ts","../../src/types/schema/common/StepIdentity.ts","../../src/types/schema/common/Transfer.ts","../../src/types/schema/common/TransferPair.ts","../../src/types/schema/XyoProviderRpcSchemas.ts","../../src/types/schema/XyoRunnerRpcSchemas.ts","../../src/types/schema/XyoSignerRpcSchemas.ts","../../src/types/schema/XyoViewerRpcSchemas.ts","../../src/types/schema/AllRpcSchemas.ts","../../src/types/schema/createRequestSchema.ts","../../src/types/schema/createResponseSchema.ts","../../src/transport/MemoryRpcTransport.ts","../../src/transport/post-message/SessionEnvelope.ts","../../src/provider/datalake/AbstractXyoDataLake.ts","../../src/provider/datalake/ArchivistXyoDataLake.ts","../../src/provider/datalake/HttpXyoDataLake.ts","../../src/provider/runner/JsonRpcXyoRunner.ts","../../src/provider/runner/MemoryXyoRunner.ts","../../src/provider/runner/NodeXyoRunner.ts","../../src/provider/signer/JsonRpcXyoSigner.ts","../../src/provider/signer/MemoryXyoSigner.ts","../../src/provider/viewer/JsonRpcXyoViewer.ts","../../src/provider/connection/XyoBaseConnection.ts","../../src/provider/gateway/Abstract.ts","../../src/provider/gateway/MemoryXyoGateway.ts","../../src/provider/network/MemoryXyoNetwork.ts","../../src/provider/network/lib/FailedNetworkStatusPayloads.ts","../../src/provider/network/lib/StatusNetworks.ts","../../src/provider/permissions/MemoryXyoPermissions.ts","../../src/provider/permissions/RpcXyoPermissions.ts","../../src/provider/permissions/store/MemoryPermissions.ts"],"sourcesContent":["import type { ZodObject, ZodRawShape } from 'zod'\n\nexport const requestSchemas: Record<string, ZodObject<ZodRawShape> | undefined> = {}\n","import type { XyoRunner } from '@xyo-network/xl1-protocol'\n\nimport type { XyoRunnerRpcMethodHandlers } from '../types/index.ts'\n\nexport const rpcMethodHandlersFromRunner = (runner: XyoRunner): XyoRunnerRpcMethodHandlers => {\n return { xyoRunner_broadcastTransaction: params => runner.broadcastTransaction(...(params ?? [])) }\n}\n","import type { XyoSigner } from '@xyo-network/xl1-protocol'\n\nimport type { XyoSignerRpcMethodHandlers } from '../types/index.ts'\n\nexport const rpcMethodHandlersFromSigner = (signer: XyoSigner): XyoSignerRpcMethodHandlers => {\n return {\n xyoSigner_address: params => signer.address(...(params ?? [])),\n xyoSigner_createSignedTransaction: params => signer.createSignedTransaction(...(params ?? [])),\n xyoSigner_signTransaction: params => signer.signTransaction(...(params ?? [])),\n }\n}\n","import type { XyoViewer } from '@xyo-network/xl1-protocol'\n\nimport type { XyoViewerRpcMethodHandlers } from '../types/index.ts'\n\nexport const rpcMethodHandlersFromViewer = (viewer: XyoViewer): XyoViewerRpcMethodHandlers => {\n return {\n xyoViewer_networkStakeStepRewardClaimedByAddress: params => viewer.networkStakeStepRewardClaimedByAddress(...(params ?? [])),\n xyoViewer_networkStakeStepRewardAddressReward: params => viewer.networkStakeStepRewardAddressReward(...(params ?? [])),\n xyoViewer_networkStakeStepRewardAddressHistory: params => viewer.networkStakeStepRewardAddressHistory(...(params ?? [])),\n xyoViewer_networkStakeStepRewardAddressShare: params => viewer.networkStakeStepRewardAddressShare(...(params ?? [])),\n xyoViewer_networkStakeStepRewardWeightForAddress: params => viewer.networkStakeStepRewardWeightForAddress?.(...(params ?? [])),\n xyoViewer_networkStakeStepRewardUnclaimedByAddress: params => viewer.networkStakeStepRewardUnclaimedByAddress(...(params ?? [])),\n xyoViewer_networkStakeStepRewardPoolShares: params => viewer.networkStakeStepRewardPoolShares(...(params ?? [])),\n xyoViewer_networkStakeStepRewardPoolRewards: params => viewer.networkStakeStepRewardPoolRewards(...(params ?? [])),\n xyoViewer_networkStakeStepRewardPositionWeight: params => viewer.networkStakeStepRewardPositionWeight?.(...(params ?? [])),\n xyoViewer_networkStakeStepRewardPotentialPositionLoss: params => viewer.networkStakeStepRewardPotentialPositionLoss?.(...(params ?? [])),\n xyoViewer_networkStakeStepRewardForStep: params => viewer.networkStakeStepRewardForStep?.(...(params ?? [])),\n xyoViewer_networkStakeStepRewardRandomizer: params => viewer.networkStakeStepRewardRandomizer?.(...(params ?? [])),\n xyoViewer_networkStakeStepRewardStakerCount: params => viewer.networkStakeStepRewardStakerCount?.(...(params ?? [])),\n xyoViewer_networkStakeStepRewardForStepForPosition: params => viewer.networkStakeStepRewardForStepForPosition?.(...(params ?? [])),\n xyoViewer_networkStakeStepRewardForPosition: params => viewer.networkStakeStepRewardForPosition?.(...(params ?? [])),\n xyoViewer_networkStakeStepRewardsForPosition: params => viewer.networkStakeStepRewardsForPosition?.(...(params ?? [])),\n xyoViewer_networkStakeStepRewardsForRange: params => viewer.networkStakeStepRewardsForRange?.(...(params ?? [])),\n xyoViewer_networkStakeStepRewardsForStepLevel: params => viewer.networkStakeStepRewardsForStepLevel?.(...(params ?? [])),\n xyoViewer_accountBalance: params => viewer.accountBalance(...(params ?? [])),\n xyoViewer_accountBalanceHistory: params => viewer.accountBalanceHistory(...(params ?? [])),\n xyoViewer_blockByHash: params => viewer.blockByHash(...(params ?? [])),\n xyoViewer_blockByNumber: params => viewer.blockByNumber(...(params ?? [])),\n xyoViewer_blocksByHash: params => viewer.blocksByHash(...(params ?? [])),\n xyoViewer_chainId: params => viewer.chainId(...(params ?? [])),\n xyoViewer_chainIdAtBlock: params => viewer.chainIdAtBlock(...(params ?? [])),\n xyoViewer_currentBlock: params => viewer.currentBlock(...(params ?? [])),\n xyoViewer_currentBlockHash: params => viewer.currentBlockHash(...(params ?? [])),\n xyoViewer_currentBlockNumber: params => viewer.currentBlockNumber(...(params ?? [])),\n xyoViewer_forkHistory: params => viewer.forkHistory(...(params ?? [])),\n xyoViewer_stakeById: params => viewer.stakeById(...(params ?? [])),\n xyoViewer_stakeByStaker: params => viewer.stakeByStaker(...(params ?? [])),\n xyoViewer_stakesByStaked: params => viewer.stakesByStaked(...(params ?? [])),\n xyoViewer_stakesByStaker: params => viewer.stakesByStaker(...(params ?? [])),\n xyoViewer_stakedByStaker: params => viewer.stakedByStaker(...(params ?? [])),\n xyoViewer_transactionByBlockHashAndIndex: params => viewer.transactionByBlockHashAndIndex(...(params ?? [])),\n xyoViewer_transactionByBlockNumberAndIndex: params => viewer.transactionByBlockNumberAndIndex(...(params ?? [])),\n xyoViewer_transactionByHash: params => viewer.transactionByHash(...(params ?? [])),\n xyoViewer_transferBalance: params => viewer.transferBalance(...(params ?? [])),\n xyoViewer_transferBalanceHistory: params => viewer.transferBalanceHistory(...(params ?? [])),\n xyoViewer_transferPairBalance: params => viewer.transferPairBalance(...(params ?? [])),\n xyoViewer_transferPairBalanceHistory: params => viewer.transferPairBalanceHistory(...(params ?? [])),\n }\n}\n","import type { XyoConnection } from '@xyo-network/xl1-protocol'\n\nimport type { XyoProviderRpcMethodHandlers } from '../types/index.ts'\nimport { rpcMethodHandlersFromRunner } from './rpcMethodHandlersFromRunner.ts'\nimport { rpcMethodHandlersFromSigner } from './rpcMethodHandlersFromSigner.ts'\nimport { rpcMethodHandlersFromViewer } from './rpcMethodHandlersFromViewer.ts'\n\nexport const rpcMethodHandlersFromConnection = (connection: XyoConnection): XyoProviderRpcMethodHandlers => {\n const {\n runner, signer, viewer,\n } = connection\n let result: XyoProviderRpcMethodHandlers = { xyoProvider_send: params => (connection as Required<XyoConnection>).send(...(params ?? [])) }\n if (runner) result = { ...result, ...rpcMethodHandlersFromRunner(runner) }\n if (signer) result = { ...result, ...rpcMethodHandlersFromSigner(signer) }\n if (viewer) result = { ...result, ...rpcMethodHandlersFromViewer(viewer) }\n return result\n}\n","import type { XyoPermissions } from '@xyo-network/xl1-protocol'\n\nimport type { XyoPermissionsRpcMethodHandlers } from '../types/index.ts'\n\nexport const rpcMethodHandlersFromPermissions = (permissions: XyoPermissions): XyoPermissionsRpcMethodHandlers => {\n return {\n xyoPermissions_getPermissions: params => permissions.getPermissions(...(params ?? [])),\n xyoPermissions_requestPermissions: params => permissions.requestPermissions(...(params ?? [])),\n xyoPermissions_revokePermissions: params => permissions.revokePermissions(...(params ?? [])),\n }\n}\n","import type {\n PermissionsProvider, XyoClient, XyoGatewayProvider,\n XyoPermissions,\n} from '@xyo-network/xl1-protocol'\n\nexport class MemoryXyoClient implements XyoClient {\n gateways: Readonly<Record<string, XyoGatewayProvider>>\n permissions: PermissionsProvider\n\n constructor(gateways: Readonly<Record<string, XyoGatewayProvider>>, permissions: XyoPermissions) {\n this.gateways = gateways\n this.permissions = permissions\n }\n}\n","import { isDefined, isString } from '@xylabs/typeof'\nimport type { AccountInstance } from '@xyo-network/account-model'\nimport type { XyoDataLake } from '@xyo-network/xl1-protocol'\nimport { isDataLakeProvider } from '@xyo-network/xl1-protocol'\n\nimport { HttpRpcTransport } from '../../transport/index.ts'\nimport { XyoRunnerRpcSchemas, XyoViewerRpcSchemas } from '../../types/index.ts'\nimport { HttpXyoDataLake } from '../datalake/index.ts'\nimport { JsonRpcXyoRunner } from '../runner/index.ts'\nimport { MemoryXyoSigner } from '../signer/index.ts'\nimport { JsonRpcXyoViewer } from '../viewer/index.ts'\nimport { XyoBaseConnection } from './XyoBaseConnection.ts'\n\nexport interface RpcXyoProviderParams {\n account?: AccountInstance\n endpoint: string\n storage?: string | XyoDataLake\n}\n\nexport class HttpRpcXyoConnection extends XyoBaseConnection {\n constructor(params: RpcXyoProviderParams) {\n const {\n account, endpoint, storage: storageParam,\n } = params\n const signer = isDefined(account) ? new MemoryXyoSigner(account) : undefined\n const transport = new HttpRpcTransport(endpoint, { ...XyoRunnerRpcSchemas, ...XyoViewerRpcSchemas })\n const runner = new JsonRpcXyoRunner(transport)\n const viewer = new JsonRpcXyoViewer(transport)\n const storage = isDataLakeProvider(storageParam) ? storageParam : isString(storageParam) ? new HttpXyoDataLake(storageParam) : undefined\n super({\n signer, runner, viewer, storage,\n })\n }\n}\n\n/**\n * @deprecated Use `HttpRpcXyoConnection` instead.\n */\nexport class RpcXyoConnection extends HttpRpcXyoConnection {}\n","import type {\n JsonRpcFailure, JsonRpcRequest, JsonRpcSuccess,\n} from '@metamask/utils'\nimport { AxiosJson } from '@xylabs/axios'\nimport { isError, isUndefinedOrNull } from '@xylabs/typeof'\nimport { isAxiosError } from 'axios'\nimport { v4 } from 'uuid'\nimport type * as z from 'zod'\n\nimport type { RpcSchemaMap } from '../types/index.ts'\nimport { jsonrpc } from '../types/index.ts'\nimport type { RpcTransport } from './RpcTransport.ts'\n\nexport class HttpRpcTransport<T extends RpcSchemaMap = RpcSchemaMap> implements RpcTransport<T> {\n protected readonly _rpcUrl: string\n protected readonly _schemas: T\n\n constructor(rpcUrl: string, schemas: T) {\n this._rpcUrl = rpcUrl\n this._schemas = schemas\n }\n\n async sendRequest<\n TMethod extends keyof T,\n >(\n method: TMethod,\n params?: z.input<T[TMethod]['params']['to']>,\n ): Promise<z.output<T[TMethod]['result']['from']>> {\n return await this.callRpc(this._rpcUrl, this._schemas, method, params)\n }\n\n private async callRpc<\n TSchemas extends RpcSchemaMap,\n TMethod extends keyof TSchemas,\n >(\n url: string,\n schemas: TSchemas,\n method: TMethod,\n params?: z.input<TSchemas[TMethod]['params']['to']>,\n ): Promise<z.output<TSchemas[TMethod]['result']['from']>> {\n try {\n const id = v4()\n const body: JsonRpcRequest = {\n jsonrpc,\n id,\n method: method as string,\n }\n\n if (params) {\n body.params = schemas[method].params.to.parse(params) as JsonRpcRequest\n }\n\n const res = await new AxiosJson().post(url, body)\n\n const json = res.data\n if (isUndefinedOrNull(json) || (json as Partial<JsonRpcFailure>).error) {\n throw new Error((json as JsonRpcFailure).error.message)\n }\n\n return schemas[method].result.from.parse((json as JsonRpcSuccess).result) as z.output<TSchemas[TMethod]['result']['from']>\n } catch (ex) {\n let message = isError(ex) ? ex.message : String(ex)\n if (isAxiosError(ex)) {\n message = `Http error occurred [${ex.status}|${ex.code ?? '<unknown>'}]: ${ex.message}`\n }\n throw new Error(`Error occurred while calling RPC method ${String(method)}: ${message}`)\n }\n }\n}\n","// NOTE: See https://www.npmjs.com/package/@metamask/rpc-errors for\n// better error codes & protocol specific error codes. Migrate to that\n// if fuller support is needed.\nexport const JsonRpcErrorCodes: Record<string, { code: number; message: string }> = {\n InternalError: { code: -32_603, message: 'Internal JSON-RPC error (unexpected exception).' },\n InvalidParams: { code: -32_602, message: 'Invalid method parameter(s).' },\n InvalidRequest: { code: -32_600, message: 'The JSON sent is not a valid Request object.' },\n MethodNotFound: { code: -32_601, message: 'The method does not exist or is not available.' },\n UserRejected: { code: 4001, message: 'User rejected the request.' },\n}\n","export const jsonrpc = '2.0' as const\n","import * as z from 'zod'\n\nimport type { XyoPermissionsRpcMethodName } from '../XyoPermissions.ts'\nimport {\n InvokerPermissionZod, PermissionRequestZod, RequestedPermissionZod,\n} from './common/index.ts'\nimport type { RpcSchemaMap } from './RpcSchemaMap.ts'\n\nexport const XyoPermissionsRpcSchemas = {\n xyoPermissions_getPermissions: {\n params: {\n to: z.array(z.any()).length(0),\n from: z.array(z.any()).length(0),\n },\n result: {\n to: z.array(InvokerPermissionZod),\n from: z.array(InvokerPermissionZod),\n },\n },\n xyoPermissions_requestPermissions: {\n params: {\n to: z.tuple([z.array(PermissionRequestZod)]),\n from: z.tuple([z.array(PermissionRequestZod)]),\n },\n result: {\n to: z.array(RequestedPermissionZod),\n from: z.array(RequestedPermissionZod),\n },\n },\n xyoPermissions_revokePermissions: {\n params: {\n to: z.tuple([z.array(PermissionRequestZod)]),\n from: z.tuple([z.array(PermissionRequestZod)]),\n },\n result: {\n to: z.array(RequestedPermissionZod),\n from: z.array(RequestedPermissionZod),\n },\n },\n} satisfies RpcSchemaMap<XyoPermissionsRpcMethodName>\n","import type { Address } from '@xylabs/hex'\nimport { AddressRegEx, toAddress } from '@xylabs/hex'\nimport * as z from 'zod'\n\nexport const AddressZod = z.string().toLowerCase().regex(AddressRegEx).transform<Address>(v => toAddress(v))\n","import { HexZod } from '@xylabs/hex'\nimport * as z from 'zod'\n\nimport {\n SignedBoundWitnessWithStorageMetaZod, SignedBoundWitnessZod, UnsignedBoundWitnessWithStorageMetaZod,\n UnsignedBoundWitnessZod,\n} from './BoundWitness.ts'\nimport { ChainZod } from './Chain.ts'\nimport { StorageMetaZod } from './Payload.ts'\n\nexport const BlockNumberZod = z.number().int().nonnegative()\n\nconst BlockBoundWitnessFieldsZod = z.object({\n block: BlockNumberZod,\n chain: ChainZod,\n previous: HexZod.nullable(),\n protocol: z.number().optional(),\n step_hashes: z.array(HexZod).optional(),\n})\n\nconst BlockBoundWitnessMetaZod = z.object({ $epoch: z.number() })\n\nexport const BlockBoundWitnessZod = UnsignedBoundWitnessZod\n// eslint-disable-next-line sonarjs/deprecation\n .merge(StorageMetaZod.partial())\n // eslint-disable-next-line sonarjs/deprecation\n .merge(BlockBoundWitnessFieldsZod)\n // eslint-disable-next-line sonarjs/deprecation\n .merge(BlockBoundWitnessMetaZod)\nexport const BlockBoundWitnessWithStorageMetaZod = UnsignedBoundWitnessWithStorageMetaZod\n // eslint-disable-next-line sonarjs/deprecation\n .merge(BlockBoundWitnessFieldsZod)\n // eslint-disable-next-line sonarjs/deprecation\n .merge(BlockBoundWitnessMetaZod)\n\nexport const SignedBlockBoundWitnessZod = SignedBoundWitnessZod\n // eslint-disable-next-line sonarjs/deprecation\n .merge(StorageMetaZod.partial())\n // eslint-disable-next-line sonarjs/deprecation\n .merge(BlockBoundWitnessFieldsZod)\n // eslint-disable-next-line sonarjs/deprecation\n .merge(BlockBoundWitnessMetaZod)\nexport const SignedBlockBoundWitnessWithStorageMetaZod = SignedBoundWitnessWithStorageMetaZod\n // eslint-disable-next-line sonarjs/deprecation\n .merge(StorageMetaZod.partial())\n // eslint-disable-next-line sonarjs/deprecation\n .merge(BlockBoundWitnessFieldsZod)\n // eslint-disable-next-line sonarjs/deprecation\n .merge(BlockBoundWitnessMetaZod)\n","import { HashZod, HexZod } from '@xylabs/hex'\nimport { BoundWitnessSchema } from '@xyo-network/boundwitness-model'\nimport * as z from 'zod'\n\nimport { AddressZod } from './Address.ts'\nimport { PayloadZod, SchemaZod } from './Payload.ts'\n\nconst BoundWitnessRequiredFieldsZod = z.object({\n addresses: z.array(AddressZod),\n payload_hashes: z.array(HashZod),\n payload_schemas: z.array(SchemaZod),\n previous_hashes: z.array(HashZod.nullable()),\n})\n\nconst BoundWitnessMetaZod = z.object({\n $destination: AddressZod.optional(),\n $sourceQuery: HashZod.optional(),\n $signatures: z.array(z.union([HexZod, z.null()])),\n})\n\nexport const BoundWitnessZod = PayloadZod\n .extend({ schema: z.literal(BoundWitnessSchema) })\n .extend(BoundWitnessRequiredFieldsZod.shape)\n .extend(BoundWitnessMetaZod.shape)\n .refine(data => data.$signatures.length === data.addresses.length, { message: '$signatures length must equal addresses length' })\n\nexport type BoundWitness = z.infer<typeof BoundWitnessZod>\n\nexport const AnyBoundWitnessZod = BoundWitnessZod\n .catchall(z.any())\n\nexport type AnyBoundWitness = z.infer<typeof AnyBoundWitnessZod>\n\nexport const UnsignedBoundWitnessZod = BoundWitnessZod.refine(data => data.$signatures.includes(null), { message: 'all $signatures must be null' })\n\nexport type UnsignedBoundWitness = z.infer<typeof UnsignedBoundWitnessZod>\n\nexport const AnyUnsignedBoundWitnessZod = UnsignedBoundWitnessZod\n .catchall(z.any())\n\nexport type AnyUnsignedBoundWitness = z.infer<typeof AnyUnsignedBoundWitnessZod>\n\nexport const UnsignedBoundWitnessWithStorageMetaZod = UnsignedBoundWitnessZod\n .safeExtend(BoundWitnessRequiredFieldsZod.shape)\n .safeExtend(BoundWitnessMetaZod.shape)\n\nexport const SignedBoundWitnessZod = BoundWitnessZod.refine(data => !data.$signatures.includes(null), { message: 'all $signatures must not be null' })\n\nexport const SignedBoundWitnessWithStorageMetaZod = UnsignedBoundWitnessWithStorageMetaZod\n\nexport const AnySignedBoundWitnessZod = UnsignedBoundWitnessZod.catchall(z.any())\n\nexport const AnySignedBoundWitnessWithStorageMetaZod = UnsignedBoundWitnessWithStorageMetaZod.catchall(z.any())\n","import { HashToJsonZod } from '@xylabs/hex'\nimport * as z from 'zod'\n\nimport { SequenceToStringZod } from './Sequence.ts'\n\nexport const StorageMetaZod = z.object({\n _hash: HashToJsonZod,\n _dataHash: HashToJsonZod,\n _sequence: SequenceToStringZod,\n})\n\nexport const SchemaZod = z.string()\nexport type Schema = z.infer<typeof SchemaZod>\n\nexport const PayloadZod = z.object({ schema: SchemaZod }).catchall(z.any())\nexport const PayloadWithStorageMetaZod = PayloadZod.extend(StorageMetaZod.shape)\n\nexport const AnyPayloadZod = PayloadZod.catchall(z.json())\nexport const AnyPayloadWithStorageMetaZod = AnyPayloadZod.extend(StorageMetaZod.shape)\n\nexport type PayloadZodType = z.infer<typeof PayloadZod>\nexport type PayloadWithStorageMetaZodType = z.infer<typeof PayloadWithStorageMetaZod>\n\nexport type AnyPayloadZodType = z.infer<typeof AnyPayloadZod>\nexport type AnyPayloadWithStorageMetaZodType = z.infer<typeof AnyPayloadWithStorageMetaZod>\n\nexport function WithStorageMetaZod<T extends typeof PayloadZod>(valueZod: T) {\n return StorageMetaZod.extend(valueZod.shape)\n}\n\nexport type WithStorageMetaZodType = z.infer<typeof WithStorageMetaZod>\n","import { HexRegExMinMax, toHex } from '@xylabs/hex'\nimport type {\n LocalSequence,\n QualifiedSequence,\n} from '@xyo-network/payload-model'\nimport { SequenceConstants } from '@xyo-network/payload-model'\nimport * as z from 'zod'\n\nconst LocalSequenceRegex = new RegExp(HexRegExMinMax(SequenceConstants.localSequenceBytes, SequenceConstants.localSequenceBytes))\nexport const LocalSequenceToStringZod = z.string().regex(LocalSequenceRegex)\nexport const LocalSequenceFromStringZod = z.string().regex(LocalSequenceRegex).transform<LocalSequence>(v => toHex(v) as LocalSequence)\n\nconst QualifiedSequenceRegex = new RegExp(HexRegExMinMax(SequenceConstants.qualifiedSequenceBytes, SequenceConstants.qualifiedSequenceBytes))\nexport const QualifiedSequenceToStringZod = z.string().regex(QualifiedSequenceRegex)\nexport const QualifiedSequenceFromStringZod = z.string().regex(QualifiedSequenceRegex).transform<QualifiedSequence>(v => toHex(v) as QualifiedSequence)\n\nexport const SequenceToStringZod = z.union([LocalSequenceToStringZod, QualifiedSequenceToStringZod])\nexport const SequenceFromStringZod = z.union([LocalSequenceFromStringZod, QualifiedSequenceFromStringZod])\n","import { AddressRegEx, toAddress } from '@xylabs/hex'\nimport type { ChainId } from '@xyo-network/xl1-protocol'\nimport * as z from 'zod'\n\nexport const ChainZod = z.string().toLowerCase().regex(AddressRegEx).transform<ChainId>(v => toAddress(v) as ChainId)\n","import * as z from 'zod'\n\nimport {\n BlockBoundWitnessWithStorageMetaZod, BlockBoundWitnessZod, SignedBlockBoundWitnessWithStorageMetaZod,\n SignedBlockBoundWitnessZod,\n} from './BlockBoundWitness.ts'\nimport { PayloadWithStorageMetaZod, PayloadZod } from './Payload.ts'\n\nexport const HydratedBlockZod = z.tuple([\n BlockBoundWitnessZod,\n z.array(PayloadZod),\n])\n\nexport const HydratedBlockWithStorageMetaZod = z.tuple([\n BlockBoundWitnessWithStorageMetaZod,\n z.array(PayloadWithStorageMetaZod),\n])\n\nexport const SignedHydratedBlockZod = z.tuple([\n SignedBlockBoundWitnessZod,\n z.array(PayloadZod),\n])\n\nexport const SignedHydratedBlockToJsonZod = z.tuple([\n SignedBlockBoundWitnessZod,\n z.array(PayloadZod),\n])\n\nexport const SignedHydratedBlockWithStorageMetaZod = z.tuple([\n SignedBlockBoundWitnessWithStorageMetaZod,\n z.array(PayloadWithStorageMetaZod),\n])\n","import type { JsonObject } from '@xylabs/object'\nimport { asAnyPayload } from '@xyo-network/payload-model'\nimport { asSignedHydratedTransaction } from '@xyo-network/xl1-protocol'\nimport * as z from 'zod'\n\nimport { PayloadZod } from './Payload.ts'\nimport { SignedTransactionBoundWitnessZod, TransactionBoundWitnessZod } from './TransactionBoundWitness.ts'\n\nexport const HydratedTransactionZod = z.tuple([\n TransactionBoundWitnessZod,\n z.array(PayloadZod),\n])\n\nexport const UnsignedHydratedTransactionZod = z.tuple([\n TransactionBoundWitnessZod,\n z.array(PayloadZod),\n])\n\nexport const SignedHydratedTransactionZod = z.tuple([\n SignedTransactionBoundWitnessZod,\n z.array(PayloadZod),\n])\n\nexport const SignedHydratedTransactionToJsonZod = SignedHydratedTransactionZod.transform(([\n tx,\n payloads,\n]) => asSignedHydratedTransaction([\n tx as JsonObject,\n payloads.map(payload => payload as JsonObject),\n]))\n\nexport const JsonToSignedHydratedTransactionZod = SignedHydratedTransactionZod.transform(([\n tx,\n payloads,\n]) => ([\n asSignedHydratedTransaction(tx),\n payloads.map(p => asAnyPayload(p)),\n]))\n","import * as z from 'zod'\n\nimport { BlockNumberZod } from './BlockBoundWitness.ts'\nimport { SignedBoundWitnessZod, UnsignedBoundWitnessZod } from './BoundWitness.ts'\nimport { ChainZod } from './Chain.ts'\nimport { StorageMetaZod } from './Payload.ts'\nimport { TransactionFeesHexZod } from './TransactionFees.ts'\n\nexport const BlockStartZod = z.object({ nbf: BlockNumberZod })\nexport const BlockEndZod = z.object({ exp: BlockNumberZod })\nexport const BlockDurationZod = z.object({ nbf: BlockNumberZod, exp: BlockNumberZod })\nexport const BlockScriptsZod = z.object({ script: z.array(z.string()).optional() })\n\nexport const WithTransactionFeesZod = z.object({ fees: TransactionFeesHexZod })\n\nconst TransactionBoundWitnessFields = z.object({ chain: ChainZod, from: ChainZod })\n\n// Note: It seems like zod marked all of merge as deprecated even though just multiple merges should have been deprecated\n\nexport const TransactionBoundWitnessZod = UnsignedBoundWitnessZod\n // eslint-disable-next-line sonarjs/deprecation\n .merge(StorageMetaZod.partial())\n // eslint-disable-next-line sonarjs/deprecation\n .merge(BlockDurationZod)\n // eslint-disable-next-line sonarjs/deprecation\n .merge(WithTransactionFeesZod)\n // eslint-disable-next-line sonarjs/deprecation\n .merge(TransactionBoundWitnessFields)\n // eslint-disable-next-line sonarjs/deprecation\n .merge(BlockScriptsZod)\n\nexport const SignedTransactionBoundWitnessZod = SignedBoundWitnessZod\n // eslint-disable-next-line sonarjs/deprecation\n .merge(StorageMetaZod.partial())\n // eslint-disable-next-line sonarjs/deprecation\n .merge(BlockDurationZod)\n // eslint-disable-next-line sonarjs/deprecation\n .merge(WithTransactionFeesZod)\n // eslint-disable-next-line sonarjs/deprecation\n .merge(TransactionBoundWitnessFields)\n // eslint-disable-next-line sonarjs/deprecation\n .merge(BlockScriptsZod.partial())\n","import {\n BigIntToJsonZod, HexZod, JsonToBigIntZod,\n} from '@xylabs/hex'\nimport { asAttoXL1 } from '@xyo-network/xl1-protocol'\nimport * as z from 'zod'\n\nexport const AttoZod = z.bigint()\nexport const JsonToAttoZod = JsonToBigIntZod.transform(v => asAttoXL1(v))\n// eslint-disable-next-line unicorn/prefer-export-from\nexport const AttoToJsonZod = BigIntToJsonZod\n\nexport const TransactionFeesHexZod = z.object({\n base: HexZod,\n gasLimit: HexZod,\n gasPrice: HexZod,\n priority: HexZod,\n})\n\nexport type TransactionFeesHexZodType = z.infer<typeof TransactionFeesHexZod>\n\nexport const TransactionFeesBigIntZod = z.object({\n base: AttoZod,\n gasLimit: AttoZod,\n gasPrice: AttoZod,\n priority: AttoZod,\n})\n\nexport type TransactionFeesBigIntZodType = z.infer<typeof TransactionFeesBigIntZod>\n\nexport const TransactionFeesJsonToBigIntZod = TransactionFeesHexZod.transform(val => ({\n base: JsonToBigIntZod.parse(val.base),\n gasLimit: JsonToBigIntZod.parse(val.gasLimit),\n gasPrice: JsonToBigIntZod.parse(val.gasPrice),\n priority: JsonToBigIntZod.parse(val.priority),\n}))\n\nexport const TransactionFeesBigIntToJsonZod = TransactionFeesBigIntZod.transform(val => ({\n base: BigIntToJsonZod.parse(val.base),\n gasLimit: BigIntToJsonZod.parse(val.gasLimit),\n gasPrice: BigIntToJsonZod.parse(val.gasPrice),\n priority: BigIntToJsonZod.parse(val.priority),\n}))\n\nexport type TransactionFeesJsonToBigIntZodType = z.infer<typeof TransactionFeesJsonToBigIntZod>\nexport type TransactionFeesBigIntToJsonZodType = z.infer<typeof TransactionFeesBigIntToJsonZod>\n","import * as z from 'zod'\n\n// Define recursive JSON value schema\nconst JsonValueZod: z.ZodType<unknown> = z.lazy(() =>\n z.union([\n z.string(),\n z.number(),\n z.boolean(),\n z.null(),\n z.array(JsonValueZod),\n z.record(z.string(), JsonValueZod), // object with string keys and JSON values\n ]))\n\n// JSON object schema — top-level must be an object\nexport const JsonObjectZod = z.record(z.string(), JsonValueZod)\n\n// TypeScript type for reference\nexport type JsonValue = z.infer<typeof JsonValueZod>\nexport type JsonObject = z.infer<typeof JsonObjectZod>\n","import { z } from 'zod'\n\nexport const CaveatTypesZod = z.enum(['chain', 'expiration', 'filteredResponse', 'rateLimit', 'restrictReturnedAccounts'])\n\nexport const CaveatsZod = z.object({\n type: CaveatTypesZod,\n value: z.json(),\n})\n\nexport const PermissionZod = z.object({\n parentCapability: z.string(),\n caveats: CaveatsZod.array().optional(),\n invoker: z.string(),\n})\n\nexport const InvokerPermissionZod = PermissionZod.extend({ date: z.number().optional() })\n\nexport const PermissionRequestZod = z.record(z.string(), z.record(z.string(), z.any()))\n\nexport const RequestedPermissionZod = z.object({\n parentCapability: z.string(),\n date: z.number().optional(),\n})\n","import { HexZod } from '@xylabs/hex'\nimport * as z from 'zod'\n\nimport { AddressZod } from './Address.ts'\nimport {\n AttoToJsonZod, AttoZod, JsonToAttoZod,\n} from './TransactionFees.ts'\n\nexport const StakeZod = z.object({\n amount: AttoZod,\n // the block number when the stake was added\n addBlock: z.number(),\n // the unique id for the stake item\n id: z.number(),\n // the block number when the stake was removed (set to 0 if not removed)\n removeBlock: z.number(),\n // the address that is being staked\n staked: AddressZod,\n // the address that owns the stake\n staker: AddressZod,\n // the block number when the stake was withdrawn (set to 0 if not withdrawn)\n withdrawBlock: z.number(),\n})\n\nexport const StakeToJsonZod = StakeZod.transform(val => ({\n addBlock: val.addBlock,\n amount: AttoToJsonZod.parse(val.amount),\n id: val.id,\n removeBlock: val.removeBlock,\n staked: AddressZod.parse(val.staked),\n staker: AddressZod.parse(val.staker),\n withdrawBlock: val.withdrawBlock,\n}))\n\nexport const JsonToStakeZod = StakeZod.extend({ amount: HexZod }).transform(val => ({\n addBlock: val.addBlock,\n amount: JsonToAttoZod.parse(val.amount),\n id: val.id,\n removeBlock: val.removeBlock,\n staked: val.staked,\n staker: val.staker,\n withdrawBlock: val.withdrawBlock,\n}))\n","import * as z from 'zod'\n\nexport const StepIdentityZod = z.object({\n block: z.number(),\n step: z.number(),\n})\n","import { BigIntToJsonZod } from '@xylabs/hex'\nimport { PayloadZodStrictOfSchema } from '@xyo-network/payload-model'\nimport { TransferSchema } from '@xyo-network/xl1-protocol'\nimport z from 'zod'\n\nimport { AddressZod } from './Address.ts'\n\nexport const TransferFieldsZod = z.object({\n epoch: z.number(),\n from: AddressZod,\n transfers: z.record(AddressZod, BigIntToJsonZod),\n})\n\nexport const TransferZod = PayloadZodStrictOfSchema(TransferSchema).extend(TransferFieldsZod.shape)\n","import z from 'zod'\n\nimport { AddressZod } from './Address.ts'\n\nexport const TransferPairZod = z.tuple([\n AddressZod, AddressZod,\n])\n","import * as z from 'zod'\n\nimport type { XyoProviderRpcMethodName } from '../XyoProviderRpc.ts'\nimport {\n AddressZod, PayloadZod, SignedTransactionBoundWitnessZod, TransactionFeesBigIntToJsonZod,\n TransactionFeesJsonToBigIntZod,\n} from './common/index.ts'\nimport type { RpcSchemaMap } from './RpcSchemaMap.ts'\n\nexport const XyoProviderRpcSchemas = {\n xyoProvider_send: {\n params: {\n to: z.tuple([\n AddressZod,\n z.array(PayloadZod),\n z.array(PayloadZod),\n z.number().nonnegative(),\n z.number().nonnegative(),\n TransactionFeesBigIntToJsonZod,\n AddressZod.optional(),\n ]),\n from: z.tuple([\n AddressZod,\n z.array(PayloadZod),\n z.array(PayloadZod),\n z.number().nonnegative(),\n z.number().nonnegative(),\n TransactionFeesJsonToBigIntZod,\n AddressZod.optional(),\n ]),\n },\n result: {\n to: SignedTransactionBoundWitnessZod,\n from: SignedTransactionBoundWitnessZod,\n },\n },\n} satisfies RpcSchemaMap<XyoProviderRpcMethodName>\n","import { HashToJsonZod, JsonToHashZod } from '@xylabs/hex'\nimport * as z from 'zod'\n\nimport type { XyoRunnerRpcMethodName } from '../XyoRunnerRpc.ts'\nimport { SignedHydratedTransactionZod } from './common/index.ts'\nimport type { RpcSchemaMap } from './RpcSchemaMap.ts'\n\nexport const XyoRunnerRpcSchemas = {\n xyoRunner_broadcastTransaction: {\n params: {\n to: z.tuple([SignedHydratedTransactionZod]),\n from: z.tuple([SignedHydratedTransactionZod]),\n },\n result: {\n to: HashToJsonZod,\n from: JsonToHashZod,\n },\n },\n} satisfies RpcSchemaMap<XyoRunnerRpcMethodName>\n","import type { Signed } from '@xyo-network/boundwitness-model'\nimport type { TransactionBoundWitness } from '@xyo-network/xl1-protocol'\nimport { AllowedBlockPayloadZod, asHydratedTransactionWithStorageMeta } from '@xyo-network/xl1-protocol'\nimport { z } from 'zod'\n\nimport type { XyoSignerRpcMethodName } from '../XyoSignerRpc.ts'\nimport {\n AddressZod,\n ChainZod,\n PayloadZod, SignedHydratedTransactionZod, SignedTransactionBoundWitnessZod,\n TransactionFeesBigIntToJsonZod,\n TransactionFeesJsonToBigIntZod,\n UnsignedHydratedTransactionZod,\n} from './common/index.ts'\nimport type { RpcSchemaMap } from './RpcSchemaMap.ts'\n\nexport const XyoSignerRpcSchemas = {\n xyoSigner_address: {\n params: {\n to: z.array(z.any()).length(0).optional(),\n from: z.array(z.any()).length(0).optional(),\n },\n result: {\n to: AddressZod,\n from: AddressZod,\n },\n },\n // NOTE: method is deprecated which is why it uses deprecated types\n xyoSigner_createSignedTransaction: {\n params: {\n to: z.tuple([\n ChainZod,\n z.array(AllowedBlockPayloadZod),\n z.array(PayloadZod),\n z.number().nonnegative(),\n z.number().nonnegative(),\n TransactionFeesBigIntToJsonZod,\n AddressZod.optional(),\n ]),\n from: z.tuple([\n ChainZod,\n z.array(PayloadZod),\n z.array(PayloadZod),\n z.number().nonnegative(),\n z.number().nonnegative(),\n TransactionFeesJsonToBigIntZod,\n AddressZod.optional(),\n ]),\n },\n result: {\n to: SignedTransactionBoundWitnessZod,\n from: SignedTransactionBoundWitnessZod.transform(data => data as Signed<TransactionBoundWitness>),\n },\n },\n xyoSigner_signTransaction: {\n params: {\n to: z.tuple([UnsignedHydratedTransactionZod]),\n from: z.tuple([UnsignedHydratedTransactionZod]),\n },\n result: {\n to: SignedHydratedTransactionZod,\n from: SignedHydratedTransactionZod.transform(data => asHydratedTransactionWithStorageMeta(data, { required: true })),\n },\n },\n} as const satisfies RpcSchemaMap<XyoSignerRpcMethodName>\n","/* eslint-disable max-lines */\nimport {\n BigIntToJsonZod, HashToJsonZod, HashZod, JsonToBigIntZod,\n JsonToHashZod,\n} from '@xylabs/hex'\nimport * as z from 'zod'\n\nimport type { XyoViewerRpcMethodName } from '../XyoViewerRpc.ts'\nimport {\n AddressZod,\n BlockNumberZod,\n JsonToStakeZod,\n PayloadZod,\n SignedHydratedBlockZod,\n SignedHydratedTransactionZod,\n StakeToJsonZod,\n StepIdentityZod,\n TransferPairZod,\n TransferZod,\n} from './common/index.ts'\nimport type { RpcSchemaMap } from './RpcSchemaMap.ts'\n\nexport const XyoViewerRpcSchemas = {\n xyoViewer_networkStakeStepRewardClaimedByAddress: {\n params: {\n to: z.union([\n z.tuple([AddressZod]),\n ]),\n from: z.union([\n z.tuple([AddressZod]),\n ]),\n },\n result: {\n to: BigIntToJsonZod,\n from: JsonToBigIntZod,\n },\n },\n xyoViewer_networkStakeStepRewardAddressReward: {\n params: {\n to: z.union([\n z.tuple([StepIdentityZod, AddressZod]),\n ]),\n from: z.union([\n z.tuple([StepIdentityZod, AddressZod]),\n ]),\n },\n result: {\n to: z.record(AddressZod, BigIntToJsonZod),\n from: z.record(AddressZod, JsonToBigIntZod),\n },\n },\n xyoViewer_networkStakeStepRewardAddressHistory: {\n params: {\n to: z.union([\n z.tuple([AddressZod]),\n ]),\n from: z.union([\n z.tuple([AddressZod]),\n ]),\n },\n result: {\n to: z.record(AddressZod, BigIntToJsonZod),\n from: z.record(AddressZod, JsonToBigIntZod),\n },\n },\n xyoViewer_networkStakeStepRewardAddressShare: {\n params: {\n to: z.union([\n z.tuple([StepIdentityZod, AddressZod]),\n ]),\n from: z.union([\n z.tuple([StepIdentityZod, AddressZod]),\n ]),\n },\n result: {\n to: z.tuple([BigIntToJsonZod, BigIntToJsonZod]),\n from: z.tuple([JsonToBigIntZod, JsonToBigIntZod]),\n },\n },\n xyoViewer_networkStakeStepRewardWeightForAddress: {\n params: {\n to: z.union([\n z.tuple([StepIdentityZod, AddressZod]),\n ]),\n from: z.union([\n z.tuple([StepIdentityZod, AddressZod]),\n ]),\n },\n result: {\n to: BigIntToJsonZod,\n from: JsonToBigIntZod,\n },\n },\n xyoViewer_networkStakeStepRewardUnclaimedByAddress: {\n params: {\n to: z.union([\n z.tuple([AddressZod]),\n ]),\n from: z.union([\n z.tuple([AddressZod]),\n ]),\n },\n result: {\n to: BigIntToJsonZod,\n from: JsonToBigIntZod,\n },\n },\n xyoViewer_networkStakeStepRewardPoolRewards: {\n params: {\n to: z.union([\n z.tuple([StepIdentityZod]),\n ]),\n from: z.union([\n z.tuple([StepIdentityZod]),\n ]),\n },\n result: {\n to: z.record(AddressZod, BigIntToJsonZod),\n from: z.record(AddressZod, JsonToBigIntZod),\n },\n },\n xyoViewer_networkStakeStepRewardPositionWeight: {\n params: {\n to: z.union([\n z.tuple([StepIdentityZod, z.number()]),\n ]),\n from: z.union([\n z.tuple([StepIdentityZod, z.number()]),\n ]),\n },\n result: {\n to: BigIntToJsonZod,\n from: JsonToBigIntZod,\n },\n },\n xyoViewer_networkStakeStepRewardPotentialPositionLoss: {\n params: {\n to: z.union([\n z.tuple([StepIdentityZod, z.number()]),\n ]),\n from: z.union([\n z.tuple([StepIdentityZod, z.number()]),\n ]),\n },\n result: {\n to: BigIntToJsonZod,\n from: JsonToBigIntZod,\n },\n },\n xyoViewer_networkStakeStepRewardForStep: {\n params: {\n to: z.union([\n z.tuple([StepIdentityZod]),\n ]),\n from: z.union([\n z.tuple([StepIdentityZod]),\n ]),\n },\n result: {\n to: BigIntToJsonZod,\n from: JsonToBigIntZod,\n },\n },\n xyoViewer_networkStakeStepRewardRandomizer: {\n params: {\n to: z.union([\n z.tuple([StepIdentityZod]),\n ]),\n from: z.union([\n z.tuple([StepIdentityZod]),\n ]),\n },\n result: {\n to: BigIntToJsonZod,\n from: JsonToBigIntZod,\n },\n },\n xyoViewer_networkStakeStepRewardStakerCount: {\n params: {\n to: z.union([\n z.tuple([StepIdentityZod]),\n ]),\n from: z.union([\n z.tuple([StepIdentityZod]),\n ]),\n },\n result: {\n to: z.number(),\n from: z.number(),\n },\n },\n xyoViewer_networkStakeStepRewardPoolShares: {\n params: {\n to: z.union([\n z.tuple([StepIdentityZod]),\n ]),\n from: z.union([\n z.tuple([StepIdentityZod]),\n ]),\n },\n result: {\n to: z.record(AddressZod, BigIntToJsonZod),\n from: z.record(AddressZod, JsonToBigIntZod),\n },\n },\n xyoViewer_networkStakeStepRewardForStepForPosition: {\n params: {\n to: z.union([\n z.tuple([StepIdentityZod, z.number()]),\n ]),\n from: z.union([\n z.tuple([StepIdentityZod, z.number()]),\n ]),\n },\n result: {\n to: z.tuple([BigIntToJsonZod, BigIntToJsonZod]),\n from: z.tuple([JsonToBigIntZod, JsonToBigIntZod]),\n },\n },\n xyoViewer_networkStakeStepRewardForPosition: {\n params: {\n to: z.union([\n z.tuple([z.number(), z.tuple([z.number(), z.number()])]),\n ]),\n from: z.union([\n z.tuple([z.number(), z.tuple([z.number(), z.number()])]),\n ]),\n },\n result: {\n to: z.tuple([BigIntToJsonZod, BigIntToJsonZod]),\n from: z.tuple([JsonToBigIntZod, JsonToBigIntZod]),\n },\n },\n xyoViewer_networkStakeStepRewardsForRange: {\n params: {\n to: z.union([\n z.tuple([z.tuple([z.number(), z.number()])]),\n ]),\n from: z.union([\n z.tuple([z.tuple([z.number(), z.number()])]),\n ]),\n },\n result: {\n to: BigIntToJsonZod,\n from: JsonToBigIntZod,\n },\n },\n xyoViewer_networkStakeStepRewardsForStepLevel: {\n params: {\n to: z.union([\n z.tuple([z.number(), z.tuple([z.number(), z.number()])]),\n ]),\n from: z.union([\n z.tuple([z.number(), z.tuple([z.number(), z.number()])]),\n ]),\n },\n result: {\n to: BigIntToJsonZod,\n from: JsonToBigIntZod,\n },\n },\n xyoViewer_networkStakeStepRewardsForPosition: {\n params: {\n to: z.union([\n z.tuple([z.number(), z.tuple([z.number(), z.number()])]),\n ]),\n from: z.union([\n z.tuple([z.number(), z.tuple([z.number(), z.number()])]),\n ]),\n },\n result: {\n to: z.record(z.string(), z.tuple([BigIntToJsonZod, BigIntToJsonZod])),\n from: z.record(z.string(), z.tuple([JsonToBigIntZod, JsonToBigIntZod])),\n },\n },\n xyoViewer_accountBalance: {\n params: {\n to: z.union([\n z.tuple([AddressZod]),\n ]),\n from: z.union([\n z.tuple([AddressZod]),\n ]),\n },\n result: {\n to: BigIntToJsonZod,\n from: JsonToBigIntZod,\n },\n },\n xyoViewer_accountBalanceHistory: {\n params: {\n to: z.union([\n z.tuple([AddressZod]),\n ]),\n from: z.union([\n z.tuple([AddressZod]),\n ]),\n },\n result: {\n to: z.array(z.tuple([HashZod, HashZod, TransferZod])),\n from: z.array(z.tuple([HashZod, HashZod, TransferZod])),\n },\n },\n xyoViewer_transferPairBalance: {\n params: {\n to: z.union([\n z.tuple([TransferPairZod]),\n ]),\n from: z.union([\n z.tuple([TransferPairZod]),\n ]),\n },\n result: {\n to: BigIntToJsonZod,\n from: JsonToBigIntZod,\n },\n },\n xyoViewer_transferPairBalanceHistory: {\n params: {\n to: z.union([\n z.tuple([TransferPairZod]),\n ]),\n from: z.union([\n z.tuple([TransferPairZod]),\n ]),\n },\n result: {\n to: z.array(z.tuple([HashZod, HashZod, PayloadZod])),\n from: z.array(z.tuple([HashZod, HashZod, PayloadZod])),\n },\n },\n xyoViewer_transferBalance: {\n params: {\n to: z.union([\n z.tuple([AddressZod]),\n ]),\n from: z.union([\n z.tuple([AddressZod]),\n ]),\n },\n result: {\n to: BigIntToJsonZod,\n from: JsonToBigIntZod,\n },\n },\n xyoViewer_transferBalanceHistory: {\n params: {\n to: z.union([\n z.tuple([AddressZod]),\n ]),\n from: z.union([\n z.tuple([AddressZod]),\n ]),\n },\n result: {\n to: z.array(z.tuple([HashZod, HashZod, PayloadZod])),\n from: z.array(z.tuple([HashZod, HashZod, PayloadZod])),\n },\n },\n xyoViewer_blockByHash: {\n params: {\n to: z.tuple([HashToJsonZod]),\n from: z.tuple([JsonToHashZod]),\n },\n result: {\n to: SignedHydratedBlockZod,\n from: SignedHydratedBlockZod,\n },\n },\n xyoViewer_blockByNumber: {\n params: {\n to: z.tuple([z.number()]),\n from: z.tuple([z.number()]),\n },\n result: {\n to: SignedHydratedBlockZod,\n from: SignedHydratedBlockZod,\n },\n },\n xyoViewer_blocksByHash: {\n params: {\n to: z.tuple([HashZod, z.number().optional()]),\n from: z.tuple([HashZod, z.number().optional()]),\n },\n result: {\n to: z.array(SignedHydratedBlockZod),\n from: z.array(SignedHydratedBlockZod),\n },\n },\n xyoViewer_chainId: {\n params: {\n to: z.array(z.any()).length(0).optional(),\n from: z.array(z.any()).length(0).optional(),\n },\n result: {\n to: AddressZod,\n from: AddressZod,\n },\n },\n xyoViewer_chainIdAtBlock: {\n params: {\n to: z.tuple([BlockNumberZod]),\n from: z.tuple([BlockNumberZod]),\n },\n result: {\n to: AddressZod,\n from: AddressZod,\n },\n },\n xyoViewer_currentBlock: {\n params: {\n to: z.array(z.any()).length(0).optional(),\n from: z.array(z.any()).length(0).optional(),\n },\n result: {\n to: SignedHydratedBlockZod,\n from: SignedHydratedBlockZod,\n },\n },\n xyoViewer_currentBlockHash: {\n params: {\n to: z.array(z.any()).length(0).optional(),\n from: z.array(z.any()).length(0).optional(),\n },\n result: {\n to: HashZod,\n from: HashZod,\n },\n },\n xyoViewer_currentBlockNumber: {\n params: {\n to: z.array(z.any()).length(0).optional(),\n from: z.array(z.any()).length(0).optional(),\n },\n result: {\n to: BlockNumberZod,\n from: BlockNumberZod,\n },\n },\n xyoViewer_forkHistory: {\n params: {\n to: z.array(z.any()).length(0).optional(),\n from: z.array(z.any()).length(0).optional(),\n },\n result: {\n to: z.record(z.number(), AddressZod),\n from: z.record(z.number(), AddressZod),\n },\n },\n xyoViewer_stakeByStaker: {\n params: {\n to: z.tuple([AddressZod, z.number()]),\n from: z.tuple([AddressZod, z.number()]),\n },\n result: {\n to: StakeToJsonZod,\n from: JsonToStakeZod,\n },\n },\n xyoViewer_stakeById: {\n params: {\n to: z.tuple([z.number()]),\n from: z.tuple([z.number()]),\n },\n result: {\n to: StakeToJsonZod,\n from: JsonToStakeZod,\n },\n },\n xyoViewer_stakedByStaker: {\n params: {\n to: z.tuple([AddressZod]),\n from: z.tuple([AddressZod]),\n },\n result: {\n to: z.array(AddressZod),\n from: z.array(AddressZod),\n },\n },\n xyoViewer_stakesByStaker: {\n params: {\n to: z.tuple([AddressZod]),\n from: z.tuple([AddressZod]),\n },\n result: {\n to: z.array(StakeToJsonZod),\n from: z.array(JsonToStakeZod),\n },\n },\n xyoViewer_stakesByStaked: {\n params: {\n to: z.tuple([AddressZod]),\n from: z.tuple([AddressZod]),\n },\n result: {\n to: z.array(StakeToJsonZod),\n from: z.array(JsonToStakeZod),\n },\n },\n xyoViewer_transactionByBlockHashAndIndex: {\n params: {\n to: z.tuple([HashZod, z.number()]),\n from: z.tuple([HashZod, z.number()]),\n },\n result: {\n to: SignedHydratedTransactionZod.nullable(),\n from: SignedHydratedTransactionZod.nullable(),\n },\n },\n xyoViewer_transactionByBlockNumberAndIndex: {\n params: {\n to: z.tuple([z.number(), z.number()]),\n from: z.tuple([z.number(), z.number()]),\n },\n result: {\n to: SignedHydratedTransactionZod.nullable(),\n from: SignedHydratedTransactionZod.nullable(),\n },\n },\n xyoViewer_transactionByHash: {\n params: {\n to: z.tuple([HashZod]),\n from: z.tuple([HashZod]),\n },\n result: {\n to: SignedHydratedTransactionZod.nullable(),\n from: SignedHydratedTransactionZod.nullable(),\n },\n },\n} satisfies RpcSchemaMap<XyoViewerRpcMethodName>\n","import type { RpcSchemaMap } from './RpcSchemaMap.ts'\nimport { XyoPermissionsRpcSchemas } from './XyoPermissionsRpcSchemas.ts'\nimport { XyoProviderRpcSchemas } from './XyoProviderRpcSchemas.ts'\nimport { XyoRunnerRpcSchemas } from './XyoRunnerRpcSchemas.ts'\nimport { XyoSignerRpcSchemas } from './XyoSignerRpcSchemas.ts'\nimport { XyoViewerRpcSchemas } from './XyoViewerRpcSchemas.ts'\n\nexport const AllRpcSchemas = {\n ...XyoProviderRpcSchemas,\n ...XyoRunnerRpcSchemas,\n ...XyoSignerRpcSchemas,\n ...XyoViewerRpcSchemas,\n ...XyoPermissionsRpcSchemas,\n} satisfies RpcSchemaMap\n","import type { ZodUndefined } from 'zod'\nimport * as z from 'zod'\n\nimport { jsonrpc } from '../JsonRpc.ts'\n\nexport const createRequestSchema = <TParams extends z.ZodTypeAny, TMethodName extends string = string>(\n methodName: TMethodName,\n paramsSchema: TParams | ZodUndefined = z.undefined(),\n) =>\n z.object({\n id: z.union([z.string(), z.number()]),\n jsonrpc: z.literal(jsonrpc),\n method: z.literal(methodName),\n params: paramsSchema,\n })\n","import type { ZodUndefined } from 'zod'\nimport * as z from 'zod'\n\nimport { jsonrpc } from '../JsonRpc.ts'\n\nexport const createResponseSchema = <TParams extends z.ZodTypeAny>(\n resultSchema: TParams | ZodUndefined = z.undefined(),\n) =>\n z.object({\n id: z.union([z.string(), z.number()]),\n jsonrpc: z.literal(jsonrpc),\n result: resultSchema,\n })\n","import type { JsonRpcEngine } from '@metamask/json-rpc-engine'\nimport type { JsonRpcParams, JsonRpcRequest } from '@metamask/utils'\nimport { assertEx } from '@xylabs/assert'\nimport { isObject, isString } from '@xylabs/typeof'\nimport { v4 } from 'uuid'\nimport type { ZodRawShape } from 'zod'\nimport type * as z from 'zod'\n\nimport type { RpcSchemaMap } from '../types/index.ts'\nimport {\n createRequestSchema, createResponseSchema, jsonrpc,\n} from '../types/index.ts'\nimport type { RpcTransport } from './RpcTransport.ts'\n\nexport class MemoryRpcTransport<T extends RpcSchemaMap> implements RpcTransport<T> {\n protected readonly _rpcEngine: JsonRpcEngine\n protected readonly _schemas: T\n protected readonly requestSchemas = {} as Record<keyof T, z.ZodObject<ZodRawShape>>\n protected readonly responseSchemas = {} as Record<keyof T, z.ZodObject<ZodRawShape>>\n\n constructor(rpcEngine: JsonRpcEngine, schemas: T) {\n this._rpcEngine = rpcEngine\n this._schemas = schemas\n }\n\n async sendRequest<\n TMethod extends keyof T,\n >(\n method: TMethod,\n params?: z.input<T[TMethod]['params']['to']>,\n ): Promise<z.output<T[TMethod]['result']['from']>> {\n // Get schema for method\n // Get handler for method\n const schema = this._schemas[method]\n let requestSchema = this.requestSchemas[method]\n if (!isObject(requestSchema)) {\n const stringMethod = assertEx(isString(method) ? method : null, () => 'Method must be a string')\n requestSchema = createRequestSchema(stringMethod, schema.params.to)\n this.requestSchemas[method] = requestSchema\n }\n const req = {\n jsonrpc, id: v4(), method: method as string, params: params as JsonRpcParams,\n } satisfies JsonRpcRequest\n const request = requestSchema.parse(req) as JsonRpcRequest\n const response = await this._rpcEngine.handle(request)\n let responseSchema = this.responseSchemas[method]\n if (!isObject(responseSchema)) {\n responseSchema = createResponseSchema(schema.result.from)\n this.responseSchemas[method] = responseSchema\n }\n return responseSchema.parse(response)?.result as z.infer<T[TMethod]['result']['from']>\n }\n}\n","import type { JsonRpcRequest } from '@metamask/utils'\nimport type { JsonValue } from '@xylabs/object'\n\nexport interface SessionMessageEnvelope<T extends JsonValue> {\n data: T\n destination?: string\n sessionId: string\n}\n\n/** Only intended for web pages where the xyo global object was injected */\n/** @deprecated - this is now handled in the wallet extension */\nexport const buildSessionMessageRequest = <T extends JsonRpcRequest>(data: T, destination?: string) => {\n const request: SessionMessageEnvelope<T> = {\n data,\n destination,\n sessionId: globalThis.xyo.walletExtensionId() ?? '',\n }\n\n return request\n}\n","import type { Hash } from '@xylabs/hex'\nimport { ObjectHasher } from '@xyo-network/hash'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport type { Payload } from '@xyo-network/payload-model'\nimport { isAnyPayload } from '@xyo-network/payload-model'\nimport {\n type DataLakeData,\n isHashPayload,\n type XyoDataLake,\n} from '@xyo-network/xl1-protocol'\n\nexport abstract class AbstractXyoDataLake implements XyoDataLake {\n async fetch(hashes: Hash[], maxDepth: number = 10): Promise<DataLakeData[]> {\n const results: DataLakeData[] = await this.get(hashes)\n if (maxDepth > 0) {\n const hashPayloads = results.filter(isHashPayload)\n const otherPayloads = results.filter(item => !isHashPayload(item))\n const found = await this.fetch(hashPayloads.map(item => item.hash), maxDepth - 1)\n const foundHashes = await Promise.all(found.map(async item => isAnyPayload(item) ? await PayloadBuilder.hash(item) : ObjectHasher.hashBytes(item)))\n const notFound = hashPayloads.filter(item => !foundHashes.includes(item.hash))\n return [...otherPayloads, ...found, ...notFound]\n }\n return results\n }\n\n async trace(hash: Hash): Promise<[DataLakeData | undefined, Payload[]]> {\n const [result] = await this.get([hash])\n if (isHashPayload(result)) {\n const [payload, route] = await this.trace(result.hash)\n return [payload, [result, ...route]]\n }\n return [result, []]\n }\n\n abstract add(items: DataLakeData[]): Promise<DataLakeData[]>\n\n abstract get(hashes: Hash[]): Promise<DataLakeData[]>\n}\n","import { assertEx } from '@xylabs/assert'\nimport type { Hash } from '@xylabs/hex'\nimport type { ReadWriteArchivist } from '@xyo-network/archivist-model'\nimport { isAnyPayload } from '@xyo-network/payload-model'\nimport { type DataLakeData } from '@xyo-network/xl1-protocol'\n\nimport { AbstractXyoDataLake } from './AbstractXyoDataLake.ts'\n\nexport class ArchivistXyoDataLake extends AbstractXyoDataLake {\n private _archivist: ReadWriteArchivist\n\n constructor(archivist: ReadWriteArchivist) {\n super()\n this._archivist = archivist\n }\n\n async add(items: DataLakeData[]): Promise<DataLakeData[]> {\n const payloads = items.filter(isAnyPayload)\n assertEx(payloads.length === items.length, () => 'Some items are not payloads')\n return await this._archivist.insert(payloads)\n }\n\n async get(hashes: Hash[]): Promise<DataLakeData[]> {\n return await this._archivist.get(hashes)\n }\n}\n","import { isArrayBuffer } from '@xylabs/arraybuffer'\nimport { assertEx } from '@xylabs/assert'\nimport { AxiosJson } from '@xylabs/axios'\nimport { exists } from '@xylabs/exists'\nimport type { Hash } from '@xylabs/hex'\nimport type { Promisable } from '@xylabs/promise'\nimport { isDefined } from '@xylabs/typeof'\nimport { isAnyPayload, type Payload } from '@xyo-network/payload-model'\nimport { type DataLakeData, isHashPayload } from '@xyo-network/xl1-protocol'\nimport { Axios } from 'axios'\n\nimport { AbstractXyoDataLake } from './AbstractXyoDataLake.ts'\n\nexport class HttpXyoDataLake extends AbstractXyoDataLake {\n private _axiosGet: Axios\n private _axiosInsertBlob: Axios\n private _axiosInsertJson: AxiosJson\n private _endpoint: string\n\n constructor(endpoint: string) {\n super()\n this._endpoint = endpoint\n this._axiosInsertJson = new AxiosJson({ baseURL: endpoint })\n this._axiosInsertBlob = new Axios({ baseURL: endpoint, headers: { 'Content-Type': 'application/octet-stream', 'Accept': 'application/octet-stream' } })\n this._axiosGet = new Axios({ baseURL: endpoint, headers: { 'Content-Type': 'application/json', 'Accept': 'application/octet-stream, application/json' } })\n }\n\n get endpoint(): string {\n return this._endpoint\n }\n\n async add(items: DataLakeData[]): Promise<DataLakeData[]> {\n const results: DataLakeData[] = []\n for (const item of items) {\n if (isAnyPayload(item)) {\n const result = await this.addPayload(item)\n if (isAnyPayload(result)) {\n results.push(result)\n } else if (isDefined(result)) {\n assertEx(false, () => 'Expected result to be a Payload')\n }\n } else if (isArrayBuffer(item)) {\n const result = await this.addArrayBuffer(item)\n if (isAnyPayload(result)) {\n results.push(result)\n } else if (isDefined(result)) {\n assertEx(false, () => 'Expected result to be a Payload')\n }\n }\n }\n return results\n }\n\n async get(hashes: Hash[]): Promise<DataLakeData[]> {\n return (await Promise.all(hashes.map(async (hash) => {\n return await this.getOne(hash)\n }))).filter(exists)\n }\n\n protected async addArrayBuffer(item: ArrayBuffer): Promise<ArrayBuffer | undefined> {\n const result = await this._axiosInsertBlob.post('/insert', item)\n if (result.status < 200 || result.status >= 300) {\n throw new Error(`Failed to add items [${result.status}]: ${result.statusText}`)\n }\n if (!isArrayBuffer(result.data)) {\n throw new Error('Invalid response from server (expected a ArrayBuffer)')\n }\n\n return result.data\n }\n\n protected async addPayload(item: Payload): Promise<Payload | undefined> {\n const result = await this._axiosInsertJson.post('/insert', item)\n if (result.status < 200 || result.status >= 300) {\n throw new Error(`Failed to add items [${result.status}]: ${result.statusText}`)\n }\n if (!Array.isArray(result.data) || result.data.length !== 1) {\n throw new Error('Invalid response from server (expected an Array of Payloads)')\n }\n const [response] = result.data\n if (!isAnyPayload(response)) {\n throw new Error('Invalid response from server (expected a Payload)')\n }\n return response\n }\n\n protected async fetchOne(hash: Hash, maxDepth: number = Number.MAX_SAFE_INTEGER): Promise<DataLakeData | undefined> {\n if (maxDepth <= 0) {\n return undefined\n }\n const result = await this.getOne(hash)\n if (isHashPayload(result)) {\n return await this.fetchOne(result.hash, maxDepth - 1)\n }\n return result\n }\n\n protected getOne(hash: Hash): Promisable<DataLakeData | undefined> {\n return this._axiosGet.get(`/get/${hash}`).then((response) => {\n if (response.status < 200 || response.status >= 300) {\n throw new Error(`Failed to get item [${response.status}]: ${response.statusText}`)\n }\n const contentType = response.headers['content-type']\n if (contentType && contentType.includes('application/json')) {\n const parsed = JSON.parse(response.data)\n if (!isAnyPayload(parsed)) {\n throw new Error('Invalid response from server (expected a Payload)')\n }\n return parsed\n } else {\n throw new Error(`Unexpected content type: ${contentType}`)\n }\n })\n }\n}\n","import { type Hash } from '@xylabs/hex'\nimport type { SignedHydratedTransaction, XyoRunner } from '@xyo-network/xl1-protocol'\n\nimport type { RpcTransport } from '../../transport/index.ts'\nimport type { XyoRunnerRpcSchemas } from '../../types/index.ts'\nexport class JsonRpcXyoRunner implements XyoRunner {\n protected readonly transport: RpcTransport<typeof XyoRunnerRpcSchemas>\n\n constructor(transport: RpcTransport<typeof XyoRunnerRpcSchemas>) {\n this.transport = transport\n }\n\n async broadcastTransaction(transaction: SignedHydratedTransaction): Promise<Hash> {\n return await this.transport.sendRequest('xyoRunner_broadcastTransaction', [transaction])\n }\n}\n","import type { Hash } from '@xylabs/hex'\nimport { MemoryArchivist } from '@xyo-network/archivist-memory'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport type { SignedHydratedTransactionWithStorageMeta, XyoRunner } from '@xyo-network/xl1-protocol'\nimport { flattenHydratedTransaction } from '@xyo-network/xl1-protocol-sdk'\n\nexport class MemoryXyoRunner implements XyoRunner {\n protected _archivist: MemoryArchivist | undefined\n\n async broadcastTransaction(transaction: SignedHydratedTransactionWithStorageMeta): Promise<Hash> {\n const archivist = await this.getArchivist()\n await archivist.insert(flattenHydratedTransaction(transaction))\n return await PayloadBuilder.hash(transaction[0])\n }\n\n protected async getArchivist(): Promise<MemoryArchivist> {\n if (!this._archivist) {\n this._archivist = await MemoryArchivist.create({ account: 'random' })\n }\n return this._archivist\n }\n}\n","import { assertEx } from '@xylabs/assert'\nimport { type Hash } from '@xylabs/hex'\nimport type { ArchivistInstance } from '@xyo-network/archivist-model'\nimport { asArchivistInstance } from '@xyo-network/archivist-model'\nimport type { ModuleIdentifier } from '@xyo-network/module-model'\nimport type { NodeInstance } from '@xyo-network/node-model'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport type { PayloadBundle } from '@xyo-network/payload-model'\nimport { PayloadBundleSchema } from '@xyo-network/payload-model'\nimport type {\n SignedHydratedTransaction,\n XyoRunner,\n} from '@xyo-network/xl1-protocol'\nimport { flattenHydratedTransaction } from '@xyo-network/xl1-protocol-sdk'\n\nexport class NodeXyoRunner implements XyoRunner {\n // TODO: Make configurable with defaults\n protected readonly node: NodeInstance\n protected readonly pendingArchivistPath: ModuleIdentifier = 'XYOChain:Pending:PendingTransactions'\n\n private _pendingArchivist: ArchivistInstance | undefined\n\n constructor(node: NodeInstance) {\n this.node = node\n }\n\n async broadcastTransaction(transaction: SignedHydratedTransaction): Promise<Hash> {\n const flattened = flattenHydratedTransaction(transaction)\n\n const pendingArchivist = await this.getPendingArchivist()\n\n const txHash = await PayloadBuilder.hash(transaction[0])\n const payloadBundle: PayloadBundle = {\n schema: PayloadBundleSchema, payloads: flattened, root: txHash,\n }\n\n await pendingArchivist.insert([payloadBundle])\n\n return txHash\n }\n\n protected getArchivist = async (identifier: ModuleIdentifier) => {\n const archivist = await this.node.resolve(identifier)\n return assertEx(asArchivistInstance(archivist), () => `Error: Could not resolve ${identifier} to an archivist instance`)\n }\n\n protected getPendingArchivist = async () => {\n if (this._pendingArchivist) return this._pendingArchivist\n this._pendingArchivist = await this.getArchivist(this.pendingArchivistPath)\n return assertEx(this._pendingArchivist, () => `Error: Could not resolve pending archivist at ${this.pendingArchivistPath}`)\n }\n}\n","import type { Address } from '@xylabs/hex'\nimport type { Signed } from '@xyo-network/boundwitness-model'\nimport type { Payload } from '@xyo-network/payload-model'\nimport type {\n AllowedBlockPayload,\n ChainId,\n SignedHydratedTransaction,\n TransactionBoundWitness,\n TransactionFeesBigInt,\n UnsignedHydratedTransaction,\n XyoSigner,\n} from '@xyo-network/xl1-protocol'\n\nimport type { RpcTransport } from '../../transport/index.ts'\nimport type { XyoSignerRpcSchemas } from '../../types/index.ts'\n\nexport class RpcXyoSigner implements XyoSigner {\n protected readonly transport: RpcTransport<typeof XyoSignerRpcSchemas>\n\n constructor(transport: RpcTransport<typeof XyoSignerRpcSchemas>) {\n this.transport = transport\n }\n\n async address(): Promise<Address> {\n return await this.transport.sendRequest('xyoSigner_address')\n }\n\n /** @deprecated - use signTransaction instead */\n async createSignedTransaction(\n chain: ChainId,\n elevatedPayloads: AllowedBlockPayload[],\n additionalPayloads: Payload[],\n nbf: number,\n exp: number,\n fees: TransactionFeesBigInt,\n from?: Address,\n ): Promise<Signed<TransactionBoundWitness>> {\n const ret = await this.transport.sendRequest('xyoSigner_createSignedTransaction', [\n chain,\n elevatedPayloads,\n additionalPayloads,\n nbf,\n exp,\n fees,\n from,\n ])\n return ret\n }\n\n async signTransaction(tx: UnsignedHydratedTransaction): Promise<SignedHydratedTransaction> {\n const ret = await this.transport.sendRequest('xyoSigner_signTransaction', [tx])\n return ret\n }\n}\n\n/**\n * @deprecated Use `RpcXyoSigner` instead.\n */\nexport class JsonRpcXyoSigner extends RpcXyoSigner {}\n","import type { Address } from '@xylabs/hex'\nimport type { AccountInstance } from '@xyo-network/account-model'\nimport type { Signed, UnsignedBoundWitness } from '@xyo-network/boundwitness-model'\nimport { type Payload } from '@xyo-network/payload-model'\nimport type {\n AllowedBlockPayload, ChainId, TransactionBoundWitness, TransactionFeesBigInt, XyoSigner,\n} from '@xyo-network/xl1-protocol'\nimport { buildTransaction, signTransaction } from '@xyo-network/xl1-protocol-sdk'\n\nexport class MemoryXyoSigner implements XyoSigner {\n protected readonly _account: AccountInstance\n\n constructor(account: AccountInstance) {\n this._account = account\n }\n\n address(): Address {\n return this._account.address\n }\n\n async createSignedTransaction(\n chain: ChainId,\n elevatedPayloads: AllowedBlockPayload[],\n additionalPayloads: Payload[],\n nbf: number,\n exp: number,\n fees: TransactionFeesBigInt,\n from?: Address,\n ): Promise<Signed<TransactionBoundWitness>> {\n const fromAddress = from ?? this._account.address\n const transaction = await buildTransaction(\n chain,\n elevatedPayloads,\n additionalPayloads,\n this._account,\n nbf,\n exp,\n fromAddress,\n fees,\n )\n return transaction[0]\n }\n\n async signTransaction(tx: [UnsignedBoundWitness<TransactionBoundWitness>, Payload[]]): Promise<[Signed<TransactionBoundWitness>, Payload[]]> {\n const txBW = await signTransaction(tx[0], this._account)\n return [txBW, tx[1]]\n }\n}\n","import type { Address, Hash } from '@xylabs/hex'\nimport type {\n AttoXL1,\n ChainId,\n ForkHistory,\n HydratedBlock, SignedHydratedTransaction,\n Stake,\n StepIdentity,\n StepIdentityString,\n Transfer,\n TransferBalanceHistoryItem,\n TransferPair,\n XyoViewer,\n} from '@xyo-network/xl1-protocol'\nimport { asAttoXL1, asHydratedBlock } from '@xyo-network/xl1-protocol'\n\nimport type { RpcTransport } from '../../transport/index.ts'\nimport type { XyoViewerRpcSchemas } from '../../types/index.ts'\nexport class JsonRpcXyoViewer implements XyoViewer {\n protected readonly transport: RpcTransport<typeof XyoViewerRpcSchemas>\n\n constructor(transport: RpcTransport<typeof XyoViewerRpcSchemas>) {\n this.transport = transport\n }\n\n async accountBalance(address: Address): Promise<AttoXL1> {\n return asAttoXL1(await this.transport.sendRequest('xyoViewer_accountBalance', [address]))\n }\n\n async accountBalanceHistory(address: Address): Promise<[Hash, Hash, Transfer][]> {\n return (await this.transport.sendRequest('xyoViewer_accountBalanceHistory', [address]))\n }\n\n async blockByHash(hash: Hash): Promise<HydratedBlock | null> {\n return asHydratedBlock(await this.transport.sendRequest('xyoViewer_blockByHash', [hash])) ?? null\n }\n\n async blockByNumber(blockNumber: number): Promise<HydratedBlock | null> {\n return asHydratedBlock(await this.transport.sendRequest('xyoViewer_blockByNumber', [blockNumber])) ?? null\n }\n\n async blocksByHash(hash: Hash, limit?: number): Promise<HydratedBlock[]> {\n return (await this.transport.sendRequest('xyoViewer_blocksByHash', [hash, limit])).map(b => asHydratedBlock(b, { required: true }))\n }\n\n async chainId(): Promise<Address> {\n return await this.transport.sendRequest('xyoViewer_chainId')\n }\n\n async chainIdAtBlock(blockNumber: number): Promise<ChainId | undefined> {\n return (await this.transport.sendRequest('xyoViewer_chainIdAtBlock', [blockNumber]))\n }\n\n async currentBlock(): Promise<HydratedBlock> {\n return asHydratedBlock(await this.transport.sendRequest('xyoViewer_currentBlock'), { required: true })\n }\n\n async currentBlockHash(): Promise<Hash> {\n return (await this.transport.sendRequest('xyoViewer_currentBlockHash'))\n }\n\n async currentBlockNumber(): Promise<number> {\n return (await this.transport.sendRequest('xyoViewer_currentBlockNumber'))\n }\n\n async forkHistory(): Promise<ForkHistory> {\n return (await this.transport.sendRequest('xyoViewer_forkHistory'))\n }\n\n async networkStakeStepRewardAddressHistory(address: Address): Promise<Record<Address, bigint>> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardAddressHistory', [address]))\n }\n\n async networkStakeStepRewardAddressReward(context: StepIdentity, address: Address): Promise<Record<Address, bigint>> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardAddressReward', [context, address]))\n }\n\n async networkStakeStepRewardAddressShare(context: StepIdentity, address: Address): Promise<[bigint, bigint]> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardAddressShare', [context, address]))\n }\n\n async networkStakeStepRewardClaimedByAddress(address: Address): Promise<bigint> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardClaimedByAddress', [address]))\n }\n\n async networkStakeStepRewardForPosition(position: number, range: [number, number]): Promise<[bigint, bigint]> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardForPosition', [position, range]))\n }\n\n async networkStakeStepRewardForStep(context: StepIdentity): Promise<bigint> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardForStep', [context]))\n }\n\n async networkStakeStepRewardForStepForPosition(context: StepIdentity, position: number): Promise<[bigint, bigint]> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardForStepForPosition', [context, position]))\n }\n\n async networkStakeStepRewardPoolRewards(context: StepIdentity): Promise<Record<Address, bigint>> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardPoolRewards', [context]))\n }\n\n async networkStakeStepRewardPoolShares(context: StepIdentity): Promise<Record<Address, bigint>> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardPoolShares', [context]))\n }\n\n async networkStakeStepRewardPositionWeight(context: StepIdentity, position: number): Promise<bigint> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardPositionWeight', [context, position]))\n }\n\n async networkStakeStepRewardPotentialPositionLoss(context: StepIdentity, position: number): Promise<bigint> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardPotentialPositionLoss', [context, position]))\n }\n\n async networkStakeStepRewardRandomizer(context: StepIdentity): Promise<bigint> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardRandomizer', [context]))\n }\n\n async networkStakeStepRewardStakerCount(context: StepIdentity): Promise<number> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardStakerCount', [context]))\n }\n\n async networkStakeStepRewardUnclaimedByAddress(address: Address): Promise<bigint> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardUnclaimedByAddress', [address]))\n }\n\n async networkStakeStepRewardWeightForAddress(context: StepIdentity, address: Address): Promise<bigint> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardWeightForAddress', [context, address]))\n }\n\n async networkStakeStepRewardsForPosition(position: number, range: [number, number]): Promise<Record<StepIdentityString, [bigint, bigint]>> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardsForPosition', [position, range]))\n }\n\n async networkStakeStepRewardsForRange(range: [number, number]): Promise<bigint> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardsForRange', [range]))\n }\n\n async networkStakeStepRewardsForStepLevel(stepLevel: number, range: [number, number]): Promise<bigint> {\n return (await this.transport.sendRequest('xyoViewer_networkStakeStepRewardsForStepLevel', [stepLevel, range]))\n }\n\n async stakeById(id: number): Promise<Stake> {\n return (await this.transport.sendRequest('xyoViewer_stakeById', [id]))\n }\n\n async stakeByStaker(staker: Address, slot: number): Promise<Stake> {\n return (await this.transport.sendRequest('xyoViewer_stakeByStaker', [staker, slot]))\n }\n\n async stakedByStaker(staker: Address): Promise<Address[]> {\n return (await this.transport.sendRequest('xyoViewer_stakedByStaker', [staker]))\n }\n\n async stakesByStaked(staked: Address): Promise<Stake[]> {\n return (await this.transport.sendRequest('xyoViewer_stakesByStaked', [staked]))\n }\n\n async stakesByStaker(staker: Address): Promise<Stake[]> {\n return (await this.transport.sendRequest('xyoViewer_stakesByStaker', [staker]))\n }\n\n async transactionByBlockHashAndIndex(blockHash: Hash, transactionIndex: number): Promise<SignedHydratedTransaction | null> {\n return (await this.transport.sendRequest('xyoViewer_transactionByBlockHashAndIndex', [blockHash, transactionIndex])) as SignedHydratedTransaction | null\n }\n\n async transactionByBlockNumberAndIndex(blockNumber: number, transactionIndex: number): Promise<SignedHydratedTransaction | null> {\n return (await this.transport.sendRequest('xyoViewer_transactionByBlockNumberAndIndex', [blockNumber, transactionIndex])) as SignedHydratedTransaction | null\n }\n\n async transactionByHash(transactionHash: Hash): Promise<SignedHydratedTransaction | null> {\n return (await this.transport.sendRequest('xyoViewer_transactionByHash', [transactionHash])) as SignedHydratedTransaction | null\n }\n\n async transferBalance(address: Address): Promise<AttoXL1> {\n return asAttoXL1(await this.transport.sendRequest('xyoViewer_transferBalance', [address]))\n }\n\n async transferBalanceHistory(address: Address): Promise<TransferBalanceHistoryItem[]> {\n return (await this.transport.sendRequest('xyoViewer_transferBalanceHistory', [address])) as TransferBalanceHistoryItem[]\n }\n\n async transferPairBalance(pair: TransferPair): Promise<AttoXL1> {\n return asAttoXL1(await this.transport.sendRequest('xyoViewer_transferPairBalance', [pair]))\n }\n\n async transferPairBalanceHistory(pair: TransferPair): Promise<TransferBalanceHistoryItem[]> {\n return (await this.transport.sendRequest('xyoViewer_transferPairBalanceHistory', [pair])) as TransferBalanceHistoryItem[]\n }\n}\n","import { assertEx } from '@xylabs/assert'\nimport type { Address, Hex } from '@xylabs/hex'\nimport type { Signed } from '@xyo-network/boundwitness-model'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { isAnyPayload, type Payload } from '@xyo-network/payload-model'\nimport type {\n AllowedBlockPayload,\n SignedHydratedTransactionWithStorageMeta,\n TransactionBoundWitness, TransactionFeesBigInt,\n TransactionOptions, XyoConnection, XyoDataLake, XyoDataLakeViewer, XyoNetwork, XyoRunner, XyoSigner, XyoViewer,\n} from '@xyo-network/xl1-protocol'\nimport { defaultTransactionFees, isDataLakeProvider } from '@xyo-network/xl1-protocol'\nimport { HydratedTransactionWrapper } from '@xyo-network/xl1-wrappers'\n\nexport class XyoBaseConnection implements XyoConnection {\n private readonly _network?: XyoNetwork\n private readonly _runner?: XyoRunner\n private readonly _signer?: XyoSigner\n private readonly _storage?: XyoDataLake | XyoDataLakeViewer\n private readonly _viewer?: XyoViewer\n\n constructor(params?: {\n network?: XyoNetwork\n runner?: XyoRunner\n signer?: XyoSigner\n storage?: XyoDataLake | XyoDataLakeViewer\n viewer?: XyoViewer\n }) {\n this._network = params?.network\n this._runner = params?.runner\n this._signer = params?.signer\n this._storage = params?.storage\n this._viewer = params?.viewer\n }\n\n get network(): XyoNetwork | undefined {\n return this._network\n }\n\n get runner(): XyoRunner | undefined {\n return this._runner\n }\n\n /** @deprecated use signer from gateway instead */\n get signer(): XyoSigner | undefined {\n return this._signer\n }\n\n get storage(): XyoDataLake | XyoDataLakeViewer | undefined {\n return this._storage\n }\n\n get viewer(): XyoViewer | undefined {\n return this._viewer\n }\n\n /** @deprecated use submitTransaction instead */\n async send(\n elevatedPayloads: AllowedBlockPayload[],\n additionalPayloads: Payload[],\n chain?: Hex,\n nbf?: number,\n exp?: number,\n from?: Address,\n fees?: TransactionFeesBigInt,\n ): Promise<Signed<TransactionBoundWitness>> {\n // eslint-disable-next-line sonarjs/deprecation\n return (await this.submitTransaction(elevatedPayloads, additionalPayloads, {\n chain, nbf, exp, from, fees,\n }))[0]\n }\n\n /** @deprecated use addPayloadsToChain from gateway instead */\n async submitTransaction(\n elevatedPayloads: AllowedBlockPayload[],\n additionalPayloads: Payload[],\n {\n chain, exp, fees, from, nbf,\n }: TransactionOptions = {},\n ): Promise<SignedHydratedTransactionWithStorageMeta> {\n const viewer = assertEx(this.viewer, () => 'No viewer available')\n // eslint-disable-next-line sonarjs/deprecation\n const signer = assertEx(this.signer, () => 'No signer available')\n const runner = assertEx(this.runner, () => 'No runner available')\n const storage = this.storage\n const chainResolved = chain ?? await viewer.chainId()\n if (chainResolved === undefined) throw new Error('Failed to determine chain')\n const nbfResolved = Math.max(await viewer.currentBlockNumber() ?? 0, nbf ?? 0)\n const expResolved = exp ?? (nbfResolved + 1000)\n const feesResolved = fees ?? defaultTransactionFees\n const fromResolved = from ?? await signer.address()\n if (fromResolved === undefined) throw new Error('Failed to determine from address')\n // eslint-disable-next-line sonarjs/deprecation\n const signedTransaction = assertEx(await signer.createSignedTransaction(\n chainResolved,\n elevatedPayloads,\n additionalPayloads,\n nbfResolved,\n expResolved,\n feesResolved,\n fromResolved,\n ), () => 'Failed to create transaction')\n const hydratedTransaction: SignedHydratedTransactionWithStorageMeta = [await PayloadBuilder.addStorageMeta(signedTransaction),\n await PayloadBuilder.addStorageMeta(elevatedPayloads)]\n\n // if storage configured, add the external payloads to it\n if (isDataLakeProvider(storage)) {\n const wrapper = await HydratedTransactionWrapper.parse(hydratedTransaction)\n await storage.add(Object.values(wrapper.externalPayloads).filter(isAnyPayload))\n }\n\n assertEx(await runner.broadcastTransaction(hydratedTransaction), () => 'Failed to broadcast transaction')\n\n return hydratedTransaction\n }\n}\n","import { assertEx } from '@xylabs/assert'\nimport type { Hash } from '@xylabs/hex'\nimport type { Promisable } from '@xylabs/promise'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport type { Payload } from '@xyo-network/payload-model'\nimport type {\n AllowedBlockPayload,\n SignedHydratedTransaction,\n XyoConnection, XyoGatewayProvider, XyoSigner,\n} from '@xyo-network/xl1-protocol'\nimport { buildUnsignedTransaction } from '@xyo-network/xl1-protocol-sdk'\n\nexport abstract class AbstractXyoGateway implements XyoGatewayProvider {\n async addPayloadsToChain(onChain: AllowedBlockPayload[], offChain: Payload[]): Promise<[Hash, SignedHydratedTransaction]> {\n const connection = await this.connection()\n const viewer = assertEx(connection.viewer, () => 'No viewer available on connection')\n const signer = await this.signer()\n const chainId = await viewer.chainId()\n const nbf = await viewer.currentBlockNumber()\n const tx = await buildUnsignedTransaction(chainId, onChain, offChain, nbf, nbf + 1000, await signer.address())\n const runner = assertEx(connection.runner, () => 'No runner available on connection')\n const signedTx = await signer.signTransaction(tx)\n const hash = await runner.broadcastTransaction(\n [await PayloadBuilder.addStorageMeta(signedTx[0]),\n await PayloadBuilder.addStorageMeta(signedTx[1])],\n )\n return [hash, signedTx]\n }\n\n async addTransactionToChain(tx: SignedHydratedTransaction): Promise<Hash> {\n const connection = await this.connection()\n const signer = await this.signer()\n const runner = assertEx(connection.runner, () => 'No runner available on connection')\n const signedTx = await signer.signTransaction(tx)\n return await runner.broadcastTransaction(\n [await PayloadBuilder.addStorageMeta(signedTx[0]),\n await PayloadBuilder.addStorageMeta(signedTx[1])],\n )\n }\n\n /** @deprecated use addPayloadsToChain instead */\n async submitTransaction(elevatedPayloads: AllowedBlockPayload[], additionalPayloads: Payload[]): Promise<SignedHydratedTransaction> {\n const connection = await this.connection()\n // eslint-disable-next-line sonarjs/deprecation\n assertEx(connection.submitTransaction, () => 'Active connection does not support transaction submission')\n // eslint-disable-next-line sonarjs/deprecation\n const tx = await connection.submitTransaction?.(elevatedPayloads, additionalPayloads)\n return assertEx(tx, () => 'Transaction submission failed')\n }\n\n abstract connection(): Promisable<XyoConnection>\n abstract signer(): Promisable<XyoSigner>\n}\n","import type { XyoConnection, XyoSigner } from '@xyo-network/xl1-protocol'\n\nimport { AbstractXyoGateway } from './Abstract.ts'\n\nexport class MemoryXyoGateway extends AbstractXyoGateway {\n private readonly _connection: XyoConnection\n private readonly _signer: XyoSigner\n\n constructor(signer: XyoSigner, connection: XyoConnection) {\n super()\n this._signer = signer\n this._connection = connection\n }\n\n connection(): XyoConnection {\n return this._connection\n }\n\n signer(): XyoSigner {\n return this._signer\n }\n}\n","import { isUndefined } from '@xylabs/typeof'\nimport type {\n GatewayName,\n NetworkStatus, XyoNetwork,\n} from '@xyo-network/xl1-protocol'\nimport { isNetworkStatus } from '@xyo-network/xl1-protocol'\nimport axios from 'axios'\n\nimport {\n errorStatus, StatusNetworks, unknownStatus,\n} from './lib/index.ts'\n\nexport class MemoryXyoNetwork implements XyoNetwork {\n protected readonly _networkId: GatewayName\n\n constructor(networkId: GatewayName) {\n this._networkId = networkId\n }\n\n async status(): Promise<NetworkStatus> {\n const statusNetwork = StatusNetworks[this._networkId]\n if (isUndefined(statusNetwork)) {\n throw new Error(`Unknown status network ID: ${this._networkId}`)\n }\n\n return await this.makeRequest(statusNetwork.statusUrl)\n }\n\n private async makeRequest(url: string): Promise<NetworkStatus> {\n try {\n const response = await axios.get(url)\n if (isNetworkStatus(response.data)) {\n return response.data\n } else {\n if (response.status === 200) {\n console.error('Unknown network status response:', response.data)\n\n return unknownStatus\n }\n return errorStatus\n }\n } catch (error) {\n console.error('Error fetching network status:', error)\n return errorStatus\n }\n }\n}\n","import type { NetworkStatus } from '@xyo-network/xl1-protocol'\nimport { NetworkStatusSchema } from '@xyo-network/xl1-protocol'\n\nexport const unknownStatus: NetworkStatus = {\n description: 'Unknown Network Status',\n schema: NetworkStatusSchema,\n state: 'unknown',\n}\n\nexport const errorStatus: NetworkStatus = {\n description: 'Error Fetching Network Status',\n schema: NetworkStatusSchema,\n state: 'unknown',\n}\n","import type { GatewayName } from '@xyo-network/xl1-protocol'\n\nexport type StatusNetwork = {\n id: GatewayName\n statusUrl: string\n}\n\nexport const MainNetworkStats: StatusNetwork = {\n id: 'mainnet' as GatewayName,\n statusUrl: 'https://xyo.network/chain-network-status-mainnet.json',\n}\n\nexport const SequenceNetworkStats: StatusNetwork = {\n id: 'sequence' as GatewayName,\n statusUrl: 'https://beta.xyo.network/chain-network-status-sequence.json',\n}\n\nexport const LocalNetworkStats: StatusNetwork = {\n id: 'local' as GatewayName,\n statusUrl: 'http://localhost:3002/chain-network-status-local.json',\n}\n\nexport const StatusNetworks: Record<GatewayName, StatusNetwork> = {\n ['mainnet' as GatewayName]: MainNetworkStats,\n ['sequence' as GatewayName]: SequenceNetworkStats,\n ['local' as GatewayName]: LocalNetworkStats,\n}\n","import { assertEx } from '@xylabs/assert'\nimport type {\n CaveatTypes, InvokerPermission, PermissionRequest, RequestedPermission,\n XyoPermissions,\n} from '@xyo-network/xl1-protocol'\n\nimport type { Invoker, PermissionsStore } from './store/index.ts'\n\n/**\n * In-memory implementation of XyoPermissions for testing or ephemeral use cases.\n * Does not persist data beyond the lifetime of the instance.\n * Assumes all permission requests are granted and revocations always succeed.\n */\nexport class MemoryXyoPermissions implements XyoPermissions {\n invoker: Invoker\n private _store: PermissionsStore\n\n constructor(store: PermissionsStore) {\n this._store = store\n this.invoker = store.invoker\n }\n\n get store(): PermissionsStore {\n return assertEx(this._store, () => 'Store must be defined to get permissions')\n }\n\n async getPermissions(): Promise<InvokerPermission[]> {\n return await this.store.getPermissions()\n }\n\n // assumed the permissions are always granted\n async requestPermissions(permissions: PermissionRequest[]): Promise<RequestedPermission[]> {\n await Promise.resolve()\n // Flatten PermissionRequest[] into InvokerPermission[]\n const newPermissions: InvokerPermission[] = []\n const now = Date.now()\n for (const req of permissions) {\n for (const parentCapability in req) {\n newPermissions.push({\n invoker: this.invoker,\n parentCapability,\n caveats: Object.entries(req[parentCapability]).map(([type, value]) => ({ type: type as CaveatTypes, value })),\n date: now,\n })\n }\n }\n\n // Update or add permissions in the store\n const existingPermissions = await this.getPermissions()\n for (const perm of newPermissions) {\n const idx = existingPermissions.findIndex(\n p => p.invoker === perm.invoker && p.parentCapability === perm.parentCapability,\n )\n if (idx === -1) {\n existingPermissions.push(perm)\n } else {\n existingPermissions[idx] = perm\n }\n }\n await this.store.setPermissions(existingPermissions)\n\n // Return the granted permissions in RequestedPermission shape\n return newPermissions.map(({ parentCapability, date }) => ({ parentCapability, date }))\n }\n\n // Assumes the permissions are always revoked\n async revokePermissions(permissions: PermissionRequest): Promise<RequestedPermission[]> {\n const existingPermissions = await this.getPermissions()\n const revoked: RequestedPermission[] = []\n for (const parentCapability in permissions) {\n const idx = existingPermissions.findIndex(\n p => p.invoker === this.invoker && p.parentCapability === parentCapability,\n )\n if (idx !== -1) {\n const removed = existingPermissions.splice(idx, 1)[0]\n revoked.push({ parentCapability: removed.parentCapability, date: removed.date })\n }\n }\n await this.store.setPermissions(existingPermissions)\n return revoked\n }\n}\n","import type {\n InvokerPermission,\n PermissionRequest,\n RequestedPermission,\n XyoPermissions,\n} from '@xyo-network/xl1-protocol'\n\nimport type { RpcTransport } from '../../transport/index.ts'\nimport type { XyoPermissionsRpcSchemas } from '../../types/index.ts'\n\nexport class RpcXyoPermissions implements XyoPermissions {\n protected readonly transport: RpcTransport<typeof XyoPermissionsRpcSchemas>\n\n constructor(transport: RpcTransport<typeof XyoPermissionsRpcSchemas>) {\n this.transport = transport\n }\n\n async getPermissions(): Promise<InvokerPermission[]> {\n return await this.transport.sendRequest('xyoPermissions_getPermissions', [])\n }\n\n async requestPermissions(permissions: PermissionRequest[]): Promise<RequestedPermission[]> {\n return await this.transport.sendRequest('xyoPermissions_requestPermissions', [permissions])\n }\n\n async revokePermissions(_permissions: PermissionRequest): Promise<RequestedPermission[]> {\n await Promise.resolve()\n throw new Error('Method not implemented.')\n }\n}\n","import { assertEx } from '@xylabs/assert'\nimport type { InvokerPermission } from '@xyo-network/xl1-protocol'\n\nimport type { Invoker, PermissionsStore } from './PermissionsStore.ts'\n\n/**\n * In-memory implementation of XyoPermissions for testing or ephemeral use cases.\n * Does not persist data beyond the lifetime of the instance.\n * Assumes all permission requests are granted and revocations always succeed.\n */\nexport class MemoryPermissionsStore implements PermissionsStore {\n private _invoker: Invoker\n private permissions: InvokerPermission[] = []\n\n constructor(invoker: Invoker) {\n this._invoker = invoker\n }\n\n get invoker(): Invoker {\n return assertEx(this._invoker, () => 'Invoker must be defined to get permissions')\n }\n\n async getPermissions(): Promise<InvokerPermission[]> {\n await Promise.resolve()\n return this.permissions\n }\n\n async setPermissions(permissions: InvokerPermission[]): Promise<void> {\n await Promise.resolve()\n this.permissions = permissions\n }\n}\n"],"mappings":"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","names":["requestSchemas","rpcMethodHandlersFromRunner","runner","xyoRunner_broadcastTransaction","params","broadcastTransaction","rpcMethodHandlersFromSigner","signer","xyoSigner_address","params","address","xyoSigner_createSignedTransaction","createSignedTransaction","xyoSigner_signTransaction","signTransaction","rpcMethodHandlersFromViewer","viewer","xyoViewer_networkStakeStepRewardClaimedByAddress","params","networkStakeStepRewardClaimedByAddress","xyoViewer_networkStakeStepRewardAddressReward","networkStakeStepRewardAddressReward","xyoViewer_networkStakeStepRewardAddressHistory","networkStakeStepRewardAddressHistory","xyoViewer_networkStakeStepRewardAddressShare","networkStakeStepRewardAddressShare","xyoViewer_networkStakeStepRewardWeightForAddress","networkStakeStepRewardWeightForAddress","xyoViewer_networkStakeStepRewardUnclaimedByAddress","networkStakeStepRewardUnclaimedByAddress","xyoViewer_networkStakeStepRewardPoolShares","networkStakeStepRewardPoolShares","xyoViewer_networkStakeStepRewardPoolRewards","networkStakeStepRewardPoolRewards","xyoViewer_networkStakeStepRewardPositionWeight","networkStakeStepRewardPositionWeight","xyoViewer_networkStakeStepRewardPotentialPositionLoss","networkStakeStepRewardPotentialPositionLoss","xyoViewer_networkStakeStepRewardForStep","networkStakeStepRewardForStep","xyoViewer_networkStakeStepRewardRandomizer","networkStakeStepRewardRandomizer","xyoViewer_networkStakeStepRewardStakerCount","networkStakeStepRewardStakerCount","xyoViewer_networkStakeStepRewardForStepForPosition","networkStakeStepRewardForStepForPosition","xyoViewer_networkStakeStepRewardForPosition","networkStakeStepRewardForPosition","xyoViewer_networkStakeStepRewardsForPosition","networkStakeStepRewardsForPosition","xyoViewer_networkStakeStepRewardsForRange","networkStakeStepRewardsForRange","xyoViewer_networkStakeStepRewardsForStepLevel","networkStakeStepRewardsForStepLevel","xyoViewer_accountBalance","accountBalance","xyoViewer_accountBalanceHistory","accountBalanceHistory","xyoViewer_blockByHash","blockByHash","xyoViewer_blockByNumber","blockByNumber","xyoViewer_blocksByHash","blocksByHash","xyoViewer_chainId","chainId","xyoViewer_chainIdAtBlock","chainIdAtBlock","xyoViewer_currentBlock","currentBlock","xyoViewer_currentBlockHash","currentBlockHash","xyoViewer_currentBlockNumber","currentBlockNumber","xyoViewer_forkHistory","forkHistory","xyoViewer_stakeById","stakeById","xyoViewer_stakeByStaker","stakeByStaker","xyoViewer_stakesByStaked","stakesByStaked","xyoViewer_stakesByStaker","stakesByStaker","xyoViewer_stakedByStaker","stakedByStaker","xyoViewer_transactionByBlockHashAndIndex","transactionByBlockHashAndIndex","xyoViewer_transactionByBlockNumberAndIndex","transactionByBlockNumberAndIndex","xyoViewer_transactionByHash","transactionByHash","xyoViewer_transferBalance","transferBalance","xyoViewer_transferBalanceHistory","transferBalanceHistory","xyoViewer_transferPairBalance","transferPairBalance","xyoViewer_transferPairBalanceHistory","transferPairBalanceHistory","rpcMethodHandlersFromConnection","connection","runner","signer","viewer","result","xyoProvider_send","params","send","rpcMethodHandlersFromRunner","rpcMethodHandlersFromSigner","rpcMethodHandlersFromViewer","rpcMethodHandlersFromPermissions","permissions","xyoPermissions_getPermissions","params","getPermissions","xyoPermissions_requestPermissions","requestPermissions","xyoPermissions_revokePermissions","revokePermissions","MemoryXyoClient","gateways","permissions","isDefined","isString","isDataLakeProvider","AxiosJson","isError","isUndefinedOrNull","isAxiosError","v4","JsonRpcErrorCodes","InternalError","code","message","InvalidParams","InvalidRequest","MethodNotFound","UserRejected","jsonrpc","z","AddressRegEx","toAddress","z","AddressZod","string","toLowerCase","regex","transform","v","HexZod","z","HashZod","HexZod","BoundWitnessSchema","z","HashToJsonZod","z","HexRegExMinMax","toHex","SequenceConstants","z","LocalSequenceRegex","RegExp","localSequenceBytes","LocalSequenceToStringZod","string","regex","LocalSequenceFromStringZod","transform","v","QualifiedSequenceRegex","qualifiedSequenceBytes","QualifiedSequenceToStringZod","QualifiedSequenceFromStringZod","SequenceToStringZod","union","SequenceFromStringZod","StorageMetaZod","object","_hash","HashToJsonZod","_dataHash","_sequence","SequenceToStringZod","SchemaZod","string","PayloadZod","schema","catchall","any","PayloadWithStorageMetaZod","extend","shape","AnyPayloadZod","json","AnyPayloadWithStorageMetaZod","WithStorageMetaZod","valueZod","BoundWitnessRequiredFieldsZod","object","addresses","array","AddressZod","payload_hashes","HashZod","payload_schemas","SchemaZod","previous_hashes","nullable","BoundWitnessMetaZod","$destination","optional","$sourceQuery","$signatures","union","HexZod","null","BoundWitnessZod","PayloadZod","extend","schema","literal","BoundWitnessSchema","shape","refine","data","length","message","AnyBoundWitnessZod","catchall","any","UnsignedBoundWitnessZod","includes","AnyUnsignedBoundWitnessZod","UnsignedBoundWitnessWithStorageMetaZod","safeExtend","SignedBoundWitnessZod","SignedBoundWitnessWithStorageMetaZod","AnySignedBoundWitnessZod","AnySignedBoundWitnessWithStorageMetaZod","AddressRegEx","toAddress","z","ChainZod","string","toLowerCase","regex","transform","v","BlockNumberZod","number","int","nonnegative","BlockBoundWitnessFieldsZod","object","block","chain","ChainZod","previous","HexZod","nullable","protocol","optional","step_hashes","array","BlockBoundWitnessMetaZod","$epoch","BlockBoundWitnessZod","UnsignedBoundWitnessZod","merge","StorageMetaZod","partial","BlockBoundWitnessWithStorageMetaZod","UnsignedBoundWitnessWithStorageMetaZod","SignedBlockBoundWitnessZod","SignedBoundWitnessZod","SignedBlockBoundWitnessWithStorageMetaZod","SignedBoundWitnessWithStorageMetaZod","z","HydratedBlockZod","tuple","BlockBoundWitnessZod","array","PayloadZod","HydratedBlockWithStorageMetaZod","BlockBoundWitnessWithStorageMetaZod","PayloadWithStorageMetaZod","SignedHydratedBlockZod","SignedBlockBoundWitnessZod","SignedHydratedBlockToJsonZod","SignedHydratedBlockWithStorageMetaZod","SignedBlockBoundWitnessWithStorageMetaZod","asAnyPayload","asSignedHydratedTransaction","z","z","BigIntToJsonZod","HexZod","JsonToBigIntZod","asAttoXL1","z","AttoZod","bigint","JsonToAttoZod","transform","v","AttoToJsonZod","TransactionFeesHexZod","object","base","gasLimit","gasPrice","priority","TransactionFeesBigIntZod","TransactionFeesJsonToBigIntZod","val","parse","TransactionFeesBigIntToJsonZod","BlockStartZod","object","nbf","BlockNumberZod","BlockEndZod","exp","BlockDurationZod","BlockScriptsZod","script","array","string","optional","WithTransactionFeesZod","fees","TransactionFeesHexZod","TransactionBoundWitnessFields","chain","ChainZod","from","TransactionBoundWitnessZod","UnsignedBoundWitnessZod","merge","StorageMetaZod","partial","SignedTransactionBoundWitnessZod","SignedBoundWitnessZod","HydratedTransactionZod","tuple","TransactionBoundWitnessZod","array","PayloadZod","UnsignedHydratedTransactionZod","SignedHydratedTransactionZod","SignedTransactionBoundWitnessZod","SignedHydratedTransactionToJsonZod","transform","tx","payloads","asSignedHydratedTransaction","map","payload","JsonToSignedHydratedTransactionZod","p","asAnyPayload","z","JsonValueZod","lazy","union","string","number","boolean","null","array","record","JsonObjectZod","z","CaveatTypesZod","enum","CaveatsZod","object","type","value","json","PermissionZod","parentCapability","string","caveats","array","optional","invoker","InvokerPermissionZod","extend","date","number","PermissionRequestZod","record","any","RequestedPermissionZod","HexZod","z","StakeZod","object","amount","AttoZod","addBlock","number","id","removeBlock","staked","AddressZod","staker","withdrawBlock","StakeToJsonZod","transform","val","AttoToJsonZod","parse","JsonToStakeZod","extend","HexZod","JsonToAttoZod","z","StepIdentityZod","object","block","number","step","BigIntToJsonZod","PayloadZodStrictOfSchema","TransferSchema","z","TransferFieldsZod","z","object","epoch","number","from","AddressZod","transfers","record","BigIntToJsonZod","TransferZod","PayloadZodStrictOfSchema","TransferSchema","extend","shape","z","TransferPairZod","z","tuple","AddressZod","XyoPermissionsRpcSchemas","xyoPermissions_getPermissions","params","to","array","any","length","from","result","InvokerPermissionZod","xyoPermissions_requestPermissions","tuple","PermissionRequestZod","RequestedPermissionZod","xyoPermissions_revokePermissions","z","XyoProviderRpcSchemas","xyoProvider_send","params","to","tuple","AddressZod","array","PayloadZod","number","nonnegative","TransactionFeesBigIntToJsonZod","optional","from","TransactionFeesJsonToBigIntZod","result","SignedTransactionBoundWitnessZod","HashToJsonZod","JsonToHashZod","z","XyoRunnerRpcSchemas","xyoRunner_broadcastTransaction","params","to","tuple","SignedHydratedTransactionZod","from","result","HashToJsonZod","JsonToHashZod","AllowedBlockPayloadZod","asHydratedTransactionWithStorageMeta","z","XyoSignerRpcSchemas","xyoSigner_address","params","to","z","array","any","length","optional","from","result","AddressZod","xyoSigner_createSignedTransaction","tuple","ChainZod","AllowedBlockPayloadZod","PayloadZod","number","nonnegative","TransactionFeesBigIntToJsonZod","TransactionFeesJsonToBigIntZod","SignedTransactionBoundWitnessZod","transform","data","xyoSigner_signTransaction","UnsignedHydratedTransactionZod","SignedHydratedTransactionZod","asHydratedTransactionWithStorageMeta","required","BigIntToJsonZod","HashToJsonZod","HashZod","JsonToBigIntZod","JsonToHashZod","z","XyoViewerRpcSchemas","xyoViewer_networkStakeStepRewardClaimedByAddress","params","to","union","tuple","AddressZod","from","result","BigIntToJsonZod","JsonToBigIntZod","xyoViewer_networkStakeStepRewardAddressReward","StepIdentityZod","record","xyoViewer_networkStakeStepRewardAddressHistory","xyoViewer_networkStakeStepRewardAddressShare","xyoViewer_networkStakeStepRewardWeightForAddress","xyoViewer_networkStakeStepRewardUnclaimedByAddress","xyoViewer_networkStakeStepRewardPoolRewards","xyoViewer_networkStakeStepRewardPositionWeight","number","xyoViewer_networkStakeStepRewardPotentialPositionLoss","xyoViewer_networkStakeStepRewardForStep","xyoViewer_networkStakeStepRewardRandomizer","xyoViewer_networkStakeStepRewardStakerCount","xyoViewer_networkStakeStepRewardPoolShares","xyoViewer_networkStakeStepRewardForStepForPosition","xyoViewer_networkStakeStepRewardForPosition","xyoViewer_networkStakeStepRewardsForRange","xyoViewer_networkStakeStepRewardsForStepLevel","xyoViewer_networkStakeStepRewardsForPosition","string","xyoViewer_accountBalance","xyoViewer_accountBalanceHistory","array","HashZod","TransferZod","xyoViewer_transferPairBalance","TransferPairZod","xyoViewer_transferPairBalanceHistory","PayloadZod","xyoViewer_transferBalance","xyoViewer_transferBalanceHistory","xyoViewer_blockByHash","HashToJsonZod","JsonToHashZod","SignedHydratedBlockZod","xyoViewer_blockByNumber","xyoViewer_blocksByHash","optional","xyoViewer_chainId","any","length","xyoViewer_chainIdAtBlock","BlockNumberZod","xyoViewer_currentBlock","xyoViewer_currentBlockHash","xyoViewer_currentBlockNumber","xyoViewer_forkHistory","xyoViewer_stakeByStaker","StakeToJsonZod","JsonToStakeZod","xyoViewer_stakeById","xyoViewer_stakedByStaker","xyoViewer_stakesByStaker","xyoViewer_stakesByStaked","xyoViewer_transactionByBlockHashAndIndex","SignedHydratedTransactionZod","nullable","xyoViewer_transactionByBlockNumberAndIndex","xyoViewer_transactionByHash","AllRpcSchemas","XyoProviderRpcSchemas","XyoRunnerRpcSchemas","XyoSignerRpcSchemas","XyoViewerRpcSchemas","XyoPermissionsRpcSchemas","z","createRequestSchema","methodName","paramsSchema","undefined","object","id","union","string","number","jsonrpc","literal","method","params","z","createResponseSchema","resultSchema","undefined","object","id","union","string","number","jsonrpc","literal","result","HttpRpcTransport","_rpcUrl","_schemas","rpcUrl","schemas","sendRequest","method","params","callRpc","url","id","v4","body","jsonrpc","to","parse","res","AxiosJson","post","json","data","isUndefinedOrNull","error","Error","message","result","from","ex","isError","String","isAxiosError","status","code","assertEx","isObject","isString","v4","MemoryRpcTransport","_rpcEngine","_schemas","requestSchemas","responseSchemas","rpcEngine","schemas","sendRequest","method","params","schema","requestSchema","isObject","stringMethod","assertEx","isString","createRequestSchema","to","req","jsonrpc","id","v4","request","parse","response","handle","responseSchema","createResponseSchema","result","from","buildSessionMessageRequest","data","destination","request","sessionId","globalThis","xyo","walletExtensionId","ObjectHasher","PayloadBuilder","isAnyPayload","isHashPayload","AbstractXyoDataLake","fetch","hashes","maxDepth","results","get","hashPayloads","filter","isHashPayload","otherPayloads","item","found","map","hash","foundHashes","Promise","all","isAnyPayload","PayloadBuilder","ObjectHasher","hashBytes","notFound","includes","trace","result","payload","route","assertEx","isAnyPayload","ArchivistXyoDataLake","AbstractXyoDataLake","_archivist","archivist","add","items","payloads","filter","isAnyPayload","assertEx","length","insert","get","hashes","isArrayBuffer","assertEx","AxiosJson","exists","isDefined","isAnyPayload","isHashPayload","Axios","HttpXyoDataLake","AbstractXyoDataLake","_axiosGet","_axiosInsertBlob","_axiosInsertJson","_endpoint","endpoint","AxiosJson","baseURL","Axios","headers","add","items","results","item","isAnyPayload","result","addPayload","push","isDefined","assertEx","isArrayBuffer","addArrayBuffer","get","hashes","Promise","all","map","hash","getOne","filter","exists","post","status","Error","statusText","data","Array","isArray","length","response","fetchOne","maxDepth","Number","MAX_SAFE_INTEGER","undefined","isHashPayload","then","contentType","includes","parsed","JSON","parse","JsonRpcXyoRunner","transport","broadcastTransaction","transaction","sendRequest","MemoryArchivist","PayloadBuilder","flattenHydratedTransaction","MemoryXyoRunner","_archivist","broadcastTransaction","transaction","archivist","getArchivist","insert","flattenHydratedTransaction","PayloadBuilder","hash","MemoryArchivist","create","account","assertEx","asArchivistInstance","PayloadBuilder","PayloadBundleSchema","flattenHydratedTransaction","NodeXyoRunner","node","pendingArchivistPath","_pendingArchivist","broadcastTransaction","transaction","flattened","flattenHydratedTransaction","pendingArchivist","getPendingArchivist","txHash","PayloadBuilder","hash","payloadBundle","schema","PayloadBundleSchema","payloads","root","insert","getArchivist","identifier","archivist","resolve","assertEx","asArchivistInstance","RpcXyoSigner","transport","address","sendRequest","createSignedTransaction","chain","elevatedPayloads","additionalPayloads","nbf","exp","fees","from","ret","signTransaction","tx","JsonRpcXyoSigner","buildTransaction","signTransaction","MemoryXyoSigner","_account","account","address","createSignedTransaction","chain","elevatedPayloads","additionalPayloads","nbf","exp","fees","from","fromAddress","transaction","buildTransaction","signTransaction","tx","txBW","asAttoXL1","asHydratedBlock","JsonRpcXyoViewer","transport","accountBalance","address","asAttoXL1","sendRequest","accountBalanceHistory","blockByHash","hash","asHydratedBlock","blockByNumber","blockNumber","blocksByHash","limit","map","b","required","chainId","chainIdAtBlock","currentBlock","currentBlockHash","currentBlockNumber","forkHistory","networkStakeStepRewardAddressHistory","networkStakeStepRewardAddressReward","context","networkStakeStepRewardAddressShare","networkStakeStepRewardClaimedByAddress","networkStakeStepRewardForPosition","position","range","networkStakeStepRewardForStep","networkStakeStepRewardForStepForPosition","networkStakeStepRewardPoolRewards","networkStakeStepRewardPoolShares","networkStakeStepRewardPositionWeight","networkStakeStepRewardPotentialPositionLoss","networkStakeStepRewardRandomizer","networkStakeStepRewardStakerCount","networkStakeStepRewardUnclaimedByAddress","networkStakeStepRewardWeightForAddress","networkStakeStepRewardsForPosition","networkStakeStepRewardsForRange","networkStakeStepRewardsForStepLevel","stepLevel","stakeById","id","stakeByStaker","staker","slot","stakedByStaker","stakesByStaked","staked","stakesByStaker","transactionByBlockHashAndIndex","blockHash","transactionIndex","transactionByBlockNumberAndIndex","transactionByHash","transactionHash","transferBalance","transferBalanceHistory","transferPairBalance","pair","transferPairBalanceHistory","assertEx","PayloadBuilder","isAnyPayload","defaultTransactionFees","isDataLakeProvider","HydratedTransactionWrapper","XyoBaseConnection","_network","_runner","_signer","_storage","_viewer","params","network","runner","signer","storage","viewer","send","elevatedPayloads","additionalPayloads","chain","nbf","exp","from","fees","submitTransaction","assertEx","chainResolved","chainId","undefined","Error","nbfResolved","Math","max","currentBlockNumber","expResolved","feesResolved","defaultTransactionFees","fromResolved","address","signedTransaction","createSignedTransaction","hydratedTransaction","PayloadBuilder","addStorageMeta","isDataLakeProvider","wrapper","HydratedTransactionWrapper","parse","add","Object","values","externalPayloads","filter","isAnyPayload","broadcastTransaction","HttpRpcXyoConnection","XyoBaseConnection","params","account","endpoint","storage","storageParam","signer","isDefined","MemoryXyoSigner","undefined","transport","HttpRpcTransport","XyoRunnerRpcSchemas","XyoViewerRpcSchemas","runner","JsonRpcXyoRunner","viewer","JsonRpcXyoViewer","isDataLakeProvider","isString","HttpXyoDataLake","RpcXyoConnection","assertEx","PayloadBuilder","buildUnsignedTransaction","AbstractXyoGateway","addPayloadsToChain","onChain","offChain","connection","viewer","assertEx","signer","chainId","nbf","currentBlockNumber","tx","buildUnsignedTransaction","address","runner","signedTx","signTransaction","hash","broadcastTransaction","PayloadBuilder","addStorageMeta","addTransactionToChain","submitTransaction","elevatedPayloads","additionalPayloads","MemoryXyoGateway","AbstractXyoGateway","_connection","_signer","signer","connection","isUndefined","isNetworkStatus","axios","NetworkStatusSchema","unknownStatus","description","schema","state","errorStatus","MainNetworkStats","id","statusUrl","SequenceNetworkStats","LocalNetworkStats","StatusNetworks","MemoryXyoNetwork","_networkId","networkId","status","statusNetwork","StatusNetworks","isUndefined","Error","makeRequest","statusUrl","url","response","axios","get","isNetworkStatus","data","console","error","unknownStatus","errorStatus","assertEx","MemoryXyoPermissions","invoker","_store","store","assertEx","getPermissions","requestPermissions","permissions","Promise","resolve","newPermissions","now","Date","req","parentCapability","push","caveats","Object","entries","map","type","value","date","existingPermissions","perm","idx","findIndex","p","setPermissions","revokePermissions","revoked","removed","splice","RpcXyoPermissions","transport","getPermissions","sendRequest","requestPermissions","permissions","revokePermissions","_permissions","Promise","resolve","Error","assertEx","MemoryPermissionsStore","_invoker","permissions","invoker","assertEx","getPermissions","Promise","resolve","setPermissions"]}
|