@develit-services/bank 0.8.20 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +33 -0
- package/dist/database/schema.cjs +1 -1
- package/dist/database/schema.d.cts +2 -1
- package/dist/database/schema.d.mts +2 -1
- package/dist/database/schema.d.ts +2 -1
- package/dist/database/schema.mjs +1 -1
- package/dist/export/worker.cjs +6 -6
- package/dist/export/worker.d.cts +2083 -939
- package/dist/export/worker.d.mts +2083 -939
- package/dist/export/worker.d.ts +2083 -939
- package/dist/export/worker.mjs +7 -7
- package/dist/export/workflows.cjs +5 -5
- package/dist/export/workflows.mjs +5 -5
- package/dist/export/wrangler.d.cts +2 -1
- package/dist/export/wrangler.d.mts +2 -1
- package/dist/export/wrangler.d.ts +2 -1
- package/dist/shared/{bank.jRGa7MKk.d.mts → bank.5WIfKLgm.d.ts} +890 -17
- package/dist/shared/{bank.o95cOH_P.cjs → bank.B5nOIsGC.cjs} +10 -4
- package/dist/shared/{bank.BOY6AI1t.d.cts → bank.BECp1kh0.d.cts} +1789 -1627
- package/dist/shared/{bank.BOY6AI1t.d.mts → bank.BECp1kh0.d.mts} +1789 -1627
- package/dist/shared/{bank.BOY6AI1t.d.ts → bank.BECp1kh0.d.ts} +1789 -1627
- package/dist/shared/{bank.DWsHTK_n.cjs → bank.BMLgGhBY.cjs} +44 -8
- package/dist/shared/{bank.DMjtitKo.d.cts → bank.CVJosema.d.cts} +1 -0
- package/dist/shared/{bank.DMjtitKo.d.mts → bank.CVJosema.d.mts} +1 -0
- package/dist/shared/{bank.DMjtitKo.d.ts → bank.CVJosema.d.ts} +1 -0
- package/dist/shared/{bank.DfTdMAi9.d.ts → bank.CX7-ohgB.d.mts} +890 -17
- package/dist/shared/{bank.ESTBT4J6.mjs → bank.DMsXwzJn.mjs} +11 -5
- package/dist/shared/{bank.Cwg6oHMM.mjs → bank.DTnA4eC9.mjs} +44 -8
- package/dist/shared/{bank.vGCuP898.cjs → bank.f7ykgYdD.cjs} +7 -3
- package/dist/shared/{bank.CPLR0Ul7.mjs → bank.rcoRRywt.mjs} +7 -3
- package/dist/shared/{bank.Bo01T_MM.d.cts → bank.yUQZ6PWV.d.cts} +890 -17
- package/dist/types.cjs +2 -2
- package/dist/types.d.cts +13 -8
- package/dist/types.d.mts +13 -8
- package/dist/types.d.ts +13 -8
- package/dist/types.mjs +2 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -337,6 +337,39 @@ Sifrovane bankovni tokeny (AES). Typy: `AUTH_TOKEN`, `REFRESH_TOKEN`, `CLIENT_ID
|
|
|
337
337
|
|
|
338
338
|
Jednorazove tokeny pro autorizacni flow uctu.
|
|
339
339
|
|
|
340
|
+
## Secrets Store — encryption key
|
|
341
|
+
|
|
342
|
+
Bankovni credentials (`account_credentials`) jsou sifrovane pomoci **AES-256-GCM** (Web Crypto API). Sifrovaci klic je ulozen v Secrets Store jako `BANK_SERVICE_ENCRYPTION_KEY`.
|
|
343
|
+
|
|
344
|
+
### Jak klic funguje
|
|
345
|
+
|
|
346
|
+
- **Algoritmus**: AES-GCM (256-bit)
|
|
347
|
+
- **IV**: 12 bytu, nahodne generovany pro kazdou sifrovaci operaci
|
|
348
|
+
- **Format ulozeni**: base64(IV + ciphertext) v sloupci `account_credentials.value`
|
|
349
|
+
- **Sifrovana data**: `AUTH_TOKEN`, `REFRESH_TOKEN`, `CLIENT_ID`, `API_KEY` bankovnich konektoru
|
|
350
|
+
|
|
351
|
+
### Jak vygenerovat klic
|
|
352
|
+
|
|
353
|
+
```bash
|
|
354
|
+
# Vygeneruje 256-bit AES klic a vypise jako base64
|
|
355
|
+
node -e "crypto.subtle.generateKey({name:'AES-GCM',length:256},true,['encrypt','decrypt']).then(k=>crypto.subtle.exportKey('raw',k)).then(b=>console.log(Buffer.from(b).toString('base64')))"
|
|
356
|
+
```
|
|
357
|
+
|
|
358
|
+
Alternativne:
|
|
359
|
+
|
|
360
|
+
```bash
|
|
361
|
+
# 32 nahodnych bytu = 256 bitu, zakodovano jako base64
|
|
362
|
+
openssl rand -base64 32
|
|
363
|
+
```
|
|
364
|
+
|
|
365
|
+
Vysledny base64 retezec ulozit do Secrets Store pod nazvem `BANK_SERVICE_ENCRYPTION_KEY`.
|
|
366
|
+
|
|
367
|
+
### Bezpecnostni doporuceni
|
|
368
|
+
|
|
369
|
+
- Pouzijte **jiny klic pro kazde prostredi** (local, dev, staging, production)
|
|
370
|
+
- Pri rotaci klice je nutne **re-encryptovat** vsechny existujici credentials — zmena klice bez migrace zpusobi neschopnost desifrovat stavajici tokeny
|
|
371
|
+
- Klic nikdy neukladejte do kodu, env souboru ani git repozitare
|
|
372
|
+
|
|
340
373
|
## Error Codes
|
|
341
374
|
|
|
342
375
|
Format: `{CATEGORY}-B-{NUMBER}`
|
package/dist/database/schema.cjs
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
export { az as account, aA as accountCredentials, aB as batch, aC as ott, aD as payment, aE as paymentRelations, aF as paymentRequest, aG as paymentRequestRelations } from '../shared/bank.
|
|
1
|
+
export { az as account, aA as accountCredentials, aB as batch, aC as ott, aD as payment, aE as paymentRelations, aF as paymentRequest, aG as paymentRequestRelations } from '../shared/bank.BECp1kh0.cjs';
|
|
2
2
|
import 'drizzle-orm/sqlite-core';
|
|
3
3
|
import 'drizzle-orm';
|
|
4
4
|
import '@develit-io/backend-sdk';
|
|
5
5
|
import '@develit-io/general-codes';
|
|
6
6
|
import 'zod';
|
|
7
7
|
import 'drizzle-zod';
|
|
8
|
+
import 'zod/v4/core';
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
export { az as account, aA as accountCredentials, aB as batch, aC as ott, aD as payment, aE as paymentRelations, aF as paymentRequest, aG as paymentRequestRelations } from '../shared/bank.
|
|
1
|
+
export { az as account, aA as accountCredentials, aB as batch, aC as ott, aD as payment, aE as paymentRelations, aF as paymentRequest, aG as paymentRequestRelations } from '../shared/bank.BECp1kh0.mjs';
|
|
2
2
|
import 'drizzle-orm/sqlite-core';
|
|
3
3
|
import 'drizzle-orm';
|
|
4
4
|
import '@develit-io/backend-sdk';
|
|
5
5
|
import '@develit-io/general-codes';
|
|
6
6
|
import 'zod';
|
|
7
7
|
import 'drizzle-zod';
|
|
8
|
+
import 'zod/v4/core';
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
export { az as account, aA as accountCredentials, aB as batch, aC as ott, aD as payment, aE as paymentRelations, aF as paymentRequest, aG as paymentRequestRelations } from '../shared/bank.
|
|
1
|
+
export { az as account, aA as accountCredentials, aB as batch, aC as ott, aD as payment, aE as paymentRelations, aF as paymentRequest, aG as paymentRequestRelations } from '../shared/bank.BECp1kh0.js';
|
|
2
2
|
import 'drizzle-orm/sqlite-core';
|
|
3
3
|
import 'drizzle-orm';
|
|
4
4
|
import '@develit-io/backend-sdk';
|
|
5
5
|
import '@develit-io/general-codes';
|
|
6
6
|
import 'zod';
|
|
7
7
|
import 'drizzle-zod';
|
|
8
|
+
import 'zod/v4/core';
|
package/dist/database/schema.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { x as account, y as accountCredentials, z as batch, D as ott, E as payment, F as paymentRelations, G as paymentRequest, H as paymentRequestRelations } from '../shared/bank.
|
|
1
|
+
export { x as account, y as accountCredentials, z as batch, D as ott, E as payment, F as paymentRelations, G as paymentRequest, H as paymentRequestRelations } from '../shared/bank.DMsXwzJn.mjs';
|
|
2
2
|
import '@develit-io/backend-sdk';
|
|
3
3
|
import 'drizzle-orm/sqlite-core';
|
|
4
4
|
import 'date-fns';
|
package/dist/export/worker.cjs
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
const backendSdk = require('@develit-io/backend-sdk');
|
|
4
|
-
const database_schema = require('../shared/bank.
|
|
4
|
+
const database_schema = require('../shared/bank.B5nOIsGC.cjs');
|
|
5
5
|
const drizzleOrm = require('drizzle-orm');
|
|
6
6
|
const cloudflare_workers = require('cloudflare:workers');
|
|
7
7
|
const d1 = require('drizzle-orm/d1');
|
|
8
|
-
const mock_connector = require('../shared/bank.
|
|
8
|
+
const mock_connector = require('../shared/bank.BMLgGhBY.cjs');
|
|
9
9
|
require('jose');
|
|
10
10
|
const zod = require('zod');
|
|
11
11
|
const generalCodes = require('@develit-io/general-codes');
|
|
12
12
|
require('date-fns');
|
|
13
13
|
require('node:crypto');
|
|
14
|
-
const credentialsResolver = require('../shared/bank.
|
|
14
|
+
const credentialsResolver = require('../shared/bank.f7ykgYdD.cjs');
|
|
15
15
|
require('drizzle-orm/sqlite-core');
|
|
16
16
|
require('drizzle-orm/relations');
|
|
17
17
|
require('drizzle-zod');
|
|
@@ -353,7 +353,7 @@ function buildPaymentRequestEvent(pr) {
|
|
|
353
353
|
metadata: {
|
|
354
354
|
correlationId: pr.correlationId,
|
|
355
355
|
entityId: pr.id,
|
|
356
|
-
timestamp:
|
|
356
|
+
timestamp: /* @__PURE__ */ new Date()
|
|
357
357
|
}
|
|
358
358
|
};
|
|
359
359
|
}
|
|
@@ -389,7 +389,7 @@ const authorizeAccountInputSchema = zod.z.object({
|
|
|
389
389
|
syncIntervalS: zod.z.number().int().positive().optional(),
|
|
390
390
|
startSync: zod.z.boolean().optional(),
|
|
391
391
|
lastSyncAt: zod.z.date().optional(),
|
|
392
|
-
address:
|
|
392
|
+
address: backendSdk.structuredAddressSchema.optional()
|
|
393
393
|
});
|
|
394
394
|
|
|
395
395
|
const simulateDepositInputSchema = zod.z.object({
|
|
@@ -1189,7 +1189,7 @@ let BankServiceBase = class extends backendSdk.develitWorker(cloudflare_workers.
|
|
|
1189
1189
|
metadata: {
|
|
1190
1190
|
correlationId: createdPayment.correlationId,
|
|
1191
1191
|
entityId: createdPayment.id,
|
|
1192
|
-
timestamp:
|
|
1192
|
+
timestamp: /* @__PURE__ */ new Date()
|
|
1193
1193
|
}
|
|
1194
1194
|
});
|
|
1195
1195
|
return createdPayment;
|