@credenza3/partner-sdk 1.0.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +3 -2
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +3 -2
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -254,7 +254,7 @@ declare function findEvmContracts(params?: {
|
|
|
254
254
|
chain_id?: number;
|
|
255
255
|
}): Promise<string[]>;
|
|
256
256
|
declare function deployEvmContract(name: string, chainId: number, ownerAddresses: string[]): Promise<unknown>;
|
|
257
|
-
declare function sendEvmMetaTransaction(unsignedSerializedMetaTx: string): Promise<unknown>;
|
|
257
|
+
declare function sendEvmMetaTransaction(unsignedSerializedMetaTx: string, accountAddress: string): Promise<unknown>;
|
|
258
258
|
|
|
259
259
|
declare const index$5_deployEvmContract: typeof deployEvmContract;
|
|
260
260
|
declare const index$5_findEvmContracts: typeof findEvmContracts;
|
package/dist/index.d.ts
CHANGED
|
@@ -254,7 +254,7 @@ declare function findEvmContracts(params?: {
|
|
|
254
254
|
chain_id?: number;
|
|
255
255
|
}): Promise<string[]>;
|
|
256
256
|
declare function deployEvmContract(name: string, chainId: number, ownerAddresses: string[]): Promise<unknown>;
|
|
257
|
-
declare function sendEvmMetaTransaction(unsignedSerializedMetaTx: string): Promise<unknown>;
|
|
257
|
+
declare function sendEvmMetaTransaction(unsignedSerializedMetaTx: string, accountAddress: string): Promise<unknown>;
|
|
258
258
|
|
|
259
259
|
declare const index$5_deployEvmContract: typeof deployEvmContract;
|
|
260
260
|
declare const index$5_findEvmContracts: typeof findEvmContracts;
|
package/dist/index.js
CHANGED
|
@@ -795,7 +795,7 @@ function deployEvmContract(name, chainId, ownerAddresses) {
|
|
|
795
795
|
return __async(this, null, function* () {
|
|
796
796
|
if (!name) throw new Error('"name is required"');
|
|
797
797
|
if (!chainId) throw new Error('"chainId" is required');
|
|
798
|
-
if (
|
|
798
|
+
if ((ownerAddresses == null ? void 0 : ownerAddresses.length) === 0) throw new Error('"ownerAddresses" can not be empty');
|
|
799
799
|
const socket3 = yield getWsConnection2();
|
|
800
800
|
return new Promise((resolve, reject) => {
|
|
801
801
|
socket3.emit(
|
|
@@ -825,7 +825,7 @@ function deployEvmContract(name, chainId, ownerAddresses) {
|
|
|
825
825
|
});
|
|
826
826
|
});
|
|
827
827
|
}
|
|
828
|
-
function sendEvmMetaTransaction(unsignedSerializedMetaTx) {
|
|
828
|
+
function sendEvmMetaTransaction(unsignedSerializedMetaTx, accountAddress) {
|
|
829
829
|
return __async(this, null, function* () {
|
|
830
830
|
const socket3 = yield getWsConnection2();
|
|
831
831
|
return new Promise((resolve, reject) => {
|
|
@@ -833,6 +833,7 @@ function sendEvmMetaTransaction(unsignedSerializedMetaTx) {
|
|
|
833
833
|
"contracts/forward_transaction/client",
|
|
834
834
|
{
|
|
835
835
|
payload: {
|
|
836
|
+
account_address: accountAddress,
|
|
836
837
|
unsigned_serialized_meta_tx: unsignedSerializedMetaTx
|
|
837
838
|
}
|
|
838
839
|
},
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts","../src/lib/credentials/credentials.ts","../src/lib/sdk-env/sdk-env.constants.ts","../src/lib/sdk-env/sdk-env.ts","../src/lib/logging/logging.ts","../src/accounts/index.ts","../src/accounts/accounts.ts","../src/accounts/user/index.ts","../src/lib/obj/obj.ts","../src/accounts/user/user.ts","../src/accounts/client/index.ts","../src/accounts/client/client.ts","../src/accounts/client/jwt-auth/index.ts","../src/accounts/client/jwt-auth/jwt-auth.ts","../src/accounts/oauth/index.ts","../src/accounts/oauth/oauth.ts","../src/api/index.ts","../src/lib/ws/ws.ts","../src/api/api.ts","../src/api/nfc-id/index.ts","../src/api/nfc-id/nfc-id.ts","../src/api/passport-id/index.ts","../src/api/passport-id/passport-id.ts","../src/api/promo/index.ts","../src/api/promo/rules/index.ts","../src/api/promo/rules/rules.ts","../src/api/promo/offers/index.ts","../src/api/promo/offers/offers.ts","../src/evm/index.ts","../src/evm/evm.ts","../src/evm/account/index.ts","../src/evm/account/account.ts","../src/evm/contract/index.ts","../src/evm/contract/contract.ts","../src/sui/index.ts","../src/sui/sui.ts","../src/sui/account/index.ts","../src/sui/account/account.ts","../src/sui/zk/index.ts","../src/sui/zk/account/index.ts","../src/sui/zk/account/account.ts","../src/credenza-partner-sdk.ts"],"sourcesContent":["export * from './credenza-partner-sdk'\n","import { Buffer } from 'buffer'\n\nimport { TCredentials } from './credentials.types'\n\nlet credentials: TCredentials = null\n\nexport function setCredentials(credentialsInput: TCredentials): void {\n if (!credentialsInput.clientId) throw new Error('\"clientId\" is required')\n if (!credentialsInput.clientSecret) throw new Error('\"clientSecret\" is required')\n credentials = credentialsInput\n}\n\nexport function getCredentials(): TCredentials {\n if (!credentials?.clientId || !credentials?.clientSecret) throw new Error('Credentials are not set')\n return credentials\n}\n\nexport function getBasicToken(): string {\n const { clientId, clientSecret } = getCredentials()\n const basicCredentials = `${clientId}:${clientSecret}`\n return `Basic ${Buffer.from(basicCredentials).toString('base64')}`\n}\n","export const SDK_ENV = {\n PROD: 'prod',\n STAGING: 'staging',\n LOCAL: 'local',\n} as const\n","import { SDK_ENV } from './sdk-env.constants'\nimport { TSdkEnv } from './sdk-env.types'\n\nlet sdkEnv: TSdkEnv = SDK_ENV.PROD\nexport function getSdkEnv(): TSdkEnv {\n return sdkEnv\n}\n\nexport function setSdkEnv(sdkEnvironment: TSdkEnv): void {\n sdkEnv = sdkEnvironment\n}\n","let debugEnabled = false\n\nexport function log(methodName: string, ...args: unknown[]) {\n if (!debugEnabled) return\n console.log(`[CREDENZA_PARTNER_SDK#${methodName}]:`, ...args)\n}\n\nexport function enableSdkDebug(enableDebug: boolean) {\n debugEnabled = enableDebug\n}\n","export * from './accounts'\nexport * as user from './user'\nexport * as client from './client'\nexport * as oauth from './oauth'\n","import { getSdkEnv, SDK_ENV } from '@/lib/sdk-env'\n\nexport function getOAuthApiUrl() {\n switch (getSdkEnv()) {\n case SDK_ENV.PROD:\n return 'https://accounts.credenza3.com'\n case SDK_ENV.STAGING:\n return 'https://accounts.staging.credenza3.com'\n case SDK_ENV.LOCAL:\n return 'http://localhost:8081'\n }\n}\n","export * from './user'\n","export function toCamelCase(obj: unknown): unknown {\n if (Array.isArray(obj)) {\n return obj.map(toCamelCase)\n } else if (obj !== null && typeof obj === 'object') {\n return Object.keys(obj).reduce((acc, key) => {\n const camelKey = key.replace(/^_id$/, 'id').replace(/_([a-z])/g, (_, letter) => letter.toUpperCase())\n acc[camelKey] = toCamelCase(obj[key])\n return acc\n }, {})\n }\n return obj\n}\n\nexport function toSnakeCase(obj: unknown): unknown {\n if (Array.isArray(obj)) {\n return obj.map(toSnakeCase)\n } else if (obj !== null && typeof obj === 'object') {\n return Object.keys(obj).reduce((acc, key) => {\n const snakeKey = key.replace(/([A-Z])/g, (_, letter) => `_${letter.toLowerCase()}`)\n acc[snakeKey] = toSnakeCase(obj[key])\n return acc\n }, {})\n }\n return obj\n}\n","import { getBasicToken } from '@/lib/credentials'\nimport { getOAuthApiUrl } from '@/accounts'\nimport { log } from '@/lib/logging'\nimport { toCamelCase } from '@/lib/obj'\n\nimport type { TOAuthAccountInfo } from './user.types'\n\nexport async function getAccountInfo(sub: string): Promise<TOAuthAccountInfo> {\n const response = await fetch(`${getOAuthApiUrl()}/accounts/${sub}`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getAccountInfo.name, json)\n return toCamelCase(json) as TOAuthAccountInfo\n}\n","export * from './client'\nexport * as jwtAuth from './jwt-auth'\n","import { getBasicToken } from '@/lib/credentials'\nimport { getOAuthApiUrl } from '@/accounts'\nimport { log } from '@/lib/logging'\n\nexport async function getCurrentClientInfo(): Promise<{\n id: string\n name: string\n callbackUris: string[]\n confidential: boolean\n ownerId: string\n accessTokenTTLMinutes: number\n availableLoginTypes: string[]\n admins: string[]\n apiPermissions: string[]\n logoUri?: string\n}> {\n const response = await fetch(`${getOAuthApiUrl()}/clients/current`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getCurrentClientInfo.name, json)\n return {\n id: json._id,\n name: json.name,\n callbackUris: json.callback_uris,\n confidential: json.confidential,\n ownerId: json.owner_id,\n accessTokenTTLMinutes: json.access_token_ttl_minutes,\n availableLoginTypes: json.available_login_types,\n admins: json.admins,\n apiPermissions: json.api_permissions,\n logoUri: json.logo_uri ?? null,\n }\n}\n","export * from './jwt-auth'\n","import { log } from '@/lib/logging'\nimport { getOAuthApiUrl } from '@/accounts'\nimport { getBasicToken } from '@/lib/credentials'\nimport { toCamelCase, toSnakeCase } from '@/lib/obj'\nimport type { TJwtAuthValidator, TJwtAuthValidatorParams, TJwtAuthUpdateValidatorParams } from './jwt-auth.types'\n\nexport async function addJwtValidator(params: TJwtAuthValidatorParams): Promise<TJwtAuthValidator> {\n const response = await fetch(`${getOAuthApiUrl()}/clients/jwt-auth`, {\n method: 'POST',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(toSnakeCase(params)),\n })\n const json = await response.json()\n log(addJwtValidator.name, json)\n return toCamelCase(json) as TJwtAuthValidator\n}\n\nexport async function updateJwtValidator(\n id: string,\n params: TJwtAuthUpdateValidatorParams,\n): Promise<TJwtAuthValidator> {\n const response = await fetch(`${getOAuthApiUrl()}/clients/jwt-auth/${id}`, {\n method: 'PATCH',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(toSnakeCase(params)),\n })\n const json = await response.json()\n log(updateJwtValidator.name, json)\n return toCamelCase(json) as TJwtAuthValidator\n}\n\nexport async function removeJwtValidator(id: string): Promise<boolean> {\n const response = await fetch(`${getOAuthApiUrl()}/clients/jwt-auth/${id}`, {\n method: 'DELETE',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(removeJwtValidator.name, json)\n return json\n}\n\nexport async function getJwtValidators(): Promise<TJwtAuthValidator[]> {\n const response = await fetch(`${getOAuthApiUrl()}/clients/jwt-auth`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getJwtValidators.name, json)\n return toCamelCase(json) as TJwtAuthValidator[]\n}\n","export * from './oauth'\n","import { getBasicToken } from '@/lib/credentials'\nimport { getOAuthApiUrl } from '@/accounts'\nimport { log } from '@/lib/logging'\nimport { toCamelCase } from '@/lib/obj'\n\nimport type { TTokenResponse, TExchangeTokenParams } from './oauth.types'\n\nexport async function exchangeCodeForToken(params: TExchangeTokenParams): Promise<TTokenResponse> {\n const response = await fetch(`${getOAuthApiUrl()}/oauth2/token`, {\n method: 'POST',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/x-www-form-urlencoded',\n },\n body: new URLSearchParams({\n grant_type: 'authorization_code',\n code: params.code,\n code_verifier: params.codeVerifier,\n redirect_uri: params.redirectUri || 'none',\n }),\n })\n const json = await response.json()\n log(exchangeCodeForToken.name, json)\n return toCamelCase(json) as TTokenResponse\n}\n\nexport async function refreshToken(refreshTokenValue: string): Promise<TTokenResponse> {\n const response = await fetch(`${getOAuthApiUrl()}/oauth2/token`, {\n method: 'POST',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/x-www-form-urlencoded',\n },\n body: new URLSearchParams({\n grant_type: 'refresh_token',\n refresh_token: refreshTokenValue,\n }),\n })\n const json = await response.json()\n log(refreshToken.name, json)\n return toCamelCase(json) as TTokenResponse\n}\n","export * from './api'\nexport * as nfcId from './nfc-id'\nexport * as passportId from './passport-id'\nexport * as promo from './promo'\n","import { getCredentials } from '@/lib/credentials'\nimport { io, Socket } from 'socket.io-client'\n\nexport async function connectToWs(url: string): Promise<Socket> {\n const credentials = getCredentials()\n const socket = io(url, {\n auth: {\n client_id: credentials.clientId,\n client_secret: credentials.clientSecret,\n },\n })\n await new Promise((resolve, reject) => {\n socket.once('connect_error', (err) => reject(err))\n socket.once('connect', () => resolve(socket))\n setTimeout(() => reject(new Error('Cannot connect to websocket server')), 5000)\n })\n return socket\n}\n","import { getSdkEnv, SDK_ENV } from '@/lib/sdk-env'\nimport { Socket } from 'socket.io-client'\nimport { connectToWs } from '@/lib/ws'\n\nlet socket: Socket\n\nexport function getGeneralApiUrl(): string {\n switch (getSdkEnv()) {\n case SDK_ENV.PROD:\n return 'https://api.credenza3.com'\n case SDK_ENV.STAGING:\n return 'https://api.staging.credenza3.com'\n case SDK_ENV.LOCAL:\n return 'http://localhost:8084'\n }\n}\n\nexport function getGeneralWsUrl(): string {\n switch (getSdkEnv()) {\n case SDK_ENV.PROD:\n return 'wss://general-prod-prod.up.railway.app'\n case SDK_ENV.STAGING:\n return 'wss://general-staging-staging.up.railway.app'\n case SDK_ENV.LOCAL:\n return 'ws://localhost:8084'\n }\n}\nexport async function getWsConnection(): Promise<Socket> {\n if (!socket?.connected) {\n socket = await connectToWs(getGeneralWsUrl())\n }\n return socket\n}\n","export * from './nfc-id'\nexport * from './nfc-id.types'\n","import { log } from '@/lib/logging'\nimport { getGeneralApiUrl } from '@/api'\nimport { getBasicToken } from '@/lib/credentials'\nimport { TNfcId, TUpdateNfcId } from './nfc-id.types'\n\nexport async function addNfcId(params: TNfcId): Promise<TNfcId> {\n const response = await fetch(`${getGeneralApiUrl()}/nfc-id`, {\n method: 'POST',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({\n serial_number: params.serialNumber,\n sub: params.sub,\n ...(params.text ? { text: params.text } : {}),\n }),\n })\n const json = await response.json()\n log(addNfcId.name, json)\n return {\n sub: json.sub,\n serialNumber: json.serial_number,\n text: json.text ?? null,\n }\n}\n\nexport async function updateNfcId(serialNumber: string, params: TUpdateNfcId): Promise<boolean> {\n const response = await fetch(`${getGeneralApiUrl()}/nfc-id/${serialNumber}`, {\n method: 'PATCH',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({\n ...(params.text ? { text: params.text } : {}),\n ...(params.sub ? { sub: params.sub } : {}),\n }),\n })\n const json = await response.json()\n log(updateNfcId.name, json)\n return json\n}\n\nexport async function removeNfcId(serialNumber: string): Promise<boolean> {\n const response = await fetch(`${getGeneralApiUrl()}/nfc-id/${serialNumber}`, {\n method: 'DELETE',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(removeNfcId.name, json)\n return json\n}\n\nexport async function getNfcId(serialNumber: string): Promise<Omit<TNfcId, 'serialNumber'>> {\n const response = await fetch(`${getGeneralApiUrl()}/nfc-id/${serialNumber}`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getNfcId.name, json)\n return { sub: json.sub, text: json.text ?? null }\n}\n","export * from './passport-id'\n","import { getWsConnection } from '@/api'\nimport { log } from '@/lib/logging'\n\nexport async function requestPassportIdSignature(sub: string, message: string): Promise<{ signature: string }> {\n if (!sub) throw new Error('\"Sub is required\"')\n if (!message) throw new Error('\"Message is required\"')\n\n const socket = await getWsConnection()\n return new Promise((resolve, reject) => {\n socket.once(`passport_id/signed/${sub}`, (data) => {\n log(requestPassportIdSignature.name, 'Received', data)\n resolve(data.payload)\n })\n socket.emit(\n 'passport_id/request_signature',\n {\n payload: { sub, message },\n },\n (data) => {\n if (!data.payload.ok) {\n reject(new Error('Failed to sign message'))\n }\n if (data.error) {\n reject(new Error(data.error.message))\n }\n log(requestPassportIdSignature.name, 'Requested', data)\n },\n )\n })\n}\n","export * as rules from './rules'\nexport * as offers from './offers'\n","export * from './rules'\n","import { log } from '@/lib/logging'\nimport { getGeneralApiUrl } from '@/api'\nimport { getBasicToken } from '@/lib/credentials'\nimport { TCreateRuleParams, TUpdateRuleParams, TRule } from './rules.types'\nimport { toCamelCase, toSnakeCase } from '@/lib/obj'\n\nexport async function addPromoRule(params: TCreateRuleParams): Promise<TRule> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/rules`, {\n method: 'POST',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(toSnakeCase(params)),\n })\n const json = await response.json()\n log(addPromoRule.name, json)\n return toCamelCase(json) as TRule\n}\n\nexport async function updatePromoRule(id: string, params: TUpdateRuleParams): Promise<TRule> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/rules/${id}`, {\n method: 'PATCH',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(toSnakeCase(params)),\n })\n const json = await response.json()\n log(updatePromoRule.name, json)\n return toCamelCase(json) as TRule\n}\n\nexport async function removePromoRule(id: string): Promise<boolean> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/rules/${id}`, {\n method: 'DELETE',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(removePromoRule.name, json)\n return response.ok\n}\n\nexport async function getPromoRules(): Promise<TRule[]> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/rules`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getPromoRules.name, json)\n return toCamelCase(json) as TRule[]\n}\n","export * from './offers'\n","import { log } from '@/lib/logging'\nimport { getGeneralApiUrl } from '@/api'\nimport { getBasicToken } from '@/lib/credentials'\nimport { TCreateOfferParams, TUpdateOfferParams, TOffer, TOfferRss } from './offers.types'\nimport { toCamelCase, toSnakeCase } from '@/lib/obj'\n\nexport async function addPromoOffer(params: TCreateOfferParams): Promise<TOffer> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/offers`, {\n method: 'POST',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(toSnakeCase(params)),\n })\n const json = await response.json()\n log(addPromoOffer.name, json)\n return toCamelCase(json) as TOffer\n}\n\nexport async function updatePromoOffer(id: string, params: TUpdateOfferParams): Promise<TOffer> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/offers/${id}`, {\n method: 'PATCH',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(toSnakeCase(params)),\n })\n const json = await response.json()\n log(updatePromoOffer.name, json)\n return toCamelCase(json) as TOffer\n}\n\nexport async function removePromoOffer(id: string): Promise<boolean> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/offers/${id}`, {\n method: 'DELETE',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(removePromoOffer.name, json)\n return response.ok\n}\n\nexport async function getPromoOffers(): Promise<TOffer[]> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/offers`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getPromoOffers.name, json)\n return toCamelCase(json) as TOffer[]\n}\n\nexport async function checkPromoOffer(id: string, sub: string): Promise<boolean> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/offers/${id}/check?sub=${sub}`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(checkPromoOffer.name, json)\n return json\n}\n\nexport async function getPromoOfferRss(params: { suiAddress?: string; evmAddress?: string }): Promise<TOfferRss[]> {\n const url = new URL(`${getGeneralApiUrl()}/promo/offers/rss`)\n if (params?.suiAddress) {\n url.searchParams.append('sui_address', params.suiAddress)\n } else if (params?.evmAddress) {\n url.searchParams.append('evm_address', params.evmAddress)\n throw new Error('Currently not supported for EVM') // Remove when implemented\n }\n\n const response = await fetch(url.toString(), {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getPromoOfferRss.name, json)\n return toCamelCase(json) as TOfferRss[]\n}\n","export * from './evm'\nexport * as account from './account'\nexport * as contract from './contract'\n","import { getSdkEnv, SDK_ENV } from '@/lib/sdk-env'\nimport { Socket } from 'socket.io-client'\nimport { connectToWs } from '@/lib/ws'\n\nlet socket: Socket\n\nexport function getEvmApiUrl() {\n switch (getSdkEnv()) {\n case SDK_ENV.PROD:\n return 'https://evm.credenza3.com'\n case SDK_ENV.STAGING:\n return 'https://evm.staging.credenza3.com'\n case SDK_ENV.LOCAL:\n return 'http://localhost:8082'\n }\n}\n\nexport function getEvmWsUrl(): string {\n switch (getSdkEnv()) {\n case SDK_ENV.PROD:\n return 'wss://evm-prod-prod.up.railway.app'\n case SDK_ENV.STAGING:\n return 'wss://evm-staging-staging.up.railway.app'\n case SDK_ENV.LOCAL:\n return 'ws://localhost:8082'\n }\n}\nexport async function getWsConnection(): Promise<Socket> {\n if (!socket?.connected) {\n socket = await connectToWs(getEvmWsUrl())\n }\n return socket\n}\n","export * from './account'\n","import { getBasicToken } from '@/lib/credentials'\nimport { getEvmApiUrl } from '@/evm'\nimport { log } from '@/lib/logging'\n\nexport async function getEvmAddress(sub: string): Promise<{ address: string }> {\n const response = await fetch(`${getEvmApiUrl()}/accounts/${sub}/address`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getEvmAddress.name, json)\n return json\n}\n","export * from './contract'\n","import { getBasicToken } from '@/lib/credentials'\nimport { getEvmApiUrl } from '@/evm'\nimport { log } from '@/lib/logging'\nimport { getWsConnection } from '@/evm'\n\nexport async function getAvailableEvmContracts(): Promise<string[]> {\n const response = await fetch(`${getEvmApiUrl()}/contracts/available`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getAvailableEvmContracts.name, json)\n if (!response.ok) throw new Error(json.message)\n return json\n}\n\nexport async function findEvmContracts(\n params: { name?: string; type?: string; chain_id?: number } = {},\n): Promise<string[]> {\n const url = new URL(`${getEvmApiUrl()}/contracts`)\n for (const [key, val] of Object.entries(params)) {\n url.searchParams.append(key, String(val))\n }\n const response = await fetch(url.toString(), {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(findEvmContracts.name, json)\n if (!response.ok) throw new Error(json.message)\n return json.map((contract) => {\n return {\n id: contract._id,\n type: contract.type,\n name: contract.name,\n chainId: contract.chain_id,\n address: contract.address,\n txHash: contract.tx_hash,\n clientId: contract.client_id,\n }\n })\n}\n\nexport async function deployEvmContract(name: string, chainId: number, ownerAddresses: string[]) {\n if (!name) throw new Error('\"name is required\"')\n if (!chainId) throw new Error('\"chainId\" is required')\n if (!ownerAddresses?.length) throw new Error('\"ownerAddresses\" can not be empty')\n\n const socket = await getWsConnection()\n return new Promise((resolve, reject) => {\n socket.emit(\n 'contracts/deploy',\n {\n payload: { name, chain_id: chainId, owner_addresses: ownerAddresses },\n },\n (data) => {\n if (data.error) {\n return reject(new Error(data.error.message))\n }\n log(deployEvmContract.name, `${name} contract deployed`, data)\n resolve({\n id: data.payload.contract._id,\n type: data.payload.contract.type,\n name: data.payload.contract.name,\n chainId,\n address: data.payload.contract.address,\n tx: {\n deployment: data.payload.tx.deployment,\n trustedForwarder: data.payload.tx.trusted_forwarder,\n addOwner: data.payload.tx.add_owner,\n },\n })\n },\n )\n })\n}\n\nexport async function sendEvmMetaTransaction(unsignedSerializedMetaTx: string) {\n const socket = await getWsConnection()\n return new Promise((resolve, reject) => {\n socket.emit(\n 'contracts/forward_transaction/client',\n {\n payload: {\n unsigned_serialized_meta_tx: unsignedSerializedMetaTx,\n },\n },\n (data) => {\n if (data.error) {\n return reject(new Error(data.error.message))\n }\n log(sendEvmMetaTransaction.name, `meta tx sent`, data)\n resolve(data.payload)\n },\n )\n })\n}\n","export * from './sui'\nexport * as account from './account'\nexport * as zk from './zk'\n","import { getSdkEnv, SDK_ENV } from '@/lib/sdk-env'\n\nexport function getSuiApiUrl() {\n switch (getSdkEnv()) {\n case SDK_ENV.PROD:\n return 'https://sui.credenza3.com'\n case SDK_ENV.STAGING:\n return 'https://sui.staging.credenza3.com'\n case SDK_ENV.LOCAL:\n return 'http://localhost:8083'\n }\n}\n","export * from './account'\n","import { getBasicToken } from '@/lib/credentials'\nimport { getSuiApiUrl } from '@/sui'\nimport { log } from '@/lib/logging'\n\nexport async function getSuiAddress(sub: string): Promise<{ address: string }> {\n const response = await fetch(`${getSuiApiUrl()}/accounts/${sub}/address`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getSuiAddress.name, json)\n return json\n}\n","export * as account from './account'\n","export * from './account'\n","import { getBasicToken } from '@/lib/credentials'\nimport { getSuiApiUrl } from '@/sui'\nimport { log } from '@/lib/logging'\n\nexport async function getSuiZkAddress(sub: string): Promise<{ address: string }> {\n const response = await fetch(`${getSuiApiUrl()}/accounts/zk/${sub}/address`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getSuiZkAddress.name, json)\n return json\n}\n","import { setCredentials, TCredentials } from './lib/credentials'\nimport { setSdkEnv, TSdkEnv } from './lib/sdk-env'\nimport { enableSdkDebug } from './lib/logging'\n\nexport function useAuth(credentials: TCredentials): void {\n setCredentials(credentials)\n}\n\nexport function useEnv(sdkEnv: TSdkEnv): void {\n setSdkEnv(sdkEnv)\n}\n\nexport function useDebug(enableDebug: boolean) {\n enableSdkDebug(enableDebug)\n}\n\nexport * as accounts from './accounts'\nexport * as api from './api'\nexport * as evm from './evm'\nexport * as sui from './sui'\n"],"mappings":"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","names":["credentials","socket","socket","getWsConnection","socket","getWsConnection","socket","getWsConnection","account_exports","account_exports","account_exports","account_exports","credentials","sdkEnv"]}
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../src/lib/credentials/credentials.ts","../src/lib/sdk-env/sdk-env.constants.ts","../src/lib/sdk-env/sdk-env.ts","../src/lib/logging/logging.ts","../src/accounts/index.ts","../src/accounts/accounts.ts","../src/accounts/user/index.ts","../src/lib/obj/obj.ts","../src/accounts/user/user.ts","../src/accounts/client/index.ts","../src/accounts/client/client.ts","../src/accounts/client/jwt-auth/index.ts","../src/accounts/client/jwt-auth/jwt-auth.ts","../src/accounts/oauth/index.ts","../src/accounts/oauth/oauth.ts","../src/api/index.ts","../src/lib/ws/ws.ts","../src/api/api.ts","../src/api/nfc-id/index.ts","../src/api/nfc-id/nfc-id.ts","../src/api/passport-id/index.ts","../src/api/passport-id/passport-id.ts","../src/api/promo/index.ts","../src/api/promo/rules/index.ts","../src/api/promo/rules/rules.ts","../src/api/promo/offers/index.ts","../src/api/promo/offers/offers.ts","../src/evm/index.ts","../src/evm/evm.ts","../src/evm/account/index.ts","../src/evm/account/account.ts","../src/evm/contract/index.ts","../src/evm/contract/contract.ts","../src/sui/index.ts","../src/sui/sui.ts","../src/sui/account/index.ts","../src/sui/account/account.ts","../src/sui/zk/index.ts","../src/sui/zk/account/index.ts","../src/sui/zk/account/account.ts","../src/credenza-partner-sdk.ts"],"sourcesContent":["export * from './credenza-partner-sdk'\n","import { Buffer } from 'buffer'\n\nimport { TCredentials } from './credentials.types'\n\nlet credentials: TCredentials = null\n\nexport function setCredentials(credentialsInput: TCredentials): void {\n if (!credentialsInput.clientId) throw new Error('\"clientId\" is required')\n if (!credentialsInput.clientSecret) throw new Error('\"clientSecret\" is required')\n credentials = credentialsInput\n}\n\nexport function getCredentials(): TCredentials {\n if (!credentials?.clientId || !credentials?.clientSecret) throw new Error('Credentials are not set')\n return credentials\n}\n\nexport function getBasicToken(): string {\n const { clientId, clientSecret } = getCredentials()\n const basicCredentials = `${clientId}:${clientSecret}`\n return `Basic ${Buffer.from(basicCredentials).toString('base64')}`\n}\n","export const SDK_ENV = {\n PROD: 'prod',\n STAGING: 'staging',\n LOCAL: 'local',\n} as const\n","import { SDK_ENV } from './sdk-env.constants'\nimport { TSdkEnv } from './sdk-env.types'\n\nlet sdkEnv: TSdkEnv = SDK_ENV.PROD\nexport function getSdkEnv(): TSdkEnv {\n return sdkEnv\n}\n\nexport function setSdkEnv(sdkEnvironment: TSdkEnv): void {\n sdkEnv = sdkEnvironment\n}\n","let debugEnabled = false\n\nexport function log(methodName: string, ...args: unknown[]) {\n if (!debugEnabled) return\n console.log(`[CREDENZA_PARTNER_SDK#${methodName}]:`, ...args)\n}\n\nexport function enableSdkDebug(enableDebug: boolean) {\n debugEnabled = enableDebug\n}\n","export * from './accounts'\nexport * as user from './user'\nexport * as client from './client'\nexport * as oauth from './oauth'\n","import { getSdkEnv, SDK_ENV } from '@/lib/sdk-env'\n\nexport function getOAuthApiUrl() {\n switch (getSdkEnv()) {\n case SDK_ENV.PROD:\n return 'https://accounts.credenza3.com'\n case SDK_ENV.STAGING:\n return 'https://accounts.staging.credenza3.com'\n case SDK_ENV.LOCAL:\n return 'http://localhost:8081'\n }\n}\n","export * from './user'\n","export function toCamelCase(obj: unknown): unknown {\n if (Array.isArray(obj)) {\n return obj.map(toCamelCase)\n } else if (obj !== null && typeof obj === 'object') {\n return Object.keys(obj).reduce((acc, key) => {\n const camelKey = key.replace(/^_id$/, 'id').replace(/_([a-z])/g, (_, letter) => letter.toUpperCase())\n acc[camelKey] = toCamelCase(obj[key])\n return acc\n }, {})\n }\n return obj\n}\n\nexport function toSnakeCase(obj: unknown): unknown {\n if (Array.isArray(obj)) {\n return obj.map(toSnakeCase)\n } else if (obj !== null && typeof obj === 'object') {\n return Object.keys(obj).reduce((acc, key) => {\n const snakeKey = key.replace(/([A-Z])/g, (_, letter) => `_${letter.toLowerCase()}`)\n acc[snakeKey] = toSnakeCase(obj[key])\n return acc\n }, {})\n }\n return obj\n}\n","import { getBasicToken } from '@/lib/credentials'\nimport { getOAuthApiUrl } from '@/accounts'\nimport { log } from '@/lib/logging'\nimport { toCamelCase } from '@/lib/obj'\n\nimport type { TOAuthAccountInfo } from './user.types'\n\nexport async function getAccountInfo(sub: string): Promise<TOAuthAccountInfo> {\n const response = await fetch(`${getOAuthApiUrl()}/accounts/${sub}`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getAccountInfo.name, json)\n return toCamelCase(json) as TOAuthAccountInfo\n}\n","export * from './client'\nexport * as jwtAuth from './jwt-auth'\n","import { getBasicToken } from '@/lib/credentials'\nimport { getOAuthApiUrl } from '@/accounts'\nimport { log } from '@/lib/logging'\n\nexport async function getCurrentClientInfo(): Promise<{\n id: string\n name: string\n callbackUris: string[]\n confidential: boolean\n ownerId: string\n accessTokenTTLMinutes: number\n availableLoginTypes: string[]\n admins: string[]\n apiPermissions: string[]\n logoUri?: string\n}> {\n const response = await fetch(`${getOAuthApiUrl()}/clients/current`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getCurrentClientInfo.name, json)\n return {\n id: json._id,\n name: json.name,\n callbackUris: json.callback_uris,\n confidential: json.confidential,\n ownerId: json.owner_id,\n accessTokenTTLMinutes: json.access_token_ttl_minutes,\n availableLoginTypes: json.available_login_types,\n admins: json.admins,\n apiPermissions: json.api_permissions,\n logoUri: json.logo_uri ?? null,\n }\n}\n","export * from './jwt-auth'\n","import { log } from '@/lib/logging'\nimport { getOAuthApiUrl } from '@/accounts'\nimport { getBasicToken } from '@/lib/credentials'\nimport { toCamelCase, toSnakeCase } from '@/lib/obj'\nimport type { TJwtAuthValidator, TJwtAuthValidatorParams, TJwtAuthUpdateValidatorParams } from './jwt-auth.types'\n\nexport async function addJwtValidator(params: TJwtAuthValidatorParams): Promise<TJwtAuthValidator> {\n const response = await fetch(`${getOAuthApiUrl()}/clients/jwt-auth`, {\n method: 'POST',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(toSnakeCase(params)),\n })\n const json = await response.json()\n log(addJwtValidator.name, json)\n return toCamelCase(json) as TJwtAuthValidator\n}\n\nexport async function updateJwtValidator(\n id: string,\n params: TJwtAuthUpdateValidatorParams,\n): Promise<TJwtAuthValidator> {\n const response = await fetch(`${getOAuthApiUrl()}/clients/jwt-auth/${id}`, {\n method: 'PATCH',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(toSnakeCase(params)),\n })\n const json = await response.json()\n log(updateJwtValidator.name, json)\n return toCamelCase(json) as TJwtAuthValidator\n}\n\nexport async function removeJwtValidator(id: string): Promise<boolean> {\n const response = await fetch(`${getOAuthApiUrl()}/clients/jwt-auth/${id}`, {\n method: 'DELETE',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(removeJwtValidator.name, json)\n return json\n}\n\nexport async function getJwtValidators(): Promise<TJwtAuthValidator[]> {\n const response = await fetch(`${getOAuthApiUrl()}/clients/jwt-auth`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getJwtValidators.name, json)\n return toCamelCase(json) as TJwtAuthValidator[]\n}\n","export * from './oauth'\n","import { getBasicToken } from '@/lib/credentials'\nimport { getOAuthApiUrl } from '@/accounts'\nimport { log } from '@/lib/logging'\nimport { toCamelCase } from '@/lib/obj'\n\nimport type { TTokenResponse, TExchangeTokenParams } from './oauth.types'\n\nexport async function exchangeCodeForToken(params: TExchangeTokenParams): Promise<TTokenResponse> {\n const response = await fetch(`${getOAuthApiUrl()}/oauth2/token`, {\n method: 'POST',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/x-www-form-urlencoded',\n },\n body: new URLSearchParams({\n grant_type: 'authorization_code',\n code: params.code,\n code_verifier: params.codeVerifier,\n redirect_uri: params.redirectUri || 'none',\n }),\n })\n const json = await response.json()\n log(exchangeCodeForToken.name, json)\n return toCamelCase(json) as TTokenResponse\n}\n\nexport async function refreshToken(refreshTokenValue: string): Promise<TTokenResponse> {\n const response = await fetch(`${getOAuthApiUrl()}/oauth2/token`, {\n method: 'POST',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/x-www-form-urlencoded',\n },\n body: new URLSearchParams({\n grant_type: 'refresh_token',\n refresh_token: refreshTokenValue,\n }),\n })\n const json = await response.json()\n log(refreshToken.name, json)\n return toCamelCase(json) as TTokenResponse\n}\n","export * from './api'\nexport * as nfcId from './nfc-id'\nexport * as passportId from './passport-id'\nexport * as promo from './promo'\n","import { getCredentials } from '@/lib/credentials'\nimport { io, Socket } from 'socket.io-client'\n\nexport async function connectToWs(url: string): Promise<Socket> {\n const credentials = getCredentials()\n const socket = io(url, {\n auth: {\n client_id: credentials.clientId,\n client_secret: credentials.clientSecret,\n },\n })\n await new Promise((resolve, reject) => {\n socket.once('connect_error', (err) => reject(err))\n socket.once('connect', () => resolve(socket))\n setTimeout(() => reject(new Error('Cannot connect to websocket server')), 5000)\n })\n return socket\n}\n","import { getSdkEnv, SDK_ENV } from '@/lib/sdk-env'\nimport { Socket } from 'socket.io-client'\nimport { connectToWs } from '@/lib/ws'\n\nlet socket: Socket\n\nexport function getGeneralApiUrl(): string {\n switch (getSdkEnv()) {\n case SDK_ENV.PROD:\n return 'https://api.credenza3.com'\n case SDK_ENV.STAGING:\n return 'https://api.staging.credenza3.com'\n case SDK_ENV.LOCAL:\n return 'http://localhost:8084'\n }\n}\n\nexport function getGeneralWsUrl(): string {\n switch (getSdkEnv()) {\n case SDK_ENV.PROD:\n return 'wss://general-prod-prod.up.railway.app'\n case SDK_ENV.STAGING:\n return 'wss://general-staging-staging.up.railway.app'\n case SDK_ENV.LOCAL:\n return 'ws://localhost:8084'\n }\n}\nexport async function getWsConnection(): Promise<Socket> {\n if (!socket?.connected) {\n socket = await connectToWs(getGeneralWsUrl())\n }\n return socket\n}\n","export * from './nfc-id'\nexport * from './nfc-id.types'\n","import { log } from '@/lib/logging'\nimport { getGeneralApiUrl } from '@/api'\nimport { getBasicToken } from '@/lib/credentials'\nimport { TNfcId, TUpdateNfcId } from './nfc-id.types'\n\nexport async function addNfcId(params: TNfcId): Promise<TNfcId> {\n const response = await fetch(`${getGeneralApiUrl()}/nfc-id`, {\n method: 'POST',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({\n serial_number: params.serialNumber,\n sub: params.sub,\n ...(params.text ? { text: params.text } : {}),\n }),\n })\n const json = await response.json()\n log(addNfcId.name, json)\n return {\n sub: json.sub,\n serialNumber: json.serial_number,\n text: json.text ?? null,\n }\n}\n\nexport async function updateNfcId(serialNumber: string, params: TUpdateNfcId): Promise<boolean> {\n const response = await fetch(`${getGeneralApiUrl()}/nfc-id/${serialNumber}`, {\n method: 'PATCH',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({\n ...(params.text ? { text: params.text } : {}),\n ...(params.sub ? { sub: params.sub } : {}),\n }),\n })\n const json = await response.json()\n log(updateNfcId.name, json)\n return json\n}\n\nexport async function removeNfcId(serialNumber: string): Promise<boolean> {\n const response = await fetch(`${getGeneralApiUrl()}/nfc-id/${serialNumber}`, {\n method: 'DELETE',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(removeNfcId.name, json)\n return json\n}\n\nexport async function getNfcId(serialNumber: string): Promise<Omit<TNfcId, 'serialNumber'>> {\n const response = await fetch(`${getGeneralApiUrl()}/nfc-id/${serialNumber}`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getNfcId.name, json)\n return { sub: json.sub, text: json.text ?? null }\n}\n","export * from './passport-id'\n","import { getWsConnection } from '@/api'\nimport { log } from '@/lib/logging'\n\nexport async function requestPassportIdSignature(sub: string, message: string): Promise<{ signature: string }> {\n if (!sub) throw new Error('\"Sub is required\"')\n if (!message) throw new Error('\"Message is required\"')\n\n const socket = await getWsConnection()\n return new Promise((resolve, reject) => {\n socket.once(`passport_id/signed/${sub}`, (data) => {\n log(requestPassportIdSignature.name, 'Received', data)\n resolve(data.payload)\n })\n socket.emit(\n 'passport_id/request_signature',\n {\n payload: { sub, message },\n },\n (data) => {\n if (!data.payload.ok) {\n reject(new Error('Failed to sign message'))\n }\n if (data.error) {\n reject(new Error(data.error.message))\n }\n log(requestPassportIdSignature.name, 'Requested', data)\n },\n )\n })\n}\n","export * as rules from './rules'\nexport * as offers from './offers'\n","export * from './rules'\n","import { log } from '@/lib/logging'\nimport { getGeneralApiUrl } from '@/api'\nimport { getBasicToken } from '@/lib/credentials'\nimport { TCreateRuleParams, TUpdateRuleParams, TRule } from './rules.types'\nimport { toCamelCase, toSnakeCase } from '@/lib/obj'\n\nexport async function addPromoRule(params: TCreateRuleParams): Promise<TRule> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/rules`, {\n method: 'POST',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(toSnakeCase(params)),\n })\n const json = await response.json()\n log(addPromoRule.name, json)\n return toCamelCase(json) as TRule\n}\n\nexport async function updatePromoRule(id: string, params: TUpdateRuleParams): Promise<TRule> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/rules/${id}`, {\n method: 'PATCH',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(toSnakeCase(params)),\n })\n const json = await response.json()\n log(updatePromoRule.name, json)\n return toCamelCase(json) as TRule\n}\n\nexport async function removePromoRule(id: string): Promise<boolean> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/rules/${id}`, {\n method: 'DELETE',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(removePromoRule.name, json)\n return response.ok\n}\n\nexport async function getPromoRules(): Promise<TRule[]> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/rules`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getPromoRules.name, json)\n return toCamelCase(json) as TRule[]\n}\n","export * from './offers'\n","import { log } from '@/lib/logging'\nimport { getGeneralApiUrl } from '@/api'\nimport { getBasicToken } from '@/lib/credentials'\nimport { TCreateOfferParams, TUpdateOfferParams, TOffer, TOfferRss } from './offers.types'\nimport { toCamelCase, toSnakeCase } from '@/lib/obj'\n\nexport async function addPromoOffer(params: TCreateOfferParams): Promise<TOffer> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/offers`, {\n method: 'POST',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(toSnakeCase(params)),\n })\n const json = await response.json()\n log(addPromoOffer.name, json)\n return toCamelCase(json) as TOffer\n}\n\nexport async function updatePromoOffer(id: string, params: TUpdateOfferParams): Promise<TOffer> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/offers/${id}`, {\n method: 'PATCH',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(toSnakeCase(params)),\n })\n const json = await response.json()\n log(updatePromoOffer.name, json)\n return toCamelCase(json) as TOffer\n}\n\nexport async function removePromoOffer(id: string): Promise<boolean> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/offers/${id}`, {\n method: 'DELETE',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(removePromoOffer.name, json)\n return response.ok\n}\n\nexport async function getPromoOffers(): Promise<TOffer[]> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/offers`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getPromoOffers.name, json)\n return toCamelCase(json) as TOffer[]\n}\n\nexport async function checkPromoOffer(id: string, sub: string): Promise<boolean> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/offers/${id}/check?sub=${sub}`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(checkPromoOffer.name, json)\n return json\n}\n\nexport async function getPromoOfferRss(params: { suiAddress?: string; evmAddress?: string }): Promise<TOfferRss[]> {\n const url = new URL(`${getGeneralApiUrl()}/promo/offers/rss`)\n if (params?.suiAddress) {\n url.searchParams.append('sui_address', params.suiAddress)\n } else if (params?.evmAddress) {\n url.searchParams.append('evm_address', params.evmAddress)\n throw new Error('Currently not supported for EVM') // Remove when implemented\n }\n\n const response = await fetch(url.toString(), {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getPromoOfferRss.name, json)\n return toCamelCase(json) as TOfferRss[]\n}\n","export * from './evm'\nexport * as account from './account'\nexport * as contract from './contract'\n","import { getSdkEnv, SDK_ENV } from '@/lib/sdk-env'\nimport { Socket } from 'socket.io-client'\nimport { connectToWs } from '@/lib/ws'\n\nlet socket: Socket\n\nexport function getEvmApiUrl() {\n switch (getSdkEnv()) {\n case SDK_ENV.PROD:\n return 'https://evm.credenza3.com'\n case SDK_ENV.STAGING:\n return 'https://evm.staging.credenza3.com'\n case SDK_ENV.LOCAL:\n return 'http://localhost:8082'\n }\n}\n\nexport function getEvmWsUrl(): string {\n switch (getSdkEnv()) {\n case SDK_ENV.PROD:\n return 'wss://evm-prod-prod.up.railway.app'\n case SDK_ENV.STAGING:\n return 'wss://evm-staging-staging.up.railway.app'\n case SDK_ENV.LOCAL:\n return 'ws://localhost:8082'\n }\n}\nexport async function getWsConnection(): Promise<Socket> {\n if (!socket?.connected) {\n socket = await connectToWs(getEvmWsUrl())\n }\n return socket\n}\n","export * from './account'\n","import { getBasicToken } from '@/lib/credentials'\nimport { getEvmApiUrl } from '@/evm'\nimport { log } from '@/lib/logging'\n\nexport async function getEvmAddress(sub: string): Promise<{ address: string }> {\n const response = await fetch(`${getEvmApiUrl()}/accounts/${sub}/address`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getEvmAddress.name, json)\n return json\n}\n","export * from './contract'\n","import { getBasicToken } from '@/lib/credentials'\nimport { getEvmApiUrl } from '@/evm'\nimport { log } from '@/lib/logging'\nimport { getWsConnection } from '@/evm'\n\nexport async function getAvailableEvmContracts(): Promise<string[]> {\n const response = await fetch(`${getEvmApiUrl()}/contracts/available`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getAvailableEvmContracts.name, json)\n if (!response.ok) throw new Error(json.message)\n return json\n}\n\nexport async function findEvmContracts(\n params: { name?: string; type?: string; chain_id?: number } = {},\n): Promise<string[]> {\n const url = new URL(`${getEvmApiUrl()}/contracts`)\n for (const [key, val] of Object.entries(params)) {\n url.searchParams.append(key, String(val))\n }\n const response = await fetch(url.toString(), {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(findEvmContracts.name, json)\n if (!response.ok) throw new Error(json.message)\n return json.map((contract) => {\n return {\n id: contract._id,\n type: contract.type,\n name: contract.name,\n chainId: contract.chain_id,\n address: contract.address,\n txHash: contract.tx_hash,\n clientId: contract.client_id,\n }\n })\n}\n\nexport async function deployEvmContract(name: string, chainId: number, ownerAddresses: string[]) {\n if (!name) throw new Error('\"name is required\"')\n if (!chainId) throw new Error('\"chainId\" is required')\n if (ownerAddresses?.length === 0) throw new Error('\"ownerAddresses\" can not be empty')\n\n const socket = await getWsConnection()\n return new Promise((resolve, reject) => {\n socket.emit(\n 'contracts/deploy',\n {\n payload: { name, chain_id: chainId, owner_addresses: ownerAddresses },\n },\n (data) => {\n if (data.error) {\n return reject(new Error(data.error.message))\n }\n log(deployEvmContract.name, `${name} contract deployed`, data)\n resolve({\n id: data.payload.contract._id,\n type: data.payload.contract.type,\n name: data.payload.contract.name,\n chainId,\n address: data.payload.contract.address,\n tx: {\n deployment: data.payload.tx.deployment,\n trustedForwarder: data.payload.tx.trusted_forwarder,\n addOwner: data.payload.tx.add_owner,\n },\n })\n },\n )\n })\n}\n\nexport async function sendEvmMetaTransaction(unsignedSerializedMetaTx: string, accountAddress: string) {\n const socket = await getWsConnection()\n return new Promise((resolve, reject) => {\n socket.emit(\n 'contracts/forward_transaction/client',\n {\n payload: {\n account_address: accountAddress,\n unsigned_serialized_meta_tx: unsignedSerializedMetaTx,\n },\n },\n (data) => {\n if (data.error) {\n return reject(new Error(data.error.message))\n }\n log(sendEvmMetaTransaction.name, `meta tx sent`, data)\n resolve(data.payload)\n },\n )\n })\n}\n","export * from './sui'\nexport * as account from './account'\nexport * as zk from './zk'\n","import { getSdkEnv, SDK_ENV } from '@/lib/sdk-env'\n\nexport function getSuiApiUrl() {\n switch (getSdkEnv()) {\n case SDK_ENV.PROD:\n return 'https://sui.credenza3.com'\n case SDK_ENV.STAGING:\n return 'https://sui.staging.credenza3.com'\n case SDK_ENV.LOCAL:\n return 'http://localhost:8083'\n }\n}\n","export * from './account'\n","import { getBasicToken } from '@/lib/credentials'\nimport { getSuiApiUrl } from '@/sui'\nimport { log } from '@/lib/logging'\n\nexport async function getSuiAddress(sub: string): Promise<{ address: string }> {\n const response = await fetch(`${getSuiApiUrl()}/accounts/${sub}/address`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getSuiAddress.name, json)\n return json\n}\n","export * as account from './account'\n","export * from './account'\n","import { getBasicToken } from '@/lib/credentials'\nimport { getSuiApiUrl } from '@/sui'\nimport { log } from '@/lib/logging'\n\nexport async function getSuiZkAddress(sub: string): Promise<{ address: string }> {\n const response = await fetch(`${getSuiApiUrl()}/accounts/zk/${sub}/address`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getSuiZkAddress.name, json)\n return json\n}\n","import { setCredentials, TCredentials } from './lib/credentials'\nimport { setSdkEnv, TSdkEnv } from './lib/sdk-env'\nimport { enableSdkDebug } from './lib/logging'\n\nexport function useAuth(credentials: TCredentials): void {\n setCredentials(credentials)\n}\n\nexport function useEnv(sdkEnv: TSdkEnv): void {\n setSdkEnv(sdkEnv)\n}\n\nexport function useDebug(enableDebug: boolean) {\n enableSdkDebug(enableDebug)\n}\n\nexport * as accounts from './accounts'\nexport * as api from './api'\nexport * as evm from './evm'\nexport * as sui from './sui'\n"],"mappings":"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","names":["credentials","socket","socket","getWsConnection","socket","getWsConnection","socket","getWsConnection","account_exports","account_exports","account_exports","account_exports","credentials","sdkEnv"]}
|
package/dist/index.mjs
CHANGED
|
@@ -771,7 +771,7 @@ function deployEvmContract(name, chainId, ownerAddresses) {
|
|
|
771
771
|
return __async(this, null, function* () {
|
|
772
772
|
if (!name) throw new Error('"name is required"');
|
|
773
773
|
if (!chainId) throw new Error('"chainId" is required');
|
|
774
|
-
if (
|
|
774
|
+
if ((ownerAddresses == null ? void 0 : ownerAddresses.length) === 0) throw new Error('"ownerAddresses" can not be empty');
|
|
775
775
|
const socket3 = yield getWsConnection2();
|
|
776
776
|
return new Promise((resolve, reject) => {
|
|
777
777
|
socket3.emit(
|
|
@@ -801,7 +801,7 @@ function deployEvmContract(name, chainId, ownerAddresses) {
|
|
|
801
801
|
});
|
|
802
802
|
});
|
|
803
803
|
}
|
|
804
|
-
function sendEvmMetaTransaction(unsignedSerializedMetaTx) {
|
|
804
|
+
function sendEvmMetaTransaction(unsignedSerializedMetaTx, accountAddress) {
|
|
805
805
|
return __async(this, null, function* () {
|
|
806
806
|
const socket3 = yield getWsConnection2();
|
|
807
807
|
return new Promise((resolve, reject) => {
|
|
@@ -809,6 +809,7 @@ function sendEvmMetaTransaction(unsignedSerializedMetaTx) {
|
|
|
809
809
|
"contracts/forward_transaction/client",
|
|
810
810
|
{
|
|
811
811
|
payload: {
|
|
812
|
+
account_address: accountAddress,
|
|
812
813
|
unsigned_serialized_meta_tx: unsignedSerializedMetaTx
|
|
813
814
|
}
|
|
814
815
|
},
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/lib/credentials/credentials.ts","../src/lib/sdk-env/sdk-env.constants.ts","../src/lib/sdk-env/sdk-env.ts","../src/lib/logging/logging.ts","../src/accounts/index.ts","../src/accounts/accounts.ts","../src/accounts/user/index.ts","../src/lib/obj/obj.ts","../src/accounts/user/user.ts","../src/accounts/client/index.ts","../src/accounts/client/client.ts","../src/accounts/client/jwt-auth/index.ts","../src/accounts/client/jwt-auth/jwt-auth.ts","../src/accounts/oauth/index.ts","../src/accounts/oauth/oauth.ts","../src/api/index.ts","../src/lib/ws/ws.ts","../src/api/api.ts","../src/api/nfc-id/index.ts","../src/api/nfc-id/nfc-id.ts","../src/api/passport-id/index.ts","../src/api/passport-id/passport-id.ts","../src/api/promo/index.ts","../src/api/promo/rules/index.ts","../src/api/promo/rules/rules.ts","../src/api/promo/offers/index.ts","../src/api/promo/offers/offers.ts","../src/evm/index.ts","../src/evm/evm.ts","../src/evm/account/index.ts","../src/evm/account/account.ts","../src/evm/contract/index.ts","../src/evm/contract/contract.ts","../src/sui/index.ts","../src/sui/sui.ts","../src/sui/account/index.ts","../src/sui/account/account.ts","../src/sui/zk/index.ts","../src/sui/zk/account/index.ts","../src/sui/zk/account/account.ts","../src/credenza-partner-sdk.ts"],"sourcesContent":["import { Buffer } from 'buffer'\n\nimport { TCredentials } from './credentials.types'\n\nlet credentials: TCredentials = null\n\nexport function setCredentials(credentialsInput: TCredentials): void {\n if (!credentialsInput.clientId) throw new Error('\"clientId\" is required')\n if (!credentialsInput.clientSecret) throw new Error('\"clientSecret\" is required')\n credentials = credentialsInput\n}\n\nexport function getCredentials(): TCredentials {\n if (!credentials?.clientId || !credentials?.clientSecret) throw new Error('Credentials are not set')\n return credentials\n}\n\nexport function getBasicToken(): string {\n const { clientId, clientSecret } = getCredentials()\n const basicCredentials = `${clientId}:${clientSecret}`\n return `Basic ${Buffer.from(basicCredentials).toString('base64')}`\n}\n","export const SDK_ENV = {\n PROD: 'prod',\n STAGING: 'staging',\n LOCAL: 'local',\n} as const\n","import { SDK_ENV } from './sdk-env.constants'\nimport { TSdkEnv } from './sdk-env.types'\n\nlet sdkEnv: TSdkEnv = SDK_ENV.PROD\nexport function getSdkEnv(): TSdkEnv {\n return sdkEnv\n}\n\nexport function setSdkEnv(sdkEnvironment: TSdkEnv): void {\n sdkEnv = sdkEnvironment\n}\n","let debugEnabled = false\n\nexport function log(methodName: string, ...args: unknown[]) {\n if (!debugEnabled) return\n console.log(`[CREDENZA_PARTNER_SDK#${methodName}]:`, ...args)\n}\n\nexport function enableSdkDebug(enableDebug: boolean) {\n debugEnabled = enableDebug\n}\n","export * from './accounts'\nexport * as user from './user'\nexport * as client from './client'\nexport * as oauth from './oauth'\n","import { getSdkEnv, SDK_ENV } from '@/lib/sdk-env'\n\nexport function getOAuthApiUrl() {\n switch (getSdkEnv()) {\n case SDK_ENV.PROD:\n return 'https://accounts.credenza3.com'\n case SDK_ENV.STAGING:\n return 'https://accounts.staging.credenza3.com'\n case SDK_ENV.LOCAL:\n return 'http://localhost:8081'\n }\n}\n","export * from './user'\n","export function toCamelCase(obj: unknown): unknown {\n if (Array.isArray(obj)) {\n return obj.map(toCamelCase)\n } else if (obj !== null && typeof obj === 'object') {\n return Object.keys(obj).reduce((acc, key) => {\n const camelKey = key.replace(/^_id$/, 'id').replace(/_([a-z])/g, (_, letter) => letter.toUpperCase())\n acc[camelKey] = toCamelCase(obj[key])\n return acc\n }, {})\n }\n return obj\n}\n\nexport function toSnakeCase(obj: unknown): unknown {\n if (Array.isArray(obj)) {\n return obj.map(toSnakeCase)\n } else if (obj !== null && typeof obj === 'object') {\n return Object.keys(obj).reduce((acc, key) => {\n const snakeKey = key.replace(/([A-Z])/g, (_, letter) => `_${letter.toLowerCase()}`)\n acc[snakeKey] = toSnakeCase(obj[key])\n return acc\n }, {})\n }\n return obj\n}\n","import { getBasicToken } from '@/lib/credentials'\nimport { getOAuthApiUrl } from '@/accounts'\nimport { log } from '@/lib/logging'\nimport { toCamelCase } from '@/lib/obj'\n\nimport type { TOAuthAccountInfo } from './user.types'\n\nexport async function getAccountInfo(sub: string): Promise<TOAuthAccountInfo> {\n const response = await fetch(`${getOAuthApiUrl()}/accounts/${sub}`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getAccountInfo.name, json)\n return toCamelCase(json) as TOAuthAccountInfo\n}\n","export * from './client'\nexport * as jwtAuth from './jwt-auth'\n","import { getBasicToken } from '@/lib/credentials'\nimport { getOAuthApiUrl } from '@/accounts'\nimport { log } from '@/lib/logging'\n\nexport async function getCurrentClientInfo(): Promise<{\n id: string\n name: string\n callbackUris: string[]\n confidential: boolean\n ownerId: string\n accessTokenTTLMinutes: number\n availableLoginTypes: string[]\n admins: string[]\n apiPermissions: string[]\n logoUri?: string\n}> {\n const response = await fetch(`${getOAuthApiUrl()}/clients/current`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getCurrentClientInfo.name, json)\n return {\n id: json._id,\n name: json.name,\n callbackUris: json.callback_uris,\n confidential: json.confidential,\n ownerId: json.owner_id,\n accessTokenTTLMinutes: json.access_token_ttl_minutes,\n availableLoginTypes: json.available_login_types,\n admins: json.admins,\n apiPermissions: json.api_permissions,\n logoUri: json.logo_uri ?? null,\n }\n}\n","export * from './jwt-auth'\n","import { log } from '@/lib/logging'\nimport { getOAuthApiUrl } from '@/accounts'\nimport { getBasicToken } from '@/lib/credentials'\nimport { toCamelCase, toSnakeCase } from '@/lib/obj'\nimport type { TJwtAuthValidator, TJwtAuthValidatorParams, TJwtAuthUpdateValidatorParams } from './jwt-auth.types'\n\nexport async function addJwtValidator(params: TJwtAuthValidatorParams): Promise<TJwtAuthValidator> {\n const response = await fetch(`${getOAuthApiUrl()}/clients/jwt-auth`, {\n method: 'POST',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(toSnakeCase(params)),\n })\n const json = await response.json()\n log(addJwtValidator.name, json)\n return toCamelCase(json) as TJwtAuthValidator\n}\n\nexport async function updateJwtValidator(\n id: string,\n params: TJwtAuthUpdateValidatorParams,\n): Promise<TJwtAuthValidator> {\n const response = await fetch(`${getOAuthApiUrl()}/clients/jwt-auth/${id}`, {\n method: 'PATCH',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(toSnakeCase(params)),\n })\n const json = await response.json()\n log(updateJwtValidator.name, json)\n return toCamelCase(json) as TJwtAuthValidator\n}\n\nexport async function removeJwtValidator(id: string): Promise<boolean> {\n const response = await fetch(`${getOAuthApiUrl()}/clients/jwt-auth/${id}`, {\n method: 'DELETE',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(removeJwtValidator.name, json)\n return json\n}\n\nexport async function getJwtValidators(): Promise<TJwtAuthValidator[]> {\n const response = await fetch(`${getOAuthApiUrl()}/clients/jwt-auth`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getJwtValidators.name, json)\n return toCamelCase(json) as TJwtAuthValidator[]\n}\n","export * from './oauth'\n","import { getBasicToken } from '@/lib/credentials'\nimport { getOAuthApiUrl } from '@/accounts'\nimport { log } from '@/lib/logging'\nimport { toCamelCase } from '@/lib/obj'\n\nimport type { TTokenResponse, TExchangeTokenParams } from './oauth.types'\n\nexport async function exchangeCodeForToken(params: TExchangeTokenParams): Promise<TTokenResponse> {\n const response = await fetch(`${getOAuthApiUrl()}/oauth2/token`, {\n method: 'POST',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/x-www-form-urlencoded',\n },\n body: new URLSearchParams({\n grant_type: 'authorization_code',\n code: params.code,\n code_verifier: params.codeVerifier,\n redirect_uri: params.redirectUri || 'none',\n }),\n })\n const json = await response.json()\n log(exchangeCodeForToken.name, json)\n return toCamelCase(json) as TTokenResponse\n}\n\nexport async function refreshToken(refreshTokenValue: string): Promise<TTokenResponse> {\n const response = await fetch(`${getOAuthApiUrl()}/oauth2/token`, {\n method: 'POST',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/x-www-form-urlencoded',\n },\n body: new URLSearchParams({\n grant_type: 'refresh_token',\n refresh_token: refreshTokenValue,\n }),\n })\n const json = await response.json()\n log(refreshToken.name, json)\n return toCamelCase(json) as TTokenResponse\n}\n","export * from './api'\nexport * as nfcId from './nfc-id'\nexport * as passportId from './passport-id'\nexport * as promo from './promo'\n","import { getCredentials } from '@/lib/credentials'\nimport { io, Socket } from 'socket.io-client'\n\nexport async function connectToWs(url: string): Promise<Socket> {\n const credentials = getCredentials()\n const socket = io(url, {\n auth: {\n client_id: credentials.clientId,\n client_secret: credentials.clientSecret,\n },\n })\n await new Promise((resolve, reject) => {\n socket.once('connect_error', (err) => reject(err))\n socket.once('connect', () => resolve(socket))\n setTimeout(() => reject(new Error('Cannot connect to websocket server')), 5000)\n })\n return socket\n}\n","import { getSdkEnv, SDK_ENV } from '@/lib/sdk-env'\nimport { Socket } from 'socket.io-client'\nimport { connectToWs } from '@/lib/ws'\n\nlet socket: Socket\n\nexport function getGeneralApiUrl(): string {\n switch (getSdkEnv()) {\n case SDK_ENV.PROD:\n return 'https://api.credenza3.com'\n case SDK_ENV.STAGING:\n return 'https://api.staging.credenza3.com'\n case SDK_ENV.LOCAL:\n return 'http://localhost:8084'\n }\n}\n\nexport function getGeneralWsUrl(): string {\n switch (getSdkEnv()) {\n case SDK_ENV.PROD:\n return 'wss://general-prod-prod.up.railway.app'\n case SDK_ENV.STAGING:\n return 'wss://general-staging-staging.up.railway.app'\n case SDK_ENV.LOCAL:\n return 'ws://localhost:8084'\n }\n}\nexport async function getWsConnection(): Promise<Socket> {\n if (!socket?.connected) {\n socket = await connectToWs(getGeneralWsUrl())\n }\n return socket\n}\n","export * from './nfc-id'\nexport * from './nfc-id.types'\n","import { log } from '@/lib/logging'\nimport { getGeneralApiUrl } from '@/api'\nimport { getBasicToken } from '@/lib/credentials'\nimport { TNfcId, TUpdateNfcId } from './nfc-id.types'\n\nexport async function addNfcId(params: TNfcId): Promise<TNfcId> {\n const response = await fetch(`${getGeneralApiUrl()}/nfc-id`, {\n method: 'POST',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({\n serial_number: params.serialNumber,\n sub: params.sub,\n ...(params.text ? { text: params.text } : {}),\n }),\n })\n const json = await response.json()\n log(addNfcId.name, json)\n return {\n sub: json.sub,\n serialNumber: json.serial_number,\n text: json.text ?? null,\n }\n}\n\nexport async function updateNfcId(serialNumber: string, params: TUpdateNfcId): Promise<boolean> {\n const response = await fetch(`${getGeneralApiUrl()}/nfc-id/${serialNumber}`, {\n method: 'PATCH',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({\n ...(params.text ? { text: params.text } : {}),\n ...(params.sub ? { sub: params.sub } : {}),\n }),\n })\n const json = await response.json()\n log(updateNfcId.name, json)\n return json\n}\n\nexport async function removeNfcId(serialNumber: string): Promise<boolean> {\n const response = await fetch(`${getGeneralApiUrl()}/nfc-id/${serialNumber}`, {\n method: 'DELETE',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(removeNfcId.name, json)\n return json\n}\n\nexport async function getNfcId(serialNumber: string): Promise<Omit<TNfcId, 'serialNumber'>> {\n const response = await fetch(`${getGeneralApiUrl()}/nfc-id/${serialNumber}`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getNfcId.name, json)\n return { sub: json.sub, text: json.text ?? null }\n}\n","export * from './passport-id'\n","import { getWsConnection } from '@/api'\nimport { log } from '@/lib/logging'\n\nexport async function requestPassportIdSignature(sub: string, message: string): Promise<{ signature: string }> {\n if (!sub) throw new Error('\"Sub is required\"')\n if (!message) throw new Error('\"Message is required\"')\n\n const socket = await getWsConnection()\n return new Promise((resolve, reject) => {\n socket.once(`passport_id/signed/${sub}`, (data) => {\n log(requestPassportIdSignature.name, 'Received', data)\n resolve(data.payload)\n })\n socket.emit(\n 'passport_id/request_signature',\n {\n payload: { sub, message },\n },\n (data) => {\n if (!data.payload.ok) {\n reject(new Error('Failed to sign message'))\n }\n if (data.error) {\n reject(new Error(data.error.message))\n }\n log(requestPassportIdSignature.name, 'Requested', data)\n },\n )\n })\n}\n","export * as rules from './rules'\nexport * as offers from './offers'\n","export * from './rules'\n","import { log } from '@/lib/logging'\nimport { getGeneralApiUrl } from '@/api'\nimport { getBasicToken } from '@/lib/credentials'\nimport { TCreateRuleParams, TUpdateRuleParams, TRule } from './rules.types'\nimport { toCamelCase, toSnakeCase } from '@/lib/obj'\n\nexport async function addPromoRule(params: TCreateRuleParams): Promise<TRule> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/rules`, {\n method: 'POST',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(toSnakeCase(params)),\n })\n const json = await response.json()\n log(addPromoRule.name, json)\n return toCamelCase(json) as TRule\n}\n\nexport async function updatePromoRule(id: string, params: TUpdateRuleParams): Promise<TRule> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/rules/${id}`, {\n method: 'PATCH',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(toSnakeCase(params)),\n })\n const json = await response.json()\n log(updatePromoRule.name, json)\n return toCamelCase(json) as TRule\n}\n\nexport async function removePromoRule(id: string): Promise<boolean> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/rules/${id}`, {\n method: 'DELETE',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(removePromoRule.name, json)\n return response.ok\n}\n\nexport async function getPromoRules(): Promise<TRule[]> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/rules`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getPromoRules.name, json)\n return toCamelCase(json) as TRule[]\n}\n","export * from './offers'\n","import { log } from '@/lib/logging'\nimport { getGeneralApiUrl } from '@/api'\nimport { getBasicToken } from '@/lib/credentials'\nimport { TCreateOfferParams, TUpdateOfferParams, TOffer, TOfferRss } from './offers.types'\nimport { toCamelCase, toSnakeCase } from '@/lib/obj'\n\nexport async function addPromoOffer(params: TCreateOfferParams): Promise<TOffer> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/offers`, {\n method: 'POST',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(toSnakeCase(params)),\n })\n const json = await response.json()\n log(addPromoOffer.name, json)\n return toCamelCase(json) as TOffer\n}\n\nexport async function updatePromoOffer(id: string, params: TUpdateOfferParams): Promise<TOffer> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/offers/${id}`, {\n method: 'PATCH',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(toSnakeCase(params)),\n })\n const json = await response.json()\n log(updatePromoOffer.name, json)\n return toCamelCase(json) as TOffer\n}\n\nexport async function removePromoOffer(id: string): Promise<boolean> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/offers/${id}`, {\n method: 'DELETE',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(removePromoOffer.name, json)\n return response.ok\n}\n\nexport async function getPromoOffers(): Promise<TOffer[]> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/offers`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getPromoOffers.name, json)\n return toCamelCase(json) as TOffer[]\n}\n\nexport async function checkPromoOffer(id: string, sub: string): Promise<boolean> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/offers/${id}/check?sub=${sub}`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(checkPromoOffer.name, json)\n return json\n}\n\nexport async function getPromoOfferRss(params: { suiAddress?: string; evmAddress?: string }): Promise<TOfferRss[]> {\n const url = new URL(`${getGeneralApiUrl()}/promo/offers/rss`)\n if (params?.suiAddress) {\n url.searchParams.append('sui_address', params.suiAddress)\n } else if (params?.evmAddress) {\n url.searchParams.append('evm_address', params.evmAddress)\n throw new Error('Currently not supported for EVM') // Remove when implemented\n }\n\n const response = await fetch(url.toString(), {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getPromoOfferRss.name, json)\n return toCamelCase(json) as TOfferRss[]\n}\n","export * from './evm'\nexport * as account from './account'\nexport * as contract from './contract'\n","import { getSdkEnv, SDK_ENV } from '@/lib/sdk-env'\nimport { Socket } from 'socket.io-client'\nimport { connectToWs } from '@/lib/ws'\n\nlet socket: Socket\n\nexport function getEvmApiUrl() {\n switch (getSdkEnv()) {\n case SDK_ENV.PROD:\n return 'https://evm.credenza3.com'\n case SDK_ENV.STAGING:\n return 'https://evm.staging.credenza3.com'\n case SDK_ENV.LOCAL:\n return 'http://localhost:8082'\n }\n}\n\nexport function getEvmWsUrl(): string {\n switch (getSdkEnv()) {\n case SDK_ENV.PROD:\n return 'wss://evm-prod-prod.up.railway.app'\n case SDK_ENV.STAGING:\n return 'wss://evm-staging-staging.up.railway.app'\n case SDK_ENV.LOCAL:\n return 'ws://localhost:8082'\n }\n}\nexport async function getWsConnection(): Promise<Socket> {\n if (!socket?.connected) {\n socket = await connectToWs(getEvmWsUrl())\n }\n return socket\n}\n","export * from './account'\n","import { getBasicToken } from '@/lib/credentials'\nimport { getEvmApiUrl } from '@/evm'\nimport { log } from '@/lib/logging'\n\nexport async function getEvmAddress(sub: string): Promise<{ address: string }> {\n const response = await fetch(`${getEvmApiUrl()}/accounts/${sub}/address`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getEvmAddress.name, json)\n return json\n}\n","export * from './contract'\n","import { getBasicToken } from '@/lib/credentials'\nimport { getEvmApiUrl } from '@/evm'\nimport { log } from '@/lib/logging'\nimport { getWsConnection } from '@/evm'\n\nexport async function getAvailableEvmContracts(): Promise<string[]> {\n const response = await fetch(`${getEvmApiUrl()}/contracts/available`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getAvailableEvmContracts.name, json)\n if (!response.ok) throw new Error(json.message)\n return json\n}\n\nexport async function findEvmContracts(\n params: { name?: string; type?: string; chain_id?: number } = {},\n): Promise<string[]> {\n const url = new URL(`${getEvmApiUrl()}/contracts`)\n for (const [key, val] of Object.entries(params)) {\n url.searchParams.append(key, String(val))\n }\n const response = await fetch(url.toString(), {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(findEvmContracts.name, json)\n if (!response.ok) throw new Error(json.message)\n return json.map((contract) => {\n return {\n id: contract._id,\n type: contract.type,\n name: contract.name,\n chainId: contract.chain_id,\n address: contract.address,\n txHash: contract.tx_hash,\n clientId: contract.client_id,\n }\n })\n}\n\nexport async function deployEvmContract(name: string, chainId: number, ownerAddresses: string[]) {\n if (!name) throw new Error('\"name is required\"')\n if (!chainId) throw new Error('\"chainId\" is required')\n if (!ownerAddresses?.length) throw new Error('\"ownerAddresses\" can not be empty')\n\n const socket = await getWsConnection()\n return new Promise((resolve, reject) => {\n socket.emit(\n 'contracts/deploy',\n {\n payload: { name, chain_id: chainId, owner_addresses: ownerAddresses },\n },\n (data) => {\n if (data.error) {\n return reject(new Error(data.error.message))\n }\n log(deployEvmContract.name, `${name} contract deployed`, data)\n resolve({\n id: data.payload.contract._id,\n type: data.payload.contract.type,\n name: data.payload.contract.name,\n chainId,\n address: data.payload.contract.address,\n tx: {\n deployment: data.payload.tx.deployment,\n trustedForwarder: data.payload.tx.trusted_forwarder,\n addOwner: data.payload.tx.add_owner,\n },\n })\n },\n )\n })\n}\n\nexport async function sendEvmMetaTransaction(unsignedSerializedMetaTx: string) {\n const socket = await getWsConnection()\n return new Promise((resolve, reject) => {\n socket.emit(\n 'contracts/forward_transaction/client',\n {\n payload: {\n unsigned_serialized_meta_tx: unsignedSerializedMetaTx,\n },\n },\n (data) => {\n if (data.error) {\n return reject(new Error(data.error.message))\n }\n log(sendEvmMetaTransaction.name, `meta tx sent`, data)\n resolve(data.payload)\n },\n )\n })\n}\n","export * from './sui'\nexport * as account from './account'\nexport * as zk from './zk'\n","import { getSdkEnv, SDK_ENV } from '@/lib/sdk-env'\n\nexport function getSuiApiUrl() {\n switch (getSdkEnv()) {\n case SDK_ENV.PROD:\n return 'https://sui.credenza3.com'\n case SDK_ENV.STAGING:\n return 'https://sui.staging.credenza3.com'\n case SDK_ENV.LOCAL:\n return 'http://localhost:8083'\n }\n}\n","export * from './account'\n","import { getBasicToken } from '@/lib/credentials'\nimport { getSuiApiUrl } from '@/sui'\nimport { log } from '@/lib/logging'\n\nexport async function getSuiAddress(sub: string): Promise<{ address: string }> {\n const response = await fetch(`${getSuiApiUrl()}/accounts/${sub}/address`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getSuiAddress.name, json)\n return json\n}\n","export * as account from './account'\n","export * from './account'\n","import { getBasicToken } from '@/lib/credentials'\nimport { getSuiApiUrl } from '@/sui'\nimport { log } from '@/lib/logging'\n\nexport async function getSuiZkAddress(sub: string): Promise<{ address: string }> {\n const response = await fetch(`${getSuiApiUrl()}/accounts/zk/${sub}/address`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getSuiZkAddress.name, json)\n return json\n}\n","import { setCredentials, TCredentials } from './lib/credentials'\nimport { setSdkEnv, TSdkEnv } from './lib/sdk-env'\nimport { enableSdkDebug } from './lib/logging'\n\nexport function useAuth(credentials: TCredentials): void {\n setCredentials(credentials)\n}\n\nexport function useEnv(sdkEnv: TSdkEnv): void {\n setSdkEnv(sdkEnv)\n}\n\nexport function useDebug(enableDebug: boolean) {\n enableSdkDebug(enableDebug)\n}\n\nexport * as accounts from './accounts'\nexport * as api from './api'\nexport * as evm from './evm'\nexport * as sui from './sui'\n"],"mappings":"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","names":["Buffer","credentials","socket","socket","getWsConnection","socket","getWsConnection","socket","getWsConnection","account_exports","account_exports","account_exports","account_exports","credentials","sdkEnv"]}
|
|
1
|
+
{"version":3,"sources":["../src/lib/credentials/credentials.ts","../src/lib/sdk-env/sdk-env.constants.ts","../src/lib/sdk-env/sdk-env.ts","../src/lib/logging/logging.ts","../src/accounts/index.ts","../src/accounts/accounts.ts","../src/accounts/user/index.ts","../src/lib/obj/obj.ts","../src/accounts/user/user.ts","../src/accounts/client/index.ts","../src/accounts/client/client.ts","../src/accounts/client/jwt-auth/index.ts","../src/accounts/client/jwt-auth/jwt-auth.ts","../src/accounts/oauth/index.ts","../src/accounts/oauth/oauth.ts","../src/api/index.ts","../src/lib/ws/ws.ts","../src/api/api.ts","../src/api/nfc-id/index.ts","../src/api/nfc-id/nfc-id.ts","../src/api/passport-id/index.ts","../src/api/passport-id/passport-id.ts","../src/api/promo/index.ts","../src/api/promo/rules/index.ts","../src/api/promo/rules/rules.ts","../src/api/promo/offers/index.ts","../src/api/promo/offers/offers.ts","../src/evm/index.ts","../src/evm/evm.ts","../src/evm/account/index.ts","../src/evm/account/account.ts","../src/evm/contract/index.ts","../src/evm/contract/contract.ts","../src/sui/index.ts","../src/sui/sui.ts","../src/sui/account/index.ts","../src/sui/account/account.ts","../src/sui/zk/index.ts","../src/sui/zk/account/index.ts","../src/sui/zk/account/account.ts","../src/credenza-partner-sdk.ts"],"sourcesContent":["import { Buffer } from 'buffer'\n\nimport { TCredentials } from './credentials.types'\n\nlet credentials: TCredentials = null\n\nexport function setCredentials(credentialsInput: TCredentials): void {\n if (!credentialsInput.clientId) throw new Error('\"clientId\" is required')\n if (!credentialsInput.clientSecret) throw new Error('\"clientSecret\" is required')\n credentials = credentialsInput\n}\n\nexport function getCredentials(): TCredentials {\n if (!credentials?.clientId || !credentials?.clientSecret) throw new Error('Credentials are not set')\n return credentials\n}\n\nexport function getBasicToken(): string {\n const { clientId, clientSecret } = getCredentials()\n const basicCredentials = `${clientId}:${clientSecret}`\n return `Basic ${Buffer.from(basicCredentials).toString('base64')}`\n}\n","export const SDK_ENV = {\n PROD: 'prod',\n STAGING: 'staging',\n LOCAL: 'local',\n} as const\n","import { SDK_ENV } from './sdk-env.constants'\nimport { TSdkEnv } from './sdk-env.types'\n\nlet sdkEnv: TSdkEnv = SDK_ENV.PROD\nexport function getSdkEnv(): TSdkEnv {\n return sdkEnv\n}\n\nexport function setSdkEnv(sdkEnvironment: TSdkEnv): void {\n sdkEnv = sdkEnvironment\n}\n","let debugEnabled = false\n\nexport function log(methodName: string, ...args: unknown[]) {\n if (!debugEnabled) return\n console.log(`[CREDENZA_PARTNER_SDK#${methodName}]:`, ...args)\n}\n\nexport function enableSdkDebug(enableDebug: boolean) {\n debugEnabled = enableDebug\n}\n","export * from './accounts'\nexport * as user from './user'\nexport * as client from './client'\nexport * as oauth from './oauth'\n","import { getSdkEnv, SDK_ENV } from '@/lib/sdk-env'\n\nexport function getOAuthApiUrl() {\n switch (getSdkEnv()) {\n case SDK_ENV.PROD:\n return 'https://accounts.credenza3.com'\n case SDK_ENV.STAGING:\n return 'https://accounts.staging.credenza3.com'\n case SDK_ENV.LOCAL:\n return 'http://localhost:8081'\n }\n}\n","export * from './user'\n","export function toCamelCase(obj: unknown): unknown {\n if (Array.isArray(obj)) {\n return obj.map(toCamelCase)\n } else if (obj !== null && typeof obj === 'object') {\n return Object.keys(obj).reduce((acc, key) => {\n const camelKey = key.replace(/^_id$/, 'id').replace(/_([a-z])/g, (_, letter) => letter.toUpperCase())\n acc[camelKey] = toCamelCase(obj[key])\n return acc\n }, {})\n }\n return obj\n}\n\nexport function toSnakeCase(obj: unknown): unknown {\n if (Array.isArray(obj)) {\n return obj.map(toSnakeCase)\n } else if (obj !== null && typeof obj === 'object') {\n return Object.keys(obj).reduce((acc, key) => {\n const snakeKey = key.replace(/([A-Z])/g, (_, letter) => `_${letter.toLowerCase()}`)\n acc[snakeKey] = toSnakeCase(obj[key])\n return acc\n }, {})\n }\n return obj\n}\n","import { getBasicToken } from '@/lib/credentials'\nimport { getOAuthApiUrl } from '@/accounts'\nimport { log } from '@/lib/logging'\nimport { toCamelCase } from '@/lib/obj'\n\nimport type { TOAuthAccountInfo } from './user.types'\n\nexport async function getAccountInfo(sub: string): Promise<TOAuthAccountInfo> {\n const response = await fetch(`${getOAuthApiUrl()}/accounts/${sub}`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getAccountInfo.name, json)\n return toCamelCase(json) as TOAuthAccountInfo\n}\n","export * from './client'\nexport * as jwtAuth from './jwt-auth'\n","import { getBasicToken } from '@/lib/credentials'\nimport { getOAuthApiUrl } from '@/accounts'\nimport { log } from '@/lib/logging'\n\nexport async function getCurrentClientInfo(): Promise<{\n id: string\n name: string\n callbackUris: string[]\n confidential: boolean\n ownerId: string\n accessTokenTTLMinutes: number\n availableLoginTypes: string[]\n admins: string[]\n apiPermissions: string[]\n logoUri?: string\n}> {\n const response = await fetch(`${getOAuthApiUrl()}/clients/current`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getCurrentClientInfo.name, json)\n return {\n id: json._id,\n name: json.name,\n callbackUris: json.callback_uris,\n confidential: json.confidential,\n ownerId: json.owner_id,\n accessTokenTTLMinutes: json.access_token_ttl_minutes,\n availableLoginTypes: json.available_login_types,\n admins: json.admins,\n apiPermissions: json.api_permissions,\n logoUri: json.logo_uri ?? null,\n }\n}\n","export * from './jwt-auth'\n","import { log } from '@/lib/logging'\nimport { getOAuthApiUrl } from '@/accounts'\nimport { getBasicToken } from '@/lib/credentials'\nimport { toCamelCase, toSnakeCase } from '@/lib/obj'\nimport type { TJwtAuthValidator, TJwtAuthValidatorParams, TJwtAuthUpdateValidatorParams } from './jwt-auth.types'\n\nexport async function addJwtValidator(params: TJwtAuthValidatorParams): Promise<TJwtAuthValidator> {\n const response = await fetch(`${getOAuthApiUrl()}/clients/jwt-auth`, {\n method: 'POST',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(toSnakeCase(params)),\n })\n const json = await response.json()\n log(addJwtValidator.name, json)\n return toCamelCase(json) as TJwtAuthValidator\n}\n\nexport async function updateJwtValidator(\n id: string,\n params: TJwtAuthUpdateValidatorParams,\n): Promise<TJwtAuthValidator> {\n const response = await fetch(`${getOAuthApiUrl()}/clients/jwt-auth/${id}`, {\n method: 'PATCH',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(toSnakeCase(params)),\n })\n const json = await response.json()\n log(updateJwtValidator.name, json)\n return toCamelCase(json) as TJwtAuthValidator\n}\n\nexport async function removeJwtValidator(id: string): Promise<boolean> {\n const response = await fetch(`${getOAuthApiUrl()}/clients/jwt-auth/${id}`, {\n method: 'DELETE',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(removeJwtValidator.name, json)\n return json\n}\n\nexport async function getJwtValidators(): Promise<TJwtAuthValidator[]> {\n const response = await fetch(`${getOAuthApiUrl()}/clients/jwt-auth`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getJwtValidators.name, json)\n return toCamelCase(json) as TJwtAuthValidator[]\n}\n","export * from './oauth'\n","import { getBasicToken } from '@/lib/credentials'\nimport { getOAuthApiUrl } from '@/accounts'\nimport { log } from '@/lib/logging'\nimport { toCamelCase } from '@/lib/obj'\n\nimport type { TTokenResponse, TExchangeTokenParams } from './oauth.types'\n\nexport async function exchangeCodeForToken(params: TExchangeTokenParams): Promise<TTokenResponse> {\n const response = await fetch(`${getOAuthApiUrl()}/oauth2/token`, {\n method: 'POST',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/x-www-form-urlencoded',\n },\n body: new URLSearchParams({\n grant_type: 'authorization_code',\n code: params.code,\n code_verifier: params.codeVerifier,\n redirect_uri: params.redirectUri || 'none',\n }),\n })\n const json = await response.json()\n log(exchangeCodeForToken.name, json)\n return toCamelCase(json) as TTokenResponse\n}\n\nexport async function refreshToken(refreshTokenValue: string): Promise<TTokenResponse> {\n const response = await fetch(`${getOAuthApiUrl()}/oauth2/token`, {\n method: 'POST',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/x-www-form-urlencoded',\n },\n body: new URLSearchParams({\n grant_type: 'refresh_token',\n refresh_token: refreshTokenValue,\n }),\n })\n const json = await response.json()\n log(refreshToken.name, json)\n return toCamelCase(json) as TTokenResponse\n}\n","export * from './api'\nexport * as nfcId from './nfc-id'\nexport * as passportId from './passport-id'\nexport * as promo from './promo'\n","import { getCredentials } from '@/lib/credentials'\nimport { io, Socket } from 'socket.io-client'\n\nexport async function connectToWs(url: string): Promise<Socket> {\n const credentials = getCredentials()\n const socket = io(url, {\n auth: {\n client_id: credentials.clientId,\n client_secret: credentials.clientSecret,\n },\n })\n await new Promise((resolve, reject) => {\n socket.once('connect_error', (err) => reject(err))\n socket.once('connect', () => resolve(socket))\n setTimeout(() => reject(new Error('Cannot connect to websocket server')), 5000)\n })\n return socket\n}\n","import { getSdkEnv, SDK_ENV } from '@/lib/sdk-env'\nimport { Socket } from 'socket.io-client'\nimport { connectToWs } from '@/lib/ws'\n\nlet socket: Socket\n\nexport function getGeneralApiUrl(): string {\n switch (getSdkEnv()) {\n case SDK_ENV.PROD:\n return 'https://api.credenza3.com'\n case SDK_ENV.STAGING:\n return 'https://api.staging.credenza3.com'\n case SDK_ENV.LOCAL:\n return 'http://localhost:8084'\n }\n}\n\nexport function getGeneralWsUrl(): string {\n switch (getSdkEnv()) {\n case SDK_ENV.PROD:\n return 'wss://general-prod-prod.up.railway.app'\n case SDK_ENV.STAGING:\n return 'wss://general-staging-staging.up.railway.app'\n case SDK_ENV.LOCAL:\n return 'ws://localhost:8084'\n }\n}\nexport async function getWsConnection(): Promise<Socket> {\n if (!socket?.connected) {\n socket = await connectToWs(getGeneralWsUrl())\n }\n return socket\n}\n","export * from './nfc-id'\nexport * from './nfc-id.types'\n","import { log } from '@/lib/logging'\nimport { getGeneralApiUrl } from '@/api'\nimport { getBasicToken } from '@/lib/credentials'\nimport { TNfcId, TUpdateNfcId } from './nfc-id.types'\n\nexport async function addNfcId(params: TNfcId): Promise<TNfcId> {\n const response = await fetch(`${getGeneralApiUrl()}/nfc-id`, {\n method: 'POST',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({\n serial_number: params.serialNumber,\n sub: params.sub,\n ...(params.text ? { text: params.text } : {}),\n }),\n })\n const json = await response.json()\n log(addNfcId.name, json)\n return {\n sub: json.sub,\n serialNumber: json.serial_number,\n text: json.text ?? null,\n }\n}\n\nexport async function updateNfcId(serialNumber: string, params: TUpdateNfcId): Promise<boolean> {\n const response = await fetch(`${getGeneralApiUrl()}/nfc-id/${serialNumber}`, {\n method: 'PATCH',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({\n ...(params.text ? { text: params.text } : {}),\n ...(params.sub ? { sub: params.sub } : {}),\n }),\n })\n const json = await response.json()\n log(updateNfcId.name, json)\n return json\n}\n\nexport async function removeNfcId(serialNumber: string): Promise<boolean> {\n const response = await fetch(`${getGeneralApiUrl()}/nfc-id/${serialNumber}`, {\n method: 'DELETE',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(removeNfcId.name, json)\n return json\n}\n\nexport async function getNfcId(serialNumber: string): Promise<Omit<TNfcId, 'serialNumber'>> {\n const response = await fetch(`${getGeneralApiUrl()}/nfc-id/${serialNumber}`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getNfcId.name, json)\n return { sub: json.sub, text: json.text ?? null }\n}\n","export * from './passport-id'\n","import { getWsConnection } from '@/api'\nimport { log } from '@/lib/logging'\n\nexport async function requestPassportIdSignature(sub: string, message: string): Promise<{ signature: string }> {\n if (!sub) throw new Error('\"Sub is required\"')\n if (!message) throw new Error('\"Message is required\"')\n\n const socket = await getWsConnection()\n return new Promise((resolve, reject) => {\n socket.once(`passport_id/signed/${sub}`, (data) => {\n log(requestPassportIdSignature.name, 'Received', data)\n resolve(data.payload)\n })\n socket.emit(\n 'passport_id/request_signature',\n {\n payload: { sub, message },\n },\n (data) => {\n if (!data.payload.ok) {\n reject(new Error('Failed to sign message'))\n }\n if (data.error) {\n reject(new Error(data.error.message))\n }\n log(requestPassportIdSignature.name, 'Requested', data)\n },\n )\n })\n}\n","export * as rules from './rules'\nexport * as offers from './offers'\n","export * from './rules'\n","import { log } from '@/lib/logging'\nimport { getGeneralApiUrl } from '@/api'\nimport { getBasicToken } from '@/lib/credentials'\nimport { TCreateRuleParams, TUpdateRuleParams, TRule } from './rules.types'\nimport { toCamelCase, toSnakeCase } from '@/lib/obj'\n\nexport async function addPromoRule(params: TCreateRuleParams): Promise<TRule> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/rules`, {\n method: 'POST',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(toSnakeCase(params)),\n })\n const json = await response.json()\n log(addPromoRule.name, json)\n return toCamelCase(json) as TRule\n}\n\nexport async function updatePromoRule(id: string, params: TUpdateRuleParams): Promise<TRule> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/rules/${id}`, {\n method: 'PATCH',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(toSnakeCase(params)),\n })\n const json = await response.json()\n log(updatePromoRule.name, json)\n return toCamelCase(json) as TRule\n}\n\nexport async function removePromoRule(id: string): Promise<boolean> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/rules/${id}`, {\n method: 'DELETE',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(removePromoRule.name, json)\n return response.ok\n}\n\nexport async function getPromoRules(): Promise<TRule[]> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/rules`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getPromoRules.name, json)\n return toCamelCase(json) as TRule[]\n}\n","export * from './offers'\n","import { log } from '@/lib/logging'\nimport { getGeneralApiUrl } from '@/api'\nimport { getBasicToken } from '@/lib/credentials'\nimport { TCreateOfferParams, TUpdateOfferParams, TOffer, TOfferRss } from './offers.types'\nimport { toCamelCase, toSnakeCase } from '@/lib/obj'\n\nexport async function addPromoOffer(params: TCreateOfferParams): Promise<TOffer> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/offers`, {\n method: 'POST',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(toSnakeCase(params)),\n })\n const json = await response.json()\n log(addPromoOffer.name, json)\n return toCamelCase(json) as TOffer\n}\n\nexport async function updatePromoOffer(id: string, params: TUpdateOfferParams): Promise<TOffer> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/offers/${id}`, {\n method: 'PATCH',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(toSnakeCase(params)),\n })\n const json = await response.json()\n log(updatePromoOffer.name, json)\n return toCamelCase(json) as TOffer\n}\n\nexport async function removePromoOffer(id: string): Promise<boolean> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/offers/${id}`, {\n method: 'DELETE',\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(removePromoOffer.name, json)\n return response.ok\n}\n\nexport async function getPromoOffers(): Promise<TOffer[]> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/offers`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getPromoOffers.name, json)\n return toCamelCase(json) as TOffer[]\n}\n\nexport async function checkPromoOffer(id: string, sub: string): Promise<boolean> {\n const response = await fetch(`${getGeneralApiUrl()}/promo/offers/${id}/check?sub=${sub}`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(checkPromoOffer.name, json)\n return json\n}\n\nexport async function getPromoOfferRss(params: { suiAddress?: string; evmAddress?: string }): Promise<TOfferRss[]> {\n const url = new URL(`${getGeneralApiUrl()}/promo/offers/rss`)\n if (params?.suiAddress) {\n url.searchParams.append('sui_address', params.suiAddress)\n } else if (params?.evmAddress) {\n url.searchParams.append('evm_address', params.evmAddress)\n throw new Error('Currently not supported for EVM') // Remove when implemented\n }\n\n const response = await fetch(url.toString(), {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getPromoOfferRss.name, json)\n return toCamelCase(json) as TOfferRss[]\n}\n","export * from './evm'\nexport * as account from './account'\nexport * as contract from './contract'\n","import { getSdkEnv, SDK_ENV } from '@/lib/sdk-env'\nimport { Socket } from 'socket.io-client'\nimport { connectToWs } from '@/lib/ws'\n\nlet socket: Socket\n\nexport function getEvmApiUrl() {\n switch (getSdkEnv()) {\n case SDK_ENV.PROD:\n return 'https://evm.credenza3.com'\n case SDK_ENV.STAGING:\n return 'https://evm.staging.credenza3.com'\n case SDK_ENV.LOCAL:\n return 'http://localhost:8082'\n }\n}\n\nexport function getEvmWsUrl(): string {\n switch (getSdkEnv()) {\n case SDK_ENV.PROD:\n return 'wss://evm-prod-prod.up.railway.app'\n case SDK_ENV.STAGING:\n return 'wss://evm-staging-staging.up.railway.app'\n case SDK_ENV.LOCAL:\n return 'ws://localhost:8082'\n }\n}\nexport async function getWsConnection(): Promise<Socket> {\n if (!socket?.connected) {\n socket = await connectToWs(getEvmWsUrl())\n }\n return socket\n}\n","export * from './account'\n","import { getBasicToken } from '@/lib/credentials'\nimport { getEvmApiUrl } from '@/evm'\nimport { log } from '@/lib/logging'\n\nexport async function getEvmAddress(sub: string): Promise<{ address: string }> {\n const response = await fetch(`${getEvmApiUrl()}/accounts/${sub}/address`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getEvmAddress.name, json)\n return json\n}\n","export * from './contract'\n","import { getBasicToken } from '@/lib/credentials'\nimport { getEvmApiUrl } from '@/evm'\nimport { log } from '@/lib/logging'\nimport { getWsConnection } from '@/evm'\n\nexport async function getAvailableEvmContracts(): Promise<string[]> {\n const response = await fetch(`${getEvmApiUrl()}/contracts/available`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getAvailableEvmContracts.name, json)\n if (!response.ok) throw new Error(json.message)\n return json\n}\n\nexport async function findEvmContracts(\n params: { name?: string; type?: string; chain_id?: number } = {},\n): Promise<string[]> {\n const url = new URL(`${getEvmApiUrl()}/contracts`)\n for (const [key, val] of Object.entries(params)) {\n url.searchParams.append(key, String(val))\n }\n const response = await fetch(url.toString(), {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(findEvmContracts.name, json)\n if (!response.ok) throw new Error(json.message)\n return json.map((contract) => {\n return {\n id: contract._id,\n type: contract.type,\n name: contract.name,\n chainId: contract.chain_id,\n address: contract.address,\n txHash: contract.tx_hash,\n clientId: contract.client_id,\n }\n })\n}\n\nexport async function deployEvmContract(name: string, chainId: number, ownerAddresses: string[]) {\n if (!name) throw new Error('\"name is required\"')\n if (!chainId) throw new Error('\"chainId\" is required')\n if (ownerAddresses?.length === 0) throw new Error('\"ownerAddresses\" can not be empty')\n\n const socket = await getWsConnection()\n return new Promise((resolve, reject) => {\n socket.emit(\n 'contracts/deploy',\n {\n payload: { name, chain_id: chainId, owner_addresses: ownerAddresses },\n },\n (data) => {\n if (data.error) {\n return reject(new Error(data.error.message))\n }\n log(deployEvmContract.name, `${name} contract deployed`, data)\n resolve({\n id: data.payload.contract._id,\n type: data.payload.contract.type,\n name: data.payload.contract.name,\n chainId,\n address: data.payload.contract.address,\n tx: {\n deployment: data.payload.tx.deployment,\n trustedForwarder: data.payload.tx.trusted_forwarder,\n addOwner: data.payload.tx.add_owner,\n },\n })\n },\n )\n })\n}\n\nexport async function sendEvmMetaTransaction(unsignedSerializedMetaTx: string, accountAddress: string) {\n const socket = await getWsConnection()\n return new Promise((resolve, reject) => {\n socket.emit(\n 'contracts/forward_transaction/client',\n {\n payload: {\n account_address: accountAddress,\n unsigned_serialized_meta_tx: unsignedSerializedMetaTx,\n },\n },\n (data) => {\n if (data.error) {\n return reject(new Error(data.error.message))\n }\n log(sendEvmMetaTransaction.name, `meta tx sent`, data)\n resolve(data.payload)\n },\n )\n })\n}\n","export * from './sui'\nexport * as account from './account'\nexport * as zk from './zk'\n","import { getSdkEnv, SDK_ENV } from '@/lib/sdk-env'\n\nexport function getSuiApiUrl() {\n switch (getSdkEnv()) {\n case SDK_ENV.PROD:\n return 'https://sui.credenza3.com'\n case SDK_ENV.STAGING:\n return 'https://sui.staging.credenza3.com'\n case SDK_ENV.LOCAL:\n return 'http://localhost:8083'\n }\n}\n","export * from './account'\n","import { getBasicToken } from '@/lib/credentials'\nimport { getSuiApiUrl } from '@/sui'\nimport { log } from '@/lib/logging'\n\nexport async function getSuiAddress(sub: string): Promise<{ address: string }> {\n const response = await fetch(`${getSuiApiUrl()}/accounts/${sub}/address`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getSuiAddress.name, json)\n return json\n}\n","export * as account from './account'\n","export * from './account'\n","import { getBasicToken } from '@/lib/credentials'\nimport { getSuiApiUrl } from '@/sui'\nimport { log } from '@/lib/logging'\n\nexport async function getSuiZkAddress(sub: string): Promise<{ address: string }> {\n const response = await fetch(`${getSuiApiUrl()}/accounts/zk/${sub}/address`, {\n headers: {\n Authorization: getBasicToken(),\n 'Content-Type': 'application/json',\n },\n })\n const json = await response.json()\n log(getSuiZkAddress.name, json)\n return json\n}\n","import { setCredentials, TCredentials } from './lib/credentials'\nimport { setSdkEnv, TSdkEnv } from './lib/sdk-env'\nimport { enableSdkDebug } from './lib/logging'\n\nexport function useAuth(credentials: TCredentials): void {\n setCredentials(credentials)\n}\n\nexport function useEnv(sdkEnv: TSdkEnv): void {\n setSdkEnv(sdkEnv)\n}\n\nexport function useDebug(enableDebug: boolean) {\n enableSdkDebug(enableDebug)\n}\n\nexport * as accounts from './accounts'\nexport * as api from './api'\nexport * as evm from './evm'\nexport * as sui from './sui'\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAS,UAAAA,eAAc;AAIvB,IAAI,cAA4B;AAEzB,SAAS,eAAe,kBAAsC;AACnE,MAAI,CAAC,iBAAiB,SAAU,OAAM,IAAI,MAAM,wBAAwB;AACxE,MAAI,CAAC,iBAAiB,aAAc,OAAM,IAAI,MAAM,4BAA4B;AAChF,gBAAc;AAChB;AAEO,SAAS,iBAA+B;AAC7C,MAAI,EAAC,2CAAa,aAAY,EAAC,2CAAa,cAAc,OAAM,IAAI,MAAM,yBAAyB;AACnG,SAAO;AACT;AAEO,SAAS,gBAAwB;AACtC,QAAM,EAAE,UAAU,aAAa,IAAI,eAAe;AAClD,QAAM,mBAAmB,GAAG,QAAQ,IAAI,YAAY;AACpD,SAAO,SAASA,QAAO,KAAK,gBAAgB,EAAE,SAAS,QAAQ,CAAC;AAClE;;;ACrBO,IAAM,UAAU;AAAA,EACrB,MAAM;AAAA,EACN,SAAS;AAAA,EACT,OAAO;AACT;;;ACDA,IAAI,SAAkB,QAAQ;AACvB,SAAS,YAAqB;AACnC,SAAO;AACT;AAEO,SAAS,UAAU,gBAA+B;AACvD,WAAS;AACX;;;ACVA,IAAI,eAAe;AAEZ,SAAS,IAAI,eAAuB,MAAiB;AAC1D,MAAI,CAAC,aAAc;AACnB,UAAQ,IAAI,yBAAyB,UAAU,MAAM,GAAG,IAAI;AAC9D;AAEO,SAAS,eAAe,aAAsB;AACnD,iBAAe;AACjB;;;ACTA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACEO,SAAS,iBAAiB;AAC/B,UAAQ,UAAU,GAAG;AAAA,IACnB,KAAK,QAAQ;AACX,aAAO;AAAA,IACT,KAAK,QAAQ;AACX,aAAO;AAAA,IACT,KAAK,QAAQ;AACX,aAAO;AAAA,EACX;AACF;;;ACXA;AAAA;AAAA;AAAA;;;ACAO,SAAS,YAAY,KAAuB;AACjD,MAAI,MAAM,QAAQ,GAAG,GAAG;AACtB,WAAO,IAAI,IAAI,WAAW;AAAA,EAC5B,WAAW,QAAQ,QAAQ,OAAO,QAAQ,UAAU;AAClD,WAAO,OAAO,KAAK,GAAG,EAAE,OAAO,CAAC,KAAK,QAAQ;AAC3C,YAAM,WAAW,IAAI,QAAQ,SAAS,IAAI,EAAE,QAAQ,aAAa,CAAC,GAAG,WAAW,OAAO,YAAY,CAAC;AACpG,UAAI,QAAQ,IAAI,YAAY,IAAI,GAAG,CAAC;AACpC,aAAO;AAAA,IACT,GAAG,CAAC,CAAC;AAAA,EACP;AACA,SAAO;AACT;AAEO,SAAS,YAAY,KAAuB;AACjD,MAAI,MAAM,QAAQ,GAAG,GAAG;AACtB,WAAO,IAAI,IAAI,WAAW;AAAA,EAC5B,WAAW,QAAQ,QAAQ,OAAO,QAAQ,UAAU;AAClD,WAAO,OAAO,KAAK,GAAG,EAAE,OAAO,CAAC,KAAK,QAAQ;AAC3C,YAAM,WAAW,IAAI,QAAQ,YAAY,CAAC,GAAG,WAAW,IAAI,OAAO,YAAY,CAAC,EAAE;AAClF,UAAI,QAAQ,IAAI,YAAY,IAAI,GAAG,CAAC;AACpC,aAAO;AAAA,IACT,GAAG,CAAC,CAAC;AAAA,EACP;AACA,SAAO;AACT;;;ACjBA,SAAsB,eAAe,KAAyC;AAAA;AAC5E,UAAM,WAAW,MAAM,MAAM,GAAG,eAAe,CAAC,aAAa,GAAG,IAAI;AAAA,MAClE,SAAS;AAAA,QACP,eAAe,cAAc;AAAA,QAC7B,gBAAgB;AAAA,MAClB;AAAA,IACF,CAAC;AACD,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAI,eAAe,MAAM,IAAI;AAC7B,WAAO,YAAY,IAAI;AAAA,EACzB;AAAA;;;ACjBA;AAAA;AAAA;AAAA;AAAA;;;ACIA,SAAsB,uBAWnB;AAAA;AAfH;AAgBE,UAAM,WAAW,MAAM,MAAM,GAAG,eAAe,CAAC,oBAAoB;AAAA,MAClE,SAAS;AAAA,QACP,eAAe,cAAc;AAAA,QAC7B,gBAAgB;AAAA,MAClB;AAAA,IACF,CAAC;AACD,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAI,qBAAqB,MAAM,IAAI;AACnC,WAAO;AAAA,MACL,IAAI,KAAK;AAAA,MACT,MAAM,KAAK;AAAA,MACX,cAAc,KAAK;AAAA,MACnB,cAAc,KAAK;AAAA,MACnB,SAAS,KAAK;AAAA,MACd,uBAAuB,KAAK;AAAA,MAC5B,qBAAqB,KAAK;AAAA,MAC1B,QAAQ,KAAK;AAAA,MACb,gBAAgB,KAAK;AAAA,MACrB,UAAS,UAAK,aAAL,YAAiB;AAAA,IAC5B;AAAA,EACF;AAAA;;;ACpCA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACMA,SAAsB,gBAAgB,QAA6D;AAAA;AACjG,UAAM,WAAW,MAAM,MAAM,GAAG,eAAe,CAAC,qBAAqB;AAAA,MACnE,QAAQ;AAAA,MACR,SAAS;AAAA,QACP,eAAe,cAAc;AAAA,QAC7B,gBAAgB;AAAA,MAClB;AAAA,MACA,MAAM,KAAK,UAAU,YAAY,MAAM,CAAC;AAAA,IAC1C,CAAC;AACD,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAI,gBAAgB,MAAM,IAAI;AAC9B,WAAO,YAAY,IAAI;AAAA,EACzB;AAAA;AAEA,SAAsB,mBACpB,IACA,QAC4B;AAAA;AAC5B,UAAM,WAAW,MAAM,MAAM,GAAG,eAAe,CAAC,qBAAqB,EAAE,IAAI;AAAA,MACzE,QAAQ;AAAA,MACR,SAAS;AAAA,QACP,eAAe,cAAc;AAAA,QAC7B,gBAAgB;AAAA,MAClB;AAAA,MACA,MAAM,KAAK,UAAU,YAAY,MAAM,CAAC;AAAA,IAC1C,CAAC;AACD,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAI,mBAAmB,MAAM,IAAI;AACjC,WAAO,YAAY,IAAI;AAAA,EACzB;AAAA;AAEA,SAAsB,mBAAmB,IAA8B;AAAA;AACrE,UAAM,WAAW,MAAM,MAAM,GAAG,eAAe,CAAC,qBAAqB,EAAE,IAAI;AAAA,MACzE,QAAQ;AAAA,MACR,SAAS;AAAA,QACP,eAAe,cAAc;AAAA,QAC7B,gBAAgB;AAAA,MAClB;AAAA,IACF,CAAC;AACD,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAI,mBAAmB,MAAM,IAAI;AACjC,WAAO;AAAA,EACT;AAAA;AAEA,SAAsB,mBAAiD;AAAA;AACrE,UAAM,WAAW,MAAM,MAAM,GAAG,eAAe,CAAC,qBAAqB;AAAA,MACnE,SAAS;AAAA,QACP,eAAe,cAAc;AAAA,QAC7B,gBAAgB;AAAA,MAClB;AAAA,IACF,CAAC;AACD,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAI,iBAAiB,MAAM,IAAI;AAC/B,WAAO,YAAY,IAAI;AAAA,EACzB;AAAA;;;AC5DA;AAAA;AAAA;AAAA;AAAA;;;ACOA,SAAsB,qBAAqB,QAAuD;AAAA;AAChG,UAAM,WAAW,MAAM,MAAM,GAAG,eAAe,CAAC,iBAAiB;AAAA,MAC/D,QAAQ;AAAA,MACR,SAAS;AAAA,QACP,eAAe,cAAc;AAAA,QAC7B,gBAAgB;AAAA,MAClB;AAAA,MACA,MAAM,IAAI,gBAAgB;AAAA,QACxB,YAAY;AAAA,QACZ,MAAM,OAAO;AAAA,QACb,eAAe,OAAO;AAAA,QACtB,cAAc,OAAO,eAAe;AAAA,MACtC,CAAC;AAAA,IACH,CAAC;AACD,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAI,qBAAqB,MAAM,IAAI;AACnC,WAAO,YAAY,IAAI;AAAA,EACzB;AAAA;AAEA,SAAsB,aAAa,mBAAoD;AAAA;AACrF,UAAM,WAAW,MAAM,MAAM,GAAG,eAAe,CAAC,iBAAiB;AAAA,MAC/D,QAAQ;AAAA,MACR,SAAS;AAAA,QACP,eAAe,cAAc;AAAA,QAC7B,gBAAgB;AAAA,MAClB;AAAA,MACA,MAAM,IAAI,gBAAgB;AAAA,QACxB,YAAY;AAAA,QACZ,eAAe;AAAA,MACjB,CAAC;AAAA,IACH,CAAC;AACD,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAI,aAAa,MAAM,IAAI;AAC3B,WAAO,YAAY,IAAI;AAAA,EACzB;AAAA;;;ACzCA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACCA,SAAS,UAAkB;AAE3B,SAAsB,YAAY,KAA8B;AAAA;AAC9D,UAAMC,eAAc,eAAe;AACnC,UAAMC,UAAS,GAAG,KAAK;AAAA,MACrB,MAAM;AAAA,QACJ,WAAWD,aAAY;AAAA,QACvB,eAAeA,aAAY;AAAA,MAC7B;AAAA,IACF,CAAC;AACD,UAAM,IAAI,QAAQ,CAAC,SAAS,WAAW;AACrC,MAAAC,QAAO,KAAK,iBAAiB,CAAC,QAAQ,OAAO,GAAG,CAAC;AACjD,MAAAA,QAAO,KAAK,WAAW,MAAM,QAAQA,OAAM,CAAC;AAC5C,iBAAW,MAAM,OAAO,IAAI,MAAM,oCAAoC,CAAC,GAAG,GAAI;AAAA,IAChF,CAAC;AACD,WAAOA;AAAA,EACT;AAAA;;;ACbA,IAAI;AAEG,SAAS,mBAA2B;AACzC,UAAQ,UAAU,GAAG;AAAA,IACnB,KAAK,QAAQ;AACX,aAAO;AAAA,IACT,KAAK,QAAQ;AACX,aAAO;AAAA,IACT,KAAK,QAAQ;AACX,aAAO;AAAA,EACX;AACF;AAEO,SAAS,kBAA0B;AACxC,UAAQ,UAAU,GAAG;AAAA,IACnB,KAAK,QAAQ;AACX,aAAO;AAAA,IACT,KAAK,QAAQ;AACX,aAAO;AAAA,IACT,KAAK,QAAQ;AACX,aAAO;AAAA,EACX;AACF;AACA,SAAsB,kBAAmC;AAAA;AACvD,QAAI,EAAC,iCAAQ,YAAW;AACtB,eAAS,MAAM,YAAY,gBAAgB,CAAC;AAAA,IAC9C;AACA,WAAO;AAAA,EACT;AAAA;;;AChCA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACKA,SAAsB,SAAS,QAAiC;AAAA;AALhE;AAME,UAAM,WAAW,MAAM,MAAM,GAAG,iBAAiB,CAAC,WAAW;AAAA,MAC3D,QAAQ;AAAA,MACR,SAAS;AAAA,QACP,eAAe,cAAc;AAAA,QAC7B,gBAAgB;AAAA,MAClB;AAAA,MACA,MAAM,KAAK,UAAU;AAAA,QACnB,eAAe,OAAO;AAAA,QACtB,KAAK,OAAO;AAAA,SACR,OAAO,OAAO,EAAE,MAAM,OAAO,KAAK,IAAI,CAAC,EAC5C;AAAA,IACH,CAAC;AACD,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAI,SAAS,MAAM,IAAI;AACvB,WAAO;AAAA,MACL,KAAK,KAAK;AAAA,MACV,cAAc,KAAK;AAAA,MACnB,OAAM,UAAK,SAAL,YAAa;AAAA,IACrB;AAAA,EACF;AAAA;AAEA,SAAsB,YAAY,cAAsB,QAAwC;AAAA;AAC9F,UAAM,WAAW,MAAM,MAAM,GAAG,iBAAiB,CAAC,WAAW,YAAY,IAAI;AAAA,MAC3E,QAAQ;AAAA,MACR,SAAS;AAAA,QACP,eAAe,cAAc;AAAA,QAC7B,gBAAgB;AAAA,MAClB;AAAA,MACA,MAAM,KAAK,UAAU,kCACf,OAAO,OAAO,EAAE,MAAM,OAAO,KAAK,IAAI,CAAC,IACvC,OAAO,MAAM,EAAE,KAAK,OAAO,IAAI,IAAI,CAAC,EACzC;AAAA,IACH,CAAC;AACD,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAI,YAAY,MAAM,IAAI;AAC1B,WAAO;AAAA,EACT;AAAA;AAEA,SAAsB,YAAY,cAAwC;AAAA;AACxE,UAAM,WAAW,MAAM,MAAM,GAAG,iBAAiB,CAAC,WAAW,YAAY,IAAI;AAAA,MAC3E,QAAQ;AAAA,MACR,SAAS;AAAA,QACP,eAAe,cAAc;AAAA,QAC7B,gBAAgB;AAAA,MAClB;AAAA,IACF,CAAC;AACD,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAI,YAAY,MAAM,IAAI;AAC1B,WAAO;AAAA,EACT;AAAA;AAEA,SAAsB,SAAS,cAA6D;AAAA;AAzD5F;AA0DE,UAAM,WAAW,MAAM,MAAM,GAAG,iBAAiB,CAAC,WAAW,YAAY,IAAI;AAAA,MAC3E,SAAS;AAAA,QACP,eAAe,cAAc;AAAA,QAC7B,gBAAgB;AAAA,MAClB;AAAA,IACF,CAAC;AACD,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAI,SAAS,MAAM,IAAI;AACvB,WAAO,EAAE,KAAK,KAAK,KAAK,OAAM,UAAK,SAAL,YAAa,KAAK;AAAA,EAClD;AAAA;;;ACnEA;AAAA;AAAA;AAAA;;;ACGA,SAAsB,2BAA2B,KAAa,SAAiD;AAAA;AAC7G,QAAI,CAAC,IAAK,OAAM,IAAI,MAAM,mBAAmB;AAC7C,QAAI,CAAC,QAAS,OAAM,IAAI,MAAM,uBAAuB;AAErD,UAAMC,UAAS,MAAM,gBAAgB;AACrC,WAAO,IAAI,QAAQ,CAAC,SAAS,WAAW;AACtC,MAAAA,QAAO,KAAK,sBAAsB,GAAG,IAAI,CAAC,SAAS;AACjD,YAAI,2BAA2B,MAAM,YAAY,IAAI;AACrD,gBAAQ,KAAK,OAAO;AAAA,MACtB,CAAC;AACD,MAAAA,QAAO;AAAA,QACL;AAAA,QACA;AAAA,UACE,SAAS,EAAE,KAAK,QAAQ;AAAA,QAC1B;AAAA,QACA,CAAC,SAAS;AACR,cAAI,CAAC,KAAK,QAAQ,IAAI;AACpB,mBAAO,IAAI,MAAM,wBAAwB,CAAC;AAAA,UAC5C;AACA,cAAI,KAAK,OAAO;AACd,mBAAO,IAAI,MAAM,KAAK,MAAM,OAAO,CAAC;AAAA,UACtC;AACA,cAAI,2BAA2B,MAAM,aAAa,IAAI;AAAA,QACxD;AAAA,MACF;AAAA,IACF,CAAC;AAAA,EACH;AAAA;;;AC7BA;AAAA;AAAA;AAAA;AAAA;;;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACMA,SAAsB,aAAa,QAA2C;AAAA;AAC5E,UAAM,WAAW,MAAM,MAAM,GAAG,iBAAiB,CAAC,gBAAgB;AAAA,MAChE,QAAQ;AAAA,MACR,SAAS;AAAA,QACP,eAAe,cAAc;AAAA,QAC7B,gBAAgB;AAAA,MAClB;AAAA,MACA,MAAM,KAAK,UAAU,YAAY,MAAM,CAAC;AAAA,IAC1C,CAAC;AACD,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAI,aAAa,MAAM,IAAI;AAC3B,WAAO,YAAY,IAAI;AAAA,EACzB;AAAA;AAEA,SAAsB,gBAAgB,IAAY,QAA2C;AAAA;AAC3F,UAAM,WAAW,MAAM,MAAM,GAAG,iBAAiB,CAAC,gBAAgB,EAAE,IAAI;AAAA,MACtE,QAAQ;AAAA,MACR,SAAS;AAAA,QACP,eAAe,cAAc;AAAA,QAC7B,gBAAgB;AAAA,MAClB;AAAA,MACA,MAAM,KAAK,UAAU,YAAY,MAAM,CAAC;AAAA,IAC1C,CAAC;AACD,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAI,gBAAgB,MAAM,IAAI;AAC9B,WAAO,YAAY,IAAI;AAAA,EACzB;AAAA;AAEA,SAAsB,gBAAgB,IAA8B;AAAA;AAClE,UAAM,WAAW,MAAM,MAAM,GAAG,iBAAiB,CAAC,gBAAgB,EAAE,IAAI;AAAA,MACtE,QAAQ;AAAA,MACR,SAAS;AAAA,QACP,eAAe,cAAc;AAAA,QAC7B,gBAAgB;AAAA,MAClB;AAAA,IACF,CAAC;AACD,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAI,gBAAgB,MAAM,IAAI;AAC9B,WAAO,SAAS;AAAA,EAClB;AAAA;AAEA,SAAsB,gBAAkC;AAAA;AACtD,UAAM,WAAW,MAAM,MAAM,GAAG,iBAAiB,CAAC,gBAAgB;AAAA,MAChE,SAAS;AAAA,QACP,eAAe,cAAc;AAAA,QAC7B,gBAAgB;AAAA,MAClB;AAAA,IACF,CAAC;AACD,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAI,cAAc,MAAM,IAAI;AAC5B,WAAO,YAAY,IAAI;AAAA,EACzB;AAAA;;;ACzDA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACMA,SAAsB,cAAc,QAA6C;AAAA;AAC/E,UAAM,WAAW,MAAM,MAAM,GAAG,iBAAiB,CAAC,iBAAiB;AAAA,MACjE,QAAQ;AAAA,MACR,SAAS;AAAA,QACP,eAAe,cAAc;AAAA,QAC7B,gBAAgB;AAAA,MAClB;AAAA,MACA,MAAM,KAAK,UAAU,YAAY,MAAM,CAAC;AAAA,IAC1C,CAAC;AACD,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAI,cAAc,MAAM,IAAI;AAC5B,WAAO,YAAY,IAAI;AAAA,EACzB;AAAA;AAEA,SAAsB,iBAAiB,IAAY,QAA6C;AAAA;AAC9F,UAAM,WAAW,MAAM,MAAM,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,IAAI;AAAA,MACvE,QAAQ;AAAA,MACR,SAAS;AAAA,QACP,eAAe,cAAc;AAAA,QAC7B,gBAAgB;AAAA,MAClB;AAAA,MACA,MAAM,KAAK,UAAU,YAAY,MAAM,CAAC;AAAA,IAC1C,CAAC;AACD,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAI,iBAAiB,MAAM,IAAI;AAC/B,WAAO,YAAY,IAAI;AAAA,EACzB;AAAA;AAEA,SAAsB,iBAAiB,IAA8B;AAAA;AACnE,UAAM,WAAW,MAAM,MAAM,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,IAAI;AAAA,MACvE,QAAQ;AAAA,MACR,SAAS;AAAA,QACP,eAAe,cAAc;AAAA,QAC7B,gBAAgB;AAAA,MAClB;AAAA,IACF,CAAC;AACD,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAI,iBAAiB,MAAM,IAAI;AAC/B,WAAO,SAAS;AAAA,EAClB;AAAA;AAEA,SAAsB,iBAAoC;AAAA;AACxD,UAAM,WAAW,MAAM,MAAM,GAAG,iBAAiB,CAAC,iBAAiB;AAAA,MACjE,SAAS;AAAA,QACP,eAAe,cAAc;AAAA,QAC7B,gBAAgB;AAAA,MAClB;AAAA,IACF,CAAC;AACD,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAI,eAAe,MAAM,IAAI;AAC7B,WAAO,YAAY,IAAI;AAAA,EACzB;AAAA;AAEA,SAAsB,gBAAgB,IAAY,KAA+B;AAAA;AAC/E,UAAM,WAAW,MAAM,MAAM,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,cAAc,GAAG,IAAI;AAAA,MACxF,SAAS;AAAA,QACP,eAAe,cAAc;AAAA,QAC7B,gBAAgB;AAAA,MAClB;AAAA,IACF,CAAC;AACD,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAI,gBAAgB,MAAM,IAAI;AAC9B,WAAO;AAAA,EACT;AAAA;AAEA,SAAsB,iBAAiB,QAA4E;AAAA;AACjH,UAAM,MAAM,IAAI,IAAI,GAAG,iBAAiB,CAAC,mBAAmB;AAC5D,QAAI,iCAAQ,YAAY;AACtB,UAAI,aAAa,OAAO,eAAe,OAAO,UAAU;AAAA,IAC1D,WAAW,iCAAQ,YAAY;AAC7B,UAAI,aAAa,OAAO,eAAe,OAAO,UAAU;AACxD,YAAM,IAAI,MAAM,iCAAiC;AAAA,IACnD;AAEA,UAAM,WAAW,MAAM,MAAM,IAAI,SAAS,GAAG;AAAA,MAC3C,SAAS;AAAA,QACP,eAAe,cAAc;AAAA,QAC7B,gBAAgB;AAAA,MAClB;AAAA,IACF,CAAC;AACD,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAI,iBAAiB,MAAM,IAAI;AAC/B,WAAO,YAAY,IAAI;AAAA,EACzB;AAAA;;;ACzFA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,yBAAAC;AAAA;;;ACIA,IAAIC;AAEG,SAAS,eAAe;AAC7B,UAAQ,UAAU,GAAG;AAAA,IACnB,KAAK,QAAQ;AACX,aAAO;AAAA,IACT,KAAK,QAAQ;AACX,aAAO;AAAA,IACT,KAAK,QAAQ;AACX,aAAO;AAAA,EACX;AACF;AAEO,SAAS,cAAsB;AACpC,UAAQ,UAAU,GAAG;AAAA,IACnB,KAAK,QAAQ;AACX,aAAO;AAAA,IACT,KAAK,QAAQ;AACX,aAAO;AAAA,IACT,KAAK,QAAQ;AACX,aAAO;AAAA,EACX;AACF;AACA,SAAsBC,mBAAmC;AAAA;AACvD,QAAI,EAACD,WAAA,gBAAAA,QAAQ,YAAW;AACtB,MAAAA,UAAS,MAAM,YAAY,YAAY,CAAC;AAAA,IAC1C;AACA,WAAOA;AAAA,EACT;AAAA;;;AChCA;AAAA;AAAA;AAAA;;;ACIA,SAAsB,cAAc,KAA2C;AAAA;AAC7E,UAAM,WAAW,MAAM,MAAM,GAAG,aAAa,CAAC,aAAa,GAAG,YAAY;AAAA,MACxE,SAAS;AAAA,QACP,eAAe,cAAc;AAAA,QAC7B,gBAAgB;AAAA,MAClB;AAAA,IACF,CAAC;AACD,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAI,cAAc,MAAM,IAAI;AAC5B,WAAO;AAAA,EACT;AAAA;;;ACdA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACKA,SAAsB,2BAA8C;AAAA;AAClE,UAAM,WAAW,MAAM,MAAM,GAAG,aAAa,CAAC,wBAAwB;AAAA,MACpE,SAAS;AAAA,QACP,eAAe,cAAc;AAAA,QAC7B,gBAAgB;AAAA,MAClB;AAAA,IACF,CAAC;AACD,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAI,yBAAyB,MAAM,IAAI;AACvC,QAAI,CAAC,SAAS,GAAI,OAAM,IAAI,MAAM,KAAK,OAAO;AAC9C,WAAO;AAAA,EACT;AAAA;AAEA,SAAsB,mBAED;AAAA,6CADnB,SAA8D,CAAC,GAC5C;AACnB,UAAM,MAAM,IAAI,IAAI,GAAG,aAAa,CAAC,YAAY;AACjD,eAAW,CAAC,KAAK,GAAG,KAAK,OAAO,QAAQ,MAAM,GAAG;AAC/C,UAAI,aAAa,OAAO,KAAK,OAAO,GAAG,CAAC;AAAA,IAC1C;AACA,UAAM,WAAW,MAAM,MAAM,IAAI,SAAS,GAAG;AAAA,MAC3C,SAAS;AAAA,QACP,eAAe,cAAc;AAAA,QAC7B,gBAAgB;AAAA,MAClB;AAAA,IACF,CAAC;AACD,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAI,iBAAiB,MAAM,IAAI;AAC/B,QAAI,CAAC,SAAS,GAAI,OAAM,IAAI,MAAM,KAAK,OAAO;AAC9C,WAAO,KAAK,IAAI,CAAC,aAAa;AAC5B,aAAO;AAAA,QACL,IAAI,SAAS;AAAA,QACb,MAAM,SAAS;AAAA,QACf,MAAM,SAAS;AAAA,QACf,SAAS,SAAS;AAAA,QAClB,SAAS,SAAS;AAAA,QAClB,QAAQ,SAAS;AAAA,QACjB,UAAU,SAAS;AAAA,MACrB;AAAA,IACF,CAAC;AAAA,EACH;AAAA;AAEA,SAAsB,kBAAkB,MAAc,SAAiB,gBAA0B;AAAA;AAC/F,QAAI,CAAC,KAAM,OAAM,IAAI,MAAM,oBAAoB;AAC/C,QAAI,CAAC,QAAS,OAAM,IAAI,MAAM,uBAAuB;AACrD,SAAI,iDAAgB,YAAW,EAAG,OAAM,IAAI,MAAM,mCAAmC;AAErF,UAAME,UAAS,MAAMC,iBAAgB;AACrC,WAAO,IAAI,QAAQ,CAAC,SAAS,WAAW;AACtC,MAAAD,QAAO;AAAA,QACL;AAAA,QACA;AAAA,UACE,SAAS,EAAE,MAAM,UAAU,SAAS,iBAAiB,eAAe;AAAA,QACtE;AAAA,QACA,CAAC,SAAS;AACR,cAAI,KAAK,OAAO;AACd,mBAAO,OAAO,IAAI,MAAM,KAAK,MAAM,OAAO,CAAC;AAAA,UAC7C;AACA,cAAI,kBAAkB,MAAM,GAAG,IAAI,sBAAsB,IAAI;AAC7D,kBAAQ;AAAA,YACN,IAAI,KAAK,QAAQ,SAAS;AAAA,YAC1B,MAAM,KAAK,QAAQ,SAAS;AAAA,YAC5B,MAAM,KAAK,QAAQ,SAAS;AAAA,YAC5B;AAAA,YACA,SAAS,KAAK,QAAQ,SAAS;AAAA,YAC/B,IAAI;AAAA,cACF,YAAY,KAAK,QAAQ,GAAG;AAAA,cAC5B,kBAAkB,KAAK,QAAQ,GAAG;AAAA,cAClC,UAAU,KAAK,QAAQ,GAAG;AAAA,YAC5B;AAAA,UACF,CAAC;AAAA,QACH;AAAA,MACF;AAAA,IACF,CAAC;AAAA,EACH;AAAA;AAEA,SAAsB,uBAAuB,0BAAkC,gBAAwB;AAAA;AACrG,UAAMA,UAAS,MAAMC,iBAAgB;AACrC,WAAO,IAAI,QAAQ,CAAC,SAAS,WAAW;AACtC,MAAAD,QAAO;AAAA,QACL;AAAA,QACA;AAAA,UACE,SAAS;AAAA,YACP,iBAAiB;AAAA,YACjB,6BAA6B;AAAA,UAC/B;AAAA,QACF;AAAA,QACA,CAAC,SAAS;AACR,cAAI,KAAK,OAAO;AACd,mBAAO,OAAO,IAAI,MAAM,KAAK,MAAM,OAAO,CAAC;AAAA,UAC7C;AACA,cAAI,uBAAuB,MAAM,gBAAgB,IAAI;AACrD,kBAAQ,KAAK,OAAO;AAAA,QACtB;AAAA,MACF;AAAA,IACF,CAAC;AAAA,EACH;AAAA;;;ACrGA;AAAA;AAAA,iBAAAE;AAAA,EAAA;AAAA;AAAA;;;ACEO,SAAS,eAAe;AAC7B,UAAQ,UAAU,GAAG;AAAA,IACnB,KAAK,QAAQ;AACX,aAAO;AAAA,IACT,KAAK,QAAQ;AACX,aAAO;AAAA,IACT,KAAK,QAAQ;AACX,aAAO;AAAA,EACX;AACF;;;ACXA,IAAAC,mBAAA;AAAA,SAAAA,kBAAA;AAAA;AAAA;;;ACIA,SAAsB,cAAc,KAA2C;AAAA;AAC7E,UAAM,WAAW,MAAM,MAAM,GAAG,aAAa,CAAC,aAAa,GAAG,YAAY;AAAA,MACxE,SAAS;AAAA,QACP,eAAe,cAAc;AAAA,QAC7B,gBAAgB;AAAA,MAClB;AAAA,IACF,CAAC;AACD,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAI,cAAc,MAAM,IAAI;AAC5B,WAAO;AAAA,EACT;AAAA;;;ACdA;AAAA;AAAA,iBAAAC;AAAA;;;ACAA,IAAAC,mBAAA;AAAA,SAAAA,kBAAA;AAAA;AAAA;;;ACIA,SAAsB,gBAAgB,KAA2C;AAAA;AAC/E,UAAM,WAAW,MAAM,MAAM,GAAG,aAAa,CAAC,gBAAgB,GAAG,YAAY;AAAA,MAC3E,SAAS;AAAA,QACP,eAAe,cAAc;AAAA,QAC7B,gBAAgB;AAAA,MAClB;AAAA,IACF,CAAC;AACD,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,QAAI,gBAAgB,MAAM,IAAI;AAC9B,WAAO;AAAA,EACT;AAAA;;;ACVO,SAAS,QAAQC,cAAiC;AACvD,iBAAeA,YAAW;AAC5B;AAEO,SAAS,OAAOC,SAAuB;AAC5C,YAAUA,OAAM;AAClB;AAEO,SAAS,SAAS,aAAsB;AAC7C,iBAAe,WAAW;AAC5B;","names":["Buffer","credentials","socket","socket","getWsConnection","socket","getWsConnection","socket","getWsConnection","account_exports","account_exports","account_exports","account_exports","credentials","sdkEnv"]}
|