forge-sql-orm 2.1.15 → 2.1.17

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 (57) hide show
  1. package/README.md +194 -1
  2. package/dist/async/PrintQueryConsumer.d.ts +98 -0
  3. package/dist/async/PrintQueryConsumer.d.ts.map +1 -0
  4. package/dist/async/PrintQueryConsumer.js +89 -0
  5. package/dist/async/PrintQueryConsumer.js.map +1 -0
  6. package/dist/core/ForgeSQLQueryBuilder.d.ts +2 -3
  7. package/dist/core/ForgeSQLQueryBuilder.d.ts.map +1 -1
  8. package/dist/core/ForgeSQLQueryBuilder.js.map +1 -1
  9. package/dist/core/ForgeSQLSelectOperations.d.ts +2 -1
  10. package/dist/core/ForgeSQLSelectOperations.d.ts.map +1 -1
  11. package/dist/core/ForgeSQLSelectOperations.js.map +1 -1
  12. package/dist/core/Rovo.d.ts +40 -0
  13. package/dist/core/Rovo.d.ts.map +1 -1
  14. package/dist/core/Rovo.js +164 -138
  15. package/dist/core/Rovo.js.map +1 -1
  16. package/dist/index.d.ts +2 -2
  17. package/dist/index.d.ts.map +1 -1
  18. package/dist/index.js +4 -2
  19. package/dist/index.js.map +1 -1
  20. package/dist/lib/drizzle/extensions/additionalActions.d.ts.map +1 -1
  21. package/dist/lib/drizzle/extensions/additionalActions.js +72 -22
  22. package/dist/lib/drizzle/extensions/additionalActions.js.map +1 -1
  23. package/dist/utils/cacheTableUtils.d.ts +11 -0
  24. package/dist/utils/cacheTableUtils.d.ts.map +1 -0
  25. package/dist/utils/cacheTableUtils.js +450 -0
  26. package/dist/utils/cacheTableUtils.js.map +1 -0
  27. package/dist/utils/cacheUtils.d.ts.map +1 -1
  28. package/dist/utils/cacheUtils.js +3 -22
  29. package/dist/utils/cacheUtils.js.map +1 -1
  30. package/dist/utils/forgeDriver.d.ts.map +1 -1
  31. package/dist/utils/forgeDriver.js +5 -12
  32. package/dist/utils/forgeDriver.js.map +1 -1
  33. package/dist/utils/forgeDriverProxy.js +7 -5
  34. package/dist/utils/forgeDriverProxy.js.map +1 -1
  35. package/dist/utils/metadataContextUtils.d.ts +44 -4
  36. package/dist/utils/metadataContextUtils.d.ts.map +1 -1
  37. package/dist/utils/metadataContextUtils.js +155 -50
  38. package/dist/utils/metadataContextUtils.js.map +1 -1
  39. package/dist/utils/sqlUtils.d.ts +3 -1
  40. package/dist/utils/sqlUtils.d.ts.map +1 -1
  41. package/dist/utils/sqlUtils.js +264 -144
  42. package/dist/utils/sqlUtils.js.map +1 -1
  43. package/dist/webtriggers/applyMigrationsWebTrigger.js +1 -1
  44. package/package.json +14 -13
  45. package/src/async/PrintQueryConsumer.ts +114 -0
  46. package/src/core/ForgeSQLQueryBuilder.ts +2 -2
  47. package/src/core/ForgeSQLSelectOperations.ts +2 -1
  48. package/src/core/Rovo.ts +209 -167
  49. package/src/index.ts +2 -3
  50. package/src/lib/drizzle/extensions/additionalActions.ts +98 -42
  51. package/src/utils/cacheTableUtils.ts +511 -0
  52. package/src/utils/cacheUtils.ts +3 -25
  53. package/src/utils/forgeDriver.ts +5 -11
  54. package/src/utils/forgeDriverProxy.ts +9 -9
  55. package/src/utils/metadataContextUtils.ts +169 -52
  56. package/src/utils/sqlUtils.ts +372 -177
  57. package/src/webtriggers/applyMigrationsWebTrigger.ts +1 -1
package/README.md CHANGED
@@ -12,6 +12,10 @@
12
12
  [![DeepScan grade](https://deepscan.io/api/teams/26652/projects/29272/branches/940614/badge/grade.svg)](https://deepscan.io/dashboard#view=project&tid=26652&pid=29272&bid=940614)
13
13
  [![Snyk Vulnerabilities](https://snyk.io/test/github/vzakharchenko/forge-sql-orm/badge.svg)](https://snyk.io/test/github/vzakharchenko/forge-sql-orm)
14
14
 
15
+ [![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=vzakharchenko_forge-sql-orm&metric=alert_status)](https://sonarcloud.io/summary/new_code?id=vzakharchenko_forge-sql-orm)
16
+ [![Bugs](https://sonarcloud.io/api/project_badges/measure?project=vzakharchenko_forge-sql-orm&metric=bugs)](https://sonarcloud.io/summary/new_code?id=vzakharchenko_forge-sql-orm)
17
+ [![Code Smells](https://sonarcloud.io/api/project_badges/measure?project=vzakharchenko_forge-sql-orm&metric=code_smells)](https://sonarcloud.io/summary/new_code?id=vzakharchenko_forge-sql-orm)
18
+
15
19
  **Forge-SQL-ORM** is an ORM designed for working with [@forge/sql](https://developer.atlassian.com/platform/forge/storage-reference/sql-tutorial/) in **Atlassian Forge**. It is built on top of [Drizzle ORM](https://orm.drizzle.team) and provides advanced capabilities for working with relational databases inside Forge.
16
20
 
17
21
  ## Key Features
@@ -19,7 +23,7 @@
19
23
  - ✅ **Custom Drizzle Driver** for direct integration with @forge/sql
20
24
  - ✅ **Local Cache System (Level 1)** for in-memory query optimization within single resolver invocation scope
21
25
  - ✅ **Global Cache System (Level 2)** with cross-invocation caching, automatic cache invalidation and context-aware operations (using [@forge/kvs](https://developer.atlassian.com/platform/forge/storage-reference/storage-api-custom-entities/) )
22
- - ✅ **Performance Monitoring**: Query execution metrics and analysis capabilities with automatic error analysis for timeout and OOM errors, plus scheduled slow query monitoring with execution plans
26
+ - ✅ **Performance Monitoring**: Query execution metrics and analysis capabilities with automatic error analysis for timeout and OOM errors, scheduled slow query monitoring with execution plans, and async query degradation analysis for non-blocking performance monitoring
23
27
  - ✅ **Type-Safe Query Building**: Write SQL queries with full TypeScript support
24
28
  - ✅ **Supports complex SQL queries** with joins and filtering using Drizzle ORM
25
29
  - ✅ **Advanced Query Methods**: `selectFrom()`, `selectDistinctFrom()`, `selectCacheableFrom()`, `selectDistinctCacheableFrom()` for all-column queries with field aliasing
@@ -2802,6 +2806,7 @@ All options are **optional**. If not specified, default values are used. You can
2802
2806
  | `topQueries` | `number` | `1` | Number of top slowest queries to analyze when `mode` is `'TopSlowest'` |
2803
2807
  | `showSlowestPlans` | `boolean` | `true` | Whether to show execution plans for slowest queries in TopSlowest mode. If `false`, only SQL and execution time are printed |
2804
2808
  | `normalizeQuery` | `boolean` | `true` | Whether to normalize SQL queries by replacing parameter values with `?` placeholders. Set to `false` to disable normalization if it causes issues with complex queries |
2809
+ | `asyncQueueName` | `string` | `""` | Queue name for async processing. If provided, query analysis will be queued for background processing instead of running synchronously. Requires consumer configuration in `manifest.yml` |
2805
2810
 
2806
2811
  **Examples:**
2807
2812
 
@@ -2887,6 +2892,194 @@ resolver.define("fetch", async (req: Request) => {
2887
2892
 
2888
2893
  > **💡 Tip**: When multiple resolvers are running concurrently, their query data may also appear in `printQueriesWithPlan()` analysis when using SummaryTable mode, as it queries the global `CLUSTER_STATEMENTS_SUMMARY` table.
2889
2894
 
2895
+ ### Async Query Degradation Analysis
2896
+
2897
+ Forge-SQL-ORM supports asynchronous processing of query degradation analysis, allowing you to offload performance analysis to a background queue. This is particularly useful for production environments where you want to avoid blocking resolver responses while still capturing detailed performance metrics.
2898
+
2899
+ #### Key Features
2900
+
2901
+ - **Non-Blocking Analysis**: Query analysis runs asynchronously without blocking resolver responses
2902
+ - **Automatic Fallback**: Falls back to synchronous execution if async queue fails
2903
+ - **Log Correlation**: Job IDs help correlate resolver logs with consumer logs
2904
+ - **Queue-Based Processing**: Uses Forge's event queue system for reliable processing
2905
+ - **Configurable Timeout**: Customizable timeout for event queuing (default: 1200ms)
2906
+
2907
+ #### Basic Setup
2908
+
2909
+ **1. Configure consumer in `manifest.yml`:**
2910
+
2911
+ ```yaml
2912
+ modules:
2913
+ consumer:
2914
+ - key: print-degradation-queries
2915
+ queue: degradationQueue
2916
+ function: handlerAsyncDegradation
2917
+
2918
+ function:
2919
+ - key: handlerAsyncDegradation
2920
+ handler: index.handlerAsyncDegradation
2921
+ ```
2922
+
2923
+ **2. Create the handler function:**
2924
+
2925
+ ```typescript
2926
+ import { AsyncEvent } from "@forge/events";
2927
+ import { printDegradationQueriesConsumer } from "forge-sql-orm";
2928
+ import { FORGE_SQL_ORM } from "./utils/forgeSqlOrmUtils";
2929
+
2930
+ export const handlerAsyncDegradation = (event: AsyncEvent) => {
2931
+ return printDegradationQueriesConsumer(FORGE_SQL_ORM, event);
2932
+ };
2933
+ ```
2934
+
2935
+ **3. Enable async processing in resolver:**
2936
+
2937
+ ```typescript
2938
+ resolver.define("fetch", async (req: Request) => {
2939
+ return await FORGE_SQL_ORM.executeWithMetadata(
2940
+ async () => {
2941
+ // ... your queries ...
2942
+ return await SQL_QUERY;
2943
+ },
2944
+ async (totalDbExecutionTime, totalResponseSize, printQueries) => {
2945
+ if (totalDbExecutionTime > 800) {
2946
+ await printQueries(); // Will queue for async processing
2947
+ }
2948
+ },
2949
+ { asyncQueueName: "degradationQueue" }, // Enable async processing
2950
+ );
2951
+ });
2952
+ ```
2953
+
2954
+ #### Configuration Options
2955
+
2956
+ The `asyncQueueName` option enables async processing:
2957
+
2958
+ | Option | Type | Default | Description |
2959
+ | ---------------- | -------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
2960
+ | `asyncQueueName` | `string` | `""` | Queue name for async processing. If provided, query analysis will be queued instead of running synchronously. If empty or not provided, runs synchronously |
2961
+
2962
+ #### How It Works
2963
+
2964
+ 1. **Resolver Execution**: When `printQueriesWithPlan()` is called with `asyncQueueName` configured:
2965
+ - Creates an event payload with query statistics and metadata
2966
+ - Sends event to the specified queue with a timeout (default: 1200ms)
2967
+ - Logs a warning message with Job ID for correlation
2968
+ - Returns immediately without waiting for analysis
2969
+
2970
+ 2. **Async Processing**: The consumer function (`handlerAsyncDegradation`):
2971
+ - Receives the event from the queue
2972
+ - Logs processing start with Job ID
2973
+ - Executes query analysis (TopSlowest or SummaryTable mode)
2974
+ - Prints execution plans and performance metrics
2975
+
2976
+ 3. **Fallback Behavior**: If queue push fails or times out:
2977
+ - Falls back to synchronous execution automatically
2978
+ - Logs a warning message
2979
+ - Analysis still completes, just synchronously
2980
+
2981
+ #### Log Correlation
2982
+
2983
+ Both resolver and consumer logs include Job IDs to help you correlate related events:
2984
+
2985
+ **Resolver log (when event is queued):**
2986
+
2987
+ ```
2988
+ WARN [Performance Analysis] Query degradation event queued for async processing | Job ID: abc-123 | Total DB time: 3531ms | Queries: 3 | Look for consumer log with jobId: abc-123
2989
+ ```
2990
+
2991
+ **Consumer log (when event is processed):**
2992
+
2993
+ ```
2994
+ WARN [Performance Analysis] Processing query degradation event | Job ID: abc-123 | Total DB time: 3531ms | Queries: 3 | Started: 2025-12-15T18:12:34.251Z
2995
+ WARN SQL: SELECT ... | Time: 3514 ms
2996
+ Plan:
2997
+ Projection_7 | task:root | ...
2998
+ ```
2999
+
3000
+ **To find all related logs:**
3001
+
3002
+ - Search logs for: `"Job ID: abc-123"`
3003
+ - This will show both the queuing event and the processing event
3004
+
3005
+ #### Example: Complete Setup
3006
+
3007
+ **manifest.yml:**
3008
+
3009
+ ```yaml
3010
+ modules:
3011
+ consumer:
3012
+ - key: print-degradation-queries
3013
+ queue: degradationQueue
3014
+ function: handlerAsyncDegradation
3015
+
3016
+ function:
3017
+ - key: handlerAsyncDegradation
3018
+ handler: index.handlerAsyncDegradation
3019
+ ```
3020
+
3021
+ **index.ts:**
3022
+
3023
+ ```typescript
3024
+ import { AsyncEvent } from "@forge/events";
3025
+ import { printDegradationQueriesConsumer } from "forge-sql-orm";
3026
+ import { FORGE_SQL_ORM } from "./utils/forgeSqlOrmUtils";
3027
+
3028
+ // Consumer handler
3029
+ export const handlerAsyncDegradation = (event: AsyncEvent) => {
3030
+ return printDegradationQueriesConsumer(FORGE_SQL_ORM, event);
3031
+ };
3032
+
3033
+ // Resolver with async analysis
3034
+ resolver.define("fetch", async (req: Request) => {
3035
+ return await FORGE_SQL_ORM.executeWithMetadata(
3036
+ async () => {
3037
+ const users = await FORGE_SQL_ORM.selectFrom(demoUsers);
3038
+ const orders = await FORGE_SQL_ORM.selectFrom(demoOrders);
3039
+ return { users, orders };
3040
+ },
3041
+ async (totalDbExecutionTime, totalResponseSize, printQueries) => {
3042
+ const threshold = 800; // ms baseline
3043
+
3044
+ if (totalDbExecutionTime > threshold) {
3045
+ console.warn(`[Performance Warning] Resolver exceeded DB time: ${totalDbExecutionTime} ms`);
3046
+ await printQueries(); // Queued for async processing
3047
+ }
3048
+ },
3049
+ {
3050
+ asyncQueueName: "degradationQueue", // Enable async processing
3051
+ mode: "TopSlowest",
3052
+ topQueries: 1,
3053
+ },
3054
+ );
3055
+ });
3056
+ ```
3057
+
3058
+ #### Benefits
3059
+
3060
+ - **Non-Blocking**: Resolver responses are not delayed by query analysis
3061
+ - **Production Ready**: Suitable for production environments where performance is critical
3062
+ - **Reliable**: Automatic fallback ensures analysis always completes
3063
+ - **Traceable**: Job IDs enable easy log correlation
3064
+ - **Scalable**: Queue-based processing handles high load scenarios
3065
+
3066
+ #### When to Use Async Processing
3067
+
3068
+ **Use async processing when:**
3069
+
3070
+ - You're in a production environment
3071
+ - Resolver response time is critical
3072
+ - You want to avoid blocking user requests
3073
+ - You need detailed analysis but can process it later
3074
+
3075
+ **Use synchronous processing when:**
3076
+
3077
+ - You're in development/debugging
3078
+ - You need immediate analysis results
3079
+ - You want simpler setup (no queue configuration)
3080
+
3081
+ > **💡 Tip**: The async queue name must match the queue name configured in your `manifest.yml` consumer section. If the queue doesn't exist or the event fails to send, the system automatically falls back to synchronous execution.
3082
+
2890
3083
  ### Slow Query Monitoring
2891
3084
 
2892
3085
  Forge-SQL-ORM provides a scheduler trigger (`slowQuerySchedulerTrigger`) that automatically monitors and analyzes slow queries on an hourly basis. This trigger queries TiDB's slow query log system table and provides detailed performance information including SQL query text, memory usage, execution time, and execution plans.
@@ -0,0 +1,98 @@
1
+ import { AsyncEvent } from "@forge/events";
2
+ import { MetadataQueryOptions, Statistic } from "../utils/metadataContextUtils";
3
+ import { ForgeSqlOperation } from "../core/ForgeSQLQueryBuilder";
4
+ /**
5
+ * Event payload for async query degradation analysis.
6
+ * Contains query performance statistics and metadata for analysis.
7
+ */
8
+ export type AsyncEventPrintQuery = {
9
+ /** Total database execution time across all queries in milliseconds */
10
+ totalDbExecutionTime: number;
11
+ /** Total response size across all queries in bytes */
12
+ totalResponseSize: number;
13
+ /** Timestamp when the query execution started */
14
+ beginTime: Date;
15
+ /** Query analysis options with all fields set to defaults if not provided */
16
+ options: Required<MetadataQueryOptions>;
17
+ /** Array of query statistics including SQL, parameters, and execution metadata */
18
+ statistics: Statistic[];
19
+ };
20
+ /**
21
+ * Consumer function for processing async query degradation events.
22
+ *
23
+ * This function is called by the Forge event system when a query degradation event
24
+ * is received from the queue. It processes the event and prints query performance
25
+ * analysis including execution plans for slow queries.
26
+ *
27
+ * The function logs a warning message with job ID, total DB time, query count, and
28
+ * start time to help correlate with the original resolver/service logs.
29
+ *
30
+ * @param forgeSQLORM - The ForgeSQL operation instance for database access
31
+ * @param event - The async event containing query degradation data
32
+ * @returns Promise that resolves when query analysis is complete
33
+ *
34
+ * @example
35
+ * ```yaml
36
+ * # manifest.yml - Configure consumer for async query degradation analysis
37
+ * modules:
38
+ * consumer:
39
+ * - key: print-degradation-queries
40
+ * queue: degradationQueue
41
+ * function: handlerAsyncDegradation
42
+ * function:
43
+ * - key: handlerAsyncDegradation
44
+ * handler: index.handlerAsyncDegradation
45
+ * ```
46
+ *
47
+ * @example
48
+ * ```typescript
49
+ * // index.ts - Handler function that processes async events
50
+ * import { AsyncEvent } from "@forge/events";
51
+ * import { printDegradationQueriesConsumer } from "forge-sql-orm";
52
+ * import { FORGE_SQL_ORM } from "./utils/forgeSqlOrmUtils";
53
+ *
54
+ * export const handlerAsyncDegradation = (event: AsyncEvent) => {
55
+ * return printDegradationQueriesConsumer(FORGE_SQL_ORM, event);
56
+ * };
57
+ * ```
58
+ *
59
+ * @example
60
+ * ```typescript
61
+ * // Using async queue in resolver - Enable async processing
62
+ * resolver.define("fetch", async (req: Request) => {
63
+ * return await FORGE_SQL_ORM.executeWithMetadata(
64
+ * async () => {
65
+ * // ... your queries ...
66
+ * return await SQL_QUERY;
67
+ * },
68
+ * async (totalDbExecutionTime, totalResponseSize, printQueries) => {
69
+ * if (totalDbExecutionTime > 800) {
70
+ * await printQueries(); // Will queue for async processing
71
+ * }
72
+ * },
73
+ * { asyncQueueName: "degradationQueue" } // Enable async processing
74
+ * );
75
+ * });
76
+ * ```
77
+ *
78
+ * @example
79
+ * ```typescript
80
+ * // Log correlation - How to find related logs
81
+ * //
82
+ * // 1. In resolver/service log, you'll see:
83
+ * // [Performance Analysis] Query degradation event queued for async processing | Job ID: abc-123 | ...
84
+ * //
85
+ * // 2. In consumer log (handlerAsyncDegradation), search for the same Job ID:
86
+ * // [Performance Analysis] Processing query degradation event | Job ID: abc-123 | ...
87
+ * //
88
+ * // 3. To find all related logs, search logs for: "Job ID: abc-123"
89
+ * // This will show both the queuing event and the processing event
90
+ * //
91
+ * // Example log flow:
92
+ * // WARN resolver: [Performance Analysis] Query degradation event queued... | Job ID: abc-123
93
+ * // WARN handlerAsyncDegradation: [Performance Analysis] Processing query degradation event | Job ID: abc-123
94
+ * // WARN handlerAsyncDegradation: SQL: SELECT ... | Time: 3514 ms
95
+ * ```
96
+ */
97
+ export declare function printDegradationQueriesConsumer(forgeSQLORM: ForgeSqlOperation, event: AsyncEvent): Promise<void>;
98
+ //# sourceMappingURL=PrintQueryConsumer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PrintQueryConsumer.d.ts","sourceRoot":"","sources":["../../src/async/PrintQueryConsumer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EACL,oBAAoB,EAEpB,SAAS,EACV,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEjE;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,uEAAuE;IACvE,oBAAoB,EAAE,MAAM,CAAC;IAC7B,sDAAsD;IACtD,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iDAAiD;IACjD,SAAS,EAAE,IAAI,CAAC;IAChB,6EAA6E;IAC7E,OAAO,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IACxC,kFAAkF;IAClF,UAAU,EAAE,SAAS,EAAE,CAAC;CACzB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4EG;AACH,wBAAsB,+BAA+B,CACnD,WAAW,EAAE,iBAAiB,EAC9B,KAAK,EAAE,UAAU,GAChB,OAAO,CAAC,IAAI,CAAC,CAQf"}
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.printDegradationQueriesConsumer = printDegradationQueriesConsumer;
4
+ const metadataContextUtils_1 = require("../utils/metadataContextUtils");
5
+ /**
6
+ * Consumer function for processing async query degradation events.
7
+ *
8
+ * This function is called by the Forge event system when a query degradation event
9
+ * is received from the queue. It processes the event and prints query performance
10
+ * analysis including execution plans for slow queries.
11
+ *
12
+ * The function logs a warning message with job ID, total DB time, query count, and
13
+ * start time to help correlate with the original resolver/service logs.
14
+ *
15
+ * @param forgeSQLORM - The ForgeSQL operation instance for database access
16
+ * @param event - The async event containing query degradation data
17
+ * @returns Promise that resolves when query analysis is complete
18
+ *
19
+ * @example
20
+ * ```yaml
21
+ * # manifest.yml - Configure consumer for async query degradation analysis
22
+ * modules:
23
+ * consumer:
24
+ * - key: print-degradation-queries
25
+ * queue: degradationQueue
26
+ * function: handlerAsyncDegradation
27
+ * function:
28
+ * - key: handlerAsyncDegradation
29
+ * handler: index.handlerAsyncDegradation
30
+ * ```
31
+ *
32
+ * @example
33
+ * ```typescript
34
+ * // index.ts - Handler function that processes async events
35
+ * import { AsyncEvent } from "@forge/events";
36
+ * import { printDegradationQueriesConsumer } from "forge-sql-orm";
37
+ * import { FORGE_SQL_ORM } from "./utils/forgeSqlOrmUtils";
38
+ *
39
+ * export const handlerAsyncDegradation = (event: AsyncEvent) => {
40
+ * return printDegradationQueriesConsumer(FORGE_SQL_ORM, event);
41
+ * };
42
+ * ```
43
+ *
44
+ * @example
45
+ * ```typescript
46
+ * // Using async queue in resolver - Enable async processing
47
+ * resolver.define("fetch", async (req: Request) => {
48
+ * return await FORGE_SQL_ORM.executeWithMetadata(
49
+ * async () => {
50
+ * // ... your queries ...
51
+ * return await SQL_QUERY;
52
+ * },
53
+ * async (totalDbExecutionTime, totalResponseSize, printQueries) => {
54
+ * if (totalDbExecutionTime > 800) {
55
+ * await printQueries(); // Will queue for async processing
56
+ * }
57
+ * },
58
+ * { asyncQueueName: "degradationQueue" } // Enable async processing
59
+ * );
60
+ * });
61
+ * ```
62
+ *
63
+ * @example
64
+ * ```typescript
65
+ * // Log correlation - How to find related logs
66
+ * //
67
+ * // 1. In resolver/service log, you'll see:
68
+ * // [Performance Analysis] Query degradation event queued for async processing | Job ID: abc-123 | ...
69
+ * //
70
+ * // 2. In consumer log (handlerAsyncDegradation), search for the same Job ID:
71
+ * // [Performance Analysis] Processing query degradation event | Job ID: abc-123 | ...
72
+ * //
73
+ * // 3. To find all related logs, search logs for: "Job ID: abc-123"
74
+ * // This will show both the queuing event and the processing event
75
+ * //
76
+ * // Example log flow:
77
+ * // WARN resolver: [Performance Analysis] Query degradation event queued... | Job ID: abc-123
78
+ * // WARN handlerAsyncDegradation: [Performance Analysis] Processing query degradation event | Job ID: abc-123
79
+ * // WARN handlerAsyncDegradation: SQL: SELECT ... | Time: 3514 ms
80
+ * ```
81
+ */
82
+ async function printDegradationQueriesConsumer(forgeSQLORM, event) {
83
+ const body = event.body;
84
+ body.beginTime = new Date(body.beginTime);
85
+ // eslint-disable-next-line no-console
86
+ console.warn(`[Performance Analysis] Processing query degradation event | Job ID: ${event.jobId} | Total DB time: ${body.totalDbExecutionTime}ms | Queries: ${body.statistics.length} | Started: ${body.beginTime.toISOString()}`);
87
+ await (0, metadataContextUtils_1.printDegradationQueries)(forgeSQLORM, body);
88
+ }
89
+ //# sourceMappingURL=PrintQueryConsumer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PrintQueryConsumer.js","sourceRoot":"","sources":["../../src/async/PrintQueryConsumer.ts"],"names":[],"mappings":";;AAsGA,0EAWC;AAhHD,wEAIuC;AAoBvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4EG;AACI,KAAK,UAAU,+BAA+B,CACnD,WAA8B,EAC9B,KAAiB;IAEjB,MAAM,IAAI,GAAyB,KAAK,CAAC,IAA4B,CAAC;IACtE,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC1C,sCAAsC;IACtC,OAAO,CAAC,IAAI,CACV,uEAAuE,KAAK,CAAC,KAAK,qBAAqB,IAAI,CAAC,oBAAoB,iBAAiB,IAAI,CAAC,UAAU,CAAC,MAAM,eAAe,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,CACrN,CAAC;IACF,MAAM,IAAA,8CAAuB,EAAC,WAAW,EAAE,IAAI,CAAC,CAAC;AACnD,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { Result, UpdateQueryResponse } from "@forge/sql";
2
2
  import { SqlParameters } from "@forge/sql/out/sql-statement";
3
- import { AnyMySqlSelectQueryBuilder, AnyMySqlTable, MySqlSelectBuilder, MySqlTable } from "drizzle-orm/mysql-core";
3
+ import { AnyMySqlSelectQueryBuilder, AnyMySqlTable, MySqlSelectBuilder, MySqlTable, MySqlColumn } from "drizzle-orm/mysql-core";
4
4
  import { MySqlSelectDynamic, type SelectedFields } from "drizzle-orm/mysql-core/query-builders/select.types";
5
5
  import { InferInsertModel, Query, SQL } from "drizzle-orm";
6
6
  import { MySqlRemoteDatabase, MySqlRemotePreparedQueryHKT, MySqlRemoteQueryResultHKT } from "drizzle-orm/mysql-proxy";
@@ -14,7 +14,6 @@ import { SQLWrapper } from "drizzle-orm/sql/sql";
14
14
  import type { MySqlQueryResultKind } from "drizzle-orm/mysql-core/session";
15
15
  import type { WithBuilder } from "drizzle-orm/mysql-core/subquery";
16
16
  import { WithSubquery } from "drizzle-orm/subquery";
17
- import { MySqlColumn } from "drizzle-orm/mysql-core";
18
17
  import { MetadataQueryOptions } from "../utils/metadataContextUtils";
19
18
  /**
20
19
  * Core interface for ForgeSQL operations.
@@ -815,7 +814,7 @@ export interface SchemaSqlForgeSql {
815
814
  * @returns {Promise<T[]>} A list of results as objects
816
815
  * @throws {Error} If the query execution fails
817
816
  */
818
- executeRawSQL<T extends object | unknown>(query: string, params?: SqlParameters[]): Promise<T[]>;
817
+ executeRawSQL<T>(query: string, params?: SqlParameters[]): Promise<T[]>;
819
818
  /**
820
819
  * Executes a raw SQL update query.
821
820
  *
@@ -1 +1 @@
1
- {"version":3,"file":"ForgeSQLQueryBuilder.d.ts","sourceRoot":"","sources":["../../src/core/ForgeSQLQueryBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EACL,0BAA0B,EAC1B,aAAa,EAEb,kBAAkB,EAClB,UAAU,EACX,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,kBAAkB,EAClB,KAAK,cAAc,EACpB,MAAM,oDAAoD,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAE3D,OAAO,EACL,mBAAmB,EACnB,2BAA2B,EAC3B,yBAAyB,EAC1B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EACL,4BAA4B,EAC5B,iBAAiB,EACjB,mBAAmB,EACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EACL,uBAAuB,EACvB,YAAY,EACZ,qBAAqB,EACrB,uBAAuB,EACvB,0BAA0B,EAC1B,kCAAkC,EAClC,yBAAyB,EACzB,iBAAiB,EACjB,gCAAgC,EAChC,yCAAyC,EACzC,wBAAwB,EACxB,iCAAiC,EACjC,uBAAuB,EACxB,MAAM,IAAI,CAAC;AACZ,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,kBAAkB,EACnB,MAAM,uCAAuC,CAAC;AAE/C,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,iBAAiB,EAClB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAErE;;;;;;;;;GASG;AACH,MAAM,WAAW,iBAAkB,SAAQ,oBAAoB;IAC7D;;;OAGG;IACH,sBAAsB,IAAI,mBAAmB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG;QACvE,aAAa,EAAE,iBAAiB,CAAC;QACjC,qBAAqB,EAAE,yBAAyB,CAAC;QACjD,YAAY,EAAE,YAAY,CAAC;QAC3B,sBAAsB,EAAE,0BAA0B,CAAC;QACnD,8BAA8B,EAAE,kCAAkC,CAAC;QACnE,qBAAqB,EAAE,qBAAqB,CAAC;QAC7C,sBAAsB,EAAE,uBAAuB,CAAC;QAChD,mBAAmB,EAAE,uBAAuB,CAAC;QAC7C,mBAAmB,EAAE,uBAAuB,CAAC;QAC7C,sBAAsB,EAAE,uBAAuB,CAAC;QAChD,mBAAmB,EAAE,uBAAuB,CAAC;QAC7C,sBAAsB,EAAE,uBAAuB,CAAC;QAChD,UAAU,EAAE,wBAAwB,CAAC;QACrC,kBAAkB,EAAE,gCAAgC,CAAC;QACrD,mBAAmB,EAAE,iCAAiC,CAAC;QACvD,2BAA2B,EAAE,yCAAyC,CAAC;KACxE,CAAC;IAEF;;;OAGG;IACH,oBAAoB,IAAI,6BAA6B,CAAC;IAEtD;;;OAGG;IACH,KAAK,IAAI,iBAAiB,CAAC;IAE3B;;;OAGG;IACH,OAAO,IAAI,qBAAqB,CAAC;IAEjC;;;;;;;;;OASG;IACH,iCAAiC,IAAI,uBAAuB,CAAC;IAE7D;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,IAAI,IAAI,eAAe,CAAC;CACzB;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;OAGG;IACH,sBAAsB,IAAI,mBAAmB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG;QACvE,aAAa,EAAE,iBAAiB,CAAC;QACjC,qBAAqB,EAAE,yBAAyB,CAAC;QACjD,YAAY,EAAE,YAAY,CAAC;QAC3B,sBAAsB,EAAE,0BAA0B,CAAC;QACnD,8BAA8B,EAAE,kCAAkC,CAAC;QACnE,qBAAqB,EAAE,qBAAqB,CAAC;QAC7C,sBAAsB,EAAE,uBAAuB,CAAC;QAChD,mBAAmB,EAAE,uBAAuB,CAAC;QAC7C,mBAAmB,EAAE,uBAAuB,CAAC;QAC7C,sBAAsB,EAAE,uBAAuB,CAAC;QAChD,mBAAmB,EAAE,uBAAuB,CAAC;QAC7C,sBAAsB,EAAE,uBAAuB,CAAC;KACjD,CAAC;IAEF;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CAAC,UAAU,SAAS,cAAc,EACtC,MAAM,EAAE,UAAU,GACjB,kBAAkB,CAAC,UAAU,EAAE,2BAA2B,CAAC,CAAC;IAE/D;;;;;;;;;;;OAWG;IACH,UAAU,CAAC,CAAC,SAAS,UAAU,EAC7B,KAAK,EAAE,CAAC,GACP,eAAe,CAChB,kBAAkB,CAAC,CAAC,CAAC,EACrB,uBAAuB,CAAC,CAAC,CAAC,EAC1B,QAAQ,EACR,2BAA2B,EAC3B,kBAAkB,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,kBAAkB,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,GAAG,EAAE,EAC9F,KAAK,EACL,KAAK,EACL;SACG,CAAC,IAAI,MAAM;aACT,GAAG,IAAI,MAAM,uBAAuB,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAC1D,uBAAuB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAChC;SACF,GAAG;aACD,GAAG,IAAI,MAAM,uBAAuB,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAC1D,uBAAuB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAChC;SACF,CAAC,CAAC,CAAC;KACL,EAAE,EACH,GAAG,CACJ,CAAC;IAEF;;;;;;;;;;;;;;;OAeG;IACH,cAAc,CAAC,UAAU,SAAS,cAAc,EAC9C,MAAM,EAAE,UAAU,GACjB,kBAAkB,CAAC,UAAU,EAAE,2BAA2B,CAAC,CAAC;IAC/D;;;;;;;;;;;OAWG;IACH,kBAAkB,CAAC,CAAC,SAAS,UAAU,EACrC,KAAK,EAAE,CAAC,GACP,eAAe,CAChB,kBAAkB,CAAC,CAAC,CAAC,EACrB,uBAAuB,CAAC,CAAC,CAAC,EAC1B,QAAQ,EACR,2BAA2B,EAC3B,kBAAkB,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,kBAAkB,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,GAAG,EAAE,EAC9F,KAAK,EACL,KAAK,EACL;SACG,CAAC,IAAI,MAAM;aACT,GAAG,IAAI,MAAM,uBAAuB,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAC1D,uBAAuB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAChC;SACF,GAAG;aACD,GAAG,IAAI,MAAM,uBAAuB,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAC1D,uBAAuB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAChC;SACF,CAAC,CAAC,CAAC;KACL,EAAE,EACH,GAAG,CACJ,CAAC;IAEF;;;;;;;;;;;;;;;;OAgBG;IACH,eAAe,CAAC,UAAU,SAAS,cAAc,EAC/C,MAAM,EAAE,UAAU,EAClB,QAAQ,CAAC,EAAE,MAAM,GAChB,kBAAkB,CAAC,UAAU,EAAE,2BAA2B,CAAC,CAAC;IAE/D;;;;;;;;;;;;OAYG;IACH,mBAAmB,CAAC,CAAC,SAAS,UAAU,EACtC,KAAK,EAAE,CAAC,EACR,QAAQ,CAAC,EAAE,MAAM,GAChB,eAAe,CAChB,kBAAkB,CAAC,CAAC,CAAC,EACrB,uBAAuB,CAAC,CAAC,CAAC,EAC1B,QAAQ,EACR,2BAA2B,EAC3B,kBAAkB,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,kBAAkB,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,GAAG,EAAE,EAC9F,KAAK,EACL,KAAK,EACL;SACG,CAAC,IAAI,MAAM;aACT,GAAG,IAAI,MAAM,uBAAuB,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAC1D,uBAAuB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAChC;SACF,GAAG;aACD,GAAG,IAAI,MAAM,uBAAuB,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAC1D,uBAAuB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAChC;SACF,CAAC,CAAC,CAAC;KACL,EAAE,EACH,GAAG,CACJ,CAAC;IAEF;;;;;;;;;;;;;;;;OAgBG;IACH,uBAAuB,CAAC,UAAU,SAAS,cAAc,EACvD,MAAM,EAAE,UAAU,EAClB,QAAQ,CAAC,EAAE,MAAM,GAChB,kBAAkB,CAAC,UAAU,EAAE,2BAA2B,CAAC,CAAC;IAE/D;;;;;;;;;;;;OAYG;IACH,2BAA2B,CAAC,CAAC,SAAS,UAAU,EAC9C,KAAK,EAAE,CAAC,EACR,QAAQ,CAAC,EAAE,MAAM,GAChB,eAAe,CAChB,kBAAkB,CAAC,CAAC,CAAC,EACrB,uBAAuB,CAAC,CAAC,CAAC,EAC1B,QAAQ,EACR,2BAA2B,EAC3B,kBAAkB,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,kBAAkB,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,GAAG,EAAE,EAC9F,KAAK,EACL,KAAK,EACL;SACG,CAAC,IAAI,MAAM;aACT,GAAG,IAAI,MAAM,uBAAuB,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAC1D,uBAAuB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAChC;SACF,GAAG;aACD,GAAG,IAAI,MAAM,uBAAuB,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAC1D,uBAAuB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAChC;SACF,CAAC,CAAC,CAAC;KACL,EAAE,EACH,GAAG,CACJ,CAAC;IAEF;;;;;;;;OAQG;IACH,MAAM,CAAC,MAAM,SAAS,UAAU,EAC9B,KAAK,EAAE,MAAM,GACZ,kBAAkB,CAAC,MAAM,EAAE,yBAAyB,EAAE,2BAA2B,CAAC,CAAC;IAEtF;;;;;;;;OAQG;IACH,mBAAmB,CAAC,MAAM,SAAS,UAAU,EAC3C,KAAK,EAAE,MAAM,GACZ,kBAAkB,CAAC,MAAM,EAAE,yBAAyB,EAAE,2BAA2B,CAAC,CAAC;IAEtF;;;;;;;;OAQG;IACH,MAAM,CAAC,MAAM,SAAS,UAAU,EAC9B,KAAK,EAAE,MAAM,GACZ,kBAAkB,CAAC,MAAM,EAAE,yBAAyB,EAAE,2BAA2B,CAAC,CAAC;IAEtF;;;;;;;;OAQG;IACH,mBAAmB,CAAC,MAAM,SAAS,UAAU,EAC3C,KAAK,EAAE,MAAM,GACZ,kBAAkB,CAAC,MAAM,EAAE,yBAAyB,EAAE,2BAA2B,CAAC,CAAC;IAEtF;;;;;;;;OAQG;IACH,MAAM,CAAC,MAAM,SAAS,UAAU,EAC9B,KAAK,EAAE,MAAM,GACZ,eAAe,CAAC,MAAM,EAAE,yBAAyB,EAAE,2BAA2B,CAAC,CAAC;IACnF;;;;;;;;OAQG;IACH,mBAAmB,CAAC,MAAM,SAAS,UAAU,EAC3C,KAAK,EAAE,MAAM,GACZ,eAAe,CAAC,MAAM,EAAE,yBAAyB,EAAE,2BAA2B,CAAC,CAAC;IAEnF;;;;;;;OAOG;IACH,uBAAuB,CAAC,YAAY,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1E;;;;;;;OAOG;IACH,qCAAqC,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAErF;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACH,uBAAuB,CAAC,YAAY,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1E;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,0CAA0C,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmFG;IACH,mBAAmB,CAAC,CAAC,EACnB,KAAK,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACvB,UAAU,EAAE,CACV,oBAAoB,EAAE,MAAM,EAC5B,iBAAiB,EAAE,MAAM,EACzB,oBAAoB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,KACtC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,EACzB,OAAO,CAAC,EAAE,oBAAoB,GAC7B,OAAO,CAAC,CAAC,CAAC,CAAC;IACd;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CAAC,CAAC,EACP,KAAK,EAAE,UAAU,GAAG,MAAM,GACzB,OAAO,CAAC,oBAAoB,CAAC,yBAAyB,EAAE,CAAC,CAAC,CAAC,CAAC;IAE/D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACH,UAAU,CAAC,CAAC,EACV,KAAK,EAAE,UAAU,GAAG,MAAM,GACzB,OAAO,CAAC,oBAAoB,CAAC,yBAAyB,EAAE,CAAC,CAAC,CAAC,CAAC;IAE/D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiDG;IACH,iBAAiB,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAE5D;;;;;;;;;;;;;;;;;OAiBG;IACH,gBAAgB,CAAC,CAAC,EAChB,KAAK,EAAE,UAAU,GAAG,MAAM,EAC1B,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,oBAAoB,CAAC,yBAAyB,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/D;;;;;;;;;;;;;OAaG;IACH,KAAK,EAAE,WAAW,CAAC;IAEnB;;;;;;;;;;;;;;;;;;OAkBG;IACH,IAAI,CAAC,GAAG,OAAO,EAAE,YAAY,EAAE,GAAG;QAChC,MAAM,EAAE;YACN,IAAI,kBAAkB,CAAC,SAAS,EAAE,2BAA2B,CAAC,CAAC;YAC/D,CAAC,UAAU,SAAS,cAAc,EAChC,MAAM,EAAE,UAAU,GACjB,kBAAkB,CAAC,UAAU,EAAE,2BAA2B,CAAC,CAAC;SAChE,CAAC;QACF,cAAc,EAAE;YACd,IAAI,kBAAkB,CAAC,SAAS,EAAE,2BAA2B,CAAC,CAAC;YAC/D,CAAC,UAAU,SAAS,cAAc,EAChC,MAAM,EAAE,UAAU,GACjB,kBAAkB,CAAC,UAAU,EAAE,2BAA2B,CAAC,CAAC;SAChE,CAAC;KACH,CAAC;CACH;AAED;;;;;GAKG;AACH,MAAM,WAAW,6BAA6B;IAC5C;;;;;;;;OAQG;IACH,MAAM,CAAC,CAAC,SAAS,aAAa,EAC5B,MAAM,EAAE,CAAC,EACT,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,EAC7B,cAAc,CAAC,EAAE,OAAO,GACvB,OAAO,CAAC,MAAM,CAAC,CAAC;IAEnB;;;;;;;OAOG;IACH,UAAU,CAAC,CAAC,SAAS,aAAa,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE7E;;;;;;;;;;;;;OAaG;IACH,UAAU,CAAC,CAAC,SAAS,aAAa,EAChC,MAAM,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,EACpC,MAAM,EAAE,CAAC,GACR,OAAO,CAAC,MAAM,CAAC,CAAC;IAEnB;;;;;;;;;;;;OAYG;IACH,YAAY,CAAC,CAAC,SAAS,aAAa,EAClC,UAAU,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,EACxC,MAAM,EAAE,CAAC,EACT,KAAK,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,GACnB,OAAO,CAAC,MAAM,CAAC,CAAC;CACpB;AAED,MAAM,WAAW,aAAc,SAAQ,6BAA6B;IAClE,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,kBAAkB,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5D;AAED;;;;;GAKG;AACH,MAAM,WAAW,qBAAqB;IACpC;;;;OAIG;IACH,OAAO,CAAC,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,KAAK,CAAA;KAAE,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAErE;;;;;OAKG;IACH,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAE/E;;;;OAIG;IACH,cAAc,CAAC,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,KAAK,CAAA;KAAE,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAE5E;;;;;OAKG;IACH,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAEtF;;;OAGG;IACH,kBAAkB,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;IAErD;;;;;;OAMG;IACH,qBAAqB,CACnB,MAAM,EAAE,aAAa,EAAE,EACvB,QAAQ,CAAC,EAAE,IAAI,EACf,MAAM,CAAC,EAAE,IAAI,GACZ,OAAO,CAAC,4BAA4B,EAAE,CAAC,CAAC;IAE3C;;;;;;OAMG;IACH,wBAAwB,CACtB,MAAM,EAAE,MAAM,EAAE,EAChB,QAAQ,CAAC,EAAE,IAAI,EACf,MAAM,CAAC,EAAE,IAAI,GACZ,OAAO,CAAC,4BAA4B,EAAE,CAAC,CAAC;CAC5C;AAED;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;;;;OAOG;IACH,mBAAmB,CAAC,CAAC,SAAS,kBAAkB,CAAC,0BAA0B,CAAC,EAC1E,KAAK,EAAE,CAAC,GACP,OAAO,CACR,OAAO,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,SAAS,CACxF,CAAC;IAEF;;;;;;;OAOG;IACH,aAAa,CAAC,CAAC,SAAS,MAAM,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IAEjG;;;;;;;OAOG;IACH,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;CACtF;AAED;;;;;GAKG;AACH,MAAM,WAAW,sBAAsB;IACrC;;;;OAIG;IACH,aAAa,IAAI,MAAM,CAAC;IAExB;;;;OAIG;IACH,aAAa,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAExC;;;;OAIG;IACH,YAAY,IAAI,MAAM,CAAC;IAEvB;;;;OAIG;IACH,QAAQ,IAAI,OAAO,CAAC;IAEpB;;;;;OAKG;IACH,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IAEtC;;;;OAIG;IACH,eAAe,IAAI,MAAM,EAAE,CAAC;CAC7B;AAED;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B;;;;;OAKG;IACH,eAAe,CAAC,SAAS,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,GAAG,WAAW,CAAC;IAEhE;;;;;OAKG;IACH,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,WAAW,CAAC;IAElD;;;;;OAKG;IACH,YAAY,CAAC,UAAU,EAAE,WAAW,GAAG,WAAW,CAAC;IAEnD;;;;;OAKG;IACH,eAAe,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,WAAW,CAAC;IAEnE;;;;OAIG;IACH,MAAM,IAAI,6BAA6B,CAAC;CACzC;AAED;;;;;GAKG;AACH,MAAM,WAAW,6BAA6B;IAC5C;;;;;;OAMG;IACH,mBAAmB,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,6BAA6B,CAAC;IAEzF;;;;OAIG;IACH,MAAM,IAAI,WAAW,CAAC;IAEtB;;;;OAIG;IACH,KAAK,IAAI,OAAO,CAAC,sBAAsB,CAAC,CAAC;CAC1C;AAED;;;;;;GAMG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;;;OAMG;IACH,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,6BAA6B,CAAC;IAE3F;;;;;;OAMG;IACH,kBAAkB,CAAC,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,6BAA6B,CAAC;IAE3F;;;;;;;OAOG;IACH,oBAAoB,CAClB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,sBAAsB,GAC/B,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;CAC7B;AAED;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC,gCAAgC;IAChC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;;GAKG;AACH,MAAM,WAAW,aAAa;IAC5B,wBAAwB;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,yDAAyD;IACzD,YAAY,EAAE,oBAAoB,CAAC;CACpC;AAED;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;AAE/D;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC,oDAAoD;IACpD,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,gEAAgE;IAChE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,kEAAkE;IAClE,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,0DAA0D;IAC1D,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,kDAAkD;IAClD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oDAAoD;IACpD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,8DAA8D;IAC9D,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,+DAA+D;IAC/D,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,yEAAyE;IACzE,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,gEAAgE;IAChE,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAE7B;;;;;;;;;;;;;;;;;OAiBG;IACH,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;CACzC;AAED;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;iBAGX,MAAM;;;;;;;;;;iBAAN,MAAM;;;;;;;;;CAYzB,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;iBAGZ,MAAM;;;;;;;;;;iBAAN,MAAM;;;;;;;;;CAYzB,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;iBAGP,MAAM;;;;;;;;;;iBAAN,MAAM;;;;;;;;;CAYzB,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;iBAGP,MAAM;;;;;;;;;;iBAAN,MAAM;;;;;;;;;CAWzB,CAAC"}
1
+ {"version":3,"file":"ForgeSQLQueryBuilder.d.ts","sourceRoot":"","sources":["../../src/core/ForgeSQLQueryBuilder.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ForgeSQLQueryBuilder.js","sourceRoot":"","sources":["../../src/core/ForgeSQLQueryBuilder.ts"],"names":[],"mappings":";;;AAEA,uDAMgC;AAMhC,gDAAkE;AA2vClE;;;;;GAKG;AACU,QAAA,mBAAmB,GAAG,IAAA,uBAAU,EAI1C;IACD,QAAQ;QACN,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,QAAQ,CAAC,KAAW;QAClB,OAAO,IAAA,yBAAc,EAAC,KAAK,EAAE,2BAA2B,EAAE,KAAK,CAAC,CAAC;IACnE,CAAC;IACD,UAAU,CAAC,KAAc;QACvB,MAAM,MAAM,GAAG,2BAA2B,CAAC;QAC3C,OAAO,IAAA,wBAAa,EAAC,KAAe,EAAE,MAAM,CAAC,CAAC;IAChD,CAAC;CACF,CAAC,CAAC;AAEH;;;;;GAKG;AACU,QAAA,oBAAoB,GAAG,IAAA,uBAAU,EAI3C;IACD,QAAQ;QACN,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,QAAQ,CAAC,KAAW;QAClB,OAAO,IAAA,yBAAc,EAAC,KAAK,EAAE,2BAA2B,EAAE,IAAI,CAAC,CAAC;IAClE,CAAC;IACD,UAAU,CAAC,KAAc;QACvB,MAAM,MAAM,GAAG,2BAA2B,CAAC;QAC3C,OAAO,IAAA,wBAAa,EAAC,KAAe,EAAE,MAAM,CAAC,CAAC;IAChD,CAAC;CACF,CAAC,CAAC;AAEH;;;;;GAKG;AACU,QAAA,eAAe,GAAG,IAAA,uBAAU,EAItC;IACD,QAAQ;QACN,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,QAAQ,CAAC,KAAW;QAClB,OAAO,IAAA,yBAAc,EAAC,KAAK,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;IACpD,CAAC;IACD,UAAU,CAAC,KAAc;QACvB,MAAM,MAAM,GAAG,YAAY,CAAC;QAC5B,OAAO,IAAA,wBAAa,EAAC,KAAe,EAAE,MAAM,CAAC,CAAC;IAChD,CAAC;CACF,CAAC,CAAC;AAEH;;;;;GAKG;AACU,QAAA,eAAe,GAAG,IAAA,uBAAU,EAItC;IACD,QAAQ;QACN,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,QAAQ,CAAC,KAAW;QAClB,OAAO,IAAA,yBAAc,EAAC,KAAK,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;IACtD,CAAC;IACD,UAAU,CAAC,KAAc;QACvB,OAAO,IAAA,wBAAa,EAAC,KAAe,EAAE,cAAc,CAAC,CAAC;IACxD,CAAC;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"ForgeSQLQueryBuilder.js","sourceRoot":"","sources":["../../src/core/ForgeSQLQueryBuilder.ts"],"names":[],"mappings":";;;AAEA,uDAOgC;AAMhC,gDAAkE;AA0vClE;;;;;GAKG;AACU,QAAA,mBAAmB,GAAG,IAAA,uBAAU,EAI1C;IACD,QAAQ;QACN,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,QAAQ,CAAC,KAAW;QAClB,OAAO,IAAA,yBAAc,EAAC,KAAK,EAAE,2BAA2B,EAAE,KAAK,CAAC,CAAC;IACnE,CAAC;IACD,UAAU,CAAC,KAAc;QACvB,MAAM,MAAM,GAAG,2BAA2B,CAAC;QAC3C,OAAO,IAAA,wBAAa,EAAC,KAAe,EAAE,MAAM,CAAC,CAAC;IAChD,CAAC;CACF,CAAC,CAAC;AAEH;;;;;GAKG;AACU,QAAA,oBAAoB,GAAG,IAAA,uBAAU,EAI3C;IACD,QAAQ;QACN,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,QAAQ,CAAC,KAAW;QAClB,OAAO,IAAA,yBAAc,EAAC,KAAK,EAAE,2BAA2B,EAAE,IAAI,CAAC,CAAC;IAClE,CAAC;IACD,UAAU,CAAC,KAAc;QACvB,MAAM,MAAM,GAAG,2BAA2B,CAAC;QAC3C,OAAO,IAAA,wBAAa,EAAC,KAAe,EAAE,MAAM,CAAC,CAAC;IAChD,CAAC;CACF,CAAC,CAAC;AAEH;;;;;GAKG;AACU,QAAA,eAAe,GAAG,IAAA,uBAAU,EAItC;IACD,QAAQ;QACN,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,QAAQ,CAAC,KAAW;QAClB,OAAO,IAAA,yBAAc,EAAC,KAAK,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;IACpD,CAAC;IACD,UAAU,CAAC,KAAc;QACvB,MAAM,MAAM,GAAG,YAAY,CAAC;QAC5B,OAAO,IAAA,wBAAa,EAAC,KAAe,EAAE,MAAM,CAAC,CAAC;IAChD,CAAC;CACF,CAAC,CAAC;AAEH;;;;;GAKG;AACU,QAAA,eAAe,GAAG,IAAA,uBAAU,EAItC;IACD,QAAQ;QACN,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,QAAQ,CAAC,KAAW;QAClB,OAAO,IAAA,yBAAc,EAAC,KAAK,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;IACtD,CAAC;IACD,UAAU,CAAC,KAAc;QACvB,OAAO,IAAA,wBAAa,EAAC,KAAe,EAAE,cAAc,CAAC,CAAC;IACxD,CAAC;CACF,CAAC,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { UpdateQueryResponse } from "@forge/sql";
2
2
  import { ForgeSqlOrmOptions, SchemaSqlForgeSql } from "./ForgeSQLQueryBuilder";
3
3
  import { AnyMySqlSelectQueryBuilder, MySqlSelectDynamic } from "drizzle-orm/mysql-core/query-builders/select.types";
4
+ import { SqlParameters } from "@forge/sql/out/sql-statement";
4
5
  /**
5
6
  * Class implementing SQL select operations for ForgeSQL ORM.
6
7
  * Provides methods for executing queries and mapping results to entity types.
@@ -31,7 +32,7 @@ export declare class ForgeSQLSelectOperations implements SchemaSqlForgeSql {
31
32
  * @param {SqlParameters[]} [params] - Optional SQL parameters
32
33
  * @returns {Promise<T[]>} A list of results as objects
33
34
  */
34
- executeRawSQL<T extends object | unknown>(query: string, params?: unknown[]): Promise<T[]>;
35
+ executeRawSQL<T>(query: string, params?: SqlParameters[]): Promise<T[]>;
35
36
  /**
36
37
  * Executes a raw SQL update query.
37
38
  * @param {string} query - The raw SQL update query
@@ -1 +1 @@
1
- {"version":3,"file":"ForgeSQLSelectOperations.d.ts","sourceRoot":"","sources":["../../src/core/ForgeSQLSelectOperations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC/E,OAAO,EACL,0BAA0B,EAC1B,kBAAkB,EACnB,MAAM,oDAAoD,CAAC;AAE5D;;;GAGG;AACH,qBAAa,wBAAyB,YAAW,iBAAiB;IAChE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAE7C;;;OAGG;gBACS,OAAO,EAAE,kBAAkB;IAIvC;;;;;;;;OAQG;IACG,mBAAmB,CAAC,CAAC,SAAS,kBAAkB,CAAC,0BAA0B,CAAC,EAChF,KAAK,EAAE,CAAC,GACP,OAAO,CACR,OAAO,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,SAAS,CACxF;IAaD;;;;;;;;OAQG;IACG,aAAa,CAAC,CAAC,SAAS,MAAM,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAchG;;;;;OAKG;IACG,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,mBAAmB,CAAC;CAe3F"}
1
+ {"version":3,"file":"ForgeSQLSelectOperations.d.ts","sourceRoot":"","sources":["../../src/core/ForgeSQLSelectOperations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC/E,OAAO,EACL,0BAA0B,EAC1B,kBAAkB,EACnB,MAAM,oDAAoD,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE7D;;;GAGG;AACH,qBAAa,wBAAyB,YAAW,iBAAiB;IAChE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAE7C;;;OAGG;gBACS,OAAO,EAAE,kBAAkB;IAIvC;;;;;;;;OAQG;IACG,mBAAmB,CAAC,CAAC,SAAS,kBAAkB,CAAC,0BAA0B,CAAC,EAChF,KAAK,EAAE,CAAC,GACP,OAAO,CACR,OAAO,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,SAAS,CACxF;IAaD;;;;;;;;OAQG;IACG,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAc7E;;;;;OAKG;IACG,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,mBAAmB,CAAC;CAe3F"}
@@ -1 +1 @@
1
- {"version":3,"file":"ForgeSQLSelectOperations.js","sourceRoot":"","sources":["../../src/core/ForgeSQLSelectOperations.ts"],"names":[],"mappings":";;;AAAA,oCAAsD;AAOtD;;;GAGG;AACH,MAAa,wBAAwB;IAClB,OAAO,CAAqB;IAE7C;;;OAGG;IACH,YAAY,OAA2B;QACrC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,mBAAmB,CACvB,KAAQ;QAIR,MAAM,OAAO,GAAe,MAAM,KAAK,CAAC;QACxC,MAAM,KAAK,GAAG,OAAoB,CAAC;QACnC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAClB,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,kCAAkC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QACpE,CAAC;QAED,OAAO,KAAK,CAAC,CAAC,CAAoE,CAAC;IACrF,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,aAAa,CAA6B,KAAa,EAAE,MAAkB;QAC/E,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;YAChC,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,kBAAkB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3E,sCAAsC;YACtC,OAAO,CAAC,KAAK,CAAC,sBAAsB,KAAK,GAAG,SAAS,EAAE,CAAC,CAAC;QAC3D,CAAC;QACD,MAAM,YAAY,GAAG,SAAG,CAAC,OAAO,CAAI,KAAK,CAAC,CAAC;QAC3C,IAAI,MAAM,EAAE,CAAC;YACX,YAAY,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,CAAC;QACrC,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,OAAO,EAAE,CAAC;QAC5C,OAAO,MAAM,CAAC,IAAW,CAAC;IAC5B,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,mBAAmB,CAAC,KAAa,EAAE,MAAkB;QACzD,MAAM,YAAY,GAAG,SAAG,CAAC,OAAO,CAAsB,KAAK,CAAC,CAAC;QAC7D,IAAI,MAAM,EAAE,CAAC;YACX,YAAY,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;YAChC,sCAAsC;YACtC,OAAO,CAAC,KAAK,CACX,6BAA6B,KAAK,EAAE;gBAClC,CAAC,MAAM,CAAC,CAAC,CAAC,kBAAkB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAC7D,CAAC;QACJ,CAAC;QACD,MAAM,0BAA0B,GAAG,MAAM,YAAY,CAAC,OAAO,EAAE,CAAC;QAChE,OAAO,0BAA0B,CAAC,IAAI,CAAC;IACzC,CAAC;CACF;AAjFD,4DAiFC"}
1
+ {"version":3,"file":"ForgeSQLSelectOperations.js","sourceRoot":"","sources":["../../src/core/ForgeSQLSelectOperations.ts"],"names":[],"mappings":";;;AAAA,oCAAsD;AAQtD;;;GAGG;AACH,MAAa,wBAAwB;IAClB,OAAO,CAAqB;IAE7C;;;OAGG;IACH,YAAY,OAA2B;QACrC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,mBAAmB,CACvB,KAAQ;QAIR,MAAM,OAAO,GAAe,MAAM,KAAK,CAAC;QACxC,MAAM,KAAK,GAAG,OAAoB,CAAC;QACnC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAClB,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,kCAAkC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QACpE,CAAC;QAED,OAAO,KAAK,CAAC,CAAC,CAAoE,CAAC;IACrF,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,aAAa,CAAI,KAAa,EAAE,MAAwB;QAC5D,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;YAChC,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,kBAAkB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3E,sCAAsC;YACtC,OAAO,CAAC,KAAK,CAAC,sBAAsB,KAAK,GAAG,SAAS,EAAE,CAAC,CAAC;QAC3D,CAAC;QACD,MAAM,YAAY,GAAG,SAAG,CAAC,OAAO,CAAI,KAAK,CAAC,CAAC;QAC3C,IAAI,MAAM,EAAE,CAAC;YACX,YAAY,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,CAAC;QACrC,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,OAAO,EAAE,CAAC;QAC5C,OAAO,MAAM,CAAC,IAAW,CAAC;IAC5B,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,mBAAmB,CAAC,KAAa,EAAE,MAAkB;QACzD,MAAM,YAAY,GAAG,SAAG,CAAC,OAAO,CAAsB,KAAK,CAAC,CAAC;QAC7D,IAAI,MAAM,EAAE,CAAC;YACX,YAAY,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;YAChC,sCAAsC;YACtC,OAAO,CAAC,KAAK,CACX,6BAA6B,KAAK,EAAE;gBAClC,CAAC,MAAM,CAAC,CAAC,CAAC,kBAAkB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAC7D,CAAC;QACJ,CAAC;QACD,MAAM,0BAA0B,GAAG,MAAM,YAAY,CAAC,OAAO,EAAE,CAAC;QAChE,OAAO,0BAA0B,CAAC,IAAI,CAAC;IACzC,CAAC;CACF;AAjFD,4DAiFC"}
@@ -47,6 +47,18 @@ export declare class Rovo implements RovoIntegration {
47
47
  * @throws Error if parsing fails or query is not a single SELECT statement
48
48
  */
49
49
  private parseSqlQuery;
50
+ /**
51
+ * Recursively processes array or single node and extracts tables
52
+ * @param items - Array of nodes or single node
53
+ * @param tables - Accumulator array for table names
54
+ */
55
+ private extractTablesFromItems;
56
+ /**
57
+ * Extracts table name from table node
58
+ * @param node - AST node with table information
59
+ * @returns Table name in uppercase or null if not applicable
60
+ */
61
+ private extractTableName;
50
62
  /**
51
63
  * Recursively extracts all table names from SQL AST node
52
64
  * @param node - AST node to extract tables from
@@ -111,6 +123,34 @@ export declare class Rovo implements RovoIntegration {
111
123
  * console.log(result.metadata); // Query metadata
112
124
  * ```
113
125
  */
126
+ /**
127
+ * Validates basic input parameters
128
+ */
129
+ private validateInputs;
130
+ /**
131
+ * Normalizes SQL query using AST parsing and stringification
132
+ */
133
+ private normalizeSqlString;
134
+ /**
135
+ * Validates that query targets the correct table
136
+ */
137
+ private validateTableName;
138
+ /**
139
+ * Validates query structure (tables, subqueries)
140
+ */
141
+ private validateQueryStructure;
142
+ /**
143
+ * Validates query execution plan for security violations
144
+ */
145
+ private validateExecutionPlan;
146
+ /**
147
+ * Applies row-level security filtering to query
148
+ */
149
+ private applyRLSFiltering;
150
+ /**
151
+ * Validates query results for RLS compliance
152
+ */
153
+ private validateQueryResults;
114
154
  dynamicIsolatedQuery(dynamicSql: string, settings: RovoIntegrationSetting): Promise<Result<unknown>>;
115
155
  }
116
156
  //# sourceMappingURL=Rovo.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Rovo.d.ts","sourceRoot":"","sources":["../../src/core/Rovo.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAElB,eAAe,EACf,sBAAsB,EACtB,6BAA6B,EAC9B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,MAAM,EAAO,MAAM,YAAY,CAAC;AAEzC,OAAO,EAAE,aAAa,EAAe,MAAM,wBAAwB,CAAC;AA8RpE;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,qBAAa,IAAK,YAAW,eAAe;IAC1C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAoB;IACpD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C;;;;;OAKG;gBACS,kBAAkB,EAAE,iBAAiB,EAAE,OAAO,EAAE,kBAAkB;IAK9E;;;;;OAKG;IACH,OAAO,CAAC,aAAa;IA2BrB;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAmCrB;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAkBzB;;;;;;;;;;;OAWG;IACH,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,6BAA6B;IAI1F;;;;;;;;;;;OAWG;IACH,kBAAkB,CAAC,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,6BAA6B;IAI1F;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACG,oBAAoB,CACxB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,sBAAsB,GAC/B,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;CA4Q5B"}
1
+ {"version":3,"file":"Rovo.d.ts","sourceRoot":"","sources":["../../src/core/Rovo.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAElB,eAAe,EACf,sBAAsB,EACtB,6BAA6B,EAC9B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,MAAM,EAAO,MAAM,YAAY,CAAC;AAEzC,OAAO,EAAE,aAAa,EAAe,MAAM,wBAAwB,CAAC;AA6RpE;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,qBAAa,IAAK,YAAW,eAAe;IAC1C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAoB;IACpD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C;;;;;OAKG;gBACS,kBAAkB,EAAE,iBAAiB,EAAE,OAAO,EAAE,kBAAkB;IAK9E;;;;;OAKG;IACH,OAAO,CAAC,aAAa;IA2BrB;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAU9B;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAQxB;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAwBrB;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAkBzB;;;;;;;;;;;OAWG;IACH,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,6BAA6B;IAI1F;;;;;;;;;;;OAWG;IACH,kBAAkB,CAAC,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,6BAA6B;IAI1F;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH;;OAEG;IACH,OAAO,CAAC,cAAc;IAmBtB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAiC1B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAYzB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAgC9B;;OAEG;YACW,qBAAqB;IAgDnC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAczB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA6CtB,oBAAoB,CACxB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,sBAAsB,GAC/B,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;CAsE5B"}