@leather.io/rpc 2.14.1 → 2.16.0

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/README.md CHANGED
@@ -18,19 +18,19 @@ declare global {
18
18
 
19
19
  ## SIP-30 Support
20
20
 
21
- | Method | |
22
- |----------------------------|------- |
23
- | `stx_getAddresses` | 🟢 Yes |
24
- | `stx_getAccounts` | 🔴 No |
25
- | `stx_getNetworks` | 🔴 No |
26
- | `stx_transferStx` | 🟢 Yes |
27
- | `stx_transferSip10Ft` | 🟢 Yes |
28
- | `stx_transferSip9Nft` | 🟢 Yes |
29
- | `stx_callContract` | 🟠 Yes <sub>Hex-encoded Clarity values only</sub> |
30
- | `stx_deployContract` | 🟠 Yes <sub>Hex-encoded Clarity values only</sub> |
31
- | `stx_signTransaction` | 🟠 Yes <sub>Hex-encoded Clarity values only</sub> |
32
- | `stx_signMessage` | 🟠 Yes <sub>Hex-encoded Clarity values only</sub> |
21
+ | Method | |
22
+ | --------------------------- | ------------------------------------------------- |
23
+ | `stx_getAddresses` | 🟢 Yes |
24
+ | `stx_getAccounts` | 🔴 No |
25
+ | `stx_getNetworks` | 🔴 No |
26
+ | `stx_transferStx` | 🟢 Yes |
27
+ | `stx_transferSip10Ft` | 🟢 Yes |
28
+ | `stx_transferSip9Nft` | 🟢 Yes |
29
+ | `stx_callContract` | 🟠 Yes <sub>Hex-encoded Clarity values only</sub> |
30
+ | `stx_deployContract` | 🟠 Yes <sub>Hex-encoded Clarity values only</sub> |
31
+ | `stx_signTransaction` | 🟠 Yes <sub>Hex-encoded Clarity values only</sub> |
32
+ | `stx_signMessage` | 🟠 Yes <sub>Hex-encoded Clarity values only</sub> |
33
33
  | `stx_signStructuredMessage` | 🟠 Yes <sub>Hex-encoded Clarity values only</sub> |
34
- | `stx_updateProfile` | 🔴 No |
35
- | `stx_accountChange` (event) | 🔴 No |
36
- | `stx_networkChange` (event) | 🔴 No |
34
+ | `stx_updateProfile` | 🔴 No |
35
+ | `stx_accountChange` (event) | 🔴 No |
36
+ | `stx_networkChange` (event) | 🔴 No |
package/dist/index.cjs CHANGED
@@ -64,6 +64,9 @@ __export(index_exports, {
64
64
  parseEndpointRequest: () => parseEndpointRequest,
65
65
  rpcBasePropsSchema: () => rpcBasePropsSchema,
66
66
  rpcParameterSchema: () => rpcParameterSchema,
67
+ rpcSendTransferLegacyParamSchema: () => rpcSendTransferLegacyParamSchema,
68
+ rpcSendTransferNewParamsSchema: () => rpcSendTransferNewParamsSchema,
69
+ rpcSendTransferParamsSchema: () => rpcSendTransferParamsSchema,
67
70
  sendTransfer: () => sendTransfer,
68
71
  signMessage: () => signMessage,
69
72
  signMessageRequestParamsSchema: () => signMessageRequestParamsSchema,
@@ -177,7 +180,7 @@ function defineRpcEndpoint(props) {
177
180
  }
178
181
 
179
182
  // src/methods/bitcoin/send-transfer.ts
180
- var sendTransferLegacyParamSchema = import_zod2.z.object({
183
+ var rpcSendTransferLegacyParamSchema = import_zod2.z.object({
181
184
  account: import_zod2.z.number().optional(),
182
185
  address: import_zod2.z.string(),
183
186
  amount: import_zod2.z.coerce.string(),
@@ -187,14 +190,18 @@ var transferRecipientParamSchema = import_zod2.z.object({
187
190
  address: import_zod2.z.string(),
188
191
  amount: import_zod2.z.coerce.string()
189
192
  });
190
- var rpcSendTransferParamsSchema = import_zod2.z.object({
193
+ var rpcSendTransferNewParamsSchema = import_zod2.z.object({
191
194
  account: import_zod2.z.number().optional(),
192
195
  recipients: import_zod2.z.array(transferRecipientParamSchema),
193
196
  network: import_zod2.z.string()
194
197
  });
198
+ var rpcSendTransferParamsSchema = import_zod2.z.union([
199
+ rpcSendTransferLegacyParamSchema,
200
+ rpcSendTransferNewParamsSchema
201
+ ]);
195
202
  var sendTransfer = defineRpcEndpoint({
196
203
  method: "sendTransfer",
197
- params: import_zod2.z.union([sendTransferLegacyParamSchema, rpcSendTransferParamsSchema]),
204
+ params: rpcSendTransferParamsSchema,
198
205
  result: import_zod2.z.object({
199
206
  txid: import_zod2.z.string()
200
207
  })
@@ -720,6 +727,9 @@ function parseEndpointRequest(data) {
720
727
  parseEndpointRequest,
721
728
  rpcBasePropsSchema,
722
729
  rpcParameterSchema,
730
+ rpcSendTransferLegacyParamSchema,
731
+ rpcSendTransferNewParamsSchema,
732
+ rpcSendTransferParamsSchema,
723
733
  sendTransfer,
724
734
  signMessage,
725
735
  signMessageRequestParamsSchema,
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/methods/bitcoin/send-transfer.ts","../src/rpc/schemas.ts","../src/methods/bitcoin/sign-message.ts","../src/methods/bitcoin/sign-psbt.ts","../src/rpc/helpers.ts","../src/methods/get-addresses.ts","../src/methods/get-info.ts","../src/methods/open.ts","../src/methods/open-swap.ts","../src/methods/stacks/stx-call-contract.ts","../src/methods/stacks/_stacks-helpers.ts","../src/methods/stacks/stx-deploy-contract.ts","../src/methods/stacks/stx-get-addresses.ts","../src/methods/stacks/stx-get-networks.ts","../src/methods/stacks/stx-sign-message.ts","../src/methods/stacks/stx-sign-structured-message.ts","../src/methods/stacks/stx-sign-transaction.ts","../src/methods/stacks/stx-transfer-sip9-nft.ts","../src/methods/stacks/stx-transfer-sip10-ft.ts","../src/methods/stacks/stx-transfer-stx.ts","../src/methods/stacks/stx-update-profile.ts","../src/methods/supported-methods.ts","../src/methods/stacks/_clarity-values.ts"],"sourcesContent":["import { z } from 'zod';\n\nimport { ValueOf } from '@leather.io/models';\n\nimport { sendTransfer } from './methods/bitcoin/send-transfer';\nimport { signMessage } from './methods/bitcoin/sign-message';\nimport { signPsbt } from './methods/bitcoin/sign-psbt';\nimport { getAddresses } from './methods/get-addresses';\nimport { getInfo } from './methods/get-info';\nimport { open } from './methods/open';\nimport { openSwap } from './methods/open-swap';\nimport { stxCallContract } from './methods/stacks/stx-call-contract';\nimport { stxDeployContract } from './methods/stacks/stx-deploy-contract';\nimport { stxGetAddresses } from './methods/stacks/stx-get-addresses';\nimport { stxGetNetworks } from './methods/stacks/stx-get-networks';\nimport { stxSignMessage } from './methods/stacks/stx-sign-message';\nimport { stxSignStructuredMessage } from './methods/stacks/stx-sign-structured-message';\nimport { stxSignTransaction } from './methods/stacks/stx-sign-transaction';\nimport { stxTransferSip9Nft } from './methods/stacks/stx-transfer-sip9-nft';\nimport { stxTransferSip10Ft } from './methods/stacks/stx-transfer-sip10-ft';\nimport { stxTransferStx } from './methods/stacks/stx-transfer-stx';\nimport { stxUpdateProfile } from './methods/stacks/stx-update-profile';\nimport { supportedMethods } from './methods/supported-methods';\nimport { ExtractErrorResponse, ExtractSuccessResponse } from './rpc/schemas';\n\nexport * from './rpc/schemas';\nexport * from './rpc/helpers';\nexport * from './methods/get-info';\nexport * from './methods/bitcoin/sign-psbt';\nexport * from './methods/get-addresses';\nexport * from './methods/bitcoin/send-transfer';\nexport * from './methods/bitcoin/sign-message';\nexport * from './methods/stacks/_clarity-values';\nexport * from './methods/stacks/_stacks-helpers';\nexport * from './methods/stacks/stx-sign-message';\nexport * from './methods/stacks/stx-sign-structured-message';\nexport * from './methods/stacks/stx-sign-transaction';\nexport * from './methods/stacks/stx-call-contract';\nexport * from './methods/stacks/stx-deploy-contract';\nexport * from './methods/stacks/stx-get-addresses';\nexport * from './methods/stacks/stx-transfer-sip9-nft';\nexport * from './methods/stacks/stx-transfer-sip10-ft';\nexport * from './methods/stacks/stx-transfer-stx';\nexport * from './methods/stacks/stx-update-profile';\nexport * from './methods/supported-methods';\nexport * from './methods/open';\nexport * from './methods/open-swap';\n\nexport const endpoints = {\n getAddresses,\n getInfo,\n open,\n openSwap,\n sendTransfer,\n signMessage,\n signPsbt,\n stxCallContract,\n stxDeployContract,\n stxGetAddresses,\n stxGetNetworks,\n stxSignMessage,\n stxSignStructuredMessage,\n stxSignTransaction,\n stxTransferSip10Ft,\n stxTransferSip9Nft,\n stxTransferStx,\n stxUpdateProfile,\n supportedMethods,\n} as const;\n\ntype EndpointMap = (typeof endpoints)[keyof typeof endpoints];\n\n/**\n * Request map keyed by exact method name e.g. `stx_signMessage`\n */\nexport type RpcEndpointMap = {\n [E in EndpointMap as E['method']]: {\n request: z.infer<E['request']>;\n response: z.infer<E['response']>;\n };\n};\n\n/** @deprecated */\nexport type LeatherRpcMethodMap = RpcEndpointMap;\n\nexport type RpcRequests = ValueOf<RpcEndpointMap>['request'];\n\nexport type RpcResponses = ValueOf<RpcEndpointMap>['response'];\n\nexport type RpcMethodNames = keyof RpcEndpointMap;\n\nexport interface RequestFn {\n <\n T extends RpcMethodNames,\n P extends RpcEndpointMap[T]['request'] extends { params?: infer P } ? P : never,\n >(\n arg: T,\n params: P\n // `Promise` throws if unsuccessful, so here we extract the successful response\n ): Promise<ExtractSuccessResponse<RpcEndpointMap[T]['response']>>;\n <T extends RpcMethodNames>(\n arg: T\n // `Promise` throws if unsuccessful, so here we extract the successful response\n ): Promise<ExtractSuccessResponse<RpcEndpointMap[T]['response']>>;\n}\n\nexport interface ListenFn {\n (method: string, callback: () => void): () => void;\n}\n\n/**\n * Leather's provider object set on webpage global `window` object. Set this as\n * a global type object in your project.\n *\n * @example\n * ```\n * declare global {\n * interface Window {\n * LeatherProvider?: LeatherProvider;\n * }\n * }\n * ```\n */\nexport interface LeatherProvider {\n /**\n * Request method. Takes a method name, and optional parameters\n * @returns Typed response for corresponding method\n */\n request: RequestFn;\n /**\n * Listen method. Takes an event name to listen for, and a callback function.\n * @returns An unsubscribe function\n */\n listen: ListenFn;\n}\n\n/**\n * Helper to create a successful RPC response object\n */\nexport function createRpcSuccessResponse<T extends RpcMethodNames>(\n _method: T,\n response: Omit<ExtractSuccessResponse<RpcEndpointMap[T]['response']>, 'jsonrpc'>\n) {\n return { jsonrpc: '2.0', ...response } as ExtractSuccessResponse<RpcEndpointMap[T]['response']>;\n}\n\n/**\n * Helper to create an error RPC response object\n */\nexport function createRpcErrorResponse<T extends RpcMethodNames>(\n _method: T,\n error: Omit<ExtractErrorResponse<RpcEndpointMap[T]['response']>, 'jsonrpc'>\n) {\n return { jsonrpc: '2.0', ...error } as RpcEndpointMap[T]['response'];\n}\n\nexport function parseEndpointRequest(data: unknown): RpcRequests | undefined {\n const endpointRequests = Object.values(endpoints).map(endpoint => endpoint.request);\n const endpoint = endpointRequests.find(req => req.safeParse(data).success);\n return endpoint?.safeParse(data).data;\n}\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\nconst sendTransferLegacyParamSchema = z.object({\n account: z.number().optional(),\n address: z.string(),\n amount: z.coerce.string(),\n network: z.string(),\n});\nexport type RpcSendTransferLegacyParams = z.infer<typeof sendTransferLegacyParamSchema>;\n\nconst transferRecipientParamSchema = z.object({\n address: z.string(),\n amount: z.coerce.string(),\n});\n\nconst rpcSendTransferParamsSchema = z.object({\n account: z.number().optional(),\n recipients: z.array(transferRecipientParamSchema),\n network: z.string(),\n});\nexport type RpcSendTransferParams = z.infer<typeof rpcSendTransferParamsSchema>;\n\nexport const sendTransfer = defineRpcEndpoint({\n method: 'sendTransfer',\n params: z.union([sendTransferLegacyParamSchema, rpcSendTransferParamsSchema]),\n result: z.object({\n txid: z.string(),\n }),\n});\n","// See JSON RPC specification\n// https://www.jsonrpc.org/specification\nimport { z } from 'zod';\n\nconst rpcParameterByPositionSchema = z.string().array();\nexport type RpcParameterByPosition = z.infer<typeof rpcParameterByPositionSchema>;\n\nconst rpcParameterByNameSchema = z.record(z.string(), z.unknown());\nexport type RpcParameterByName = z.infer<typeof rpcParameterByNameSchema>;\n\nexport const rpcParameterSchema = z.union([\n rpcParameterByPositionSchema,\n rpcParameterByNameSchema,\n z.undefined(),\n]);\nexport type RpcParameter = z.infer<typeof rpcParameterSchema>;\n\nexport const rpcBasePropsSchema = z.object({\n jsonrpc: z.literal('2.0'),\n id: z.string(),\n});\n\ntype BaseRpcRequestSchema = typeof rpcBasePropsSchema;\nexport type RpcBaseProps = z.infer<typeof rpcBasePropsSchema>;\n\n//\n// RPC Request\n// {\n// \"jsonrpc\": \"2.0\",\n// \"id\": \"123\",\n// \"method\": \"signPsbt\",\n// \"params\": { \"psbt\": \"dead…beef\" },\n// }\nexport function createRpcRequestSchema<TMethod extends string>(\n method: TMethod\n): z.ZodObject<\n z.objectUtil.extendShape<BaseRpcRequestSchema['shape'], { method: z.ZodLiteral<TMethod> }>\n>;\nexport function createRpcRequestSchema<TMethod extends string, TParam extends z.ZodTypeAny>(\n method: TMethod,\n paramsSchema: TParam\n): z.ZodObject<\n z.objectUtil.extendShape<\n BaseRpcRequestSchema['shape'],\n { method: z.ZodLiteral<TMethod>; params: TParam }\n >\n>;\nexport function createRpcRequestSchema<TMethod extends string, TParam extends z.ZodTypeAny>(\n method: TMethod,\n paramsSchema?: TParam\n) {\n // Unable to type this without the any, however the return type is corrects\n if (!paramsSchema) return rpcBasePropsSchema.extend({ method: z.literal(method) }) as any;\n\n return rpcBasePropsSchema.extend({\n method: z.literal(method),\n params: paramsSchema,\n });\n}\n\n//\n// RPC Error Body\n\nexport enum RpcErrorCode {\n // Spec defined server errors\n PARSE_ERROR = -32700,\n INVALID_REQUEST = -32600,\n METHOD_NOT_FOUND = -32601,\n INVALID_PARAMS = -32602,\n INTERNAL_ERROR = -32603,\n SERVER_ERROR = -32000,\n // Client defined errors\n USER_REJECTION = 4001,\n METHOD_NOT_SUPPORTED = 4002,\n // gRPC spec borrowed\n PERMISSION_DENIED = 7,\n UNAUTHENTICATED = 16,\n}\nconst rpcErrorCodeSchema = z.nativeEnum(RpcErrorCode);\n\nexport function createRpcErrorBodySchema<TErrorData extends z.ZodTypeAny>(\n errorDataSchema: TErrorData\n) {\n return z.object({\n code: z.union([z.number(), rpcErrorCodeSchema]),\n message: z.string(),\n data: errorDataSchema.optional(),\n });\n}\n\ntype RpcErrorBodySchema<TErrorData extends RpcParameter = RpcParameter> = ReturnType<\n typeof createRpcErrorBodySchema<z.ZodType<TErrorData>>\n>;\n\nexport type RpcErrorBody<TErrorData extends RpcParameter = RpcParameter> = z.infer<\n RpcErrorBodySchema<TErrorData>\n>;\n\n//\n// RPC Error Response\nexport function createRpcErrorResponseSchema<\n TError extends z.ZodType<RpcErrorBody> = z.ZodType<RpcErrorBody>,\n>(errorSchema: TError) {\n return rpcBasePropsSchema.extend({ error: errorSchema });\n}\n\nexport const defaultErrorSchema = createRpcErrorBodySchema(z.any());\n\ntype RpcErrorResponseSchema<TError extends RpcErrorBody = RpcErrorBody> = ReturnType<\n typeof createRpcErrorResponseSchema<z.ZodType<TError>>\n>;\n\nexport type RpcErrorResponse<TError extends RpcErrorBody = RpcErrorBody> = z.infer<\n RpcErrorResponseSchema<TError>\n>;\n\n//\n// RPC Success Response\n// {\n// \"jsonrpc\": \"2.0\",\n// \"id\": \"123\",\n// \"result\": { \"signature\": \"dead…beef\" }\n// }\nexport function createRpcSuccessResponseSchema<TResult extends z.ZodType<object>>(\n resultSchema: TResult\n) {\n return rpcBasePropsSchema.extend({ result: resultSchema });\n}\n\nexport type RpcSuccessResponseSchema<TResult extends object> = ReturnType<\n typeof createRpcSuccessResponseSchema<z.ZodType<TResult>>\n>;\n\nexport type RpcSuccessResponse<TResult extends object> = z.infer<RpcSuccessResponseSchema<TResult>>;\n\nexport function createRpcResponseSchema<\n TResult extends z.ZodType<object>,\n TError extends z.ZodType<RpcErrorBody>,\n>(resultSchema: TResult, errorSchema: TError) {\n return z.union([\n createRpcSuccessResponseSchema<TResult>(resultSchema),\n createRpcErrorResponseSchema<TError>(errorSchema),\n ]);\n}\n\nexport type ExtractSuccessResponse<T> = Extract<T, { result: any }>;\n\nexport type ExtractErrorResponse<T> = Extract<T, { error: any }>;\n\nexport type RpcRequest<T extends { request: z.ZodType }> = z.infer<T['request']>;\nexport type RpcParams<T extends { params: z.ZodType }> = z.infer<T['params']>;\n\nexport type RpcResponse<T extends { response: z.ZodType }> = z.infer<T['response']>;\nexport type RpcResult<T extends { result: z.ZodType }> = z.infer<T['result']>;\n\nexport function defineRpcEndpoint<\n Method extends string,\n Result extends z.ZodTypeAny,\n Error extends z.ZodType<RpcErrorBody>,\n>(props: {\n method: Method;\n result: Result;\n error?: Error;\n}): {\n method: Method;\n result: Result;\n error: Error;\n request: ReturnType<typeof createRpcRequestSchema<Method>>;\n response: ReturnType<typeof createRpcResponseSchema<Result, Error>>;\n};\nexport function defineRpcEndpoint<\n Method extends string,\n Result extends z.ZodTypeAny,\n Error extends z.ZodType<RpcErrorBody>,\n Params extends z.ZodTypeAny,\n>(props: {\n method: Method;\n params: Params;\n result: Result;\n error?: Error;\n}): {\n method: Method;\n params: Params;\n result: Result;\n error: Error;\n request: ReturnType<typeof createRpcRequestSchema<Method, Params>>;\n response: ReturnType<typeof createRpcResponseSchema<Result, Error>>;\n};\nexport function defineRpcEndpoint<\n Method extends string,\n Result extends z.ZodTypeAny,\n Error extends z.ZodType<RpcErrorBody>,\n Params extends z.ZodTypeAny,\n>(\n props:\n | { method: Method; params: Params; result: Result; error?: Error }\n | { method: Method; result: Result; error?: Error }\n):\n | {\n method: Method;\n params: Params;\n result: Result;\n error: Error;\n request: ReturnType<typeof createRpcRequestSchema<Method, Params>>;\n response: ReturnType<typeof createRpcResponseSchema<Result, Error>>;\n }\n | {\n method: Method;\n result: Result;\n error: Error;\n request: ReturnType<typeof createRpcRequestSchema<Method>>;\n response: ReturnType<typeof createRpcResponseSchema<Result, Error>>;\n } {\n const error = (props.error ?? defaultErrorSchema) as Error;\n\n if ('params' in props) {\n return {\n method: props.method,\n params: props.params,\n result: props.result,\n error,\n request: createRpcRequestSchema(props.method, props.params),\n response: createRpcResponseSchema(props.result, error),\n };\n }\n return {\n method: props.method,\n result: props.result,\n error,\n request: createRpcRequestSchema(props.method),\n response: createRpcResponseSchema(props.result, error),\n };\n}\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\n// Implements BIP-322\n// https://github.com/bitcoin/bips/blob/master/bip-0322.mediawiki\nexport const Bip322MessageTypesSchema = z.enum(['legacy', 'bip322']);\nexport type Bip322MessageTypes = z.infer<typeof Bip322MessageTypesSchema>;\n\nconst supportedPaymentTypesSchema = z.enum(['p2tr', 'p2wpkh']);\n\nexport const signMessageRequestParamsSchema = z\n .object({\n type: Bip322MessageTypesSchema.optional(),\n account: z.number().optional(),\n message: z.string(),\n paymentType: supportedPaymentTypesSchema,\n })\n .passthrough();\n\nexport const signMessage = defineRpcEndpoint({\n method: 'signMessage',\n params: signMessageRequestParamsSchema,\n result: z\n .object({\n signature: z.string(),\n address: z.string(),\n })\n .passthrough(),\n});\n","import { z } from 'zod';\n\nimport { testIsNumberOrArrayOfNumbers } from '../../rpc/helpers';\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\n/**\n * DEFAULT -- all inputs, all outputs\n * ALL -- all inputs, all outputs\n * NONE -- all inputs, no outputs\n * SINGLE -- all inputs, one output of the same index\n * ALL + ANYONE -- one input, all outputs\n * NONE + ANYONE -- one input, no outputs\n * SINGLE -- one inputs, one output of the same index\n */\nexport const signatureHash = {\n DEFAULT: 0x00,\n ALL: 0x01,\n NONE: 0x02,\n SINGLE: 0x03,\n ALL_ANYONECANPAY: 0x81,\n NONE_ANYONECANPAY: 0x82,\n SINGLE_ANYONECANPAY: 0x83,\n} as const;\n\nconst signPsbtRequestParamsSchema = z.object({\n account: z.number().optional(),\n allowedSighash: z.array(z.any()).optional(),\n broadcast: z.boolean().optional(),\n hex: z.string(),\n network: z.string().optional(),\n signAtIndex: z\n .union([z.number(), z.array(z.number())])\n .optional()\n .refine(testIsNumberOrArrayOfNumbers),\n});\n\nconst signPsbtResponseBodySchema = z.object({\n hex: z.string(),\n txid: z.string().optional(),\n});\n\nexport const signPsbt = defineRpcEndpoint({\n method: 'signPsbt',\n params: signPsbtRequestParamsSchema,\n result: signPsbtResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { isNumberOrNumberList, isUndefined } from '@leather.io/utils';\n\nexport function testIsNumberOrArrayOfNumbers(value: unknown) {\n if (isUndefined(value)) return true;\n return isNumberOrNumberList(value);\n}\n\nexport function encodeBase64Json(payload: Record<any, unknown>) {\n const jsonString = JSON.stringify(payload);\n return btoa(jsonString);\n}\n\nexport function decodeBase64Json(encodedPayload: string): unknown {\n const jsonString = atob(encodedPayload);\n return JSON.parse(jsonString);\n}\n\nexport function createRequestEncoder<T extends z.ZodTypeAny>(schema: T) {\n function encode(request: z.infer<T>) {\n return encodeBase64Json(schema.parse(request));\n }\n\n function decode(encodedRequest: string): z.infer<T> {\n const parsedJson = decodeBase64Json(encodedRequest);\n return schema.parse(parsedJson);\n }\n\n return { encode, decode };\n}\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../rpc/schemas';\n\nexport const bitcoinPaymentTypesSchema = z.enum(['p2pkh', 'p2sh', 'p2wpkh-p2sh', 'p2wpkh', 'p2tr']);\nexport type BitcoinPaymentTypes = z.infer<typeof bitcoinPaymentTypesSchema>;\n\n/** @deprecated use `BitcoinPaymentTypes` */\nexport type PaymentTypes = BitcoinPaymentTypes;\n\n//\n// Bitcoin\nexport const btcAddressBaseSchema = z.object({\n symbol: z.literal('BTC'),\n type: bitcoinPaymentTypesSchema,\n address: z.string(),\n publicKey: z.string(),\n derivationPath: z.string(),\n});\n\nexport type BtcAddressBase = z.infer<typeof btcAddressBaseSchema>;\n\nconst nativeSegwitAddressSchema = btcAddressBaseSchema\n .extend({\n type: z.literal('p2wpkh'),\n })\n .passthrough();\n\nexport type NativeSegwitAddress = z.infer<typeof nativeSegwitAddressSchema>;\n\nconst taprootAddressSchema = btcAddressBaseSchema\n .extend({\n type: z.literal('p2tr'),\n tweakedPublicKey: z.string(),\n })\n .passthrough();\n\nexport type TaprootAddress = z.infer<typeof taprootAddressSchema>;\n\nexport const btcAddressSchema = z.discriminatedUnion('type', [\n nativeSegwitAddressSchema,\n taprootAddressSchema,\n]);\n\nexport type BtcAddress = z.infer<typeof btcAddressSchema>;\n\n//\n// Stacks\nexport const stxAddressSchema = z\n .object({\n symbol: z.literal('STX'),\n address: z.string(),\n publicKey: z.string(),\n })\n .passthrough();\n\nexport type StxAddress = z.infer<typeof stxAddressSchema>;\n\nexport const addressSchema = z.union([btcAddressSchema, stxAddressSchema]);\n\nexport type Address = z.infer<typeof addressSchema>;\n\n//\n// Combined addresses response\nexport const addressResponseBodySchema = z\n .object({ addresses: z.array(addressSchema) })\n .passthrough();\n\nexport const getAddresses = defineRpcEndpoint({\n method: 'getAddresses',\n params: z.object({ network: z.string().optional() }).optional(),\n result: addressResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../rpc/schemas';\n\nconst getInfoResponseBodySchema = z.object({\n version: z.string(),\n supportedMethods: z.array(z.string()).optional(),\n platform: z.union([z.literal('mobile'), z.literal('extension')]),\n});\n\nexport const getInfo = defineRpcEndpoint({\n method: 'getInfo',\n result: getInfoResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../rpc/schemas';\n\nexport const open = defineRpcEndpoint({\n method: 'open',\n params: z.object({ mode: z.enum(['fullpage', 'popup']) }).default({ mode: 'popup' }),\n result: z.object({ success: z.literal(true) }),\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../rpc/schemas';\n\nconst openSwapRequestParamsSchema = z.object({\n base: z.string(),\n quote: z.string(),\n});\n\nconst openSwapResponseBodySchema = z.object({\n message: z.string(),\n});\n\nexport const openSwap = defineRpcEndpoint({\n method: 'openSwap',\n params: openSwapRequestParamsSchema,\n result: openSwapResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\nimport {\n baseStacksTransactionConfigSchema,\n stacksTransactionDetailsSchema,\n} from './_stacks-helpers';\n\nexport const stxCallContract = defineRpcEndpoint({\n method: 'stx_callContract',\n params: z.intersection(\n z.object({\n contract: z.string(),\n functionName: z.string(),\n functionArgs: z.array(z.string()).optional(),\n }),\n baseStacksTransactionConfigSchema\n ),\n result: stacksTransactionDetailsSchema,\n});\n","import { z } from 'zod';\n\nexport const stacksTransactionDetailsSchema = z.object({\n txid: z.string(),\n transaction: z.string(),\n});\n\nexport const baseStacksTransactionConfigSchema = z.object({\n address: z.string().optional(),\n network: z\n .union([\n z.literal('mainnet'),\n z.literal('testnet'),\n z.literal('regtest'),\n z.literal('devnet'),\n z.literal('mocknet'),\n z.string(),\n ])\n .optional(),\n fee: z.coerce.number().optional(),\n nonce: z.coerce.number().optional(),\n // add pc later when imported from stacks.js\n postConditions: z.array(z.string()).optional(),\n postConditionMode: z.union([z.literal('allow'), z.literal('deny')]).optional(),\n sponsored: z.boolean().optional(),\n});\n\nexport type BaseStacksTransactionRpcParams = z.infer<typeof baseStacksTransactionConfigSchema>;\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\nimport {\n baseStacksTransactionConfigSchema,\n stacksTransactionDetailsSchema,\n} from './_stacks-helpers';\n\nexport const stxDeployContractResponseBodySchema = stacksTransactionDetailsSchema;\n\nexport const stxDeployContract = defineRpcEndpoint({\n method: 'stx_deployContract',\n params: z.intersection(\n z.object({\n name: z.string(),\n clarityCode: z.string(),\n clarityVersion: z.coerce.number().optional(),\n }),\n baseStacksTransactionConfigSchema\n ),\n result: stxDeployContractResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\nexport const stxAddressItemSchema = z.object({\n address: z.string(),\n publicKey: z.string(),\n derivationPath: z.string(),\n});\n\nexport const stxGetAddressesResponseBodySchema = z.array(stxAddressItemSchema);\n\nexport const stxGetAddresses = defineRpcEndpoint({\n method: 'stx_getAddresses',\n params: z.object({ network: z.string().optional() }).optional(),\n result: stxGetAddressesResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\nexport const stxGetNetworks = defineRpcEndpoint({\n method: 'stx_getNetworks',\n result: z.object({\n active: z.string(),\n networks: z.array(\n z\n .object({\n id: z.string(),\n chainId: z.string(),\n transactionVersion: z.string(),\n })\n .passthrough()\n ),\n }),\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\n// Request\nexport const stxSignMessageTypeSchema = z.enum(['utf8', 'structured']);\nexport type StxSignMessageTypes = z.infer<typeof stxSignMessageTypeSchema>;\n\nexport const stxSignMessageRequestBaseSchema = z.object({\n messageType: stxSignMessageTypeSchema.optional().default('utf8'),\n network: z.optional(z.enum(['mainnet', 'testnet', 'devnet', 'mocknet'])),\n});\nexport type StxSignMessageRequestParamsBase = z.infer<typeof stxSignMessageRequestBaseSchema>;\n\nexport const stxSignMessageRequestUtf8Schema = stxSignMessageRequestBaseSchema.merge(\n z.object({\n messageType: z.literal('utf8').default('utf8'),\n message: z.string(),\n })\n);\nexport type StxSignMessageRequestParamsUtf8 = z.infer<typeof stxSignMessageRequestUtf8Schema>;\n\nexport const stxSignMessageRequestStructuredSchema = stxSignMessageRequestBaseSchema.merge(\n z.object({\n messageType: z.literal('structured'),\n domain: z.string(),\n message: z.string(),\n })\n);\nexport type StxSignMessageRequestParamsStructured = z.infer<\n typeof stxSignMessageRequestStructuredSchema\n>;\n\nexport const stxSignMessage = defineRpcEndpoint({\n method: 'stx_signMessage',\n params: z.union([stxSignMessageRequestUtf8Schema, stxSignMessageRequestStructuredSchema]),\n result: z.object({\n signature: z.string(),\n publicKey: z.string(),\n }),\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\nexport const stxSignStructuredMessage = defineRpcEndpoint({\n method: 'stx_signStructuredMessage',\n params: z.object({\n domain: z.string(),\n message: z.string(),\n }),\n result: z.object({\n signature: z.string(),\n publicKey: z.string(),\n }),\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\n// Leather's RPC params prior to SIP-30\n// Developers should be warned away from this structure\nexport const stxSignTransactionRequestLeatherRpcParamsSchema = z.object({\n txHex: z.string(),\n stxAddress: z.string().optional(),\n attachment: z.string().optional(),\n accountIndex: z.string().optional(),\n network: z.string().optional(),\n});\n\n// SIP-30 params\nexport const stxSignTransactionRequestSip30ParamsSchema = z.object({\n transaction: z.string(),\n network: z.string().optional(),\n});\n\nexport const stxSignTransaction = defineRpcEndpoint({\n method: 'stx_signTransaction',\n params: z.union([\n stxSignTransactionRequestLeatherRpcParamsSchema,\n stxSignTransactionRequestSip30ParamsSchema,\n ]),\n result: z.object({\n transaction: z.string(),\n txHex: z.string(),\n }),\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\nimport { stacksTransactionDetailsSchema } from './_stacks-helpers';\n\nexport const stxTransferSip9Nft = defineRpcEndpoint({\n method: 'stx_transferSip9Nft',\n params: z\n .object({\n recipient: z.string(),\n asset: z.string(),\n assetId: z.string(),\n })\n .passthrough(),\n result: stacksTransactionDetailsSchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\nimport { stacksTransactionDetailsSchema } from './_stacks-helpers';\n\nexport const stxTransferSip10Ft = defineRpcEndpoint({\n method: 'stx_transferSip10Ft',\n params: z\n .object({\n recipient: z.string(),\n asset: z.string(),\n amount: z.coerce.number(),\n })\n .passthrough(),\n result: stacksTransactionDetailsSchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\nimport { stacksTransactionDetailsSchema } from './_stacks-helpers';\n\nexport const stxTransferStx = defineRpcEndpoint({\n method: 'stx_transferStx',\n params: z\n .object({\n recipient: z.string(),\n amount: z.coerce.number().int('Amount must be an integer describing µSTX'),\n memo: z.string().optional(),\n })\n .passthrough(),\n result: stacksTransactionDetailsSchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\nimport { stacksTransactionDetailsSchema } from './_stacks-helpers';\n\n// Request\nexport const stxUpdateProfileRequestParamsSchema = z.object({\n // schema.org/Person\n person: z.object({}).passthrough(),\n});\n\nexport const stxUpdateProfileResponseBodySchema = stacksTransactionDetailsSchema;\n\nexport const stxUpdateProfile = defineRpcEndpoint({\n method: 'stx_updateProfile',\n params: stxUpdateProfileRequestParamsSchema,\n result: stxUpdateProfileResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../rpc/schemas';\n\nexport const supportedMethodSchema = z.object({\n name: z.string(),\n docsUrl: z.union([z.string(), z.array(z.string())]),\n});\n\nexport const supportedMethods = defineRpcEndpoint({\n method: 'supportedMethods',\n result: z.object({\n documentation: z.string(),\n methods: z.array(supportedMethodSchema),\n }),\n});\n","import {\n BufferCV,\n ClarityType,\n ClarityValue,\n ContractIdString,\n ContractPrincipalCV,\n FalseCV,\n IntCV,\n NoneCV,\n ResponseErrorCV,\n ResponseOkCV,\n SomeCV,\n StandardPrincipalCV,\n StringAsciiCV,\n StringUtf8CV,\n TrueCV,\n UIntCV,\n} from '@stacks/transactions';\nimport { z } from 'zod';\n\n// Clarity values\nexport const cvIntSchema: z.ZodType<IntCV> = z.object({\n type: z.literal('int') as z.ZodLiteral<ClarityType.Int>,\n value: z.coerce.string(),\n});\n\nexport const cvUintSchema: z.ZodType<UIntCV> = z.object({\n type: z.literal('uint') as z.ZodLiteral<ClarityType.UInt>,\n value: z.coerce.string(),\n});\n\nexport const cvBufferSchema: z.ZodType<BufferCV> = z.object({\n type: z.literal('buffer') as z.ZodLiteral<ClarityType.Buffer>,\n value: z.string(),\n});\n\nexport const cvTrueSchema: z.ZodType<TrueCV> = z.object({\n type: z.literal('true') as z.ZodLiteral<ClarityType.BoolTrue>,\n});\n\nexport const cvFalseSchema: z.ZodType<FalseCV> = z.object({\n type: z.literal('false') as z.ZodLiteral<ClarityType.BoolFalse>,\n});\n\nexport const cvAddressSchema: z.ZodType<StandardPrincipalCV> = z.object({\n type: z.literal('address') as z.ZodLiteral<ClarityType.PrincipalStandard>,\n value: z.string(),\n});\n\nexport const cvContractSchema: z.ZodType<ContractPrincipalCV> = z.object({\n type: z.literal('contract') as z.ZodLiteral<ClarityType.PrincipalContract>,\n value: z.string().refine(value => value.includes('.'), {\n message: 'Stacks contract principals are denoted with a dot',\n }) as z.ZodType<ContractIdString>,\n});\n\nexport const cvAsciiSchema: z.ZodType<StringAsciiCV> = z.object({\n type: z.literal('ascii') as z.ZodLiteral<ClarityType.StringASCII>,\n value: z.string(),\n});\n\nexport const cvUtf8Schema: z.ZodType<StringUtf8CV> = z.object({\n type: z.literal('utf8') as z.ZodLiteral<ClarityType.StringUTF8>,\n value: z.string(),\n});\n\nexport const cvOkSchema: z.ZodType<ResponseOkCV> = z\n .object({\n type: z.literal('ok') as z.ZodLiteral<ClarityType.ResponseOk>,\n value: z.lazy(() => clarityValueSchema),\n })\n .transform(value => value as ResponseOkCV);\n\nexport const cvErrSchema: z.ZodType<ResponseErrorCV> = z.object({\n type: z.literal('err') as z.ZodLiteral<ClarityType.ResponseErr>,\n value: z.lazy(() => clarityValueSchema),\n});\n\nexport const cvNoneSchema: z.ZodType<NoneCV> = z.object({\n type: z.literal('none') as z.ZodLiteral<ClarityType.OptionalNone>,\n});\n\nexport const cvSomeSchema: z.ZodType<SomeCV> = z.object({\n type: z.literal('some') as z.ZodLiteral<ClarityType.OptionalSome>,\n value: z.lazy(() => clarityValueSchema),\n});\n\nexport const cvListSchema = z.object({\n type: z.literal('list') as z.ZodLiteral<ClarityType.List>,\n value: z.array(z.lazy(() => clarityValueSchema)),\n});\n\nexport const cvTupleSchema = z.object({\n type: z.literal('tuple') as z.ZodLiteral<ClarityType.Tuple>,\n value: z.record(z.lazy(() => clarityValueSchema)),\n});\n\nexport const clarityValueSchema: z.ZodType<ClarityValue> = z.union([\n cvIntSchema,\n cvUintSchema,\n cvBufferSchema,\n cvTrueSchema,\n cvFalseSchema,\n cvAddressSchema,\n cvContractSchema,\n cvOkSchema,\n cvErrSchema,\n cvNoneSchema,\n cvSomeSchema,\n cvListSchema,\n cvTupleSchema,\n cvAsciiSchema,\n cvUtf8Schema,\n]);\n"],"mappings":"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","names":["import_zod","RpcErrorCode","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","endpoint"]}
1
+ {"version":3,"sources":["../src/index.ts","../src/methods/bitcoin/send-transfer.ts","../src/rpc/schemas.ts","../src/methods/bitcoin/sign-message.ts","../src/methods/bitcoin/sign-psbt.ts","../src/rpc/helpers.ts","../src/methods/get-addresses.ts","../src/methods/get-info.ts","../src/methods/open.ts","../src/methods/open-swap.ts","../src/methods/stacks/stx-call-contract.ts","../src/methods/stacks/_stacks-helpers.ts","../src/methods/stacks/stx-deploy-contract.ts","../src/methods/stacks/stx-get-addresses.ts","../src/methods/stacks/stx-get-networks.ts","../src/methods/stacks/stx-sign-message.ts","../src/methods/stacks/stx-sign-structured-message.ts","../src/methods/stacks/stx-sign-transaction.ts","../src/methods/stacks/stx-transfer-sip9-nft.ts","../src/methods/stacks/stx-transfer-sip10-ft.ts","../src/methods/stacks/stx-transfer-stx.ts","../src/methods/stacks/stx-update-profile.ts","../src/methods/supported-methods.ts","../src/methods/stacks/_clarity-values.ts"],"sourcesContent":["import { z } from 'zod';\n\nimport { ValueOf } from '@leather.io/models';\n\nimport { sendTransfer } from './methods/bitcoin/send-transfer';\nimport { signMessage } from './methods/bitcoin/sign-message';\nimport { signPsbt } from './methods/bitcoin/sign-psbt';\nimport { getAddresses } from './methods/get-addresses';\nimport { getInfo } from './methods/get-info';\nimport { open } from './methods/open';\nimport { openSwap } from './methods/open-swap';\nimport { stxCallContract } from './methods/stacks/stx-call-contract';\nimport { stxDeployContract } from './methods/stacks/stx-deploy-contract';\nimport { stxGetAddresses } from './methods/stacks/stx-get-addresses';\nimport { stxGetNetworks } from './methods/stacks/stx-get-networks';\nimport { stxSignMessage } from './methods/stacks/stx-sign-message';\nimport { stxSignStructuredMessage } from './methods/stacks/stx-sign-structured-message';\nimport { stxSignTransaction } from './methods/stacks/stx-sign-transaction';\nimport { stxTransferSip9Nft } from './methods/stacks/stx-transfer-sip9-nft';\nimport { stxTransferSip10Ft } from './methods/stacks/stx-transfer-sip10-ft';\nimport { stxTransferStx } from './methods/stacks/stx-transfer-stx';\nimport { stxUpdateProfile } from './methods/stacks/stx-update-profile';\nimport { supportedMethods } from './methods/supported-methods';\nimport { ExtractErrorResponse, ExtractSuccessResponse } from './rpc/schemas';\n\nexport * from './rpc/schemas';\nexport * from './rpc/helpers';\nexport * from './methods/get-info';\nexport * from './methods/bitcoin/sign-psbt';\nexport * from './methods/get-addresses';\nexport * from './methods/bitcoin/send-transfer';\nexport * from './methods/bitcoin/sign-message';\nexport * from './methods/stacks/_clarity-values';\nexport * from './methods/stacks/_stacks-helpers';\nexport * from './methods/stacks/stx-sign-message';\nexport * from './methods/stacks/stx-sign-structured-message';\nexport * from './methods/stacks/stx-sign-transaction';\nexport * from './methods/stacks/stx-call-contract';\nexport * from './methods/stacks/stx-deploy-contract';\nexport * from './methods/stacks/stx-get-addresses';\nexport * from './methods/stacks/stx-transfer-sip9-nft';\nexport * from './methods/stacks/stx-transfer-sip10-ft';\nexport * from './methods/stacks/stx-transfer-stx';\nexport * from './methods/stacks/stx-update-profile';\nexport * from './methods/supported-methods';\nexport * from './methods/open';\nexport * from './methods/open-swap';\n\nexport const endpoints = {\n getAddresses,\n getInfo,\n open,\n openSwap,\n sendTransfer,\n signMessage,\n signPsbt,\n stxCallContract,\n stxDeployContract,\n stxGetAddresses,\n stxGetNetworks,\n stxSignMessage,\n stxSignStructuredMessage,\n stxSignTransaction,\n stxTransferSip10Ft,\n stxTransferSip9Nft,\n stxTransferStx,\n stxUpdateProfile,\n supportedMethods,\n} as const;\n\ntype EndpointMap = (typeof endpoints)[keyof typeof endpoints];\n\n/**\n * Request map keyed by exact method name e.g. `stx_signMessage`\n */\nexport type RpcEndpointMap = {\n [E in EndpointMap as E['method']]: {\n request: z.infer<E['request']>;\n response: z.infer<E['response']>;\n };\n};\n\n/** @deprecated */\nexport type LeatherRpcMethodMap = RpcEndpointMap;\n\nexport type RpcRequests = ValueOf<RpcEndpointMap>['request'];\n\nexport type RpcResponses = ValueOf<RpcEndpointMap>['response'];\n\nexport type RpcMethodNames = keyof RpcEndpointMap;\n\nexport interface RequestFn {\n <\n T extends RpcMethodNames,\n P extends RpcEndpointMap[T]['request'] extends { params?: infer P } ? P : never,\n >(\n arg: T,\n params: P\n // `Promise` throws if unsuccessful, so here we extract the successful response\n ): Promise<ExtractSuccessResponse<RpcEndpointMap[T]['response']>>;\n <T extends RpcMethodNames>(\n arg: T\n // `Promise` throws if unsuccessful, so here we extract the successful response\n ): Promise<ExtractSuccessResponse<RpcEndpointMap[T]['response']>>;\n}\n\nexport interface ListenFn {\n (method: string, callback: () => void): () => void;\n}\n\n/**\n * Leather's provider object set on webpage global `window` object. Set this as\n * a global type object in your project.\n *\n * @example\n * ```\n * declare global {\n * interface Window {\n * LeatherProvider?: LeatherProvider;\n * }\n * }\n * ```\n */\nexport interface LeatherProvider {\n /**\n * Request method. Takes a method name, and optional parameters\n * @returns Typed response for corresponding method\n */\n request: RequestFn;\n /**\n * Listen method. Takes an event name to listen for, and a callback function.\n * @returns An unsubscribe function\n */\n listen: ListenFn;\n}\n\n/**\n * Helper to create a successful RPC response object\n */\nexport function createRpcSuccessResponse<T extends RpcMethodNames>(\n _method: T,\n response: Omit<ExtractSuccessResponse<RpcEndpointMap[T]['response']>, 'jsonrpc'>\n) {\n return { jsonrpc: '2.0', ...response } as ExtractSuccessResponse<RpcEndpointMap[T]['response']>;\n}\n\n/**\n * Helper to create an error RPC response object\n */\nexport function createRpcErrorResponse<T extends RpcMethodNames>(\n _method: T,\n error: Omit<ExtractErrorResponse<RpcEndpointMap[T]['response']>, 'jsonrpc'>\n) {\n return { jsonrpc: '2.0', ...error } as RpcEndpointMap[T]['response'];\n}\n\nexport function parseEndpointRequest(data: unknown): RpcRequests | undefined {\n const endpointRequests = Object.values(endpoints).map(endpoint => endpoint.request);\n const endpoint = endpointRequests.find(req => req.safeParse(data).success);\n return endpoint?.safeParse(data).data;\n}\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\nexport const rpcSendTransferLegacyParamSchema = z.object({\n account: z.number().optional(),\n address: z.string(),\n amount: z.coerce.string(),\n network: z.string(),\n});\nexport type RpcSendTransferLegacyParams = z.infer<typeof rpcSendTransferLegacyParamSchema>;\n\nconst transferRecipientParamSchema = z.object({\n address: z.string(),\n amount: z.coerce.string(),\n});\n\nexport const rpcSendTransferNewParamsSchema = z.object({\n account: z.number().optional(),\n recipients: z.array(transferRecipientParamSchema),\n network: z.string(),\n});\nexport type RpcSendTransferParams = z.infer<typeof rpcSendTransferNewParamsSchema>;\n\nexport const rpcSendTransferParamsSchema = z.union([\n rpcSendTransferLegacyParamSchema,\n rpcSendTransferNewParamsSchema,\n]);\n\nexport const sendTransfer = defineRpcEndpoint({\n method: 'sendTransfer',\n params: rpcSendTransferParamsSchema,\n result: z.object({\n txid: z.string(),\n }),\n});\n","// See JSON RPC specification\n// https://www.jsonrpc.org/specification\nimport { z } from 'zod';\n\nconst rpcParameterByPositionSchema = z.string().array();\nexport type RpcParameterByPosition = z.infer<typeof rpcParameterByPositionSchema>;\n\nconst rpcParameterByNameSchema = z.record(z.string(), z.unknown());\nexport type RpcParameterByName = z.infer<typeof rpcParameterByNameSchema>;\n\nexport const rpcParameterSchema = z.union([\n rpcParameterByPositionSchema,\n rpcParameterByNameSchema,\n z.undefined(),\n]);\nexport type RpcParameter = z.infer<typeof rpcParameterSchema>;\n\nexport const rpcBasePropsSchema = z.object({\n jsonrpc: z.literal('2.0'),\n id: z.string(),\n});\n\ntype BaseRpcRequestSchema = typeof rpcBasePropsSchema;\nexport type RpcBaseProps = z.infer<typeof rpcBasePropsSchema>;\n\n//\n// RPC Request\n// {\n// \"jsonrpc\": \"2.0\",\n// \"id\": \"123\",\n// \"method\": \"signPsbt\",\n// \"params\": { \"psbt\": \"dead…beef\" },\n// }\nexport function createRpcRequestSchema<TMethod extends string>(\n method: TMethod\n): z.ZodObject<\n z.objectUtil.extendShape<BaseRpcRequestSchema['shape'], { method: z.ZodLiteral<TMethod> }>\n>;\nexport function createRpcRequestSchema<TMethod extends string, TParam extends z.ZodTypeAny>(\n method: TMethod,\n paramsSchema: TParam\n): z.ZodObject<\n z.objectUtil.extendShape<\n BaseRpcRequestSchema['shape'],\n { method: z.ZodLiteral<TMethod>; params: TParam }\n >\n>;\nexport function createRpcRequestSchema<TMethod extends string, TParam extends z.ZodTypeAny>(\n method: TMethod,\n paramsSchema?: TParam\n) {\n // Unable to type this without the any, however the return type is corrects\n if (!paramsSchema) return rpcBasePropsSchema.extend({ method: z.literal(method) }) as any;\n\n return rpcBasePropsSchema.extend({\n method: z.literal(method),\n params: paramsSchema,\n });\n}\n\n//\n// RPC Error Body\n\nexport enum RpcErrorCode {\n // Spec defined server errors\n PARSE_ERROR = -32700,\n INVALID_REQUEST = -32600,\n METHOD_NOT_FOUND = -32601,\n INVALID_PARAMS = -32602,\n INTERNAL_ERROR = -32603,\n SERVER_ERROR = -32000,\n // Client defined errors\n USER_REJECTION = 4001,\n METHOD_NOT_SUPPORTED = 4002,\n // gRPC spec borrowed\n PERMISSION_DENIED = 7,\n UNAUTHENTICATED = 16,\n}\nconst rpcErrorCodeSchema = z.nativeEnum(RpcErrorCode);\n\nexport function createRpcErrorBodySchema<TErrorData extends z.ZodTypeAny>(\n errorDataSchema: TErrorData\n) {\n return z.object({\n code: z.union([z.number(), rpcErrorCodeSchema]),\n message: z.string(),\n data: errorDataSchema.optional(),\n });\n}\n\ntype RpcErrorBodySchema<TErrorData extends RpcParameter = RpcParameter> = ReturnType<\n typeof createRpcErrorBodySchema<z.ZodType<TErrorData>>\n>;\n\nexport type RpcErrorBody<TErrorData extends RpcParameter = RpcParameter> = z.infer<\n RpcErrorBodySchema<TErrorData>\n>;\n\n//\n// RPC Error Response\nexport function createRpcErrorResponseSchema<\n TError extends z.ZodType<RpcErrorBody> = z.ZodType<RpcErrorBody>,\n>(errorSchema: TError) {\n return rpcBasePropsSchema.extend({ error: errorSchema });\n}\n\nexport const defaultErrorSchema = createRpcErrorBodySchema(z.any());\n\ntype RpcErrorResponseSchema<TError extends RpcErrorBody = RpcErrorBody> = ReturnType<\n typeof createRpcErrorResponseSchema<z.ZodType<TError>>\n>;\n\nexport type RpcErrorResponse<TError extends RpcErrorBody = RpcErrorBody> = z.infer<\n RpcErrorResponseSchema<TError>\n>;\n\n//\n// RPC Success Response\n// {\n// \"jsonrpc\": \"2.0\",\n// \"id\": \"123\",\n// \"result\": { \"signature\": \"dead…beef\" }\n// }\nexport function createRpcSuccessResponseSchema<TResult extends z.ZodType<object>>(\n resultSchema: TResult\n) {\n return rpcBasePropsSchema.extend({ result: resultSchema });\n}\n\nexport type RpcSuccessResponseSchema<TResult extends object> = ReturnType<\n typeof createRpcSuccessResponseSchema<z.ZodType<TResult>>\n>;\n\nexport type RpcSuccessResponse<TResult extends object> = z.infer<RpcSuccessResponseSchema<TResult>>;\n\nexport function createRpcResponseSchema<\n TResult extends z.ZodType<object>,\n TError extends z.ZodType<RpcErrorBody>,\n>(resultSchema: TResult, errorSchema: TError) {\n return z.union([\n createRpcSuccessResponseSchema<TResult>(resultSchema),\n createRpcErrorResponseSchema<TError>(errorSchema),\n ]);\n}\n\nexport type ExtractSuccessResponse<T> = Extract<T, { result: any }>;\n\nexport type ExtractErrorResponse<T> = Extract<T, { error: any }>;\n\nexport type RpcRequest<T extends { request: z.ZodType }> = z.infer<T['request']>;\nexport type RpcParams<T extends { params: z.ZodType }> = z.infer<T['params']>;\n\nexport type RpcResponse<T extends { response: z.ZodType }> = z.infer<T['response']>;\nexport type RpcResult<T extends { result: z.ZodType }> = z.infer<T['result']>;\n\nexport function defineRpcEndpoint<\n Method extends string,\n Result extends z.ZodTypeAny,\n Error extends z.ZodType<RpcErrorBody>,\n>(props: {\n method: Method;\n result: Result;\n error?: Error;\n}): {\n method: Method;\n result: Result;\n error: Error;\n request: ReturnType<typeof createRpcRequestSchema<Method>>;\n response: ReturnType<typeof createRpcResponseSchema<Result, Error>>;\n};\nexport function defineRpcEndpoint<\n Method extends string,\n Result extends z.ZodTypeAny,\n Error extends z.ZodType<RpcErrorBody>,\n Params extends z.ZodTypeAny,\n>(props: {\n method: Method;\n params: Params;\n result: Result;\n error?: Error;\n}): {\n method: Method;\n params: Params;\n result: Result;\n error: Error;\n request: ReturnType<typeof createRpcRequestSchema<Method, Params>>;\n response: ReturnType<typeof createRpcResponseSchema<Result, Error>>;\n};\nexport function defineRpcEndpoint<\n Method extends string,\n Result extends z.ZodTypeAny,\n Error extends z.ZodType<RpcErrorBody>,\n Params extends z.ZodTypeAny,\n>(\n props:\n | { method: Method; params: Params; result: Result; error?: Error }\n | { method: Method; result: Result; error?: Error }\n):\n | {\n method: Method;\n params: Params;\n result: Result;\n error: Error;\n request: ReturnType<typeof createRpcRequestSchema<Method, Params>>;\n response: ReturnType<typeof createRpcResponseSchema<Result, Error>>;\n }\n | {\n method: Method;\n result: Result;\n error: Error;\n request: ReturnType<typeof createRpcRequestSchema<Method>>;\n response: ReturnType<typeof createRpcResponseSchema<Result, Error>>;\n } {\n const error = (props.error ?? defaultErrorSchema) as Error;\n\n if ('params' in props) {\n return {\n method: props.method,\n params: props.params,\n result: props.result,\n error,\n request: createRpcRequestSchema(props.method, props.params),\n response: createRpcResponseSchema(props.result, error),\n };\n }\n return {\n method: props.method,\n result: props.result,\n error,\n request: createRpcRequestSchema(props.method),\n response: createRpcResponseSchema(props.result, error),\n };\n}\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\n// Implements BIP-322\n// https://github.com/bitcoin/bips/blob/master/bip-0322.mediawiki\nexport const Bip322MessageTypesSchema = z.enum(['legacy', 'bip322']);\nexport type Bip322MessageTypes = z.infer<typeof Bip322MessageTypesSchema>;\n\nconst supportedPaymentTypesSchema = z.enum(['p2tr', 'p2wpkh']);\n\nexport const signMessageRequestParamsSchema = z\n .object({\n type: Bip322MessageTypesSchema.optional(),\n account: z.number().optional(),\n message: z.string(),\n paymentType: supportedPaymentTypesSchema,\n })\n .passthrough();\n\nexport const signMessage = defineRpcEndpoint({\n method: 'signMessage',\n params: signMessageRequestParamsSchema,\n result: z\n .object({\n signature: z.string(),\n address: z.string(),\n })\n .passthrough(),\n});\n","import { z } from 'zod';\n\nimport { testIsNumberOrArrayOfNumbers } from '../../rpc/helpers';\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\n/**\n * DEFAULT -- all inputs, all outputs\n * ALL -- all inputs, all outputs\n * NONE -- all inputs, no outputs\n * SINGLE -- all inputs, one output of the same index\n * ALL + ANYONE -- one input, all outputs\n * NONE + ANYONE -- one input, no outputs\n * SINGLE -- one inputs, one output of the same index\n */\nexport const signatureHash = {\n DEFAULT: 0x00,\n ALL: 0x01,\n NONE: 0x02,\n SINGLE: 0x03,\n ALL_ANYONECANPAY: 0x81,\n NONE_ANYONECANPAY: 0x82,\n SINGLE_ANYONECANPAY: 0x83,\n} as const;\n\nconst signPsbtRequestParamsSchema = z.object({\n account: z.number().optional(),\n allowedSighash: z.array(z.any()).optional(),\n broadcast: z.boolean().optional(),\n hex: z.string(),\n network: z.string().optional(),\n signAtIndex: z\n .union([z.number(), z.array(z.number())])\n .optional()\n .refine(testIsNumberOrArrayOfNumbers),\n});\n\nconst signPsbtResponseBodySchema = z.object({\n hex: z.string(),\n txid: z.string().optional(),\n});\n\nexport const signPsbt = defineRpcEndpoint({\n method: 'signPsbt',\n params: signPsbtRequestParamsSchema,\n result: signPsbtResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { isNumberOrNumberList, isUndefined } from '@leather.io/utils';\n\nexport function testIsNumberOrArrayOfNumbers(value: unknown) {\n if (isUndefined(value)) return true;\n return isNumberOrNumberList(value);\n}\n\nexport function encodeBase64Json(payload: Record<any, unknown>) {\n const jsonString = JSON.stringify(payload);\n return btoa(jsonString);\n}\n\nexport function decodeBase64Json(encodedPayload: string): unknown {\n const jsonString = atob(encodedPayload);\n return JSON.parse(jsonString);\n}\n\nexport function createRequestEncoder<T extends z.ZodTypeAny>(schema: T) {\n function encode(request: z.infer<T>) {\n return encodeBase64Json(schema.parse(request));\n }\n\n function decode(encodedRequest: string): z.infer<T> {\n const parsedJson = decodeBase64Json(encodedRequest);\n return schema.parse(parsedJson);\n }\n\n return { encode, decode };\n}\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../rpc/schemas';\n\nexport const bitcoinPaymentTypesSchema = z.enum(['p2pkh', 'p2sh', 'p2wpkh-p2sh', 'p2wpkh', 'p2tr']);\nexport type BitcoinPaymentTypes = z.infer<typeof bitcoinPaymentTypesSchema>;\n\n/** @deprecated use `BitcoinPaymentTypes` */\nexport type PaymentTypes = BitcoinPaymentTypes;\n\n//\n// Bitcoin\nexport const btcAddressBaseSchema = z.object({\n symbol: z.literal('BTC'),\n type: bitcoinPaymentTypesSchema,\n address: z.string(),\n publicKey: z.string(),\n derivationPath: z.string(),\n});\n\nexport type BtcAddressBase = z.infer<typeof btcAddressBaseSchema>;\n\nconst nativeSegwitAddressSchema = btcAddressBaseSchema\n .extend({\n type: z.literal('p2wpkh'),\n })\n .passthrough();\n\nexport type NativeSegwitAddress = z.infer<typeof nativeSegwitAddressSchema>;\n\nconst taprootAddressSchema = btcAddressBaseSchema\n .extend({\n type: z.literal('p2tr'),\n tweakedPublicKey: z.string(),\n })\n .passthrough();\n\nexport type TaprootAddress = z.infer<typeof taprootAddressSchema>;\n\nexport const btcAddressSchema = z.discriminatedUnion('type', [\n nativeSegwitAddressSchema,\n taprootAddressSchema,\n]);\n\nexport type BtcAddress = z.infer<typeof btcAddressSchema>;\n\n//\n// Stacks\nexport const stxAddressSchema = z\n .object({\n symbol: z.literal('STX'),\n address: z.string(),\n publicKey: z.string(),\n })\n .passthrough();\n\nexport type StxAddress = z.infer<typeof stxAddressSchema>;\n\nexport const addressSchema = z.union([btcAddressSchema, stxAddressSchema]);\n\nexport type Address = z.infer<typeof addressSchema>;\n\n//\n// Combined addresses response\nexport const addressResponseBodySchema = z\n .object({ addresses: z.array(addressSchema) })\n .passthrough();\n\nexport const getAddresses = defineRpcEndpoint({\n method: 'getAddresses',\n params: z.object({ network: z.string().optional() }).optional(),\n result: addressResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../rpc/schemas';\n\nconst getInfoResponseBodySchema = z.object({\n version: z.string(),\n supportedMethods: z.array(z.string()).optional(),\n platform: z.union([z.literal('mobile'), z.literal('extension')]),\n});\n\nexport const getInfo = defineRpcEndpoint({\n method: 'getInfo',\n result: getInfoResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../rpc/schemas';\n\nexport const open = defineRpcEndpoint({\n method: 'open',\n params: z.object({ mode: z.enum(['fullpage', 'popup']) }).default({ mode: 'popup' }),\n result: z.object({ success: z.literal(true) }),\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../rpc/schemas';\n\nconst openSwapRequestParamsSchema = z.object({\n base: z.string(),\n quote: z.string(),\n});\n\nconst openSwapResponseBodySchema = z.object({\n message: z.string(),\n});\n\nexport const openSwap = defineRpcEndpoint({\n method: 'openSwap',\n params: openSwapRequestParamsSchema,\n result: openSwapResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\nimport {\n baseStacksTransactionConfigSchema,\n stacksTransactionDetailsSchema,\n} from './_stacks-helpers';\n\nexport const stxCallContract = defineRpcEndpoint({\n method: 'stx_callContract',\n params: z.intersection(\n z.object({\n contract: z.string(),\n functionName: z.string(),\n functionArgs: z.array(z.string()).optional(),\n }),\n baseStacksTransactionConfigSchema\n ),\n result: stacksTransactionDetailsSchema,\n});\n","import { z } from 'zod';\n\nexport const stacksTransactionDetailsSchema = z.object({\n txid: z.string(),\n transaction: z.string(),\n});\n\nexport const baseStacksTransactionConfigSchema = z.object({\n address: z.string().optional(),\n network: z\n .union([\n z.literal('mainnet'),\n z.literal('testnet'),\n z.literal('regtest'),\n z.literal('devnet'),\n z.literal('mocknet'),\n z.string(),\n ])\n .optional(),\n fee: z.coerce.number().optional(),\n nonce: z.coerce.number().optional(),\n // add pc later when imported from stacks.js\n postConditions: z.array(z.string()).optional(),\n postConditionMode: z.union([z.literal('allow'), z.literal('deny')]).optional(),\n sponsored: z.boolean().optional(),\n});\n\nexport type BaseStacksTransactionRpcParams = z.infer<typeof baseStacksTransactionConfigSchema>;\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\nimport {\n baseStacksTransactionConfigSchema,\n stacksTransactionDetailsSchema,\n} from './_stacks-helpers';\n\nexport const stxDeployContractResponseBodySchema = stacksTransactionDetailsSchema;\n\nexport const stxDeployContract = defineRpcEndpoint({\n method: 'stx_deployContract',\n params: z.intersection(\n z.object({\n name: z.string(),\n clarityCode: z.string(),\n clarityVersion: z.coerce.number().optional(),\n }),\n baseStacksTransactionConfigSchema\n ),\n result: stxDeployContractResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\nexport const stxAddressItemSchema = z.object({\n address: z.string(),\n publicKey: z.string(),\n derivationPath: z.string(),\n});\n\nexport const stxGetAddressesResponseBodySchema = z.array(stxAddressItemSchema);\n\nexport const stxGetAddresses = defineRpcEndpoint({\n method: 'stx_getAddresses',\n params: z.object({ network: z.string().optional() }).optional(),\n result: stxGetAddressesResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\nexport const stxGetNetworks = defineRpcEndpoint({\n method: 'stx_getNetworks',\n result: z.object({\n active: z.string(),\n networks: z.array(\n z\n .object({\n id: z.string(),\n chainId: z.string(),\n transactionVersion: z.string(),\n })\n .passthrough()\n ),\n }),\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\n// Request\nexport const stxSignMessageTypeSchema = z.enum(['utf8', 'structured']);\nexport type StxSignMessageTypes = z.infer<typeof stxSignMessageTypeSchema>;\n\nexport const stxSignMessageRequestBaseSchema = z.object({\n messageType: stxSignMessageTypeSchema.optional().default('utf8'),\n network: z.optional(z.enum(['mainnet', 'testnet', 'devnet', 'mocknet'])),\n});\nexport type StxSignMessageRequestParamsBase = z.infer<typeof stxSignMessageRequestBaseSchema>;\n\nexport const stxSignMessageRequestUtf8Schema = stxSignMessageRequestBaseSchema.merge(\n z.object({\n messageType: z.literal('utf8').default('utf8'),\n message: z.string(),\n })\n);\nexport type StxSignMessageRequestParamsUtf8 = z.infer<typeof stxSignMessageRequestUtf8Schema>;\n\nexport const stxSignMessageRequestStructuredSchema = stxSignMessageRequestBaseSchema.merge(\n z.object({\n messageType: z.literal('structured'),\n domain: z.string(),\n message: z.string(),\n })\n);\nexport type StxSignMessageRequestParamsStructured = z.infer<\n typeof stxSignMessageRequestStructuredSchema\n>;\n\nexport const stxSignMessage = defineRpcEndpoint({\n method: 'stx_signMessage',\n params: z.union([stxSignMessageRequestUtf8Schema, stxSignMessageRequestStructuredSchema]),\n result: z.object({\n signature: z.string(),\n publicKey: z.string(),\n }),\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\nexport const stxSignStructuredMessage = defineRpcEndpoint({\n method: 'stx_signStructuredMessage',\n params: z.object({\n domain: z.string(),\n message: z.string(),\n }),\n result: z.object({\n signature: z.string(),\n publicKey: z.string(),\n }),\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\n// Leather's RPC params prior to SIP-30\n// Developers should be warned away from this structure\nexport const stxSignTransactionRequestLeatherRpcParamsSchema = z.object({\n txHex: z.string(),\n stxAddress: z.string().optional(),\n attachment: z.string().optional(),\n accountIndex: z.string().optional(),\n network: z.string().optional(),\n});\n\n// SIP-30 params\nexport const stxSignTransactionRequestSip30ParamsSchema = z.object({\n transaction: z.string(),\n network: z.string().optional(),\n});\n\nexport const stxSignTransaction = defineRpcEndpoint({\n method: 'stx_signTransaction',\n params: z.union([\n stxSignTransactionRequestLeatherRpcParamsSchema,\n stxSignTransactionRequestSip30ParamsSchema,\n ]),\n result: z.object({\n transaction: z.string(),\n txHex: z.string(),\n }),\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\nimport { stacksTransactionDetailsSchema } from './_stacks-helpers';\n\nexport const stxTransferSip9Nft = defineRpcEndpoint({\n method: 'stx_transferSip9Nft',\n params: z\n .object({\n recipient: z.string(),\n asset: z.string(),\n assetId: z.string(),\n })\n .passthrough(),\n result: stacksTransactionDetailsSchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\nimport { stacksTransactionDetailsSchema } from './_stacks-helpers';\n\nexport const stxTransferSip10Ft = defineRpcEndpoint({\n method: 'stx_transferSip10Ft',\n params: z\n .object({\n recipient: z.string(),\n asset: z.string(),\n amount: z.coerce.number(),\n })\n .passthrough(),\n result: stacksTransactionDetailsSchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\nimport { stacksTransactionDetailsSchema } from './_stacks-helpers';\n\nexport const stxTransferStx = defineRpcEndpoint({\n method: 'stx_transferStx',\n params: z\n .object({\n recipient: z.string(),\n amount: z.coerce.number().int('Amount must be an integer describing µSTX'),\n memo: z.string().optional(),\n })\n .passthrough(),\n result: stacksTransactionDetailsSchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\nimport { stacksTransactionDetailsSchema } from './_stacks-helpers';\n\n// Request\nexport const stxUpdateProfileRequestParamsSchema = z.object({\n // schema.org/Person\n person: z.object({}).passthrough(),\n});\n\nexport const stxUpdateProfileResponseBodySchema = stacksTransactionDetailsSchema;\n\nexport const stxUpdateProfile = defineRpcEndpoint({\n method: 'stx_updateProfile',\n params: stxUpdateProfileRequestParamsSchema,\n result: stxUpdateProfileResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../rpc/schemas';\n\nexport const supportedMethodSchema = z.object({\n name: z.string(),\n docsUrl: z.union([z.string(), z.array(z.string())]),\n});\n\nexport const supportedMethods = defineRpcEndpoint({\n method: 'supportedMethods',\n result: z.object({\n documentation: z.string(),\n methods: z.array(supportedMethodSchema),\n }),\n});\n","import {\n BufferCV,\n ClarityType,\n ClarityValue,\n ContractIdString,\n ContractPrincipalCV,\n FalseCV,\n IntCV,\n NoneCV,\n ResponseErrorCV,\n ResponseOkCV,\n SomeCV,\n StandardPrincipalCV,\n StringAsciiCV,\n StringUtf8CV,\n TrueCV,\n UIntCV,\n} from '@stacks/transactions';\nimport { z } from 'zod';\n\n// Clarity values\nexport const cvIntSchema: z.ZodType<IntCV> = z.object({\n type: z.literal('int') as z.ZodLiteral<ClarityType.Int>,\n value: z.coerce.string(),\n});\n\nexport const cvUintSchema: z.ZodType<UIntCV> = z.object({\n type: z.literal('uint') as z.ZodLiteral<ClarityType.UInt>,\n value: z.coerce.string(),\n});\n\nexport const cvBufferSchema: z.ZodType<BufferCV> = z.object({\n type: z.literal('buffer') as z.ZodLiteral<ClarityType.Buffer>,\n value: z.string(),\n});\n\nexport const cvTrueSchema: z.ZodType<TrueCV> = z.object({\n type: z.literal('true') as z.ZodLiteral<ClarityType.BoolTrue>,\n});\n\nexport const cvFalseSchema: z.ZodType<FalseCV> = z.object({\n type: z.literal('false') as z.ZodLiteral<ClarityType.BoolFalse>,\n});\n\nexport const cvAddressSchema: z.ZodType<StandardPrincipalCV> = z.object({\n type: z.literal('address') as z.ZodLiteral<ClarityType.PrincipalStandard>,\n value: z.string(),\n});\n\nexport const cvContractSchema: z.ZodType<ContractPrincipalCV> = z.object({\n type: z.literal('contract') as z.ZodLiteral<ClarityType.PrincipalContract>,\n value: z.string().refine(value => value.includes('.'), {\n message: 'Stacks contract principals are denoted with a dot',\n }) as z.ZodType<ContractIdString>,\n});\n\nexport const cvAsciiSchema: z.ZodType<StringAsciiCV> = z.object({\n type: z.literal('ascii') as z.ZodLiteral<ClarityType.StringASCII>,\n value: z.string(),\n});\n\nexport const cvUtf8Schema: z.ZodType<StringUtf8CV> = z.object({\n type: z.literal('utf8') as z.ZodLiteral<ClarityType.StringUTF8>,\n value: z.string(),\n});\n\nexport const cvOkSchema: z.ZodType<ResponseOkCV> = z\n .object({\n type: z.literal('ok') as z.ZodLiteral<ClarityType.ResponseOk>,\n value: z.lazy(() => clarityValueSchema),\n })\n .transform(value => value as ResponseOkCV);\n\nexport const cvErrSchema: z.ZodType<ResponseErrorCV> = z.object({\n type: z.literal('err') as z.ZodLiteral<ClarityType.ResponseErr>,\n value: z.lazy(() => clarityValueSchema),\n});\n\nexport const cvNoneSchema: z.ZodType<NoneCV> = z.object({\n type: z.literal('none') as z.ZodLiteral<ClarityType.OptionalNone>,\n});\n\nexport const cvSomeSchema: z.ZodType<SomeCV> = z.object({\n type: z.literal('some') as z.ZodLiteral<ClarityType.OptionalSome>,\n value: z.lazy(() => clarityValueSchema),\n});\n\nexport const cvListSchema = z.object({\n type: z.literal('list') as z.ZodLiteral<ClarityType.List>,\n value: z.array(z.lazy(() => clarityValueSchema)),\n});\n\nexport const cvTupleSchema = z.object({\n type: z.literal('tuple') as z.ZodLiteral<ClarityType.Tuple>,\n value: z.record(z.lazy(() => clarityValueSchema)),\n});\n\nexport const clarityValueSchema: z.ZodType<ClarityValue> = z.union([\n cvIntSchema,\n cvUintSchema,\n cvBufferSchema,\n cvTrueSchema,\n cvFalseSchema,\n cvAddressSchema,\n cvContractSchema,\n cvOkSchema,\n cvErrSchema,\n cvNoneSchema,\n cvSomeSchema,\n cvListSchema,\n cvTupleSchema,\n cvAsciiSchema,\n cvUtf8Schema,\n]);\n"],"mappings":"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","names":["import_zod","RpcErrorCode","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","endpoint"]}
package/dist/index.d.cts CHANGED
@@ -1447,7 +1447,7 @@ declare const getAddresses: {
1447
1447
  }>]>;
1448
1448
  };
1449
1449
 
1450
- declare const sendTransferLegacyParamSchema: z.ZodObject<{
1450
+ declare const rpcSendTransferLegacyParamSchema: z.ZodObject<{
1451
1451
  account: z.ZodOptional<z.ZodNumber>;
1452
1452
  address: z.ZodString;
1453
1453
  amount: z.ZodString;
@@ -1463,8 +1463,8 @@ declare const sendTransferLegacyParamSchema: z.ZodObject<{
1463
1463
  amount: string;
1464
1464
  account?: number | undefined;
1465
1465
  }>;
1466
- type RpcSendTransferLegacyParams = z.infer<typeof sendTransferLegacyParamSchema>;
1467
- declare const rpcSendTransferParamsSchema: z.ZodObject<{
1466
+ type RpcSendTransferLegacyParams = z.infer<typeof rpcSendTransferLegacyParamSchema>;
1467
+ declare const rpcSendTransferNewParamsSchema: z.ZodObject<{
1468
1468
  account: z.ZodOptional<z.ZodNumber>;
1469
1469
  recipients: z.ZodArray<z.ZodObject<{
1470
1470
  address: z.ZodString;
@@ -1492,7 +1492,50 @@ declare const rpcSendTransferParamsSchema: z.ZodObject<{
1492
1492
  }[];
1493
1493
  account?: number | undefined;
1494
1494
  }>;
1495
- type RpcSendTransferParams = z.infer<typeof rpcSendTransferParamsSchema>;
1495
+ type RpcSendTransferParams = z.infer<typeof rpcSendTransferNewParamsSchema>;
1496
+ declare const rpcSendTransferParamsSchema: z.ZodUnion<[z.ZodObject<{
1497
+ account: z.ZodOptional<z.ZodNumber>;
1498
+ address: z.ZodString;
1499
+ amount: z.ZodString;
1500
+ network: z.ZodString;
1501
+ }, "strip", z.ZodTypeAny, {
1502
+ network: string;
1503
+ address: string;
1504
+ amount: string;
1505
+ account?: number | undefined;
1506
+ }, {
1507
+ network: string;
1508
+ address: string;
1509
+ amount: string;
1510
+ account?: number | undefined;
1511
+ }>, z.ZodObject<{
1512
+ account: z.ZodOptional<z.ZodNumber>;
1513
+ recipients: z.ZodArray<z.ZodObject<{
1514
+ address: z.ZodString;
1515
+ amount: z.ZodString;
1516
+ }, "strip", z.ZodTypeAny, {
1517
+ address: string;
1518
+ amount: string;
1519
+ }, {
1520
+ address: string;
1521
+ amount: string;
1522
+ }>, "many">;
1523
+ network: z.ZodString;
1524
+ }, "strip", z.ZodTypeAny, {
1525
+ network: string;
1526
+ recipients: {
1527
+ address: string;
1528
+ amount: string;
1529
+ }[];
1530
+ account?: number | undefined;
1531
+ }, {
1532
+ network: string;
1533
+ recipients: {
1534
+ address: string;
1535
+ amount: string;
1536
+ }[];
1537
+ account?: number | undefined;
1538
+ }>]>;
1496
1539
  declare const sendTransfer: {
1497
1540
  method: "sendTransfer";
1498
1541
  params: z.ZodUnion<[z.ZodObject<{
@@ -7135,4 +7178,4 @@ declare function createRpcSuccessResponse<T extends RpcMethodNames>(_method: T,
7135
7178
  declare function createRpcErrorResponse<T extends RpcMethodNames>(_method: T, error: Omit<ExtractErrorResponse<RpcEndpointMap[T]['response']>, 'jsonrpc'>): RpcEndpointMap[T]["response"];
7136
7179
  declare function parseEndpointRequest(data: unknown): RpcRequests | undefined;
7137
7180
 
7138
- export { type Address, type BaseStacksTransactionRpcParams, type Bip322MessageTypes, Bip322MessageTypesSchema, type BitcoinPaymentTypes, type BtcAddress, type BtcAddressBase, type ExtractErrorResponse, type ExtractSuccessResponse, type LeatherProvider, type LeatherRpcMethodMap, type ListenFn, type NativeSegwitAddress, type PaymentTypes, type RequestFn, type RpcBaseProps, type RpcEndpointMap, type RpcErrorBody, RpcErrorCode, type RpcErrorResponse, type RpcMethodNames, type RpcParameter, type RpcParameterByName, type RpcParameterByPosition, type RpcParams, type RpcRequest, type RpcRequests, type RpcResponse, type RpcResponses, type RpcResult, type RpcSendTransferLegacyParams, type RpcSendTransferParams, type RpcSuccessResponse, type RpcSuccessResponseSchema, type StxAddress, type StxSignMessageRequestParamsBase, type StxSignMessageRequestParamsStructured, type StxSignMessageRequestParamsUtf8, type StxSignMessageTypes, type TaprootAddress, addressResponseBodySchema, addressSchema, baseStacksTransactionConfigSchema, bitcoinPaymentTypesSchema, btcAddressBaseSchema, btcAddressSchema, clarityValueSchema, createRequestEncoder, createRpcErrorBodySchema, createRpcErrorResponse, createRpcErrorResponseSchema, createRpcRequestSchema, createRpcResponseSchema, createRpcSuccessResponse, createRpcSuccessResponseSchema, cvAddressSchema, cvAsciiSchema, cvBufferSchema, cvContractSchema, cvErrSchema, cvFalseSchema, cvIntSchema, cvListSchema, cvNoneSchema, cvOkSchema, cvSomeSchema, cvTrueSchema, cvTupleSchema, cvUintSchema, cvUtf8Schema, decodeBase64Json, defaultErrorSchema, defineRpcEndpoint, encodeBase64Json, endpoints, getAddresses, getInfo, open, openSwap, parseEndpointRequest, rpcBasePropsSchema, rpcParameterSchema, sendTransfer, signMessage, signMessageRequestParamsSchema, signPsbt, signatureHash, stacksTransactionDetailsSchema, stxAddressItemSchema, stxAddressSchema, stxCallContract, stxDeployContract, stxDeployContractResponseBodySchema, stxGetAddresses, stxGetAddressesResponseBodySchema, stxSignMessage, stxSignMessageRequestBaseSchema, stxSignMessageRequestStructuredSchema, stxSignMessageRequestUtf8Schema, stxSignMessageTypeSchema, stxSignStructuredMessage, stxSignTransaction, stxSignTransactionRequestLeatherRpcParamsSchema, stxSignTransactionRequestSip30ParamsSchema, stxTransferSip10Ft, stxTransferSip9Nft, stxTransferStx, stxUpdateProfile, stxUpdateProfileRequestParamsSchema, stxUpdateProfileResponseBodySchema, supportedMethodSchema, supportedMethods, testIsNumberOrArrayOfNumbers };
7181
+ export { type Address, type BaseStacksTransactionRpcParams, type Bip322MessageTypes, Bip322MessageTypesSchema, type BitcoinPaymentTypes, type BtcAddress, type BtcAddressBase, type ExtractErrorResponse, type ExtractSuccessResponse, type LeatherProvider, type LeatherRpcMethodMap, type ListenFn, type NativeSegwitAddress, type PaymentTypes, type RequestFn, type RpcBaseProps, type RpcEndpointMap, type RpcErrorBody, RpcErrorCode, type RpcErrorResponse, type RpcMethodNames, type RpcParameter, type RpcParameterByName, type RpcParameterByPosition, type RpcParams, type RpcRequest, type RpcRequests, type RpcResponse, type RpcResponses, type RpcResult, type RpcSendTransferLegacyParams, type RpcSendTransferParams, type RpcSuccessResponse, type RpcSuccessResponseSchema, type StxAddress, type StxSignMessageRequestParamsBase, type StxSignMessageRequestParamsStructured, type StxSignMessageRequestParamsUtf8, type StxSignMessageTypes, type TaprootAddress, addressResponseBodySchema, addressSchema, baseStacksTransactionConfigSchema, bitcoinPaymentTypesSchema, btcAddressBaseSchema, btcAddressSchema, clarityValueSchema, createRequestEncoder, createRpcErrorBodySchema, createRpcErrorResponse, createRpcErrorResponseSchema, createRpcRequestSchema, createRpcResponseSchema, createRpcSuccessResponse, createRpcSuccessResponseSchema, cvAddressSchema, cvAsciiSchema, cvBufferSchema, cvContractSchema, cvErrSchema, cvFalseSchema, cvIntSchema, cvListSchema, cvNoneSchema, cvOkSchema, cvSomeSchema, cvTrueSchema, cvTupleSchema, cvUintSchema, cvUtf8Schema, decodeBase64Json, defaultErrorSchema, defineRpcEndpoint, encodeBase64Json, endpoints, getAddresses, getInfo, open, openSwap, parseEndpointRequest, rpcBasePropsSchema, rpcParameterSchema, rpcSendTransferLegacyParamSchema, rpcSendTransferNewParamsSchema, rpcSendTransferParamsSchema, sendTransfer, signMessage, signMessageRequestParamsSchema, signPsbt, signatureHash, stacksTransactionDetailsSchema, stxAddressItemSchema, stxAddressSchema, stxCallContract, stxDeployContract, stxDeployContractResponseBodySchema, stxGetAddresses, stxGetAddressesResponseBodySchema, stxSignMessage, stxSignMessageRequestBaseSchema, stxSignMessageRequestStructuredSchema, stxSignMessageRequestUtf8Schema, stxSignMessageTypeSchema, stxSignStructuredMessage, stxSignTransaction, stxSignTransactionRequestLeatherRpcParamsSchema, stxSignTransactionRequestSip30ParamsSchema, stxTransferSip10Ft, stxTransferSip9Nft, stxTransferStx, stxUpdateProfile, stxUpdateProfileRequestParamsSchema, stxUpdateProfileResponseBodySchema, supportedMethodSchema, supportedMethods, testIsNumberOrArrayOfNumbers };
package/dist/index.d.ts CHANGED
@@ -1447,7 +1447,7 @@ declare const getAddresses: {
1447
1447
  }>]>;
1448
1448
  };
1449
1449
 
1450
- declare const sendTransferLegacyParamSchema: z.ZodObject<{
1450
+ declare const rpcSendTransferLegacyParamSchema: z.ZodObject<{
1451
1451
  account: z.ZodOptional<z.ZodNumber>;
1452
1452
  address: z.ZodString;
1453
1453
  amount: z.ZodString;
@@ -1463,8 +1463,8 @@ declare const sendTransferLegacyParamSchema: z.ZodObject<{
1463
1463
  amount: string;
1464
1464
  account?: number | undefined;
1465
1465
  }>;
1466
- type RpcSendTransferLegacyParams = z.infer<typeof sendTransferLegacyParamSchema>;
1467
- declare const rpcSendTransferParamsSchema: z.ZodObject<{
1466
+ type RpcSendTransferLegacyParams = z.infer<typeof rpcSendTransferLegacyParamSchema>;
1467
+ declare const rpcSendTransferNewParamsSchema: z.ZodObject<{
1468
1468
  account: z.ZodOptional<z.ZodNumber>;
1469
1469
  recipients: z.ZodArray<z.ZodObject<{
1470
1470
  address: z.ZodString;
@@ -1492,7 +1492,50 @@ declare const rpcSendTransferParamsSchema: z.ZodObject<{
1492
1492
  }[];
1493
1493
  account?: number | undefined;
1494
1494
  }>;
1495
- type RpcSendTransferParams = z.infer<typeof rpcSendTransferParamsSchema>;
1495
+ type RpcSendTransferParams = z.infer<typeof rpcSendTransferNewParamsSchema>;
1496
+ declare const rpcSendTransferParamsSchema: z.ZodUnion<[z.ZodObject<{
1497
+ account: z.ZodOptional<z.ZodNumber>;
1498
+ address: z.ZodString;
1499
+ amount: z.ZodString;
1500
+ network: z.ZodString;
1501
+ }, "strip", z.ZodTypeAny, {
1502
+ network: string;
1503
+ address: string;
1504
+ amount: string;
1505
+ account?: number | undefined;
1506
+ }, {
1507
+ network: string;
1508
+ address: string;
1509
+ amount: string;
1510
+ account?: number | undefined;
1511
+ }>, z.ZodObject<{
1512
+ account: z.ZodOptional<z.ZodNumber>;
1513
+ recipients: z.ZodArray<z.ZodObject<{
1514
+ address: z.ZodString;
1515
+ amount: z.ZodString;
1516
+ }, "strip", z.ZodTypeAny, {
1517
+ address: string;
1518
+ amount: string;
1519
+ }, {
1520
+ address: string;
1521
+ amount: string;
1522
+ }>, "many">;
1523
+ network: z.ZodString;
1524
+ }, "strip", z.ZodTypeAny, {
1525
+ network: string;
1526
+ recipients: {
1527
+ address: string;
1528
+ amount: string;
1529
+ }[];
1530
+ account?: number | undefined;
1531
+ }, {
1532
+ network: string;
1533
+ recipients: {
1534
+ address: string;
1535
+ amount: string;
1536
+ }[];
1537
+ account?: number | undefined;
1538
+ }>]>;
1496
1539
  declare const sendTransfer: {
1497
1540
  method: "sendTransfer";
1498
1541
  params: z.ZodUnion<[z.ZodObject<{
@@ -7135,4 +7178,4 @@ declare function createRpcSuccessResponse<T extends RpcMethodNames>(_method: T,
7135
7178
  declare function createRpcErrorResponse<T extends RpcMethodNames>(_method: T, error: Omit<ExtractErrorResponse<RpcEndpointMap[T]['response']>, 'jsonrpc'>): RpcEndpointMap[T]["response"];
7136
7179
  declare function parseEndpointRequest(data: unknown): RpcRequests | undefined;
7137
7180
 
7138
- export { type Address, type BaseStacksTransactionRpcParams, type Bip322MessageTypes, Bip322MessageTypesSchema, type BitcoinPaymentTypes, type BtcAddress, type BtcAddressBase, type ExtractErrorResponse, type ExtractSuccessResponse, type LeatherProvider, type LeatherRpcMethodMap, type ListenFn, type NativeSegwitAddress, type PaymentTypes, type RequestFn, type RpcBaseProps, type RpcEndpointMap, type RpcErrorBody, RpcErrorCode, type RpcErrorResponse, type RpcMethodNames, type RpcParameter, type RpcParameterByName, type RpcParameterByPosition, type RpcParams, type RpcRequest, type RpcRequests, type RpcResponse, type RpcResponses, type RpcResult, type RpcSendTransferLegacyParams, type RpcSendTransferParams, type RpcSuccessResponse, type RpcSuccessResponseSchema, type StxAddress, type StxSignMessageRequestParamsBase, type StxSignMessageRequestParamsStructured, type StxSignMessageRequestParamsUtf8, type StxSignMessageTypes, type TaprootAddress, addressResponseBodySchema, addressSchema, baseStacksTransactionConfigSchema, bitcoinPaymentTypesSchema, btcAddressBaseSchema, btcAddressSchema, clarityValueSchema, createRequestEncoder, createRpcErrorBodySchema, createRpcErrorResponse, createRpcErrorResponseSchema, createRpcRequestSchema, createRpcResponseSchema, createRpcSuccessResponse, createRpcSuccessResponseSchema, cvAddressSchema, cvAsciiSchema, cvBufferSchema, cvContractSchema, cvErrSchema, cvFalseSchema, cvIntSchema, cvListSchema, cvNoneSchema, cvOkSchema, cvSomeSchema, cvTrueSchema, cvTupleSchema, cvUintSchema, cvUtf8Schema, decodeBase64Json, defaultErrorSchema, defineRpcEndpoint, encodeBase64Json, endpoints, getAddresses, getInfo, open, openSwap, parseEndpointRequest, rpcBasePropsSchema, rpcParameterSchema, sendTransfer, signMessage, signMessageRequestParamsSchema, signPsbt, signatureHash, stacksTransactionDetailsSchema, stxAddressItemSchema, stxAddressSchema, stxCallContract, stxDeployContract, stxDeployContractResponseBodySchema, stxGetAddresses, stxGetAddressesResponseBodySchema, stxSignMessage, stxSignMessageRequestBaseSchema, stxSignMessageRequestStructuredSchema, stxSignMessageRequestUtf8Schema, stxSignMessageTypeSchema, stxSignStructuredMessage, stxSignTransaction, stxSignTransactionRequestLeatherRpcParamsSchema, stxSignTransactionRequestSip30ParamsSchema, stxTransferSip10Ft, stxTransferSip9Nft, stxTransferStx, stxUpdateProfile, stxUpdateProfileRequestParamsSchema, stxUpdateProfileResponseBodySchema, supportedMethodSchema, supportedMethods, testIsNumberOrArrayOfNumbers };
7181
+ export { type Address, type BaseStacksTransactionRpcParams, type Bip322MessageTypes, Bip322MessageTypesSchema, type BitcoinPaymentTypes, type BtcAddress, type BtcAddressBase, type ExtractErrorResponse, type ExtractSuccessResponse, type LeatherProvider, type LeatherRpcMethodMap, type ListenFn, type NativeSegwitAddress, type PaymentTypes, type RequestFn, type RpcBaseProps, type RpcEndpointMap, type RpcErrorBody, RpcErrorCode, type RpcErrorResponse, type RpcMethodNames, type RpcParameter, type RpcParameterByName, type RpcParameterByPosition, type RpcParams, type RpcRequest, type RpcRequests, type RpcResponse, type RpcResponses, type RpcResult, type RpcSendTransferLegacyParams, type RpcSendTransferParams, type RpcSuccessResponse, type RpcSuccessResponseSchema, type StxAddress, type StxSignMessageRequestParamsBase, type StxSignMessageRequestParamsStructured, type StxSignMessageRequestParamsUtf8, type StxSignMessageTypes, type TaprootAddress, addressResponseBodySchema, addressSchema, baseStacksTransactionConfigSchema, bitcoinPaymentTypesSchema, btcAddressBaseSchema, btcAddressSchema, clarityValueSchema, createRequestEncoder, createRpcErrorBodySchema, createRpcErrorResponse, createRpcErrorResponseSchema, createRpcRequestSchema, createRpcResponseSchema, createRpcSuccessResponse, createRpcSuccessResponseSchema, cvAddressSchema, cvAsciiSchema, cvBufferSchema, cvContractSchema, cvErrSchema, cvFalseSchema, cvIntSchema, cvListSchema, cvNoneSchema, cvOkSchema, cvSomeSchema, cvTrueSchema, cvTupleSchema, cvUintSchema, cvUtf8Schema, decodeBase64Json, defaultErrorSchema, defineRpcEndpoint, encodeBase64Json, endpoints, getAddresses, getInfo, open, openSwap, parseEndpointRequest, rpcBasePropsSchema, rpcParameterSchema, rpcSendTransferLegacyParamSchema, rpcSendTransferNewParamsSchema, rpcSendTransferParamsSchema, sendTransfer, signMessage, signMessageRequestParamsSchema, signPsbt, signatureHash, stacksTransactionDetailsSchema, stxAddressItemSchema, stxAddressSchema, stxCallContract, stxDeployContract, stxDeployContractResponseBodySchema, stxGetAddresses, stxGetAddressesResponseBodySchema, stxSignMessage, stxSignMessageRequestBaseSchema, stxSignMessageRequestStructuredSchema, stxSignMessageRequestUtf8Schema, stxSignMessageTypeSchema, stxSignStructuredMessage, stxSignTransaction, stxSignTransactionRequestLeatherRpcParamsSchema, stxSignTransactionRequestSip30ParamsSchema, stxTransferSip10Ft, stxTransferSip9Nft, stxTransferStx, stxUpdateProfile, stxUpdateProfileRequestParamsSchema, stxUpdateProfileResponseBodySchema, supportedMethodSchema, supportedMethods, testIsNumberOrArrayOfNumbers };
package/dist/index.js CHANGED
@@ -77,7 +77,7 @@ function defineRpcEndpoint(props) {
77
77
  }
78
78
 
79
79
  // src/methods/bitcoin/send-transfer.ts
80
- var sendTransferLegacyParamSchema = z2.object({
80
+ var rpcSendTransferLegacyParamSchema = z2.object({
81
81
  account: z2.number().optional(),
82
82
  address: z2.string(),
83
83
  amount: z2.coerce.string(),
@@ -87,14 +87,18 @@ var transferRecipientParamSchema = z2.object({
87
87
  address: z2.string(),
88
88
  amount: z2.coerce.string()
89
89
  });
90
- var rpcSendTransferParamsSchema = z2.object({
90
+ var rpcSendTransferNewParamsSchema = z2.object({
91
91
  account: z2.number().optional(),
92
92
  recipients: z2.array(transferRecipientParamSchema),
93
93
  network: z2.string()
94
94
  });
95
+ var rpcSendTransferParamsSchema = z2.union([
96
+ rpcSendTransferLegacyParamSchema,
97
+ rpcSendTransferNewParamsSchema
98
+ ]);
95
99
  var sendTransfer = defineRpcEndpoint({
96
100
  method: "sendTransfer",
97
- params: z2.union([sendTransferLegacyParamSchema, rpcSendTransferParamsSchema]),
101
+ params: rpcSendTransferParamsSchema,
98
102
  result: z2.object({
99
103
  txid: z2.string()
100
104
  })
@@ -619,6 +623,9 @@ export {
619
623
  parseEndpointRequest,
620
624
  rpcBasePropsSchema,
621
625
  rpcParameterSchema,
626
+ rpcSendTransferLegacyParamSchema,
627
+ rpcSendTransferNewParamsSchema,
628
+ rpcSendTransferParamsSchema,
622
629
  sendTransfer,
623
630
  signMessage,
624
631
  signMessageRequestParamsSchema,
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/methods/bitcoin/send-transfer.ts","../src/rpc/schemas.ts","../src/methods/bitcoin/sign-message.ts","../src/methods/bitcoin/sign-psbt.ts","../src/rpc/helpers.ts","../src/methods/get-addresses.ts","../src/methods/get-info.ts","../src/methods/open.ts","../src/methods/open-swap.ts","../src/methods/stacks/stx-call-contract.ts","../src/methods/stacks/_stacks-helpers.ts","../src/methods/stacks/stx-deploy-contract.ts","../src/methods/stacks/stx-get-addresses.ts","../src/methods/stacks/stx-get-networks.ts","../src/methods/stacks/stx-sign-message.ts","../src/methods/stacks/stx-sign-structured-message.ts","../src/methods/stacks/stx-sign-transaction.ts","../src/methods/stacks/stx-transfer-sip9-nft.ts","../src/methods/stacks/stx-transfer-sip10-ft.ts","../src/methods/stacks/stx-transfer-stx.ts","../src/methods/stacks/stx-update-profile.ts","../src/methods/supported-methods.ts","../src/methods/stacks/_clarity-values.ts","../src/index.ts"],"sourcesContent":["import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\nconst sendTransferLegacyParamSchema = z.object({\n account: z.number().optional(),\n address: z.string(),\n amount: z.coerce.string(),\n network: z.string(),\n});\nexport type RpcSendTransferLegacyParams = z.infer<typeof sendTransferLegacyParamSchema>;\n\nconst transferRecipientParamSchema = z.object({\n address: z.string(),\n amount: z.coerce.string(),\n});\n\nconst rpcSendTransferParamsSchema = z.object({\n account: z.number().optional(),\n recipients: z.array(transferRecipientParamSchema),\n network: z.string(),\n});\nexport type RpcSendTransferParams = z.infer<typeof rpcSendTransferParamsSchema>;\n\nexport const sendTransfer = defineRpcEndpoint({\n method: 'sendTransfer',\n params: z.union([sendTransferLegacyParamSchema, rpcSendTransferParamsSchema]),\n result: z.object({\n txid: z.string(),\n }),\n});\n","// See JSON RPC specification\n// https://www.jsonrpc.org/specification\nimport { z } from 'zod';\n\nconst rpcParameterByPositionSchema = z.string().array();\nexport type RpcParameterByPosition = z.infer<typeof rpcParameterByPositionSchema>;\n\nconst rpcParameterByNameSchema = z.record(z.string(), z.unknown());\nexport type RpcParameterByName = z.infer<typeof rpcParameterByNameSchema>;\n\nexport const rpcParameterSchema = z.union([\n rpcParameterByPositionSchema,\n rpcParameterByNameSchema,\n z.undefined(),\n]);\nexport type RpcParameter = z.infer<typeof rpcParameterSchema>;\n\nexport const rpcBasePropsSchema = z.object({\n jsonrpc: z.literal('2.0'),\n id: z.string(),\n});\n\ntype BaseRpcRequestSchema = typeof rpcBasePropsSchema;\nexport type RpcBaseProps = z.infer<typeof rpcBasePropsSchema>;\n\n//\n// RPC Request\n// {\n// \"jsonrpc\": \"2.0\",\n// \"id\": \"123\",\n// \"method\": \"signPsbt\",\n// \"params\": { \"psbt\": \"dead…beef\" },\n// }\nexport function createRpcRequestSchema<TMethod extends string>(\n method: TMethod\n): z.ZodObject<\n z.objectUtil.extendShape<BaseRpcRequestSchema['shape'], { method: z.ZodLiteral<TMethod> }>\n>;\nexport function createRpcRequestSchema<TMethod extends string, TParam extends z.ZodTypeAny>(\n method: TMethod,\n paramsSchema: TParam\n): z.ZodObject<\n z.objectUtil.extendShape<\n BaseRpcRequestSchema['shape'],\n { method: z.ZodLiteral<TMethod>; params: TParam }\n >\n>;\nexport function createRpcRequestSchema<TMethod extends string, TParam extends z.ZodTypeAny>(\n method: TMethod,\n paramsSchema?: TParam\n) {\n // Unable to type this without the any, however the return type is corrects\n if (!paramsSchema) return rpcBasePropsSchema.extend({ method: z.literal(method) }) as any;\n\n return rpcBasePropsSchema.extend({\n method: z.literal(method),\n params: paramsSchema,\n });\n}\n\n//\n// RPC Error Body\n\nexport enum RpcErrorCode {\n // Spec defined server errors\n PARSE_ERROR = -32700,\n INVALID_REQUEST = -32600,\n METHOD_NOT_FOUND = -32601,\n INVALID_PARAMS = -32602,\n INTERNAL_ERROR = -32603,\n SERVER_ERROR = -32000,\n // Client defined errors\n USER_REJECTION = 4001,\n METHOD_NOT_SUPPORTED = 4002,\n // gRPC spec borrowed\n PERMISSION_DENIED = 7,\n UNAUTHENTICATED = 16,\n}\nconst rpcErrorCodeSchema = z.nativeEnum(RpcErrorCode);\n\nexport function createRpcErrorBodySchema<TErrorData extends z.ZodTypeAny>(\n errorDataSchema: TErrorData\n) {\n return z.object({\n code: z.union([z.number(), rpcErrorCodeSchema]),\n message: z.string(),\n data: errorDataSchema.optional(),\n });\n}\n\ntype RpcErrorBodySchema<TErrorData extends RpcParameter = RpcParameter> = ReturnType<\n typeof createRpcErrorBodySchema<z.ZodType<TErrorData>>\n>;\n\nexport type RpcErrorBody<TErrorData extends RpcParameter = RpcParameter> = z.infer<\n RpcErrorBodySchema<TErrorData>\n>;\n\n//\n// RPC Error Response\nexport function createRpcErrorResponseSchema<\n TError extends z.ZodType<RpcErrorBody> = z.ZodType<RpcErrorBody>,\n>(errorSchema: TError) {\n return rpcBasePropsSchema.extend({ error: errorSchema });\n}\n\nexport const defaultErrorSchema = createRpcErrorBodySchema(z.any());\n\ntype RpcErrorResponseSchema<TError extends RpcErrorBody = RpcErrorBody> = ReturnType<\n typeof createRpcErrorResponseSchema<z.ZodType<TError>>\n>;\n\nexport type RpcErrorResponse<TError extends RpcErrorBody = RpcErrorBody> = z.infer<\n RpcErrorResponseSchema<TError>\n>;\n\n//\n// RPC Success Response\n// {\n// \"jsonrpc\": \"2.0\",\n// \"id\": \"123\",\n// \"result\": { \"signature\": \"dead…beef\" }\n// }\nexport function createRpcSuccessResponseSchema<TResult extends z.ZodType<object>>(\n resultSchema: TResult\n) {\n return rpcBasePropsSchema.extend({ result: resultSchema });\n}\n\nexport type RpcSuccessResponseSchema<TResult extends object> = ReturnType<\n typeof createRpcSuccessResponseSchema<z.ZodType<TResult>>\n>;\n\nexport type RpcSuccessResponse<TResult extends object> = z.infer<RpcSuccessResponseSchema<TResult>>;\n\nexport function createRpcResponseSchema<\n TResult extends z.ZodType<object>,\n TError extends z.ZodType<RpcErrorBody>,\n>(resultSchema: TResult, errorSchema: TError) {\n return z.union([\n createRpcSuccessResponseSchema<TResult>(resultSchema),\n createRpcErrorResponseSchema<TError>(errorSchema),\n ]);\n}\n\nexport type ExtractSuccessResponse<T> = Extract<T, { result: any }>;\n\nexport type ExtractErrorResponse<T> = Extract<T, { error: any }>;\n\nexport type RpcRequest<T extends { request: z.ZodType }> = z.infer<T['request']>;\nexport type RpcParams<T extends { params: z.ZodType }> = z.infer<T['params']>;\n\nexport type RpcResponse<T extends { response: z.ZodType }> = z.infer<T['response']>;\nexport type RpcResult<T extends { result: z.ZodType }> = z.infer<T['result']>;\n\nexport function defineRpcEndpoint<\n Method extends string,\n Result extends z.ZodTypeAny,\n Error extends z.ZodType<RpcErrorBody>,\n>(props: {\n method: Method;\n result: Result;\n error?: Error;\n}): {\n method: Method;\n result: Result;\n error: Error;\n request: ReturnType<typeof createRpcRequestSchema<Method>>;\n response: ReturnType<typeof createRpcResponseSchema<Result, Error>>;\n};\nexport function defineRpcEndpoint<\n Method extends string,\n Result extends z.ZodTypeAny,\n Error extends z.ZodType<RpcErrorBody>,\n Params extends z.ZodTypeAny,\n>(props: {\n method: Method;\n params: Params;\n result: Result;\n error?: Error;\n}): {\n method: Method;\n params: Params;\n result: Result;\n error: Error;\n request: ReturnType<typeof createRpcRequestSchema<Method, Params>>;\n response: ReturnType<typeof createRpcResponseSchema<Result, Error>>;\n};\nexport function defineRpcEndpoint<\n Method extends string,\n Result extends z.ZodTypeAny,\n Error extends z.ZodType<RpcErrorBody>,\n Params extends z.ZodTypeAny,\n>(\n props:\n | { method: Method; params: Params; result: Result; error?: Error }\n | { method: Method; result: Result; error?: Error }\n):\n | {\n method: Method;\n params: Params;\n result: Result;\n error: Error;\n request: ReturnType<typeof createRpcRequestSchema<Method, Params>>;\n response: ReturnType<typeof createRpcResponseSchema<Result, Error>>;\n }\n | {\n method: Method;\n result: Result;\n error: Error;\n request: ReturnType<typeof createRpcRequestSchema<Method>>;\n response: ReturnType<typeof createRpcResponseSchema<Result, Error>>;\n } {\n const error = (props.error ?? defaultErrorSchema) as Error;\n\n if ('params' in props) {\n return {\n method: props.method,\n params: props.params,\n result: props.result,\n error,\n request: createRpcRequestSchema(props.method, props.params),\n response: createRpcResponseSchema(props.result, error),\n };\n }\n return {\n method: props.method,\n result: props.result,\n error,\n request: createRpcRequestSchema(props.method),\n response: createRpcResponseSchema(props.result, error),\n };\n}\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\n// Implements BIP-322\n// https://github.com/bitcoin/bips/blob/master/bip-0322.mediawiki\nexport const Bip322MessageTypesSchema = z.enum(['legacy', 'bip322']);\nexport type Bip322MessageTypes = z.infer<typeof Bip322MessageTypesSchema>;\n\nconst supportedPaymentTypesSchema = z.enum(['p2tr', 'p2wpkh']);\n\nexport const signMessageRequestParamsSchema = z\n .object({\n type: Bip322MessageTypesSchema.optional(),\n account: z.number().optional(),\n message: z.string(),\n paymentType: supportedPaymentTypesSchema,\n })\n .passthrough();\n\nexport const signMessage = defineRpcEndpoint({\n method: 'signMessage',\n params: signMessageRequestParamsSchema,\n result: z\n .object({\n signature: z.string(),\n address: z.string(),\n })\n .passthrough(),\n});\n","import { z } from 'zod';\n\nimport { testIsNumberOrArrayOfNumbers } from '../../rpc/helpers';\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\n/**\n * DEFAULT -- all inputs, all outputs\n * ALL -- all inputs, all outputs\n * NONE -- all inputs, no outputs\n * SINGLE -- all inputs, one output of the same index\n * ALL + ANYONE -- one input, all outputs\n * NONE + ANYONE -- one input, no outputs\n * SINGLE -- one inputs, one output of the same index\n */\nexport const signatureHash = {\n DEFAULT: 0x00,\n ALL: 0x01,\n NONE: 0x02,\n SINGLE: 0x03,\n ALL_ANYONECANPAY: 0x81,\n NONE_ANYONECANPAY: 0x82,\n SINGLE_ANYONECANPAY: 0x83,\n} as const;\n\nconst signPsbtRequestParamsSchema = z.object({\n account: z.number().optional(),\n allowedSighash: z.array(z.any()).optional(),\n broadcast: z.boolean().optional(),\n hex: z.string(),\n network: z.string().optional(),\n signAtIndex: z\n .union([z.number(), z.array(z.number())])\n .optional()\n .refine(testIsNumberOrArrayOfNumbers),\n});\n\nconst signPsbtResponseBodySchema = z.object({\n hex: z.string(),\n txid: z.string().optional(),\n});\n\nexport const signPsbt = defineRpcEndpoint({\n method: 'signPsbt',\n params: signPsbtRequestParamsSchema,\n result: signPsbtResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { isNumberOrNumberList, isUndefined } from '@leather.io/utils';\n\nexport function testIsNumberOrArrayOfNumbers(value: unknown) {\n if (isUndefined(value)) return true;\n return isNumberOrNumberList(value);\n}\n\nexport function encodeBase64Json(payload: Record<any, unknown>) {\n const jsonString = JSON.stringify(payload);\n return btoa(jsonString);\n}\n\nexport function decodeBase64Json(encodedPayload: string): unknown {\n const jsonString = atob(encodedPayload);\n return JSON.parse(jsonString);\n}\n\nexport function createRequestEncoder<T extends z.ZodTypeAny>(schema: T) {\n function encode(request: z.infer<T>) {\n return encodeBase64Json(schema.parse(request));\n }\n\n function decode(encodedRequest: string): z.infer<T> {\n const parsedJson = decodeBase64Json(encodedRequest);\n return schema.parse(parsedJson);\n }\n\n return { encode, decode };\n}\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../rpc/schemas';\n\nexport const bitcoinPaymentTypesSchema = z.enum(['p2pkh', 'p2sh', 'p2wpkh-p2sh', 'p2wpkh', 'p2tr']);\nexport type BitcoinPaymentTypes = z.infer<typeof bitcoinPaymentTypesSchema>;\n\n/** @deprecated use `BitcoinPaymentTypes` */\nexport type PaymentTypes = BitcoinPaymentTypes;\n\n//\n// Bitcoin\nexport const btcAddressBaseSchema = z.object({\n symbol: z.literal('BTC'),\n type: bitcoinPaymentTypesSchema,\n address: z.string(),\n publicKey: z.string(),\n derivationPath: z.string(),\n});\n\nexport type BtcAddressBase = z.infer<typeof btcAddressBaseSchema>;\n\nconst nativeSegwitAddressSchema = btcAddressBaseSchema\n .extend({\n type: z.literal('p2wpkh'),\n })\n .passthrough();\n\nexport type NativeSegwitAddress = z.infer<typeof nativeSegwitAddressSchema>;\n\nconst taprootAddressSchema = btcAddressBaseSchema\n .extend({\n type: z.literal('p2tr'),\n tweakedPublicKey: z.string(),\n })\n .passthrough();\n\nexport type TaprootAddress = z.infer<typeof taprootAddressSchema>;\n\nexport const btcAddressSchema = z.discriminatedUnion('type', [\n nativeSegwitAddressSchema,\n taprootAddressSchema,\n]);\n\nexport type BtcAddress = z.infer<typeof btcAddressSchema>;\n\n//\n// Stacks\nexport const stxAddressSchema = z\n .object({\n symbol: z.literal('STX'),\n address: z.string(),\n publicKey: z.string(),\n })\n .passthrough();\n\nexport type StxAddress = z.infer<typeof stxAddressSchema>;\n\nexport const addressSchema = z.union([btcAddressSchema, stxAddressSchema]);\n\nexport type Address = z.infer<typeof addressSchema>;\n\n//\n// Combined addresses response\nexport const addressResponseBodySchema = z\n .object({ addresses: z.array(addressSchema) })\n .passthrough();\n\nexport const getAddresses = defineRpcEndpoint({\n method: 'getAddresses',\n params: z.object({ network: z.string().optional() }).optional(),\n result: addressResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../rpc/schemas';\n\nconst getInfoResponseBodySchema = z.object({\n version: z.string(),\n supportedMethods: z.array(z.string()).optional(),\n platform: z.union([z.literal('mobile'), z.literal('extension')]),\n});\n\nexport const getInfo = defineRpcEndpoint({\n method: 'getInfo',\n result: getInfoResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../rpc/schemas';\n\nexport const open = defineRpcEndpoint({\n method: 'open',\n params: z.object({ mode: z.enum(['fullpage', 'popup']) }).default({ mode: 'popup' }),\n result: z.object({ success: z.literal(true) }),\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../rpc/schemas';\n\nconst openSwapRequestParamsSchema = z.object({\n base: z.string(),\n quote: z.string(),\n});\n\nconst openSwapResponseBodySchema = z.object({\n message: z.string(),\n});\n\nexport const openSwap = defineRpcEndpoint({\n method: 'openSwap',\n params: openSwapRequestParamsSchema,\n result: openSwapResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\nimport {\n baseStacksTransactionConfigSchema,\n stacksTransactionDetailsSchema,\n} from './_stacks-helpers';\n\nexport const stxCallContract = defineRpcEndpoint({\n method: 'stx_callContract',\n params: z.intersection(\n z.object({\n contract: z.string(),\n functionName: z.string(),\n functionArgs: z.array(z.string()).optional(),\n }),\n baseStacksTransactionConfigSchema\n ),\n result: stacksTransactionDetailsSchema,\n});\n","import { z } from 'zod';\n\nexport const stacksTransactionDetailsSchema = z.object({\n txid: z.string(),\n transaction: z.string(),\n});\n\nexport const baseStacksTransactionConfigSchema = z.object({\n address: z.string().optional(),\n network: z\n .union([\n z.literal('mainnet'),\n z.literal('testnet'),\n z.literal('regtest'),\n z.literal('devnet'),\n z.literal('mocknet'),\n z.string(),\n ])\n .optional(),\n fee: z.coerce.number().optional(),\n nonce: z.coerce.number().optional(),\n // add pc later when imported from stacks.js\n postConditions: z.array(z.string()).optional(),\n postConditionMode: z.union([z.literal('allow'), z.literal('deny')]).optional(),\n sponsored: z.boolean().optional(),\n});\n\nexport type BaseStacksTransactionRpcParams = z.infer<typeof baseStacksTransactionConfigSchema>;\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\nimport {\n baseStacksTransactionConfigSchema,\n stacksTransactionDetailsSchema,\n} from './_stacks-helpers';\n\nexport const stxDeployContractResponseBodySchema = stacksTransactionDetailsSchema;\n\nexport const stxDeployContract = defineRpcEndpoint({\n method: 'stx_deployContract',\n params: z.intersection(\n z.object({\n name: z.string(),\n clarityCode: z.string(),\n clarityVersion: z.coerce.number().optional(),\n }),\n baseStacksTransactionConfigSchema\n ),\n result: stxDeployContractResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\nexport const stxAddressItemSchema = z.object({\n address: z.string(),\n publicKey: z.string(),\n derivationPath: z.string(),\n});\n\nexport const stxGetAddressesResponseBodySchema = z.array(stxAddressItemSchema);\n\nexport const stxGetAddresses = defineRpcEndpoint({\n method: 'stx_getAddresses',\n params: z.object({ network: z.string().optional() }).optional(),\n result: stxGetAddressesResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\nexport const stxGetNetworks = defineRpcEndpoint({\n method: 'stx_getNetworks',\n result: z.object({\n active: z.string(),\n networks: z.array(\n z\n .object({\n id: z.string(),\n chainId: z.string(),\n transactionVersion: z.string(),\n })\n .passthrough()\n ),\n }),\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\n// Request\nexport const stxSignMessageTypeSchema = z.enum(['utf8', 'structured']);\nexport type StxSignMessageTypes = z.infer<typeof stxSignMessageTypeSchema>;\n\nexport const stxSignMessageRequestBaseSchema = z.object({\n messageType: stxSignMessageTypeSchema.optional().default('utf8'),\n network: z.optional(z.enum(['mainnet', 'testnet', 'devnet', 'mocknet'])),\n});\nexport type StxSignMessageRequestParamsBase = z.infer<typeof stxSignMessageRequestBaseSchema>;\n\nexport const stxSignMessageRequestUtf8Schema = stxSignMessageRequestBaseSchema.merge(\n z.object({\n messageType: z.literal('utf8').default('utf8'),\n message: z.string(),\n })\n);\nexport type StxSignMessageRequestParamsUtf8 = z.infer<typeof stxSignMessageRequestUtf8Schema>;\n\nexport const stxSignMessageRequestStructuredSchema = stxSignMessageRequestBaseSchema.merge(\n z.object({\n messageType: z.literal('structured'),\n domain: z.string(),\n message: z.string(),\n })\n);\nexport type StxSignMessageRequestParamsStructured = z.infer<\n typeof stxSignMessageRequestStructuredSchema\n>;\n\nexport const stxSignMessage = defineRpcEndpoint({\n method: 'stx_signMessage',\n params: z.union([stxSignMessageRequestUtf8Schema, stxSignMessageRequestStructuredSchema]),\n result: z.object({\n signature: z.string(),\n publicKey: z.string(),\n }),\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\nexport const stxSignStructuredMessage = defineRpcEndpoint({\n method: 'stx_signStructuredMessage',\n params: z.object({\n domain: z.string(),\n message: z.string(),\n }),\n result: z.object({\n signature: z.string(),\n publicKey: z.string(),\n }),\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\n// Leather's RPC params prior to SIP-30\n// Developers should be warned away from this structure\nexport const stxSignTransactionRequestLeatherRpcParamsSchema = z.object({\n txHex: z.string(),\n stxAddress: z.string().optional(),\n attachment: z.string().optional(),\n accountIndex: z.string().optional(),\n network: z.string().optional(),\n});\n\n// SIP-30 params\nexport const stxSignTransactionRequestSip30ParamsSchema = z.object({\n transaction: z.string(),\n network: z.string().optional(),\n});\n\nexport const stxSignTransaction = defineRpcEndpoint({\n method: 'stx_signTransaction',\n params: z.union([\n stxSignTransactionRequestLeatherRpcParamsSchema,\n stxSignTransactionRequestSip30ParamsSchema,\n ]),\n result: z.object({\n transaction: z.string(),\n txHex: z.string(),\n }),\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\nimport { stacksTransactionDetailsSchema } from './_stacks-helpers';\n\nexport const stxTransferSip9Nft = defineRpcEndpoint({\n method: 'stx_transferSip9Nft',\n params: z\n .object({\n recipient: z.string(),\n asset: z.string(),\n assetId: z.string(),\n })\n .passthrough(),\n result: stacksTransactionDetailsSchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\nimport { stacksTransactionDetailsSchema } from './_stacks-helpers';\n\nexport const stxTransferSip10Ft = defineRpcEndpoint({\n method: 'stx_transferSip10Ft',\n params: z\n .object({\n recipient: z.string(),\n asset: z.string(),\n amount: z.coerce.number(),\n })\n .passthrough(),\n result: stacksTransactionDetailsSchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\nimport { stacksTransactionDetailsSchema } from './_stacks-helpers';\n\nexport const stxTransferStx = defineRpcEndpoint({\n method: 'stx_transferStx',\n params: z\n .object({\n recipient: z.string(),\n amount: z.coerce.number().int('Amount must be an integer describing µSTX'),\n memo: z.string().optional(),\n })\n .passthrough(),\n result: stacksTransactionDetailsSchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\nimport { stacksTransactionDetailsSchema } from './_stacks-helpers';\n\n// Request\nexport const stxUpdateProfileRequestParamsSchema = z.object({\n // schema.org/Person\n person: z.object({}).passthrough(),\n});\n\nexport const stxUpdateProfileResponseBodySchema = stacksTransactionDetailsSchema;\n\nexport const stxUpdateProfile = defineRpcEndpoint({\n method: 'stx_updateProfile',\n params: stxUpdateProfileRequestParamsSchema,\n result: stxUpdateProfileResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../rpc/schemas';\n\nexport const supportedMethodSchema = z.object({\n name: z.string(),\n docsUrl: z.union([z.string(), z.array(z.string())]),\n});\n\nexport const supportedMethods = defineRpcEndpoint({\n method: 'supportedMethods',\n result: z.object({\n documentation: z.string(),\n methods: z.array(supportedMethodSchema),\n }),\n});\n","import {\n BufferCV,\n ClarityType,\n ClarityValue,\n ContractIdString,\n ContractPrincipalCV,\n FalseCV,\n IntCV,\n NoneCV,\n ResponseErrorCV,\n ResponseOkCV,\n SomeCV,\n StandardPrincipalCV,\n StringAsciiCV,\n StringUtf8CV,\n TrueCV,\n UIntCV,\n} from '@stacks/transactions';\nimport { z } from 'zod';\n\n// Clarity values\nexport const cvIntSchema: z.ZodType<IntCV> = z.object({\n type: z.literal('int') as z.ZodLiteral<ClarityType.Int>,\n value: z.coerce.string(),\n});\n\nexport const cvUintSchema: z.ZodType<UIntCV> = z.object({\n type: z.literal('uint') as z.ZodLiteral<ClarityType.UInt>,\n value: z.coerce.string(),\n});\n\nexport const cvBufferSchema: z.ZodType<BufferCV> = z.object({\n type: z.literal('buffer') as z.ZodLiteral<ClarityType.Buffer>,\n value: z.string(),\n});\n\nexport const cvTrueSchema: z.ZodType<TrueCV> = z.object({\n type: z.literal('true') as z.ZodLiteral<ClarityType.BoolTrue>,\n});\n\nexport const cvFalseSchema: z.ZodType<FalseCV> = z.object({\n type: z.literal('false') as z.ZodLiteral<ClarityType.BoolFalse>,\n});\n\nexport const cvAddressSchema: z.ZodType<StandardPrincipalCV> = z.object({\n type: z.literal('address') as z.ZodLiteral<ClarityType.PrincipalStandard>,\n value: z.string(),\n});\n\nexport const cvContractSchema: z.ZodType<ContractPrincipalCV> = z.object({\n type: z.literal('contract') as z.ZodLiteral<ClarityType.PrincipalContract>,\n value: z.string().refine(value => value.includes('.'), {\n message: 'Stacks contract principals are denoted with a dot',\n }) as z.ZodType<ContractIdString>,\n});\n\nexport const cvAsciiSchema: z.ZodType<StringAsciiCV> = z.object({\n type: z.literal('ascii') as z.ZodLiteral<ClarityType.StringASCII>,\n value: z.string(),\n});\n\nexport const cvUtf8Schema: z.ZodType<StringUtf8CV> = z.object({\n type: z.literal('utf8') as z.ZodLiteral<ClarityType.StringUTF8>,\n value: z.string(),\n});\n\nexport const cvOkSchema: z.ZodType<ResponseOkCV> = z\n .object({\n type: z.literal('ok') as z.ZodLiteral<ClarityType.ResponseOk>,\n value: z.lazy(() => clarityValueSchema),\n })\n .transform(value => value as ResponseOkCV);\n\nexport const cvErrSchema: z.ZodType<ResponseErrorCV> = z.object({\n type: z.literal('err') as z.ZodLiteral<ClarityType.ResponseErr>,\n value: z.lazy(() => clarityValueSchema),\n});\n\nexport const cvNoneSchema: z.ZodType<NoneCV> = z.object({\n type: z.literal('none') as z.ZodLiteral<ClarityType.OptionalNone>,\n});\n\nexport const cvSomeSchema: z.ZodType<SomeCV> = z.object({\n type: z.literal('some') as z.ZodLiteral<ClarityType.OptionalSome>,\n value: z.lazy(() => clarityValueSchema),\n});\n\nexport const cvListSchema = z.object({\n type: z.literal('list') as z.ZodLiteral<ClarityType.List>,\n value: z.array(z.lazy(() => clarityValueSchema)),\n});\n\nexport const cvTupleSchema = z.object({\n type: z.literal('tuple') as z.ZodLiteral<ClarityType.Tuple>,\n value: z.record(z.lazy(() => clarityValueSchema)),\n});\n\nexport const clarityValueSchema: z.ZodType<ClarityValue> = z.union([\n cvIntSchema,\n cvUintSchema,\n cvBufferSchema,\n cvTrueSchema,\n cvFalseSchema,\n cvAddressSchema,\n cvContractSchema,\n cvOkSchema,\n cvErrSchema,\n cvNoneSchema,\n cvSomeSchema,\n cvListSchema,\n cvTupleSchema,\n cvAsciiSchema,\n cvUtf8Schema,\n]);\n","import { z } from 'zod';\n\nimport { ValueOf } from '@leather.io/models';\n\nimport { sendTransfer } from './methods/bitcoin/send-transfer';\nimport { signMessage } from './methods/bitcoin/sign-message';\nimport { signPsbt } from './methods/bitcoin/sign-psbt';\nimport { getAddresses } from './methods/get-addresses';\nimport { getInfo } from './methods/get-info';\nimport { open } from './methods/open';\nimport { openSwap } from './methods/open-swap';\nimport { stxCallContract } from './methods/stacks/stx-call-contract';\nimport { stxDeployContract } from './methods/stacks/stx-deploy-contract';\nimport { stxGetAddresses } from './methods/stacks/stx-get-addresses';\nimport { stxGetNetworks } from './methods/stacks/stx-get-networks';\nimport { stxSignMessage } from './methods/stacks/stx-sign-message';\nimport { stxSignStructuredMessage } from './methods/stacks/stx-sign-structured-message';\nimport { stxSignTransaction } from './methods/stacks/stx-sign-transaction';\nimport { stxTransferSip9Nft } from './methods/stacks/stx-transfer-sip9-nft';\nimport { stxTransferSip10Ft } from './methods/stacks/stx-transfer-sip10-ft';\nimport { stxTransferStx } from './methods/stacks/stx-transfer-stx';\nimport { stxUpdateProfile } from './methods/stacks/stx-update-profile';\nimport { supportedMethods } from './methods/supported-methods';\nimport { ExtractErrorResponse, ExtractSuccessResponse } from './rpc/schemas';\n\nexport * from './rpc/schemas';\nexport * from './rpc/helpers';\nexport * from './methods/get-info';\nexport * from './methods/bitcoin/sign-psbt';\nexport * from './methods/get-addresses';\nexport * from './methods/bitcoin/send-transfer';\nexport * from './methods/bitcoin/sign-message';\nexport * from './methods/stacks/_clarity-values';\nexport * from './methods/stacks/_stacks-helpers';\nexport * from './methods/stacks/stx-sign-message';\nexport * from './methods/stacks/stx-sign-structured-message';\nexport * from './methods/stacks/stx-sign-transaction';\nexport * from './methods/stacks/stx-call-contract';\nexport * from './methods/stacks/stx-deploy-contract';\nexport * from './methods/stacks/stx-get-addresses';\nexport * from './methods/stacks/stx-transfer-sip9-nft';\nexport * from './methods/stacks/stx-transfer-sip10-ft';\nexport * from './methods/stacks/stx-transfer-stx';\nexport * from './methods/stacks/stx-update-profile';\nexport * from './methods/supported-methods';\nexport * from './methods/open';\nexport * from './methods/open-swap';\n\nexport const endpoints = {\n getAddresses,\n getInfo,\n open,\n openSwap,\n sendTransfer,\n signMessage,\n signPsbt,\n stxCallContract,\n stxDeployContract,\n stxGetAddresses,\n stxGetNetworks,\n stxSignMessage,\n stxSignStructuredMessage,\n stxSignTransaction,\n stxTransferSip10Ft,\n stxTransferSip9Nft,\n stxTransferStx,\n stxUpdateProfile,\n supportedMethods,\n} as const;\n\ntype EndpointMap = (typeof endpoints)[keyof typeof endpoints];\n\n/**\n * Request map keyed by exact method name e.g. `stx_signMessage`\n */\nexport type RpcEndpointMap = {\n [E in EndpointMap as E['method']]: {\n request: z.infer<E['request']>;\n response: z.infer<E['response']>;\n };\n};\n\n/** @deprecated */\nexport type LeatherRpcMethodMap = RpcEndpointMap;\n\nexport type RpcRequests = ValueOf<RpcEndpointMap>['request'];\n\nexport type RpcResponses = ValueOf<RpcEndpointMap>['response'];\n\nexport type RpcMethodNames = keyof RpcEndpointMap;\n\nexport interface RequestFn {\n <\n T extends RpcMethodNames,\n P extends RpcEndpointMap[T]['request'] extends { params?: infer P } ? P : never,\n >(\n arg: T,\n params: P\n // `Promise` throws if unsuccessful, so here we extract the successful response\n ): Promise<ExtractSuccessResponse<RpcEndpointMap[T]['response']>>;\n <T extends RpcMethodNames>(\n arg: T\n // `Promise` throws if unsuccessful, so here we extract the successful response\n ): Promise<ExtractSuccessResponse<RpcEndpointMap[T]['response']>>;\n}\n\nexport interface ListenFn {\n (method: string, callback: () => void): () => void;\n}\n\n/**\n * Leather's provider object set on webpage global `window` object. Set this as\n * a global type object in your project.\n *\n * @example\n * ```\n * declare global {\n * interface Window {\n * LeatherProvider?: LeatherProvider;\n * }\n * }\n * ```\n */\nexport interface LeatherProvider {\n /**\n * Request method. Takes a method name, and optional parameters\n * @returns Typed response for corresponding method\n */\n request: RequestFn;\n /**\n * Listen method. Takes an event name to listen for, and a callback function.\n * @returns An unsubscribe function\n */\n listen: ListenFn;\n}\n\n/**\n * Helper to create a successful RPC response object\n */\nexport function createRpcSuccessResponse<T extends RpcMethodNames>(\n _method: T,\n response: Omit<ExtractSuccessResponse<RpcEndpointMap[T]['response']>, 'jsonrpc'>\n) {\n return { jsonrpc: '2.0', ...response } as ExtractSuccessResponse<RpcEndpointMap[T]['response']>;\n}\n\n/**\n * Helper to create an error RPC response object\n */\nexport function createRpcErrorResponse<T extends RpcMethodNames>(\n _method: T,\n error: Omit<ExtractErrorResponse<RpcEndpointMap[T]['response']>, 'jsonrpc'>\n) {\n return { jsonrpc: '2.0', ...error } as RpcEndpointMap[T]['response'];\n}\n\nexport function parseEndpointRequest(data: unknown): RpcRequests | undefined {\n const endpointRequests = Object.values(endpoints).map(endpoint => endpoint.request);\n const endpoint = endpointRequests.find(req => req.safeParse(data).success);\n return endpoint?.safeParse(data).data;\n}\n"],"mappings":"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","names":["z","RpcErrorCode","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","endpoint"]}
1
+ {"version":3,"sources":["../src/methods/bitcoin/send-transfer.ts","../src/rpc/schemas.ts","../src/methods/bitcoin/sign-message.ts","../src/methods/bitcoin/sign-psbt.ts","../src/rpc/helpers.ts","../src/methods/get-addresses.ts","../src/methods/get-info.ts","../src/methods/open.ts","../src/methods/open-swap.ts","../src/methods/stacks/stx-call-contract.ts","../src/methods/stacks/_stacks-helpers.ts","../src/methods/stacks/stx-deploy-contract.ts","../src/methods/stacks/stx-get-addresses.ts","../src/methods/stacks/stx-get-networks.ts","../src/methods/stacks/stx-sign-message.ts","../src/methods/stacks/stx-sign-structured-message.ts","../src/methods/stacks/stx-sign-transaction.ts","../src/methods/stacks/stx-transfer-sip9-nft.ts","../src/methods/stacks/stx-transfer-sip10-ft.ts","../src/methods/stacks/stx-transfer-stx.ts","../src/methods/stacks/stx-update-profile.ts","../src/methods/supported-methods.ts","../src/methods/stacks/_clarity-values.ts","../src/index.ts"],"sourcesContent":["import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\nexport const rpcSendTransferLegacyParamSchema = z.object({\n account: z.number().optional(),\n address: z.string(),\n amount: z.coerce.string(),\n network: z.string(),\n});\nexport type RpcSendTransferLegacyParams = z.infer<typeof rpcSendTransferLegacyParamSchema>;\n\nconst transferRecipientParamSchema = z.object({\n address: z.string(),\n amount: z.coerce.string(),\n});\n\nexport const rpcSendTransferNewParamsSchema = z.object({\n account: z.number().optional(),\n recipients: z.array(transferRecipientParamSchema),\n network: z.string(),\n});\nexport type RpcSendTransferParams = z.infer<typeof rpcSendTransferNewParamsSchema>;\n\nexport const rpcSendTransferParamsSchema = z.union([\n rpcSendTransferLegacyParamSchema,\n rpcSendTransferNewParamsSchema,\n]);\n\nexport const sendTransfer = defineRpcEndpoint({\n method: 'sendTransfer',\n params: rpcSendTransferParamsSchema,\n result: z.object({\n txid: z.string(),\n }),\n});\n","// See JSON RPC specification\n// https://www.jsonrpc.org/specification\nimport { z } from 'zod';\n\nconst rpcParameterByPositionSchema = z.string().array();\nexport type RpcParameterByPosition = z.infer<typeof rpcParameterByPositionSchema>;\n\nconst rpcParameterByNameSchema = z.record(z.string(), z.unknown());\nexport type RpcParameterByName = z.infer<typeof rpcParameterByNameSchema>;\n\nexport const rpcParameterSchema = z.union([\n rpcParameterByPositionSchema,\n rpcParameterByNameSchema,\n z.undefined(),\n]);\nexport type RpcParameter = z.infer<typeof rpcParameterSchema>;\n\nexport const rpcBasePropsSchema = z.object({\n jsonrpc: z.literal('2.0'),\n id: z.string(),\n});\n\ntype BaseRpcRequestSchema = typeof rpcBasePropsSchema;\nexport type RpcBaseProps = z.infer<typeof rpcBasePropsSchema>;\n\n//\n// RPC Request\n// {\n// \"jsonrpc\": \"2.0\",\n// \"id\": \"123\",\n// \"method\": \"signPsbt\",\n// \"params\": { \"psbt\": \"dead…beef\" },\n// }\nexport function createRpcRequestSchema<TMethod extends string>(\n method: TMethod\n): z.ZodObject<\n z.objectUtil.extendShape<BaseRpcRequestSchema['shape'], { method: z.ZodLiteral<TMethod> }>\n>;\nexport function createRpcRequestSchema<TMethod extends string, TParam extends z.ZodTypeAny>(\n method: TMethod,\n paramsSchema: TParam\n): z.ZodObject<\n z.objectUtil.extendShape<\n BaseRpcRequestSchema['shape'],\n { method: z.ZodLiteral<TMethod>; params: TParam }\n >\n>;\nexport function createRpcRequestSchema<TMethod extends string, TParam extends z.ZodTypeAny>(\n method: TMethod,\n paramsSchema?: TParam\n) {\n // Unable to type this without the any, however the return type is corrects\n if (!paramsSchema) return rpcBasePropsSchema.extend({ method: z.literal(method) }) as any;\n\n return rpcBasePropsSchema.extend({\n method: z.literal(method),\n params: paramsSchema,\n });\n}\n\n//\n// RPC Error Body\n\nexport enum RpcErrorCode {\n // Spec defined server errors\n PARSE_ERROR = -32700,\n INVALID_REQUEST = -32600,\n METHOD_NOT_FOUND = -32601,\n INVALID_PARAMS = -32602,\n INTERNAL_ERROR = -32603,\n SERVER_ERROR = -32000,\n // Client defined errors\n USER_REJECTION = 4001,\n METHOD_NOT_SUPPORTED = 4002,\n // gRPC spec borrowed\n PERMISSION_DENIED = 7,\n UNAUTHENTICATED = 16,\n}\nconst rpcErrorCodeSchema = z.nativeEnum(RpcErrorCode);\n\nexport function createRpcErrorBodySchema<TErrorData extends z.ZodTypeAny>(\n errorDataSchema: TErrorData\n) {\n return z.object({\n code: z.union([z.number(), rpcErrorCodeSchema]),\n message: z.string(),\n data: errorDataSchema.optional(),\n });\n}\n\ntype RpcErrorBodySchema<TErrorData extends RpcParameter = RpcParameter> = ReturnType<\n typeof createRpcErrorBodySchema<z.ZodType<TErrorData>>\n>;\n\nexport type RpcErrorBody<TErrorData extends RpcParameter = RpcParameter> = z.infer<\n RpcErrorBodySchema<TErrorData>\n>;\n\n//\n// RPC Error Response\nexport function createRpcErrorResponseSchema<\n TError extends z.ZodType<RpcErrorBody> = z.ZodType<RpcErrorBody>,\n>(errorSchema: TError) {\n return rpcBasePropsSchema.extend({ error: errorSchema });\n}\n\nexport const defaultErrorSchema = createRpcErrorBodySchema(z.any());\n\ntype RpcErrorResponseSchema<TError extends RpcErrorBody = RpcErrorBody> = ReturnType<\n typeof createRpcErrorResponseSchema<z.ZodType<TError>>\n>;\n\nexport type RpcErrorResponse<TError extends RpcErrorBody = RpcErrorBody> = z.infer<\n RpcErrorResponseSchema<TError>\n>;\n\n//\n// RPC Success Response\n// {\n// \"jsonrpc\": \"2.0\",\n// \"id\": \"123\",\n// \"result\": { \"signature\": \"dead…beef\" }\n// }\nexport function createRpcSuccessResponseSchema<TResult extends z.ZodType<object>>(\n resultSchema: TResult\n) {\n return rpcBasePropsSchema.extend({ result: resultSchema });\n}\n\nexport type RpcSuccessResponseSchema<TResult extends object> = ReturnType<\n typeof createRpcSuccessResponseSchema<z.ZodType<TResult>>\n>;\n\nexport type RpcSuccessResponse<TResult extends object> = z.infer<RpcSuccessResponseSchema<TResult>>;\n\nexport function createRpcResponseSchema<\n TResult extends z.ZodType<object>,\n TError extends z.ZodType<RpcErrorBody>,\n>(resultSchema: TResult, errorSchema: TError) {\n return z.union([\n createRpcSuccessResponseSchema<TResult>(resultSchema),\n createRpcErrorResponseSchema<TError>(errorSchema),\n ]);\n}\n\nexport type ExtractSuccessResponse<T> = Extract<T, { result: any }>;\n\nexport type ExtractErrorResponse<T> = Extract<T, { error: any }>;\n\nexport type RpcRequest<T extends { request: z.ZodType }> = z.infer<T['request']>;\nexport type RpcParams<T extends { params: z.ZodType }> = z.infer<T['params']>;\n\nexport type RpcResponse<T extends { response: z.ZodType }> = z.infer<T['response']>;\nexport type RpcResult<T extends { result: z.ZodType }> = z.infer<T['result']>;\n\nexport function defineRpcEndpoint<\n Method extends string,\n Result extends z.ZodTypeAny,\n Error extends z.ZodType<RpcErrorBody>,\n>(props: {\n method: Method;\n result: Result;\n error?: Error;\n}): {\n method: Method;\n result: Result;\n error: Error;\n request: ReturnType<typeof createRpcRequestSchema<Method>>;\n response: ReturnType<typeof createRpcResponseSchema<Result, Error>>;\n};\nexport function defineRpcEndpoint<\n Method extends string,\n Result extends z.ZodTypeAny,\n Error extends z.ZodType<RpcErrorBody>,\n Params extends z.ZodTypeAny,\n>(props: {\n method: Method;\n params: Params;\n result: Result;\n error?: Error;\n}): {\n method: Method;\n params: Params;\n result: Result;\n error: Error;\n request: ReturnType<typeof createRpcRequestSchema<Method, Params>>;\n response: ReturnType<typeof createRpcResponseSchema<Result, Error>>;\n};\nexport function defineRpcEndpoint<\n Method extends string,\n Result extends z.ZodTypeAny,\n Error extends z.ZodType<RpcErrorBody>,\n Params extends z.ZodTypeAny,\n>(\n props:\n | { method: Method; params: Params; result: Result; error?: Error }\n | { method: Method; result: Result; error?: Error }\n):\n | {\n method: Method;\n params: Params;\n result: Result;\n error: Error;\n request: ReturnType<typeof createRpcRequestSchema<Method, Params>>;\n response: ReturnType<typeof createRpcResponseSchema<Result, Error>>;\n }\n | {\n method: Method;\n result: Result;\n error: Error;\n request: ReturnType<typeof createRpcRequestSchema<Method>>;\n response: ReturnType<typeof createRpcResponseSchema<Result, Error>>;\n } {\n const error = (props.error ?? defaultErrorSchema) as Error;\n\n if ('params' in props) {\n return {\n method: props.method,\n params: props.params,\n result: props.result,\n error,\n request: createRpcRequestSchema(props.method, props.params),\n response: createRpcResponseSchema(props.result, error),\n };\n }\n return {\n method: props.method,\n result: props.result,\n error,\n request: createRpcRequestSchema(props.method),\n response: createRpcResponseSchema(props.result, error),\n };\n}\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\n// Implements BIP-322\n// https://github.com/bitcoin/bips/blob/master/bip-0322.mediawiki\nexport const Bip322MessageTypesSchema = z.enum(['legacy', 'bip322']);\nexport type Bip322MessageTypes = z.infer<typeof Bip322MessageTypesSchema>;\n\nconst supportedPaymentTypesSchema = z.enum(['p2tr', 'p2wpkh']);\n\nexport const signMessageRequestParamsSchema = z\n .object({\n type: Bip322MessageTypesSchema.optional(),\n account: z.number().optional(),\n message: z.string(),\n paymentType: supportedPaymentTypesSchema,\n })\n .passthrough();\n\nexport const signMessage = defineRpcEndpoint({\n method: 'signMessage',\n params: signMessageRequestParamsSchema,\n result: z\n .object({\n signature: z.string(),\n address: z.string(),\n })\n .passthrough(),\n});\n","import { z } from 'zod';\n\nimport { testIsNumberOrArrayOfNumbers } from '../../rpc/helpers';\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\n/**\n * DEFAULT -- all inputs, all outputs\n * ALL -- all inputs, all outputs\n * NONE -- all inputs, no outputs\n * SINGLE -- all inputs, one output of the same index\n * ALL + ANYONE -- one input, all outputs\n * NONE + ANYONE -- one input, no outputs\n * SINGLE -- one inputs, one output of the same index\n */\nexport const signatureHash = {\n DEFAULT: 0x00,\n ALL: 0x01,\n NONE: 0x02,\n SINGLE: 0x03,\n ALL_ANYONECANPAY: 0x81,\n NONE_ANYONECANPAY: 0x82,\n SINGLE_ANYONECANPAY: 0x83,\n} as const;\n\nconst signPsbtRequestParamsSchema = z.object({\n account: z.number().optional(),\n allowedSighash: z.array(z.any()).optional(),\n broadcast: z.boolean().optional(),\n hex: z.string(),\n network: z.string().optional(),\n signAtIndex: z\n .union([z.number(), z.array(z.number())])\n .optional()\n .refine(testIsNumberOrArrayOfNumbers),\n});\n\nconst signPsbtResponseBodySchema = z.object({\n hex: z.string(),\n txid: z.string().optional(),\n});\n\nexport const signPsbt = defineRpcEndpoint({\n method: 'signPsbt',\n params: signPsbtRequestParamsSchema,\n result: signPsbtResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { isNumberOrNumberList, isUndefined } from '@leather.io/utils';\n\nexport function testIsNumberOrArrayOfNumbers(value: unknown) {\n if (isUndefined(value)) return true;\n return isNumberOrNumberList(value);\n}\n\nexport function encodeBase64Json(payload: Record<any, unknown>) {\n const jsonString = JSON.stringify(payload);\n return btoa(jsonString);\n}\n\nexport function decodeBase64Json(encodedPayload: string): unknown {\n const jsonString = atob(encodedPayload);\n return JSON.parse(jsonString);\n}\n\nexport function createRequestEncoder<T extends z.ZodTypeAny>(schema: T) {\n function encode(request: z.infer<T>) {\n return encodeBase64Json(schema.parse(request));\n }\n\n function decode(encodedRequest: string): z.infer<T> {\n const parsedJson = decodeBase64Json(encodedRequest);\n return schema.parse(parsedJson);\n }\n\n return { encode, decode };\n}\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../rpc/schemas';\n\nexport const bitcoinPaymentTypesSchema = z.enum(['p2pkh', 'p2sh', 'p2wpkh-p2sh', 'p2wpkh', 'p2tr']);\nexport type BitcoinPaymentTypes = z.infer<typeof bitcoinPaymentTypesSchema>;\n\n/** @deprecated use `BitcoinPaymentTypes` */\nexport type PaymentTypes = BitcoinPaymentTypes;\n\n//\n// Bitcoin\nexport const btcAddressBaseSchema = z.object({\n symbol: z.literal('BTC'),\n type: bitcoinPaymentTypesSchema,\n address: z.string(),\n publicKey: z.string(),\n derivationPath: z.string(),\n});\n\nexport type BtcAddressBase = z.infer<typeof btcAddressBaseSchema>;\n\nconst nativeSegwitAddressSchema = btcAddressBaseSchema\n .extend({\n type: z.literal('p2wpkh'),\n })\n .passthrough();\n\nexport type NativeSegwitAddress = z.infer<typeof nativeSegwitAddressSchema>;\n\nconst taprootAddressSchema = btcAddressBaseSchema\n .extend({\n type: z.literal('p2tr'),\n tweakedPublicKey: z.string(),\n })\n .passthrough();\n\nexport type TaprootAddress = z.infer<typeof taprootAddressSchema>;\n\nexport const btcAddressSchema = z.discriminatedUnion('type', [\n nativeSegwitAddressSchema,\n taprootAddressSchema,\n]);\n\nexport type BtcAddress = z.infer<typeof btcAddressSchema>;\n\n//\n// Stacks\nexport const stxAddressSchema = z\n .object({\n symbol: z.literal('STX'),\n address: z.string(),\n publicKey: z.string(),\n })\n .passthrough();\n\nexport type StxAddress = z.infer<typeof stxAddressSchema>;\n\nexport const addressSchema = z.union([btcAddressSchema, stxAddressSchema]);\n\nexport type Address = z.infer<typeof addressSchema>;\n\n//\n// Combined addresses response\nexport const addressResponseBodySchema = z\n .object({ addresses: z.array(addressSchema) })\n .passthrough();\n\nexport const getAddresses = defineRpcEndpoint({\n method: 'getAddresses',\n params: z.object({ network: z.string().optional() }).optional(),\n result: addressResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../rpc/schemas';\n\nconst getInfoResponseBodySchema = z.object({\n version: z.string(),\n supportedMethods: z.array(z.string()).optional(),\n platform: z.union([z.literal('mobile'), z.literal('extension')]),\n});\n\nexport const getInfo = defineRpcEndpoint({\n method: 'getInfo',\n result: getInfoResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../rpc/schemas';\n\nexport const open = defineRpcEndpoint({\n method: 'open',\n params: z.object({ mode: z.enum(['fullpage', 'popup']) }).default({ mode: 'popup' }),\n result: z.object({ success: z.literal(true) }),\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../rpc/schemas';\n\nconst openSwapRequestParamsSchema = z.object({\n base: z.string(),\n quote: z.string(),\n});\n\nconst openSwapResponseBodySchema = z.object({\n message: z.string(),\n});\n\nexport const openSwap = defineRpcEndpoint({\n method: 'openSwap',\n params: openSwapRequestParamsSchema,\n result: openSwapResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\nimport {\n baseStacksTransactionConfigSchema,\n stacksTransactionDetailsSchema,\n} from './_stacks-helpers';\n\nexport const stxCallContract = defineRpcEndpoint({\n method: 'stx_callContract',\n params: z.intersection(\n z.object({\n contract: z.string(),\n functionName: z.string(),\n functionArgs: z.array(z.string()).optional(),\n }),\n baseStacksTransactionConfigSchema\n ),\n result: stacksTransactionDetailsSchema,\n});\n","import { z } from 'zod';\n\nexport const stacksTransactionDetailsSchema = z.object({\n txid: z.string(),\n transaction: z.string(),\n});\n\nexport const baseStacksTransactionConfigSchema = z.object({\n address: z.string().optional(),\n network: z\n .union([\n z.literal('mainnet'),\n z.literal('testnet'),\n z.literal('regtest'),\n z.literal('devnet'),\n z.literal('mocknet'),\n z.string(),\n ])\n .optional(),\n fee: z.coerce.number().optional(),\n nonce: z.coerce.number().optional(),\n // add pc later when imported from stacks.js\n postConditions: z.array(z.string()).optional(),\n postConditionMode: z.union([z.literal('allow'), z.literal('deny')]).optional(),\n sponsored: z.boolean().optional(),\n});\n\nexport type BaseStacksTransactionRpcParams = z.infer<typeof baseStacksTransactionConfigSchema>;\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\nimport {\n baseStacksTransactionConfigSchema,\n stacksTransactionDetailsSchema,\n} from './_stacks-helpers';\n\nexport const stxDeployContractResponseBodySchema = stacksTransactionDetailsSchema;\n\nexport const stxDeployContract = defineRpcEndpoint({\n method: 'stx_deployContract',\n params: z.intersection(\n z.object({\n name: z.string(),\n clarityCode: z.string(),\n clarityVersion: z.coerce.number().optional(),\n }),\n baseStacksTransactionConfigSchema\n ),\n result: stxDeployContractResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\nexport const stxAddressItemSchema = z.object({\n address: z.string(),\n publicKey: z.string(),\n derivationPath: z.string(),\n});\n\nexport const stxGetAddressesResponseBodySchema = z.array(stxAddressItemSchema);\n\nexport const stxGetAddresses = defineRpcEndpoint({\n method: 'stx_getAddresses',\n params: z.object({ network: z.string().optional() }).optional(),\n result: stxGetAddressesResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\nexport const stxGetNetworks = defineRpcEndpoint({\n method: 'stx_getNetworks',\n result: z.object({\n active: z.string(),\n networks: z.array(\n z\n .object({\n id: z.string(),\n chainId: z.string(),\n transactionVersion: z.string(),\n })\n .passthrough()\n ),\n }),\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\n// Request\nexport const stxSignMessageTypeSchema = z.enum(['utf8', 'structured']);\nexport type StxSignMessageTypes = z.infer<typeof stxSignMessageTypeSchema>;\n\nexport const stxSignMessageRequestBaseSchema = z.object({\n messageType: stxSignMessageTypeSchema.optional().default('utf8'),\n network: z.optional(z.enum(['mainnet', 'testnet', 'devnet', 'mocknet'])),\n});\nexport type StxSignMessageRequestParamsBase = z.infer<typeof stxSignMessageRequestBaseSchema>;\n\nexport const stxSignMessageRequestUtf8Schema = stxSignMessageRequestBaseSchema.merge(\n z.object({\n messageType: z.literal('utf8').default('utf8'),\n message: z.string(),\n })\n);\nexport type StxSignMessageRequestParamsUtf8 = z.infer<typeof stxSignMessageRequestUtf8Schema>;\n\nexport const stxSignMessageRequestStructuredSchema = stxSignMessageRequestBaseSchema.merge(\n z.object({\n messageType: z.literal('structured'),\n domain: z.string(),\n message: z.string(),\n })\n);\nexport type StxSignMessageRequestParamsStructured = z.infer<\n typeof stxSignMessageRequestStructuredSchema\n>;\n\nexport const stxSignMessage = defineRpcEndpoint({\n method: 'stx_signMessage',\n params: z.union([stxSignMessageRequestUtf8Schema, stxSignMessageRequestStructuredSchema]),\n result: z.object({\n signature: z.string(),\n publicKey: z.string(),\n }),\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\nexport const stxSignStructuredMessage = defineRpcEndpoint({\n method: 'stx_signStructuredMessage',\n params: z.object({\n domain: z.string(),\n message: z.string(),\n }),\n result: z.object({\n signature: z.string(),\n publicKey: z.string(),\n }),\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\n\n// Leather's RPC params prior to SIP-30\n// Developers should be warned away from this structure\nexport const stxSignTransactionRequestLeatherRpcParamsSchema = z.object({\n txHex: z.string(),\n stxAddress: z.string().optional(),\n attachment: z.string().optional(),\n accountIndex: z.string().optional(),\n network: z.string().optional(),\n});\n\n// SIP-30 params\nexport const stxSignTransactionRequestSip30ParamsSchema = z.object({\n transaction: z.string(),\n network: z.string().optional(),\n});\n\nexport const stxSignTransaction = defineRpcEndpoint({\n method: 'stx_signTransaction',\n params: z.union([\n stxSignTransactionRequestLeatherRpcParamsSchema,\n stxSignTransactionRequestSip30ParamsSchema,\n ]),\n result: z.object({\n transaction: z.string(),\n txHex: z.string(),\n }),\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\nimport { stacksTransactionDetailsSchema } from './_stacks-helpers';\n\nexport const stxTransferSip9Nft = defineRpcEndpoint({\n method: 'stx_transferSip9Nft',\n params: z\n .object({\n recipient: z.string(),\n asset: z.string(),\n assetId: z.string(),\n })\n .passthrough(),\n result: stacksTransactionDetailsSchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\nimport { stacksTransactionDetailsSchema } from './_stacks-helpers';\n\nexport const stxTransferSip10Ft = defineRpcEndpoint({\n method: 'stx_transferSip10Ft',\n params: z\n .object({\n recipient: z.string(),\n asset: z.string(),\n amount: z.coerce.number(),\n })\n .passthrough(),\n result: stacksTransactionDetailsSchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\nimport { stacksTransactionDetailsSchema } from './_stacks-helpers';\n\nexport const stxTransferStx = defineRpcEndpoint({\n method: 'stx_transferStx',\n params: z\n .object({\n recipient: z.string(),\n amount: z.coerce.number().int('Amount must be an integer describing µSTX'),\n memo: z.string().optional(),\n })\n .passthrough(),\n result: stacksTransactionDetailsSchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../../rpc/schemas';\nimport { stacksTransactionDetailsSchema } from './_stacks-helpers';\n\n// Request\nexport const stxUpdateProfileRequestParamsSchema = z.object({\n // schema.org/Person\n person: z.object({}).passthrough(),\n});\n\nexport const stxUpdateProfileResponseBodySchema = stacksTransactionDetailsSchema;\n\nexport const stxUpdateProfile = defineRpcEndpoint({\n method: 'stx_updateProfile',\n params: stxUpdateProfileRequestParamsSchema,\n result: stxUpdateProfileResponseBodySchema,\n});\n","import { z } from 'zod';\n\nimport { defineRpcEndpoint } from '../rpc/schemas';\n\nexport const supportedMethodSchema = z.object({\n name: z.string(),\n docsUrl: z.union([z.string(), z.array(z.string())]),\n});\n\nexport const supportedMethods = defineRpcEndpoint({\n method: 'supportedMethods',\n result: z.object({\n documentation: z.string(),\n methods: z.array(supportedMethodSchema),\n }),\n});\n","import {\n BufferCV,\n ClarityType,\n ClarityValue,\n ContractIdString,\n ContractPrincipalCV,\n FalseCV,\n IntCV,\n NoneCV,\n ResponseErrorCV,\n ResponseOkCV,\n SomeCV,\n StandardPrincipalCV,\n StringAsciiCV,\n StringUtf8CV,\n TrueCV,\n UIntCV,\n} from '@stacks/transactions';\nimport { z } from 'zod';\n\n// Clarity values\nexport const cvIntSchema: z.ZodType<IntCV> = z.object({\n type: z.literal('int') as z.ZodLiteral<ClarityType.Int>,\n value: z.coerce.string(),\n});\n\nexport const cvUintSchema: z.ZodType<UIntCV> = z.object({\n type: z.literal('uint') as z.ZodLiteral<ClarityType.UInt>,\n value: z.coerce.string(),\n});\n\nexport const cvBufferSchema: z.ZodType<BufferCV> = z.object({\n type: z.literal('buffer') as z.ZodLiteral<ClarityType.Buffer>,\n value: z.string(),\n});\n\nexport const cvTrueSchema: z.ZodType<TrueCV> = z.object({\n type: z.literal('true') as z.ZodLiteral<ClarityType.BoolTrue>,\n});\n\nexport const cvFalseSchema: z.ZodType<FalseCV> = z.object({\n type: z.literal('false') as z.ZodLiteral<ClarityType.BoolFalse>,\n});\n\nexport const cvAddressSchema: z.ZodType<StandardPrincipalCV> = z.object({\n type: z.literal('address') as z.ZodLiteral<ClarityType.PrincipalStandard>,\n value: z.string(),\n});\n\nexport const cvContractSchema: z.ZodType<ContractPrincipalCV> = z.object({\n type: z.literal('contract') as z.ZodLiteral<ClarityType.PrincipalContract>,\n value: z.string().refine(value => value.includes('.'), {\n message: 'Stacks contract principals are denoted with a dot',\n }) as z.ZodType<ContractIdString>,\n});\n\nexport const cvAsciiSchema: z.ZodType<StringAsciiCV> = z.object({\n type: z.literal('ascii') as z.ZodLiteral<ClarityType.StringASCII>,\n value: z.string(),\n});\n\nexport const cvUtf8Schema: z.ZodType<StringUtf8CV> = z.object({\n type: z.literal('utf8') as z.ZodLiteral<ClarityType.StringUTF8>,\n value: z.string(),\n});\n\nexport const cvOkSchema: z.ZodType<ResponseOkCV> = z\n .object({\n type: z.literal('ok') as z.ZodLiteral<ClarityType.ResponseOk>,\n value: z.lazy(() => clarityValueSchema),\n })\n .transform(value => value as ResponseOkCV);\n\nexport const cvErrSchema: z.ZodType<ResponseErrorCV> = z.object({\n type: z.literal('err') as z.ZodLiteral<ClarityType.ResponseErr>,\n value: z.lazy(() => clarityValueSchema),\n});\n\nexport const cvNoneSchema: z.ZodType<NoneCV> = z.object({\n type: z.literal('none') as z.ZodLiteral<ClarityType.OptionalNone>,\n});\n\nexport const cvSomeSchema: z.ZodType<SomeCV> = z.object({\n type: z.literal('some') as z.ZodLiteral<ClarityType.OptionalSome>,\n value: z.lazy(() => clarityValueSchema),\n});\n\nexport const cvListSchema = z.object({\n type: z.literal('list') as z.ZodLiteral<ClarityType.List>,\n value: z.array(z.lazy(() => clarityValueSchema)),\n});\n\nexport const cvTupleSchema = z.object({\n type: z.literal('tuple') as z.ZodLiteral<ClarityType.Tuple>,\n value: z.record(z.lazy(() => clarityValueSchema)),\n});\n\nexport const clarityValueSchema: z.ZodType<ClarityValue> = z.union([\n cvIntSchema,\n cvUintSchema,\n cvBufferSchema,\n cvTrueSchema,\n cvFalseSchema,\n cvAddressSchema,\n cvContractSchema,\n cvOkSchema,\n cvErrSchema,\n cvNoneSchema,\n cvSomeSchema,\n cvListSchema,\n cvTupleSchema,\n cvAsciiSchema,\n cvUtf8Schema,\n]);\n","import { z } from 'zod';\n\nimport { ValueOf } from '@leather.io/models';\n\nimport { sendTransfer } from './methods/bitcoin/send-transfer';\nimport { signMessage } from './methods/bitcoin/sign-message';\nimport { signPsbt } from './methods/bitcoin/sign-psbt';\nimport { getAddresses } from './methods/get-addresses';\nimport { getInfo } from './methods/get-info';\nimport { open } from './methods/open';\nimport { openSwap } from './methods/open-swap';\nimport { stxCallContract } from './methods/stacks/stx-call-contract';\nimport { stxDeployContract } from './methods/stacks/stx-deploy-contract';\nimport { stxGetAddresses } from './methods/stacks/stx-get-addresses';\nimport { stxGetNetworks } from './methods/stacks/stx-get-networks';\nimport { stxSignMessage } from './methods/stacks/stx-sign-message';\nimport { stxSignStructuredMessage } from './methods/stacks/stx-sign-structured-message';\nimport { stxSignTransaction } from './methods/stacks/stx-sign-transaction';\nimport { stxTransferSip9Nft } from './methods/stacks/stx-transfer-sip9-nft';\nimport { stxTransferSip10Ft } from './methods/stacks/stx-transfer-sip10-ft';\nimport { stxTransferStx } from './methods/stacks/stx-transfer-stx';\nimport { stxUpdateProfile } from './methods/stacks/stx-update-profile';\nimport { supportedMethods } from './methods/supported-methods';\nimport { ExtractErrorResponse, ExtractSuccessResponse } from './rpc/schemas';\n\nexport * from './rpc/schemas';\nexport * from './rpc/helpers';\nexport * from './methods/get-info';\nexport * from './methods/bitcoin/sign-psbt';\nexport * from './methods/get-addresses';\nexport * from './methods/bitcoin/send-transfer';\nexport * from './methods/bitcoin/sign-message';\nexport * from './methods/stacks/_clarity-values';\nexport * from './methods/stacks/_stacks-helpers';\nexport * from './methods/stacks/stx-sign-message';\nexport * from './methods/stacks/stx-sign-structured-message';\nexport * from './methods/stacks/stx-sign-transaction';\nexport * from './methods/stacks/stx-call-contract';\nexport * from './methods/stacks/stx-deploy-contract';\nexport * from './methods/stacks/stx-get-addresses';\nexport * from './methods/stacks/stx-transfer-sip9-nft';\nexport * from './methods/stacks/stx-transfer-sip10-ft';\nexport * from './methods/stacks/stx-transfer-stx';\nexport * from './methods/stacks/stx-update-profile';\nexport * from './methods/supported-methods';\nexport * from './methods/open';\nexport * from './methods/open-swap';\n\nexport const endpoints = {\n getAddresses,\n getInfo,\n open,\n openSwap,\n sendTransfer,\n signMessage,\n signPsbt,\n stxCallContract,\n stxDeployContract,\n stxGetAddresses,\n stxGetNetworks,\n stxSignMessage,\n stxSignStructuredMessage,\n stxSignTransaction,\n stxTransferSip10Ft,\n stxTransferSip9Nft,\n stxTransferStx,\n stxUpdateProfile,\n supportedMethods,\n} as const;\n\ntype EndpointMap = (typeof endpoints)[keyof typeof endpoints];\n\n/**\n * Request map keyed by exact method name e.g. `stx_signMessage`\n */\nexport type RpcEndpointMap = {\n [E in EndpointMap as E['method']]: {\n request: z.infer<E['request']>;\n response: z.infer<E['response']>;\n };\n};\n\n/** @deprecated */\nexport type LeatherRpcMethodMap = RpcEndpointMap;\n\nexport type RpcRequests = ValueOf<RpcEndpointMap>['request'];\n\nexport type RpcResponses = ValueOf<RpcEndpointMap>['response'];\n\nexport type RpcMethodNames = keyof RpcEndpointMap;\n\nexport interface RequestFn {\n <\n T extends RpcMethodNames,\n P extends RpcEndpointMap[T]['request'] extends { params?: infer P } ? P : never,\n >(\n arg: T,\n params: P\n // `Promise` throws if unsuccessful, so here we extract the successful response\n ): Promise<ExtractSuccessResponse<RpcEndpointMap[T]['response']>>;\n <T extends RpcMethodNames>(\n arg: T\n // `Promise` throws if unsuccessful, so here we extract the successful response\n ): Promise<ExtractSuccessResponse<RpcEndpointMap[T]['response']>>;\n}\n\nexport interface ListenFn {\n (method: string, callback: () => void): () => void;\n}\n\n/**\n * Leather's provider object set on webpage global `window` object. Set this as\n * a global type object in your project.\n *\n * @example\n * ```\n * declare global {\n * interface Window {\n * LeatherProvider?: LeatherProvider;\n * }\n * }\n * ```\n */\nexport interface LeatherProvider {\n /**\n * Request method. Takes a method name, and optional parameters\n * @returns Typed response for corresponding method\n */\n request: RequestFn;\n /**\n * Listen method. Takes an event name to listen for, and a callback function.\n * @returns An unsubscribe function\n */\n listen: ListenFn;\n}\n\n/**\n * Helper to create a successful RPC response object\n */\nexport function createRpcSuccessResponse<T extends RpcMethodNames>(\n _method: T,\n response: Omit<ExtractSuccessResponse<RpcEndpointMap[T]['response']>, 'jsonrpc'>\n) {\n return { jsonrpc: '2.0', ...response } as ExtractSuccessResponse<RpcEndpointMap[T]['response']>;\n}\n\n/**\n * Helper to create an error RPC response object\n */\nexport function createRpcErrorResponse<T extends RpcMethodNames>(\n _method: T,\n error: Omit<ExtractErrorResponse<RpcEndpointMap[T]['response']>, 'jsonrpc'>\n) {\n return { jsonrpc: '2.0', ...error } as RpcEndpointMap[T]['response'];\n}\n\nexport function parseEndpointRequest(data: unknown): RpcRequests | undefined {\n const endpointRequests = Object.values(endpoints).map(endpoint => endpoint.request);\n const endpoint = endpointRequests.find(req => req.safeParse(data).success);\n return endpoint?.safeParse(data).data;\n}\n"],"mappings":"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","names":["z","RpcErrorCode","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","endpoint"]}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@leather.io/rpc",
3
3
  "author": "leather-wallet",
4
4
  "description": "RPC types package for Leather",
5
- "version": "2.14.1",
5
+ "version": "2.16.0",
6
6
  "license": "MIT",
7
7
  "type": "module",
8
8
  "exports": {
@@ -17,8 +17,8 @@
17
17
  "@stacks/network": "7.0.2",
18
18
  "@stacks/transactions": "7.0.5",
19
19
  "zod": "3.24.2",
20
- "@leather.io/models": "0.32.0",
21
- "@leather.io/utils": "0.33.0"
20
+ "@leather.io/models": "0.32.1",
21
+ "@leather.io/utils": "0.34.0"
22
22
  },
23
23
  "devDependencies": {
24
24
  "tsup": "8.4.0",