@develit-services/bank 0.2.2 → 0.2.4

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.
Files changed (35) hide show
  1. package/dist/database/schema.cjs +2 -3
  2. package/dist/database/schema.d.cts +6 -3
  3. package/dist/database/schema.d.mts +6 -3
  4. package/dist/database/schema.d.ts +6 -3
  5. package/dist/database/schema.mjs +2 -3
  6. package/dist/export/worker.cjs +39 -46
  7. package/dist/export/worker.d.cts +25 -15
  8. package/dist/export/worker.d.mts +25 -15
  9. package/dist/export/worker.d.ts +25 -15
  10. package/dist/export/worker.mjs +35 -42
  11. package/dist/export/workflows.cjs +92 -94
  12. package/dist/export/workflows.mjs +92 -94
  13. package/dist/export/wrangler.cjs +1 -0
  14. package/dist/export/wrangler.d.cts +1 -0
  15. package/dist/export/wrangler.d.mts +1 -0
  16. package/dist/export/wrangler.d.ts +1 -0
  17. package/dist/export/wrangler.mjs +1 -0
  18. package/dist/shared/{bank.CXUMEJH4.mjs → bank.BvUtf1S3.mjs} +41 -20
  19. package/dist/shared/{bank.CEraaQIT.cjs → bank.CHS79KTx.cjs} +42 -21
  20. package/dist/shared/{bank.2BgwPCw_.d.ts → bank.Cfz44GPA.d.cts} +1598 -12
  21. package/dist/shared/{bank.BOe_Qmuw.d.mts → bank.Cfz44GPA.d.mts} +1598 -12
  22. package/dist/shared/{bank.RD4xwHFf.d.cts → bank.Cfz44GPA.d.ts} +1598 -12
  23. package/dist/shared/{bank.B8QzFnJl.cjs → bank.CyinOg3r.cjs} +1 -1
  24. package/dist/shared/{bank.CjZRgRoJ.mjs → bank.DKtu6cfY.mjs} +1 -1
  25. package/dist/shared/{bank.B0uSWeRe.mjs → bank.DXn9jD0Q.mjs} +43 -60
  26. package/dist/shared/{bank.CWAToo_g.cjs → bank.NdqOkgpd.cjs} +41 -59
  27. package/dist/types.cjs +2 -4
  28. package/dist/types.d.cts +3 -5
  29. package/dist/types.d.mts +3 -5
  30. package/dist/types.d.ts +3 -5
  31. package/dist/types.mjs +2 -3
  32. package/package.json +2 -1
  33. package/dist/shared/bank.BGZYksmV.d.cts +0 -1598
  34. package/dist/shared/bank.BGZYksmV.d.mts +0 -1598
  35. package/dist/shared/bank.BGZYksmV.d.ts +0 -1598
@@ -1,10 +1,11 @@
1
1
  'use strict';
2
2
 
3
- const database_schema = require('./bank.CWAToo_g.cjs');
3
+ const database_schema = require('./bank.NdqOkgpd.cjs');
4
+ require('@develit-io/backend-sdk');
4
5
  const drizzleOrm = require('drizzle-orm');
5
- const mockCobs_connector = require('./bank.B8QzFnJl.cjs');
6
6
  require('jose');
7
7
  require('@develit-io/general-codes');
8
+ const mockCobs_connector = require('./bank.CyinOg3r.cjs');
8
9
 
9
10
  const createPaymentCommand = (db, { payment }) => {
10
11
  return {
@@ -16,24 +17,12 @@ const createPaymentCommand = (db, { payment }) => {
16
17
  };
17
18
  };
18
19
 
19
- const updatePaymentCommand = (db, { payment }) => {
20
- return {
21
- command: db.update(database_schema.tables.payment).set(payment).where(drizzleOrm.eq(database_schema.tables.payment.id, payment.id)).returning()
22
- };
23
- };
24
-
25
- const updateAccountLastSyncCommand = (db, { lastSyncedAt, accountId }) => {
26
- const command = db.update(database_schema.tables.account).set({
27
- lastSyncedAt
28
- }).where(drizzleOrm.eq(database_schema.tables.account.id, accountId)).returning();
29
- return {
30
- command
31
- };
32
- };
33
-
34
- const getCredentialsByAccountId = async (db, { accountId }) => {
20
+ const getCredentialsByAccountId = async (db, encryptionKey, { accountId }) => {
35
21
  const cred = await db.select().from(database_schema.tables.accountCredentials).where(drizzleOrm.eq(database_schema.tables.accountCredentials.accountId, accountId)).get();
36
- return cred;
22
+ return cred ? {
23
+ ...cred,
24
+ value: await decrypt(cred.value, encryptionKey)
25
+ } : void 0;
37
26
  };
38
27
 
39
28
  class CreditasConnector extends database_schema.FinbricksConnector {
@@ -108,8 +97,40 @@ const initiateConnector = ({
108
97
  }
109
98
  };
110
99
 
100
+ async function importAesKey(base64Key) {
101
+ const raw = Uint8Array.from(atob(base64Key), (c) => c.charCodeAt(0));
102
+ return await crypto.subtle.importKey("raw", raw, { name: "AES-GCM" }, false, [
103
+ "encrypt",
104
+ "decrypt"
105
+ ]);
106
+ }
107
+ async function encrypt(value, key) {
108
+ const encoder = new TextEncoder();
109
+ const iv = crypto.getRandomValues(new Uint8Array(12));
110
+ const ciphertext = await crypto.subtle.encrypt(
111
+ { name: "AES-GCM", iv },
112
+ key,
113
+ encoder.encode(value)
114
+ );
115
+ const combined = new Uint8Array(iv.length + ciphertext.byteLength);
116
+ combined.set(iv, 0);
117
+ combined.set(new Uint8Array(ciphertext), iv.length);
118
+ return btoa(String.fromCharCode(...combined));
119
+ }
120
+ async function decrypt(base64, key) {
121
+ const raw = Uint8Array.from(atob(base64), (c) => c.charCodeAt(0));
122
+ const iv = raw.slice(0, 12);
123
+ const ciphertext = raw.slice(12);
124
+ const decrypted = await crypto.subtle.decrypt(
125
+ { name: "AES-GCM", iv },
126
+ key,
127
+ ciphertext
128
+ );
129
+ return new TextDecoder().decode(decrypted);
130
+ }
131
+
111
132
  exports.createPaymentCommand = createPaymentCommand;
133
+ exports.encrypt = encrypt;
112
134
  exports.getCredentialsByAccountId = getCredentialsByAccountId;
135
+ exports.importAesKey = importAesKey;
113
136
  exports.initiateConnector = initiateConnector;
114
- exports.updateAccountLastSyncCommand = updateAccountLastSyncCommand;
115
- exports.updatePaymentCommand = updatePaymentCommand;