@tixprotocol/tdp-sdk 0.3.0 → 0.5.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 +21 -0
- package/dist/{chunk-RLIW34CX.js → chunk-7IWD2KHF.js} +15 -3
- package/dist/chunk-7IWD2KHF.js.map +1 -0
- package/dist/{chunk-QXWVXLHK.js → chunk-MZKCWS5T.js} +73 -45
- package/dist/chunk-MZKCWS5T.js.map +1 -0
- package/dist/errors.d.ts +14 -3
- package/dist/errors.js +5 -1
- package/dist/index.d.ts +826 -174
- package/dist/index.js +182 -111
- package/dist/index.js.map +1 -1
- package/dist/schemas.d.ts +26 -61
- package/dist/schemas.js +13 -13
- package/package.json +1 -1
- package/dist/chunk-QXWVXLHK.js.map +0 -1
- package/dist/chunk-RLIW34CX.js.map +0 -1
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/solana-data-api/create-solana-client.ts","../../tdp-schemas/src/tix-indexer-api/routes.ts","../src/utils/join-url-segments.ts","../src/utils/read-response-payload.ts","../src/routes/execute-client-route.ts","../src/tix-api/create-tix-api-client.ts","../src/tix-api/api-client.ts","../src/tix-indexer-api/create-indexer-client.ts","../../tdp-schemas/src/wallet-custody/api-key-route-keys.ts","../../tdp-schemas/src/wallet-custody/api-key-routes.ts","../src/wallet-custody/execute-wallet-custody-route.ts","../src/wallet-custody/api-client.ts","../src/wallet-custody/create-claim-wallets-client.ts","../src/wallet-custody/resolve-claim-offer.ts","../src/wallet-custody/create-transactions-client.ts","../src/wallet-custody/create-wallet-client.ts","../src/index.ts"],"sourcesContent":["import type { RoutePathParams } from \"../routes/client-request-types\";\nimport type { TixApiClient, TixApiRoutes } from \"../tix-api/api-client\";\n\nexport function createSolanaClient(tixApi: TixApiClient) {\n return {\n getEvent(\n pathParams: RoutePathParams<TixApiRoutes[\"get-event-account\"]>,\n options?: Pick<RequestInit, \"signal\">,\n ) {\n return tixApi(\n {\n route: \"get-event-account\",\n pathParams,\n },\n options,\n );\n },\n getListing(\n pathParams: RoutePathParams<TixApiRoutes[\"get-listing-account\"]>,\n options?: Pick<RequestInit, \"signal\">,\n ) {\n return tixApi(\n {\n route: \"get-listing-account\",\n pathParams,\n },\n options,\n );\n },\n getPermit(\n pathParams: RoutePathParams<TixApiRoutes[\"get-permit\"]>,\n options?: Pick<RequestInit, \"signal\">,\n ) {\n return tixApi(\n {\n route: \"get-permit\",\n pathParams,\n },\n options,\n );\n },\n getProtocolConfig(options?: Pick<RequestInit, \"signal\">) {\n return tixApi(\n {\n route: \"get-protocol-config-account\",\n },\n options,\n );\n },\n getIntegrator(\n pathParams: RoutePathParams<TixApiRoutes[\"get-integrator-account\"]>,\n options?: Pick<RequestInit, \"signal\">,\n ) {\n return tixApi(\n {\n route: \"get-integrator-account\",\n pathParams,\n },\n options,\n );\n },\n };\n}\n","import type { z } from \"zod\";\nimport { defineClientRoute } from \"../routes/define-client-route\";\nimport { ApiKeyHeadersSchema } from \"../routes/request-schemas\";\nimport { EventPathParametersSchema } from \"../tix-api/path-params\";\nimport {\n PostIntegratorMetadataRequestBodySchema,\n PostTixIndexerIntegratorMetadataResultSchema,\n} from \"./metadata\";\nimport { tixIndexerReadApiClientRoutes } from \"./read-routes\";\n\nexport { PostIntegratorMetadataRequestBodySchema } from \"./metadata\";\nexport {\n ActiveListingsQuerySchema,\n GET_ACTIVE_LISTINGS_ROUTE_KEY,\n GET_UPCOMING_EVENTS_ROUTE_KEY,\n LimitCursorQuerySchema,\n} from \"./read-routes\";\nexport const POST_INTEGRATOR_METADATA_ROUTE_KEY =\n \"POST /events/{eventId}/metadata\";\n\nexport const tixIndexerApiClientRoutes = {\n ...tixIndexerReadApiClientRoutes,\n \"post-integrator-metadata\": defineClientRoute({\n name: \"post-integrator-metadata\",\n method: \"POST\" as const,\n routeKey: POST_INTEGRATOR_METADATA_ROUTE_KEY,\n pathParamsSchema: EventPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\", eventId }) =>\n `${baseApiUrl}/events/${eventId}/metadata`,\n headersSchema: ApiKeyHeadersSchema,\n requestBodySchema: PostIntegratorMetadataRequestBodySchema,\n responseBodySchema: PostTixIndexerIntegratorMetadataResultSchema,\n }),\n} as const satisfies Record<string, unknown>;\n\nexport const responseBodySchemaByRouteKey = Object.fromEntries(\n Object.values(tixIndexerApiClientRoutes).map(\n (route) => [route.routeKey, route.responseBodySchema] as const,\n ),\n) as Record<string, z.ZodType<Record<string, unknown>>>;\n","/**\n * Joins URL segments with one slash; i.e., remove repeated slashes.\n */\nexport function joinUrlSegments(baseUrl: string, path: string): string {\n return `${baseUrl.replace(/\\/+$/, \"\")}/${path.replace(/^\\/+/, \"\")}`;\n}\n","/**\n * Reads the body without letting an empty or non-JSON payload mask the HTTP status.\n **/\nexport async function readResponsePayload(\n response: Response,\n): Promise<unknown> {\n const rawBody = await response.text();\n if (rawBody.length === 0) return undefined;\n try {\n return JSON.parse(rawBody);\n } catch {\n return rawBody;\n }\n}\n","import type { z } from \"zod\";\nimport { joinUrlSegments } from \"../utils/join-url-segments\";\nimport { readResponsePayload } from \"../utils/read-response-payload\";\nimport type { AnyClientRoute } from \"./define-client-route\";\n\nexport type ClientRouteFailure = {\n kind: \"http-status\" | \"response-validation\";\n route: string;\n method: string;\n path: string;\n status: number;\n statusText: string;\n payload: unknown;\n validationError?: z.ZodError;\n};\n\n/** Builds the URL, headers, and body for a route, sends it, and parses the response through the route's schema. */\nexport async function executeClientRoute<TRoute extends AnyClientRoute>({\n baseApiUrl,\n fetchImpl,\n headers,\n signal,\n routeName,\n route,\n pathParams,\n queryParams,\n body,\n routeHeadersInput,\n createError,\n}: {\n baseApiUrl: string;\n fetchImpl: typeof fetch;\n headers?: HeadersInit;\n signal?: RequestInit[\"signal\"];\n routeName: string;\n route: TRoute;\n pathParams: unknown;\n queryParams?: unknown;\n body: unknown;\n routeHeadersInput: Record<string, string | undefined>;\n createError: (failure: ClientRouteFailure) => Error;\n}): Promise<z.output<TRoute[\"responseBodySchema\"]>> {\n // TS can't reconcile the route's output types with input types, hence the `as never` clauses.\n const path = route.buildPath(pathParams as never);\n const routeHeaders = route.buildHeaders(routeHeadersInput as never);\n const url =\n joinUrlSegments(baseApiUrl, path) +\n (queryParams === undefined\n ? \"\"\n : route.buildQueryString(queryParams as never));\n\n const requestHeaders = new Headers(headers);\n requestHeaders.set(\"content-type\", \"application/json\");\n new Headers(routeHeaders as HeadersInit).forEach((value, name) => {\n requestHeaders.set(name, value);\n });\n const response = await fetchImpl(url, {\n method: route.method,\n ...(signal === undefined ? {} : { signal }),\n headers: Object.fromEntries(requestHeaders),\n body:\n body === undefined ? undefined : route.buildJsonPayload(body as never),\n });\n const payload = await readResponsePayload(response);\n const failure = {\n route: routeName,\n method: route.method,\n path,\n status: response.status,\n statusText: response.statusText,\n payload,\n };\n if (!response.ok) throw createError({ kind: \"http-status\", ...failure });\n\n const parsed = route.responseBodySchema.safeParse(payload);\n if (!parsed.success) {\n throw createError({\n kind: \"response-validation\",\n ...failure,\n validationError: parsed.error,\n });\n }\n return parsed.data as z.output<TRoute[\"responseBodySchema\"]>;\n}\n","import type {\n ClientRouteMap,\n ClientRouteRequest,\n RouteQueryParams,\n RouteRequestField,\n RouteResponseBody,\n} from \"../routes/client-request-types\";\nimport { executeClientRoute } from \"../routes/execute-client-route\";\nimport { solanaDataApiClientRoutes } from \"../solana-data-api/routes\";\nimport { WalletCustodyApiError } from \"../wallet-custody/http-error\";\n\n/** Both APIs are mapped onto one domain under these keys. */\nexport const SOLANA_DATA_API_PATH_PREFIX = \"solana\";\nexport const TIX_INDEXER_API_PATH_PREFIX = \"tix-indexer\";\n\n/** The request for a route. No caller-settable `headers`: the client injects them itself. */\ntype FetchTixApiRequest<\n TRoutes extends ClientRouteMap,\n TRouteName extends keyof TRoutes,\n> = ClientRouteRequest<TRoutes, TRouteName> &\n RouteRequestField<\"queryParams\", RouteQueryParams<TRoutes[TRouteName]>>;\n\nexport function createTixApiClientForRoutes<TRoutes extends ClientRouteMap>({\n routes,\n baseApiUrl,\n apiKey,\n fetchImpl = fetch,\n headers,\n additionalHeaders,\n}: {\n routes: TRoutes;\n baseApiUrl: string;\n apiKey: string | (() => Promise<string>);\n fetchImpl?: typeof fetch;\n headers?: HeadersInit;\n additionalHeaders?: Parameters<\n typeof executeClientRoute\n >[0][\"routeHeadersInput\"];\n}) {\n return async function fetchTixApi<TRouteName extends keyof TRoutes & string>(\n {\n route,\n pathParams,\n queryParams,\n body,\n }: FetchTixApiRequest<TRoutes, TRouteName>,\n { signal }: Pick<RequestInit, \"signal\"> = {},\n ): Promise<RouteResponseBody<TRoutes[TRouteName]>> {\n const prefix =\n route in solanaDataApiClientRoutes\n ? SOLANA_DATA_API_PATH_PREFIX\n : TIX_INDEXER_API_PATH_PREFIX;\n return executeClientRoute({\n baseApiUrl: `${baseApiUrl}/${prefix}`,\n fetchImpl,\n headers,\n signal,\n routeName: route,\n route: routes[route],\n pathParams,\n queryParams,\n body,\n routeHeadersInput: {\n \"x-api-key\": typeof apiKey === \"string\" ? apiKey : await apiKey(),\n ...additionalHeaders,\n },\n createError: (failure) => new WalletCustodyApiError(failure),\n }) as Promise<RouteResponseBody<TRoutes[TRouteName]>>;\n };\n}\n","import { solanaDataApiClientRoutes } from \"../solana-data-api/routes\";\nimport { tixIndexerApiClientRoutes } from \"../tix-indexer-api/routes\";\nimport { createTixApiClientForRoutes } from \"./create-tix-api-client\";\n\nexport {\n SOLANA_DATA_API_PATH_PREFIX,\n TIX_INDEXER_API_PATH_PREFIX,\n} from \"./create-tix-api-client\";\n\nexport const tixApiClientRoutes = {\n ...solanaDataApiClientRoutes,\n ...tixIndexerApiClientRoutes,\n} as const;\n\nexport type TixApiRoutes = typeof tixApiClientRoutes;\nexport type TixApiClient = ReturnType<typeof createTixApiClient>;\n\nexport function createTixApiClient({\n baseApiUrl,\n apiKey,\n fetchImpl = fetch,\n headers,\n}: {\n baseApiUrl: string;\n apiKey: string | (() => Promise<string>);\n fetchImpl?: typeof fetch;\n /**\n * Additional request headers. SDK-managed headers take precedence.\n * Cross-origin browser requests require server CORS support for custom headers.\n */\n headers?: HeadersInit;\n}) {\n return createTixApiClientForRoutes({\n routes: tixApiClientRoutes,\n baseApiUrl,\n apiKey,\n fetchImpl,\n headers,\n });\n}\n","import type {\n ClientRouteRequest,\n RouteQueryParams,\n} from \"../routes/client-request-types\";\nimport type { TixApiClient, TixApiRoutes } from \"../tix-api/api-client\";\n\ntype MetadataRequest = ClientRouteRequest<\n TixApiRoutes,\n \"post-integrator-metadata\"\n>;\ntype ActiveListingsQuery = RouteQueryParams<\n TixApiRoutes[\"get-active-listings\"]\n>;\ntype UpcomingEventsQuery = RouteQueryParams<\n TixApiRoutes[\"get-upcoming-events\"]\n>;\n\nexport function createIndexerClient(tixApi: TixApiClient) {\n return {\n listActiveListings(\n queryParams: ActiveListingsQuery = {},\n options?: Pick<RequestInit, \"signal\">,\n ) {\n return tixApi(\n {\n route: \"get-active-listings\",\n queryParams,\n },\n options,\n );\n },\n listUpcomingEvents(\n queryParams: UpcomingEventsQuery = {},\n options?: Pick<RequestInit, \"signal\">,\n ) {\n return tixApi(\n {\n route: \"get-upcoming-events\",\n queryParams,\n },\n options,\n );\n },\n updateEventMetadata(\n {\n eventId,\n body,\n }: MetadataRequest[\"pathParams\"] & Pick<MetadataRequest, \"body\">,\n options?: Pick<RequestInit, \"signal\">,\n ) {\n return tixApi(\n {\n route: \"post-integrator-metadata\",\n pathParams: { eventId },\n body,\n },\n options,\n );\n },\n };\n}\n","export const GET_USER_ADDRESS_ROUTE_KEY =\n \"GET /wallets/users/{subject}/address\";\nexport const GET_INTEGRATOR_ADDRESS_ROUTE_KEY =\n \"GET /wallets/integrators/{subject}/address\";\nexport const SIGN_USER_TRANSACTION_ROUTE_KEY =\n \"POST /wallets/users/{subject}/signatures\";\nexport const SIGN_INTEGRATOR_TRANSACTION_ROUTE_KEY =\n \"POST /wallets/integrators/{subject}/signatures\";\nexport const SUBMIT_TENANT_TRANSACTION_ROUTE_KEY =\n \"POST /transactions/submissions\";\nexport const ACCEPT_CLAIM_OFFERS_ROUTE_KEY = \"POST /claim_wallets\";\nexport const GET_PURCHASE_STATUS_ROUTE_KEY =\n \"GET /claim_wallets/purchase-status\";\nexport const GET_FEE_PAYER_ADDRESS_ROUTE_KEY = \"GET /wallets/fee-payer/address\";\nexport const GET_PROTOCOL_AUTHORITY_ADDRESS_ROUTE_KEY =\n \"GET /wallets/protocol-authority/address\";\n","import { defineClientRoute } from \"../routes/define-client-route\";\nimport {\n ApiKeyHeadersSchema,\n IdempotencyKeyAndApiKeyHeadersSchema,\n NoPathParametersSchema,\n} from \"../routes/request-schemas\";\nimport {\n GetAddressResponseSchema,\n WalletPathParametersSchema,\n} from \"./addresses\";\nimport {\n ACCEPT_CLAIM_OFFERS_ROUTE_KEY,\n GET_FEE_PAYER_ADDRESS_ROUTE_KEY,\n GET_INTEGRATOR_ADDRESS_ROUTE_KEY,\n GET_PROTOCOL_AUTHORITY_ADDRESS_ROUTE_KEY,\n GET_PURCHASE_STATUS_ROUTE_KEY,\n GET_USER_ADDRESS_ROUTE_KEY,\n SIGN_INTEGRATOR_TRANSACTION_ROUTE_KEY,\n SIGN_USER_TRANSACTION_ROUTE_KEY,\n SUBMIT_TENANT_TRANSACTION_ROUTE_KEY,\n} from \"./api-key-route-keys\";\nimport {\n AcceptClaimOffersRequestBodySchema,\n AcceptClaimOffersResponseSchema,\n} from \"./claim-offers\";\nimport { GetPurchaseStatusResponseSchema } from \"./purchase-status\";\nimport { SignTransactionResponseSchema } from \"./signing-responses\";\nimport { SubmitTenantTransactionResponseSchema } from \"./submission-responses\";\nimport {\n SignTenantTransactionRequestBodySchema,\n SubmitTenantTransactionRequestBodySchema,\n} from \"./transaction-inputs\";\n\nexport const apiKeyWalletCustodyApiClientRoutes = {\n \"get-user-address\": defineClientRoute({\n name: \"get-user-address\",\n method: \"GET\",\n routeKey: GET_USER_ADDRESS_ROUTE_KEY,\n pathParamsSchema: WalletPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\", subject }) =>\n `${baseApiUrl}/wallets/users/${subject}/address`,\n headersSchema: ApiKeyHeadersSchema,\n responseBodySchema: GetAddressResponseSchema,\n }),\n \"get-integrator-address\": defineClientRoute({\n name: \"get-integrator-address\",\n method: \"GET\",\n routeKey: GET_INTEGRATOR_ADDRESS_ROUTE_KEY,\n pathParamsSchema: WalletPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\", subject }) =>\n `${baseApiUrl}/wallets/integrators/${subject}/address`,\n headersSchema: ApiKeyHeadersSchema,\n responseBodySchema: GetAddressResponseSchema,\n }),\n \"sign-user-transaction\": defineClientRoute({\n name: \"sign-user-transaction\",\n method: \"POST\",\n routeKey: SIGN_USER_TRANSACTION_ROUTE_KEY,\n pathParamsSchema: WalletPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\", subject }) =>\n `${baseApiUrl}/wallets/users/${subject}/signatures`,\n headersSchema: IdempotencyKeyAndApiKeyHeadersSchema,\n requestBodySchema: SignTenantTransactionRequestBodySchema,\n responseBodySchema: SignTransactionResponseSchema,\n }),\n \"sign-integrator-transaction\": defineClientRoute({\n name: \"sign-integrator-transaction\",\n method: \"POST\",\n routeKey: SIGN_INTEGRATOR_TRANSACTION_ROUTE_KEY,\n pathParamsSchema: WalletPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\", subject }) =>\n `${baseApiUrl}/wallets/integrators/${subject}/signatures`,\n headersSchema: IdempotencyKeyAndApiKeyHeadersSchema,\n requestBodySchema: SignTenantTransactionRequestBodySchema,\n responseBodySchema: SignTransactionResponseSchema,\n }),\n \"submit-tenant-transaction\": defineClientRoute({\n name: \"submit-tenant-transaction\",\n method: \"POST\",\n routeKey: SUBMIT_TENANT_TRANSACTION_ROUTE_KEY,\n pathParamsSchema: NoPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\" }) =>\n `${baseApiUrl}/transactions/submissions`,\n headersSchema: ApiKeyHeadersSchema,\n requestBodySchema: SubmitTenantTransactionRequestBodySchema,\n responseBodySchema: SubmitTenantTransactionResponseSchema,\n }),\n \"get-purchase-status\": defineClientRoute({\n name: \"get-purchase-status\",\n method: \"GET\",\n routeKey: GET_PURCHASE_STATUS_ROUTE_KEY,\n pathParamsSchema: NoPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\" }) =>\n `${baseApiUrl}/claim_wallets/purchase-status`,\n headersSchema: IdempotencyKeyAndApiKeyHeadersSchema,\n responseBodySchema: GetPurchaseStatusResponseSchema,\n }),\n \"accept-claim-offers\": defineClientRoute({\n name: \"accept-claim-offers\",\n method: \"POST\",\n routeKey: ACCEPT_CLAIM_OFFERS_ROUTE_KEY,\n pathParamsSchema: NoPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\" }) => `${baseApiUrl}/claim_wallets`,\n headersSchema: IdempotencyKeyAndApiKeyHeadersSchema,\n requestBodySchema: AcceptClaimOffersRequestBodySchema,\n responseBodySchema: AcceptClaimOffersResponseSchema,\n }),\n \"get-fee-payer-address\": defineClientRoute({\n name: \"get-fee-payer-address\",\n method: \"GET\",\n routeKey: GET_FEE_PAYER_ADDRESS_ROUTE_KEY,\n pathParamsSchema: NoPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\" }) =>\n `${baseApiUrl}/wallets/fee-payer/address`,\n headersSchema: ApiKeyHeadersSchema,\n responseBodySchema: GetAddressResponseSchema,\n }),\n \"get-protocol-authority-address\": defineClientRoute({\n name: \"get-protocol-authority-address\",\n method: \"GET\",\n routeKey: GET_PROTOCOL_AUTHORITY_ADDRESS_ROUTE_KEY,\n pathParamsSchema: NoPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\" }) =>\n `${baseApiUrl}/wallets/protocol-authority/address`,\n headersSchema: ApiKeyHeadersSchema,\n responseBodySchema: GetAddressResponseSchema,\n }),\n};\n","import type {\n ClientRouteMap,\n ClientRouteRequest,\n RouteRequestField,\n RouteRequestHeader,\n} from \"../routes/client-request-types\";\nimport type { AnyClientRoute } from \"../routes/define-client-route\";\nimport { executeClientRoute } from \"../routes/execute-client-route\";\nimport { WalletCustodyApiError } from \"./http-error\";\n\nexport type FetchWalletCustodyApiRequest<\n TRoutes extends ClientRouteMap,\n TRouteName extends keyof TRoutes,\n> = ClientRouteRequest<TRoutes, TRouteName> &\n RouteRequestField<\n \"idempotencyKey\",\n RouteRequestHeader<TRoutes[TRouteName], \"idempotency-key\">\n >;\n\nexport function executeWalletCustodyRoute<TRoute extends AnyClientRoute>(\n request: Omit<\n Parameters<typeof executeClientRoute<TRoute>>[0],\n \"createError\"\n >,\n) {\n return executeClientRoute({\n ...request,\n createError: (failure) => new WalletCustodyApiError(failure),\n } satisfies Parameters<typeof executeClientRoute<TRoute>>[0]);\n}\n","import { apiKeyWalletCustodyApiClientRoutes } from \"@kyd-labs/tdp-schemas/wallet-custody/api-key-routes\";\nimport type {\n RouteNamesRequiringHeader,\n RouteResponseBody,\n} from \"../routes/client-request-types\";\nimport {\n executeWalletCustodyRoute,\n type FetchWalletCustodyApiRequest,\n} from \"./execute-wallet-custody-route\";\nimport type { walletCustodyApiClientRoutes } from \"./routes\";\n\nexport type WalletCustodyApiClient = ReturnType<\n typeof createWalletCustodyApiClient\n>;\n\n/** Client for claim routes authorized by an API key. */\nexport function createWalletCustodyApiClient({\n baseApiUrl,\n apiKey,\n fetchImpl = fetch,\n headers,\n}: {\n baseApiUrl: string;\n apiKey: string | (() => Promise<string>);\n fetchImpl?: typeof fetch;\n headers?: HeadersInit;\n}) {\n return async function fetchWalletCustodyApi<\n TRouteName extends ApiKeyWalletCustodyApiRouteName,\n >(\n {\n route,\n pathParams,\n body,\n idempotencyKey,\n }: FetchWalletCustodyApiRequest<ApiKeyWalletCustodyApiRoutes, TRouteName>,\n { signal }: Pick<RequestInit, \"signal\"> = {},\n ): Promise<RouteResponseBody<RouteForName<TRouteName>>> {\n return executeWalletCustodyRoute({\n baseApiUrl,\n fetchImpl,\n headers,\n signal,\n routeName: route,\n route: apiKeyWalletCustodyApiClientRoutes[route],\n pathParams,\n body,\n routeHeadersInput: {\n \"x-api-key\": typeof apiKey === \"string\" ? apiKey : await apiKey(),\n \"idempotency-key\": idempotencyKey,\n },\n }) as Promise<RouteResponseBody<RouteForName<TRouteName>>>;\n };\n}\n\n// -------------------------------------- Route helper types ---------------------------------------\nexport type WalletCustodyApiRoutes = typeof walletCustodyApiClientRoutes;\nexport type ApiKeyWalletCustodyApiRoutes =\n typeof apiKeyWalletCustodyApiClientRoutes;\ntype ApiKeyWalletCustodyApiRouteName = RouteNamesRequiringHeader<\n ApiKeyWalletCustodyApiRoutes,\n \"x-api-key\"\n>;\ntype RouteForName<TRouteName extends ApiKeyWalletCustodyApiRouteName> =\n ApiKeyWalletCustodyApiRoutes[TRouteName];\n","import { TicketPathParametersSchema } from \"@kyd-labs/tdp-schemas/tix-api/path-params\";\nimport { AcceptClaimOffersRequestBodySchema } from \"@kyd-labs/tdp-schemas/wallet-custody/claim-offers\";\nimport { MAX_PERMITS_PER_CLAIM_WALLET } from \"@kyd-labs/tdp-schemas/wallet-custody/const\";\nimport { requireUniquePermitKeys } from \"@kyd-labs/tix-wire-schema/instructions\";\nimport { z } from \"zod\";\nimport type {\n RouteRequestField,\n RouteRequestHeader,\n} from \"../routes/client-request-types\";\nimport type { createSolanaClient } from \"../solana-data-api/create-solana-client\";\nimport type {\n ApiKeyWalletCustodyApiRoutes,\n WalletCustodyApiClient,\n} from \"./api-client\";\nimport { resolveClaimOffer } from \"./resolve-claim-offer\";\n\ntype AcceptOffersRoute = ApiKeyWalletCustodyApiRoutes[\"accept-claim-offers\"];\n\nconst AcceptOffersBodySchema = AcceptClaimOffersRequestBodySchema.extend({\n offers: z\n .array(TicketPathParametersSchema)\n .min(1)\n .max(MAX_PERMITS_PER_CLAIM_WALLET)\n .superRefine(requireUniquePermitKeys),\n});\n\nexport function createClaimWalletsClient(\n walletCustodyApi: WalletCustodyApiClient,\n solana: ReturnType<typeof createSolanaClient>,\n) {\n return {\n getPurchaseStatus(\n {\n idempotencyKey,\n }: RouteRequestField<\n \"idempotencyKey\",\n RouteRequestHeader<\n ApiKeyWalletCustodyApiRoutes[\"get-purchase-status\"],\n \"idempotency-key\"\n >\n >,\n options?: Pick<RequestInit, \"signal\">,\n ) {\n return walletCustodyApi(\n { route: \"get-purchase-status\", idempotencyKey },\n options,\n );\n },\n async acceptOffers(\n {\n idempotencyKey,\n body,\n }: RouteRequestField<\"body\", z.input<typeof AcceptOffersBodySchema>> &\n RouteRequestField<\n \"idempotencyKey\",\n RouteRequestHeader<AcceptOffersRoute, \"idempotency-key\">\n >,\n options?: Pick<RequestInit, \"signal\">,\n ) {\n const parsedBody = AcceptOffersBodySchema.parse(body);\n const protocol = await solana.getProtocolConfig(options);\n const events = new Map<string, ReturnType<typeof solana.getEvent>>();\n const offers = await Promise.all(\n parsedBody.offers.map((ticket) => {\n const eventId = String(ticket.eventId);\n const event =\n events.get(eventId) ?? solana.getEvent({ eventId }, options);\n events.set(eventId, event);\n return resolveClaimOffer(solana, ticket, protocol, event, options);\n }),\n );\n return walletCustodyApi(\n {\n route: \"accept-claim-offers\",\n body: { ...parsedBody, offers },\n idempotencyKey,\n },\n options,\n );\n },\n };\n}\n","import type { createSolanaClient } from \"../solana-data-api/create-solana-client\";\n\ntype SolanaClient = ReturnType<typeof createSolanaClient>;\n\n/** Resolves a ticket selection into the existing claim-purchase offer payload. */\nexport async function resolveClaimOffer(\n solana: SolanaClient,\n ticket: Parameters<SolanaClient[\"getListing\"]>[0],\n protocol: Awaited<ReturnType<SolanaClient[\"getProtocolConfig\"]>>,\n eventResponse: ReturnType<SolanaClient[\"getEvent\"]>,\n options?: Pick<RequestInit, \"signal\">,\n) {\n const [listing, event, permit] = await Promise.all([\n solana.getListing(ticket, options),\n eventResponse,\n solana.getPermit(ticket, options),\n ]);\n return {\n event_id: listing.event_id,\n ticket_id: listing.ticket_id,\n permit_version: listing.permit_version,\n seller_payout: listing.payout_ata,\n royalty_destinations:\n event.royalty_recipients_count > 0\n ? event.royalty_recipients\n .slice(0, event.royalty_recipients_count)\n .map(({ destination }) => destination)\n : [protocol.default_royalty_vault],\n ticket_type_config: permit.ticket_type_config,\n usdc_mint: protocol.usdc_mint,\n };\n}\n","import type {\n RoutePathParams,\n RouteRequestBody,\n RouteRequestField,\n RouteRequestHeader,\n} from \"../routes/client-request-types\";\nimport type {\n ApiKeyWalletCustodyApiRoutes,\n WalletCustodyApiClient,\n} from \"./api-client\";\n\ntype SignTransactionInput<\n TRoute extends \"sign-user-transaction\" | \"sign-integrator-transaction\",\n> = RoutePathParams<ApiKeyWalletCustodyApiRoutes[TRoute]> &\n RouteRequestField<\n \"body\",\n RouteRequestBody<ApiKeyWalletCustodyApiRoutes[TRoute]>\n > &\n RouteRequestField<\n \"idempotencyKey\",\n RouteRequestHeader<ApiKeyWalletCustodyApiRoutes[TRoute], \"idempotency-key\">\n >;\n\nexport function createTransactionsClient(\n walletCustodyApi: WalletCustodyApiClient,\n) {\n return {\n signUser(\n {\n subject,\n idempotencyKey,\n body,\n }: SignTransactionInput<\"sign-user-transaction\">,\n options?: Pick<RequestInit, \"signal\">,\n ) {\n return walletCustodyApi(\n {\n route: \"sign-user-transaction\",\n pathParams: { subject },\n body,\n idempotencyKey,\n },\n options,\n );\n },\n signIntegrator(\n {\n subject,\n idempotencyKey,\n body,\n }: SignTransactionInput<\"sign-integrator-transaction\">,\n options?: Pick<RequestInit, \"signal\">,\n ) {\n return walletCustodyApi(\n {\n route: \"sign-integrator-transaction\",\n pathParams: { subject },\n body,\n idempotencyKey,\n },\n options,\n );\n },\n submit(\n {\n body,\n }: RouteRequestField<\n \"body\",\n RouteRequestBody<\n ApiKeyWalletCustodyApiRoutes[\"submit-tenant-transaction\"]\n >\n >,\n options?: Pick<RequestInit, \"signal\">,\n ) {\n return walletCustodyApi(\n {\n route: \"submit-tenant-transaction\",\n body,\n },\n options,\n );\n },\n };\n}\n","import type { RoutePathParams } from \"../routes/client-request-types\";\nimport type {\n ApiKeyWalletCustodyApiRoutes,\n WalletCustodyApiClient,\n} from \"./api-client\";\n\nexport function createWalletClient(walletCustodyApi: WalletCustodyApiClient) {\n return {\n getUserAddress(\n pathParams: RoutePathParams<\n ApiKeyWalletCustodyApiRoutes[\"get-user-address\"]\n >,\n options?: Pick<RequestInit, \"signal\">,\n ) {\n return walletCustodyApi(\n {\n route: \"get-user-address\",\n pathParams,\n },\n options,\n );\n },\n getIntegratorAddress(\n pathParams: RoutePathParams<\n ApiKeyWalletCustodyApiRoutes[\"get-integrator-address\"]\n >,\n options?: Pick<RequestInit, \"signal\">,\n ) {\n return walletCustodyApi(\n {\n route: \"get-integrator-address\",\n pathParams,\n },\n options,\n );\n },\n getFeePayerAddress(options?: Pick<RequestInit, \"signal\">) {\n return walletCustodyApi(\n {\n route: \"get-fee-payer-address\",\n },\n options,\n );\n },\n getProtocolAuthorityAddress(options?: Pick<RequestInit, \"signal\">) {\n return walletCustodyApi(\n {\n route: \"get-protocol-authority-address\",\n },\n options,\n );\n },\n };\n}\n","import { createSolanaClient } from \"./solana-data-api/create-solana-client\";\nimport { createTixApiClient } from \"./tix-api/api-client\";\nimport { createIndexerClient } from \"./tix-indexer-api/create-indexer-client\";\nimport { createWalletCustodyApiClient } from \"./wallet-custody/api-client\";\nimport { createClaimWalletsClient } from \"./wallet-custody/create-claim-wallets-client\";\nimport { createTransactionsClient } from \"./wallet-custody/create-transactions-client\";\nimport { createWalletClient } from \"./wallet-custody/create-wallet-client\";\n\nexport type * from \"./types/index\";\n\nexport type TdpClientOptions = Parameters<typeof createTixApiClient>[0];\nexport type TdpClient = ReturnType<typeof createTdpClient>;\n\nexport function createTdpClient(options: TdpClientOptions) {\n const tixApi = createTixApiClient(options);\n const walletCustodyApi = createWalletCustodyApiClient(options);\n const solana = createSolanaClient(tixApi);\n return {\n solana,\n indexer: createIndexerClient(tixApi),\n wallets: createWalletClient(walletCustodyApi),\n transactions: createTransactionsClient(walletCustodyApi),\n claimWallets: createClaimWalletsClient(walletCustodyApi, solana),\n };\n}\n"],"mappings":"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","names":["responseBodySchemaByRouteKey"]}
|
|
1
|
+
{"version":3,"sources":["../src/utils/usdc-cents.ts","../src/solana-data-api/create-solana-client.ts","../../tdp-schemas/src/tix-indexer-api/routes.ts","../src/routes/create-tdp-api-error-from-route-failure.ts","../src/routes/execute-client-route.ts","../src/utils/join-url-segments.ts","../src/utils/read-response-payload.ts","../src/tix-api/create-tix-api-client.ts","../src/tix-api/api-client.ts","../src/tix-indexer-api/create-events-client.ts","../src/tix-indexer-api/create-indexer-client.ts","../src/tix-indexer-api/create-integrator-client.ts","../../tdp-schemas/src/wallet-custody/api-key-route-keys.ts","../../tdp-schemas/src/wallet-custody/api-key-routes.ts","../src/wallet-custody/execute-wallet-custody-route.ts","../src/wallet-custody/api-client.ts","../src/wallet-custody/create-orders-client.ts","../src/wallet-custody/const.ts","../src/wallet-custody/create-transactions-client.ts","../src/wallet-custody/create-wallet-client.ts","../src/index.ts"],"sourcesContent":["/** The USDC mints TDP uses: mainnet for the live environment and devnet for the sandbox. */\nexport const USDC_MINT_BY_CLUSTER = {\n mainnet: \"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v\",\n devnet: \"Gh9ZwEmdLJ8DscKNTkTqPbNwLNNBjuSzaG9Vp2KGtKJr\",\n} as const;\n\n/**\n * Both mints have 6 decimals, and this is unlikely to change. If a mint ever becomes mutable, the SDK will\n * accommodate a non-hardcoded mint specification.\n */\nexport const USDC_DECIMALS = 6;\n\nconst USDC_MINOR_PER_CENT = 10n ** BigInt(USDC_DECIMALS - 2);\n\n/**\n * Converts an amount in USDC minor units to whole cents, rounding half up to\n * the closest cent.\n *\n * @example\n * client.utils.usdcMinorToCents(25_000_000n); // 2500n, which is $25.00\n */\nexport function usdcMinorToCents(usdcMinor: bigint): bigint {\n return (usdcMinor + USDC_MINOR_PER_CENT / 2n) / USDC_MINOR_PER_CENT;\n}\n\n/**\n * Converts an amount in whole cents to USDC minor units.\n *\n * @example\n * client.utils.centsToUsdcMinor(2_500n); // 25000000n\n */\nexport function centsToUsdcMinor(cents: bigint): bigint {\n return cents * USDC_MINOR_PER_CENT;\n}\n\n/** Converts a wire amount, a decimal string of USDC minor units, to whole cents. */\nexport function convertWireUsdcMinorToCents(usdcMinor: string): number {\n return Number(usdcMinorToCents(BigInt(usdcMinor)));\n}\n","import type { RoutePathParams } from \"../routes/client-request-types\";\nimport type { TixApiClient, TixApiRoutes } from \"../tix-api/api-client\";\nimport { convertWireUsdcMinorToCents } from \"../utils/usdc-cents\";\n\nexport function createSolanaClient(tixApi: TixApiClient) {\n return {\n async getEvent(\n pathParams: RoutePathParams<TixApiRoutes[\"get-event-account\"]>,\n options?: Pick<RequestInit, \"signal\">,\n ) {\n const { min_royalty_floor, ...event } = await tixApi(\n {\n route: \"get-event-account\",\n pathParams,\n },\n options,\n );\n return {\n ...event,\n min_royalty_floor_cents: convertWireUsdcMinorToCents(min_royalty_floor),\n };\n },\n async getListing(\n pathParams: RoutePathParams<TixApiRoutes[\"get-listing-account\"]>,\n options?: Pick<RequestInit, \"signal\">,\n ) {\n const { ask_price_minor, ...listing } = await tixApi(\n {\n route: \"get-listing-account\",\n pathParams,\n },\n options,\n );\n return {\n ...listing,\n ask_price_cents: convertWireUsdcMinorToCents(ask_price_minor),\n };\n },\n getPermit(\n pathParams: RoutePathParams<TixApiRoutes[\"get-permit\"]>,\n options?: Pick<RequestInit, \"signal\">,\n ) {\n return tixApi(\n {\n route: \"get-permit\",\n pathParams,\n },\n options,\n );\n },\n async getProtocolConfig(options?: Pick<RequestInit, \"signal\">) {\n const {\n event_registration_fee_minor,\n permit_fee_minor,\n p2p_transfer_fee_minor,\n ...protocolConfig\n } = await tixApi(\n {\n route: \"get-protocol-config-account\",\n },\n options,\n );\n return {\n ...protocolConfig,\n event_registration_fee_cents: convertWireUsdcMinorToCents(\n event_registration_fee_minor,\n ),\n permit_fee_cents: convertWireUsdcMinorToCents(permit_fee_minor),\n p2p_transfer_fee_cents: convertWireUsdcMinorToCents(\n p2p_transfer_fee_minor,\n ),\n };\n },\n async getIntegrator(\n pathParams: RoutePathParams<TixApiRoutes[\"get-integrator-account\"]>,\n options?: Pick<RequestInit, \"signal\">,\n ) {\n const { integrator, ...account } = await tixApi(\n {\n route: \"get-integrator-account\",\n pathParams,\n },\n options,\n );\n const { balance, ...registration } = integrator;\n return {\n ...account,\n integrator: {\n ...registration,\n balance: {\n amount_cents: convertWireUsdcMinorToCents(balance.amount_minor),\n },\n },\n };\n },\n };\n}\n","import type { z } from \"zod\";\nimport { defineClientRoute } from \"../routes/define-client-route\";\nimport { ApiKeyHeadersSchema } from \"../routes/request-schemas\";\nimport { EventPathParametersSchema } from \"../tix-api/path-params\";\nimport {\n PostIntegratorMetadataRequestBodySchema,\n PostTixIndexerIntegratorMetadataResultSchema,\n} from \"./metadata\";\nimport { tixIndexerReadApiClientRoutes } from \"./read-routes\";\n\nexport { PostIntegratorMetadataRequestBodySchema } from \"./metadata\";\nexport {\n ActiveListingsQuerySchema,\n GET_ACTIVE_LISTINGS_ROUTE_KEY,\n GET_EVENT_ROUTE_KEY,\n GET_EVENTS_ROUTE_KEY,\n GET_INTEGRATOR_ROUTE_KEY,\n GET_UPCOMING_EVENTS_ROUTE_KEY,\n LimitCursorQuerySchema,\n} from \"./read-routes\";\nexport const POST_INTEGRATOR_METADATA_ROUTE_KEY =\n \"POST /events/{eventId}/metadata\";\n\nexport const tixIndexerApiClientRoutes = {\n ...tixIndexerReadApiClientRoutes,\n \"post-integrator-metadata\": defineClientRoute({\n name: \"post-integrator-metadata\",\n method: \"POST\" as const,\n routeKey: POST_INTEGRATOR_METADATA_ROUTE_KEY,\n pathParamsSchema: EventPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\", eventId }) =>\n `${baseApiUrl}/events/${eventId}/metadata`,\n headersSchema: ApiKeyHeadersSchema,\n requestBodySchema: PostIntegratorMetadataRequestBodySchema,\n responseBodySchema: PostTixIndexerIntegratorMetadataResultSchema,\n }),\n} as const satisfies Record<string, unknown>;\n\nexport const responseBodySchemaByRouteKey = Object.fromEntries(\n Object.values(tixIndexerApiClientRoutes).map(\n (route) => [route.routeKey, route.responseBodySchema] as const,\n ),\n) as Record<string, z.ZodType<Record<string, unknown>>>;\n","import {\n TdpApiError,\n TdpResponseValidationError,\n} from \"../wallet-custody/http-error\";\nimport type { ClientRouteFailure } from \"./execute-client-route\";\n\nexport function createTdpApiErrorFromRouteFailure(failure: ClientRouteFailure) {\n return failure.kind === \"response-validation\"\n ? new TdpResponseValidationError(failure)\n : new TdpApiError(failure);\n}\n","import { z } from \"zod\";\nimport { joinUrlSegments } from \"../utils/join-url-segments\";\nimport { readResponsePayload } from \"../utils/read-response-payload\";\nimport type { AnyClientRoute } from \"./define-client-route\";\n\nexport type ClientRouteFailure = {\n kind: \"http-status\" | \"response-validation\";\n route: string;\n method: string;\n path: string;\n status: number;\n statusText: string;\n payload: unknown;\n code?: string;\n requestId?: string;\n validationError?: z.ZodError;\n};\n\n/** The JSON body that a TDP API returns for a handled error. */\nexport const ErrorResponseBodySchema = z.looseObject({\n message: z.string(),\n code: z.string(),\n});\n\n/** Builds the URL, headers, and body for a route, sends it, and parses the response through the route's schema. */\nexport async function executeClientRoute<TRoute extends AnyClientRoute>({\n baseApiUrl,\n fetchImpl,\n headers,\n signal,\n routeName,\n route,\n pathParams,\n queryParams,\n body,\n routeHeadersInput,\n createError,\n}: {\n baseApiUrl: string;\n fetchImpl: typeof fetch;\n headers?: HeadersInit;\n signal?: RequestInit[\"signal\"];\n routeName: string;\n route: TRoute;\n pathParams: unknown;\n queryParams?: unknown;\n body: unknown;\n routeHeadersInput: Record<string, string | undefined>;\n createError: (failure: ClientRouteFailure) => Error;\n}): Promise<z.output<TRoute[\"responseBodySchema\"]>> {\n // TS can't reconcile the route's output types with input types, hence the `as never` clauses.\n const path = route.buildPath(pathParams as never);\n const routeHeaders = route.buildHeaders(routeHeadersInput as never);\n const url =\n joinUrlSegments(baseApiUrl, path) +\n (queryParams === undefined\n ? \"\"\n : route.buildQueryString(queryParams as never));\n\n const requestHeaders = new Headers(headers);\n requestHeaders.set(\"content-type\", \"application/json\");\n new Headers(routeHeaders as HeadersInit).forEach((value, name) => {\n requestHeaders.set(name, value);\n });\n const response = await fetchImpl(url, {\n method: route.method,\n ...(signal === undefined ? {} : { signal }),\n headers: Object.fromEntries(requestHeaders),\n body:\n body === undefined ? undefined : route.buildJsonPayload(body as never),\n });\n const payload = await readResponsePayload(response);\n const failure = {\n route: routeName,\n method: route.method,\n path,\n status: response.status,\n statusText: response.statusText,\n payload,\n requestId: response.headers.get(\"apigw-requestid\") ?? undefined,\n };\n if (!response.ok) {\n throw createError({\n kind: \"http-status\",\n ...failure,\n code: ErrorResponseBodySchema.pick({ code: true }).safeParse(payload).data\n ?.code,\n });\n }\n\n const parsed = route.responseBodySchema.safeParse(payload);\n if (!parsed.success) {\n throw createError({\n kind: \"response-validation\",\n ...failure,\n validationError: parsed.error,\n });\n }\n return parsed.data as z.output<TRoute[\"responseBodySchema\"]>;\n}\n","/**\n * Joins URL segments with one slash; i.e., remove repeated slashes.\n */\nexport function joinUrlSegments(baseUrl: string, path: string): string {\n return `${baseUrl.replace(/\\/+$/, \"\")}/${path.replace(/^\\/+/, \"\")}`;\n}\n","/**\n * Reads the body without letting an empty or non-JSON payload mask the HTTP status.\n **/\nexport async function readResponsePayload(\n response: Response,\n): Promise<unknown> {\n const rawBody = await response.text();\n if (rawBody.length === 0) return undefined;\n try {\n return JSON.parse(rawBody);\n } catch {\n return rawBody;\n }\n}\n","import type {\n ClientRouteMap,\n ClientRouteRequest,\n RouteQueryParams,\n RouteRequestField,\n RouteResponseBody,\n} from \"../routes/client-request-types\";\nimport { createTdpApiErrorFromRouteFailure } from \"../routes/create-tdp-api-error-from-route-failure\";\nimport { executeClientRoute } from \"../routes/execute-client-route\";\nimport { solanaDataApiClientRoutes } from \"../solana-data-api/routes\";\n\n/** The solana-data-api is mapped onto the public domain under this key. */\nexport const SOLANA_DATA_API_PATH_PREFIX = \"solana\";\n\n/** The request for a route. No caller-settable `headers`: the client injects them itself. */\ntype FetchTixApiRequest<\n TRoutes extends ClientRouteMap,\n TRouteName extends keyof TRoutes,\n> = ClientRouteRequest<TRoutes, TRouteName> &\n RouteRequestField<\"queryParams\", RouteQueryParams<TRoutes[TRouteName]>>;\n\nexport function createTixApiClientForRoutes<TRoutes extends ClientRouteMap>({\n routes,\n baseApiUrl,\n apiKey,\n fetchImpl = fetch,\n headers,\n additionalHeaders,\n}: {\n routes: TRoutes;\n baseApiUrl: string;\n apiKey: string | (() => Promise<string>);\n fetchImpl?: typeof fetch;\n headers?: HeadersInit;\n additionalHeaders?: Parameters<\n typeof executeClientRoute\n >[0][\"routeHeadersInput\"];\n}) {\n return async function fetchTixApi<TRouteName extends keyof TRoutes & string>(\n {\n route,\n pathParams,\n queryParams,\n body,\n }: FetchTixApiRequest<TRoutes, TRouteName>,\n { signal }: Pick<RequestInit, \"signal\"> = {},\n ): Promise<RouteResponseBody<TRoutes[TRouteName]>> {\n const prefix =\n route in solanaDataApiClientRoutes\n ? `/${SOLANA_DATA_API_PATH_PREFIX}`\n : \"\";\n return executeClientRoute({\n baseApiUrl: `${baseApiUrl}${prefix}`,\n fetchImpl,\n headers,\n signal,\n routeName: route,\n route: routes[route],\n pathParams,\n queryParams,\n body,\n routeHeadersInput: {\n \"x-api-key\": typeof apiKey === \"string\" ? apiKey : await apiKey(),\n ...additionalHeaders,\n },\n createError: createTdpApiErrorFromRouteFailure,\n }) as Promise<RouteResponseBody<TRoutes[TRouteName]>>;\n };\n}\n","import { solanaDataApiClientRoutes } from \"../solana-data-api/routes\";\nimport { tixIndexerApiClientRoutes } from \"../tix-indexer-api/routes\";\nimport { createTixApiClientForRoutes } from \"./create-tix-api-client\";\n\nexport { SOLANA_DATA_API_PATH_PREFIX } from \"./create-tix-api-client\";\n\nexport const tixApiClientRoutes = {\n ...solanaDataApiClientRoutes,\n ...tixIndexerApiClientRoutes,\n} as const;\n\nexport type TixApiRoutes = typeof tixApiClientRoutes;\nexport type TixApiClient = ReturnType<typeof createTixApiClient>;\n\nexport function createTixApiClient({\n baseApiUrl,\n apiKey,\n fetchImpl = fetch,\n headers,\n}: {\n baseApiUrl: string;\n apiKey: string | (() => Promise<string>);\n fetchImpl?: typeof fetch;\n /**\n * Additional request headers. SDK-managed headers take precedence.\n * Cross-origin browser requests require server CORS support for custom headers.\n */\n headers?: HeadersInit;\n}) {\n return createTixApiClientForRoutes({\n routes: tixApiClientRoutes,\n baseApiUrl,\n apiKey,\n fetchImpl,\n headers,\n });\n}\n","import type {\n RoutePathParams,\n RouteQueryParams,\n} from \"../routes/client-request-types\";\nimport type { TixApiClient, TixApiRoutes } from \"../tix-api/api-client\";\n\n/** The route schema coerces `limit` from a query string, which leaves its input type as `unknown`. */\ntype EventsQuery = Omit<\n RouteQueryParams<TixApiRoutes[\"get-events\"]>,\n \"limit\"\n> & {\n limit?: number;\n};\n\nexport function createEventsClient(tixApi: TixApiClient) {\n return {\n list(queryParams: EventsQuery = {}, options?: Pick<RequestInit, \"signal\">) {\n return tixApi(\n {\n route: \"get-events\",\n queryParams,\n },\n options,\n );\n },\n get(\n pathParams: RoutePathParams<TixApiRoutes[\"get-event\"]>,\n options?: Pick<RequestInit, \"signal\">,\n ) {\n return tixApi(\n {\n route: \"get-event\",\n pathParams,\n },\n options,\n );\n },\n };\n}\n","import type {\n ClientRouteRequest,\n RouteQueryParams,\n} from \"../routes/client-request-types\";\nimport type { TixApiClient, TixApiRoutes } from \"../tix-api/api-client\";\nimport { convertWireUsdcMinorToCents } from \"../utils/usdc-cents\";\n\ntype MetadataRequest = ClientRouteRequest<\n TixApiRoutes,\n \"post-integrator-metadata\"\n>;\n/** The route schemas coerce `limit` from a query string, which leaves its input type as `unknown`. */\ntype WithNumericLimit<TQuery> = Omit<TQuery, \"limit\"> & { limit?: number };\ntype ActiveListingsQuery = WithNumericLimit<\n RouteQueryParams<TixApiRoutes[\"get-active-listings\"]>\n>;\ntype UpcomingEventsQuery = WithNumericLimit<\n RouteQueryParams<TixApiRoutes[\"get-upcoming-events\"]>\n>;\n\nexport function createIndexerClient(tixApi: TixApiClient) {\n return {\n async listActiveListings(\n queryParams: ActiveListingsQuery,\n options?: Pick<RequestInit, \"signal\">,\n ) {\n const { items, next_cursor } = await tixApi(\n {\n route: \"get-active-listings\",\n queryParams,\n },\n options,\n );\n return {\n items: items.map(({ ask_price_minor, ...listing }) => ({\n ...listing,\n ask_price_cents:\n ask_price_minor === null\n ? null\n : convertWireUsdcMinorToCents(ask_price_minor),\n })),\n next_cursor,\n };\n },\n listUpcomingEvents(\n queryParams: UpcomingEventsQuery = {},\n options?: Pick<RequestInit, \"signal\">,\n ) {\n return tixApi(\n {\n route: \"get-upcoming-events\",\n queryParams,\n },\n options,\n );\n },\n updateEventMetadata(\n {\n eventId,\n body,\n }: MetadataRequest[\"pathParams\"] & Pick<MetadataRequest, \"body\">,\n options?: Pick<RequestInit, \"signal\">,\n ) {\n return tixApi(\n {\n route: \"post-integrator-metadata\",\n pathParams: { eventId },\n body,\n },\n options,\n );\n },\n };\n}\n","import type { TixApiClient } from \"../tix-api/api-client\";\n\nexport function createIntegratorClient(tixApi: TixApiClient) {\n return {\n getInfo(options?: Pick<RequestInit, \"signal\">) {\n return tixApi(\n {\n route: \"get-integrator\",\n },\n options,\n );\n },\n };\n}\n","export const GET_USER_ADDRESS_ROUTE_KEY =\n \"GET /wallets/users/{subject}/address\";\nexport const GET_INTEGRATOR_ADDRESS_ROUTE_KEY =\n \"GET /wallets/integrators/{subject}/address\";\nexport const SIGN_USER_TRANSACTION_ROUTE_KEY =\n \"POST /wallets/users/{subject}/signatures\";\nexport const SIGN_INTEGRATOR_TRANSACTION_ROUTE_KEY =\n \"POST /wallets/integrators/{subject}/signatures\";\nexport const SUBMIT_TENANT_TRANSACTION_ROUTE_KEY =\n \"POST /transactions/submissions\";\nexport const GET_TRANSACTION_ROUTE_KEY = \"GET /transactions/{id}\";\nexport const CREATE_AND_SUBMIT_ORDER_ROUTE_KEY = \"POST /orders\";\nexport const GET_ORDER_ROUTE_KEY = \"GET /orders/{id}\";\nexport const GET_FEE_PAYER_ADDRESS_ROUTE_KEY = \"GET /wallets/fee-payer/address\";\nexport const GET_PROTOCOL_AUTHORITY_ADDRESS_ROUTE_KEY =\n \"GET /wallets/protocol-authority/address\";\n","import { defineClientRoute } from \"../routes/define-client-route\";\nimport {\n ApiKeyHeadersSchema,\n IdempotencyKeyAndApiKeyHeadersSchema,\n NoPathParametersSchema,\n} from \"../routes/request-schemas\";\nimport {\n GetAddressResponseSchema,\n WalletPathParametersSchema,\n} from \"./addresses\";\nimport {\n CREATE_AND_SUBMIT_ORDER_ROUTE_KEY,\n GET_FEE_PAYER_ADDRESS_ROUTE_KEY,\n GET_INTEGRATOR_ADDRESS_ROUTE_KEY,\n GET_ORDER_ROUTE_KEY,\n GET_PROTOCOL_AUTHORITY_ADDRESS_ROUTE_KEY,\n GET_TRANSACTION_ROUTE_KEY,\n GET_USER_ADDRESS_ROUTE_KEY,\n SIGN_INTEGRATOR_TRANSACTION_ROUTE_KEY,\n SIGN_USER_TRANSACTION_ROUTE_KEY,\n SUBMIT_TENANT_TRANSACTION_ROUTE_KEY,\n} from \"./api-key-route-keys\";\nimport {\n CreateAndSubmitOrderRequestBodySchema,\n CreateAndSubmitOrderResponseSchema,\n GetOrderResponseSchema,\n OrderPathParametersSchema,\n} from \"./orders\";\nimport { SignTransactionResponseSchema } from \"./signing-responses\";\nimport {\n SubmitTenantTransactionResponseSchema,\n TransactionPathParametersSchema,\n} from \"./submission-responses\";\nimport {\n SignTenantTransactionRequestBodySchema,\n SubmitTenantTransactionRequestBodySchema,\n} from \"./transaction-inputs\";\n\nexport const apiKeyWalletCustodyApiClientRoutes = {\n \"get-user-address\": defineClientRoute({\n name: \"get-user-address\",\n method: \"GET\",\n routeKey: GET_USER_ADDRESS_ROUTE_KEY,\n pathParamsSchema: WalletPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\", subject }) =>\n `${baseApiUrl}/wallets/users/${subject}/address`,\n headersSchema: ApiKeyHeadersSchema,\n responseBodySchema: GetAddressResponseSchema,\n }),\n \"get-integrator-address\": defineClientRoute({\n name: \"get-integrator-address\",\n method: \"GET\",\n routeKey: GET_INTEGRATOR_ADDRESS_ROUTE_KEY,\n pathParamsSchema: WalletPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\", subject }) =>\n `${baseApiUrl}/wallets/integrators/${subject}/address`,\n headersSchema: ApiKeyHeadersSchema,\n responseBodySchema: GetAddressResponseSchema,\n }),\n \"sign-user-transaction\": defineClientRoute({\n name: \"sign-user-transaction\",\n method: \"POST\",\n routeKey: SIGN_USER_TRANSACTION_ROUTE_KEY,\n pathParamsSchema: WalletPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\", subject }) =>\n `${baseApiUrl}/wallets/users/${subject}/signatures`,\n headersSchema: IdempotencyKeyAndApiKeyHeadersSchema,\n requestBodySchema: SignTenantTransactionRequestBodySchema,\n responseBodySchema: SignTransactionResponseSchema,\n }),\n \"sign-integrator-transaction\": defineClientRoute({\n name: \"sign-integrator-transaction\",\n method: \"POST\",\n routeKey: SIGN_INTEGRATOR_TRANSACTION_ROUTE_KEY,\n pathParamsSchema: WalletPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\", subject }) =>\n `${baseApiUrl}/wallets/integrators/${subject}/signatures`,\n headersSchema: IdempotencyKeyAndApiKeyHeadersSchema,\n requestBodySchema: SignTenantTransactionRequestBodySchema,\n responseBodySchema: SignTransactionResponseSchema,\n }),\n \"submit-tenant-transaction\": defineClientRoute({\n name: \"submit-tenant-transaction\",\n method: \"POST\",\n routeKey: SUBMIT_TENANT_TRANSACTION_ROUTE_KEY,\n pathParamsSchema: NoPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\" }) =>\n `${baseApiUrl}/transactions/submissions`,\n headersSchema: ApiKeyHeadersSchema,\n requestBodySchema: SubmitTenantTransactionRequestBodySchema,\n responseBodySchema: SubmitTenantTransactionResponseSchema,\n }),\n \"get-transaction\": defineClientRoute({\n name: \"get-transaction\",\n method: \"GET\",\n routeKey: GET_TRANSACTION_ROUTE_KEY,\n pathParamsSchema: TransactionPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\", id }) => `${baseApiUrl}/transactions/${id}`,\n headersSchema: ApiKeyHeadersSchema,\n responseBodySchema: SubmitTenantTransactionResponseSchema,\n }),\n \"get-order\": defineClientRoute({\n name: \"get-order\",\n method: \"GET\",\n routeKey: GET_ORDER_ROUTE_KEY,\n pathParamsSchema: OrderPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\", id }) =>\n `${baseApiUrl}/orders/${encodeURIComponent(id)}`,\n headersSchema: ApiKeyHeadersSchema,\n responseBodySchema: GetOrderResponseSchema,\n }),\n \"create-and-submit-order\": defineClientRoute({\n name: \"create-and-submit-order\",\n method: \"POST\",\n routeKey: CREATE_AND_SUBMIT_ORDER_ROUTE_KEY,\n pathParamsSchema: NoPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\" }) => `${baseApiUrl}/orders`,\n headersSchema: IdempotencyKeyAndApiKeyHeadersSchema,\n requestBodySchema: CreateAndSubmitOrderRequestBodySchema,\n responseBodySchema: CreateAndSubmitOrderResponseSchema,\n }),\n \"get-fee-payer-address\": defineClientRoute({\n name: \"get-fee-payer-address\",\n method: \"GET\",\n routeKey: GET_FEE_PAYER_ADDRESS_ROUTE_KEY,\n pathParamsSchema: NoPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\" }) =>\n `${baseApiUrl}/wallets/fee-payer/address`,\n headersSchema: ApiKeyHeadersSchema,\n responseBodySchema: GetAddressResponseSchema,\n }),\n \"get-protocol-authority-address\": defineClientRoute({\n name: \"get-protocol-authority-address\",\n method: \"GET\",\n routeKey: GET_PROTOCOL_AUTHORITY_ADDRESS_ROUTE_KEY,\n pathParamsSchema: NoPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\" }) =>\n `${baseApiUrl}/wallets/protocol-authority/address`,\n headersSchema: ApiKeyHeadersSchema,\n responseBodySchema: GetAddressResponseSchema,\n }),\n};\n","import type {\n ClientRouteMap,\n ClientRouteRequest,\n RouteRequestField,\n RouteRequestHeader,\n} from \"../routes/client-request-types\";\nimport { createTdpApiErrorFromRouteFailure } from \"../routes/create-tdp-api-error-from-route-failure\";\nimport type { AnyClientRoute } from \"../routes/define-client-route\";\nimport { executeClientRoute } from \"../routes/execute-client-route\";\n\nexport type FetchWalletCustodyApiRequest<\n TRoutes extends ClientRouteMap,\n TRouteName extends keyof TRoutes,\n> = ClientRouteRequest<TRoutes, TRouteName> &\n RouteRequestField<\n \"idempotencyKey\",\n RouteRequestHeader<TRoutes[TRouteName], \"idempotency-key\">\n >;\n\nexport function executeWalletCustodyRoute<TRoute extends AnyClientRoute>(\n request: Omit<\n Parameters<typeof executeClientRoute<TRoute>>[0],\n \"createError\"\n >,\n) {\n return executeClientRoute({\n ...request,\n createError: createTdpApiErrorFromRouteFailure,\n } satisfies Parameters<typeof executeClientRoute<TRoute>>[0]);\n}\n","import { apiKeyWalletCustodyApiClientRoutes } from \"@kyd-labs/tdp-schemas/wallet-custody/api-key-routes\";\nimport type {\n RouteNamesRequiringHeader,\n RouteResponseBody,\n} from \"../routes/client-request-types\";\nimport {\n executeWalletCustodyRoute,\n type FetchWalletCustodyApiRequest,\n} from \"./execute-wallet-custody-route\";\nimport type { walletCustodyApiClientRoutes } from \"./routes\";\n\nexport type WalletCustodyApiClient = ReturnType<\n typeof createWalletCustodyApiClient\n>;\n\n/** Client for claim routes authorized by an API key. */\nexport function createWalletCustodyApiClient({\n baseApiUrl,\n apiKey,\n fetchImpl = fetch,\n headers,\n}: {\n baseApiUrl: string;\n apiKey: string | (() => Promise<string>);\n fetchImpl?: typeof fetch;\n headers?: HeadersInit;\n}) {\n return async function fetchWalletCustodyApi<\n TRouteName extends ApiKeyWalletCustodyApiRouteName,\n >(\n {\n route,\n pathParams,\n body,\n idempotencyKey,\n }: FetchWalletCustodyApiRequest<ApiKeyWalletCustodyApiRoutes, TRouteName>,\n { signal }: Pick<RequestInit, \"signal\"> = {},\n ): Promise<RouteResponseBody<RouteForName<TRouteName>>> {\n return executeWalletCustodyRoute({\n baseApiUrl,\n fetchImpl,\n headers,\n signal,\n routeName: route,\n route: apiKeyWalletCustodyApiClientRoutes[route],\n pathParams,\n body,\n routeHeadersInput: {\n \"x-api-key\": typeof apiKey === \"string\" ? apiKey : await apiKey(),\n \"idempotency-key\": idempotencyKey,\n },\n }) as Promise<RouteResponseBody<RouteForName<TRouteName>>>;\n };\n}\n\n// -------------------------------------- Route helper types ---------------------------------------\nexport type WalletCustodyApiRoutes = typeof walletCustodyApiClientRoutes;\nexport type ApiKeyWalletCustodyApiRoutes =\n typeof apiKeyWalletCustodyApiClientRoutes;\ntype ApiKeyWalletCustodyApiRouteName = RouteNamesRequiringHeader<\n ApiKeyWalletCustodyApiRoutes,\n \"x-api-key\"\n>;\ntype RouteForName<TRouteName extends ApiKeyWalletCustodyApiRouteName> =\n ApiKeyWalletCustodyApiRoutes[TRouteName];\n","import type {\n RoutePathParams,\n RouteRequestBody,\n RouteRequestField,\n RouteRequestHeader,\n} from \"../routes/client-request-types\";\nimport type {\n ApiKeyWalletCustodyApiRoutes,\n WalletCustodyApiClient,\n} from \"./api-client\";\n\ntype CreateAndSubmitOrderRoute =\n ApiKeyWalletCustodyApiRoutes[\"create-and-submit-order\"];\n\nexport function createOrdersClient(walletCustodyApi: WalletCustodyApiClient) {\n return {\n /** Creates the order and submits its purchase in the same call. */\n createAndSubmit(\n {\n idempotencyKey,\n body,\n }: RouteRequestField<\n \"body\",\n RouteRequestBody<CreateAndSubmitOrderRoute>\n > &\n RouteRequestField<\n \"idempotencyKey\",\n RouteRequestHeader<CreateAndSubmitOrderRoute, \"idempotency-key\">\n >,\n options?: Pick<RequestInit, \"signal\">,\n ) {\n return walletCustodyApi(\n { route: \"create-and-submit-order\", body, idempotencyKey },\n options,\n );\n },\n get(\n pathParams: RoutePathParams<ApiKeyWalletCustodyApiRoutes[\"get-order\"]>,\n options?: Pick<RequestInit, \"signal\">,\n ) {\n return walletCustodyApi({ route: \"get-order\", pathParams }, options);\n },\n };\n}\n","export { MAX_PERMITS_PER_CLAIM_WALLET } from \"@kyd-labs/tdp-schemas/wallet-custody/const\";\n\nexport const INTEGRATOR_PRIMARY_ADDRESS_SUBJECT = \"PRIMARY_ADDRESS\";\n","import type {\n RoutePathParams,\n RouteRequestBody,\n RouteRequestField,\n RouteRequestHeader,\n} from \"../routes/client-request-types\";\nimport type {\n ApiKeyWalletCustodyApiRoutes,\n WalletCustodyApiClient,\n} from \"./api-client\";\nimport { INTEGRATOR_PRIMARY_ADDRESS_SUBJECT } from \"./const\";\n\ntype SignTransactionInput<\n TRoute extends \"sign-user-transaction\" | \"sign-integrator-transaction\",\n> = Partial<RoutePathParams<ApiKeyWalletCustodyApiRoutes[TRoute]>> &\n RouteRequestField<\n \"body\",\n RouteRequestBody<ApiKeyWalletCustodyApiRoutes[TRoute]>\n > &\n RouteRequestField<\n \"idempotencyKey\",\n RouteRequestHeader<ApiKeyWalletCustodyApiRoutes[TRoute], \"idempotency-key\">\n >;\n\nexport function createTransactionsClient(\n walletCustodyApi: WalletCustodyApiClient,\n) {\n return {\n /** A `subject` is not necessary. */\n signIntegrator(\n {\n subject = INTEGRATOR_PRIMARY_ADDRESS_SUBJECT,\n idempotencyKey,\n body,\n }: SignTransactionInput<\"sign-integrator-transaction\">,\n options?: Pick<RequestInit, \"signal\">,\n ) {\n return walletCustodyApi(\n {\n route: \"sign-integrator-transaction\",\n pathParams: { subject },\n body,\n idempotencyKey,\n },\n options,\n );\n },\n submit(\n {\n body,\n }: RouteRequestField<\n \"body\",\n RouteRequestBody<\n ApiKeyWalletCustodyApiRoutes[\"submit-tenant-transaction\"]\n >\n >,\n options?: Pick<RequestInit, \"signal\">,\n ) {\n return walletCustodyApi(\n {\n route: \"submit-tenant-transaction\",\n body,\n },\n options,\n );\n },\n };\n}\n","import type { RoutePathParams } from \"../routes/client-request-types\";\nimport type {\n ApiKeyWalletCustodyApiRoutes,\n WalletCustodyApiClient,\n} from \"./api-client\";\nimport { INTEGRATOR_PRIMARY_ADDRESS_SUBJECT } from \"./const\";\n\nexport function createWalletClient(walletCustodyApi: WalletCustodyApiClient) {\n return {\n getUserAddress(\n pathParams: RoutePathParams<\n ApiKeyWalletCustodyApiRoutes[\"get-user-address\"]\n >,\n options?: Pick<RequestInit, \"signal\">,\n ) {\n return walletCustodyApi(\n {\n route: \"get-user-address\",\n pathParams,\n },\n options,\n );\n },\n /** A `subject` is not necessary. */\n getIntegratorAddress(\n {\n subject = INTEGRATOR_PRIMARY_ADDRESS_SUBJECT,\n }: Partial<\n RoutePathParams<ApiKeyWalletCustodyApiRoutes[\"get-integrator-address\"]>\n > = {},\n options?: Pick<RequestInit, \"signal\">,\n ) {\n return walletCustodyApi(\n {\n route: \"get-integrator-address\",\n pathParams: { subject },\n },\n options,\n );\n },\n getFeePayerAddress(options?: Pick<RequestInit, \"signal\">) {\n return walletCustodyApi(\n {\n route: \"get-fee-payer-address\",\n },\n options,\n );\n },\n getProtocolAuthorityAddress(options?: Pick<RequestInit, \"signal\">) {\n return walletCustodyApi(\n {\n route: \"get-protocol-authority-address\",\n },\n options,\n );\n },\n };\n}\n","import { createSolanaClient } from \"./solana-data-api/create-solana-client\";\nimport { createTixApiClient } from \"./tix-api/api-client\";\nimport { createEventsClient } from \"./tix-indexer-api/create-events-client\";\nimport { createIndexerClient } from \"./tix-indexer-api/create-indexer-client\";\nimport { createIntegratorClient } from \"./tix-indexer-api/create-integrator-client\";\nimport { centsToUsdcMinor, usdcMinorToCents } from \"./utils/usdc-cents\";\nimport { createWalletCustodyApiClient } from \"./wallet-custody/api-client\";\nimport { createOrdersClient } from \"./wallet-custody/create-orders-client\";\nimport { createTransactionsClient } from \"./wallet-custody/create-transactions-client\";\nimport { createWalletClient } from \"./wallet-custody/create-wallet-client\";\n\nexport type * from \"./types/index\";\n\nexport type TdpClientOptions = Parameters<typeof createTixApiClient>[0];\nexport type TdpClient = ReturnType<typeof createTdpClient>;\n\nexport function createTdpClient(options: TdpClientOptions) {\n const tixApi = createTixApiClient(options);\n const walletCustodyApi = createWalletCustodyApiClient(options);\n const solana = createSolanaClient(tixApi);\n return {\n solana,\n events: createEventsClient(tixApi),\n indexer: createIndexerClient(tixApi),\n integrator: createIntegratorClient(tixApi),\n wallets: createWalletClient(walletCustodyApi),\n transactions: createTransactionsClient(walletCustodyApi),\n orders: createOrdersClient(walletCustodyApi),\n utils: { usdcMinorToCents, centsToUsdcMinor },\n };\n}\n"],"mappings":"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","names":["responseBodySchemaByRouteKey"]}
|
package/dist/schemas.d.ts
CHANGED
|
@@ -12,36 +12,24 @@ declare const GetAddressResponseSchema: z.ZodObject<{
|
|
|
12
12
|
address: z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Address<string>, string>>;
|
|
13
13
|
}, z.core.$strip>;
|
|
14
14
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
* the wire params minus everything TDP derives — the `buyer` is the claim
|
|
18
|
-
* wallet, and the integrator is the caller's own primary integrator wallet.
|
|
19
|
-
* Note the primary integrator wallet must be a registered integrator
|
|
20
|
-
* on-chain; i.e., a TIX-protocol integrator with a funded treasury.
|
|
21
|
-
*/
|
|
22
|
-
declare const AcceptClaimOffersSchema: z.ZodObject<{
|
|
23
|
-
event_id: z.ZodPipe<z.ZodPipe<z.ZodPipe<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBigInt]>, z.ZodTransform<bigint, string | number | bigint>>, z.ZodBigInt>, z.ZodTransform<string, bigint>>;
|
|
24
|
-
ticket_id: z.ZodPipe<z.ZodPipe<z.ZodPipe<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBigInt]>, z.ZodTransform<bigint, string | number | bigint>>, z.ZodBigInt>, z.ZodTransform<string, bigint>>;
|
|
25
|
-
permit_version: z.ZodPipe<z.ZodPipe<z.ZodPipe<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBigInt]>, z.ZodTransform<bigint, string | number | bigint>>, z.ZodBigInt>, z.ZodTransform<string, bigint>>;
|
|
26
|
-
ticket_type_config: z.ZodOptional<z.ZodNullable<z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Address<string>, string>>>>;
|
|
27
|
-
usdc_mint: z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Address<string>, string>>;
|
|
28
|
-
seller_payout: z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Address<string>, string>>;
|
|
29
|
-
royalty_destinations: z.ZodArray<z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Address<string>, string>>>;
|
|
15
|
+
declare const OrderPathParametersSchema: z.ZodObject<{
|
|
16
|
+
id: z.ZodString;
|
|
30
17
|
}, z.core.$strict>;
|
|
31
|
-
|
|
32
|
-
|
|
18
|
+
/** A listed ticket to buy. The server reads its listing, permit, event and the protocol config. */
|
|
19
|
+
declare const CreateAndSubmitOrderListingSchema: z.ZodObject<{
|
|
20
|
+
eventId: z.ZodPipe<z.ZodPipe<z.ZodPipe<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBigInt]>, z.ZodTransform<bigint, string | number | bigint>>, z.ZodBigInt>, z.ZodTransform<string, bigint>>;
|
|
21
|
+
ticketId: z.ZodPipe<z.ZodPipe<z.ZodPipe<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBigInt]>, z.ZodTransform<bigint, string | number | bigint>>, z.ZodBigInt>, z.ZodTransform<string, bigint>>;
|
|
22
|
+
}, z.core.$strict>;
|
|
23
|
+
declare const CreateAndSubmitOrderRequestBodySchema: z.ZodObject<{
|
|
24
|
+
userId: z.ZodString;
|
|
33
25
|
userEmail: z.ZodEmail;
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
permit_version: z.ZodPipe<z.ZodPipe<z.ZodPipe<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBigInt]>, z.ZodTransform<bigint, string | number | bigint>>, z.ZodBigInt>, z.ZodTransform<string, bigint>>;
|
|
38
|
-
ticket_type_config: z.ZodOptional<z.ZodNullable<z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Address<string>, string>>>>;
|
|
39
|
-
usdc_mint: z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Address<string>, string>>;
|
|
40
|
-
seller_payout: z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Address<string>, string>>;
|
|
41
|
-
royalty_destinations: z.ZodArray<z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Address<string>, string>>>;
|
|
26
|
+
listings: z.ZodArray<z.ZodObject<{
|
|
27
|
+
eventId: z.ZodPipe<z.ZodPipe<z.ZodPipe<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBigInt]>, z.ZodTransform<bigint, string | number | bigint>>, z.ZodBigInt>, z.ZodTransform<string, bigint>>;
|
|
28
|
+
ticketId: z.ZodPipe<z.ZodPipe<z.ZodPipe<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBigInt]>, z.ZodTransform<bigint, string | number | bigint>>, z.ZodBigInt>, z.ZodTransform<string, bigint>>;
|
|
42
29
|
}, z.core.$strict>>;
|
|
43
30
|
}, z.core.$strip>;
|
|
44
|
-
declare const
|
|
31
|
+
declare const CreateAndSubmitOrderResponseSchema: z.ZodObject<{
|
|
32
|
+
id: z.ZodString;
|
|
45
33
|
status: z.ZodNullable<z.ZodEnum<{
|
|
46
34
|
processing: "processing";
|
|
47
35
|
confirmed: "confirmed";
|
|
@@ -55,9 +43,8 @@ declare const AcceptClaimOffersResponseSchema: z.ZodObject<{
|
|
|
55
43
|
claimUrl: z.ZodURL;
|
|
56
44
|
failureReason: z.ZodOptional<z.ZodString>;
|
|
57
45
|
}, z.core.$strip>;
|
|
58
|
-
type
|
|
59
|
-
|
|
60
|
-
declare const GetPurchaseStatusResponseSchema: z.ZodObject<{
|
|
46
|
+
type CreateAndSubmitOrderResponse = z.infer<typeof CreateAndSubmitOrderResponseSchema>;
|
|
47
|
+
declare const GetOrderResponseSchema: z.ZodObject<{
|
|
61
48
|
custodialTransactionId: z.ZodPipe<z.ZodCustomStringFormat<"sha256_hex">, z.ZodTransform<Sha256Hex, string>>;
|
|
62
49
|
transactionSignature: z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Signature, string>>;
|
|
63
50
|
status: z.ZodNullable<z.ZodEnum<{
|
|
@@ -67,12 +54,13 @@ declare const GetPurchaseStatusResponseSchema: z.ZodObject<{
|
|
|
67
54
|
expired: "expired";
|
|
68
55
|
}>>;
|
|
69
56
|
failureReason: z.ZodOptional<z.ZodString>;
|
|
57
|
+
id: z.ZodString;
|
|
70
58
|
claimWallet: z.ZodObject<{
|
|
71
59
|
address: z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Address<string>, string>>;
|
|
72
60
|
claimWalletId: z.ZodPipe<z.ZodCustomStringFormat<"sha256_hex">, z.ZodTransform<Sha256Hex, string>>;
|
|
73
61
|
}, z.core.$strip>;
|
|
74
62
|
}, z.core.$strip>;
|
|
75
|
-
type
|
|
63
|
+
type GetOrderResponse = z.infer<typeof GetOrderResponseSchema>;
|
|
76
64
|
|
|
77
65
|
declare const SignTransactionResponseSchema: z.ZodObject<{
|
|
78
66
|
custodialTransactionId: z.ZodPipe<z.ZodCustomStringFormat<"sha256_hex">, z.ZodTransform<Sha256Hex, string>>;
|
|
@@ -253,15 +241,15 @@ declare const TixIndexerUpcomingEventsResultSchema: z.ZodObject<{
|
|
|
253
241
|
start_at: z.ZodNullable<z.ZodString>;
|
|
254
242
|
on_sale_at: z.ZodNullable<z.ZodString>;
|
|
255
243
|
image_url: z.ZodNullable<z.ZodString>;
|
|
244
|
+
timezone: z.ZodNullable<z.ZodString>;
|
|
245
|
+
address: z.ZodNullable<z.ZodString>;
|
|
246
|
+
venue: z.ZodNullable<z.ZodString>;
|
|
256
247
|
active_listing_count: z.ZodNumber;
|
|
257
248
|
tickets_issued_count: z.ZodNumber;
|
|
258
249
|
integrator_identity: z.ZodNullable<z.ZodString>;
|
|
259
250
|
updated_at: z.ZodNullable<z.ZodString>;
|
|
260
251
|
found: z.ZodLiteral<true>;
|
|
261
252
|
genres: z.ZodNullable<z.ZodArray<z.ZodString>>;
|
|
262
|
-
timezone: z.ZodNullable<z.ZodString>;
|
|
263
|
-
address: z.ZodNullable<z.ZodString>;
|
|
264
|
-
venue: z.ZodNullable<z.ZodString>;
|
|
265
253
|
}, z.core.$strict>>;
|
|
266
254
|
next_cursor: z.ZodNullable<z.ZodString>;
|
|
267
255
|
}, z.core.$strict>;
|
|
@@ -282,6 +270,10 @@ declare const TixIndexerActiveListingsResultSchema: z.ZodObject<{
|
|
|
282
270
|
next_cursor: z.ZodNullable<z.ZodString>;
|
|
283
271
|
}, z.core.$strict>;
|
|
284
272
|
type TixIndexerActiveListingsResult = z.infer<typeof TixIndexerActiveListingsResultSchema>;
|
|
273
|
+
/** The wallet address of the API key's primary integrator. */
|
|
274
|
+
declare const GetIntegratorResponseSchema: z.ZodObject<{
|
|
275
|
+
address: z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Address<string>, string>>;
|
|
276
|
+
}, z.core.$strip>;
|
|
285
277
|
|
|
286
278
|
/** Query-string values arrive as strings, hence the coercion. */
|
|
287
279
|
declare const LimitCursorQuerySchema: z.ZodObject<{
|
|
@@ -300,18 +292,6 @@ declare const Blockhash: z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Block
|
|
|
300
292
|
/** A base58 Solana signature. */
|
|
301
293
|
declare const Signature: z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Signature, string>>;
|
|
302
294
|
|
|
303
|
-
declare const AcceptOfferV2ParamsSchema: z.ZodObject<{
|
|
304
|
-
event_id: z.ZodPipe<z.ZodPipe<z.ZodPipe<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBigInt]>, z.ZodTransform<bigint, string | number | bigint>>, z.ZodBigInt>, z.ZodTransform<string, bigint>>;
|
|
305
|
-
ticket_id: z.ZodPipe<z.ZodPipe<z.ZodPipe<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBigInt]>, z.ZodTransform<bigint, string | number | bigint>>, z.ZodBigInt>, z.ZodTransform<string, bigint>>;
|
|
306
|
-
permit_version: z.ZodPipe<z.ZodPipe<z.ZodPipe<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBigInt]>, z.ZodTransform<bigint, string | number | bigint>>, z.ZodBigInt>, z.ZodTransform<string, bigint>>;
|
|
307
|
-
buyer: z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Address<string>, string>>;
|
|
308
|
-
integrator_authority: z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Address<string>, string>>;
|
|
309
|
-
seller_payout: z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Address<string>, string>>;
|
|
310
|
-
royalty_destinations: z.ZodArray<z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Address<string>, string>>>;
|
|
311
|
-
ticket_type_config: z.ZodOptional<z.ZodNullable<z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Address<string>, string>>>>;
|
|
312
|
-
integrator_identity: z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Address<string>, string>>;
|
|
313
|
-
usdc_mint: z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Address<string>, string>>;
|
|
314
|
-
}, z.core.$strip>;
|
|
315
295
|
declare const CancelListingV1ParamsSchema: z.ZodObject<{
|
|
316
296
|
event_id: z.ZodPipe<z.ZodPipe<z.ZodPipe<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBigInt]>, z.ZodTransform<bigint, string | number | bigint>>, z.ZodBigInt>, z.ZodTransform<string, bigint>>;
|
|
317
297
|
ticket_id: z.ZodPipe<z.ZodPipe<z.ZodPipe<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBigInt]>, z.ZodTransform<bigint, string | number | bigint>>, z.ZodBigInt>, z.ZodTransform<string, bigint>>;
|
|
@@ -331,21 +311,6 @@ declare const ListTicketV2ParamsSchema: z.ZodObject<{
|
|
|
331
311
|
expires_at: z.ZodPipe<z.ZodPipe<z.ZodPipe<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBigInt]>, z.ZodTransform<bigint, string | number | bigint>>, z.ZodBigInt>, z.ZodTransform<string, bigint>>;
|
|
332
312
|
ticket_type_config: z.ZodOptional<z.ZodNullable<z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Address<string>, string>>>>;
|
|
333
313
|
}, z.core.$strip>;
|
|
334
|
-
declare const AcceptOfferV2InstructionBatchSchema: z.ZodObject<{
|
|
335
|
-
instruction: z.ZodLiteral<"accept_offer_v2">;
|
|
336
|
-
params: z.ZodArray<z.ZodObject<{
|
|
337
|
-
event_id: z.ZodPipe<z.ZodPipe<z.ZodPipe<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBigInt]>, z.ZodTransform<bigint, string | number | bigint>>, z.ZodBigInt>, z.ZodTransform<string, bigint>>;
|
|
338
|
-
ticket_id: z.ZodPipe<z.ZodPipe<z.ZodPipe<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBigInt]>, z.ZodTransform<bigint, string | number | bigint>>, z.ZodBigInt>, z.ZodTransform<string, bigint>>;
|
|
339
|
-
permit_version: z.ZodPipe<z.ZodPipe<z.ZodPipe<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBigInt]>, z.ZodTransform<bigint, string | number | bigint>>, z.ZodBigInt>, z.ZodTransform<string, bigint>>;
|
|
340
|
-
buyer: z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Address<string>, string>>;
|
|
341
|
-
integrator_authority: z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Address<string>, string>>;
|
|
342
|
-
seller_payout: z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Address<string>, string>>;
|
|
343
|
-
royalty_destinations: z.ZodArray<z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Address<string>, string>>>;
|
|
344
|
-
ticket_type_config: z.ZodOptional<z.ZodNullable<z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Address<string>, string>>>>;
|
|
345
|
-
integrator_identity: z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Address<string>, string>>;
|
|
346
|
-
usdc_mint: z.ZodPipe<z.ZodString, z.ZodTransform<_solana_kit.Address<string>, string>>;
|
|
347
|
-
}, z.core.$strip>>;
|
|
348
|
-
}, z.core.$strip>;
|
|
349
314
|
declare const CancelListingV1InstructionBatchSchema: z.ZodObject<{
|
|
350
315
|
instruction: z.ZodLiteral<"cancel_listing_v1">;
|
|
351
316
|
params: z.ZodArray<z.ZodObject<{
|
|
@@ -414,4 +379,4 @@ type TixWireInstructionBatch = z.infer<typeof TixWireInstructionBatchSchema>;
|
|
|
414
379
|
|
|
415
380
|
declare const Base64WireEncodedTransactionSchema: z.ZodPipe<z.ZodBase64, z.ZodTransform<Base64EncodedWireTransaction, string>>;
|
|
416
381
|
|
|
417
|
-
export {
|
|
382
|
+
export { AdditionalSignaturesSchema, Base58Address, Base64WireEncodedTransactionSchema, Blockhash, CancelListingV1InstructionBatchSchema, CancelListingV1ParamsSchema, CreateAndSubmitOrderListingSchema, CreateAndSubmitOrderRequestBodySchema, type CreateAndSubmitOrderResponse, CreateAndSubmitOrderResponseSchema, EventPathParametersSchema, EventV1ResponseSchema, GetAddressResponseSchema, GetIntegratorResponseSchema, type GetOrderResponse, GetOrderResponseSchema, IntegratorAccountResponseSchema, IntegratorPathParametersSchema, LimitCursorQuerySchema, ListTicketV2InstructionBatchSchema, ListTicketV2ParamsSchema, ListingV1ResponseSchema, OrderPathParametersSchema, PermitV1ResponseSchema, PostIntegratorMetadataRequestBodySchema, type PostTixIndexerIntegratorMetadataResult, PostTixIndexerIntegratorMetadataResultSchema, ProtocolConfigV1ResponseSchema, SignTenantTransactionRequestBodySchema, SignTransactionResponseSchema, Signature, SubmitTenantTransactionRequestBodySchema, SubmitTenantTransactionResponseSchema, TicketPathParametersSchema, type TixIndexerActiveListingsResult, TixIndexerActiveListingsResultSchema, type TixIndexerUpcomingEventsResult, TixIndexerUpcomingEventsResultSchema, type TixWireInstructionBatch, TixWireInstructionBatchSchema, type UserWalletPathParameters, WalletPathParametersSchema, WireI64, WireU16, WireU32, WireU64 };
|
package/dist/schemas.js
CHANGED
|
@@ -1,19 +1,18 @@
|
|
|
1
1
|
import {
|
|
2
|
-
AcceptClaimOffersRequestBodySchema,
|
|
3
|
-
AcceptClaimOffersResponseSchema,
|
|
4
|
-
AcceptClaimOffersSchema,
|
|
5
|
-
AcceptOfferV2InstructionBatchSchema,
|
|
6
|
-
AcceptOfferV2ParamsSchema,
|
|
7
2
|
AdditionalSignaturesSchema,
|
|
8
3
|
Base58Address,
|
|
9
4
|
Base64WireEncodedTransactionSchema,
|
|
10
5
|
Blockhash,
|
|
11
6
|
CancelListingV1InstructionBatchSchema,
|
|
12
7
|
CancelListingV1ParamsSchema,
|
|
8
|
+
CreateAndSubmitOrderListingSchema,
|
|
9
|
+
CreateAndSubmitOrderRequestBodySchema,
|
|
10
|
+
CreateAndSubmitOrderResponseSchema,
|
|
13
11
|
EventPathParametersSchema,
|
|
14
12
|
EventV1ResponseSchema,
|
|
15
13
|
GetAddressResponseSchema,
|
|
16
|
-
|
|
14
|
+
GetIntegratorResponseSchema,
|
|
15
|
+
GetOrderResponseSchema,
|
|
17
16
|
IntegratorAccountResponseSchema,
|
|
18
17
|
IntegratorPathParametersSchema,
|
|
19
18
|
LimitCursorQuerySchema,
|
|
@@ -21,6 +20,7 @@ import {
|
|
|
21
20
|
ListTicketV2ParamsSchema,
|
|
22
21
|
ListingV1ResponseSchema,
|
|
23
22
|
NullableTransactionSubmissionStatusSchema,
|
|
23
|
+
OrderPathParametersSchema,
|
|
24
24
|
PermitV1ResponseSchema,
|
|
25
25
|
PostIntegratorMetadataRequestBodySchema,
|
|
26
26
|
PostTixIndexerIntegratorMetadataResultSchema,
|
|
@@ -40,17 +40,12 @@ import {
|
|
|
40
40
|
WireU16,
|
|
41
41
|
WireU32,
|
|
42
42
|
WireU64
|
|
43
|
-
} from "./chunk-
|
|
43
|
+
} from "./chunk-MZKCWS5T.js";
|
|
44
44
|
|
|
45
45
|
// ../tdp-schemas/src/primitives/api-environment.ts
|
|
46
46
|
import { z } from "zod";
|
|
47
47
|
var ApiEnvironmentSchema = z.enum(["sandbox", "live"]);
|
|
48
48
|
export {
|
|
49
|
-
AcceptClaimOffersRequestBodySchema,
|
|
50
|
-
AcceptClaimOffersResponseSchema,
|
|
51
|
-
AcceptClaimOffersSchema,
|
|
52
|
-
AcceptOfferV2InstructionBatchSchema,
|
|
53
|
-
AcceptOfferV2ParamsSchema,
|
|
54
49
|
AdditionalSignaturesSchema,
|
|
55
50
|
ApiEnvironmentSchema,
|
|
56
51
|
Base58Address,
|
|
@@ -58,10 +53,14 @@ export {
|
|
|
58
53
|
Blockhash,
|
|
59
54
|
CancelListingV1InstructionBatchSchema,
|
|
60
55
|
CancelListingV1ParamsSchema,
|
|
56
|
+
CreateAndSubmitOrderListingSchema,
|
|
57
|
+
CreateAndSubmitOrderRequestBodySchema,
|
|
58
|
+
CreateAndSubmitOrderResponseSchema,
|
|
61
59
|
EventPathParametersSchema,
|
|
62
60
|
EventV1ResponseSchema,
|
|
63
61
|
GetAddressResponseSchema,
|
|
64
|
-
|
|
62
|
+
GetIntegratorResponseSchema,
|
|
63
|
+
GetOrderResponseSchema,
|
|
65
64
|
IntegratorAccountResponseSchema,
|
|
66
65
|
IntegratorPathParametersSchema,
|
|
67
66
|
LimitCursorQuerySchema,
|
|
@@ -69,6 +68,7 @@ export {
|
|
|
69
68
|
ListTicketV2ParamsSchema,
|
|
70
69
|
ListingV1ResponseSchema,
|
|
71
70
|
NullableTransactionSubmissionStatusSchema,
|
|
71
|
+
OrderPathParametersSchema,
|
|
72
72
|
PermitV1ResponseSchema,
|
|
73
73
|
PostIntegratorMetadataRequestBodySchema,
|
|
74
74
|
PostTixIndexerIntegratorMetadataResultSchema,
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../tix-wire-schema/src/primitives.ts","../../tdp-schemas/src/solana/accounts.ts","../../tdp-schemas/src/tix-api/path-params.ts","../../tdp-schemas/src/solana-data-api/routes.ts","../../tdp-schemas/src/primitives/integrator-status-name.ts","../../tdp-schemas/src/routes/define-client-route.ts","../../tdp-schemas/src/routes/request-schemas.ts","../../tdp-schemas/src/tix-indexer-api/metadata.ts","../../tdp-schemas/src/tix-indexer-api/read-responses.ts","../../tdp-schemas/src/tix-indexer-api/read-routes.ts","../../tdp-schemas/src/wallet-custody/addresses.ts","../../tix-wire-schema/src/instructions.ts","../../tix-wire-schema/src/unique-permit-keys.ts","../../tdp-schemas/src/primitives/transaction-submission-status.ts","../../tdp-schemas/src/wallet-custody/claim-offers.ts","../../tdp-schemas/src/primitives/hashes.ts","../../tdp-schemas/src/wallet-custody/const.ts","../../tdp-schemas/src/wallet-custody/submission-responses.ts","../../tdp-schemas/src/wallet-custody/purchase-status.ts","../../tix-wire-schema/src/transactions.ts","../../tdp-schemas/src/wallet-custody/signing-responses.ts","../../tdp-schemas/src/wallet-custody/transaction-inputs.ts"],"sourcesContent":["import {\n address as parseAddress,\n blockhash as parseBlockhash,\n signature as parseSignature,\n} from \"@solana/kit\";\nimport { z } from \"zod\";\n\nexport const U64_MAX = 18_446_744_073_709_551_615n;\nexport const I64_MAX = 9_223_372_036_854_775_807n;\nexport const I64_MIN = -9_223_372_036_854_775_808n;\nexport const U16_MAX = 65_535;\nexport const U32_MAX = 4_294_967_295;\n\nexport const BigIntU64 = z.bigint().nonnegative().max(U64_MAX);\n\nexport const BigIntI64 = z.bigint().min(I64_MIN).max(I64_MAX);\n\nexport const WireU64 = z\n .union([z.string().regex(/^\\d+$/), z.number().int(), z.bigint()])\n .transform(BigInt)\n .pipe(BigIntU64)\n .transform(String);\n\nexport const WireI64 = z\n .union([z.string().regex(/^-?\\d+$/), z.number().int(), z.bigint()])\n .transform(BigInt)\n .pipe(BigIntI64)\n .transform(String);\n\n// u16/u32 fit within JavaScript's safe-integer range and use JSON numbers.\nexport const WireU16 = z.number().int().min(0).max(U16_MAX);\n\nexport const WireU32 = z.number().int().min(0).max(U32_MAX);\n\n/** A base58 Solana address. */\nexport const Base58Address = z.string().transform((value, ctx) => {\n try {\n return parseAddress(value);\n } catch {\n ctx.addIssue({\n code: \"custom\",\n message: \"must be a base58-encoded Solana address\",\n });\n return z.NEVER;\n }\n});\n\n/** A base58 Solana blockhash. */\nexport const Blockhash = z.string().transform((value, ctx) => {\n try {\n return parseBlockhash(value);\n } catch {\n ctx.addIssue({\n code: \"custom\",\n message: \"must be a base58-encoded 32-byte Solana blockhash\",\n });\n return z.NEVER;\n }\n});\n\n/** A base58 Solana signature. */\nexport const Signature = z.string().transform((value, ctx) => {\n try {\n return parseSignature(value);\n } catch {\n ctx.addIssue({\n code: \"custom\",\n message: \"must be a base58-encoded 64-byte Solana signature\",\n });\n return z.NEVER;\n }\n});\n","import {\n Base58Address,\n WireI64,\n WireU64,\n} from \"@kyd-labs/tix-wire-schema/primitives\";\nimport { z } from \"zod\";\n\n/** Outbound integers: the decoded bigint becomes a JSON-safe decimal string. */\nconst U64String = WireU64.transform(String);\nconst I64String = WireI64.transform(String);\nconst Address = Base58Address;\n\n/** Decoded on-chain accounts, keyed by their address, with `discriminator` and padding dropped. */\nexport const ListingV1ResponseSchema = z.object({\n address: Address,\n event_id: U64String,\n ticket_id: U64String,\n seller: Address,\n ask_price_minor: U64String,\n buyer_allow: Address,\n payout_ata: Address,\n expires_at: I64String,\n listed_at: I64String,\n permit_version: U64String,\n active: z.boolean(),\n});\n\nexport const EventV1ResponseSchema = z.object({\n address: Address,\n integrator: Address,\n integrator_authority: Address,\n royalty_bps: z.number().int(),\n min_royalty_floor: U64String,\n royalty_recipients_count: z.number().int(),\n royalty_recipients: z.array(\n z.object({ destination: Address, bps: z.number().int() }),\n ),\n total_supply: U64String,\n minted: U64String,\n flags: z.number().int(),\n});\n\nexport const PermitV1ResponseSchema = z.object({\n owner: Address,\n status: z.number().int(),\n ticket_type_id: z.number().int(),\n ticket_type_config: Address,\n version: U64String,\n ticket_id: U64String,\n listing_lock_expiry: I64String,\n});\n\nexport const ProtocolConfigV1ResponseSchema = z.object({\n address: Address,\n usdc_mint: Address,\n default_royalty_vault: Address,\n authority: Address,\n usdc_decimals: z.number().int(),\n event_registration_fee_minor: U64String,\n permit_fee_minor: U64String,\n p2p_transfer_fee_minor: U64String,\n resale_fee_bps: z.number().int(),\n});\n","import { Base58Address, WireU64 } from \"@kyd-labs/tix-wire-schema/primitives\";\nimport { z } from \"zod\";\n\nexport const EventPathParametersSchema = z\n .object({ eventId: WireU64 })\n .strict();\n\nexport const TicketPathParametersSchema = EventPathParametersSchema.extend({\n ticketId: WireU64,\n});\n\nexport const IntegratorPathParametersSchema = z\n .object({ identity: Base58Address })\n .strict();\n","import { Base58Address, WireU64 } from \"@kyd-labs/tix-wire-schema/primitives\";\nimport { z } from \"zod\";\nimport { IntegratorStatusNameSchema } from \"../primitives/integrator-status-name\";\nimport { defineClientRoute } from \"../routes/define-client-route\";\nimport {\n ApiKeyHeadersSchema,\n NoPathParametersSchema,\n} from \"../routes/request-schemas\";\nimport {\n EventV1ResponseSchema,\n ListingV1ResponseSchema,\n PermitV1ResponseSchema,\n ProtocolConfigV1ResponseSchema,\n} from \"../solana/accounts\";\nimport {\n EventPathParametersSchema,\n IntegratorPathParametersSchema,\n TicketPathParametersSchema,\n} from \"../tix-api/path-params\";\n\nexport const GET_EVENT_ACCOUNT_ROUTE_KEY = \"GET /events/{eventId}\";\nexport const GET_LISTING_ACCOUNT_ROUTE_KEY =\n \"GET /listings/{eventId}/{ticketId}\";\nexport const GET_PERMIT_ROUTE_KEY = \"GET /permits/{eventId}/{ticketId}\";\nexport const GET_PROTOCOL_CONFIG_ACCOUNT_ROUTE_KEY = \"GET /protocol-config\";\nexport const GET_INTEGRATOR_ACCOUNT_ROUTE_KEY = \"GET /integrators/{identity}\";\n\n/** A registered integrator only; an unregistered identity is a 404, never a null. */\nexport const IntegratorAccountResponseSchema = z.object({\n integrator_pda: Base58Address,\n integrator: z.object({\n authority: Base58Address,\n status: IntegratorStatusNameSchema,\n treasury_usdc: Base58Address,\n balance: z.object({\n amount_minor: WireU64,\n decimals: z.number().int().min(0),\n }),\n }),\n});\n\nexport const solanaDataApiClientRoutes = {\n \"get-event-account\": defineClientRoute({\n name: \"get-event-account\",\n method: \"GET\",\n routeKey: GET_EVENT_ACCOUNT_ROUTE_KEY,\n pathParamsSchema: EventPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\", eventId }) =>\n `${baseApiUrl}/events/${eventId}`,\n headersSchema: ApiKeyHeadersSchema,\n responseBodySchema: EventV1ResponseSchema,\n }),\n \"get-listing-account\": defineClientRoute({\n name: \"get-listing-account\",\n method: \"GET\",\n routeKey: GET_LISTING_ACCOUNT_ROUTE_KEY,\n pathParamsSchema: TicketPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\", eventId, ticketId }) =>\n `${baseApiUrl}/listings/${eventId}/${ticketId}`,\n headersSchema: ApiKeyHeadersSchema,\n responseBodySchema: ListingV1ResponseSchema,\n }),\n \"get-permit\": defineClientRoute({\n name: \"get-permit\",\n method: \"GET\",\n routeKey: GET_PERMIT_ROUTE_KEY,\n pathParamsSchema: TicketPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\", eventId, ticketId }) =>\n `${baseApiUrl}/permits/${eventId}/${ticketId}`,\n headersSchema: ApiKeyHeadersSchema,\n responseBodySchema: PermitV1ResponseSchema,\n }),\n \"get-protocol-config-account\": defineClientRoute({\n name: \"get-protocol-config-account\",\n method: \"GET\",\n routeKey: GET_PROTOCOL_CONFIG_ACCOUNT_ROUTE_KEY,\n pathParamsSchema: NoPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\" }) => `${baseApiUrl}/protocol-config`,\n headersSchema: ApiKeyHeadersSchema,\n responseBodySchema: ProtocolConfigV1ResponseSchema,\n }),\n \"get-integrator-account\": defineClientRoute({\n name: \"get-integrator-account\",\n method: \"GET\",\n routeKey: GET_INTEGRATOR_ACCOUNT_ROUTE_KEY,\n pathParamsSchema: IntegratorPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\", identity }) =>\n `${baseApiUrl}/integrators/${identity}`,\n headersSchema: ApiKeyHeadersSchema,\n responseBodySchema: IntegratorAccountResponseSchema,\n }),\n} as const;\n\nexport const responseBodySchemaByRouteKey = Object.fromEntries(\n Object.values(solanaDataApiClientRoutes).map(\n (route) => [route.routeKey, route.responseBodySchema] as const,\n ),\n) as Record<string, z.ZodType<Record<string, unknown>>>;\n","import { z } from \"zod\";\n\nexport const IntegratorStatusNameSchema = z.enum([\"Active\", \"Suspended\"]);\nexport type IntegratorStatusName = z.infer<typeof IntegratorStatusNameSchema>;\n","import type { z } from \"zod\";\n\n/** This type detects schema drift by requiring mutual assignability. */\nexport type ExactTypeMatch<TExpected, TActual, TError> =\n TExpected extends TActual\n ? TActual extends TExpected\n ? unknown\n : TError\n : TError;\n\n/**\n * This function defines a client route's request builders and response schema.\n * Callers should omit `requestBodySchema` for bodyless routes.\n */\nexport function defineClientRoute<\n TPathParamsSchema extends z.ZodType,\n THeadersSchema extends z.ZodType,\n TResponseBodySchema extends z.ZodType,\n TMethod extends string,\n TRouteKey extends `${TMethod} ${string}`,\n TRequestBodySchema extends z.ZodType | undefined = undefined,\n TQueryParamsSchema extends z.ZodType | undefined = undefined,\n>(spec: {\n name: string;\n method: TMethod;\n routeKey: TRouteKey;\n pathParamsSchema: TPathParamsSchema;\n buildPath: (\n args: z.infer<TPathParamsSchema> & { baseApiUrl?: string },\n ) => string;\n headersSchema: THeadersSchema;\n requestBodySchema?: TRequestBodySchema;\n queryParamsSchema?: TQueryParamsSchema;\n responseBodySchema: TResponseBodySchema;\n}) {\n return {\n ...spec,\n // Normalize a missing path-params arg to {} so callers don't have to pass anything, even if\n // there are no path-params args.\n buildPath: (\n args?: z.infer<TPathParamsSchema> & { baseApiUrl?: string },\n ): string =>\n spec.buildPath(\n args ?? ({} as z.infer<TPathParamsSchema> & { baseApiUrl?: string }),\n ),\n buildJsonPayload: (fields: z.input<NonNullable<TRequestBodySchema>>) => {\n if (!spec.requestBodySchema) {\n const msg =\n \"This path should be impossible to reach; \" +\n \"it's not possible to build a JSON payload for a bodyless route\";\n throw new TypeError(msg);\n }\n return JSON.stringify(spec.requestBodySchema.parse(fields));\n },\n buildHeaders: (headers: z.input<THeadersSchema>) =>\n spec.headersSchema.parse(headers) as z.output<THeadersSchema>,\n /** The `?k=v` suffix for a route's query params, empty when the route declares none or every value is undefined. */\n buildQueryString: (params: z.input<NonNullable<TQueryParamsSchema>>) => {\n const parsed = spec.queryParamsSchema?.parse(params) ?? {};\n const search = new URLSearchParams(\n Object.entries(parsed as Record<string, unknown>)\n .filter(([, value]) => value !== undefined && value !== null)\n .map(([key, value]) => [key, String(value)]),\n ).toString();\n return search ? `?${search}` : \"\";\n },\n };\n}\n\n/** Structural supertype of every {@link defineClientRoute} result. */\nexport type AnyClientRoute = {\n name: string;\n method: string;\n routeKey: string;\n pathParamsSchema: z.ZodType;\n headersSchema: z.ZodType;\n requestBodySchema?: unknown;\n queryParamsSchema?: unknown;\n responseBodySchema: z.ZodType;\n buildPath: (args: never) => string;\n buildJsonPayload: (fields: never) => string;\n buildHeaders: (headers: never) => unknown;\n buildQueryString: (params: never) => string;\n};\n","import { z } from \"zod\";\n\nexport const MISSING_API_KEY_MESSAGE = \"Invalid or missing API key in headers.\";\n\nexport const ApiKeyHeadersSchema = z.object({\n \"x-api-key\": z\n .string(MISSING_API_KEY_MESSAGE)\n .min(1, MISSING_API_KEY_MESSAGE),\n});\n\nexport const IdempotencyKeyHeadersSchema = z.object({\n \"idempotency-key\": z.string().min(1).max(255),\n});\n\nexport const IdempotencyKeyAndApiKeyHeadersSchema = ApiKeyHeadersSchema.extend(\n IdempotencyKeyHeadersSchema.shape,\n);\n\n/** For routes that carry no path parameters (`null`/absent on the wire). */\nexport const NoPathParametersSchema = z\n .record(z.string(), z.string())\n .nullish();\n\n/** For routes with no headers. */\nexport const NoHeadersSchema = z.object({}).optional();\n","import { z } from \"zod\";\n\nexport const PostIntegratorMetadataRequestBodySchema = z\n .object({\n name: z.string().optional(),\n start_at: z.string().optional(),\n on_sale_at: z.string().optional(),\n image_url: z.string().optional(),\n timezone: z.string().optional(),\n address: z.string().optional(),\n venue: z.string().optional(),\n genres: z.array(z.string()).optional(),\n } satisfies z.ZodRawShape)\n .strict();\n\nexport const PostTixIndexerIntegratorMetadataResultSchema = z\n .object({\n status: z.literal(\"ok\"),\n event_account: z.string().min(1),\n updated_at: z.string().min(1),\n })\n .strict();\n\nexport type PostTixIndexerIntegratorMetadataResult = z.infer<\n typeof PostTixIndexerIntegratorMetadataResultSchema\n>;\n","import { WireU64 } from \"@kyd-labs/tix-wire-schema/primitives\";\nimport { z } from \"zod\";\n\nconst NullableStringSchema = z.string().nullable();\n\nexport const TixIndexerEventFoundSchema = z\n .object({\n event_account: z.string().min(1),\n event_id: WireU64.nullable(),\n name: NullableStringSchema,\n start_at: NullableStringSchema,\n on_sale_at: NullableStringSchema,\n image_url: NullableStringSchema,\n active_listing_count: z.number().nonnegative(),\n tickets_issued_count: z.number().nonnegative(),\n integrator_identity: NullableStringSchema,\n updated_at: NullableStringSchema,\n found: z.literal(true),\n genres: z.array(z.string()).nullable(),\n })\n .strict();\n\nexport const TixIndexerUpcomingEventsResultSchema = z\n .object({\n items: z.array(\n TixIndexerEventFoundSchema.extend({\n timezone: NullableStringSchema,\n address: NullableStringSchema,\n venue: NullableStringSchema,\n }),\n ),\n next_cursor: NullableStringSchema,\n })\n .strict();\n\nexport type TixIndexerUpcomingEventsResult = z.infer<\n typeof TixIndexerUpcomingEventsResultSchema\n>;\n\nexport const TixIndexerActiveListingsResultSchema = z\n .object({\n items: z.array(\n z\n .object({\n event_account: NullableStringSchema,\n event_id: WireU64.nullable(),\n listing_id: NullableStringSchema,\n ticket_id: WireU64.nullable(),\n seller: NullableStringSchema,\n buyer_allow: NullableStringSchema,\n ask_price_minor: NullableStringSchema,\n payout_ata: NullableStringSchema,\n expires_at: NullableStringSchema,\n updated_at: NullableStringSchema,\n })\n .strict(),\n ),\n next_cursor: NullableStringSchema,\n })\n .strict();\n\nexport type TixIndexerActiveListingsResult = z.infer<\n typeof TixIndexerActiveListingsResultSchema\n>;\n","import { WireU64 } from \"@kyd-labs/tix-wire-schema/primitives\";\nimport { z } from \"zod\";\nimport { defineClientRoute } from \"../routes/define-client-route\";\nimport {\n ApiKeyHeadersSchema,\n NoPathParametersSchema,\n} from \"../routes/request-schemas\";\nimport {\n TixIndexerActiveListingsResultSchema,\n TixIndexerUpcomingEventsResultSchema,\n} from \"./read-responses\";\n\nexport const GET_ACTIVE_LISTINGS_ROUTE_KEY = \"GET /listings/active\";\nexport const GET_UPCOMING_EVENTS_ROUTE_KEY = \"GET /events/upcoming\";\n\n/** Query-string values arrive as strings, hence the coercion. */\nexport const LimitCursorQuerySchema = z.object({\n limit: z.coerce.number().int().min(1).max(500).optional(),\n cursor: z.string().min(1).optional(),\n});\n\nexport const ActiveListingsQuerySchema = LimitCursorQuerySchema.extend({\n eventId: WireU64.optional(),\n});\n\nexport const tixIndexerReadApiClientRoutes = {\n \"get-active-listings\": defineClientRoute({\n name: \"get-active-listings\",\n method: \"GET\",\n routeKey: GET_ACTIVE_LISTINGS_ROUTE_KEY,\n pathParamsSchema: NoPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\" }) => `${baseApiUrl}/listings/active`,\n headersSchema: ApiKeyHeadersSchema,\n queryParamsSchema: ActiveListingsQuerySchema,\n responseBodySchema: TixIndexerActiveListingsResultSchema,\n }),\n \"get-upcoming-events\": defineClientRoute({\n name: \"get-upcoming-events\",\n method: \"GET\",\n routeKey: GET_UPCOMING_EVENTS_ROUTE_KEY,\n pathParamsSchema: NoPathParametersSchema,\n buildPath: ({ baseApiUrl = \"\" }) => `${baseApiUrl}/events/upcoming`,\n headersSchema: ApiKeyHeadersSchema,\n queryParamsSchema: LimitCursorQuerySchema,\n responseBodySchema: TixIndexerUpcomingEventsResultSchema,\n }),\n} as const;\n","import { Base58Address } from \"@kyd-labs/tix-wire-schema/primitives\";\nimport { z } from \"zod\";\n\nexport const WalletPathParametersSchema = z\n .object({ subject: z.string().min(1) })\n .strict();\nexport type UserWalletPathParameters = z.infer<\n typeof WalletPathParametersSchema\n>;\n\nexport const GetAddressResponseSchema = z.object({ address: Base58Address });\n","import { z } from \"zod\";\nimport { Base58Address, WireI64, WireU64 } from \"./primitives\";\nimport { requireUniquePermitKeys } from \"./unique-permit-keys\";\n\nexport { requireUniquePermitKeys } from \"./unique-permit-keys\";\n\nexport const AcceptOfferV2ParamsSchema = z.object({\n event_id: WireU64,\n ticket_id: WireU64,\n permit_version: WireU64,\n buyer: Base58Address,\n /**\n * *Authority* for the facilitating integrator's identity. The only required\n * signature: its treasury funds the purchase, so there is no payer.\n */\n integrator_authority: Base58Address,\n seller_payout: Base58Address,\n royalty_destinations: z.array(Base58Address),\n ticket_type_config: Base58Address.nullable().optional(),\n /**\n * Identity of the facilitating integrator, which need not be the event's.\n * Not the PDA, not *necessarily* the authority.\n */\n integrator_identity: Base58Address,\n usdc_mint: Base58Address,\n});\n\nexport const CancelListingV1ParamsSchema = z.object({\n event_id: WireU64,\n ticket_id: WireU64,\n canceller: Base58Address,\n});\n\nexport const ListTicketV2ParamsSchema = z.object({\n seller: Base58Address,\n storage_fee_payer: Base58Address,\n listing_integrator_identity: Base58Address,\n listing_integrator_authority: Base58Address,\n usdc_mint: Base58Address,\n event_id: WireU64,\n ticket_id: WireU64,\n ask_price_minor: WireU64,\n buyer_allow: Base58Address.nullable().optional(),\n payout_ata: Base58Address,\n expires_at: WireI64,\n ticket_type_config: Base58Address.nullable().optional(),\n});\n\nexport const AcceptOfferV2InstructionBatchSchema = z.object({\n instruction: z.literal(\"accept_offer_v2\"),\n params: z\n .array(AcceptOfferV2ParamsSchema)\n .min(1)\n .superRefine(requireUniquePermitKeys),\n});\n\nexport const CancelListingV1InstructionBatchSchema = z.object({\n instruction: z.literal(\"cancel_listing_v1\"),\n params: z\n .array(CancelListingV1ParamsSchema)\n .min(1)\n .superRefine(requireUniquePermitKeys),\n});\n\nexport const ListTicketV2InstructionBatchSchema = z.object({\n instruction: z.literal(\"list_ticket_v2\"),\n params: z\n .array(ListTicketV2ParamsSchema)\n .min(1)\n .superRefine(requireUniquePermitKeys),\n});\n\n/** The wallet custody API accepts batches of one supported TIX instruction kind. */\nexport const TixWireInstructionBatchSchema = z.discriminatedUnion(\n \"instruction\",\n [\n AcceptOfferV2InstructionBatchSchema,\n CancelListingV1InstructionBatchSchema,\n ListTicketV2InstructionBatchSchema,\n ],\n);\n\nexport type TixWireInstructionBatch = z.infer<\n typeof TixWireInstructionBatchSchema\n>;\nexport type TixInstructionTag = TixWireInstructionBatch[\"instruction\"];\nexport type TixWireInstructionBatchVariant<T extends TixInstructionTag> =\n Extract<TixWireInstructionBatch, { instruction: T }>;\nexport type TixWireInstructionParams<T extends TixInstructionTag> =\n TixWireInstructionBatchVariant<T>[\"params\"][number];\n","import type z from \"zod\";\nimport type { WireU64 } from \"./primitives\";\n\ntype WireU64Type = z.infer<typeof WireU64>;\n\nexport type PermitKey = ReturnType<typeof toPermitKey>;\n\nexport type AnyPermitKeyInput =\n | { event_id: WireU64Type; ticket_id: WireU64Type }\n | { eventId: WireU64Type; ticketId: WireU64Type };\n\nexport function toPermitKey(params: AnyPermitKeyInput) {\n const { eventId, ticketId } = normalizeAnyPermitKey(params);\n return `event_id:${eventId}#ticket_id:${ticketId}` as const;\n}\n\nexport function requireUniquePermitKeys(\n keys: AnyPermitKeyInput[],\n ctx: z.RefinementCtx,\n) {\n const stableKeys = keys\n .map(normalizeAnyPermitKey)\n .map(({ eventId, ticketId }) => JSON.stringify([eventId, ticketId]));\n\n if (new Set(stableKeys).size !== keys.length) {\n ctx.addIssue({\n code: \"custom\",\n message: \"All (event_id, ticket_id) pairs must be unique\",\n });\n }\n}\n\nexport function normalizeAnyPermitKey(params: AnyPermitKeyInput) {\n return {\n eventId: \"event_id\" in params ? params.event_id : params.eventId,\n ticketId: \"ticket_id\" in params ? params.ticket_id : params.ticketId,\n };\n}\n","import { z } from \"zod\";\n\nexport const TransactionSubmissionStatusSchema = z.enum([\n \"processing\",\n \"confirmed\",\n \"landed_with_error\",\n \"expired\",\n]);\nexport type TransactionSubmissionStatus = z.infer<\n typeof TransactionSubmissionStatusSchema\n>;\n\n/** A null status means no submission has been recorded. */\nexport const NullableTransactionSubmissionStatusSchema =\n TransactionSubmissionStatusSchema.nullable();\nexport type NullableTransactionSubmissionStatus = z.infer<\n typeof NullableTransactionSubmissionStatusSchema\n>;\n","import {\n AcceptOfferV2ParamsSchema,\n requireUniquePermitKeys,\n} from \"@kyd-labs/tix-wire-schema/instructions\";\nimport { Base58Address } from \"@kyd-labs/tix-wire-schema/primitives\";\nimport { z } from \"zod\";\nimport { Sha256HexSchema } from \"../primitives/hashes\";\nimport { NullableTransactionSubmissionStatusSchema } from \"../primitives/transaction-submission-status\";\nimport { MAX_PERMITS_PER_CLAIM_WALLET } from \"./const\";\n\n/**\n * The accept params an integrator may supply on the composite claim route:\n * the wire params minus everything TDP derives — the `buyer` is the claim\n * wallet, and the integrator is the caller's own primary integrator wallet.\n * Note the primary integrator wallet must be a registered integrator\n * on-chain; i.e., a TIX-protocol integrator with a funded treasury.\n */\nexport const AcceptClaimOffersSchema = AcceptOfferV2ParamsSchema.omit({\n buyer: true,\n integrator_identity: true,\n integrator_authority: true,\n}).strict();\n\nexport const AcceptClaimOffersRequestBodySchema = z.object({\n userSubject: z.string().min(1),\n userEmail: z.email(),\n offers: z\n .array(AcceptClaimOffersSchema)\n .min(1)\n .max(MAX_PERMITS_PER_CLAIM_WALLET)\n .superRefine(requireUniquePermitKeys),\n});\n\nexport const AcceptClaimOffersResponseSchema = z.object({\n status: NullableTransactionSubmissionStatusSchema,\n claimWallet: z.object({\n address: Base58Address,\n claimWalletId: Sha256HexSchema,\n }),\n claimUrl: z.url(),\n failureReason: z.string().min(1).optional(),\n});\n\nexport type AcceptClaimOffersResponse = z.infer<\n typeof AcceptClaimOffersResponseSchema\n>;\n","import z from \"zod\";\nimport type { Brand } from \"./brand\";\n\nexport type Sha256Hex = Brand<string, \"Sha256Hex\">;\nexport type Sha256Base64Url = Brand<string, \"Sha256Base64Url\">;\nexport type HmacSha256Base64Url = Brand<string, \"HmacSha256Base64Url\">;\n\nexport const Sha256HexSchema = z\n .hash(\"sha256\", { enc: \"hex\" })\n .transform((v) => v as Sha256Hex);\n\nexport const Sha256BaseUrlSchema = z\n .hash(\"sha256\", { enc: \"base64url\" })\n .transform((v) => v as Sha256Base64Url);\n\n/**\n * Functionally the exact same as {@link Sha256BaseUrlSchema}, but with a branded type for when\n * the hash is known to be produced from `createHmac`.\n *\n * To clarify: this performs no additional checks, it only brands the output differently.\n */\nexport const HmacSha256BaseUrlSchema = z\n .hash(\"sha256\", { enc: \"base64url\" })\n .transform((v) => v as HmacSha256Base64Url);\n","/**\n * This is an overestimate to cap unreasonable requests.\n * It can be made more accurate in the future.\n * The transaction will fail at submission time if it's too large anyway.\n */\nexport const MAX_PERMITS_PER_CLAIM_WALLET = 10;\n","import { Signature } from \"@kyd-labs/tix-wire-schema/primitives\";\nimport { z } from \"zod\";\nimport { Sha256HexSchema } from \"../primitives/hashes\";\nimport { NullableTransactionSubmissionStatusSchema } from \"../primitives/transaction-submission-status\";\n\nexport const SubmitTenantTransactionResponseSchema = z.object({\n custodialTransactionId: Sha256HexSchema,\n transactionSignature: Signature,\n status: NullableTransactionSubmissionStatusSchema,\n failureReason: z.string().min(1).optional(),\n});\n","import type { z } from \"zod\";\nimport { AcceptClaimOffersResponseSchema } from \"./claim-offers\";\nimport { SubmitTenantTransactionResponseSchema } from \"./submission-responses\";\n\nexport const GetPurchaseStatusResponseSchema =\n SubmitTenantTransactionResponseSchema.extend(\n AcceptClaimOffersResponseSchema.pick({ claimWallet: true }).shape,\n );\n\nexport type GetPurchaseStatusResponse = z.infer<\n typeof GetPurchaseStatusResponseSchema\n>;\n","import {\n type Base64EncodedWireTransaction,\n getBase64Encoder,\n getTransactionDecoder,\n} from \"@solana/kit\";\nimport { z } from \"zod\";\n\nexport const Base64WireEncodedTransactionSchema = z\n .base64()\n .min(1)\n .transform((value, ctx) => {\n try {\n getTransactionDecoder().decode(getBase64Encoder().encode(value));\n return value as Base64EncodedWireTransaction;\n } catch {\n ctx.addIssue({\n code: \"custom\",\n message: \"must be a base64-encoded Solana transaction string\",\n });\n return z.NEVER;\n }\n });\n","import {\n Base58Address,\n Blockhash,\n Signature,\n} from \"@kyd-labs/tix-wire-schema/primitives\";\nimport { Base64WireEncodedTransactionSchema } from \"@kyd-labs/tix-wire-schema/transactions\";\nimport { z } from \"zod\";\nimport { Sha256HexSchema } from \"../primitives/hashes\";\nexport const SignTransactionResponseSchema = z.object({\n custodialTransactionId: Sha256HexSchema,\n signerAddress: Base58Address,\n feePayerAddress: Base58Address,\n signedTransaction: Base64WireEncodedTransactionSchema,\n message: z.string().min(1),\n signature: Signature,\n feePayerSignature: Signature,\n requiredSigners: z.array(Base58Address),\n recentBlockhash: Blockhash,\n});\n","import { TixWireInstructionBatchSchema } from \"@kyd-labs/tix-wire-schema/instructions\";\nimport { Base58Address, Signature } from \"@kyd-labs/tix-wire-schema/primitives\";\nimport { Base64WireEncodedTransactionSchema } from \"@kyd-labs/tix-wire-schema/transactions\";\nimport { z } from \"zod\";\n\nexport const SignTenantTransactionRequestBodySchema = z.object({\n tixInstructions: TixWireInstructionBatchSchema,\n});\n\nexport const AdditionalSignaturesSchema = z\n .array(\n z.object({\n address: Base58Address,\n signature: Signature,\n }),\n )\n .default([]);\n\nexport const SubmitTenantTransactionRequestBodySchema = z.object({\n signedTransaction: Base64WireEncodedTransactionSchema,\n additionalSignatures: AdditionalSignaturesSchema,\n});\n"],"mappings":"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","names":["z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/wallet-custody/http-error.ts"],"sourcesContent":["import type { z } from \"zod\";\n\nexport type WalletCustodyApiErrorKind = \"http-status\" | \"response-validation\";\n\nexport class WalletCustodyApiError extends Error {\n readonly kind: WalletCustodyApiErrorKind;\n readonly route: string;\n readonly method: string;\n readonly path: string;\n readonly status: number;\n readonly statusText: string;\n readonly payload: unknown;\n readonly validationError?: z.ZodError;\n\n constructor({\n kind,\n route,\n method,\n path,\n status,\n statusText,\n payload,\n validationError,\n }: {\n kind: WalletCustodyApiErrorKind;\n route: string;\n method: string;\n path: string;\n status: number;\n statusText: string;\n payload: unknown;\n validationError?: z.ZodError;\n }) {\n super(\n kind === \"response-validation\"\n ? `Wallet Custody API response failed validation: ${method} ${route} ${path} ${status} ${statusText}`\n : `Wallet Custody API request failed: ${method} ${route} ${path} ${status} ${statusText}`,\n { cause: validationError },\n );\n\n this.name = \"WalletCustodyApiError\";\n this.kind = kind;\n this.route = route;\n this.method = method;\n this.path = path;\n this.status = status;\n this.statusText = statusText;\n this.payload = payload;\n this.validationError = validationError;\n }\n}\n"],"mappings":";AAIO,IAAM,wBAAN,cAAoC,MAAM;AAAA,EACtC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAET,YAAY;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GASG;AACD;AAAA,MACE,SAAS,wBACL,kDAAkD,MAAM,IAAI,KAAK,IAAI,IAAI,IAAI,MAAM,IAAI,UAAU,KACjG,sCAAsC,MAAM,IAAI,KAAK,IAAI,IAAI,IAAI,MAAM,IAAI,UAAU;AAAA,MACzF,EAAE,OAAO,gBAAgB;AAAA,IAC3B;AAEA,SAAK,OAAO;AACZ,SAAK,OAAO;AACZ,SAAK,QAAQ;AACb,SAAK,SAAS;AACd,SAAK,OAAO;AACZ,SAAK,SAAS;AACd,SAAK,aAAa;AAClB,SAAK,UAAU;AACf,SAAK,kBAAkB;AAAA,EACzB;AACF;","names":[]}
|