@openora/core 0.4.1-canary.53 → 0.4.1-canary.55
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/.tsbuildinfo +1 -1
- package/dist/contracts/adapters/audit.d.ts +1 -1
- package/dist/contracts/adapters/audit.d.ts.map +1 -1
- package/dist/contracts/adapters/audit.js.map +1 -1
- package/dist/contracts/schemas/__tests__/tag-schemas.test.d.ts +2 -0
- package/dist/contracts/schemas/__tests__/tag-schemas.test.d.ts.map +1 -0
- package/dist/contracts/schemas/__tests__/tag-schemas.test.js +42 -0
- package/dist/contracts/schemas/__tests__/tag-schemas.test.js.map +1 -0
- package/dist/contracts/schemas/platform-config.d.ts +0 -43
- package/dist/contracts/schemas/platform-config.d.ts.map +1 -1
- package/dist/contracts/schemas/platform-config.js +0 -6
- package/dist/contracts/schemas/platform-config.js.map +1 -1
- package/dist/contracts/schemas/tag.d.ts +1 -1
- package/dist/contracts/schemas/tag.js +2 -2
- package/dist/contracts/schemas/tag.js.map +1 -1
- package/dist/iam/service/iam.service.d.ts +1 -1
- package/dist/pam/tag/__tests__/tag.router.int.test.js +63 -0
- package/dist/pam/tag/__tests__/tag.router.int.test.js.map +1 -1
- package/dist/pam/tag/contract/index.d.ts +1 -1
- package/dist/pam/tag/router/index.d.ts +1 -1
- package/dist/pam/tag/router/index.d.ts.map +1 -1
- package/dist/pam/tag/router/index.js +5 -2
- package/dist/pam/tag/router/index.js.map +1 -1
- package/dist/pam/tag/service/tag.service.d.ts +1 -0
- package/dist/pam/tag/service/tag.service.d.ts.map +1 -1
- package/dist/pam/tag/service/tag.service.js +14 -3
- package/dist/pam/tag/service/tag.service.js.map +1 -1
- package/dist/server/auth/permissions.d.ts +12 -0
- package/dist/server/auth/permissions.d.ts.map +1 -1
- package/dist/server/auth/permissions.js +2 -0
- package/dist/server/auth/permissions.js.map +1 -1
- package/dist/wallet/__tests__/wallet-auto-withdrawal-config.router.int.test.d.ts +2 -0
- package/dist/wallet/__tests__/wallet-auto-withdrawal-config.router.int.test.d.ts.map +1 -0
- package/dist/wallet/__tests__/wallet-auto-withdrawal-config.router.int.test.js +183 -0
- package/dist/wallet/__tests__/wallet-auto-withdrawal-config.router.int.test.js.map +1 -0
- package/dist/wallet/__tests__/wallet-auto-withdrawal.int.test.js +196 -46
- package/dist/wallet/__tests__/wallet-auto-withdrawal.int.test.js.map +1 -1
- package/dist/wallet/contract/index.d.ts +124 -0
- package/dist/wallet/contract/index.d.ts.map +1 -1
- package/dist/wallet/contract/index.js +29 -1
- package/dist/wallet/contract/index.js.map +1 -1
- package/dist/wallet/drizzle/migrations/0005_gigantic_dust.sql +10 -0
- package/dist/wallet/drizzle/migrations/0006_lush_morg.sql +1 -0
- package/dist/wallet/drizzle/migrations/meta/0004_snapshot.json +64 -0
- package/dist/wallet/drizzle/migrations/meta/0006_snapshot.json +638 -0
- package/dist/wallet/drizzle/migrations/meta/_journal.json +14 -0
- package/dist/wallet/router/index.d.ts +75 -0
- package/dist/wallet/router/index.d.ts.map +1 -1
- package/dist/wallet/router/index.js +13 -1
- package/dist/wallet/router/index.js.map +1 -1
- package/dist/wallet/schema/index.d.ts +171 -0
- package/dist/wallet/schema/index.d.ts.map +1 -1
- package/dist/wallet/schema/index.js +18 -0
- package/dist/wallet/schema/index.js.map +1 -1
- package/dist/wallet/seed/index.d.ts +2 -0
- package/dist/wallet/seed/index.d.ts.map +1 -0
- package/dist/wallet/seed/index.js +2 -0
- package/dist/wallet/seed/index.js.map +1 -0
- package/dist/wallet/seed/seed-auto-withdrawal-config.d.ts +11 -0
- package/dist/wallet/seed/seed-auto-withdrawal-config.d.ts.map +1 -0
- package/dist/wallet/seed/seed-auto-withdrawal-config.js +16 -0
- package/dist/wallet/seed/seed-auto-withdrawal-config.js.map +1 -0
- package/dist/wallet/service/wallet.service.d.ts +10 -2
- package/dist/wallet/service/wallet.service.d.ts.map +1 -1
- package/dist/wallet/service/wallet.service.js +96 -15
- package/dist/wallet/service/wallet.service.js.map +1 -1
- package/package.json +6 -1
|
@@ -276,6 +276,81 @@ export declare function createWalletRouter(wallet: WalletService, adminGuard: Ad
|
|
|
276
276
|
userId: import("zod").ZodUUID;
|
|
277
277
|
}, import("zod/v4/core").$strip>, import("zod").ZodBoolean, import("@orpc/server").MergedErrorMap<Record<never, never>, Record<never, never>>, Record<never, never>>;
|
|
278
278
|
};
|
|
279
|
+
autoWithdrawalConfig: {
|
|
280
|
+
set: import("@orpc/server").Procedure<import("@orpc/server").MergedInitialContext<OssContext & Record<never, never>, OssContext & Record<never, never>, OssContext>, OssContext, import("zod").ZodObject<{
|
|
281
|
+
fiatThreshold: import("zod").ZodString;
|
|
282
|
+
cryptoThreshold: import("zod").ZodString;
|
|
283
|
+
excludeRiskFlags: import("zod").ZodArray<import("zod").ZodEnum<{
|
|
284
|
+
high_roller: "high_roller";
|
|
285
|
+
vip: "vip";
|
|
286
|
+
bonus_abuser: "bonus_abuser";
|
|
287
|
+
high_risk: "high_risk";
|
|
288
|
+
inactive: "inactive";
|
|
289
|
+
large_depositor: "large_depositor";
|
|
290
|
+
self_excluded: "self_excluded";
|
|
291
|
+
kyc_pending: "kyc_pending";
|
|
292
|
+
kyc_rejected: "kyc_rejected";
|
|
293
|
+
basic_kyc_needed: "basic_kyc_needed";
|
|
294
|
+
advanced_kyc_needed: "advanced_kyc_needed";
|
|
295
|
+
test_account: "test_account";
|
|
296
|
+
dormant_high_roller: "dormant_high_roller";
|
|
297
|
+
withdrawal_review: "withdrawal_review";
|
|
298
|
+
multi_account: "multi_account";
|
|
299
|
+
level: "level";
|
|
300
|
+
}>>;
|
|
301
|
+
}, import("zod/v4/core").$strip>, import("zod").ZodObject<{
|
|
302
|
+
id: import("zod").ZodUUID;
|
|
303
|
+
fiatThreshold: import("zod").ZodString;
|
|
304
|
+
cryptoThreshold: import("zod").ZodString;
|
|
305
|
+
excludeRiskFlags: import("zod").ZodArray<import("zod").ZodEnum<{
|
|
306
|
+
high_roller: "high_roller";
|
|
307
|
+
vip: "vip";
|
|
308
|
+
bonus_abuser: "bonus_abuser";
|
|
309
|
+
high_risk: "high_risk";
|
|
310
|
+
inactive: "inactive";
|
|
311
|
+
large_depositor: "large_depositor";
|
|
312
|
+
self_excluded: "self_excluded";
|
|
313
|
+
kyc_pending: "kyc_pending";
|
|
314
|
+
kyc_rejected: "kyc_rejected";
|
|
315
|
+
basic_kyc_needed: "basic_kyc_needed";
|
|
316
|
+
advanced_kyc_needed: "advanced_kyc_needed";
|
|
317
|
+
test_account: "test_account";
|
|
318
|
+
dormant_high_roller: "dormant_high_roller";
|
|
319
|
+
withdrawal_review: "withdrawal_review";
|
|
320
|
+
multi_account: "multi_account";
|
|
321
|
+
level: "level";
|
|
322
|
+
}>>;
|
|
323
|
+
updatedBy: import("zod").ZodNullable<import("zod").ZodUUID>;
|
|
324
|
+
updatedAt: import("zod").ZodISODateTime;
|
|
325
|
+
createdAt: import("zod").ZodISODateTime;
|
|
326
|
+
}, import("zod/v4/core").$strip>, import("@orpc/server").MergedErrorMap<Record<never, never>, Record<never, never>>, Record<never, never>>;
|
|
327
|
+
get: import("@orpc/server").Procedure<import("@orpc/server").MergedInitialContext<OssContext & Record<never, never>, OssContext & Record<never, never>, OssContext>, OssContext, import("@orpc/server").Schema<unknown, unknown>, import("zod").ZodObject<{
|
|
328
|
+
id: import("zod").ZodUUID;
|
|
329
|
+
fiatThreshold: import("zod").ZodString;
|
|
330
|
+
cryptoThreshold: import("zod").ZodString;
|
|
331
|
+
excludeRiskFlags: import("zod").ZodArray<import("zod").ZodEnum<{
|
|
332
|
+
high_roller: "high_roller";
|
|
333
|
+
vip: "vip";
|
|
334
|
+
bonus_abuser: "bonus_abuser";
|
|
335
|
+
high_risk: "high_risk";
|
|
336
|
+
inactive: "inactive";
|
|
337
|
+
large_depositor: "large_depositor";
|
|
338
|
+
self_excluded: "self_excluded";
|
|
339
|
+
kyc_pending: "kyc_pending";
|
|
340
|
+
kyc_rejected: "kyc_rejected";
|
|
341
|
+
basic_kyc_needed: "basic_kyc_needed";
|
|
342
|
+
advanced_kyc_needed: "advanced_kyc_needed";
|
|
343
|
+
test_account: "test_account";
|
|
344
|
+
dormant_high_roller: "dormant_high_roller";
|
|
345
|
+
withdrawal_review: "withdrawal_review";
|
|
346
|
+
multi_account: "multi_account";
|
|
347
|
+
level: "level";
|
|
348
|
+
}>>;
|
|
349
|
+
updatedBy: import("zod").ZodNullable<import("zod").ZodUUID>;
|
|
350
|
+
updatedAt: import("zod").ZodISODateTime;
|
|
351
|
+
createdAt: import("zod").ZodISODateTime;
|
|
352
|
+
}, import("zod/v4/core").$strip>, import("@orpc/server").MergedErrorMap<Record<never, never>, Record<never, never>>, Record<never, never>>;
|
|
353
|
+
};
|
|
279
354
|
deposits: {
|
|
280
355
|
getAddress: import("@orpc/server").Procedure<import("@orpc/server").MergedInitialContext<OssContext & Record<never, never>, OssContext & Record<never, never>, OssContext>, OssContext, import("zod").ZodObject<{
|
|
281
356
|
currency: import("zod").ZodString;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/wallet/router/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAwB,KAAK,UAAU,EAAE,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAC9F,OAAO,KAAK,EACV,cAAc,EACd,cAAc,EACd,sBAAsB,EACvB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,aAAa,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/wallet/router/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAwB,KAAK,UAAU,EAAE,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAC9F,OAAO,KAAK,EACV,cAAc,EACd,cAAc,EACd,sBAAsB,EACvB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,aAAa,EAWd,MAAM,8BAA8B,CAAC;AAEtC,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,aAAa,EACrB,UAAU,EAAE,UAAU,EACtB,KAAK,EAAE,cAAc,EACrB,cAAc,EAAE,cAAc,EAC9B,eAAe,EAAE,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiMxC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { implement, ORPCError } from '@orpc/server';
|
|
2
2
|
import { getUserId, mapErrors } from '@openora/core/server';
|
|
3
3
|
import { walletContract } from '../contract/index.js';
|
|
4
|
-
import { WalletNotFoundError, WithdrawalNotFoundError, WithdrawalNotPendingError, InsufficientBalanceError, CurrencyMismatchError, KycRequiredError, IdempotencyKeyReuseError, DepositAddressUnsupportedError, DestinationAddressRequiredError, } from '../service/wallet.service.js';
|
|
4
|
+
import { WalletNotFoundError, WithdrawalNotFoundError, WithdrawalNotPendingError, InsufficientBalanceError, CurrencyMismatchError, KycRequiredError, IdempotencyKeyReuseError, DepositAddressUnsupportedError, DestinationAddressRequiredError, AutoWithdrawalConfigNotFoundError, } from '../service/wallet.service.js';
|
|
5
5
|
export function createWalletRouter(wallet, adminGuard, audit, paymentAdapter, webhookVerifier) {
|
|
6
6
|
const os = implement(walletContract).$context();
|
|
7
7
|
return os.router({
|
|
@@ -105,6 +105,18 @@ export function createWalletRouter(wallet, adminGuard, audit, paymentAdapter, we
|
|
|
105
105
|
return deleted;
|
|
106
106
|
}),
|
|
107
107
|
},
|
|
108
|
+
autoWithdrawalConfig: {
|
|
109
|
+
set: os.autoWithdrawalConfig.set.handler(async ({ input, context }) => {
|
|
110
|
+
const { userId: adminId, ip, userAgent, } = await adminGuard.assert(context, 'auto-withdrawal-config', 'update');
|
|
111
|
+
// The before-read, upsert, and audit write all run inside one transaction in
|
|
112
|
+
// the service - an audit failure rolls back the threshold change too.
|
|
113
|
+
return wallet.setAutoWithdrawalConfig(adminId, input, { ip, userAgent });
|
|
114
|
+
}),
|
|
115
|
+
get: os.autoWithdrawalConfig.get.handler(async ({ context }) => {
|
|
116
|
+
await adminGuard.assert(context, 'auto-withdrawal-config', 'view');
|
|
117
|
+
return mapErrors({ NOT_FOUND: AutoWithdrawalConfigNotFoundError }, () => wallet.getAutoWithdrawalConfig());
|
|
118
|
+
}),
|
|
119
|
+
},
|
|
108
120
|
deposits: {
|
|
109
121
|
getAddress: os.deposits.getAddress.handler(({ input, context }) => mapErrors({ CONFLICT: DepositAddressUnsupportedError }, () => wallet.getOrCreateDepositAddress(getUserId(context), input.currency))),
|
|
110
122
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/wallet/router/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAoC,MAAM,sBAAsB,CAAC;AAM9F,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAEL,mBAAmB,EACnB,uBAAuB,EACvB,yBAAyB,EACzB,wBAAwB,EACxB,qBAAqB,EACrB,gBAAgB,EAChB,wBAAwB,EACxB,8BAA8B,EAC9B,+BAA+B,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/wallet/router/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -628,8 +628,179 @@ export declare const walletDepositAddress: import("drizzle-orm/pg-core").PgTable
|
|
|
628
628
|
};
|
|
629
629
|
dialect: "pg";
|
|
630
630
|
}>;
|
|
631
|
+
export declare const walletAutoWithdrawalConfig: import("drizzle-orm/pg-core").PgTableWithColumns<{
|
|
632
|
+
name: "wallet_auto_withdrawal_config";
|
|
633
|
+
schema: undefined;
|
|
634
|
+
columns: {
|
|
635
|
+
id: import("drizzle-orm/pg-core").PgColumn<{
|
|
636
|
+
name: "id";
|
|
637
|
+
tableName: "wallet_auto_withdrawal_config";
|
|
638
|
+
dataType: "string";
|
|
639
|
+
columnType: "PgUUID";
|
|
640
|
+
data: string;
|
|
641
|
+
driverParam: string;
|
|
642
|
+
notNull: true;
|
|
643
|
+
hasDefault: true;
|
|
644
|
+
isPrimaryKey: true;
|
|
645
|
+
isAutoincrement: false;
|
|
646
|
+
hasRuntimeDefault: false;
|
|
647
|
+
enumValues: undefined;
|
|
648
|
+
baseColumn: never;
|
|
649
|
+
identity: undefined;
|
|
650
|
+
generated: undefined;
|
|
651
|
+
}, {}, {}>;
|
|
652
|
+
singletonKey: import("drizzle-orm/pg-core").PgColumn<{
|
|
653
|
+
name: "singletonKey";
|
|
654
|
+
tableName: "wallet_auto_withdrawal_config";
|
|
655
|
+
dataType: "string";
|
|
656
|
+
columnType: "PgText";
|
|
657
|
+
data: string;
|
|
658
|
+
driverParam: string;
|
|
659
|
+
notNull: true;
|
|
660
|
+
hasDefault: true;
|
|
661
|
+
isPrimaryKey: false;
|
|
662
|
+
isAutoincrement: false;
|
|
663
|
+
hasRuntimeDefault: false;
|
|
664
|
+
enumValues: [string, ...string[]];
|
|
665
|
+
baseColumn: never;
|
|
666
|
+
identity: undefined;
|
|
667
|
+
generated: undefined;
|
|
668
|
+
}, {}, {}>;
|
|
669
|
+
fiatThreshold: import("drizzle-orm/pg-core").PgColumn<{
|
|
670
|
+
name: "fiatThreshold";
|
|
671
|
+
tableName: "wallet_auto_withdrawal_config";
|
|
672
|
+
dataType: "string";
|
|
673
|
+
columnType: "PgNumeric";
|
|
674
|
+
data: string;
|
|
675
|
+
driverParam: string;
|
|
676
|
+
notNull: true;
|
|
677
|
+
hasDefault: false;
|
|
678
|
+
isPrimaryKey: false;
|
|
679
|
+
isAutoincrement: false;
|
|
680
|
+
hasRuntimeDefault: false;
|
|
681
|
+
enumValues: undefined;
|
|
682
|
+
baseColumn: never;
|
|
683
|
+
identity: undefined;
|
|
684
|
+
generated: undefined;
|
|
685
|
+
}, {}, {}>;
|
|
686
|
+
cryptoThreshold: import("drizzle-orm/pg-core").PgColumn<{
|
|
687
|
+
name: "cryptoThreshold";
|
|
688
|
+
tableName: "wallet_auto_withdrawal_config";
|
|
689
|
+
dataType: "string";
|
|
690
|
+
columnType: "PgNumeric";
|
|
691
|
+
data: string;
|
|
692
|
+
driverParam: string;
|
|
693
|
+
notNull: true;
|
|
694
|
+
hasDefault: false;
|
|
695
|
+
isPrimaryKey: false;
|
|
696
|
+
isAutoincrement: false;
|
|
697
|
+
hasRuntimeDefault: false;
|
|
698
|
+
enumValues: undefined;
|
|
699
|
+
baseColumn: never;
|
|
700
|
+
identity: undefined;
|
|
701
|
+
generated: undefined;
|
|
702
|
+
}, {}, {}>;
|
|
703
|
+
excludeRiskFlags: import("drizzle-orm/pg-core").PgColumn<{
|
|
704
|
+
name: "excludeRiskFlags";
|
|
705
|
+
tableName: "wallet_auto_withdrawal_config";
|
|
706
|
+
dataType: "array";
|
|
707
|
+
columnType: "PgArray";
|
|
708
|
+
data: ("high_roller" | "vip" | "bonus_abuser" | "high_risk" | "inactive" | "large_depositor" | "self_excluded" | "kyc_pending" | "kyc_rejected" | "basic_kyc_needed" | "advanced_kyc_needed" | "test_account" | "dormant_high_roller" | "withdrawal_review" | "multi_account" | "level")[];
|
|
709
|
+
driverParam: string | string[];
|
|
710
|
+
notNull: true;
|
|
711
|
+
hasDefault: true;
|
|
712
|
+
isPrimaryKey: false;
|
|
713
|
+
isAutoincrement: false;
|
|
714
|
+
hasRuntimeDefault: false;
|
|
715
|
+
enumValues: [string, ...string[]];
|
|
716
|
+
baseColumn: import("drizzle-orm").Column<{
|
|
717
|
+
name: "";
|
|
718
|
+
tableName: "wallet_auto_withdrawal_config";
|
|
719
|
+
dataType: "string";
|
|
720
|
+
columnType: "PgText";
|
|
721
|
+
data: string;
|
|
722
|
+
driverParam: string;
|
|
723
|
+
notNull: false;
|
|
724
|
+
hasDefault: false;
|
|
725
|
+
isPrimaryKey: false;
|
|
726
|
+
isAutoincrement: false;
|
|
727
|
+
hasRuntimeDefault: false;
|
|
728
|
+
enumValues: [string, ...string[]];
|
|
729
|
+
baseColumn: never;
|
|
730
|
+
identity: undefined;
|
|
731
|
+
generated: undefined;
|
|
732
|
+
}, {}, {}>;
|
|
733
|
+
identity: undefined;
|
|
734
|
+
generated: undefined;
|
|
735
|
+
}, {}, {
|
|
736
|
+
size: undefined;
|
|
737
|
+
baseBuilder: import("drizzle-orm/pg-core").PgColumnBuilder<{
|
|
738
|
+
name: "";
|
|
739
|
+
dataType: "string";
|
|
740
|
+
columnType: "PgText";
|
|
741
|
+
data: string;
|
|
742
|
+
enumValues: [string, ...string[]];
|
|
743
|
+
driverParam: string;
|
|
744
|
+
}, {}, {}, import("drizzle-orm").ColumnBuilderExtraConfig>;
|
|
745
|
+
$type: ("high_roller" | "vip" | "bonus_abuser" | "high_risk" | "inactive" | "large_depositor" | "self_excluded" | "kyc_pending" | "kyc_rejected" | "basic_kyc_needed" | "advanced_kyc_needed" | "test_account" | "dormant_high_roller" | "withdrawal_review" | "multi_account" | "level")[];
|
|
746
|
+
}>;
|
|
747
|
+
updatedBy: import("drizzle-orm/pg-core").PgColumn<{
|
|
748
|
+
name: "updatedBy";
|
|
749
|
+
tableName: "wallet_auto_withdrawal_config";
|
|
750
|
+
dataType: "string";
|
|
751
|
+
columnType: "PgUUID";
|
|
752
|
+
data: string;
|
|
753
|
+
driverParam: string;
|
|
754
|
+
notNull: false;
|
|
755
|
+
hasDefault: false;
|
|
756
|
+
isPrimaryKey: false;
|
|
757
|
+
isAutoincrement: false;
|
|
758
|
+
hasRuntimeDefault: false;
|
|
759
|
+
enumValues: undefined;
|
|
760
|
+
baseColumn: never;
|
|
761
|
+
identity: undefined;
|
|
762
|
+
generated: undefined;
|
|
763
|
+
}, {}, {}>;
|
|
764
|
+
updatedAt: import("drizzle-orm/pg-core").PgColumn<{
|
|
765
|
+
name: "updatedAt";
|
|
766
|
+
tableName: "wallet_auto_withdrawal_config";
|
|
767
|
+
dataType: "date";
|
|
768
|
+
columnType: "PgTimestamp";
|
|
769
|
+
data: Date;
|
|
770
|
+
driverParam: string;
|
|
771
|
+
notNull: true;
|
|
772
|
+
hasDefault: true;
|
|
773
|
+
isPrimaryKey: false;
|
|
774
|
+
isAutoincrement: false;
|
|
775
|
+
hasRuntimeDefault: false;
|
|
776
|
+
enumValues: undefined;
|
|
777
|
+
baseColumn: never;
|
|
778
|
+
identity: undefined;
|
|
779
|
+
generated: undefined;
|
|
780
|
+
}, {}, {}>;
|
|
781
|
+
createdAt: import("drizzle-orm/pg-core").PgColumn<{
|
|
782
|
+
name: "createdAt";
|
|
783
|
+
tableName: "wallet_auto_withdrawal_config";
|
|
784
|
+
dataType: "date";
|
|
785
|
+
columnType: "PgTimestamp";
|
|
786
|
+
data: Date;
|
|
787
|
+
driverParam: string;
|
|
788
|
+
notNull: true;
|
|
789
|
+
hasDefault: true;
|
|
790
|
+
isPrimaryKey: false;
|
|
791
|
+
isAutoincrement: false;
|
|
792
|
+
hasRuntimeDefault: false;
|
|
793
|
+
enumValues: undefined;
|
|
794
|
+
baseColumn: never;
|
|
795
|
+
identity: undefined;
|
|
796
|
+
generated: undefined;
|
|
797
|
+
}, {}, {}>;
|
|
798
|
+
};
|
|
799
|
+
dialect: "pg";
|
|
800
|
+
}>;
|
|
631
801
|
export type Wallet = typeof wallet.$inferSelect;
|
|
632
802
|
export type WalletTransaction = typeof walletTransaction.$inferSelect;
|
|
633
803
|
export type AutoWithdrawalRule = typeof autoWithdrawalRule.$inferSelect;
|
|
634
804
|
export type WalletDepositAddress = typeof walletDepositAddress.$inferSelect;
|
|
805
|
+
export type WalletAutoWithdrawalConfig = typeof walletAutoWithdrawalConfig.$inferSelect;
|
|
635
806
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/wallet/schema/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/wallet/schema/index.ts"],"names":[],"mappings":"AAsBA,eAAO,MAAM,yBAAyB,uHAGrC,CAAC;AAEF,eAAO,MAAM,2BAA2B,4HAGvC,CAAC;AAEF,eAAO,MAAM,cAAc,0DAAsC,CAAC;AAElE,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQjB,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoD7B,CAAC;AAGF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAU7B,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAchC,CAAC;AAIF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiBrC,CAAC;AAEH,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC,YAAY,CAAC;AAChD,MAAM,MAAM,iBAAiB,GAAG,OAAO,iBAAiB,CAAC,YAAY,CAAC;AACtE,MAAM,MAAM,kBAAkB,GAAG,OAAO,kBAAkB,CAAC,YAAY,CAAC;AACxE,MAAM,MAAM,oBAAoB,GAAG,OAAO,oBAAoB,CAAC,YAAY,CAAC;AAC5E,MAAM,MAAM,0BAA0B,GAAG,OAAO,0BAA0B,CAAC,YAAY,CAAC"}
|
|
@@ -87,4 +87,22 @@ export const walletDepositAddress = pgTable('wallet_deposit_address', {
|
|
|
87
87
|
uniqueIndex('wallet_deposit_address_user_id_currency_idx').on(t.userId, t.currency),
|
|
88
88
|
index('wallet_deposit_address_address_idx').on(t.address),
|
|
89
89
|
]);
|
|
90
|
+
// Global fiat/crypto auto-withdrawal thresholds (BF-211), Super-Admin-editable at runtime.
|
|
91
|
+
// singletonKey's unique constraint DB-enforces exactly one row ever ('global').
|
|
92
|
+
export const walletAutoWithdrawalConfig = pgTable('wallet_auto_withdrawal_config', {
|
|
93
|
+
id: uuid().primaryKey().defaultRandom(),
|
|
94
|
+
singletonKey: text().notNull().unique().default('global'),
|
|
95
|
+
fiatThreshold: decimal({ precision: 18, scale: 8 }).notNull(),
|
|
96
|
+
cryptoThreshold: decimal({ precision: 18, scale: 8 }).notNull(),
|
|
97
|
+
excludeRiskFlags: text()
|
|
98
|
+
.array()
|
|
99
|
+
.$type()
|
|
100
|
+
.notNull()
|
|
101
|
+
.default(sql `ARRAY['high_risk','bonus_abuser','kyc_rejected','withdrawal_review','multi_account']::text[]`),
|
|
102
|
+
updatedBy: uuid(),
|
|
103
|
+
updatedAt: timestamp({ withTimezone: true })
|
|
104
|
+
.notNull()
|
|
105
|
+
.$onUpdateFn(() => new Date()),
|
|
106
|
+
createdAt: timestamp({ withTimezone: true }).notNull().defaultNow(),
|
|
107
|
+
});
|
|
90
108
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/wallet/schema/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EACL,OAAO,EACP,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,SAAS,EACT,MAAM,EACN,KAAK,EACL,WAAW,GACZ,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,YAAY,EACZ,2BAA2B,EAC3B,wBAAwB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/wallet/schema/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EACL,OAAO,EACP,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,SAAS,EACT,MAAM,EACN,KAAK,EACL,WAAW,GACZ,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,YAAY,EACZ,2BAA2B,EAC3B,wBAAwB,GAIzB,MAAM,yBAAyB,CAAC;AAEjC,mFAAmF;AACnF,6EAA6E;AAC7E,MAAM,CAAC,MAAM,yBAAyB,GAAG,MAAM,CAC7C,yBAAyB,EACzB,wBAAwB,CACzB,CAAC;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG,MAAM,CAC/C,2BAA2B,EAC3B,2BAA2B,CAC5B,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;AAElE,MAAM,CAAC,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE;IACtC,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,CAAC,aAAa,EAAE;IACvC,MAAM,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,uBAAuB,CAAC;IACxD,OAAO,EAAE,OAAO,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC;IACpE,QAAQ,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACzC,SAAS,EAAE,SAAS,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;SACzC,OAAO,EAAE;SACT,WAAW,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC;CACjC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,iBAAiB,GAAG,OAAO,CACtC,oBAAoB,EACpB;IACE,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,CAAC,aAAa,EAAE;IACvC,QAAQ,EAAE,IAAI,EAAE;SACb,OAAO,EAAE;SACT,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;IAC9B,IAAI,EAAE,yBAAyB,EAAE,CAAC,OAAO,EAAE;IAC3C,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE;IACtD,QAAQ,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE;IAC1B,MAAM,EAAE,2BAA2B,EAAE;SAClC,KAAK,EAA2B;SAChC,OAAO,EAAE;SACT,OAAO,CAAC,SAAS,CAAC;IACrB,IAAI,EAAE,cAAc,EAAE,CAAC,KAAK,EAAc;IAC1C,8EAA8E;IAC9E,2BAA2B;IAC3B,UAAU,EAAE,IAAI,EAAE;IAClB,UAAU,EAAE,SAAS,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IAC7C,YAAY,EAAE,IAAI,EAAE;IACpB,gFAAgF;IAChF,0EAA0E;IAC1E,uDAAuD;IACvD,YAAY,EAAE,IAAI,EAAE;IACpB,aAAa,EAAE,IAAI,EAAE;IACrB,kBAAkB,EAAE,IAAI,EAAE;IAC1B,MAAM,EAAE,IAAI,EAAE;IACd,gFAAgF;IAChF,2DAA2D;IAC3D,QAAQ,EAAE,IAAI,EAAE;IAChB,oFAAoF;IACpF,2EAA2E;IAC3E,cAAc,EAAE,IAAI,EAAE;IACtB,SAAS,EAAE,SAAS,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,UAAU,EAAE;CACpE,EACD,CAAC,CAAC,EAAE,EAAE,CAAC;IACL,KAAK,CAAC,kCAAkC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;IACxD,KAAK,CAAC,mCAAmC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1D,KAAK,CAAC,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/C,KAAK,CAAC,+BAA+B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;IACnD,KAAK,CAAC,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/C,KAAK,CAAC,iCAAiC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;IACvD,KAAK,CAAC,gCAAgC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;IACpD,KAAK,CAAC,+CAA+C,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,SAAS,CAAC;IACxF,KAAK,CAAC,8CAA8C,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;IACtF,WAAW,CAAC,wCAAwC,CAAC;SAClD,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;SACnB,KAAK,CAAC,GAAG,CAAA,GAAG,CAAC,CAAC,aAAa,cAAc,CAAC;IAC7C,WAAW,CAAC,kDAAkD,CAAC;SAC5D,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,cAAc,CAAC;SAChC,KAAK,CAAC,GAAG,CAAA,GAAG,CAAC,CAAC,cAAc,cAAc,CAAC;CAC/C,CACF,CAAC;AAEF,oGAAoG;AACpG,MAAM,CAAC,MAAM,kBAAkB,GAAG,OAAO,CAAC,sBAAsB,EAAE;IAChE,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,CAAC,aAAa,EAAE;IACvC,MAAM,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,qCAAqC,CAAC;IACtE,SAAS,EAAE,OAAO,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE;IACzD,MAAM,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE;IACxB,SAAS,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE;IAC3B,SAAS,EAAE,SAAS,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,UAAU,EAAE;IACnE,SAAS,EAAE,SAAS,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;SACzC,OAAO,EAAE;SACT,WAAW,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC;CACjC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,oBAAoB,GAAG,OAAO,CACzC,wBAAwB,EACxB;IACE,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,CAAC,aAAa,EAAE;IACvC,MAAM,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE;IACxB,QAAQ,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE;IAC1B,OAAO,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE;IACzB,YAAY,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE;IAC9B,SAAS,EAAE,SAAS,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,UAAU,EAAE;CACpE,EACD,CAAC,CAAC,EAAE,EAAE,CAAC;IACL,WAAW,CAAC,6CAA6C,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC;IACnF,KAAK,CAAC,oCAAoC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;CAC1D,CACF,CAAC;AAEF,2FAA2F;AAC3F,gFAAgF;AAChF,MAAM,CAAC,MAAM,0BAA0B,GAAG,OAAO,CAAC,+BAA+B,EAAE;IACjF,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,CAAC,aAAa,EAAE;IACvC,YAAY,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC;IACzD,aAAa,EAAE,OAAO,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE;IAC7D,eAAe,EAAE,OAAO,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE;IAC/D,gBAAgB,EAAE,IAAI,EAAE;SACrB,KAAK,EAAE;SACP,KAAK,EAAY;SACjB,OAAO,EAAE;SACT,OAAO,CACN,GAAG,CAAA,8FAA8F,CAClG;IACH,SAAS,EAAE,IAAI,EAAE;IACjB,SAAS,EAAE,SAAS,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;SACzC,OAAO,EAAE;SACT,WAAW,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC;IAChC,SAAS,EAAE,SAAS,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,UAAU,EAAE;CACpE,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/wallet/seed/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/wallet/seed/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { DrizzleDb } from '@openora/core/server';
|
|
2
|
+
/**
|
|
3
|
+
* Idempotently seeds the singleton global auto-withdrawal config row. Zero
|
|
4
|
+
* thresholds reproduce today's "off until a Super Admin configures it"
|
|
5
|
+
* default (see wallet.service.ts's evaluateAutoApproval: a threshold <= 0
|
|
6
|
+
* never auto-approves). Does not set `excludeRiskFlags` - the column's
|
|
7
|
+
* migration-level DEFAULT (five starting tags, not an enforced floor)
|
|
8
|
+
* applies on insert, same idempotent-no-op reasoning as the thresholds.
|
|
9
|
+
*/
|
|
10
|
+
export declare function seedAutoWithdrawalConfig(db: DrizzleDb): Promise<void>;
|
|
11
|
+
//# sourceMappingURL=seed-auto-withdrawal-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"seed-auto-withdrawal-config.d.ts","sourceRoot":"","sources":["../../../src/wallet/seed/seed-auto-withdrawal-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAGtD;;;;;;;GAOG;AACH,wBAAsB,wBAAwB,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAK3E"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { walletAutoWithdrawalConfig } from '../schema/index.js';
|
|
2
|
+
/**
|
|
3
|
+
* Idempotently seeds the singleton global auto-withdrawal config row. Zero
|
|
4
|
+
* thresholds reproduce today's "off until a Super Admin configures it"
|
|
5
|
+
* default (see wallet.service.ts's evaluateAutoApproval: a threshold <= 0
|
|
6
|
+
* never auto-approves). Does not set `excludeRiskFlags` - the column's
|
|
7
|
+
* migration-level DEFAULT (five starting tags, not an enforced floor)
|
|
8
|
+
* applies on insert, same idempotent-no-op reasoning as the thresholds.
|
|
9
|
+
*/
|
|
10
|
+
export async function seedAutoWithdrawalConfig(db) {
|
|
11
|
+
await db
|
|
12
|
+
.insert(walletAutoWithdrawalConfig)
|
|
13
|
+
.values({ singletonKey: 'global', fiatThreshold: '0', cryptoThreshold: '0' })
|
|
14
|
+
.onConflictDoNothing({ target: walletAutoWithdrawalConfig.singletonKey });
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=seed-auto-withdrawal-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"seed-auto-withdrawal-config.js","sourceRoot":"","sources":["../../../src/wallet/seed/seed-auto-withdrawal-config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAEhE;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,EAAa;IAC1D,MAAM,EAAE;SACL,MAAM,CAAC,0BAA0B,CAAC;SAClC,MAAM,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,CAAC;SAC5E,mBAAmB,CAAC,EAAE,MAAM,EAAE,0BAA0B,CAAC,YAAY,EAAE,CAAC,CAAC;AAC9E,CAAC"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { type EventBus, DrizzleService } from '@openora/core/server';
|
|
2
|
-
import { type PaymentAdapter, type PaymentWebhookEvent, type AdminUserDirectory, type PlatformConfig, type RateLimiterAdapter, type RateLimitKey, type WalletRail, type PlayerTags, type AuditWritePort, type TagEvaluationCommands, type User, type ClientMeta, type PaginationOptions } from '@openora/core/contracts';
|
|
2
|
+
import { type PaymentAdapter, type PaymentWebhookEvent, type AdminUserDirectory, type PlatformConfig, type RateLimiterAdapter, type RateLimitKey, type WalletRail, type PlayerTags, type AuditWritePort, type TagEvaluationCommands, type TagKey, type User, type ClientMeta, type PaginationOptions } from '@openora/core/contracts';
|
|
3
3
|
import { type WalletTransaction } from '../schema/index.js';
|
|
4
|
-
import type { TransactionResult, WithdrawalQueueFilter, AutoWithdrawalRule, WalletTransactionSortBy } from '../contract/index.js';
|
|
4
|
+
import type { TransactionResult, WithdrawalQueueFilter, AutoWithdrawalRule, WalletAutoWithdrawalConfig, WalletTransactionSortBy } from '../contract/index.js';
|
|
5
5
|
export declare const WalletNotFoundError: new (id: string) => Error;
|
|
6
6
|
export declare const WithdrawalNotFoundError: new (id: string) => Error;
|
|
7
|
+
export declare const AutoWithdrawalConfigNotFoundError: new (id: string) => Error;
|
|
7
8
|
export declare const InsufficientBalanceError: new (available: string, requested: string) => Error;
|
|
8
9
|
export declare const WithdrawalNotPendingError: new () => Error;
|
|
9
10
|
export declare const KycRequiredError: new () => Error;
|
|
@@ -119,6 +120,13 @@ export declare class WalletService {
|
|
|
119
120
|
private maybeAutoApprove;
|
|
120
121
|
private evaluateAutoApproval;
|
|
121
122
|
private resolveAutoThreshold;
|
|
123
|
+
getAutoWithdrawalConfig(): Promise<WalletAutoWithdrawalConfig>;
|
|
124
|
+
getAutoWithdrawalConfigOrNull(): Promise<WalletAutoWithdrawalConfig | null>;
|
|
125
|
+
setAutoWithdrawalConfig(adminId: User['id'], { fiatThreshold, cryptoThreshold, excludeRiskFlags, }: {
|
|
126
|
+
fiatThreshold: string;
|
|
127
|
+
cryptoThreshold: string;
|
|
128
|
+
excludeRiskFlags: TagKey[];
|
|
129
|
+
}, meta?: ClientMeta): Promise<WalletAutoWithdrawalConfig>;
|
|
122
130
|
private autoApprovalKycStatus;
|
|
123
131
|
private autoApprovalRiskTags;
|
|
124
132
|
private autoApprovalHeuristics;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet.service.d.ts","sourceRoot":"","sources":["../../../src/wallet/service/wallet.service.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,QAAQ,EAMb,cAAc,EAOf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EAEnB,KAAK,kBAAkB,EACvB,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,qBAAqB,
|
|
1
|
+
{"version":3,"file":"wallet.service.d.ts","sourceRoot":"","sources":["../../../src/wallet/service/wallet.service.ts"],"names":[],"mappings":"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"}
|