@openora/core 0.4.1-canary.56 → 0.4.1-canary.57

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.
@@ -31,6 +31,10 @@ export declare const AutoWithdrawalConfigSchema: z.ZodObject<{
31
31
  dailyCapCount: z.ZodOptional<z.ZodNumber>;
32
32
  }, z.core.$strict>;
33
33
  export type AutoWithdrawalConfig = z.infer<typeof AutoWithdrawalConfigSchema>;
34
+ export declare const WalletConfigSchema: z.ZodObject<{
35
+ cryptoCurrencies: z.ZodOptional<z.ZodArray<z.ZodString>>;
36
+ }, z.core.$strict>;
37
+ export type WalletConfig = z.infer<typeof WalletConfigSchema>;
34
38
  export declare const PlatformConfigSchema: z.ZodObject<{
35
39
  features: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodBoolean>>;
36
40
  brands: z.ZodDefault<z.ZodArray<z.ZodObject<{
@@ -58,6 +62,9 @@ export declare const PlatformConfigSchema: z.ZodObject<{
58
62
  dailyCapAmount: z.ZodOptional<z.ZodString>;
59
63
  dailyCapCount: z.ZodOptional<z.ZodNumber>;
60
64
  }, z.core.$strict>>;
65
+ wallet: z.ZodOptional<z.ZodObject<{
66
+ cryptoCurrencies: z.ZodOptional<z.ZodArray<z.ZodString>>;
67
+ }, z.core.$strict>>;
61
68
  supportedLanguages: z.ZodOptional<z.ZodArray<z.ZodString>>;
62
69
  }, z.core.$strict>;
63
70
  export type PlatformConfig = z.infer<typeof PlatformConfigSchema>;
@@ -97,6 +104,9 @@ export declare const PLATFORM_CONFIG: import("../adapters/token.js").Token<{
97
104
  dailyCapAmount?: string | undefined;
98
105
  dailyCapCount?: number | undefined;
99
106
  } | undefined;
107
+ wallet?: {
108
+ cryptoCurrencies?: string[] | undefined;
109
+ } | undefined;
100
110
  supportedLanguages?: string[] | undefined;
101
111
  }, string>;
102
112
  //# sourceMappingURL=platform-config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"platform-config.d.ts","sourceRoot":"","sources":["../../../src/contracts/schemas/platform-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB;;;;;;;;;;;;GAYG;AAEH,eAAO,MAAM,kBAAkB,wCAAoC,CAAC;AAEpE,eAAO,MAAM,WAAW;;;;;kBAUb,CAAC;AAEZ,eAAO,MAAM,eAAe;;;;;kBAcjB,CAAC;AAEZ,eAAO,MAAM,0BAA0B;;;;kBAQ5B,CAAC;AAEZ,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA8C7B,CAAC;AAEL,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAEvE;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,mBAAmB,GAAG,cAAc,CAShF;AAED,8EAA8E;AAC9E,eAAO,MAAM,qBAAqB,EAAE,cAAyC,CAAC;AAE9E,+EAA+E;AAC/E,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;UAAiD,CAAC"}
1
+ {"version":3,"file":"platform-config.d.ts","sourceRoot":"","sources":["../../../src/contracts/schemas/platform-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB;;;;;;;;;;;;GAYG;AAEH,eAAO,MAAM,kBAAkB,wCAAoC,CAAC;AAEpE,eAAO,MAAM,WAAW;;;;;kBAUb,CAAC;AAEZ,eAAO,MAAM,eAAe;;;;;kBAcjB,CAAC;AAEZ,eAAO,MAAM,0BAA0B;;;;kBAQ5B,CAAC;AAEZ,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E,eAAO,MAAM,kBAAkB;;kBAUpB,CAAC;AAEZ,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAgD7B,CAAC;AAEL,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAEvE;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,mBAAmB,GAAG,cAAc,CAShF;AAED,8EAA8E;AAC9E,eAAO,MAAM,qBAAqB,EAAE,cAAyC,CAAC;AAE9E,+EAA+E;AAC/E,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UAAiD,CAAC"}
@@ -51,6 +51,17 @@ export const AutoWithdrawalConfigSchema = z
51
51
  dailyCapCount: z.number().int().positive().optional(),
52
52
  })
53
53
  .strict();
54
+ export const WalletConfigSchema = z
55
+ .object({
56
+ /**
57
+ * Currency codes routed to the crypto rail by `railFor` (case-insensitive).
58
+ * Absent = the built-in default (BTC, ETH, USDT, USDC). Lets an operator add or
59
+ * swap crypto assets (eg a custody vendor's supported asset list) without a
60
+ * core code change.
61
+ */
62
+ cryptoCurrencies: z.array(z.string().min(1)).optional(),
63
+ })
64
+ .strict();
54
65
  export const PlatformConfigSchema = z
55
66
  .object({
56
67
  /**
@@ -82,6 +93,8 @@ export const PlatformConfigSchema = z
82
93
  kyc: KycConfigSchema.optional(),
83
94
  /** Auto-approve withdrawals that clear every risk gate instead of queuing them for manual review. Absent = always manual. */
84
95
  autoWithdrawal: AutoWithdrawalConfigSchema.optional(),
96
+ /** Wallet rail-routing knobs (currently: the crypto currency set). Absent = built-in default. */
97
+ wallet: WalletConfigSchema.optional(),
85
98
  /**
86
99
  * Player-facing language codes the operator supports (eg `['en', 'es']`).
87
100
  * Undefined or empty means no restriction - any value is accepted.
@@ -1 +1 @@
1
- {"version":3,"file":"platform-config.js","sourceRoot":"","sources":["../../../src/contracts/schemas/platform-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"platform-config.js","sourceRoot":"","sources":["../../../src/contracts/schemas/platform-config.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { describe, it, expect } from 'vitest';
2
2
  import { railFor } from '../service/wallet.service.js';
3
3
  describe('railFor', () => {
4
- it.each(['BTC', 'ETH', 'USDT'])('routes %s to the crypto rail', (currency) => {
4
+ it.each(['BTC', 'ETH', 'USDT', 'USDC'])('routes %s to the crypto rail', (currency) => {
5
5
  expect(railFor(currency)).toBe('crypto');
6
6
  });
7
7
  it.each(['USD', 'EUR', 'UAH', 'GBP'])('routes %s to the fiat rail', (currency) => {
@@ -18,5 +18,12 @@ describe('railFor', () => {
18
18
  expect(railFor('BTCX')).toBe('fiat');
19
19
  expect(railFor(' BTC')).toBe('fiat');
20
20
  });
21
+ it('overrides the built-in set when a custom currency list is passed', () => {
22
+ expect(railFor('SOL', ['SOL', 'XRP'])).toBe('crypto');
23
+ expect(railFor('BTC', ['SOL', 'XRP'])).toBe('fiat');
24
+ });
25
+ it('normalises case in the override list too', () => {
26
+ expect(railFor('sol', ['SOL'])).toBe('crypto');
27
+ });
21
28
  });
22
29
  //# sourceMappingURL=rail-for.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rail-for.test.js","sourceRoot":"","sources":["../../../src/wallet/__tests__/rail-for.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAEvD,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;IACvB,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,8BAA8B,EAAE,CAAC,QAAQ,EAAE,EAAE;QAC3E,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,4BAA4B,EAAE,CAAC,QAAQ,EAAE,EAAE;QAC/E,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,mCAAmC,EAAE,CAAC,QAAQ,EAAE,EAAE;QAChF,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;QACjE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACpC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uEAAuE,EAAE,GAAG,EAAE;QAC/E,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"rail-for.test.js","sourceRoot":"","sources":["../../../src/wallet/__tests__/rail-for.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAEvD,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;IACvB,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,8BAA8B,EAAE,CAAC,QAAQ,EAAE,EAAE;QACnF,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,4BAA4B,EAAE,CAAC,QAAQ,EAAE,EAAE;QAC/E,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,mCAAmC,EAAE,CAAC,QAAQ,EAAE,EAAE;QAChF,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;QACjE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACpC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uEAAuE,EAAE,GAAG,EAAE;QAC/E,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kEAAkE,EAAE,GAAG,EAAE;QAC1E,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtD,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;QAClD,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../src/wallet/plugin.ts"],"names":[],"mappings":";AAwBA,wBA4CG"}
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../src/wallet/plugin.ts"],"names":[],"mappings":";AAwBA,wBAmDG"}
@@ -26,7 +26,7 @@ export default definePlugin({
26
26
  return new HmacPaymentWebhookVerifier(webhookSecret);
27
27
  });
28
28
  // Other modules debit through this port within their own transaction (never importing wallet tables). See ADR-0016.
29
- ctx.provide(WALLET_COMMANDS, (c) => new WalletCommandsService(c.get(PLAY_ELIGIBILITY)));
29
+ ctx.provide(WALLET_COMMANDS, (c) => new WalletCommandsService(c.get(PLAY_ELIGIBILITY), c.has(PLATFORM_CONFIG) ? c.get(PLATFORM_CONFIG) : undefined));
30
30
  // Read-only queries for cross-module consumers (eg tag evaluation). Never exposes wallet internals.
31
31
  ctx.provide(WALLET_READER, (c) => new WalletReaderService(c.get(DRIZZLE)));
32
32
  ctx.provide(ADMIN_WALLET_REPORTING, (c) => new DrizzleAdminWalletReporting(c.get(DRIZZLE)));
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/wallet/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACrF,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AACzB,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,eAAe,EACf,wBAAwB,EACxB,eAAe,EACf,aAAa,EACb,eAAe,EACf,YAAY,EACZ,WAAW,EACX,uBAAuB,EACvB,gBAAgB,EAChB,YAAY,GACb,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAC7E,OAAO,EAAE,0BAA0B,EAAE,MAAM,6CAA6C,CAAC;AAEzF,eAAe,YAAY,CAAC;IAC1B,sFAAsF;IACtF,uFAAuF;IACvF,iFAAiF;IACjF,yEAAyE;IACzE,EAAE,EAAE,QAAQ;IACZ,SAAS,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC;IAChC,QAAQ,CAAC,GAAG;QACV,GAAG,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,EAAE,CAAC,IAAI,kBAAkB,EAAE,CAAC,CAAC;QAC7D,GAAG,CAAC,OAAO,CAAC,wBAAwB,EAAE,GAAG,EAAE;YACzC,MAAM,aAAa,GAAG,CAAC;iBACpB,MAAM,EAAE;iBACR,GAAG,CAAC,CAAC,CAAC;iBACN,QAAQ,EAAE;iBACV,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,SAAS,CAAC,CAAC;YAC1D,OAAO,IAAI,0BAA0B,CAAC,aAAa,CAAC,CAAC;QACvD,CAAC,CAAC,CAAC;QACH,oHAAoH;QACpH,GAAG,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,qBAAqB,CAAC,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;QACxF,oGAAoG;QACpG,GAAG,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,mBAAmB,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3E,GAAG,CAAC,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,2BAA2B,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC5F,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAC9B,kBAAkB,CAChB,IAAI,aAAa,CAAC;YAChB,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC;YACvB,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC;YACxB,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC;YAC/B,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,oBAAoB,CAAC;YACtC,cAAc,EAAE,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,SAAS;YAC3E,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC;YAC5B,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS;YAC7D,qBAAqB,EAAE,CAAC,CAAC,GAAG,CAAC,uBAAuB,CAAC;gBACnD,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,uBAAuB,CAAC;gBAChC,CAAC,CAAC,SAAS;YACb,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC;SAC3B,CAAC,EACF,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,EAClB,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,EACnB,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,EACtB,CAAC,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAChC,CACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/wallet/plugin.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
- import type { PlayEligibilityPort, WalletCommands, WalletDebitArgs, WalletDebitOutcome, WalletCreditArgs, WalletCreditOutcome } from '@openora/core/contracts';
1
+ import type { PlayEligibilityPort, PlatformConfig, WalletCommands, WalletDebitArgs, WalletDebitOutcome, WalletCreditArgs, WalletCreditOutcome } from '@openora/core/contracts';
2
2
  export declare const WalletCommandAmountError: new (operation: string, amount: string) => Error;
3
3
  export declare const WalletRgRestrictedError: new () => Error;
4
4
  export declare class WalletCommandsService implements WalletCommands {
5
5
  private readonly playEligibility;
6
- constructor(playEligibility: PlayEligibilityPort);
6
+ private readonly platformConfig?;
7
+ constructor(playEligibility: PlayEligibilityPort, platformConfig?: PlatformConfig | undefined);
7
8
  private writeLedgerRow;
8
9
  debit(tx: unknown, { userId, amount, type }: WalletDebitArgs): Promise<WalletDebitOutcome>;
9
10
  credit(tx: unknown, { userId, amount, currency, type }: WalletCreditArgs): Promise<WalletCreditOutcome>;
@@ -1 +1 @@
1
- {"version":3,"file":"wallet-commands.service.d.ts","sourceRoot":"","sources":["../../../src/wallet/service/wallet-commands.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,EAEpB,MAAM,yBAAyB,CAAC;AAMjC,eAAO,MAAM,wBAAwB,kDAGpC,CAAC;AASF,eAAO,MAAM,uBAAuB,iBAGnC,CAAC;AAEF,qBAAa,qBAAsB,YAAW,cAAc;IAC9C,OAAO,CAAC,QAAQ,CAAC,eAAe;gBAAf,eAAe,EAAE,mBAAmB;IAGjE,OAAO,CAAC,cAAc;IAgBhB,KAAK,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,eAAe,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAwC1F,MAAM,CACV,EAAE,EAAE,OAAO,EACX,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,gBAAgB,GACnD,OAAO,CAAC,mBAAmB,CAAC;CA6BhC"}
1
+ {"version":3,"file":"wallet-commands.service.d.ts","sourceRoot":"","sources":["../../../src/wallet/service/wallet-commands.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,cAAc,EACd,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,EAEpB,MAAM,yBAAyB,CAAC;AAMjC,eAAO,MAAM,wBAAwB,kDAGpC,CAAC;AASF,eAAO,MAAM,uBAAuB,iBAGnC,CAAC;AAEF,qBAAa,qBAAsB,YAAW,cAAc;IAExD,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC;gBADf,eAAe,EAAE,mBAAmB,EACpC,cAAc,CAAC,EAAE,cAAc,YAAA;IAIlD,OAAO,CAAC,cAAc;IAgBhB,KAAK,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,eAAe,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAwC1F,MAAM,CACV,EAAE,EAAE,OAAO,EACX,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,gBAAgB,GACnD,OAAO,CAAC,mBAAmB,CAAC;CA6BhC"}
@@ -13,8 +13,10 @@ export const WalletCommandAmountError = createDomainError('WalletCommandAmountEr
13
13
  export const WalletRgRestrictedError = makeConflictError('WalletRgRestrictedError', 'wager is restricted by an active responsible-gambling exclusion');
14
14
  export class WalletCommandsService {
15
15
  playEligibility;
16
- constructor(playEligibility) {
16
+ platformConfig;
17
+ constructor(playEligibility, platformConfig) {
17
18
  this.playEligibility = playEligibility;
19
+ this.platformConfig = platformConfig;
18
20
  }
19
21
  // Completed, internal-settlement ledger row (no provider ref) shared by every gameplay move.
20
22
  writeLedgerRow(txn, row, type, amount) {
@@ -24,7 +26,7 @@ export class WalletCommandsService {
24
26
  amount,
25
27
  currency: row.currency,
26
28
  status: 'completed',
27
- rail: railFor(row.currency),
29
+ rail: railFor(row.currency, this.platformConfig?.wallet?.cryptoCurrencies),
28
30
  });
29
31
  }
30
32
  async debit(tx, { userId, amount, type }) {
@@ -1 +1 @@
1
- {"version":3,"file":"wallet-commands.service.js","sourceRoot":"","sources":["../../../src/wallet/service/wallet-commands.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wallet-commands.service.js","sourceRoot":"","sources":["../../../src/wallet/service/wallet-commands.service.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,7 @@ export declare const IdempotencyKeyReuseError: new () => Error;
12
12
  export declare const DepositAddressUnsupportedError: new () => Error;
13
13
  export declare const DestinationAddressRequiredError: new () => Error;
14
14
  export declare const CurrencyMismatchError: new (requested: unknown, walletCurrency: unknown) => Error;
15
- export declare function railFor(currency: string): WalletRail;
15
+ export declare function railFor(currency: string, cryptoCurrencies?: readonly string[]): WalletRail;
16
16
  export type WalletServiceDeps = {
17
17
  drizzle: DrizzleService;
18
18
  events: EventBus;
@@ -43,6 +43,7 @@ export declare class WalletService {
43
43
  private readonly tagEvaluationCommands?;
44
44
  private readonly audit;
45
45
  constructor({ drizzle, events, payment, directory, platformConfig, limiter, riskTags, tagEvaluationCommands, audit, }: WalletServiceDeps);
46
+ private resolveRail;
46
47
  private rateLimit;
47
48
  private assertKycForWithdrawal;
48
49
  getBalance(userId: User['id']): Promise<{
@@ -1 +1 @@
1
- {"version":3,"file":"wallet.service.d.ts","sourceRoot":"","sources":["../../../src/wallet/service/wallet.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wallet.service.d.ts","sourceRoot":"","sources":["../../../src/wallet/service/wallet.service.ts"],"names":[],"mappings":"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"}
@@ -17,13 +17,17 @@ const KYC_PASS_STATUSES = new Set(['approved', 'manually_overridden']);
17
17
  export const CurrencyMismatchError = createDomainError('CurrencyMismatchError', (requested, walletCurrency) => `Currency mismatch: requested ${requested}, wallet holds ${walletCurrency}`);
18
18
  // Crypto currencies settle on the crypto rail (Fireblocks); everything else on the
19
19
  // fiat rail (a PSP). The concrete provider is recorded per transaction, not here.
20
- const CRYPTO_CURRENCIES = new Set(['BTC', 'ETH', 'USDT']);
20
+ // Overridable per-operator via `platformConfig.wallet.cryptoCurrencies` - see `railFor`.
21
+ const DEFAULT_CRYPTO_CURRENCIES = new Set(['BTC', 'ETH', 'USDT', 'USDC']);
21
22
  // Per-user throttle on money mutations - guards a runaway/misbehaving client, not
22
23
  // fraud (idempotency + the ledger guard cover correctness). An overlay rebinds
23
24
  // RATE_LIMITER to change the backend, not this policy.
24
25
  const WALLET_MUTATION_RATE_LIMIT = { limit: 30, windowMs: 60 * 1000 };
25
- export function railFor(currency) {
26
- return CRYPTO_CURRENCIES.has(currency.toUpperCase()) ? 'crypto' : 'fiat';
26
+ export function railFor(currency, cryptoCurrencies) {
27
+ const set = cryptoCurrencies
28
+ ? new Set(cryptoCurrencies.map((c) => c.toUpperCase()))
29
+ : DEFAULT_CRYPTO_CURRENCIES;
30
+ return set.has(currency.toUpperCase()) ? 'crypto' : 'fiat';
27
31
  }
28
32
  // Namespace the key per operation so the same raw key on a deposit then a withdraw can't
29
33
  // collide on the (walletId, idempotencyKey) unique index. The column is a uuid, so a string
@@ -106,6 +110,9 @@ export class WalletService {
106
110
  this.tagEvaluationCommands = tagEvaluationCommands;
107
111
  this.audit = audit;
108
112
  }
113
+ resolveRail(currency) {
114
+ return railFor(currency, this.platformConfig?.wallet?.cryptoCurrencies);
115
+ }
109
116
  rateLimit(userId) {
110
117
  return this.limiter
111
118
  ? assertRateLimit(this.limiter, `wallet-mutation:${userId}`, WALLET_MUTATION_RATE_LIMIT)
@@ -175,7 +182,7 @@ export class WalletService {
175
182
  amount,
176
183
  currency,
177
184
  status: 'completed',
178
- rail: railFor(currency),
185
+ rail: this.resolveRail(currency),
179
186
  providerName: provider,
180
187
  providerRefId: psp.externalId,
181
188
  },
@@ -264,7 +271,7 @@ export class WalletService {
264
271
  async withdraw({ userId, amount, currency, idempotencyKey, destinationAddress, ip, userAgent, }) {
265
272
  await this.rateLimit(userId);
266
273
  await this.assertKycForWithdrawal(userId);
267
- if (railFor(currency) === 'crypto' && !destinationAddress) {
274
+ if (this.resolveRail(currency) === 'crypto' && !destinationAddress) {
268
275
  throw new DestinationAddressRequiredError();
269
276
  }
270
277
  const { transactionId, status, replayed, walletId, rail } = await this.drizzle.db.transaction(async (txn) => {
@@ -284,7 +291,7 @@ export class WalletService {
284
291
  status: existing.status,
285
292
  replayed: true,
286
293
  walletId: current.id,
287
- rail: railFor(currency),
294
+ rail: this.resolveRail(currency),
288
295
  };
289
296
  }
290
297
  }
@@ -300,7 +307,7 @@ export class WalletService {
300
307
  amount,
301
308
  currency,
302
309
  status: 'pending',
303
- rail: railFor(currency),
310
+ rail: this.resolveRail(currency),
304
311
  destinationAddress: destinationAddress ?? null,
305
312
  },
306
313
  });
@@ -310,7 +317,7 @@ export class WalletService {
310
317
  status: row.status,
311
318
  replayed,
312
319
  walletId: current.id,
313
- rail: railFor(currency),
320
+ rail: this.resolveRail(currency),
314
321
  };
315
322
  }
316
323
  // Guarded conditional debit: the WHERE makes balance>=amount atomic with the write; 0 rows back rolls back the whole tx.
@@ -330,7 +337,7 @@ export class WalletService {
330
337
  status: row.status,
331
338
  replayed,
332
339
  walletId: current.id,
333
- rail: railFor(currency),
340
+ rail: this.resolveRail(currency),
334
341
  };
335
342
  });
336
343
  if (replayed) {
@@ -984,7 +991,7 @@ export class WalletService {
984
991
  userId,
985
992
  currency,
986
993
  address: issued.address,
987
- providerName: providerNameFor(railFor(currency)),
994
+ providerName: providerNameFor(this.resolveRail(currency)),
988
995
  })
989
996
  .onConflictDoNothing()
990
997
  .returning();
@@ -1028,7 +1035,7 @@ export class WalletService {
1028
1035
  amount: event.amount,
1029
1036
  currency: event.currency,
1030
1037
  status: 'completed',
1031
- rail: railFor(event.currency),
1038
+ rail: this.resolveRail(event.currency),
1032
1039
  providerName: depositAddress.providerName,
1033
1040
  providerRefId: event.externalId,
1034
1041
  destinationAddress: event.address,
@@ -1 +1 @@
1
- {"version":3,"file":"wallet.service.js","sourceRoot":"","sources":["../../../src/wallet/service/wallet.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wallet.service.js","sourceRoot":"","sources":["../../../src/wallet/service/wallet.service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openora/core",
3
- "version": "0.4.1-canary.56",
3
+ "version": "0.4.1-canary.57",
4
4
  "description": "Open-source, headless, plugin-based, AI-native iGaming framework - domain modules, plugin engine, Zod-first contracts, typed React SDK",
5
5
  "keywords": [
6
6
  "ai-native",