forge-sql-orm 2.1.18 → 2.1.22
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 +9 -8
- package/dist/async/index.d.ts +2 -0
- package/dist/async/index.d.ts.map +1 -0
- package/dist/async/index.js +18 -0
- package/dist/async/index.js.map +1 -0
- package/dist/core/ForgeSQLORM.d.ts +7 -7
- package/dist/core/ForgeSQLORM.d.ts.map +1 -1
- package/dist/core/ForgeSQLORM.js +2 -2
- package/dist/core/ForgeSQLORM.js.map +1 -1
- package/dist/core/ForgeSQLQueryBuilder.d.ts +55 -2
- package/dist/core/ForgeSQLQueryBuilder.d.ts.map +1 -1
- package/dist/core/ForgeSQLQueryBuilder.js.map +1 -1
- package/dist/core/Rovo.d.ts +104 -50
- package/dist/core/Rovo.d.ts.map +1 -1
- package/dist/core/Rovo.js +174 -59
- package/dist/core/Rovo.js.map +1 -1
- package/dist/core/index.d.ts +5 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +21 -0
- package/dist/core/index.js.map +1 -0
- package/dist/index.d.ts +4 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -8
- package/dist/index.js.map +1 -1
- package/dist/lib/index.d.ts +2 -0
- package/dist/lib/index.d.ts.map +1 -0
- package/dist/lib/index.js +18 -0
- package/dist/lib/index.js.map +1 -0
- package/dist/utils/cacheContextUtils.js +1 -1
- package/dist/utils/cacheContextUtils.js.map +1 -1
- package/dist/utils/cacheUtils.d.ts.map +1 -1
- package/dist/utils/cacheUtils.js +1 -1
- package/dist/utils/cacheUtils.js.map +1 -1
- package/dist/utils/forgeDriver.js +2 -2
- package/dist/utils/forgeDriver.js.map +1 -1
- package/dist/utils/index.d.ts +3 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +19 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/sqlUtils.d.ts +11 -2
- package/dist/utils/sqlUtils.d.ts.map +1 -1
- package/dist/utils/sqlUtils.js +30 -9
- package/dist/utils/sqlUtils.js.map +1 -1
- package/dist/webtriggers/clearCacheSchedulerTrigger.d.ts +2 -0
- package/dist/webtriggers/clearCacheSchedulerTrigger.d.ts.map +1 -1
- package/dist/webtriggers/clearCacheSchedulerTrigger.js +2 -0
- package/dist/webtriggers/clearCacheSchedulerTrigger.js.map +1 -1
- package/dist/webtriggers/dropMigrationWebTrigger.d.ts +3 -1
- package/dist/webtriggers/dropMigrationWebTrigger.d.ts.map +1 -1
- package/dist/webtriggers/dropMigrationWebTrigger.js +9 -3
- package/dist/webtriggers/dropMigrationWebTrigger.js.map +1 -1
- package/dist/webtriggers/dropTablesMigrationWebTrigger.d.ts +3 -1
- package/dist/webtriggers/dropTablesMigrationWebTrigger.d.ts.map +1 -1
- package/dist/webtriggers/dropTablesMigrationWebTrigger.js +7 -1
- package/dist/webtriggers/dropTablesMigrationWebTrigger.js.map +1 -1
- package/dist/webtriggers/fetchSchemaWebTrigger.d.ts +3 -1
- package/dist/webtriggers/fetchSchemaWebTrigger.d.ts.map +1 -1
- package/dist/webtriggers/fetchSchemaWebTrigger.js +8 -1
- package/dist/webtriggers/fetchSchemaWebTrigger.js.map +1 -1
- package/package.json +12 -11
- package/src/async/index.ts +1 -0
- package/src/core/ForgeSQLORM.ts +1 -1
- package/src/core/ForgeSQLQueryBuilder.ts +59 -2
- package/src/core/Rovo.ts +181 -59
- package/src/core/index.ts +4 -0
- package/src/index.ts +8 -8
- package/src/lib/index.ts +1 -0
- package/src/utils/cacheContextUtils.ts +1 -1
- package/src/utils/cacheUtils.ts +1 -3
- package/src/utils/forgeDriver.ts +2 -2
- package/src/utils/index.ts +2 -0
- package/src/utils/sqlUtils.ts +23 -4
- package/src/webtriggers/clearCacheSchedulerTrigger.ts +2 -0
- package/src/webtriggers/dropMigrationWebTrigger.ts +12 -3
- package/src/webtriggers/dropTablesMigrationWebTrigger.ts +11 -2
- package/src/webtriggers/fetchSchemaWebTrigger.ts +8 -1
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import { sql } from "@forge/sql";
|
|
2
|
-
import {
|
|
2
|
+
import {
|
|
3
|
+
checkProductionEnvironment,
|
|
4
|
+
generateDropTableStatements as generateStatements,
|
|
5
|
+
} from "../utils/sqlUtils";
|
|
3
6
|
import { getHttpResponse, TriggerResponse } from "./index";
|
|
4
7
|
import { getTables } from "../core/SystemTables";
|
|
5
8
|
|
|
@@ -15,9 +18,11 @@ import { getTables } from "../core/SystemTables";
|
|
|
15
18
|
* - It may affect application functionality
|
|
16
19
|
* - It could lead to data loss and system instability
|
|
17
20
|
*
|
|
21
|
+
* @note This function is automatically disabled in production environments and will return a 500 error if called.
|
|
22
|
+
*
|
|
18
23
|
* @returns {Promise<TriggerResponse<string>>} A response containing:
|
|
19
24
|
* - On success: 200 status with warning message about permanent deletion
|
|
20
|
-
* - On failure: 500 status with error message
|
|
25
|
+
* - On failure: 500 status with error message (including when called in production)
|
|
21
26
|
*
|
|
22
27
|
* @example
|
|
23
28
|
* ```typescript
|
|
@@ -27,6 +32,10 @@ import { getTables } from "../core/SystemTables";
|
|
|
27
32
|
* ```
|
|
28
33
|
*/
|
|
29
34
|
export async function dropTableSchemaMigrations(): Promise<TriggerResponse<string>> {
|
|
35
|
+
const productionCheck = checkProductionEnvironment("dropTableSchemaMigrations");
|
|
36
|
+
if (productionCheck) {
|
|
37
|
+
return productionCheck;
|
|
38
|
+
}
|
|
30
39
|
try {
|
|
31
40
|
const tables = await getTables();
|
|
32
41
|
// Generate drop statements
|
|
@@ -2,6 +2,7 @@ import { sql } from "@forge/sql";
|
|
|
2
2
|
import { getHttpResponse, TriggerResponse } from "./index";
|
|
3
3
|
import { forgeSystemTables, getTables } from "../core/SystemTables";
|
|
4
4
|
import { getTableName } from "drizzle-orm/table";
|
|
5
|
+
import { checkProductionEnvironment } from "../utils/sqlUtils";
|
|
5
6
|
|
|
6
7
|
interface CreateTableRow {
|
|
7
8
|
Table: string;
|
|
@@ -20,9 +21,11 @@ interface CreateTableRow {
|
|
|
20
21
|
* - Generates SQL that could potentially be used maliciously
|
|
21
22
|
* - May expose sensitive table names and structures
|
|
22
23
|
*
|
|
24
|
+
* @note This function is automatically disabled in production environments and will return a 500 error if called.
|
|
25
|
+
*
|
|
23
26
|
* @returns {Promise<TriggerResponse<string>>} A response containing SQL statements to recreate the database schema
|
|
24
27
|
* - On success: Returns 200 status with SQL statements
|
|
25
|
-
* - On failure: Returns 500 status with error message
|
|
28
|
+
* - On failure: Returns 500 status with error message (including when called in production)
|
|
26
29
|
*
|
|
27
30
|
* @example
|
|
28
31
|
* ```typescript
|
|
@@ -34,6 +37,10 @@ interface CreateTableRow {
|
|
|
34
37
|
* ```
|
|
35
38
|
*/
|
|
36
39
|
export async function fetchSchemaWebTrigger(): Promise<TriggerResponse<string>> {
|
|
40
|
+
const productionCheck = checkProductionEnvironment("fetchSchemaWebTrigger");
|
|
41
|
+
if (productionCheck) {
|
|
42
|
+
return productionCheck;
|
|
43
|
+
}
|
|
37
44
|
try {
|
|
38
45
|
const tables = await getTables();
|
|
39
46
|
const createTableStatements = await generateCreateTableStatements(tables);
|