@ketrics/sdk-backend 0.7.0 → 0.8.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 +661 -1454
- package/dist/context.d.ts +2 -2
- package/dist/database-errors.d.ts +12 -12
- package/dist/database-errors.js +12 -12
- package/dist/databases.d.ts +7 -7
- package/dist/databases.js +1 -1
- package/dist/excel-errors.d.ts +2 -2
- package/dist/excel-errors.js +2 -2
- package/dist/index.d.ts +356 -207
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -7
- package/dist/index.js.map +1 -1
- package/dist/job-errors.d.ts +5 -5
- package/dist/job-errors.d.ts.map +1 -1
- package/dist/job-errors.js +11 -11
- package/dist/job-errors.js.map +1 -1
- package/dist/messages-errors.d.ts +3 -3
- package/dist/messages-errors.js +3 -3
- package/dist/pdf-errors.d.ts +2 -2
- package/dist/pdf-errors.js +2 -2
- package/dist/secret-errors.d.ts +3 -3
- package/dist/secret-errors.js +3 -3
- package/package.json +2 -2
package/dist/context.d.ts
CHANGED
|
@@ -58,7 +58,7 @@ export interface UserContext {
|
|
|
58
58
|
*/
|
|
59
59
|
export interface RequestorContext {
|
|
60
60
|
/** Type of requestor */
|
|
61
|
-
type:
|
|
61
|
+
type: "USER" | "SERVICE_ACCOUNT";
|
|
62
62
|
/** User UUID (only when type is 'USER') */
|
|
63
63
|
userId?: string;
|
|
64
64
|
/** Service account UUID (only when type is 'SERVICE_ACCOUNT') */
|
|
@@ -81,7 +81,7 @@ export interface RuntimeContext {
|
|
|
81
81
|
/** Node.js version (e.g., "18.x") */
|
|
82
82
|
nodeVersion: string;
|
|
83
83
|
/** Runtime platform */
|
|
84
|
-
runtime:
|
|
84
|
+
runtime: "ecs-fargate";
|
|
85
85
|
/** AWS region (e.g., "us-east-1") */
|
|
86
86
|
region: string;
|
|
87
87
|
}
|
|
@@ -41,15 +41,15 @@ export declare abstract class DatabaseError extends Error {
|
|
|
41
41
|
/**
|
|
42
42
|
* Error thrown when a database is not found
|
|
43
43
|
*
|
|
44
|
-
* Thrown when
|
|
44
|
+
* Thrown when Database.connect() is called with a database code
|
|
45
45
|
* that doesn't exist in the tenant's namespace.
|
|
46
46
|
*
|
|
47
47
|
* @example
|
|
48
48
|
* ```typescript
|
|
49
49
|
* try {
|
|
50
|
-
* const db = await ketrics.
|
|
50
|
+
* const db = await ketrics.Database.connect('unknown-db');
|
|
51
51
|
* } catch (error) {
|
|
52
|
-
* if (error instanceof ketrics.
|
|
52
|
+
* if (error instanceof ketrics.Database.NotFoundError) {
|
|
53
53
|
* console.log(`Database '${error.databaseCode}' not found`);
|
|
54
54
|
* }
|
|
55
55
|
* }
|
|
@@ -61,15 +61,15 @@ export declare class DatabaseNotFoundError extends DatabaseError {
|
|
|
61
61
|
/**
|
|
62
62
|
* Error thrown when application does not have access to a database
|
|
63
63
|
*
|
|
64
|
-
* Thrown when
|
|
64
|
+
* Thrown when Database.connect() is called for a database that exists
|
|
65
65
|
* but the executing application has not been granted access.
|
|
66
66
|
*
|
|
67
67
|
* @example
|
|
68
68
|
* ```typescript
|
|
69
69
|
* try {
|
|
70
|
-
* const db = await ketrics.
|
|
70
|
+
* const db = await ketrics.Database.connect('restricted-db');
|
|
71
71
|
* } catch (error) {
|
|
72
|
-
* if (error instanceof ketrics.
|
|
72
|
+
* if (error instanceof ketrics.Database.AccessDeniedError) {
|
|
73
73
|
* console.log(`No access to database '${error.databaseCode}'`);
|
|
74
74
|
* }
|
|
75
75
|
* }
|
|
@@ -87,9 +87,9 @@ export declare class DatabaseAccessDeniedError extends DatabaseError {
|
|
|
87
87
|
* @example
|
|
88
88
|
* ```typescript
|
|
89
89
|
* try {
|
|
90
|
-
* const db = await ketrics.
|
|
90
|
+
* const db = await ketrics.Database.connect('main-db');
|
|
91
91
|
* } catch (error) {
|
|
92
|
-
* if (error instanceof ketrics.
|
|
92
|
+
* if (error instanceof ketrics.Database.ConnectionError) {
|
|
93
93
|
* console.log(`Connection failed: ${error.reason}`);
|
|
94
94
|
* }
|
|
95
95
|
* }
|
|
@@ -112,7 +112,7 @@ export declare class DatabaseConnectionError extends DatabaseError {
|
|
|
112
112
|
* try {
|
|
113
113
|
* await db.query('SELECT * FROM nonexistent_table');
|
|
114
114
|
* } catch (error) {
|
|
115
|
-
* if (error instanceof ketrics.
|
|
115
|
+
* if (error instanceof ketrics.Database.QueryError) {
|
|
116
116
|
* console.log(`Query failed: ${error.reason}`);
|
|
117
117
|
* }
|
|
118
118
|
* }
|
|
@@ -140,7 +140,7 @@ export declare class DatabaseQueryError extends DatabaseError {
|
|
|
140
140
|
* throw new Error('Simulated failure');
|
|
141
141
|
* });
|
|
142
142
|
* } catch (error) {
|
|
143
|
-
* if (error instanceof ketrics.
|
|
143
|
+
* if (error instanceof ketrics.Database.TransactionError) {
|
|
144
144
|
* console.log(`Transaction failed: ${error.reason}`);
|
|
145
145
|
* console.log(`Rolled back: ${error.rolledBack}`);
|
|
146
146
|
* }
|
|
@@ -164,7 +164,7 @@ export declare class DatabaseTransactionError extends DatabaseError {
|
|
|
164
164
|
* @example
|
|
165
165
|
* ```typescript
|
|
166
166
|
* try {
|
|
167
|
-
* const db = await ketrics.
|
|
167
|
+
* const db = await ketrics.Database.connect('main-db');
|
|
168
168
|
* } catch (error) {
|
|
169
169
|
* if (isDatabaseError(error)) {
|
|
170
170
|
* console.log(`Database error: ${error.databaseCode}`);
|
|
@@ -183,7 +183,7 @@ export declare function isDatabaseError(error: unknown): error is DatabaseError;
|
|
|
183
183
|
* @example
|
|
184
184
|
* ```typescript
|
|
185
185
|
* try {
|
|
186
|
-
* const db = await ketrics.
|
|
186
|
+
* const db = await ketrics.Database.connect('main-db');
|
|
187
187
|
* } catch (error) {
|
|
188
188
|
* if (isDatabaseErrorType(error, DatabaseNotFoundError)) {
|
|
189
189
|
* console.log('Database not found');
|
package/dist/database-errors.js
CHANGED
|
@@ -65,15 +65,15 @@ exports.DatabaseError = DatabaseError;
|
|
|
65
65
|
/**
|
|
66
66
|
* Error thrown when a database is not found
|
|
67
67
|
*
|
|
68
|
-
* Thrown when
|
|
68
|
+
* Thrown when Database.connect() is called with a database code
|
|
69
69
|
* that doesn't exist in the tenant's namespace.
|
|
70
70
|
*
|
|
71
71
|
* @example
|
|
72
72
|
* ```typescript
|
|
73
73
|
* try {
|
|
74
|
-
* const db = await ketrics.
|
|
74
|
+
* const db = await ketrics.Database.connect('unknown-db');
|
|
75
75
|
* } catch (error) {
|
|
76
|
-
* if (error instanceof ketrics.
|
|
76
|
+
* if (error instanceof ketrics.Database.NotFoundError) {
|
|
77
77
|
* console.log(`Database '${error.databaseCode}' not found`);
|
|
78
78
|
* }
|
|
79
79
|
* }
|
|
@@ -88,15 +88,15 @@ exports.DatabaseNotFoundError = DatabaseNotFoundError;
|
|
|
88
88
|
/**
|
|
89
89
|
* Error thrown when application does not have access to a database
|
|
90
90
|
*
|
|
91
|
-
* Thrown when
|
|
91
|
+
* Thrown when Database.connect() is called for a database that exists
|
|
92
92
|
* but the executing application has not been granted access.
|
|
93
93
|
*
|
|
94
94
|
* @example
|
|
95
95
|
* ```typescript
|
|
96
96
|
* try {
|
|
97
|
-
* const db = await ketrics.
|
|
97
|
+
* const db = await ketrics.Database.connect('restricted-db');
|
|
98
98
|
* } catch (error) {
|
|
99
|
-
* if (error instanceof ketrics.
|
|
99
|
+
* if (error instanceof ketrics.Database.AccessDeniedError) {
|
|
100
100
|
* console.log(`No access to database '${error.databaseCode}'`);
|
|
101
101
|
* }
|
|
102
102
|
* }
|
|
@@ -117,9 +117,9 @@ exports.DatabaseAccessDeniedError = DatabaseAccessDeniedError;
|
|
|
117
117
|
* @example
|
|
118
118
|
* ```typescript
|
|
119
119
|
* try {
|
|
120
|
-
* const db = await ketrics.
|
|
120
|
+
* const db = await ketrics.Database.connect('main-db');
|
|
121
121
|
* } catch (error) {
|
|
122
|
-
* if (error instanceof ketrics.
|
|
122
|
+
* if (error instanceof ketrics.Database.ConnectionError) {
|
|
123
123
|
* console.log(`Connection failed: ${error.reason}`);
|
|
124
124
|
* }
|
|
125
125
|
* }
|
|
@@ -149,7 +149,7 @@ exports.DatabaseConnectionError = DatabaseConnectionError;
|
|
|
149
149
|
* try {
|
|
150
150
|
* await db.query('SELECT * FROM nonexistent_table');
|
|
151
151
|
* } catch (error) {
|
|
152
|
-
* if (error instanceof ketrics.
|
|
152
|
+
* if (error instanceof ketrics.Database.QueryError) {
|
|
153
153
|
* console.log(`Query failed: ${error.reason}`);
|
|
154
154
|
* }
|
|
155
155
|
* }
|
|
@@ -187,7 +187,7 @@ exports.DatabaseQueryError = DatabaseQueryError;
|
|
|
187
187
|
* throw new Error('Simulated failure');
|
|
188
188
|
* });
|
|
189
189
|
* } catch (error) {
|
|
190
|
-
* if (error instanceof ketrics.
|
|
190
|
+
* if (error instanceof ketrics.Database.TransactionError) {
|
|
191
191
|
* console.log(`Transaction failed: ${error.reason}`);
|
|
192
192
|
* console.log(`Rolled back: ${error.rolledBack}`);
|
|
193
193
|
* }
|
|
@@ -221,7 +221,7 @@ exports.DatabaseTransactionError = DatabaseTransactionError;
|
|
|
221
221
|
* @example
|
|
222
222
|
* ```typescript
|
|
223
223
|
* try {
|
|
224
|
-
* const db = await ketrics.
|
|
224
|
+
* const db = await ketrics.Database.connect('main-db');
|
|
225
225
|
* } catch (error) {
|
|
226
226
|
* if (isDatabaseError(error)) {
|
|
227
227
|
* console.log(`Database error: ${error.databaseCode}`);
|
|
@@ -242,7 +242,7 @@ function isDatabaseError(error) {
|
|
|
242
242
|
* @example
|
|
243
243
|
* ```typescript
|
|
244
244
|
* try {
|
|
245
|
-
* const db = await ketrics.
|
|
245
|
+
* const db = await ketrics.Database.connect('main-db');
|
|
246
246
|
* } catch (error) {
|
|
247
247
|
* if (isDatabaseErrorType(error, DatabaseNotFoundError)) {
|
|
248
248
|
* console.log('Database not found');
|
package/dist/databases.d.ts
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* Usage in tenant code:
|
|
8
8
|
* ```typescript
|
|
9
9
|
* // Connect to a database
|
|
10
|
-
* const db = await ketrics.
|
|
10
|
+
* const db = await ketrics.Database.connect('main-db');
|
|
11
11
|
*
|
|
12
12
|
* // Query data
|
|
13
13
|
* const result = await db.query('SELECT * FROM users WHERE id = ?', [1]);
|
|
@@ -54,11 +54,11 @@ export interface DatabaseExecuteResult {
|
|
|
54
54
|
* Database Connection Interface
|
|
55
55
|
*
|
|
56
56
|
* Interface for executing SQL queries against external databases.
|
|
57
|
-
* Use `
|
|
57
|
+
* Use `Database.connect()` to obtain an instance.
|
|
58
58
|
*
|
|
59
59
|
* @example
|
|
60
60
|
* ```typescript
|
|
61
|
-
* const db = await ketrics.
|
|
61
|
+
* const db = await ketrics.Database.connect('main-db');
|
|
62
62
|
* try {
|
|
63
63
|
* const result = await db.query<User>('SELECT * FROM users WHERE id = ?', [1]);
|
|
64
64
|
* console.log(result.rows);
|
|
@@ -134,7 +134,7 @@ export interface IDatabaseConnection {
|
|
|
134
134
|
*
|
|
135
135
|
* @example
|
|
136
136
|
* ```typescript
|
|
137
|
-
* const db = await ketrics.
|
|
137
|
+
* const db = await ketrics.Database.connect('main-db');
|
|
138
138
|
* try {
|
|
139
139
|
* // Use database...
|
|
140
140
|
* } finally {
|
|
@@ -145,14 +145,14 @@ export interface IDatabaseConnection {
|
|
|
145
145
|
close(): Promise<void>;
|
|
146
146
|
}
|
|
147
147
|
/**
|
|
148
|
-
* @deprecated Use `ketrics.
|
|
148
|
+
* @deprecated Use `ketrics.Database.connect()` instead
|
|
149
149
|
*
|
|
150
150
|
* Legacy interface - maintained for backward compatibility.
|
|
151
|
-
* New code should use `ketrics.
|
|
151
|
+
* New code should use `ketrics.Database.connect()`.
|
|
152
152
|
*/
|
|
153
153
|
export interface DatabaseManager {
|
|
154
154
|
/**
|
|
155
|
-
* @deprecated Use `ketrics.
|
|
155
|
+
* @deprecated Use `ketrics.Database.connect()` instead
|
|
156
156
|
*
|
|
157
157
|
* Connect to a database by code
|
|
158
158
|
*
|
package/dist/databases.js
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* Usage in tenant code:
|
|
9
9
|
* ```typescript
|
|
10
10
|
* // Connect to a database
|
|
11
|
-
* const db = await ketrics.
|
|
11
|
+
* const db = await ketrics.Database.connect('main-db');
|
|
12
12
|
*
|
|
13
13
|
* // Query data
|
|
14
14
|
* const result = await db.query('SELECT * FROM users WHERE id = ?', [1]);
|
package/dist/excel-errors.d.ts
CHANGED
|
@@ -31,7 +31,7 @@ export declare abstract class ExcelError extends Error {
|
|
|
31
31
|
* try {
|
|
32
32
|
* const workbook = await ketrics.Excel.read(buffer);
|
|
33
33
|
* } catch (error) {
|
|
34
|
-
* if (error instanceof ketrics.
|
|
34
|
+
* if (error instanceof ketrics.Excel.ParseError) {
|
|
35
35
|
* console.log('Failed to parse Excel file:', error.message);
|
|
36
36
|
* }
|
|
37
37
|
* }
|
|
@@ -54,7 +54,7 @@ export declare class ExcelParseError extends ExcelError {
|
|
|
54
54
|
* try {
|
|
55
55
|
* const buffer = await workbook.toBuffer();
|
|
56
56
|
* } catch (error) {
|
|
57
|
-
* if (error instanceof ketrics.
|
|
57
|
+
* if (error instanceof ketrics.Excel.WriteError) {
|
|
58
58
|
* console.log('Failed to write Excel file:', error.message);
|
|
59
59
|
* }
|
|
60
60
|
* }
|
package/dist/excel-errors.js
CHANGED
|
@@ -57,7 +57,7 @@ exports.ExcelError = ExcelError;
|
|
|
57
57
|
* try {
|
|
58
58
|
* const workbook = await ketrics.Excel.read(buffer);
|
|
59
59
|
* } catch (error) {
|
|
60
|
-
* if (error instanceof ketrics.
|
|
60
|
+
* if (error instanceof ketrics.Excel.ParseError) {
|
|
61
61
|
* console.log('Failed to parse Excel file:', error.message);
|
|
62
62
|
* }
|
|
63
63
|
* }
|
|
@@ -90,7 +90,7 @@ exports.ExcelParseError = ExcelParseError;
|
|
|
90
90
|
* try {
|
|
91
91
|
* const buffer = await workbook.toBuffer();
|
|
92
92
|
* } catch (error) {
|
|
93
|
-
* if (error instanceof ketrics.
|
|
93
|
+
* if (error instanceof ketrics.Excel.WriteError) {
|
|
94
94
|
* console.log('Failed to write Excel file:', error.message);
|
|
95
95
|
* }
|
|
96
96
|
* }
|