@ledgerhq/revault-api 1.55.0 → 1.55.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/lib/{app-types-B0n5TLSm.d.mts → app-types-hrtp6-Ec.d.mts} +109 -1
- package/lib/fakes.d.mts +1 -1
- package/lib/fakes.mjs +1 -0
- package/lib/fakes.mjs.map +1 -1
- package/lib/index.d.mts +70 -157
- package/package.json +4 -4
|
@@ -68121,6 +68121,110 @@ declare const zStakingValidatorSortBy: z__default.ZodDefault<z__default.ZodEnum<
|
|
|
68121
68121
|
balance: "balance";
|
|
68122
68122
|
}>>;
|
|
68123
68123
|
|
|
68124
|
+
declare const zAssetResponse: z__default.ZodDiscriminatedUnion<[z__default.ZodObject<{
|
|
68125
|
+
id: z__default.ZodString;
|
|
68126
|
+
name: z__default.ZodString;
|
|
68127
|
+
ticker: z__default.ZodString;
|
|
68128
|
+
family: z__default.ZodString;
|
|
68129
|
+
units: z__default.ZodArray<z__default.ZodObject<{
|
|
68130
|
+
code: z__default.ZodString;
|
|
68131
|
+
name: z__default.ZodString;
|
|
68132
|
+
magnitude: z__default.ZodNumber;
|
|
68133
|
+
}, z__default.core.$strip>>;
|
|
68134
|
+
network: z__default.ZodString;
|
|
68135
|
+
assetType: z__default.ZodLiteral<"NATIVE">;
|
|
68136
|
+
}, z__default.core.$strip>, z__default.ZodObject<{
|
|
68137
|
+
id: z__default.ZodString;
|
|
68138
|
+
name: z__default.ZodString;
|
|
68139
|
+
ticker: z__default.ZodString;
|
|
68140
|
+
family: z__default.ZodString;
|
|
68141
|
+
units: z__default.ZodArray<z__default.ZodObject<{
|
|
68142
|
+
code: z__default.ZodString;
|
|
68143
|
+
name: z__default.ZodString;
|
|
68144
|
+
magnitude: z__default.ZodNumber;
|
|
68145
|
+
}, z__default.core.$strip>>;
|
|
68146
|
+
network: z__default.ZodString;
|
|
68147
|
+
assetType: z__default.ZodLiteral<"TOKEN">;
|
|
68148
|
+
contractAddress: z__default.ZodString;
|
|
68149
|
+
tokenIdentifier: z__default.ZodNullable<z__default.ZodString>;
|
|
68150
|
+
metaCurrencyId: z__default.ZodNullable<z__default.ZodString>;
|
|
68151
|
+
}, z__default.core.$strip>], "assetType">;
|
|
68152
|
+
type AssetResponse = z__default.infer<typeof zAssetResponse>;
|
|
68153
|
+
declare const zAssetCapabilitiesResponse: z__default.ZodObject<{
|
|
68154
|
+
SEND: z__default.ZodBoolean;
|
|
68155
|
+
STAKE: z__default.ZodBoolean;
|
|
68156
|
+
EXECUTE_CONTRACT: z__default.ZodBoolean;
|
|
68157
|
+
SIGN_MESSAGE: z__default.ZodBoolean;
|
|
68158
|
+
DEPLOY_CONTRACT: z__default.ZodBoolean;
|
|
68159
|
+
ACTIVATE_TOKEN: z__default.ZodBoolean;
|
|
68160
|
+
RECEIVE: z__default.ZodBoolean;
|
|
68161
|
+
}, z__default.core.$strip>;
|
|
68162
|
+
declare const zCurrencyResponse: z__default.ZodObject<{
|
|
68163
|
+
id: z__default.ZodString;
|
|
68164
|
+
name: z__default.ZodString;
|
|
68165
|
+
ticker: z__default.ZodString;
|
|
68166
|
+
type: z__default.ZodEnum<{
|
|
68167
|
+
readonly BITCOIN_LIKE: "BITCOIN_LIKE";
|
|
68168
|
+
readonly CANTON_LIKE: "CANTON_LIKE";
|
|
68169
|
+
readonly CARDANO_LIKE: "CARDANO_LIKE";
|
|
68170
|
+
readonly ETHEREUM_LIKE: "ETHEREUM_LIKE";
|
|
68171
|
+
readonly GENERIC_LIKE: "GENERIC_LIKE";
|
|
68172
|
+
readonly HEDERA_LIKE: "HEDERA_LIKE";
|
|
68173
|
+
readonly POLKADOT_LIKE: "POLKADOT_LIKE";
|
|
68174
|
+
readonly RAW_SIGNING: "RAW_SIGNING";
|
|
68175
|
+
readonly RIPPLE_LIKE: "RIPPLE_LIKE";
|
|
68176
|
+
readonly SOLANA_LIKE: "SOLANA_LIKE";
|
|
68177
|
+
readonly STELLAR_LIKE: "STELLAR_LIKE";
|
|
68178
|
+
readonly SUI_LIKE: "SUI_LIKE";
|
|
68179
|
+
readonly TEZOS_LIKE: "TEZOS_LIKE";
|
|
68180
|
+
readonly TRON_LIKE: "TRON_LIKE";
|
|
68181
|
+
}>;
|
|
68182
|
+
units: z__default.ZodArray<z__default.ZodObject<{
|
|
68183
|
+
code: z__default.ZodString;
|
|
68184
|
+
name: z__default.ZodString;
|
|
68185
|
+
magnitude: z__default.ZodNumber;
|
|
68186
|
+
}, z__default.core.$strip>>;
|
|
68187
|
+
}, z__default.core.$strip>;
|
|
68188
|
+
type CurrencyResponse = z__default.infer<typeof zCurrencyResponse>;
|
|
68189
|
+
declare const zTokenResponse: z__default.ZodObject<{
|
|
68190
|
+
id: z__default.ZodString;
|
|
68191
|
+
name: z__default.ZodString;
|
|
68192
|
+
ticker: z__default.ZodString;
|
|
68193
|
+
type: z__default.ZodEnum<{
|
|
68194
|
+
readonly BITCOIN_LIKE: "BITCOIN_LIKE";
|
|
68195
|
+
readonly CANTON_LIKE: "CANTON_LIKE";
|
|
68196
|
+
readonly CARDANO_LIKE: "CARDANO_LIKE";
|
|
68197
|
+
readonly ETHEREUM_LIKE: "ETHEREUM_LIKE";
|
|
68198
|
+
readonly GENERIC_LIKE: "GENERIC_LIKE";
|
|
68199
|
+
readonly HEDERA_LIKE: "HEDERA_LIKE";
|
|
68200
|
+
readonly POLKADOT_LIKE: "POLKADOT_LIKE";
|
|
68201
|
+
readonly RAW_SIGNING: "RAW_SIGNING";
|
|
68202
|
+
readonly RIPPLE_LIKE: "RIPPLE_LIKE";
|
|
68203
|
+
readonly SOLANA_LIKE: "SOLANA_LIKE";
|
|
68204
|
+
readonly STELLAR_LIKE: "STELLAR_LIKE";
|
|
68205
|
+
readonly SUI_LIKE: "SUI_LIKE";
|
|
68206
|
+
readonly TEZOS_LIKE: "TEZOS_LIKE";
|
|
68207
|
+
readonly TRON_LIKE: "TRON_LIKE";
|
|
68208
|
+
}>;
|
|
68209
|
+
units: z__default.ZodArray<z__default.ZodObject<{
|
|
68210
|
+
code: z__default.ZodString;
|
|
68211
|
+
name: z__default.ZodString;
|
|
68212
|
+
magnitude: z__default.ZodNumber;
|
|
68213
|
+
}, z__default.core.$strip>>;
|
|
68214
|
+
contractAddress: z__default.ZodString;
|
|
68215
|
+
currency: z__default.ZodString;
|
|
68216
|
+
}, z__default.core.$strip>;
|
|
68217
|
+
type TokenResponse = z__default.infer<typeof zTokenResponse>;
|
|
68218
|
+
|
|
68219
|
+
type AllAssets = {
|
|
68220
|
+
currencies: AssetResponse[];
|
|
68221
|
+
tokens: AssetResponse[];
|
|
68222
|
+
hash: string;
|
|
68223
|
+
};
|
|
68224
|
+
declare global {
|
|
68225
|
+
var _allAssetsPromise: Promise<AllAssets> | undefined;
|
|
68226
|
+
}
|
|
68227
|
+
|
|
68124
68228
|
type FindManyAndCountType = typeof findManyAndCount.model.$allModels.findManyAndCount;
|
|
68125
68229
|
type ModelsWithCustomMethods = {
|
|
68126
68230
|
[Model in keyof PrismaClient]: PrismaClient[Model] extends {
|
|
@@ -79452,6 +79556,10 @@ declare const zWhitelistResponse: z__default.ZodObject<{
|
|
|
79452
79556
|
id: z__default.ZodString;
|
|
79453
79557
|
legacyId: z__default.ZodNumber;
|
|
79454
79558
|
name: z__default.ZodString;
|
|
79559
|
+
type: z__default.ZodEnum<{
|
|
79560
|
+
readonly TRANSACTION: "TRANSACTION";
|
|
79561
|
+
readonly SMART_CONTRACT: "SMART_CONTRACT";
|
|
79562
|
+
}>;
|
|
79455
79563
|
status: z__default.ZodEnum<{
|
|
79456
79564
|
readonly ACTIVE: "ACTIVE";
|
|
79457
79565
|
readonly INACTIVE: "INACTIVE";
|
|
@@ -79475,4 +79583,4 @@ declare const zWhitelistSortBy: z__default.ZodDefault<z__default.ZodEnum<{
|
|
|
79475
79583
|
}>>;
|
|
79476
79584
|
type WhitelistSortBy = z__default.infer<typeof zWhitelistSortBy>;
|
|
79477
79585
|
|
|
79478
|
-
export {
|
|
79586
|
+
export { WhitelistType as $, type AssetResponse as A, type StakingDataOf as B, type ChallengeResponse as C, type TokenResponse as D, type ExtendedPrismaClient as E, type TransactionData as F, type GroupResponse as G, type TransactionDataOf as H, type TransactionResponse as I, TransactionType as J, type TransactionTypeOf as K, UserDeviceType as L, MessageType as M, NetworkFamily as N, OnboardedUserRole as O, PsdModel as P, type UserResponse as Q, type RequestDataOf as R, type SendOnlyTransactionData as S, type TxHandler as T, type User as U, UserRole as V, type UserSortBy as W, type VaultRequestCreateInput as X, type VaultRequestResponse as Y, type WhitelistResponse as Z, type WhitelistSortBy as _, type UserTask as a, convertTxToGovernableIntent as a0, genTransactionSchemas as a1, getTxHsmProps as a2, zAccountFreshAddress as a3, zAccountLiveData as a4, zAccountLiveDataResponse as a5, zAccountResponse as a6, zAccountSortBy as a7, zAccountStakingFields as a8, zAdminResponse as a9, zVaultRequestCreateInput as aA, zVaultRequestResponse as aB, zWhitelistAddressResponse as aC, zWhitelistResponse as aD, zWhitelistSortBy as aE, zApproveVaultRequestInput as aa, zAssetCapabilitiesResponse as ab, zAssetResponse as ac, zBalance as ad, zChallengeResponse as ae, zCommonLiveData as af, zCurrencyResponse as ag, zEnsureNameAvailableInput as ah, zEstimatedFees as ai, zGovernableAction as aj, zGroupResponse as ak, zGroupSortBy as al, zNetworkAssetFields as am, zRequestSortBy as an, zRequestTaskResponse as ao, zSendOnlyTransactionData as ap, zStake as aq, zStakeSortBy as ar, zStakingValidator as as, zStakingValidatorSortBy as at, zTokenResponse as au, zTransactionData as av, zTransactionResponse as aw, zTransactionType as ax, zUserResponse as ay, zUserSortBy as az, type AccountFreshAddress as b, type AccountLiveDataResponse as c, type AccountResponse as d, type AccountSortBy as e, type AccountStakingFields as f, AccountType as g, ActivationStatus as h, AdminPermission as i, type AdminResponse as j, AllowedAction as k, type ApproveVaultRequestInput as l, ChallengeType as m, ClaimedRole as n, type CurrencyResponse as o, type EnsureNameAvailableInput as p, type EstimatedFees as q, type GroupSortBy as r, OnboardingStep as s, RequestReviewStatus as t, type RequestSortBy as u, RequestState as v, RequestType as w, ResourceType as x, RevaultMode as y, ReviewConfigType as z };
|
package/lib/fakes.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { X as VaultRequestCreateInput, R as RequestDataOf, M as MessageType, H as TransactionDataOf, g as AccountType, d as AccountResponse, G as GroupResponse, Q as UserResponse, Y as VaultRequestResponse, Z as WhitelistResponse, f as AccountStakingFields } from './app-types-hrtp6-Ec.mjs';
|
|
2
2
|
import { WebhookResponse } from '@ledgerhq/revault-notifier-types/webhook';
|
|
3
3
|
import 'zod';
|
|
4
4
|
import '@prisma/client/runtime/client';
|
package/lib/fakes.mjs
CHANGED
package/lib/fakes.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/__fakes__/trpc/utils.ts","../src/__fakes__/trpc/inputs.ts","../src/__fakes__/trpc/request-data/account.ts","../src/__fakes__/trpc/request-data/api-key.ts","../src/__fakes__/trpc/request-data/entity.ts","../src/__fakes__/trpc/request-data/group.ts","../src/__fakes__/trpc/request-data/message-signature.ts","../src/__fakes__/trpc/request-data/policy.ts","../src/__fakes__/trpc/request-data/sciconfig.ts","../src/__fakes__/trpc/request-data/tradelink.ts","../src/__fakes__/trpc/transactions/bitcoin.ts","../src/__fakes__/trpc/transactions/canton.ts","../src/__fakes__/trpc/transactions/cardano.ts","../src/__fakes__/trpc/transactions/ethereum.ts","../src/__fakes__/trpc/transactions/generic.ts","../src/__fakes__/trpc/transactions/hedera.ts","../src/__fakes__/trpc/transactions/polkadot.ts","../src/__fakes__/trpc/transactions/ripple.ts","../src/__fakes__/trpc/transactions/solana.ts","../src/__fakes__/trpc/transactions/stellar.ts","../src/__fakes__/trpc/transactions/sui.ts","../src/__fakes__/trpc/transactions/tezos.ts","../src/__fakes__/trpc/transactions/tron.ts","../src/__fakes__/trpc/transactions/index.ts","../src/__fakes__/trpc/request-data/transaction.ts","../src/__fakes__/trpc/request-data/user.ts","../src/__fakes__/trpc/request-data/whitelist.ts","../src/__fakes__/trpc/request-data/workspace-rule.ts","../src/__fakes__/trpc/request-data/index.ts","../src/__fakes__/trpc/responses.ts","../src/__fakes__/trpc/staking.ts"],"names":["faker"],"mappings":"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","file":"fakes.mjs","sourcesContent":["import { faker } from \"@faker-js/faker\";\n\nexport const unreachable = (value: never): never => {\n throw new Error(`Type checker should have prevented you from reaching here: ${value}`);\n};\n\nexport const genPubKey = (): string =>\n `04${faker.string.hexadecimal({ prefix: \"\", casing: \"lower\", length: 128 })}`;\n\nexport const genHexString = (length: number, casing: \"lower\" | \"upper\"): string =>\n faker.string.hexadecimal({ prefix: \"\", casing, length });\n\nexport const genUniqueName = (length = 20): string =>\n faker.string.alphanumeric({ length, casing: \"lower\" });\n","import { faker } from \"@faker-js/faker\";\n\nimport type { VaultRequestCreateInput } from \"@/app-lib\";\n\nimport { genHexString } from \"./utils\";\n\nexport type RequestInputDataOf<T extends VaultRequestCreateInput[\"request\"][\"type\"]> = Extract<\n VaultRequestCreateInput[\"request\"],\n { type: T }\n>[\"data\"];\n\nexport const genSignMessageInputData = (\n opts?: Partial<RequestInputDataOf<\"SIGN_MESSAGE\">>,\n): RequestInputDataOf<\"SIGN_MESSAGE\"> => ({\n message: {\n type: \"EIP191\",\n data: genHexString(10, \"upper\"),\n },\n accountId: faker.string.uuid(),\n ...opts,\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { RequestDataOf } from \"@/app-lib\";\n\nimport { genUniqueName } from \"../utils\";\n\nexport const genCreateAccountData = (\n opts?: Partial<RequestDataOf<\"CREATE_ACCOUNT\">>,\n): RequestDataOf<\"CREATE_ACCOUNT\"> => ({\n name: genUniqueName(),\n type: \"BITCOIN_LIKE\",\n currency: \"bitcoin\",\n contractAddress: null,\n tokenIdentifier: null,\n governance: {\n type: \"CLASSIC\",\n policy: { rules: [] },\n },\n index: 0,\n derivationPath: \"m/84'/0'/0'\",\n ...opts,\n});\n\nexport const genEditAccountData = (\n opts?: Partial<RequestDataOf<\"EDIT_ACCOUNT\">>,\n): RequestDataOf<\"EDIT_ACCOUNT\"> => ({\n name: genUniqueName(),\n governance: {\n type: \"CLASSIC\",\n policy: { rules: [] },\n },\n ...opts,\n});\n\nexport const genEditTokenRuleData = (\n opts?: Partial<RequestDataOf<\"EDIT_TOKEN_RULE\">>,\n): RequestDataOf<\"EDIT_TOKEN_RULE\"> => ({\n parentAccountId: faker.string.uuid(),\n contractAddress: faker.string.alphanumeric({ length: 44 }),\n rules: [\n {\n operationType: \"SEND\",\n reviewSteps: [{ quorum: 1, userIds: [] }],\n },\n ],\n ...opts,\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { RequestDataOf } from \"@/app-lib\";\n\nexport const genCreateApiKeyData = (\n opts?: Partial<RequestDataOf<\"CREATE_API_KEY\">>,\n): RequestDataOf<\"CREATE_API_KEY\"> => ({\n name: faker.company.name().slice(0, 19),\n entities: [],\n scopes: {},\n ...opts,\n});\n\nexport const genEditApiKeyData = (\n opts?: Partial<RequestDataOf<\"EDIT_API_KEY\">>,\n): RequestDataOf<\"EDIT_API_KEY\"> => ({\n name: faker.company.name().slice(0, 19),\n entities: [],\n scopes: {},\n ...opts,\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { RequestDataOf } from \"@/app-lib\";\n\nexport const genCreateEntityData = (\n opts?: Partial<RequestDataOf<\"CREATE_ENTITY\">>,\n): RequestDataOf<\"CREATE_ENTITY\"> => ({\n name: faker.word.noun({ length: { min: 5, max: 19 } }),\n accountIds: [],\n memberIds: [],\n ...opts,\n});\n\nexport const genEditEntityData = (\n opts?: Partial<RequestDataOf<\"EDIT_ENTITY\">>,\n): RequestDataOf<\"EDIT_ENTITY\"> => ({\n name: faker.word.noun({ length: { min: 5, max: 19 } }),\n accountIds: [],\n memberIds: [],\n ...opts,\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { RequestDataOf } from \"@/app-lib\";\n\nexport const genCreateGroupData = (\n opts?: Partial<RequestDataOf<\"CREATE_GROUP\">>,\n): RequestDataOf<\"CREATE_GROUP\"> => ({\n name: faker.word.noun({ length: { min: 5, max: 19 } }),\n description: faker.lorem.sentence(),\n members: [],\n ...opts,\n});\n\nexport const genEditGroupData = (\n opts?: Partial<RequestDataOf<\"EDIT_GROUP\">>,\n): RequestDataOf<\"EDIT_GROUP\"> => ({\n name: faker.word.noun({ length: { min: 5, max: 19 } }),\n description: faker.lorem.sentence(),\n members: [],\n ...opts,\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { MessageType, RequestDataOf } from \"@/app-lib\";\n\nimport { genHexString } from \"../utils\";\n\nexport const genSignMessageData = (\n opts?: Partial<RequestDataOf<\"SIGN_MESSAGE\">> & { messageType?: MessageType },\n): RequestDataOf<\"SIGN_MESSAGE\"> => {\n const messageType = opts?.messageType ?? opts?.message?.type ?? \"EIP191\";\n let message: RequestDataOf<\"SIGN_MESSAGE\">[\"message\"];\n switch (messageType) {\n case \"EIP191\":\n message = {\n type: \"EIP191\",\n data: genHexString(10, \"upper\"),\n };\n break;\n case \"EIP712\":\n message = {\n type: \"EIP712\",\n data: {\n types: {\n EIP712Domain: [\n { name: \"name\", type: \"string\" },\n { name: \"version\", type: \"string\" },\n { name: \"chainId\", type: \"uint256\" },\n { name: \"verifyingContract\", type: \"address\" },\n ],\n PrimaryType: [\n { name: \"a\", type: \"int256\" },\n { name: \"b\", type: \"bool\" },\n ],\n },\n primaryType: \"PrimaryType\",\n domain: {\n name: \"Test Domain\",\n version: \"1\",\n chainId: 1,\n verifyingContract: \"0x1234567890123456789012345678901234567890\",\n },\n message: {\n a: faker.number.int({ min: 0, max: 1000 }),\n b: faker.datatype.boolean(),\n },\n },\n };\n break;\n case \"CIP8\":\n case \"BIP137\":\n throw new Error(`Unsupported message type in fakes: ${messageType}`);\n }\n return {\n message,\n accountId: faker.string.uuid(),\n address: faker.finance.ethereumAddress(),\n derivationPath: \"44'/60'/0'/0/0\",\n ...opts,\n };\n};\n\nexport const genSignDigestsData = (\n opts?: Partial<RequestDataOf<\"SIGN_DIGESTS\">>,\n): RequestDataOf<\"SIGN_DIGESTS\"> => ({\n accountId: faker.string.uuid(),\n digests: [\n {\n digest: faker.string.hexadecimal({ prefix: \"\", length: 64 }),\n derivationPath: \"m/44'/60'/0'\",\n },\n ],\n ...opts,\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { RequestDataOf } from \"@/app-lib\";\n\nexport const genCreatePolicyData = (\n opts?: Partial<RequestDataOf<\"CREATE_POLICY\">>,\n): RequestDataOf<\"CREATE_POLICY\"> => ({\n name: faker.word.noun({ length: { min: 5, max: 19 } }),\n description: faker.lorem.sentence(),\n currency: \"bitcoin\",\n govRules: [],\n ...opts,\n});\n\nexport const genEditPolicyData = (\n opts?: Partial<RequestDataOf<\"EDIT_POLICY\">>,\n): RequestDataOf<\"EDIT_POLICY\"> => ({\n name: faker.word.noun({ length: { min: 5, max: 19 } }),\n description: faker.lorem.sentence(),\n govRules: [],\n ...opts,\n});\n","import { faker } from \"@faker-js/faker\";\nimport { times } from \"lodash-es\";\n\nimport type { RequestDataOf } from \"@/app-lib\";\n\nexport const genCreateSciConfigData = (\n opts?: Partial<RequestDataOf<\"CREATE_SCICONFIG\">>,\n): RequestDataOf<\"CREATE_SCICONFIG\"> => ({\n account: faker.string.uuid(),\n config: {\n dapps: times(faker.number.int({ min: 0, max: 5 }), () => faker.word.noun()),\n customContractCallEnabled: faker.datatype.boolean(),\n },\n ...opts,\n});\n\nexport const genEditSciConfigData = (\n opts?: Partial<RequestDataOf<\"EDIT_SCICONFIG\">>,\n): RequestDataOf<\"EDIT_SCICONFIG\"> => ({\n config: {\n dapps: times(faker.number.int({ min: 0, max: 5 }), () => faker.word.noun()),\n customContractCallEnabled: faker.datatype.boolean(),\n },\n ...opts,\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { RequestDataOf } from \"@/app-lib\";\n\nexport const genTradelinkAdjustPledgeData = (\n opts?: Partial<RequestDataOf<\"TRADELINK_ADJUST_PLEDGE\">>,\n): RequestDataOf<\"TRADELINK_ADJUST_PLEDGE\"> => ({\n accountId: faker.string.uuid(),\n exchangeId: faker.string.uuid(),\n amount: \"42\",\n ...opts,\n});\n\nexport const genTradelinkRepledgeData = (\n opts?: Partial<RequestDataOf<\"TRADELINK_REPLEDGE\">>,\n): RequestDataOf<\"TRADELINK_REPLEDGE\"> => ({\n accountId: faker.string.uuid(),\n exchangeId: faker.string.uuid(),\n amount: \"42\",\n ...opts,\n});\n\nexport const genTradelinkCreateSettlementData = (\n opts?: Partial<RequestDataOf<\"TRADELINK_CREATE_SETTLEMENT\">>,\n): RequestDataOf<\"TRADELINK_CREATE_SETTLEMENT\"> => ({\n accountId: faker.string.uuid(),\n exchangeId: faker.string.uuid(),\n transaction: {\n type: \"BITCOIN_LIKE_SEND\",\n amount: \"42\",\n currency: \"bitcoin\",\n maxFee: \"999\",\n recipient: faker.finance.bitcoinAddress(),\n feeStrategy: { type: \"NORMAL\" },\n },\n ...opts,\n});\n\nexport const genTradelinkForceUnpledgeData = (\n opts?: Partial<RequestDataOf<\"TRADELINK_FORCE_UNPLEDGE\">>,\n): RequestDataOf<\"TRADELINK_FORCE_UNPLEDGE\"> => ({\n accountId: faker.string.uuid(),\n exchangeId: faker.string.uuid(),\n ...opts,\n});\n\nexport const genTradelinkWithdrawData = (\n opts?: Partial<RequestDataOf<\"TRADELINK_WITHDRAW\">>,\n): RequestDataOf<\"TRADELINK_WITHDRAW\"> => ({\n accountId: faker.string.uuid(),\n transaction: {\n type: \"ETHEREUM_LIKE_SEND\",\n recipient: \"0x63e4195AF1509490b430F3f5bCb85A82a24F5C82\",\n amount: faker.number.bigInt({ min: 0, max: 99 }).toString(),\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n currency: \"ethereum\",\n feeStrategy: {\n type: \"NORMAL\",\n gasPrice: \"2\",\n gasLimit: \"10\",\n },\n },\n ...opts,\n});\n\nexport const genTradelinkArbitrationData = (\n opts?: Partial<RequestDataOf<\"TRADELINK_ARBITRATE\">>,\n): RequestDataOf<\"TRADELINK_ARBITRATE\"> => ({\n accountId: faker.string.uuid(),\n transaction: {\n type: \"ETHEREUM_LIKE_SEND\",\n recipient: \"0xcefd70CFCd7a2FAa0fe956E3d496F9313297CB44\",\n amount: faker.number.bigInt({ min: 0, max: 99 }).toString(),\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n currency: \"ethereum\",\n feeStrategy: {\n type: \"NORMAL\",\n gasPrice: \"2\",\n gasLimit: \"10\",\n },\n },\n ...opts,\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { TransactionDataOf } from \"@/app-lib\";\n\nexport const genBitcoinLikeSendData = (): TransactionDataOf<\"BITCOIN_LIKE_SEND\"> => ({\n type: \"BITCOIN_LIKE_SEND\" as const,\n currency: \"bitcoin\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n recipient: faker.finance.bitcoinAddress(),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\", \"CUSTOM\"] as const),\n feePerByte: faker.number.bigInt({ min: 1 }).toString(),\n },\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { TransactionDataOf } from \"@/app-lib\";\n\ntype CantonTxType =\n | \"CANTON_LIKE_SEND\"\n | \"CANTON_LIKE_SEND_TOKEN\"\n | \"CANTON_LIKE_WITHDRAW\"\n | \"CANTON_LIKE_RECEIVE\"\n | \"CANTON_LIKE_PRE_APPROVAL\";\n\nconst fakeCantonPartyId = (): string =>\n `party-${faker.lorem.word()}::${faker.string.hexadecimal({ prefix: \"\", casing: \"lower\", length: 68 })}`;\n\nconst fakeCantonContractId = (): string =>\n faker.string.hexadecimal({ prefix: \"\", casing: \"lower\", length: 138 });\n\nconst fakeCantonInstrumentId = (): string =>\n faker.string.hexadecimal({ prefix: \"\", casing: \"lower\", length: 10 });\n\nconst fakeCantonTransferProposal = (): TransactionDataOf<\n \"CANTON_LIKE_WITHDRAW\" | \"CANTON_LIKE_RECEIVE\"\n>[\"transferProposal\"] => ({\n amount: faker.number.bigInt().toString(),\n contractId: fakeCantonContractId(),\n instrumentAdmin: fakeCantonPartyId(),\n instrumentId: fakeCantonInstrumentId(),\n expiresAtMicros: faker.number.int(),\n reason: faker.lorem.sentence(),\n sender: fakeCantonPartyId(),\n recipient: fakeCantonPartyId(),\n});\n\nexport const genCantonLikeTxData = (txType: CantonTxType): TransactionDataOf<CantonTxType> => {\n switch (txType) {\n case \"CANTON_LIKE_SEND\":\n case \"CANTON_LIKE_SEND_TOKEN\":\n return {\n type: txType,\n currency: \"canton_network\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n recipient: fakeCantonPartyId(),\n reason: faker.helpers.arrayElement([null, faker.lorem.word()]),\n };\n case \"CANTON_LIKE_WITHDRAW\":\n return {\n type: txType,\n currency: \"canton_network\",\n transferProposal: fakeCantonTransferProposal(),\n reason: faker.lorem.sentence(),\n };\n case \"CANTON_LIKE_RECEIVE\":\n return {\n type: txType,\n currency: \"canton_network\",\n transferProposal: fakeCantonTransferProposal(),\n verdict: \"ACCEPT\" as const,\n reason: faker.lorem.sentence(),\n };\n case \"CANTON_LIKE_PRE_APPROVAL\":\n return {\n type: txType,\n currency: \"canton_network\",\n recipient: fakeCantonPartyId(),\n };\n default: {\n const _exhaustive: never = txType;\n throw new Error(`Unknown canton transaction type: ${_exhaustive}`);\n }\n }\n};\n","import { faker } from \"@faker-js/faker\";\n\nimport type { TransactionDataOf } from \"@/app-lib\";\n\ntype CardanoTxType =\n | \"CARDANO_LIKE_SEND\"\n | \"CARDANO_LIKE_STAKING_REGISTER\"\n | \"CARDANO_LIKE_STAKING_DEREGISTER\"\n | \"CARDANO_LIKE_STAKING_DELEGATE\"\n | \"CARDANO_LIKE_STAKING_WITHDRAW\";\n\nexport const genCardanoLikeTxData = (txType: CardanoTxType): TransactionDataOf<CardanoTxType> => {\n switch (txType) {\n case \"CARDANO_LIKE_SEND\":\n return {\n type: txType,\n currency: \"cardano\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n recipient: faker.string.alphanumeric({ length: 30 }),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n };\n case \"CARDANO_LIKE_STAKING_DELEGATE\":\n return {\n type: txType,\n currency: \"cardano\",\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n stakePoolId: `pool${faker.string.alphanumeric({ length: 52 })}`,\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n };\n case \"CARDANO_LIKE_STAKING_REGISTER\":\n case \"CARDANO_LIKE_STAKING_DEREGISTER\":\n case \"CARDANO_LIKE_STAKING_WITHDRAW\":\n return {\n type: txType,\n currency: \"cardano\",\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n amount: faker.number.bigInt({ min: 0 }).toString(),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n };\n default: {\n const _exhaustive: never = txType;\n throw new Error(`Unknown cardano transaction type: ${_exhaustive}`);\n }\n }\n};\n","import { faker } from \"@faker-js/faker\";\nimport { omit } from \"lodash-es\";\n\nimport type { TransactionDataOf } from \"@/app-lib\";\n\nexport const genEthereumLikeSendData = (): TransactionDataOf<\"ETHEREUM_LIKE_SEND\"> => {\n const gasLimit = faker.number.bigInt({ min: 1 });\n const gasPrice = faker.number.bigInt({ min: 1 });\n const maxFee = gasLimit * gasPrice;\n return {\n type: \"ETHEREUM_LIKE_SEND\" as const,\n currency: \"ethereum\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n maxFee: maxFee.toString(),\n recipient: faker.finance.ethereumAddress(),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\", \"CUSTOM\"] as const),\n gasLimit: gasLimit.toString(),\n gasPrice: gasPrice.toString(),\n },\n };\n};\n\nexport const genEthereumLikeExecuteContractData =\n (): TransactionDataOf<\"ETHEREUM_LIKE_EXECUTE_CONTRACT\"> => {\n const sendData = genEthereumLikeSendData();\n return {\n ...omit(sendData, [\"type\"]),\n type: \"ETHEREUM_LIKE_EXECUTE_CONTRACT\" as const,\n contractData: faker.string.hexadecimal({ prefix: \"\", casing: \"lower\", length: 128 }),\n };\n };\n\nexport const genEthereumLikeDeployContractData =\n (): TransactionDataOf<\"ETHEREUM_LIKE_DEPLOY_CONTRACT\"> => {\n const sendData = genEthereumLikeSendData();\n return {\n ...omit(sendData, [\"type\"]),\n type: \"ETHEREUM_LIKE_DEPLOY_CONTRACT\" as const,\n recipient: \"\",\n contractData: faker.string.hexadecimal({ prefix: \"\", casing: \"lower\", length: 128 }),\n };\n };\n","import { faker } from \"@faker-js/faker\";\n\nimport type { TransactionDataOf } from \"@/app-lib\";\n\nexport const genGenericTransactionData = (): TransactionDataOf<\"GENERIC_TRANSACTION\"> => ({\n type: \"GENERIC_TRANSACTION\" as const,\n currency: \"tron\",\n rawTx: faker.string.alphanumeric({ length: 100 }),\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { TransactionDataOf } from \"@/app-lib\";\n\ntype HederaSendTxType = \"HEDERA_LIKE_SEND\" | \"HEDERA_LIKE_SEND_TOKEN\";\n\nexport const genHederaLikeSendData = (\n txType: HederaSendTxType,\n): TransactionDataOf<HederaSendTxType> => ({\n type: txType,\n currency: \"hedera\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n recipient: `0.0.${faker.number.int({ min: 10000000, max: 99999999 }).toString()}`,\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n});\n\nexport const genHederaLikeStakeData = (): TransactionDataOf<\"HEDERA_LIKE_STAKE\"> => ({\n type: \"HEDERA_LIKE_STAKE\" as const,\n currency: \"hedera\",\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n nodeId: faker.number.int({ min: 10, max: 99999999 }).toString(),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { TransactionDataOf } from \"@/app-lib\";\n\ntype PolkadotTxType =\n | \"POLKADOT_LIKE_SEND\"\n | \"POLKADOT_LIKE_ADDPROXY\"\n | \"POLKADOT_LIKE_REMOVEPROXY\"\n | \"POLKADOT_LIKE_BOND\"\n | \"POLKADOT_LIKE_REBOND\"\n | \"POLKADOT_LIKE_BONDEXTRA\"\n | \"POLKADOT_LIKE_UNBOND\"\n | \"POLKADOT_LIKE_WITHDRAWUNBONDED\"\n | \"POLKADOT_LIKE_SETPAYEE\"\n | \"POLKADOT_LIKE_ANONYMOUSPROXY\"\n | \"POLKADOT_LIKE_KILLANONYMOUS\"\n | \"POLKADOT_LIKE_CHILL\";\n\nexport const genPolkadotLikeTxData = (\n txType: PolkadotTxType,\n): TransactionDataOf<PolkadotTxType> => {\n switch (txType) {\n case \"POLKADOT_LIKE_SEND\":\n return {\n type: txType,\n currency: \"polkadot\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n recipient: faker.string.alphanumeric({ length: 30 }),\n };\n case \"POLKADOT_LIKE_ADDPROXY\":\n case \"POLKADOT_LIKE_REMOVEPROXY\":\n return {\n type: txType,\n currency: \"polkadot\",\n kind: \"Staking\" as const,\n proxy: faker.string.alphanumeric({ length: 30 }),\n };\n case \"POLKADOT_LIKE_BOND\":\n return {\n type: txType,\n currency: \"polkadot\",\n payee: faker.helpers.arrayElement([\"Staked\", \"Stash\"] as const),\n amount: faker.number.bigInt({ min: 0 }).toString(),\n };\n case \"POLKADOT_LIKE_REBOND\":\n case \"POLKADOT_LIKE_UNBOND\":\n return {\n type: txType,\n currency: \"polkadot\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n };\n case \"POLKADOT_LIKE_BONDEXTRA\":\n return {\n type: txType,\n currency: \"polkadot\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n };\n case \"POLKADOT_LIKE_WITHDRAWUNBONDED\":\n case \"POLKADOT_LIKE_CHILL\":\n return { type: txType, currency: \"polkadot\" };\n case \"POLKADOT_LIKE_SETPAYEE\":\n return {\n type: txType,\n currency: \"polkadot\",\n payee: faker.helpers.arrayElement([\"Staked\", \"Stash\"] as const),\n };\n case \"POLKADOT_LIKE_ANONYMOUSPROXY\":\n case \"POLKADOT_LIKE_KILLANONYMOUS\":\n return { type: txType, currency: \"polkadot\" };\n default: {\n const _exhaustive: never = txType;\n throw new Error(`Unknown polkadot transaction type: ${_exhaustive}`);\n }\n }\n};\n","import { faker } from \"@faker-js/faker\";\n\nimport type { TransactionDataOf } from \"@/app-lib\";\n\nexport const genRippleLikeSendData = (): TransactionDataOf<\"RIPPLE_LIKE_SEND\"> => ({\n type: \"RIPPLE_LIKE_SEND\" as const,\n currency: \"ripple\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n recipient: faker.string.alphanumeric({ length: 30 }),\n destinationTag: faker.helpers.arrayElement([faker.number.int().toString(), null]),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { TransactionDataOf } from \"@/app-lib\";\n\ntype SolanaTxType =\n | \"SOLANA_LIKE_SEND\"\n | \"SOLANA_LIKE_CREATE_DELEGATE_STAKE\"\n | \"SOLANA_LIKE_DELEGATE_STAKE\"\n | \"SOLANA_LIKE_WITHDRAW_STAKE\"\n | \"SOLANA_LIKE_DEACTIVATE_STAKE\"\n | \"SOLANA_LIKE_SPLIT_STAKE\"\n | \"SOLANA_LIKE_SPLIT_DEACTIVATE_STAKE\"\n | \"SOLANA_LIKE_MERGE_STAKE\"\n | \"SOLANA_LIKE_SEND_TOKEN\"\n | \"SOLANA_LIKE_FUND_AND_SEND_TOKEN\"\n | \"SOLANA_LIKE_CREATE_SPL_TOKEN_ACCOUNT\";\n\nexport const genSolanaLikeTxData = (txType: SolanaTxType): TransactionDataOf<SolanaTxType> => {\n switch (txType) {\n case \"SOLANA_LIKE_SEND\":\n case \"SOLANA_LIKE_CREATE_DELEGATE_STAKE\":\n case \"SOLANA_LIKE_SEND_TOKEN\":\n case \"SOLANA_LIKE_FUND_AND_SEND_TOKEN\":\n return {\n type: txType,\n currency: \"solana\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n recipient: faker.string.alphanumeric({ length: 30 }),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n };\n case \"SOLANA_LIKE_DELEGATE_STAKE\":\n return {\n type: txType,\n currency: \"solana\",\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n recipient: faker.string.alphanumeric({ length: 30 }),\n stakeAccount: faker.string.alphanumeric({ length: 30 }),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n };\n case \"SOLANA_LIKE_DEACTIVATE_STAKE\":\n return {\n type: txType,\n currency: \"solana\",\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n stakeAccount: faker.string.alphanumeric({ length: 30 }),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n };\n case \"SOLANA_LIKE_SPLIT_DEACTIVATE_STAKE\":\n case \"SOLANA_LIKE_SPLIT_STAKE\":\n case \"SOLANA_LIKE_WITHDRAW_STAKE\":\n return {\n type: txType,\n currency: \"solana\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n stakeAccount: faker.string.alphanumeric({ length: 30 }),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n };\n case \"SOLANA_LIKE_MERGE_STAKE\":\n return {\n type: txType,\n currency: \"solana\",\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n mergeSrcAccount: faker.string.alphanumeric({ length: 30 }),\n mergeDstAccount: faker.string.alphanumeric({ length: 30 }),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n };\n case \"SOLANA_LIKE_CREATE_SPL_TOKEN_ACCOUNT\":\n return {\n type: txType,\n currency: \"solana\",\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n };\n default: {\n const _exhaustive: never = txType;\n throw new Error(`Unknown solana transaction type: ${_exhaustive}`);\n }\n }\n};\n","import { faker } from \"@faker-js/faker\";\n\nimport type { TransactionDataOf } from \"@/app-lib\";\n\nexport const genStellarLikeSendData = (): TransactionDataOf<\"STELLAR_LIKE_SEND\"> => ({\n type: \"STELLAR_LIKE_SEND\" as const,\n currency: \"stellar\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n recipient: faker.string.alphanumeric({ length: 30 }),\n memo: faker.helpers.arrayElement([\n { type: \"MEMO_ID\" as const, value: faker.number.bigInt({ min: 0 }).toString() },\n { type: \"MEMO_TEXT\" as const, value: faker.word.conjunction(28) },\n {\n type: \"MEMO_HASH\" as const,\n value: faker.string.hexadecimal({ prefix: \"\", casing: \"lower\", length: 64 }),\n },\n {\n type: \"MEMO_RETURN\" as const,\n value: faker.string.hexadecimal({ prefix: \"\", casing: \"lower\", length: 64 }),\n },\n null,\n ]),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { TransactionDataOf } from \"@/app-lib\";\n\ntype SuiTxType = \"SUI_LIKE_SEND\" | \"SUI_LIKE_SEND_TOKEN\" | \"SUI_LIKE_STAKE\" | \"SUI_LIKE_UNSTAKE\";\n\nexport const genSuiLikeTxData = (txType: SuiTxType): TransactionDataOf<SuiTxType> => {\n const base = {\n currency: \"sui\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n };\n\n switch (txType) {\n case \"SUI_LIKE_STAKE\":\n return {\n ...base,\n type: txType,\n validator: faker.string.alphanumeric({ length: 30 }),\n };\n case \"SUI_LIKE_UNSTAKE\":\n return {\n ...base,\n type: txType,\n stakedSuiId: faker.string.alphanumeric({ length: 30 }),\n useAllAmount: faker.datatype.boolean(),\n };\n case \"SUI_LIKE_SEND\":\n case \"SUI_LIKE_SEND_TOKEN\":\n return {\n ...base,\n type: txType,\n recipient: faker.string.alphanumeric({ length: 30 }),\n };\n default: {\n const _exhaustive: never = txType;\n throw new Error(`Unknown sui transaction type: ${_exhaustive}`);\n }\n }\n};\n","import { faker } from \"@faker-js/faker\";\n\nimport type { TransactionDataOf } from \"@/app-lib\";\n\ntype TezosTxType = \"TEZOS_LIKE_SEND\" | \"TEZOS_LIKE_DELEGATE\" | \"TEZOS_LIKE_UNDELEGATE\";\n\nexport const genTezosLikeTxData = (txType: TezosTxType): TransactionDataOf<TezosTxType> => ({\n type: txType,\n currency: \"tezos\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n recipient: faker.string.alphanumeric({ length: 30 }),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\", \"CUSTOM\"] as const),\n },\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { TransactionDataOf } from \"@/app-lib\";\n\ntype TronTxType = \"TRON_LIKE_SEND\" | \"TRON_LIKE_SEND_TOKEN\";\n\nexport const genTronLikeTxData = (txType: TronTxType): TransactionDataOf<TronTxType> => ({\n type: txType,\n currency: \"tron\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n recipient: faker.string.alphanumeric({ length: 30 }),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n});\n","import type { RequestDataOf, TransactionDataOf } from \"@/app-lib\";\n\nimport { unreachable } from \"../utils\";\nimport { genBitcoinLikeSendData } from \"./bitcoin\";\nimport { genCantonLikeTxData } from \"./canton\";\nimport { genCardanoLikeTxData } from \"./cardano\";\nimport {\n genEthereumLikeDeployContractData,\n genEthereumLikeExecuteContractData,\n genEthereumLikeSendData,\n} from \"./ethereum\";\nimport { genGenericTransactionData } from \"./generic\";\nimport { genHederaLikeSendData, genHederaLikeStakeData } from \"./hedera\";\nimport { genPolkadotLikeTxData } from \"./polkadot\";\nimport { genRippleLikeSendData } from \"./ripple\";\nimport { genSolanaLikeTxData } from \"./solana\";\nimport { genStellarLikeSendData } from \"./stellar\";\nimport { genSuiLikeTxData } from \"./sui\";\nimport { genTezosLikeTxData } from \"./tezos\";\nimport { genTronLikeTxData } from \"./tron\";\n\n/** Outgoing transaction type, which is a subset of `TransactionType`. */\nexport type OutgoingTxType = RequestDataOf<\"CREATE_TRANSACTION\">[\"transaction\"][\"type\"];\n\nexport const genOutgoingTxData = <T extends OutgoingTxType>(\n opts: Partial<TransactionDataOf<T>> & { type: T },\n): TransactionDataOf<T> => {\n let txDataDefaults: TransactionDataOf<OutgoingTxType>;\n switch (opts.type) {\n case \"BITCOIN_LIKE_SEND\":\n txDataDefaults = genBitcoinLikeSendData();\n break;\n case \"CANTON_LIKE_SEND\":\n case \"CANTON_LIKE_SEND_TOKEN\":\n case \"CANTON_LIKE_WITHDRAW\":\n case \"CANTON_LIKE_RECEIVE\":\n case \"CANTON_LIKE_PRE_APPROVAL\":\n txDataDefaults = genCantonLikeTxData(opts.type);\n break;\n case \"CARDANO_LIKE_SEND\":\n case \"CARDANO_LIKE_STAKING_REGISTER\":\n case \"CARDANO_LIKE_STAKING_DEREGISTER\":\n case \"CARDANO_LIKE_STAKING_DELEGATE\":\n case \"CARDANO_LIKE_STAKING_WITHDRAW\":\n txDataDefaults = genCardanoLikeTxData(opts.type);\n break;\n case \"ETHEREUM_LIKE_SEND\":\n txDataDefaults = genEthereumLikeSendData();\n break;\n case \"ETHEREUM_LIKE_EXECUTE_CONTRACT\":\n txDataDefaults = genEthereumLikeExecuteContractData();\n break;\n case \"ETHEREUM_LIKE_DEPLOY_CONTRACT\":\n txDataDefaults = genEthereumLikeDeployContractData();\n break;\n case \"GENERIC_TRANSACTION\":\n txDataDefaults = genGenericTransactionData();\n break;\n case \"HEDERA_LIKE_SEND\":\n case \"HEDERA_LIKE_SEND_TOKEN\":\n txDataDefaults = genHederaLikeSendData(opts.type);\n break;\n case \"HEDERA_LIKE_STAKE\":\n txDataDefaults = genHederaLikeStakeData();\n break;\n case \"POLKADOT_LIKE_SEND\":\n case \"POLKADOT_LIKE_ADDPROXY\":\n case \"POLKADOT_LIKE_REMOVEPROXY\":\n case \"POLKADOT_LIKE_BOND\":\n case \"POLKADOT_LIKE_REBOND\":\n case \"POLKADOT_LIKE_BONDEXTRA\":\n case \"POLKADOT_LIKE_UNBOND\":\n case \"POLKADOT_LIKE_WITHDRAWUNBONDED\":\n case \"POLKADOT_LIKE_SETPAYEE\":\n case \"POLKADOT_LIKE_ANONYMOUSPROXY\":\n case \"POLKADOT_LIKE_KILLANONYMOUS\":\n case \"POLKADOT_LIKE_CHILL\":\n txDataDefaults = genPolkadotLikeTxData(opts.type);\n break;\n case \"RIPPLE_LIKE_SEND\":\n txDataDefaults = genRippleLikeSendData();\n break;\n case \"SOLANA_LIKE_SEND\":\n case \"SOLANA_LIKE_CREATE_DELEGATE_STAKE\":\n case \"SOLANA_LIKE_DELEGATE_STAKE\":\n case \"SOLANA_LIKE_WITHDRAW_STAKE\":\n case \"SOLANA_LIKE_DEACTIVATE_STAKE\":\n case \"SOLANA_LIKE_SPLIT_STAKE\":\n case \"SOLANA_LIKE_SPLIT_DEACTIVATE_STAKE\":\n case \"SOLANA_LIKE_MERGE_STAKE\":\n case \"SOLANA_LIKE_SEND_TOKEN\":\n case \"SOLANA_LIKE_FUND_AND_SEND_TOKEN\":\n case \"SOLANA_LIKE_CREATE_SPL_TOKEN_ACCOUNT\":\n txDataDefaults = genSolanaLikeTxData(opts.type);\n break;\n case \"STELLAR_LIKE_SEND\":\n txDataDefaults = genStellarLikeSendData();\n break;\n case \"TEZOS_LIKE_SEND\":\n case \"TEZOS_LIKE_DELEGATE\":\n case \"TEZOS_LIKE_UNDELEGATE\":\n txDataDefaults = genTezosLikeTxData(opts.type);\n break;\n case \"SUI_LIKE_SEND\":\n case \"SUI_LIKE_SEND_TOKEN\":\n case \"SUI_LIKE_STAKE\":\n case \"SUI_LIKE_UNSTAKE\":\n txDataDefaults = genSuiLikeTxData(opts.type);\n break;\n case \"TRON_LIKE_SEND\":\n case \"TRON_LIKE_SEND_TOKEN\":\n txDataDefaults = genTronLikeTxData(opts.type);\n break;\n default:\n txDataDefaults = unreachable(opts.type);\n break;\n }\n return { ...txDataDefaults, ...opts } as TransactionDataOf<T>;\n};\n","import { faker } from \"@faker-js/faker\";\n\nimport type { AccountType, TransactionDataOf } from \"@/app-lib\";\n\nimport { genOutgoingTxData, type OutgoingTxType } from \"../transactions\";\n\nexport const ACCOUNT_TYPE_DEFAULT_CURRENCY: Record<AccountType, string> = {\n BITCOIN_LIKE: \"bitcoin\",\n CANTON_LIKE: \"canton_network\",\n CARDANO_LIKE: \"cardano\",\n ETHEREUM_LIKE: \"ethereum\",\n GENERIC_LIKE: \"tron\",\n HEDERA_LIKE: \"hedera\",\n POLKADOT_LIKE: \"polkadot\",\n RAW_SIGNING: \"bitcoin\",\n RIPPLE_LIKE: \"ripple\",\n SOLANA_LIKE: \"solana\",\n STELLAR_LIKE: \"stellar\",\n SUI_LIKE: \"sui\",\n TEZOS_LIKE: \"tezos\",\n TRON_LIKE: \"tron\",\n};\n\ntype OutgoingTxOptions<T extends OutgoingTxType> = Partial<TransactionDataOf<T>> & { type: T };\n\nexport const genCreateTransactionData = <T extends OutgoingTxType>(opts?: {\n accountId?: string;\n transaction?: OutgoingTxOptions<T>;\n}): { accountId: string; transaction: TransactionDataOf<T> } => {\n const accountId = opts?.accountId ?? faker.string.uuid();\n const txOpts = opts?.transaction ?? ({ type: \"ETHEREUM_LIKE_SEND\" } as OutgoingTxOptions<T>);\n return {\n accountId,\n transaction: genOutgoingTxData(txOpts),\n };\n};\n","import { faker } from \"@faker-js/faker\";\n\nimport type { RequestDataOf } from \"@/app-lib\";\n\nimport { genPubKey } from \"../utils\";\n\nexport const genCreatePsdUserData = (\n opts?: Partial<RequestDataOf<\"CREATE_PSD_USER\">>,\n): RequestDataOf<\"CREATE_PSD_USER\"> => ({\n registrationId: faker.string.uuid(),\n ...opts,\n});\n\nexport const genCreateApiUserData = (\n opts?: Partial<RequestDataOf<\"CREATE_API_USER\">>,\n): RequestDataOf<\"CREATE_API_USER\"> => ({\n name: faker.person.firstName(),\n pubKey: genPubKey(),\n role: \"OPERATOR\",\n viewAll: false,\n ...opts,\n});\n\nexport const genCreateApiUserAccessData = (\n opts?: Partial<RequestDataOf<\"CREATE_API_USER_ACCESS\">>,\n): RequestDataOf<\"CREATE_API_USER_ACCESS\"> => ({\n name: faker.person.firstName(),\n ...opts,\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { RequestDataOf } from \"@/app-lib\";\n\nexport const genCreateWhitelistData = (\n opts?: Partial<RequestDataOf<\"CREATE_WHITELIST\">>,\n): RequestDataOf<\"CREATE_WHITELIST\"> => ({\n name: faker.word.noun({ length: { min: 5, max: 19 } }),\n description: faker.lorem.sentence(),\n type: faker.helpers.arrayElement([\"TRANSACTION\", \"SMART_CONTRACT\"] as const),\n addresses: [\n {\n name: faker.lorem.words(3),\n currency: \"bitcoin\",\n address: faker.finance.bitcoinAddress(),\n destinationTags: [],\n },\n {\n name: faker.lorem.words(3),\n currency: \"ethereum\",\n address: faker.finance.ethereumAddress(),\n destinationTags: [],\n },\n ],\n ...opts,\n});\n\nexport const genEditWhitelistData = (\n opts?: Partial<RequestDataOf<\"EDIT_WHITELIST\">>,\n): RequestDataOf<\"EDIT_WHITELIST\"> => ({\n name: faker.word.noun({ length: { min: 5, max: 19 } }),\n addresses: [\n {\n name: faker.lorem.words(3),\n currency: \"bitcoin\",\n address: faker.finance.bitcoinAddress(),\n destinationTags: [],\n },\n {\n name: faker.lorem.words(3),\n currency: \"ethereum\",\n address: faker.finance.ethereumAddress(),\n destinationTags: [],\n },\n ],\n ...opts,\n});\n","import type { RequestDataOf } from \"@/app-lib\";\n\nexport const genWorkspaceRuleData = (\n opts?: Partial<RequestDataOf<\"EDIT_WORKSPACE_RULE\">>,\n): RequestDataOf<\"EDIT_WORKSPACE_RULE\"> => ({\n permission: \"CREATE_ACCOUNT_WITH_POLICY\",\n reviewConfig: [{ userIds: [], quorum: 2 }],\n ...opts,\n});\n","import type { RequestDataOf } from \"@/app-lib\";\n\nimport { unreachable } from \"../utils\";\nimport { genCreateAccountData, genEditAccountData, genEditTokenRuleData } from \"./account\";\nimport { genCreateApiKeyData, genEditApiKeyData } from \"./api-key\";\nimport { genCreateEntityData, genEditEntityData } from \"./entity\";\nimport { genCreateGroupData, genEditGroupData } from \"./group\";\nimport { genSignDigestsData, genSignMessageData } from \"./message-signature\";\nimport { genCreatePolicyData, genEditPolicyData } from \"./policy\";\nimport { genCreateSciConfigData, genEditSciConfigData } from \"./sciconfig\";\nimport {\n genTradelinkAdjustPledgeData,\n genTradelinkArbitrationData,\n genTradelinkCreateSettlementData,\n genTradelinkForceUnpledgeData,\n genTradelinkRepledgeData,\n genTradelinkWithdrawData,\n} from \"./tradelink\";\nimport { genCreateTransactionData } from \"./transaction\";\nimport { genCreateApiUserAccessData, genCreateApiUserData, genCreatePsdUserData } from \"./user\";\nimport { genCreateWhitelistData, genEditWhitelistData } from \"./whitelist\";\nimport { genWorkspaceRuleData } from \"./workspace-rule\";\n\n// Re-export all per-domain generators\nexport {\n genCreateAccountData,\n genEditAccountData,\n genEditTokenRuleData,\n genCreateApiKeyData,\n genEditApiKeyData,\n genCreateEntityData,\n genEditEntityData,\n genCreateGroupData,\n genEditGroupData,\n genSignDigestsData,\n genSignMessageData,\n genCreatePolicyData,\n genEditPolicyData,\n genCreateSciConfigData,\n genEditSciConfigData,\n genTradelinkAdjustPledgeData,\n genTradelinkArbitrationData,\n genTradelinkCreateSettlementData,\n genTradelinkForceUnpledgeData,\n genTradelinkRepledgeData,\n genTradelinkWithdrawData,\n genCreateTransactionData,\n genCreateApiUserAccessData,\n genCreateApiUserData,\n genCreatePsdUserData,\n genCreateWhitelistData,\n genEditWhitelistData,\n genWorkspaceRuleData,\n};\n\nexport { ACCOUNT_TYPE_DEFAULT_CURRENCY } from \"./transaction\";\n\nexport type RequestDataTypes = {\n // Workspace...\n UPDATE_QUORUM: RequestDataOf<\"UPDATE_QUORUM\">;\n // User...\n CREATE_PSD_USER: RequestDataOf<\"CREATE_PSD_USER\">;\n CREATE_API_USER: RequestDataOf<\"CREATE_API_USER\">;\n CREATE_API_USER_ACCESS: RequestDataOf<\"CREATE_API_USER_ACCESS\">;\n REVOKE_USER: Record<string, never>;\n // Admin gov rule...\n EDIT_WORKSPACE_RULE: RequestDataOf<\"EDIT_WORKSPACE_RULE\">;\n // Group...\n CREATE_GROUP: RequestDataOf<\"CREATE_GROUP\">;\n EDIT_GROUP: RequestDataOf<\"EDIT_GROUP\">;\n REVOKE_GROUP: Record<string, never>;\n // API key...\n CREATE_API_KEY: RequestDataOf<\"CREATE_API_KEY\">;\n EDIT_API_KEY: RequestDataOf<\"EDIT_API_KEY\">;\n REVOKE_API_KEY: Record<string, never>;\n // Whitelist...\n CREATE_WHITELIST: RequestDataOf<\"CREATE_WHITELIST\">;\n EDIT_WHITELIST: RequestDataOf<\"EDIT_WHITELIST\">;\n // Entity...\n CREATE_ENTITY: RequestDataOf<\"CREATE_ENTITY\">;\n EDIT_ENTITY: RequestDataOf<\"EDIT_ENTITY\">;\n REVOKE_ENTITY: Record<string, never>;\n // Account...\n CREATE_ACCOUNT: RequestDataOf<\"CREATE_ACCOUNT\">;\n EDIT_ACCOUNT: RequestDataOf<\"EDIT_ACCOUNT\">;\n EDIT_TOKEN_RULE: RequestDataOf<\"EDIT_TOKEN_RULE\">;\n // Operator requests...\n CREATE_TRANSACTION: RequestDataOf<\"CREATE_TRANSACTION\">;\n SIGN_MESSAGE: RequestDataOf<\"SIGN_MESSAGE\">;\n SIGN_DIGESTS: RequestDataOf<\"SIGN_DIGESTS\">;\n // SCI config ...\n CREATE_SCICONFIG: RequestDataOf<\"CREATE_SCICONFIG\">;\n EDIT_SCICONFIG: RequestDataOf<\"EDIT_SCICONFIG\">;\n // Policy\n CREATE_POLICY: RequestDataOf<\"CREATE_POLICY\">;\n EDIT_POLICY: RequestDataOf<\"EDIT_POLICY\">;\n // Tradelink...\n TRADELINK_ADJUST_PLEDGE: RequestDataOf<\"TRADELINK_ADJUST_PLEDGE\">;\n TRADELINK_REPLEDGE: RequestDataOf<\"TRADELINK_REPLEDGE\">;\n TRADELINK_CREATE_SETTLEMENT: RequestDataOf<\"TRADELINK_CREATE_SETTLEMENT\">;\n TRADELINK_FORCE_UNPLEDGE: RequestDataOf<\"TRADELINK_FORCE_UNPLEDGE\">;\n TRADELINK_WITHDRAW: RequestDataOf<\"TRADELINK_WITHDRAW\">;\n TRADELINK_ARBITRATE: RequestDataOf<\"TRADELINK_ARBITRATE\">;\n};\n\nexport const genRequestData = <T extends keyof RequestDataTypes>(\n type: T,\n opts?: Partial<RequestDataTypes[T]>,\n): RequestDataTypes[T] => {\n type R = RequestDataTypes[T];\n\n switch (type) {\n // Workspace...\n case \"UPDATE_QUORUM\":\n return { quorum: 3, ...opts } as R;\n\n // User...\n case \"CREATE_PSD_USER\":\n return genCreatePsdUserData(opts) as R;\n case \"CREATE_API_USER\":\n return genCreateApiUserData(opts) as R;\n case \"CREATE_API_USER_ACCESS\":\n return genCreateApiUserAccessData(opts) as R;\n case \"REVOKE_USER\":\n return {} as R;\n\n // Admin gov rule...\n case \"EDIT_WORKSPACE_RULE\":\n return genWorkspaceRuleData(opts) as R;\n\n // Group...\n case \"CREATE_GROUP\":\n return genCreateGroupData(opts) as R;\n case \"EDIT_GROUP\":\n return genEditGroupData(opts) as R;\n case \"REVOKE_GROUP\":\n return {} as R;\n\n // ApiKey...\n case \"CREATE_API_KEY\":\n return genCreateApiKeyData(opts) as R;\n case \"EDIT_API_KEY\":\n return genEditApiKeyData(opts) as R;\n case \"REVOKE_API_KEY\":\n return {} as R;\n\n // Whitelist...\n case \"CREATE_WHITELIST\":\n return genCreateWhitelistData(opts) as R;\n case \"EDIT_WHITELIST\":\n return genEditWhitelistData(opts) as R;\n\n // Entity...\n case \"CREATE_ENTITY\":\n return genCreateEntityData(opts) as R;\n case \"EDIT_ENTITY\":\n return genEditEntityData(opts) as R;\n case \"REVOKE_ENTITY\":\n return {} as R;\n\n // Account...\n case \"CREATE_ACCOUNT\":\n return genCreateAccountData(opts) as R;\n case \"EDIT_ACCOUNT\":\n return genEditAccountData(opts) as R;\n case \"EDIT_TOKEN_RULE\":\n return genEditTokenRuleData(opts) as R;\n\n // Operator requests...\n case \"CREATE_TRANSACTION\":\n return genCreateTransactionData(opts) as R;\n case \"SIGN_MESSAGE\":\n return genSignMessageData(opts) as R;\n case \"SIGN_DIGESTS\":\n return genSignDigestsData(opts) as R;\n\n // SCI config...\n case \"CREATE_SCICONFIG\":\n return genCreateSciConfigData(opts) as R;\n case \"EDIT_SCICONFIG\":\n return genEditSciConfigData(opts) as R;\n\n // Policy\n case \"CREATE_POLICY\":\n return genCreatePolicyData(opts) as R;\n case \"EDIT_POLICY\":\n return genEditPolicyData(opts) as R;\n\n // Tradelink...\n case \"TRADELINK_ADJUST_PLEDGE\":\n return genTradelinkAdjustPledgeData(opts) as R;\n case \"TRADELINK_CREATE_SETTLEMENT\":\n return genTradelinkCreateSettlementData(opts) as R;\n case \"TRADELINK_FORCE_UNPLEDGE\":\n return genTradelinkForceUnpledgeData(opts) as R;\n case \"TRADELINK_WITHDRAW\":\n return genTradelinkWithdrawData(opts) as R;\n case \"TRADELINK_REPLEDGE\":\n return genTradelinkRepledgeData(opts) as R;\n case \"TRADELINK_ARBITRATE\":\n return genTradelinkArbitrationData(opts) as R;\n\n default:\n return unreachable(type);\n }\n};\n","import { faker } from \"@faker-js/faker\";\n\nimport type {\n AccountResponse,\n AccountType,\n GroupResponse,\n UserResponse,\n VaultRequestResponse,\n WebhookResponse,\n WhitelistResponse,\n} from \"@/app-lib\";\n\nimport {\n ACCOUNT_TYPE_DEFAULT_CURRENCY,\n genRequestData,\n type RequestDataTypes,\n} from \"./request-data\";\nimport { genHexString, genPubKey, genUniqueName } from \"./utils\";\n\n// All AccountType values as a typed array (string literals, no Prisma import).\nconst ACCOUNT_TYPES: AccountType[] = [\n \"BITCOIN_LIKE\",\n \"CANTON_LIKE\",\n \"CARDANO_LIKE\",\n \"ETHEREUM_LIKE\",\n \"GENERIC_LIKE\",\n \"HEDERA_LIKE\",\n \"POLKADOT_LIKE\",\n \"RAW_SIGNING\",\n \"RIPPLE_LIKE\",\n \"SOLANA_LIKE\",\n \"STELLAR_LIKE\",\n \"SUI_LIKE\",\n \"TEZOS_LIKE\",\n \"TRON_LIKE\",\n];\n\nconst genAssetFields = (type: AccountType): AccountResponse[\"asset\"] => {\n switch (type) {\n case \"RAW_SIGNING\":\n case \"GENERIC_LIKE\":\n return { type };\n case \"BITCOIN_LIKE\":\n return { type, xpub: genHexString(120, \"lower\") };\n case \"CANTON_LIKE\":\n case \"CARDANO_LIKE\":\n case \"POLKADOT_LIKE\":\n case \"RIPPLE_LIKE\":\n case \"STELLAR_LIKE\":\n case \"SUI_LIKE\":\n case \"TEZOS_LIKE\":\n return { type, address: faker.string.alphanumeric({ length: 34 }) };\n case \"ETHEREUM_LIKE\":\n case \"SOLANA_LIKE\":\n case \"TRON_LIKE\":\n return { type, address: faker.string.alphanumeric({ length: 42 }) };\n case \"HEDERA_LIKE\":\n return {\n type,\n address: `0.0.${faker.number.int({ min: 10000000, max: 99999999 })}`,\n isActivated: faker.datatype.boolean(),\n };\n }\n};\n\nexport const genAccountResponse = (\n opts?: Partial<{\n type: AccountType;\n governanceType: \"CLASSIC\" | \"RAW_SIGNING\" | \"TRADELINK\";\n }>,\n): AccountResponse => {\n const type = opts?.type ?? faker.helpers.arrayElement(ACCOUNT_TYPES);\n const governanceType = opts?.governanceType ?? \"CLASSIC\";\n const currency = ACCOUNT_TYPE_DEFAULT_CURRENCY[type];\n const id = faker.string.uuid();\n\n const governance =\n governanceType === \"TRADELINK\"\n ? {\n type: governanceType,\n assetManagerId: faker.string.uuid(),\n exchangeConfigs: [],\n }\n : {\n type: governanceType,\n policyId: faker.string.uuid(),\n };\n\n return {\n id,\n legacyId: faker.number.int({ min: 1, max: 2000000000 }),\n name: genUniqueName(),\n currency,\n network: currency,\n contractAddress: null,\n tokenIdentifier: null,\n index: faker.number.int({ min: 0, max: 10 }),\n derivationPath: \"m/44'/0'/0'\",\n status: \"ACTIVE\" as const,\n createdAt: faker.date.past(),\n updatedAt: faker.date.past(),\n asset: genAssetFields(type),\n governance,\n };\n};\n\nexport const genUserResponse = (opts?: Partial<UserResponse>): UserResponse => {\n const role = opts?.role ?? faker.helpers.arrayElement([\"ADMIN\", \"OPERATOR\"]);\n const deviceType = opts?.deviceType ?? (role === \"READ_ONLY_API_KEY\" ? \"API\" : \"PSD\");\n return {\n id: faker.string.uuid(),\n legacyId: faker.number.int({ min: 1, max: 2000000000 }),\n legacyViewAll: false,\n workspaceName: faker.string.alphanumeric({ length: 16, casing: \"lower\" }),\n name: faker.person.fullName(),\n deviceUserId: deviceType === \"API\" ? null : genHexString(16, \"lower\"),\n deviceType,\n role,\n pubKey: genPubKey(),\n status: \"ACTIVE\" as const,\n isSuspended: false,\n createdAt: faker.date.past(),\n updatedAt: faker.date.past(),\n ...opts,\n };\n};\n\nexport const genGroupResponse = (opts?: Partial<GroupResponse>): GroupResponse => ({\n id: faker.string.uuid(),\n legacyId: faker.number.int({ min: 1, max: 2000000000 }),\n name: faker.word.noun({ length: { min: 5, max: 19 } }),\n description: faker.lorem.sentence(),\n status: \"ACTIVE\" as const,\n members: [],\n createdAt: faker.date.past(),\n updatedAt: faker.date.past(),\n ...opts,\n});\n\nexport const genWhitelistResponse = (opts?: Partial<WhitelistResponse>): WhitelistResponse => ({\n id: faker.string.uuid(),\n legacyId: faker.number.int({ min: 1, max: 2000000000 }),\n name: faker.lorem.words(3),\n status: \"ACTIVE\" as const,\n addresses: [\n {\n name: faker.lorem.words(3),\n currency: \"bitcoin\",\n address: faker.finance.bitcoinAddress(),\n destinationTags: [],\n },\n {\n name: faker.lorem.words(3),\n currency: \"ethereum\",\n address: faker.finance.ethereumAddress(),\n destinationTags: [],\n },\n ],\n createdAt: faker.date.past(),\n updatedAt: faker.date.past(),\n description: faker.lorem.sentence(),\n ...opts,\n});\n\n/** Request types that have a `targetId` field */\nconst TYPES_WITH_TARGET_ID: (keyof RequestDataTypes)[] = [\n \"EDIT_ACCOUNT\",\n \"EDIT_TOKEN_RULE\",\n \"EDIT_GROUP\",\n \"REVOKE_GROUP\",\n \"EDIT_WHITELIST\",\n \"EDIT_ENTITY\",\n \"REVOKE_ENTITY\",\n \"REVOKE_USER\",\n \"EDIT_POLICY\",\n \"REVOKE_API_KEY\",\n];\n\nexport const genVaultRequestResponse = <T extends keyof RequestDataTypes>(opts: {\n type: T;\n data?: Partial<RequestDataTypes[T]>;\n}): VaultRequestResponse => {\n const { type, data: dataOpts } = opts;\n const data = genRequestData(type, dataOpts);\n const targetId = TYPES_WITH_TARGET_ID.includes(type) ? faker.string.uuid() : null;\n return {\n id: faker.string.uuid(),\n legacyId: faker.number.int({ min: 1, max: 2000000000 }),\n type,\n state: \"PENDING_APPROVAL\" as const,\n reviewSteps: [{ stageName: \"default\", quorum: 2 }],\n currentStepIndex: 0,\n expiresAt: faker.date.future(),\n targetId,\n note: null,\n reviews: [],\n createdAt: faker.date.past(),\n updatedAt: faker.date.past(),\n createdById: faker.string.uuid(),\n data,\n } as VaultRequestResponse;\n};\n\nexport const genWebhookResponse = (opts?: Partial<WebhookResponse>): WebhookResponse => ({\n id: faker.string.uuid(),\n actions: faker.helpers.arrayElements([\n \"REQUEST_CREATED\",\n \"REQUEST_RECEIVED_APPROVAL\",\n \"REQUEST_RECEIVED_REJECTION\",\n \"REQUEST_ACTIVATED_REVIEWS\",\n \"REQUEST_EXECUTING\",\n \"REQUEST_EXECUTED\",\n \"REQUEST_ABORTED\",\n \"REQUEST_FAILED\",\n \"REQUEST_EXPIRED\",\n ]),\n url: faker.internet.url(),\n createdAt: faker.date.past(),\n ...opts,\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { AccountStakingFields, AccountType } from \"@/app-lib\";\n\nexport const genAccountStakingFields = (opts: {\n type: AccountType;\n contractAddress: string | null;\n}): AccountStakingFields | null => {\n // No staking for token account\n if (opts.contractAddress !== null) {\n return null;\n }\n\n switch (opts.type) {\n case \"BITCOIN_LIKE\":\n return null;\n case \"CANTON_LIKE\":\n return null;\n case \"CARDANO_LIKE\":\n return {\n type: \"CARDANO_LIKE\",\n staking: {\n staked: faker.number.int().toString(),\n },\n };\n case \"ETHEREUM_LIKE\":\n return {\n type: \"ETHEREUM_LIKE\",\n staking: {\n totalStaking: faker.number.int().toString(),\n totalRewards: faker.number.int().toString(),\n availableRewards: faker.number.int().toString(),\n networkApy: faker.number.float({ min: 0, max: 1 }),\n },\n };\n case \"GENERIC_LIKE\":\n return null;\n case \"POLKADOT_LIKE\":\n return {\n type: \"POLKADOT_LIKE\",\n staking: {\n info: {\n controllerAddress: \"<fake-controller-address>\",\n rewardsDestination: \"<fake-rewards-destination>\",\n proxies: [\"<fake-proxy>\"],\n legacyStaking: false,\n isNominator: false,\n },\n balances: {\n free: faker.number.int().toString(),\n reserved: faker.number.int().toString(),\n frozen: faker.number.int().toString(),\n bonded: faker.number.int().toString(),\n available: faker.number.int().toString(),\n unbonding: [\n { amount: faker.number.int().toString(), waiting_time: \"<fake-waiting-time>\" },\n ],\n unbonded: [\n { amount: faker.number.int().toString(), waiting_time: \"<fake-waiting-time>\" },\n ],\n totalUnbonding: faker.number.int().toString(),\n totalUnbonded: faker.number.int().toString(),\n },\n anonymousProxy: {\n address: \"<fake-anonymous-proxy-address>\",\n createdAt: faker.date.past().toISOString(),\n isController: false,\n isMain: false,\n balances: {\n free: faker.number.int().toString(),\n reserved: faker.number.int().toString(),\n frozen: faker.number.int().toString(),\n bonded: faker.number.int().toString(),\n available: faker.number.int().toString(),\n total: faker.number.int().toString(),\n },\n blockHeight: faker.number.int().toString(),\n extIndex: faker.number.int().toString(),\n index: faker.number.int().toString(),\n kind: \"<fake-kind>\",\n },\n },\n };\n case \"RAW_SIGNING\":\n return null;\n case \"RIPPLE_LIKE\":\n return null;\n case \"SOLANA_LIKE\":\n return {\n type: \"SOLANA_LIKE\",\n staking: {\n staked: faker.number.int().toString(),\n rewards: {\n total: faker.number.int().toString(),\n last7: faker.number.int().toString(),\n last30: faker.number.int().toString(),\n },\n stakes: [\n {\n uid: \"<fake-stake-uid>\",\n baseAccountUid: \"<fake-base-account-uid>\",\n pubKey: \"<fake-pub-key>\",\n validatorPubKey: \"<fake-validator-pub-key>\",\n initialAmount: faker.number.int().toString(),\n activeAmount: faker.number.int().toString(),\n inactiveAmount: faker.number.int().toString(),\n totalBalance: faker.number.int().toString(),\n creationDate: faker.date.past().toISOString(),\n activationEpoch: faker.date.past().toISOString(),\n activationDate: faker.date.past().toISOString(),\n deactivationEpoch: \"<fake-deactivation-epoch>\",\n deactivationDate: faker.date.past().toISOString(),\n status: \"activated\",\n rentExemptReserve: faker.number.int().toString(),\n withdrawableAmount: faker.number.int().toString(),\n totalRewards: faker.number.int().toString(),\n creationTxHash: \"<fake-creation-tx-hash>\",\n actionsTxHashes: [\"<fake-action-tx-hash>\"],\n },\n ],\n },\n };\n case \"STELLAR_LIKE\":\n return null;\n case \"SUI_LIKE\":\n return {\n type: \"SUI_LIKE\",\n staking: {\n totalStaked: faker.number.int().toString(),\n totalRewards: faker.number.int().toString(),\n },\n };\n case \"TEZOS_LIKE\":\n return {\n type: \"TEZOS_LIKE\",\n staking: {\n delegations: [{ address: faker.string.alpha({ length: 10 }) }],\n },\n };\n case \"TRON_LIKE\":\n return null;\n case \"HEDERA_LIKE\":\n return null;\n }\n};\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/__fakes__/trpc/utils.ts","../src/__fakes__/trpc/inputs.ts","../src/__fakes__/trpc/request-data/account.ts","../src/__fakes__/trpc/request-data/api-key.ts","../src/__fakes__/trpc/request-data/entity.ts","../src/__fakes__/trpc/request-data/group.ts","../src/__fakes__/trpc/request-data/message-signature.ts","../src/__fakes__/trpc/request-data/policy.ts","../src/__fakes__/trpc/request-data/sciconfig.ts","../src/__fakes__/trpc/request-data/tradelink.ts","../src/__fakes__/trpc/transactions/bitcoin.ts","../src/__fakes__/trpc/transactions/canton.ts","../src/__fakes__/trpc/transactions/cardano.ts","../src/__fakes__/trpc/transactions/ethereum.ts","../src/__fakes__/trpc/transactions/generic.ts","../src/__fakes__/trpc/transactions/hedera.ts","../src/__fakes__/trpc/transactions/polkadot.ts","../src/__fakes__/trpc/transactions/ripple.ts","../src/__fakes__/trpc/transactions/solana.ts","../src/__fakes__/trpc/transactions/stellar.ts","../src/__fakes__/trpc/transactions/sui.ts","../src/__fakes__/trpc/transactions/tezos.ts","../src/__fakes__/trpc/transactions/tron.ts","../src/__fakes__/trpc/transactions/index.ts","../src/__fakes__/trpc/request-data/transaction.ts","../src/__fakes__/trpc/request-data/user.ts","../src/__fakes__/trpc/request-data/whitelist.ts","../src/__fakes__/trpc/request-data/workspace-rule.ts","../src/__fakes__/trpc/request-data/index.ts","../src/__fakes__/trpc/responses.ts","../src/__fakes__/trpc/staking.ts"],"names":["faker"],"mappings":"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","file":"fakes.mjs","sourcesContent":["import { faker } from \"@faker-js/faker\";\n\nexport const unreachable = (value: never): never => {\n throw new Error(`Type checker should have prevented you from reaching here: ${value}`);\n};\n\nexport const genPubKey = (): string =>\n `04${faker.string.hexadecimal({ prefix: \"\", casing: \"lower\", length: 128 })}`;\n\nexport const genHexString = (length: number, casing: \"lower\" | \"upper\"): string =>\n faker.string.hexadecimal({ prefix: \"\", casing, length });\n\nexport const genUniqueName = (length = 20): string =>\n faker.string.alphanumeric({ length, casing: \"lower\" });\n","import { faker } from \"@faker-js/faker\";\n\nimport type { VaultRequestCreateInput } from \"@/app-lib\";\n\nimport { genHexString } from \"./utils\";\n\nexport type RequestInputDataOf<T extends VaultRequestCreateInput[\"request\"][\"type\"]> = Extract<\n VaultRequestCreateInput[\"request\"],\n { type: T }\n>[\"data\"];\n\nexport const genSignMessageInputData = (\n opts?: Partial<RequestInputDataOf<\"SIGN_MESSAGE\">>,\n): RequestInputDataOf<\"SIGN_MESSAGE\"> => ({\n message: {\n type: \"EIP191\",\n data: genHexString(10, \"upper\"),\n },\n accountId: faker.string.uuid(),\n ...opts,\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { RequestDataOf } from \"@/app-lib\";\n\nimport { genUniqueName } from \"../utils\";\n\nexport const genCreateAccountData = (\n opts?: Partial<RequestDataOf<\"CREATE_ACCOUNT\">>,\n): RequestDataOf<\"CREATE_ACCOUNT\"> => ({\n name: genUniqueName(),\n type: \"BITCOIN_LIKE\",\n currency: \"bitcoin\",\n contractAddress: null,\n tokenIdentifier: null,\n governance: {\n type: \"CLASSIC\",\n policy: { rules: [] },\n },\n index: 0,\n derivationPath: \"m/84'/0'/0'\",\n ...opts,\n});\n\nexport const genEditAccountData = (\n opts?: Partial<RequestDataOf<\"EDIT_ACCOUNT\">>,\n): RequestDataOf<\"EDIT_ACCOUNT\"> => ({\n name: genUniqueName(),\n governance: {\n type: \"CLASSIC\",\n policy: { rules: [] },\n },\n ...opts,\n});\n\nexport const genEditTokenRuleData = (\n opts?: Partial<RequestDataOf<\"EDIT_TOKEN_RULE\">>,\n): RequestDataOf<\"EDIT_TOKEN_RULE\"> => ({\n parentAccountId: faker.string.uuid(),\n contractAddress: faker.string.alphanumeric({ length: 44 }),\n rules: [\n {\n operationType: \"SEND\",\n reviewSteps: [{ quorum: 1, userIds: [] }],\n },\n ],\n ...opts,\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { RequestDataOf } from \"@/app-lib\";\n\nexport const genCreateApiKeyData = (\n opts?: Partial<RequestDataOf<\"CREATE_API_KEY\">>,\n): RequestDataOf<\"CREATE_API_KEY\"> => ({\n name: faker.company.name().slice(0, 19),\n entities: [],\n scopes: {},\n ...opts,\n});\n\nexport const genEditApiKeyData = (\n opts?: Partial<RequestDataOf<\"EDIT_API_KEY\">>,\n): RequestDataOf<\"EDIT_API_KEY\"> => ({\n name: faker.company.name().slice(0, 19),\n entities: [],\n scopes: {},\n ...opts,\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { RequestDataOf } from \"@/app-lib\";\n\nexport const genCreateEntityData = (\n opts?: Partial<RequestDataOf<\"CREATE_ENTITY\">>,\n): RequestDataOf<\"CREATE_ENTITY\"> => ({\n name: faker.word.noun({ length: { min: 5, max: 19 } }),\n accountIds: [],\n memberIds: [],\n ...opts,\n});\n\nexport const genEditEntityData = (\n opts?: Partial<RequestDataOf<\"EDIT_ENTITY\">>,\n): RequestDataOf<\"EDIT_ENTITY\"> => ({\n name: faker.word.noun({ length: { min: 5, max: 19 } }),\n accountIds: [],\n memberIds: [],\n ...opts,\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { RequestDataOf } from \"@/app-lib\";\n\nexport const genCreateGroupData = (\n opts?: Partial<RequestDataOf<\"CREATE_GROUP\">>,\n): RequestDataOf<\"CREATE_GROUP\"> => ({\n name: faker.word.noun({ length: { min: 5, max: 19 } }),\n description: faker.lorem.sentence(),\n members: [],\n ...opts,\n});\n\nexport const genEditGroupData = (\n opts?: Partial<RequestDataOf<\"EDIT_GROUP\">>,\n): RequestDataOf<\"EDIT_GROUP\"> => ({\n name: faker.word.noun({ length: { min: 5, max: 19 } }),\n description: faker.lorem.sentence(),\n members: [],\n ...opts,\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { MessageType, RequestDataOf } from \"@/app-lib\";\n\nimport { genHexString } from \"../utils\";\n\nexport const genSignMessageData = (\n opts?: Partial<RequestDataOf<\"SIGN_MESSAGE\">> & { messageType?: MessageType },\n): RequestDataOf<\"SIGN_MESSAGE\"> => {\n const messageType = opts?.messageType ?? opts?.message?.type ?? \"EIP191\";\n let message: RequestDataOf<\"SIGN_MESSAGE\">[\"message\"];\n switch (messageType) {\n case \"EIP191\":\n message = {\n type: \"EIP191\",\n data: genHexString(10, \"upper\"),\n };\n break;\n case \"EIP712\":\n message = {\n type: \"EIP712\",\n data: {\n types: {\n EIP712Domain: [\n { name: \"name\", type: \"string\" },\n { name: \"version\", type: \"string\" },\n { name: \"chainId\", type: \"uint256\" },\n { name: \"verifyingContract\", type: \"address\" },\n ],\n PrimaryType: [\n { name: \"a\", type: \"int256\" },\n { name: \"b\", type: \"bool\" },\n ],\n },\n primaryType: \"PrimaryType\",\n domain: {\n name: \"Test Domain\",\n version: \"1\",\n chainId: 1,\n verifyingContract: \"0x1234567890123456789012345678901234567890\",\n },\n message: {\n a: faker.number.int({ min: 0, max: 1000 }),\n b: faker.datatype.boolean(),\n },\n },\n };\n break;\n case \"CIP8\":\n case \"BIP137\":\n throw new Error(`Unsupported message type in fakes: ${messageType}`);\n }\n return {\n message,\n accountId: faker.string.uuid(),\n address: faker.finance.ethereumAddress(),\n derivationPath: \"44'/60'/0'/0/0\",\n ...opts,\n };\n};\n\nexport const genSignDigestsData = (\n opts?: Partial<RequestDataOf<\"SIGN_DIGESTS\">>,\n): RequestDataOf<\"SIGN_DIGESTS\"> => ({\n accountId: faker.string.uuid(),\n digests: [\n {\n digest: faker.string.hexadecimal({ prefix: \"\", length: 64 }),\n derivationPath: \"m/44'/60'/0'\",\n },\n ],\n ...opts,\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { RequestDataOf } from \"@/app-lib\";\n\nexport const genCreatePolicyData = (\n opts?: Partial<RequestDataOf<\"CREATE_POLICY\">>,\n): RequestDataOf<\"CREATE_POLICY\"> => ({\n name: faker.word.noun({ length: { min: 5, max: 19 } }),\n description: faker.lorem.sentence(),\n currency: \"bitcoin\",\n govRules: [],\n ...opts,\n});\n\nexport const genEditPolicyData = (\n opts?: Partial<RequestDataOf<\"EDIT_POLICY\">>,\n): RequestDataOf<\"EDIT_POLICY\"> => ({\n name: faker.word.noun({ length: { min: 5, max: 19 } }),\n description: faker.lorem.sentence(),\n govRules: [],\n ...opts,\n});\n","import { faker } from \"@faker-js/faker\";\nimport { times } from \"lodash-es\";\n\nimport type { RequestDataOf } from \"@/app-lib\";\n\nexport const genCreateSciConfigData = (\n opts?: Partial<RequestDataOf<\"CREATE_SCICONFIG\">>,\n): RequestDataOf<\"CREATE_SCICONFIG\"> => ({\n account: faker.string.uuid(),\n config: {\n dapps: times(faker.number.int({ min: 0, max: 5 }), () => faker.word.noun()),\n customContractCallEnabled: faker.datatype.boolean(),\n },\n ...opts,\n});\n\nexport const genEditSciConfigData = (\n opts?: Partial<RequestDataOf<\"EDIT_SCICONFIG\">>,\n): RequestDataOf<\"EDIT_SCICONFIG\"> => ({\n config: {\n dapps: times(faker.number.int({ min: 0, max: 5 }), () => faker.word.noun()),\n customContractCallEnabled: faker.datatype.boolean(),\n },\n ...opts,\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { RequestDataOf } from \"@/app-lib\";\n\nexport const genTradelinkAdjustPledgeData = (\n opts?: Partial<RequestDataOf<\"TRADELINK_ADJUST_PLEDGE\">>,\n): RequestDataOf<\"TRADELINK_ADJUST_PLEDGE\"> => ({\n accountId: faker.string.uuid(),\n exchangeId: faker.string.uuid(),\n amount: \"42\",\n ...opts,\n});\n\nexport const genTradelinkRepledgeData = (\n opts?: Partial<RequestDataOf<\"TRADELINK_REPLEDGE\">>,\n): RequestDataOf<\"TRADELINK_REPLEDGE\"> => ({\n accountId: faker.string.uuid(),\n exchangeId: faker.string.uuid(),\n amount: \"42\",\n ...opts,\n});\n\nexport const genTradelinkCreateSettlementData = (\n opts?: Partial<RequestDataOf<\"TRADELINK_CREATE_SETTLEMENT\">>,\n): RequestDataOf<\"TRADELINK_CREATE_SETTLEMENT\"> => ({\n accountId: faker.string.uuid(),\n exchangeId: faker.string.uuid(),\n transaction: {\n type: \"BITCOIN_LIKE_SEND\",\n amount: \"42\",\n currency: \"bitcoin\",\n maxFee: \"999\",\n recipient: faker.finance.bitcoinAddress(),\n feeStrategy: { type: \"NORMAL\" },\n },\n ...opts,\n});\n\nexport const genTradelinkForceUnpledgeData = (\n opts?: Partial<RequestDataOf<\"TRADELINK_FORCE_UNPLEDGE\">>,\n): RequestDataOf<\"TRADELINK_FORCE_UNPLEDGE\"> => ({\n accountId: faker.string.uuid(),\n exchangeId: faker.string.uuid(),\n ...opts,\n});\n\nexport const genTradelinkWithdrawData = (\n opts?: Partial<RequestDataOf<\"TRADELINK_WITHDRAW\">>,\n): RequestDataOf<\"TRADELINK_WITHDRAW\"> => ({\n accountId: faker.string.uuid(),\n transaction: {\n type: \"ETHEREUM_LIKE_SEND\",\n recipient: \"0x63e4195AF1509490b430F3f5bCb85A82a24F5C82\",\n amount: faker.number.bigInt({ min: 0, max: 99 }).toString(),\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n currency: \"ethereum\",\n feeStrategy: {\n type: \"NORMAL\",\n gasPrice: \"2\",\n gasLimit: \"10\",\n },\n },\n ...opts,\n});\n\nexport const genTradelinkArbitrationData = (\n opts?: Partial<RequestDataOf<\"TRADELINK_ARBITRATE\">>,\n): RequestDataOf<\"TRADELINK_ARBITRATE\"> => ({\n accountId: faker.string.uuid(),\n transaction: {\n type: \"ETHEREUM_LIKE_SEND\",\n recipient: \"0xcefd70CFCd7a2FAa0fe956E3d496F9313297CB44\",\n amount: faker.number.bigInt({ min: 0, max: 99 }).toString(),\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n currency: \"ethereum\",\n feeStrategy: {\n type: \"NORMAL\",\n gasPrice: \"2\",\n gasLimit: \"10\",\n },\n },\n ...opts,\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { TransactionDataOf } from \"@/app-lib\";\n\nexport const genBitcoinLikeSendData = (): TransactionDataOf<\"BITCOIN_LIKE_SEND\"> => ({\n type: \"BITCOIN_LIKE_SEND\" as const,\n currency: \"bitcoin\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n recipient: faker.finance.bitcoinAddress(),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\", \"CUSTOM\"] as const),\n feePerByte: faker.number.bigInt({ min: 1 }).toString(),\n },\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { TransactionDataOf } from \"@/app-lib\";\n\ntype CantonTxType =\n | \"CANTON_LIKE_SEND\"\n | \"CANTON_LIKE_SEND_TOKEN\"\n | \"CANTON_LIKE_WITHDRAW\"\n | \"CANTON_LIKE_RECEIVE\"\n | \"CANTON_LIKE_PRE_APPROVAL\";\n\nconst fakeCantonPartyId = (): string =>\n `party-${faker.lorem.word()}::${faker.string.hexadecimal({ prefix: \"\", casing: \"lower\", length: 68 })}`;\n\nconst fakeCantonContractId = (): string =>\n faker.string.hexadecimal({ prefix: \"\", casing: \"lower\", length: 138 });\n\nconst fakeCantonInstrumentId = (): string =>\n faker.string.hexadecimal({ prefix: \"\", casing: \"lower\", length: 10 });\n\nconst fakeCantonTransferProposal = (): TransactionDataOf<\n \"CANTON_LIKE_WITHDRAW\" | \"CANTON_LIKE_RECEIVE\"\n>[\"transferProposal\"] => ({\n amount: faker.number.bigInt().toString(),\n contractId: fakeCantonContractId(),\n instrumentAdmin: fakeCantonPartyId(),\n instrumentId: fakeCantonInstrumentId(),\n expiresAtMicros: faker.number.int(),\n reason: faker.lorem.sentence(),\n sender: fakeCantonPartyId(),\n recipient: fakeCantonPartyId(),\n});\n\nexport const genCantonLikeTxData = (txType: CantonTxType): TransactionDataOf<CantonTxType> => {\n switch (txType) {\n case \"CANTON_LIKE_SEND\":\n case \"CANTON_LIKE_SEND_TOKEN\":\n return {\n type: txType,\n currency: \"canton_network\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n recipient: fakeCantonPartyId(),\n reason: faker.helpers.arrayElement([null, faker.lorem.word()]),\n };\n case \"CANTON_LIKE_WITHDRAW\":\n return {\n type: txType,\n currency: \"canton_network\",\n transferProposal: fakeCantonTransferProposal(),\n reason: faker.lorem.sentence(),\n };\n case \"CANTON_LIKE_RECEIVE\":\n return {\n type: txType,\n currency: \"canton_network\",\n transferProposal: fakeCantonTransferProposal(),\n verdict: \"ACCEPT\" as const,\n reason: faker.lorem.sentence(),\n };\n case \"CANTON_LIKE_PRE_APPROVAL\":\n return {\n type: txType,\n currency: \"canton_network\",\n recipient: fakeCantonPartyId(),\n };\n default: {\n const _exhaustive: never = txType;\n throw new Error(`Unknown canton transaction type: ${_exhaustive}`);\n }\n }\n};\n","import { faker } from \"@faker-js/faker\";\n\nimport type { TransactionDataOf } from \"@/app-lib\";\n\ntype CardanoTxType =\n | \"CARDANO_LIKE_SEND\"\n | \"CARDANO_LIKE_STAKING_REGISTER\"\n | \"CARDANO_LIKE_STAKING_DEREGISTER\"\n | \"CARDANO_LIKE_STAKING_DELEGATE\"\n | \"CARDANO_LIKE_STAKING_WITHDRAW\";\n\nexport const genCardanoLikeTxData = (txType: CardanoTxType): TransactionDataOf<CardanoTxType> => {\n switch (txType) {\n case \"CARDANO_LIKE_SEND\":\n return {\n type: txType,\n currency: \"cardano\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n recipient: faker.string.alphanumeric({ length: 30 }),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n };\n case \"CARDANO_LIKE_STAKING_DELEGATE\":\n return {\n type: txType,\n currency: \"cardano\",\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n stakePoolId: `pool${faker.string.alphanumeric({ length: 52 })}`,\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n };\n case \"CARDANO_LIKE_STAKING_REGISTER\":\n case \"CARDANO_LIKE_STAKING_DEREGISTER\":\n case \"CARDANO_LIKE_STAKING_WITHDRAW\":\n return {\n type: txType,\n currency: \"cardano\",\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n amount: faker.number.bigInt({ min: 0 }).toString(),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n };\n default: {\n const _exhaustive: never = txType;\n throw new Error(`Unknown cardano transaction type: ${_exhaustive}`);\n }\n }\n};\n","import { faker } from \"@faker-js/faker\";\nimport { omit } from \"lodash-es\";\n\nimport type { TransactionDataOf } from \"@/app-lib\";\n\nexport const genEthereumLikeSendData = (): TransactionDataOf<\"ETHEREUM_LIKE_SEND\"> => {\n const gasLimit = faker.number.bigInt({ min: 1 });\n const gasPrice = faker.number.bigInt({ min: 1 });\n const maxFee = gasLimit * gasPrice;\n return {\n type: \"ETHEREUM_LIKE_SEND\" as const,\n currency: \"ethereum\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n maxFee: maxFee.toString(),\n recipient: faker.finance.ethereumAddress(),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\", \"CUSTOM\"] as const),\n gasLimit: gasLimit.toString(),\n gasPrice: gasPrice.toString(),\n },\n };\n};\n\nexport const genEthereumLikeExecuteContractData =\n (): TransactionDataOf<\"ETHEREUM_LIKE_EXECUTE_CONTRACT\"> => {\n const sendData = genEthereumLikeSendData();\n return {\n ...omit(sendData, [\"type\"]),\n type: \"ETHEREUM_LIKE_EXECUTE_CONTRACT\" as const,\n contractData: faker.string.hexadecimal({ prefix: \"\", casing: \"lower\", length: 128 }),\n };\n };\n\nexport const genEthereumLikeDeployContractData =\n (): TransactionDataOf<\"ETHEREUM_LIKE_DEPLOY_CONTRACT\"> => {\n const sendData = genEthereumLikeSendData();\n return {\n ...omit(sendData, [\"type\"]),\n type: \"ETHEREUM_LIKE_DEPLOY_CONTRACT\" as const,\n recipient: \"\",\n contractData: faker.string.hexadecimal({ prefix: \"\", casing: \"lower\", length: 128 }),\n };\n };\n","import { faker } from \"@faker-js/faker\";\n\nimport type { TransactionDataOf } from \"@/app-lib\";\n\nexport const genGenericTransactionData = (): TransactionDataOf<\"GENERIC_TRANSACTION\"> => ({\n type: \"GENERIC_TRANSACTION\" as const,\n currency: \"tron\",\n rawTx: faker.string.alphanumeric({ length: 100 }),\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { TransactionDataOf } from \"@/app-lib\";\n\ntype HederaSendTxType = \"HEDERA_LIKE_SEND\" | \"HEDERA_LIKE_SEND_TOKEN\";\n\nexport const genHederaLikeSendData = (\n txType: HederaSendTxType,\n): TransactionDataOf<HederaSendTxType> => ({\n type: txType,\n currency: \"hedera\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n recipient: `0.0.${faker.number.int({ min: 10000000, max: 99999999 }).toString()}`,\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n});\n\nexport const genHederaLikeStakeData = (): TransactionDataOf<\"HEDERA_LIKE_STAKE\"> => ({\n type: \"HEDERA_LIKE_STAKE\" as const,\n currency: \"hedera\",\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n nodeId: faker.number.int({ min: 10, max: 99999999 }).toString(),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { TransactionDataOf } from \"@/app-lib\";\n\ntype PolkadotTxType =\n | \"POLKADOT_LIKE_SEND\"\n | \"POLKADOT_LIKE_ADDPROXY\"\n | \"POLKADOT_LIKE_REMOVEPROXY\"\n | \"POLKADOT_LIKE_BOND\"\n | \"POLKADOT_LIKE_REBOND\"\n | \"POLKADOT_LIKE_BONDEXTRA\"\n | \"POLKADOT_LIKE_UNBOND\"\n | \"POLKADOT_LIKE_WITHDRAWUNBONDED\"\n | \"POLKADOT_LIKE_SETPAYEE\"\n | \"POLKADOT_LIKE_ANONYMOUSPROXY\"\n | \"POLKADOT_LIKE_KILLANONYMOUS\"\n | \"POLKADOT_LIKE_CHILL\";\n\nexport const genPolkadotLikeTxData = (\n txType: PolkadotTxType,\n): TransactionDataOf<PolkadotTxType> => {\n switch (txType) {\n case \"POLKADOT_LIKE_SEND\":\n return {\n type: txType,\n currency: \"polkadot\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n recipient: faker.string.alphanumeric({ length: 30 }),\n };\n case \"POLKADOT_LIKE_ADDPROXY\":\n case \"POLKADOT_LIKE_REMOVEPROXY\":\n return {\n type: txType,\n currency: \"polkadot\",\n kind: \"Staking\" as const,\n proxy: faker.string.alphanumeric({ length: 30 }),\n };\n case \"POLKADOT_LIKE_BOND\":\n return {\n type: txType,\n currency: \"polkadot\",\n payee: faker.helpers.arrayElement([\"Staked\", \"Stash\"] as const),\n amount: faker.number.bigInt({ min: 0 }).toString(),\n };\n case \"POLKADOT_LIKE_REBOND\":\n case \"POLKADOT_LIKE_UNBOND\":\n return {\n type: txType,\n currency: \"polkadot\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n };\n case \"POLKADOT_LIKE_BONDEXTRA\":\n return {\n type: txType,\n currency: \"polkadot\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n };\n case \"POLKADOT_LIKE_WITHDRAWUNBONDED\":\n case \"POLKADOT_LIKE_CHILL\":\n return { type: txType, currency: \"polkadot\" };\n case \"POLKADOT_LIKE_SETPAYEE\":\n return {\n type: txType,\n currency: \"polkadot\",\n payee: faker.helpers.arrayElement([\"Staked\", \"Stash\"] as const),\n };\n case \"POLKADOT_LIKE_ANONYMOUSPROXY\":\n case \"POLKADOT_LIKE_KILLANONYMOUS\":\n return { type: txType, currency: \"polkadot\" };\n default: {\n const _exhaustive: never = txType;\n throw new Error(`Unknown polkadot transaction type: ${_exhaustive}`);\n }\n }\n};\n","import { faker } from \"@faker-js/faker\";\n\nimport type { TransactionDataOf } from \"@/app-lib\";\n\nexport const genRippleLikeSendData = (): TransactionDataOf<\"RIPPLE_LIKE_SEND\"> => ({\n type: \"RIPPLE_LIKE_SEND\" as const,\n currency: \"ripple\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n recipient: faker.string.alphanumeric({ length: 30 }),\n destinationTag: faker.helpers.arrayElement([faker.number.int().toString(), null]),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { TransactionDataOf } from \"@/app-lib\";\n\ntype SolanaTxType =\n | \"SOLANA_LIKE_SEND\"\n | \"SOLANA_LIKE_CREATE_DELEGATE_STAKE\"\n | \"SOLANA_LIKE_DELEGATE_STAKE\"\n | \"SOLANA_LIKE_WITHDRAW_STAKE\"\n | \"SOLANA_LIKE_DEACTIVATE_STAKE\"\n | \"SOLANA_LIKE_SPLIT_STAKE\"\n | \"SOLANA_LIKE_SPLIT_DEACTIVATE_STAKE\"\n | \"SOLANA_LIKE_MERGE_STAKE\"\n | \"SOLANA_LIKE_SEND_TOKEN\"\n | \"SOLANA_LIKE_FUND_AND_SEND_TOKEN\"\n | \"SOLANA_LIKE_CREATE_SPL_TOKEN_ACCOUNT\";\n\nexport const genSolanaLikeTxData = (txType: SolanaTxType): TransactionDataOf<SolanaTxType> => {\n switch (txType) {\n case \"SOLANA_LIKE_SEND\":\n case \"SOLANA_LIKE_CREATE_DELEGATE_STAKE\":\n case \"SOLANA_LIKE_SEND_TOKEN\":\n case \"SOLANA_LIKE_FUND_AND_SEND_TOKEN\":\n return {\n type: txType,\n currency: \"solana\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n recipient: faker.string.alphanumeric({ length: 30 }),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n };\n case \"SOLANA_LIKE_DELEGATE_STAKE\":\n return {\n type: txType,\n currency: \"solana\",\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n recipient: faker.string.alphanumeric({ length: 30 }),\n stakeAccount: faker.string.alphanumeric({ length: 30 }),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n };\n case \"SOLANA_LIKE_DEACTIVATE_STAKE\":\n return {\n type: txType,\n currency: \"solana\",\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n stakeAccount: faker.string.alphanumeric({ length: 30 }),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n };\n case \"SOLANA_LIKE_SPLIT_DEACTIVATE_STAKE\":\n case \"SOLANA_LIKE_SPLIT_STAKE\":\n case \"SOLANA_LIKE_WITHDRAW_STAKE\":\n return {\n type: txType,\n currency: \"solana\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n stakeAccount: faker.string.alphanumeric({ length: 30 }),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n };\n case \"SOLANA_LIKE_MERGE_STAKE\":\n return {\n type: txType,\n currency: \"solana\",\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n mergeSrcAccount: faker.string.alphanumeric({ length: 30 }),\n mergeDstAccount: faker.string.alphanumeric({ length: 30 }),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n };\n case \"SOLANA_LIKE_CREATE_SPL_TOKEN_ACCOUNT\":\n return {\n type: txType,\n currency: \"solana\",\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n };\n default: {\n const _exhaustive: never = txType;\n throw new Error(`Unknown solana transaction type: ${_exhaustive}`);\n }\n }\n};\n","import { faker } from \"@faker-js/faker\";\n\nimport type { TransactionDataOf } from \"@/app-lib\";\n\nexport const genStellarLikeSendData = (): TransactionDataOf<\"STELLAR_LIKE_SEND\"> => ({\n type: \"STELLAR_LIKE_SEND\" as const,\n currency: \"stellar\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n recipient: faker.string.alphanumeric({ length: 30 }),\n memo: faker.helpers.arrayElement([\n { type: \"MEMO_ID\" as const, value: faker.number.bigInt({ min: 0 }).toString() },\n { type: \"MEMO_TEXT\" as const, value: faker.word.conjunction(28) },\n {\n type: \"MEMO_HASH\" as const,\n value: faker.string.hexadecimal({ prefix: \"\", casing: \"lower\", length: 64 }),\n },\n {\n type: \"MEMO_RETURN\" as const,\n value: faker.string.hexadecimal({ prefix: \"\", casing: \"lower\", length: 64 }),\n },\n null,\n ]),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { TransactionDataOf } from \"@/app-lib\";\n\ntype SuiTxType = \"SUI_LIKE_SEND\" | \"SUI_LIKE_SEND_TOKEN\" | \"SUI_LIKE_STAKE\" | \"SUI_LIKE_UNSTAKE\";\n\nexport const genSuiLikeTxData = (txType: SuiTxType): TransactionDataOf<SuiTxType> => {\n const base = {\n currency: \"sui\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n };\n\n switch (txType) {\n case \"SUI_LIKE_STAKE\":\n return {\n ...base,\n type: txType,\n validator: faker.string.alphanumeric({ length: 30 }),\n };\n case \"SUI_LIKE_UNSTAKE\":\n return {\n ...base,\n type: txType,\n stakedSuiId: faker.string.alphanumeric({ length: 30 }),\n useAllAmount: faker.datatype.boolean(),\n };\n case \"SUI_LIKE_SEND\":\n case \"SUI_LIKE_SEND_TOKEN\":\n return {\n ...base,\n type: txType,\n recipient: faker.string.alphanumeric({ length: 30 }),\n };\n default: {\n const _exhaustive: never = txType;\n throw new Error(`Unknown sui transaction type: ${_exhaustive}`);\n }\n }\n};\n","import { faker } from \"@faker-js/faker\";\n\nimport type { TransactionDataOf } from \"@/app-lib\";\n\ntype TezosTxType = \"TEZOS_LIKE_SEND\" | \"TEZOS_LIKE_DELEGATE\" | \"TEZOS_LIKE_UNDELEGATE\";\n\nexport const genTezosLikeTxData = (txType: TezosTxType): TransactionDataOf<TezosTxType> => ({\n type: txType,\n currency: \"tezos\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n recipient: faker.string.alphanumeric({ length: 30 }),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\", \"CUSTOM\"] as const),\n },\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { TransactionDataOf } from \"@/app-lib\";\n\ntype TronTxType = \"TRON_LIKE_SEND\" | \"TRON_LIKE_SEND_TOKEN\";\n\nexport const genTronLikeTxData = (txType: TronTxType): TransactionDataOf<TronTxType> => ({\n type: txType,\n currency: \"tron\",\n amount: faker.number.bigInt({ min: 0 }).toString(),\n maxFee: faker.number.bigInt({ min: 1 }).toString(),\n recipient: faker.string.alphanumeric({ length: 30 }),\n feeStrategy: {\n type: faker.helpers.arrayElement([\"SLOW\", \"NORMAL\", \"FAST\"] as const),\n },\n});\n","import type { RequestDataOf, TransactionDataOf } from \"@/app-lib\";\n\nimport { unreachable } from \"../utils\";\nimport { genBitcoinLikeSendData } from \"./bitcoin\";\nimport { genCantonLikeTxData } from \"./canton\";\nimport { genCardanoLikeTxData } from \"./cardano\";\nimport {\n genEthereumLikeDeployContractData,\n genEthereumLikeExecuteContractData,\n genEthereumLikeSendData,\n} from \"./ethereum\";\nimport { genGenericTransactionData } from \"./generic\";\nimport { genHederaLikeSendData, genHederaLikeStakeData } from \"./hedera\";\nimport { genPolkadotLikeTxData } from \"./polkadot\";\nimport { genRippleLikeSendData } from \"./ripple\";\nimport { genSolanaLikeTxData } from \"./solana\";\nimport { genStellarLikeSendData } from \"./stellar\";\nimport { genSuiLikeTxData } from \"./sui\";\nimport { genTezosLikeTxData } from \"./tezos\";\nimport { genTronLikeTxData } from \"./tron\";\n\n/** Outgoing transaction type, which is a subset of `TransactionType`. */\nexport type OutgoingTxType = RequestDataOf<\"CREATE_TRANSACTION\">[\"transaction\"][\"type\"];\n\nexport const genOutgoingTxData = <T extends OutgoingTxType>(\n opts: Partial<TransactionDataOf<T>> & { type: T },\n): TransactionDataOf<T> => {\n let txDataDefaults: TransactionDataOf<OutgoingTxType>;\n switch (opts.type) {\n case \"BITCOIN_LIKE_SEND\":\n txDataDefaults = genBitcoinLikeSendData();\n break;\n case \"CANTON_LIKE_SEND\":\n case \"CANTON_LIKE_SEND_TOKEN\":\n case \"CANTON_LIKE_WITHDRAW\":\n case \"CANTON_LIKE_RECEIVE\":\n case \"CANTON_LIKE_PRE_APPROVAL\":\n txDataDefaults = genCantonLikeTxData(opts.type);\n break;\n case \"CARDANO_LIKE_SEND\":\n case \"CARDANO_LIKE_STAKING_REGISTER\":\n case \"CARDANO_LIKE_STAKING_DEREGISTER\":\n case \"CARDANO_LIKE_STAKING_DELEGATE\":\n case \"CARDANO_LIKE_STAKING_WITHDRAW\":\n txDataDefaults = genCardanoLikeTxData(opts.type);\n break;\n case \"ETHEREUM_LIKE_SEND\":\n txDataDefaults = genEthereumLikeSendData();\n break;\n case \"ETHEREUM_LIKE_EXECUTE_CONTRACT\":\n txDataDefaults = genEthereumLikeExecuteContractData();\n break;\n case \"ETHEREUM_LIKE_DEPLOY_CONTRACT\":\n txDataDefaults = genEthereumLikeDeployContractData();\n break;\n case \"GENERIC_TRANSACTION\":\n txDataDefaults = genGenericTransactionData();\n break;\n case \"HEDERA_LIKE_SEND\":\n case \"HEDERA_LIKE_SEND_TOKEN\":\n txDataDefaults = genHederaLikeSendData(opts.type);\n break;\n case \"HEDERA_LIKE_STAKE\":\n txDataDefaults = genHederaLikeStakeData();\n break;\n case \"POLKADOT_LIKE_SEND\":\n case \"POLKADOT_LIKE_ADDPROXY\":\n case \"POLKADOT_LIKE_REMOVEPROXY\":\n case \"POLKADOT_LIKE_BOND\":\n case \"POLKADOT_LIKE_REBOND\":\n case \"POLKADOT_LIKE_BONDEXTRA\":\n case \"POLKADOT_LIKE_UNBOND\":\n case \"POLKADOT_LIKE_WITHDRAWUNBONDED\":\n case \"POLKADOT_LIKE_SETPAYEE\":\n case \"POLKADOT_LIKE_ANONYMOUSPROXY\":\n case \"POLKADOT_LIKE_KILLANONYMOUS\":\n case \"POLKADOT_LIKE_CHILL\":\n txDataDefaults = genPolkadotLikeTxData(opts.type);\n break;\n case \"RIPPLE_LIKE_SEND\":\n txDataDefaults = genRippleLikeSendData();\n break;\n case \"SOLANA_LIKE_SEND\":\n case \"SOLANA_LIKE_CREATE_DELEGATE_STAKE\":\n case \"SOLANA_LIKE_DELEGATE_STAKE\":\n case \"SOLANA_LIKE_WITHDRAW_STAKE\":\n case \"SOLANA_LIKE_DEACTIVATE_STAKE\":\n case \"SOLANA_LIKE_SPLIT_STAKE\":\n case \"SOLANA_LIKE_SPLIT_DEACTIVATE_STAKE\":\n case \"SOLANA_LIKE_MERGE_STAKE\":\n case \"SOLANA_LIKE_SEND_TOKEN\":\n case \"SOLANA_LIKE_FUND_AND_SEND_TOKEN\":\n case \"SOLANA_LIKE_CREATE_SPL_TOKEN_ACCOUNT\":\n txDataDefaults = genSolanaLikeTxData(opts.type);\n break;\n case \"STELLAR_LIKE_SEND\":\n txDataDefaults = genStellarLikeSendData();\n break;\n case \"TEZOS_LIKE_SEND\":\n case \"TEZOS_LIKE_DELEGATE\":\n case \"TEZOS_LIKE_UNDELEGATE\":\n txDataDefaults = genTezosLikeTxData(opts.type);\n break;\n case \"SUI_LIKE_SEND\":\n case \"SUI_LIKE_SEND_TOKEN\":\n case \"SUI_LIKE_STAKE\":\n case \"SUI_LIKE_UNSTAKE\":\n txDataDefaults = genSuiLikeTxData(opts.type);\n break;\n case \"TRON_LIKE_SEND\":\n case \"TRON_LIKE_SEND_TOKEN\":\n txDataDefaults = genTronLikeTxData(opts.type);\n break;\n default:\n txDataDefaults = unreachable(opts.type);\n break;\n }\n return { ...txDataDefaults, ...opts } as TransactionDataOf<T>;\n};\n","import { faker } from \"@faker-js/faker\";\n\nimport type { AccountType, TransactionDataOf } from \"@/app-lib\";\n\nimport { genOutgoingTxData, type OutgoingTxType } from \"../transactions\";\n\nexport const ACCOUNT_TYPE_DEFAULT_CURRENCY: Record<AccountType, string> = {\n BITCOIN_LIKE: \"bitcoin\",\n CANTON_LIKE: \"canton_network\",\n CARDANO_LIKE: \"cardano\",\n ETHEREUM_LIKE: \"ethereum\",\n GENERIC_LIKE: \"tron\",\n HEDERA_LIKE: \"hedera\",\n POLKADOT_LIKE: \"polkadot\",\n RAW_SIGNING: \"bitcoin\",\n RIPPLE_LIKE: \"ripple\",\n SOLANA_LIKE: \"solana\",\n STELLAR_LIKE: \"stellar\",\n SUI_LIKE: \"sui\",\n TEZOS_LIKE: \"tezos\",\n TRON_LIKE: \"tron\",\n};\n\ntype OutgoingTxOptions<T extends OutgoingTxType> = Partial<TransactionDataOf<T>> & { type: T };\n\nexport const genCreateTransactionData = <T extends OutgoingTxType>(opts?: {\n accountId?: string;\n transaction?: OutgoingTxOptions<T>;\n}): { accountId: string; transaction: TransactionDataOf<T> } => {\n const accountId = opts?.accountId ?? faker.string.uuid();\n const txOpts = opts?.transaction ?? ({ type: \"ETHEREUM_LIKE_SEND\" } as OutgoingTxOptions<T>);\n return {\n accountId,\n transaction: genOutgoingTxData(txOpts),\n };\n};\n","import { faker } from \"@faker-js/faker\";\n\nimport type { RequestDataOf } from \"@/app-lib\";\n\nimport { genPubKey } from \"../utils\";\n\nexport const genCreatePsdUserData = (\n opts?: Partial<RequestDataOf<\"CREATE_PSD_USER\">>,\n): RequestDataOf<\"CREATE_PSD_USER\"> => ({\n registrationId: faker.string.uuid(),\n ...opts,\n});\n\nexport const genCreateApiUserData = (\n opts?: Partial<RequestDataOf<\"CREATE_API_USER\">>,\n): RequestDataOf<\"CREATE_API_USER\"> => ({\n name: faker.person.firstName(),\n pubKey: genPubKey(),\n role: \"OPERATOR\",\n viewAll: false,\n ...opts,\n});\n\nexport const genCreateApiUserAccessData = (\n opts?: Partial<RequestDataOf<\"CREATE_API_USER_ACCESS\">>,\n): RequestDataOf<\"CREATE_API_USER_ACCESS\"> => ({\n name: faker.person.firstName(),\n ...opts,\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { RequestDataOf } from \"@/app-lib\";\n\nexport const genCreateWhitelistData = (\n opts?: Partial<RequestDataOf<\"CREATE_WHITELIST\">>,\n): RequestDataOf<\"CREATE_WHITELIST\"> => ({\n name: faker.word.noun({ length: { min: 5, max: 19 } }),\n description: faker.lorem.sentence(),\n type: faker.helpers.arrayElement([\"TRANSACTION\", \"SMART_CONTRACT\"] as const),\n addresses: [\n {\n name: faker.lorem.words(3),\n currency: \"bitcoin\",\n address: faker.finance.bitcoinAddress(),\n destinationTags: [],\n },\n {\n name: faker.lorem.words(3),\n currency: \"ethereum\",\n address: faker.finance.ethereumAddress(),\n destinationTags: [],\n },\n ],\n ...opts,\n});\n\nexport const genEditWhitelistData = (\n opts?: Partial<RequestDataOf<\"EDIT_WHITELIST\">>,\n): RequestDataOf<\"EDIT_WHITELIST\"> => ({\n name: faker.word.noun({ length: { min: 5, max: 19 } }),\n addresses: [\n {\n name: faker.lorem.words(3),\n currency: \"bitcoin\",\n address: faker.finance.bitcoinAddress(),\n destinationTags: [],\n },\n {\n name: faker.lorem.words(3),\n currency: \"ethereum\",\n address: faker.finance.ethereumAddress(),\n destinationTags: [],\n },\n ],\n ...opts,\n});\n","import type { RequestDataOf } from \"@/app-lib\";\n\nexport const genWorkspaceRuleData = (\n opts?: Partial<RequestDataOf<\"EDIT_WORKSPACE_RULE\">>,\n): RequestDataOf<\"EDIT_WORKSPACE_RULE\"> => ({\n permission: \"CREATE_ACCOUNT_WITH_POLICY\",\n reviewConfig: [{ userIds: [], quorum: 2 }],\n ...opts,\n});\n","import type { RequestDataOf } from \"@/app-lib\";\n\nimport { unreachable } from \"../utils\";\nimport { genCreateAccountData, genEditAccountData, genEditTokenRuleData } from \"./account\";\nimport { genCreateApiKeyData, genEditApiKeyData } from \"./api-key\";\nimport { genCreateEntityData, genEditEntityData } from \"./entity\";\nimport { genCreateGroupData, genEditGroupData } from \"./group\";\nimport { genSignDigestsData, genSignMessageData } from \"./message-signature\";\nimport { genCreatePolicyData, genEditPolicyData } from \"./policy\";\nimport { genCreateSciConfigData, genEditSciConfigData } from \"./sciconfig\";\nimport {\n genTradelinkAdjustPledgeData,\n genTradelinkArbitrationData,\n genTradelinkCreateSettlementData,\n genTradelinkForceUnpledgeData,\n genTradelinkRepledgeData,\n genTradelinkWithdrawData,\n} from \"./tradelink\";\nimport { genCreateTransactionData } from \"./transaction\";\nimport { genCreateApiUserAccessData, genCreateApiUserData, genCreatePsdUserData } from \"./user\";\nimport { genCreateWhitelistData, genEditWhitelistData } from \"./whitelist\";\nimport { genWorkspaceRuleData } from \"./workspace-rule\";\n\nexport { ACCOUNT_TYPE_DEFAULT_CURRENCY } from \"./transaction\";\n// Re-export all per-domain generators\nexport {\n genCreateAccountData,\n genCreateApiKeyData,\n genCreateApiUserAccessData,\n genCreateApiUserData,\n genCreateEntityData,\n genCreateGroupData,\n genCreatePolicyData,\n genCreatePsdUserData,\n genCreateSciConfigData,\n genCreateTransactionData,\n genCreateWhitelistData,\n genEditAccountData,\n genEditApiKeyData,\n genEditEntityData,\n genEditGroupData,\n genEditPolicyData,\n genEditSciConfigData,\n genEditTokenRuleData,\n genEditWhitelistData,\n genSignDigestsData,\n genSignMessageData,\n genTradelinkAdjustPledgeData,\n genTradelinkArbitrationData,\n genTradelinkCreateSettlementData,\n genTradelinkForceUnpledgeData,\n genTradelinkRepledgeData,\n genTradelinkWithdrawData,\n genWorkspaceRuleData,\n};\n\nexport type RequestDataTypes = {\n // Workspace...\n UPDATE_QUORUM: RequestDataOf<\"UPDATE_QUORUM\">;\n // User...\n CREATE_PSD_USER: RequestDataOf<\"CREATE_PSD_USER\">;\n CREATE_API_USER: RequestDataOf<\"CREATE_API_USER\">;\n CREATE_API_USER_ACCESS: RequestDataOf<\"CREATE_API_USER_ACCESS\">;\n REVOKE_USER: Record<string, never>;\n // Admin gov rule...\n EDIT_WORKSPACE_RULE: RequestDataOf<\"EDIT_WORKSPACE_RULE\">;\n // Group...\n CREATE_GROUP: RequestDataOf<\"CREATE_GROUP\">;\n EDIT_GROUP: RequestDataOf<\"EDIT_GROUP\">;\n REVOKE_GROUP: Record<string, never>;\n // API key...\n CREATE_API_KEY: RequestDataOf<\"CREATE_API_KEY\">;\n EDIT_API_KEY: RequestDataOf<\"EDIT_API_KEY\">;\n REVOKE_API_KEY: Record<string, never>;\n // Whitelist...\n CREATE_WHITELIST: RequestDataOf<\"CREATE_WHITELIST\">;\n EDIT_WHITELIST: RequestDataOf<\"EDIT_WHITELIST\">;\n // Entity...\n CREATE_ENTITY: RequestDataOf<\"CREATE_ENTITY\">;\n EDIT_ENTITY: RequestDataOf<\"EDIT_ENTITY\">;\n REVOKE_ENTITY: Record<string, never>;\n // Account...\n CREATE_ACCOUNT: RequestDataOf<\"CREATE_ACCOUNT\">;\n EDIT_ACCOUNT: RequestDataOf<\"EDIT_ACCOUNT\">;\n EDIT_TOKEN_RULE: RequestDataOf<\"EDIT_TOKEN_RULE\">;\n // Operator requests...\n CREATE_TRANSACTION: RequestDataOf<\"CREATE_TRANSACTION\">;\n SIGN_MESSAGE: RequestDataOf<\"SIGN_MESSAGE\">;\n SIGN_DIGESTS: RequestDataOf<\"SIGN_DIGESTS\">;\n // SCI config ...\n CREATE_SCICONFIG: RequestDataOf<\"CREATE_SCICONFIG\">;\n EDIT_SCICONFIG: RequestDataOf<\"EDIT_SCICONFIG\">;\n // Policy\n CREATE_POLICY: RequestDataOf<\"CREATE_POLICY\">;\n EDIT_POLICY: RequestDataOf<\"EDIT_POLICY\">;\n // Tradelink...\n TRADELINK_ADJUST_PLEDGE: RequestDataOf<\"TRADELINK_ADJUST_PLEDGE\">;\n TRADELINK_REPLEDGE: RequestDataOf<\"TRADELINK_REPLEDGE\">;\n TRADELINK_CREATE_SETTLEMENT: RequestDataOf<\"TRADELINK_CREATE_SETTLEMENT\">;\n TRADELINK_FORCE_UNPLEDGE: RequestDataOf<\"TRADELINK_FORCE_UNPLEDGE\">;\n TRADELINK_WITHDRAW: RequestDataOf<\"TRADELINK_WITHDRAW\">;\n TRADELINK_ARBITRATE: RequestDataOf<\"TRADELINK_ARBITRATE\">;\n};\n\nexport const genRequestData = <T extends keyof RequestDataTypes>(\n type: T,\n opts?: Partial<RequestDataTypes[T]>,\n): RequestDataTypes[T] => {\n type R = RequestDataTypes[T];\n\n switch (type) {\n // Workspace...\n case \"UPDATE_QUORUM\":\n return { quorum: 3, ...opts } as R;\n\n // User...\n case \"CREATE_PSD_USER\":\n return genCreatePsdUserData(opts) as R;\n case \"CREATE_API_USER\":\n return genCreateApiUserData(opts) as R;\n case \"CREATE_API_USER_ACCESS\":\n return genCreateApiUserAccessData(opts) as R;\n case \"REVOKE_USER\":\n return {} as R;\n\n // Admin gov rule...\n case \"EDIT_WORKSPACE_RULE\":\n return genWorkspaceRuleData(opts) as R;\n\n // Group...\n case \"CREATE_GROUP\":\n return genCreateGroupData(opts) as R;\n case \"EDIT_GROUP\":\n return genEditGroupData(opts) as R;\n case \"REVOKE_GROUP\":\n return {} as R;\n\n // ApiKey...\n case \"CREATE_API_KEY\":\n return genCreateApiKeyData(opts) as R;\n case \"EDIT_API_KEY\":\n return genEditApiKeyData(opts) as R;\n case \"REVOKE_API_KEY\":\n return {} as R;\n\n // Whitelist...\n case \"CREATE_WHITELIST\":\n return genCreateWhitelistData(opts) as R;\n case \"EDIT_WHITELIST\":\n return genEditWhitelistData(opts) as R;\n\n // Entity...\n case \"CREATE_ENTITY\":\n return genCreateEntityData(opts) as R;\n case \"EDIT_ENTITY\":\n return genEditEntityData(opts) as R;\n case \"REVOKE_ENTITY\":\n return {} as R;\n\n // Account...\n case \"CREATE_ACCOUNT\":\n return genCreateAccountData(opts) as R;\n case \"EDIT_ACCOUNT\":\n return genEditAccountData(opts) as R;\n case \"EDIT_TOKEN_RULE\":\n return genEditTokenRuleData(opts) as R;\n\n // Operator requests...\n case \"CREATE_TRANSACTION\":\n return genCreateTransactionData(opts) as R;\n case \"SIGN_MESSAGE\":\n return genSignMessageData(opts) as R;\n case \"SIGN_DIGESTS\":\n return genSignDigestsData(opts) as R;\n\n // SCI config...\n case \"CREATE_SCICONFIG\":\n return genCreateSciConfigData(opts) as R;\n case \"EDIT_SCICONFIG\":\n return genEditSciConfigData(opts) as R;\n\n // Policy\n case \"CREATE_POLICY\":\n return genCreatePolicyData(opts) as R;\n case \"EDIT_POLICY\":\n return genEditPolicyData(opts) as R;\n\n // Tradelink...\n case \"TRADELINK_ADJUST_PLEDGE\":\n return genTradelinkAdjustPledgeData(opts) as R;\n case \"TRADELINK_CREATE_SETTLEMENT\":\n return genTradelinkCreateSettlementData(opts) as R;\n case \"TRADELINK_FORCE_UNPLEDGE\":\n return genTradelinkForceUnpledgeData(opts) as R;\n case \"TRADELINK_WITHDRAW\":\n return genTradelinkWithdrawData(opts) as R;\n case \"TRADELINK_REPLEDGE\":\n return genTradelinkRepledgeData(opts) as R;\n case \"TRADELINK_ARBITRATE\":\n return genTradelinkArbitrationData(opts) as R;\n\n default:\n return unreachable(type);\n }\n};\n","import { faker } from \"@faker-js/faker\";\n\nimport type {\n AccountResponse,\n AccountType,\n GroupResponse,\n UserResponse,\n VaultRequestResponse,\n WebhookResponse,\n WhitelistResponse,\n} from \"@/app-lib\";\n\nimport {\n ACCOUNT_TYPE_DEFAULT_CURRENCY,\n genRequestData,\n type RequestDataTypes,\n} from \"./request-data\";\nimport { genHexString, genPubKey, genUniqueName } from \"./utils\";\n\n// All AccountType values as a typed array (string literals, no Prisma import).\nconst ACCOUNT_TYPES: AccountType[] = [\n \"BITCOIN_LIKE\",\n \"CANTON_LIKE\",\n \"CARDANO_LIKE\",\n \"ETHEREUM_LIKE\",\n \"GENERIC_LIKE\",\n \"HEDERA_LIKE\",\n \"POLKADOT_LIKE\",\n \"RAW_SIGNING\",\n \"RIPPLE_LIKE\",\n \"SOLANA_LIKE\",\n \"STELLAR_LIKE\",\n \"SUI_LIKE\",\n \"TEZOS_LIKE\",\n \"TRON_LIKE\",\n];\n\nconst genAssetFields = (type: AccountType): AccountResponse[\"asset\"] => {\n switch (type) {\n case \"RAW_SIGNING\":\n case \"GENERIC_LIKE\":\n return { type };\n case \"BITCOIN_LIKE\":\n return { type, xpub: genHexString(120, \"lower\") };\n case \"CANTON_LIKE\":\n case \"CARDANO_LIKE\":\n case \"POLKADOT_LIKE\":\n case \"RIPPLE_LIKE\":\n case \"STELLAR_LIKE\":\n case \"SUI_LIKE\":\n case \"TEZOS_LIKE\":\n return { type, address: faker.string.alphanumeric({ length: 34 }) };\n case \"ETHEREUM_LIKE\":\n case \"SOLANA_LIKE\":\n case \"TRON_LIKE\":\n return { type, address: faker.string.alphanumeric({ length: 42 }) };\n case \"HEDERA_LIKE\":\n return {\n type,\n address: `0.0.${faker.number.int({ min: 10000000, max: 99999999 })}`,\n isActivated: faker.datatype.boolean(),\n };\n }\n};\n\nexport const genAccountResponse = (\n opts?: Partial<{\n type: AccountType;\n governanceType: \"CLASSIC\" | \"RAW_SIGNING\" | \"TRADELINK\";\n }>,\n): AccountResponse => {\n const type = opts?.type ?? faker.helpers.arrayElement(ACCOUNT_TYPES);\n const governanceType = opts?.governanceType ?? \"CLASSIC\";\n const currency = ACCOUNT_TYPE_DEFAULT_CURRENCY[type];\n const id = faker.string.uuid();\n\n const governance =\n governanceType === \"TRADELINK\"\n ? {\n type: governanceType,\n assetManagerId: faker.string.uuid(),\n exchangeConfigs: [],\n }\n : {\n type: governanceType,\n policyId: faker.string.uuid(),\n };\n\n return {\n id,\n legacyId: faker.number.int({ min: 1, max: 2000000000 }),\n name: genUniqueName(),\n currency,\n network: currency,\n contractAddress: null,\n tokenIdentifier: null,\n index: faker.number.int({ min: 0, max: 10 }),\n derivationPath: \"m/44'/0'/0'\",\n status: \"ACTIVE\" as const,\n createdAt: faker.date.past(),\n updatedAt: faker.date.past(),\n asset: genAssetFields(type),\n governance,\n };\n};\n\nexport const genUserResponse = (opts?: Partial<UserResponse>): UserResponse => {\n const role = opts?.role ?? faker.helpers.arrayElement([\"ADMIN\", \"OPERATOR\"]);\n const deviceType = opts?.deviceType ?? (role === \"READ_ONLY_API_KEY\" ? \"API\" : \"PSD\");\n return {\n id: faker.string.uuid(),\n legacyId: faker.number.int({ min: 1, max: 2000000000 }),\n legacyViewAll: false,\n workspaceName: faker.string.alphanumeric({ length: 16, casing: \"lower\" }),\n name: faker.person.fullName(),\n deviceUserId: deviceType === \"API\" ? null : genHexString(16, \"lower\"),\n deviceType,\n role,\n pubKey: genPubKey(),\n status: \"ACTIVE\" as const,\n isSuspended: false,\n createdAt: faker.date.past(),\n updatedAt: faker.date.past(),\n ...opts,\n };\n};\n\nexport const genGroupResponse = (opts?: Partial<GroupResponse>): GroupResponse => ({\n id: faker.string.uuid(),\n legacyId: faker.number.int({ min: 1, max: 2000000000 }),\n name: faker.word.noun({ length: { min: 5, max: 19 } }),\n description: faker.lorem.sentence(),\n status: \"ACTIVE\" as const,\n members: [],\n createdAt: faker.date.past(),\n updatedAt: faker.date.past(),\n ...opts,\n});\n\nexport const genWhitelistResponse = (opts?: Partial<WhitelistResponse>): WhitelistResponse => ({\n id: faker.string.uuid(),\n legacyId: faker.number.int({ min: 1, max: 2000000000 }),\n name: faker.lorem.words(3),\n type: \"TRANSACTION\",\n status: \"ACTIVE\" as const,\n addresses: [\n {\n name: faker.lorem.words(3),\n currency: \"bitcoin\",\n address: faker.finance.bitcoinAddress(),\n destinationTags: [],\n },\n {\n name: faker.lorem.words(3),\n currency: \"ethereum\",\n address: faker.finance.ethereumAddress(),\n destinationTags: [],\n },\n ],\n createdAt: faker.date.past(),\n updatedAt: faker.date.past(),\n description: faker.lorem.sentence(),\n ...opts,\n});\n\n/** Request types that have a `targetId` field */\nconst TYPES_WITH_TARGET_ID: (keyof RequestDataTypes)[] = [\n \"EDIT_ACCOUNT\",\n \"EDIT_TOKEN_RULE\",\n \"EDIT_GROUP\",\n \"REVOKE_GROUP\",\n \"EDIT_WHITELIST\",\n \"EDIT_ENTITY\",\n \"REVOKE_ENTITY\",\n \"REVOKE_USER\",\n \"EDIT_POLICY\",\n \"REVOKE_API_KEY\",\n];\n\nexport const genVaultRequestResponse = <T extends keyof RequestDataTypes>(opts: {\n type: T;\n data?: Partial<RequestDataTypes[T]>;\n}): VaultRequestResponse => {\n const { type, data: dataOpts } = opts;\n const data = genRequestData(type, dataOpts);\n const targetId = TYPES_WITH_TARGET_ID.includes(type) ? faker.string.uuid() : null;\n return {\n id: faker.string.uuid(),\n legacyId: faker.number.int({ min: 1, max: 2000000000 }),\n type,\n state: \"PENDING_APPROVAL\" as const,\n reviewSteps: [{ stageName: \"default\", quorum: 2 }],\n currentStepIndex: 0,\n expiresAt: faker.date.future(),\n targetId,\n note: null,\n reviews: [],\n createdAt: faker.date.past(),\n updatedAt: faker.date.past(),\n createdById: faker.string.uuid(),\n data,\n } as VaultRequestResponse;\n};\n\nexport const genWebhookResponse = (opts?: Partial<WebhookResponse>): WebhookResponse => ({\n id: faker.string.uuid(),\n actions: faker.helpers.arrayElements([\n \"REQUEST_CREATED\",\n \"REQUEST_RECEIVED_APPROVAL\",\n \"REQUEST_RECEIVED_REJECTION\",\n \"REQUEST_ACTIVATED_REVIEWS\",\n \"REQUEST_EXECUTING\",\n \"REQUEST_EXECUTED\",\n \"REQUEST_ABORTED\",\n \"REQUEST_FAILED\",\n \"REQUEST_EXPIRED\",\n ]),\n url: faker.internet.url(),\n createdAt: faker.date.past(),\n ...opts,\n});\n","import { faker } from \"@faker-js/faker\";\n\nimport type { AccountStakingFields, AccountType } from \"@/app-lib\";\n\nexport const genAccountStakingFields = (opts: {\n type: AccountType;\n contractAddress: string | null;\n}): AccountStakingFields | null => {\n // No staking for token account\n if (opts.contractAddress !== null) {\n return null;\n }\n\n switch (opts.type) {\n case \"BITCOIN_LIKE\":\n return null;\n case \"CANTON_LIKE\":\n return null;\n case \"CARDANO_LIKE\":\n return {\n type: \"CARDANO_LIKE\",\n staking: {\n staked: faker.number.int().toString(),\n },\n };\n case \"ETHEREUM_LIKE\":\n return {\n type: \"ETHEREUM_LIKE\",\n staking: {\n totalStaking: faker.number.int().toString(),\n totalRewards: faker.number.int().toString(),\n availableRewards: faker.number.int().toString(),\n networkApy: faker.number.float({ min: 0, max: 1 }),\n },\n };\n case \"GENERIC_LIKE\":\n return null;\n case \"POLKADOT_LIKE\":\n return {\n type: \"POLKADOT_LIKE\",\n staking: {\n info: {\n controllerAddress: \"<fake-controller-address>\",\n rewardsDestination: \"<fake-rewards-destination>\",\n proxies: [\"<fake-proxy>\"],\n legacyStaking: false,\n isNominator: false,\n },\n balances: {\n free: faker.number.int().toString(),\n reserved: faker.number.int().toString(),\n frozen: faker.number.int().toString(),\n bonded: faker.number.int().toString(),\n available: faker.number.int().toString(),\n unbonding: [\n { amount: faker.number.int().toString(), waiting_time: \"<fake-waiting-time>\" },\n ],\n unbonded: [\n { amount: faker.number.int().toString(), waiting_time: \"<fake-waiting-time>\" },\n ],\n totalUnbonding: faker.number.int().toString(),\n totalUnbonded: faker.number.int().toString(),\n },\n anonymousProxy: {\n address: \"<fake-anonymous-proxy-address>\",\n createdAt: faker.date.past().toISOString(),\n isController: false,\n isMain: false,\n balances: {\n free: faker.number.int().toString(),\n reserved: faker.number.int().toString(),\n frozen: faker.number.int().toString(),\n bonded: faker.number.int().toString(),\n available: faker.number.int().toString(),\n total: faker.number.int().toString(),\n },\n blockHeight: faker.number.int().toString(),\n extIndex: faker.number.int().toString(),\n index: faker.number.int().toString(),\n kind: \"<fake-kind>\",\n },\n },\n };\n case \"RAW_SIGNING\":\n return null;\n case \"RIPPLE_LIKE\":\n return null;\n case \"SOLANA_LIKE\":\n return {\n type: \"SOLANA_LIKE\",\n staking: {\n staked: faker.number.int().toString(),\n rewards: {\n total: faker.number.int().toString(),\n last7: faker.number.int().toString(),\n last30: faker.number.int().toString(),\n },\n stakes: [\n {\n uid: \"<fake-stake-uid>\",\n baseAccountUid: \"<fake-base-account-uid>\",\n pubKey: \"<fake-pub-key>\",\n validatorPubKey: \"<fake-validator-pub-key>\",\n initialAmount: faker.number.int().toString(),\n activeAmount: faker.number.int().toString(),\n inactiveAmount: faker.number.int().toString(),\n totalBalance: faker.number.int().toString(),\n creationDate: faker.date.past().toISOString(),\n activationEpoch: faker.date.past().toISOString(),\n activationDate: faker.date.past().toISOString(),\n deactivationEpoch: \"<fake-deactivation-epoch>\",\n deactivationDate: faker.date.past().toISOString(),\n status: \"activated\",\n rentExemptReserve: faker.number.int().toString(),\n withdrawableAmount: faker.number.int().toString(),\n totalRewards: faker.number.int().toString(),\n creationTxHash: \"<fake-creation-tx-hash>\",\n actionsTxHashes: [\"<fake-action-tx-hash>\"],\n },\n ],\n },\n };\n case \"STELLAR_LIKE\":\n return null;\n case \"SUI_LIKE\":\n return {\n type: \"SUI_LIKE\",\n staking: {\n totalStaked: faker.number.int().toString(),\n totalRewards: faker.number.int().toString(),\n },\n };\n case \"TEZOS_LIKE\":\n return {\n type: \"TEZOS_LIKE\",\n staking: {\n delegations: [{ address: faker.string.alpha({ length: 10 }) }],\n },\n };\n case \"TRON_LIKE\":\n return null;\n case \"HEDERA_LIKE\":\n return null;\n }\n};\n"]}
|
package/lib/index.d.mts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
export { CreateWebhookPayload, DeleteWebhookResponse, WebhookResponse, WebhooksResponse, zCreateWebhookPayload, zDeleteWebhookResponse, zWebhookResponse } from '@ledgerhq/revault-notifier-types/webhook';
|
|
2
2
|
import * as z from 'zod';
|
|
3
3
|
import z__default, { z as z$1 } from 'zod';
|
|
4
|
-
import { T as TxHandler, U as User, E as ExtendedPrismaClient, a as UserTask } from './app-types-
|
|
5
|
-
export {
|
|
4
|
+
import { T as TxHandler, U as User, E as ExtendedPrismaClient, A as AssetResponse, a as UserTask } from './app-types-hrtp6-Ec.mjs';
|
|
5
|
+
export { b as AccountFreshAddress, c as AccountLiveDataResponse, d as AccountResponse, e as AccountSortBy, f as AccountStakingFields, g as AccountType, h as ActivationStatus, i as AdminPermission, j as AdminResponse, k as AllowedAction, l as ApproveVaultRequestInput, C as ChallengeResponse, m as ChallengeType, n as ClaimedRole, o as CurrencyResponse, p as EnsureNameAvailableInput, q as EstimatedFees, G as GroupResponse, r as GroupSortBy, M as MessageType, N as NetworkFamily, O as OnboardedUserRole, s as OnboardingStep, P as PsdModel, R as RequestDataOf, t as RequestReviewStatus, u as RequestSortBy, v as RequestState, w as RequestType, x as ResourceType, y as RevaultMode, z as ReviewConfigType, S as SendOnlyTransactionData, B as StakingDataOf, D as TokenResponse, F as TransactionData, H as TransactionDataOf, I as TransactionResponse, J as TransactionType, K as TransactionTypeOf, L as UserDeviceType, Q as UserResponse, V as UserRole, W as UserSortBy, X as VaultRequestCreateInput, Y as VaultRequestResponse, Z as WhitelistResponse, _ as WhitelistSortBy, $ as WhitelistType, a0 as convertTxToGovernableIntent, a1 as genTransactionSchemas, a2 as getTxHsmProps, a3 as zAccountFreshAddress, a4 as zAccountLiveData, a5 as zAccountLiveDataResponse, a6 as zAccountResponse, a7 as zAccountSortBy, a8 as zAccountStakingFields, a9 as zAdminResponse, aa as zApproveVaultRequestInput, ab as zAssetCapabilitiesResponse, ac as zAssetResponse, ad as zBalance, ae as zChallengeResponse, af as zCommonLiveData, ag as zCurrencyResponse, ah as zEnsureNameAvailableInput, ai as zEstimateFeesResponse, ai as zEstimatedFees, aj as zGovernableAction, ak as zGroupResponse, al as zGroupSortBy, am as zNetworkAssetFields, an as zRequestSortBy, ao as zRequestTaskResponse, ap as zSendOnlyTransactionData, aq as zStake, ar as zStakeSortBy, as as zStakingValidator, at as zStakingValidatorSortBy, au as zTokenResponse, av as zTransactionData, aw as zTransactionResponse, ax as zTransactionType, ay as zUserResponse, az as zUserSortBy, aA as zVaultRequestCreateInput, aB as zVaultRequestResponse, aC as zWhitelistAddressResponse, aD as zWhitelistResponse, aE as zWhitelistSortBy } from './app-types-hrtp6-Ec.mjs';
|
|
6
6
|
import * as _trpc_server from '@trpc/server';
|
|
7
7
|
import * as trpc_to_openapi from 'trpc-to-openapi';
|
|
8
8
|
import * as socket_io from 'socket.io';
|
|
@@ -3196,6 +3196,65 @@ declare const zCantonTransferProposalResponse: z__default.ZodObject<{
|
|
|
3196
3196
|
recipient: z__default.ZodString;
|
|
3197
3197
|
}, z__default.core.$strip>;
|
|
3198
3198
|
|
|
3199
|
+
declare const DEFAULT_PAGE_SIZE = 30;
|
|
3200
|
+
declare const zSortOrder: z__default.ZodDefault<z__default.ZodEnum<{
|
|
3201
|
+
asc: "asc";
|
|
3202
|
+
desc: "desc";
|
|
3203
|
+
}>>;
|
|
3204
|
+
type SortOrder = z__default.infer<typeof zSortOrder>;
|
|
3205
|
+
declare const zPaginated: <T extends z__default.ZodType>(schema: T) => z__default.ZodObject<{
|
|
3206
|
+
page: z__default.ZodNumber;
|
|
3207
|
+
next: z__default.ZodNullable<z__default.ZodNumber>;
|
|
3208
|
+
prev: z__default.ZodNullable<z__default.ZodNumber>;
|
|
3209
|
+
pageSize: z__default.ZodNumber;
|
|
3210
|
+
total: z__default.ZodNumber;
|
|
3211
|
+
results: z__default.ZodArray<T>;
|
|
3212
|
+
}>;
|
|
3213
|
+
type Paginated<T> = z__default.infer<ReturnType<typeof zPaginated<z.ZodType<T>>>>;
|
|
3214
|
+
declare const zCursorPaginated: <T extends z__default.ZodType>(schema: T) => z__default.ZodObject<{
|
|
3215
|
+
next: z__default.ZodNullable<z__default.ZodString>;
|
|
3216
|
+
results: z__default.ZodArray<T>;
|
|
3217
|
+
}>;
|
|
3218
|
+
type CursorPaginated<T> = z__default.infer<ReturnType<typeof zCursorPaginated<z.ZodType<T>>>>;
|
|
3219
|
+
declare const zCursorQuery: z__default.ZodObject<{
|
|
3220
|
+
cursor: z__default.ZodOptional<z__default.ZodString>;
|
|
3221
|
+
}, z__default.core.$strip>;
|
|
3222
|
+
declare const zPageQuery: z__default.ZodObject<{
|
|
3223
|
+
page: z__default.ZodDefault<z__default.ZodOptional<z__default.ZodNumber>>;
|
|
3224
|
+
pageSize: z__default.ZodDefault<z__default.ZodOptional<z__default.ZodNumber>>;
|
|
3225
|
+
}, z__default.core.$strip>;
|
|
3226
|
+
type PageQuery = z__default.infer<typeof zPageQuery>;
|
|
3227
|
+
type FindManyAndCountWithTakeAndSkip<T> = (opts: {
|
|
3228
|
+
take: number;
|
|
3229
|
+
skip: number;
|
|
3230
|
+
}) => Promise<[T[], number]>;
|
|
3231
|
+
/**
|
|
3232
|
+
* Returns paginated results
|
|
3233
|
+
*/
|
|
3234
|
+
declare const paginate: <T>(find: FindManyAndCountWithTakeAndSkip<T>, input: PageQuery) => Promise<Paginated<T>>;
|
|
3235
|
+
type Ordering<T> = {
|
|
3236
|
+
[field in keyof T]?: SortOrder;
|
|
3237
|
+
};
|
|
3238
|
+
/**
|
|
3239
|
+
* Return a stable ordering for prisma model `T`.
|
|
3240
|
+
*
|
|
3241
|
+
* When querying objects ordered by a given field (e.g. `createdAt`), if multiple objects have the
|
|
3242
|
+
* same value in that field, the ordering of those objects are not guaranteed to be stable across
|
|
3243
|
+
* different queries. This could be a problem for pagination if they fall into the page boundary:
|
|
3244
|
+
* Some object may appear in two pages while some other object may never appear. By appending the
|
|
3245
|
+
* unique `id` field as a secondary ordering, we make the query results deterministic.
|
|
3246
|
+
*/
|
|
3247
|
+
declare const stableOrdering: <T extends {
|
|
3248
|
+
id: string | number;
|
|
3249
|
+
}>(orderBy: Ordering<T> | Ordering<T>[]) => Ordering<T> | Ordering<T>[];
|
|
3250
|
+
declare const serializePage: <T, U>(input: Paginated<T>, serialize: (obj: T) => Promise<U> | U) => Promise<Paginated<U>>;
|
|
3251
|
+
declare const emptyPage: <T>(paginationQuery: {
|
|
3252
|
+
page: number;
|
|
3253
|
+
pageSize: number;
|
|
3254
|
+
}) => Paginated<T>;
|
|
3255
|
+
declare const fetchAllPages: <T>(fetchPage: (page: number) => Promise<Paginated<T>>) => Promise<T[]>;
|
|
3256
|
+
declare const fetchAllCursorPages: <T>(fetchPage: (cursor: string | null) => Promise<CursorPaginated<T>>) => Promise<T[]>;
|
|
3257
|
+
|
|
3199
3258
|
type RateLimitRouteMetricsConfig = {
|
|
3200
3259
|
category: string;
|
|
3201
3260
|
noTrace?: boolean;
|
|
@@ -7793,6 +7852,7 @@ declare const appRouter: _trpc_server.TRPCBuiltRouter<{
|
|
|
7793
7852
|
id: string;
|
|
7794
7853
|
legacyId: number;
|
|
7795
7854
|
name: string;
|
|
7855
|
+
type: "TRANSACTION" | "SMART_CONTRACT";
|
|
7796
7856
|
status: "ACTIVE" | "INACTIVE";
|
|
7797
7857
|
addresses: {
|
|
7798
7858
|
name: string;
|
|
@@ -7834,6 +7894,7 @@ declare const appRouter: _trpc_server.TRPCBuiltRouter<{
|
|
|
7834
7894
|
id: string;
|
|
7835
7895
|
legacyId: number;
|
|
7836
7896
|
name: string;
|
|
7897
|
+
type: "TRANSACTION" | "SMART_CONTRACT";
|
|
7837
7898
|
status: "ACTIVE" | "INACTIVE";
|
|
7838
7899
|
addresses: {
|
|
7839
7900
|
name: string;
|
|
@@ -7947,6 +8008,7 @@ declare const appRouter: _trpc_server.TRPCBuiltRouter<{
|
|
|
7947
8008
|
id: string;
|
|
7948
8009
|
legacyId: number;
|
|
7949
8010
|
name: string;
|
|
8011
|
+
type: "TRANSACTION" | "SMART_CONTRACT";
|
|
7950
8012
|
status: "ACTIVE" | "INACTIVE";
|
|
7951
8013
|
addresses: {
|
|
7952
8014
|
name: string;
|
|
@@ -8039,6 +8101,7 @@ declare const appRouter: _trpc_server.TRPCBuiltRouter<{
|
|
|
8039
8101
|
id: string;
|
|
8040
8102
|
legacyId: number;
|
|
8041
8103
|
name: string;
|
|
8104
|
+
type: "TRANSACTION" | "SMART_CONTRACT";
|
|
8042
8105
|
status: "ACTIVE" | "INACTIVE";
|
|
8043
8106
|
addresses: {
|
|
8044
8107
|
name: string;
|
|
@@ -36714,101 +36777,6 @@ declare const appRouter: _trpc_server.TRPCBuiltRouter<{
|
|
|
36714
36777
|
}>>;
|
|
36715
36778
|
type AppRouter = typeof appRouter;
|
|
36716
36779
|
|
|
36717
|
-
declare const zAssetResponse: z__default.ZodDiscriminatedUnion<[z__default.ZodObject<{
|
|
36718
|
-
id: z__default.ZodString;
|
|
36719
|
-
name: z__default.ZodString;
|
|
36720
|
-
ticker: z__default.ZodString;
|
|
36721
|
-
family: z__default.ZodString;
|
|
36722
|
-
units: z__default.ZodArray<z__default.ZodObject<{
|
|
36723
|
-
code: z__default.ZodString;
|
|
36724
|
-
name: z__default.ZodString;
|
|
36725
|
-
magnitude: z__default.ZodNumber;
|
|
36726
|
-
}, z__default.core.$strip>>;
|
|
36727
|
-
network: z__default.ZodString;
|
|
36728
|
-
assetType: z__default.ZodLiteral<"NATIVE">;
|
|
36729
|
-
}, z__default.core.$strip>, z__default.ZodObject<{
|
|
36730
|
-
id: z__default.ZodString;
|
|
36731
|
-
name: z__default.ZodString;
|
|
36732
|
-
ticker: z__default.ZodString;
|
|
36733
|
-
family: z__default.ZodString;
|
|
36734
|
-
units: z__default.ZodArray<z__default.ZodObject<{
|
|
36735
|
-
code: z__default.ZodString;
|
|
36736
|
-
name: z__default.ZodString;
|
|
36737
|
-
magnitude: z__default.ZodNumber;
|
|
36738
|
-
}, z__default.core.$strip>>;
|
|
36739
|
-
network: z__default.ZodString;
|
|
36740
|
-
assetType: z__default.ZodLiteral<"TOKEN">;
|
|
36741
|
-
contractAddress: z__default.ZodString;
|
|
36742
|
-
tokenIdentifier: z__default.ZodNullable<z__default.ZodString>;
|
|
36743
|
-
metaCurrencyId: z__default.ZodNullable<z__default.ZodString>;
|
|
36744
|
-
}, z__default.core.$strip>], "assetType">;
|
|
36745
|
-
type AssetResponse = z__default.infer<typeof zAssetResponse>;
|
|
36746
|
-
declare const zAssetCapabilitiesResponse: z__default.ZodObject<{
|
|
36747
|
-
SEND: z__default.ZodBoolean;
|
|
36748
|
-
STAKE: z__default.ZodBoolean;
|
|
36749
|
-
EXECUTE_CONTRACT: z__default.ZodBoolean;
|
|
36750
|
-
SIGN_MESSAGE: z__default.ZodBoolean;
|
|
36751
|
-
DEPLOY_CONTRACT: z__default.ZodBoolean;
|
|
36752
|
-
ACTIVATE_TOKEN: z__default.ZodBoolean;
|
|
36753
|
-
RECEIVE: z__default.ZodBoolean;
|
|
36754
|
-
}, z__default.core.$strip>;
|
|
36755
|
-
declare const zCurrencyResponse: z__default.ZodObject<{
|
|
36756
|
-
id: z__default.ZodString;
|
|
36757
|
-
name: z__default.ZodString;
|
|
36758
|
-
ticker: z__default.ZodString;
|
|
36759
|
-
type: z__default.ZodEnum<{
|
|
36760
|
-
readonly BITCOIN_LIKE: "BITCOIN_LIKE";
|
|
36761
|
-
readonly CANTON_LIKE: "CANTON_LIKE";
|
|
36762
|
-
readonly CARDANO_LIKE: "CARDANO_LIKE";
|
|
36763
|
-
readonly ETHEREUM_LIKE: "ETHEREUM_LIKE";
|
|
36764
|
-
readonly GENERIC_LIKE: "GENERIC_LIKE";
|
|
36765
|
-
readonly HEDERA_LIKE: "HEDERA_LIKE";
|
|
36766
|
-
readonly POLKADOT_LIKE: "POLKADOT_LIKE";
|
|
36767
|
-
readonly RAW_SIGNING: "RAW_SIGNING";
|
|
36768
|
-
readonly RIPPLE_LIKE: "RIPPLE_LIKE";
|
|
36769
|
-
readonly SOLANA_LIKE: "SOLANA_LIKE";
|
|
36770
|
-
readonly STELLAR_LIKE: "STELLAR_LIKE";
|
|
36771
|
-
readonly SUI_LIKE: "SUI_LIKE";
|
|
36772
|
-
readonly TEZOS_LIKE: "TEZOS_LIKE";
|
|
36773
|
-
readonly TRON_LIKE: "TRON_LIKE";
|
|
36774
|
-
}>;
|
|
36775
|
-
units: z__default.ZodArray<z__default.ZodObject<{
|
|
36776
|
-
code: z__default.ZodString;
|
|
36777
|
-
name: z__default.ZodString;
|
|
36778
|
-
magnitude: z__default.ZodNumber;
|
|
36779
|
-
}, z__default.core.$strip>>;
|
|
36780
|
-
}, z__default.core.$strip>;
|
|
36781
|
-
type CurrencyResponse = z__default.infer<typeof zCurrencyResponse>;
|
|
36782
|
-
declare const zTokenResponse: z__default.ZodObject<{
|
|
36783
|
-
id: z__default.ZodString;
|
|
36784
|
-
name: z__default.ZodString;
|
|
36785
|
-
ticker: z__default.ZodString;
|
|
36786
|
-
type: z__default.ZodEnum<{
|
|
36787
|
-
readonly BITCOIN_LIKE: "BITCOIN_LIKE";
|
|
36788
|
-
readonly CANTON_LIKE: "CANTON_LIKE";
|
|
36789
|
-
readonly CARDANO_LIKE: "CARDANO_LIKE";
|
|
36790
|
-
readonly ETHEREUM_LIKE: "ETHEREUM_LIKE";
|
|
36791
|
-
readonly GENERIC_LIKE: "GENERIC_LIKE";
|
|
36792
|
-
readonly HEDERA_LIKE: "HEDERA_LIKE";
|
|
36793
|
-
readonly POLKADOT_LIKE: "POLKADOT_LIKE";
|
|
36794
|
-
readonly RAW_SIGNING: "RAW_SIGNING";
|
|
36795
|
-
readonly RIPPLE_LIKE: "RIPPLE_LIKE";
|
|
36796
|
-
readonly SOLANA_LIKE: "SOLANA_LIKE";
|
|
36797
|
-
readonly STELLAR_LIKE: "STELLAR_LIKE";
|
|
36798
|
-
readonly SUI_LIKE: "SUI_LIKE";
|
|
36799
|
-
readonly TEZOS_LIKE: "TEZOS_LIKE";
|
|
36800
|
-
readonly TRON_LIKE: "TRON_LIKE";
|
|
36801
|
-
}>;
|
|
36802
|
-
units: z__default.ZodArray<z__default.ZodObject<{
|
|
36803
|
-
code: z__default.ZodString;
|
|
36804
|
-
name: z__default.ZodString;
|
|
36805
|
-
magnitude: z__default.ZodNumber;
|
|
36806
|
-
}, z__default.core.$strip>>;
|
|
36807
|
-
contractAddress: z__default.ZodString;
|
|
36808
|
-
currency: z__default.ZodString;
|
|
36809
|
-
}, z__default.core.$strip>;
|
|
36810
|
-
type TokenResponse = z__default.infer<typeof zTokenResponse>;
|
|
36811
|
-
|
|
36812
36780
|
declare const zAuthResponse: z$1.ZodObject<{
|
|
36813
36781
|
accessToken: z$1.ZodString;
|
|
36814
36782
|
expiresInSeconds: z$1.ZodNumber;
|
|
@@ -37291,6 +37259,10 @@ declare const zPolicyResponse: z$1.ZodObject<{
|
|
|
37291
37259
|
id: z$1.ZodString;
|
|
37292
37260
|
legacyId: z$1.ZodNumber;
|
|
37293
37261
|
name: z$1.ZodString;
|
|
37262
|
+
type: z$1.ZodEnum<{
|
|
37263
|
+
readonly TRANSACTION: "TRANSACTION";
|
|
37264
|
+
readonly SMART_CONTRACT: "SMART_CONTRACT";
|
|
37265
|
+
}>;
|
|
37294
37266
|
status: z$1.ZodEnum<{
|
|
37295
37267
|
readonly ACTIVE: "ACTIVE";
|
|
37296
37268
|
readonly INACTIVE: "INACTIVE";
|
|
@@ -37833,63 +37805,4 @@ declare const zWorkspaceResponse: z__default.ZodObject<{
|
|
|
37833
37805
|
}, z__default.core.$strip>;
|
|
37834
37806
|
type WorkspaceResponse = z__default.infer<typeof zWorkspaceResponse>;
|
|
37835
37807
|
|
|
37836
|
-
|
|
37837
|
-
declare const zSortOrder: z__default.ZodDefault<z__default.ZodEnum<{
|
|
37838
|
-
asc: "asc";
|
|
37839
|
-
desc: "desc";
|
|
37840
|
-
}>>;
|
|
37841
|
-
type SortOrder = z__default.infer<typeof zSortOrder>;
|
|
37842
|
-
declare const zPaginated: <T extends z__default.ZodType>(schema: T) => z__default.ZodObject<{
|
|
37843
|
-
page: z__default.ZodNumber;
|
|
37844
|
-
next: z__default.ZodNullable<z__default.ZodNumber>;
|
|
37845
|
-
prev: z__default.ZodNullable<z__default.ZodNumber>;
|
|
37846
|
-
pageSize: z__default.ZodNumber;
|
|
37847
|
-
total: z__default.ZodNumber;
|
|
37848
|
-
results: z__default.ZodArray<T>;
|
|
37849
|
-
}>;
|
|
37850
|
-
type Paginated<T> = z__default.infer<ReturnType<typeof zPaginated<z.ZodType<T>>>>;
|
|
37851
|
-
declare const zCursorPaginated: <T extends z__default.ZodType>(schema: T) => z__default.ZodObject<{
|
|
37852
|
-
next: z__default.ZodNullable<z__default.ZodString>;
|
|
37853
|
-
results: z__default.ZodArray<T>;
|
|
37854
|
-
}>;
|
|
37855
|
-
type CursorPaginated<T> = z__default.infer<ReturnType<typeof zCursorPaginated<z.ZodType<T>>>>;
|
|
37856
|
-
declare const zCursorQuery: z__default.ZodObject<{
|
|
37857
|
-
cursor: z__default.ZodOptional<z__default.ZodString>;
|
|
37858
|
-
}, z__default.core.$strip>;
|
|
37859
|
-
declare const zPageQuery: z__default.ZodObject<{
|
|
37860
|
-
page: z__default.ZodDefault<z__default.ZodOptional<z__default.ZodNumber>>;
|
|
37861
|
-
pageSize: z__default.ZodDefault<z__default.ZodOptional<z__default.ZodNumber>>;
|
|
37862
|
-
}, z__default.core.$strip>;
|
|
37863
|
-
type PageQuery = z__default.infer<typeof zPageQuery>;
|
|
37864
|
-
type FindManyAndCountWithTakeAndSkip<T> = (opts: {
|
|
37865
|
-
take: number;
|
|
37866
|
-
skip: number;
|
|
37867
|
-
}) => Promise<[T[], number]>;
|
|
37868
|
-
/**
|
|
37869
|
-
* Returns paginated results
|
|
37870
|
-
*/
|
|
37871
|
-
declare const paginate: <T>(find: FindManyAndCountWithTakeAndSkip<T>, input: PageQuery) => Promise<Paginated<T>>;
|
|
37872
|
-
type Ordering<T> = {
|
|
37873
|
-
[field in keyof T]?: SortOrder;
|
|
37874
|
-
};
|
|
37875
|
-
/**
|
|
37876
|
-
* Return a stable ordering for prisma model `T`.
|
|
37877
|
-
*
|
|
37878
|
-
* When querying objects ordered by a given field (e.g. `createdAt`), if multiple objects have the
|
|
37879
|
-
* same value in that field, the ordering of those objects are not guaranteed to be stable across
|
|
37880
|
-
* different queries. This could be a problem for pagination if they fall into the page boundary:
|
|
37881
|
-
* Some object may appear in two pages while some other object may never appear. By appending the
|
|
37882
|
-
* unique `id` field as a secondary ordering, we make the query results deterministic.
|
|
37883
|
-
*/
|
|
37884
|
-
declare const stableOrdering: <T extends {
|
|
37885
|
-
id: string | number;
|
|
37886
|
-
}>(orderBy: Ordering<T> | Ordering<T>[]) => Ordering<T> | Ordering<T>[];
|
|
37887
|
-
declare const serializePage: <T, U>(input: Paginated<T>, serialize: (obj: T) => Promise<U> | U) => Promise<Paginated<U>>;
|
|
37888
|
-
declare const emptyPage: <T>(paginationQuery: {
|
|
37889
|
-
page: number;
|
|
37890
|
-
pageSize: number;
|
|
37891
|
-
}) => Paginated<T>;
|
|
37892
|
-
declare const fetchAllPages: <T>(fetchPage: (page: number) => Promise<Paginated<T>>) => Promise<T[]>;
|
|
37893
|
-
declare const fetchAllCursorPages: <T>(fetchPage: (cursor: string | null) => Promise<CursorPaginated<T>>) => Promise<T[]>;
|
|
37894
|
-
|
|
37895
|
-
export { type AllowedActionsResponse, type AllowedResourcesResponse, type ApiChallenge, type AppRouter, type AssetResponse, type AuthResponse, BITCOIN_SPEC, CANTON_SPEC, CARDANO_SPEC, type CantonTransferProposal, type Challenge, type CreateTradelinkOrgEntityInput as CreateTradelinkExchangeInput, type CurrencyResponse, type CursorPaginated, DEFAULT_PAGE_SIZE, type DeleteTradelinkExchangeInput, type DeviceClaim, ETHEREUM_SPEC, type EnsureNameAvailableOutput, type EntityResponse, type EntitySortBy, GENERIC_SPEC, HEDERA_SPEC, type HsmCertificate, type OidcConfig, type OnboardingFullState as OnboardingFullStateResponse, type OnboardingOpts, type OnboardingSeedChallenge, type OnboardingSeedFragment, POLKADOT_SPEC, type Paginated, type PledgeResponse, type PolicyResponse, type PolicySortBy, type PsdAuthChallengeData as PsdAuthChallengeResponse, type PsdChallenge, type PsdPairingData, type PsdPairingInputData, type PsdSignature, type PubKey, RIPPLE_SPEC, type ReviewStepWithUsers, type RootWorkspaceRuleResponse, SOLANA_SPEC, STELLAR_SPEC, SUI_SPEC, type SoftChallenge, type SortOrder, TEZOS_SPEC, TRON_SPEC, type TokenResponse, type TradelinkCustodianResponse, type TradelinkEntityResponse, type TradelinkNetworkBlueprintResponse, type TradelinkNetworkResponse, type TradelinkOrgEntityResponse, type TradelinkSettlementWithAccountAndExchangeInfoResponse, type TransactionWithMetaResponse, type UserRegistrationChallenge, type UserRegistrationChallengeResponse, type UserRegistrationCreateInput, type UserRegistrationDeviceData, type UserRegistrationResponse, type UserTaskResponse, type WorkspaceResponse, type WorkspaceRuleResponse, type WorkspaceRulesResponse, type WrappingKeyFragmentInput, type WrappingKeyProvisioningEphemeralPubKey, type WrappingKeyResponse, emptyPage, fetchAllCursorPages, fetchAllPages, isErc20Address, paginate, serializePage, serializeUserTask, stableOrdering, zAllowedActionsResponse, zAllowedResourcesResponse, zApiUserCredentialsResponse, zAssetCapabilitiesResponse, zAssetResponse, zAuthResponse, zCantonPreApprovalStateResponse, zCantonTransferProposal, zCantonTransferProposalResponse, zCreateTradelinkNetworkBlueprintInput, zCreateTradelinkOrgEntityInput, zCurrencyResponse, zCursorPaginated, zCursorQuery, zDeleteTradelinkOrgEntityInput, zDeviceClaim, zEnsureNameAvailableOutput, zEntityResponse, zEntitySortBy, zExchangeCredentialsResponse, zExportRequestsToCsvInput, zOidcConfig, zOnboardingFullState as zOnboardingFullStateResponse, zOnboardingId, zOnboardingOpts, zOnboardingSeedFragment, zPageQuery, zPaginated, zPledgeResponse, zPolicyResponse, zPolicySortBy, zPsdAuthChallengeData as zPsdAuthChallengeResponse, zPsdPairingData, zPsdPairingInputData, zPsdSignature, zPubKey, zReviewStepsArray, zRootWorkspaceRuleResponse, zSignedMessageResponse, zSortOrder, zTokenResponse, zTradelinkCustodianResponse, zTradelinkEntityResponse, zTradelinkNetworkBlueprintResponse, zTradelinkNetworkResponse, zTradelinkOrgEntityResponse, zTradelinkSettlementWithAccountAndExchangeInfoResponse, zTradelinkWhitelist, zTransactionWithMetaResponse, zUserRegistrationChallenge, zUserRegistrationChallengeResponse, zUserRegistrationCreateInput, zUserRegistrationDeviceData, zUserRegistrationResponse, zUserTaskResponse, zWorkspaceResponse, zWorkspaceRuleResponse, zWorkspaceRulesResponse, zWrappingKeyFragmentInput };
|
|
37808
|
+
export { type AllowedActionsResponse, type AllowedResourcesResponse, type ApiChallenge, type AppRouter, AssetResponse, type AuthResponse, BITCOIN_SPEC, CANTON_SPEC, CARDANO_SPEC, type CantonTransferProposal, type Challenge, type CreateTradelinkOrgEntityInput as CreateTradelinkExchangeInput, type CursorPaginated, DEFAULT_PAGE_SIZE, type DeleteTradelinkExchangeInput, type DeviceClaim, ETHEREUM_SPEC, type EnsureNameAvailableOutput, type EntityResponse, type EntitySortBy, GENERIC_SPEC, HEDERA_SPEC, type HsmCertificate, type OidcConfig, type OnboardingFullState as OnboardingFullStateResponse, type OnboardingOpts, type OnboardingSeedChallenge, type OnboardingSeedFragment, POLKADOT_SPEC, type Paginated, type PledgeResponse, type PolicyResponse, type PolicySortBy, type PsdAuthChallengeData as PsdAuthChallengeResponse, type PsdChallenge, type PsdPairingData, type PsdPairingInputData, type PsdSignature, type PubKey, RIPPLE_SPEC, type ReviewStepWithUsers, type RootWorkspaceRuleResponse, SOLANA_SPEC, STELLAR_SPEC, SUI_SPEC, type SoftChallenge, type SortOrder, TEZOS_SPEC, TRON_SPEC, type TradelinkCustodianResponse, type TradelinkEntityResponse, type TradelinkNetworkBlueprintResponse, type TradelinkNetworkResponse, type TradelinkOrgEntityResponse, type TradelinkSettlementWithAccountAndExchangeInfoResponse, type TransactionWithMetaResponse, type UserRegistrationChallenge, type UserRegistrationChallengeResponse, type UserRegistrationCreateInput, type UserRegistrationDeviceData, type UserRegistrationResponse, type UserTaskResponse, type WorkspaceResponse, type WorkspaceRuleResponse, type WorkspaceRulesResponse, type WrappingKeyFragmentInput, type WrappingKeyProvisioningEphemeralPubKey, type WrappingKeyResponse, emptyPage, fetchAllCursorPages, fetchAllPages, isErc20Address, paginate, serializePage, serializeUserTask, stableOrdering, zAllowedActionsResponse, zAllowedResourcesResponse, zApiUserCredentialsResponse, zAuthResponse, zCantonPreApprovalStateResponse, zCantonTransferProposal, zCantonTransferProposalResponse, zCreateTradelinkNetworkBlueprintInput, zCreateTradelinkOrgEntityInput, zCursorPaginated, zCursorQuery, zDeleteTradelinkOrgEntityInput, zDeviceClaim, zEnsureNameAvailableOutput, zEntityResponse, zEntitySortBy, zExchangeCredentialsResponse, zExportRequestsToCsvInput, zOidcConfig, zOnboardingFullState as zOnboardingFullStateResponse, zOnboardingId, zOnboardingOpts, zOnboardingSeedFragment, zPageQuery, zPaginated, zPledgeResponse, zPolicyResponse, zPolicySortBy, zPsdAuthChallengeData as zPsdAuthChallengeResponse, zPsdPairingData, zPsdPairingInputData, zPsdSignature, zPubKey, zReviewStepsArray, zRootWorkspaceRuleResponse, zSignedMessageResponse, zSortOrder, zTradelinkCustodianResponse, zTradelinkEntityResponse, zTradelinkNetworkBlueprintResponse, zTradelinkNetworkResponse, zTradelinkOrgEntityResponse, zTradelinkSettlementWithAccountAndExchangeInfoResponse, zTradelinkWhitelist, zTransactionWithMetaResponse, zUserRegistrationChallenge, zUserRegistrationChallengeResponse, zUserRegistrationCreateInput, zUserRegistrationDeviceData, zUserRegistrationResponse, zUserTaskResponse, zWorkspaceResponse, zWorkspaceRuleResponse, zWorkspaceRulesResponse, zWrappingKeyFragmentInput };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ledgerhq/revault-api",
|
|
3
|
-
"version": "1.55.
|
|
3
|
+
"version": "1.55.1",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"files": [
|
|
@@ -21,11 +21,11 @@
|
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
23
|
"@faker-js/faker": "^9.9.0",
|
|
24
|
-
"fastify": "^5.
|
|
24
|
+
"fastify": "^5.8.4",
|
|
25
25
|
"invariant": "^2.2.4",
|
|
26
26
|
"socket.io": "^4.8.3",
|
|
27
|
-
"@trpc/server": "11.
|
|
28
|
-
"trpc-to-openapi": "^3.
|
|
27
|
+
"@trpc/server": "11.16.0",
|
|
28
|
+
"trpc-to-openapi": "^3.2.0",
|
|
29
29
|
"zod": "^4.3.6"
|
|
30
30
|
}
|
|
31
31
|
}
|