forge-sql-orm 2.1.0 → 2.1.2
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 +337 -17
- package/dist/ForgeSQLORM.js +424 -34
- package/dist/ForgeSQLORM.js.map +1 -1
- package/dist/ForgeSQLORM.mjs +425 -35
- package/dist/ForgeSQLORM.mjs.map +1 -1
- package/dist/core/ForgeSQLORM.d.ts +144 -0
- package/dist/core/ForgeSQLORM.d.ts.map +1 -1
- package/dist/core/ForgeSQLQueryBuilder.d.ts +149 -2
- package/dist/core/ForgeSQLQueryBuilder.d.ts.map +1 -1
- package/dist/lib/drizzle/extensions/additionalActions.d.ts +50 -2
- package/dist/lib/drizzle/extensions/additionalActions.d.ts.map +1 -1
- package/dist/utils/cacheContextUtils.d.ts +4 -2
- package/dist/utils/cacheContextUtils.d.ts.map +1 -1
- package/dist/utils/sqlUtils.d.ts +6 -6
- package/dist/utils/sqlUtils.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/core/ForgeSQLORM.ts +319 -13
- package/src/core/ForgeSQLQueryBuilder.ts +218 -0
- package/src/lib/drizzle/extensions/additionalActions.ts +387 -34
- package/src/lib/drizzle/extensions/types.d.ts +36 -0
- package/src/utils/cacheContextUtils.ts +16 -2
- package/src/utils/sqlUtils.ts +34 -9
|
@@ -6,6 +6,8 @@ import { DeleteAndEvictCacheType, InsertAndEvictCacheType, SelectAliasedCacheabl
|
|
|
6
6
|
import { ForgeSQLCacheOperations } from "./ForgeSQLCacheOperations";
|
|
7
7
|
import type { MySqlTable } from "drizzle-orm/mysql-core/table";
|
|
8
8
|
import { MySqlDeleteBase, MySqlInsertBuilder, MySqlUpdateBuilder } from "drizzle-orm/mysql-core/query-builders";
|
|
9
|
+
import { SQLWrapper } from "drizzle-orm/sql/sql";
|
|
10
|
+
import { WithSubquery } from "drizzle-orm/subquery";
|
|
9
11
|
/**
|
|
10
12
|
* Public class that acts as a wrapper around the private ForgeSQLORMImpl.
|
|
11
13
|
* Provides a clean interface for working with Forge SQL and Drizzle ORM.
|
|
@@ -15,6 +17,60 @@ declare class ForgeSQLORM implements ForgeSqlOperation {
|
|
|
15
17
|
constructor(options?: ForgeSqlOrmOptions);
|
|
16
18
|
selectCacheable<TSelection extends SelectedFields>(fields: TSelection, cacheTTL?: number): MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT>;
|
|
17
19
|
selectDistinctCacheable<TSelection extends SelectedFields>(fields: TSelection, cacheTTL?: number): MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT>;
|
|
20
|
+
/**
|
|
21
|
+
* Creates a select query builder for all columns from a table with field aliasing support.
|
|
22
|
+
* This is a convenience method that automatically selects all columns from the specified table.
|
|
23
|
+
*
|
|
24
|
+
* @template T - The type of the table
|
|
25
|
+
* @param table - The table to select from
|
|
26
|
+
* @returns Select query builder with all table columns and field aliasing support
|
|
27
|
+
* @example
|
|
28
|
+
* ```typescript
|
|
29
|
+
* const users = await forgeSQL.selectFrom(userTable).where(eq(userTable.id, 1));
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
selectFrom<T extends MySqlTable>(table: T): import("drizzle-orm/mysql-core").MySqlSelectBase<import("drizzle-orm/query-builders/select.types").GetSelectTableName<T>, T["_"]["columns"] extends undefined ? import("drizzle-orm/query-builders/select.types").GetSelectTableSelection<T> : T["_"]["columns"], T["_"]["columns"] extends undefined ? "single" : "partial", MySqlRemotePreparedQueryHKT, import("drizzle-orm/query-builders/select.types").GetSelectTableName<T> extends string ? Record<string & import("drizzle-orm/query-builders/select.types").GetSelectTableName<T>, "not-null"> : {}, false, never, any, import("drizzle-orm/query-builders/select.types").BuildSubquerySelection<T["_"]["columns"] extends undefined ? import("drizzle-orm/query-builders/select.types").GetSelectTableSelection<T> : T["_"]["columns"], import("drizzle-orm/query-builders/select.types").GetSelectTableName<T> extends string ? Record<string & import("drizzle-orm/query-builders/select.types").GetSelectTableName<T>, "not-null"> : {}>>;
|
|
33
|
+
/**
|
|
34
|
+
* Creates a select distinct query builder for all columns from a table with field aliasing support.
|
|
35
|
+
* This is a convenience method that automatically selects all distinct columns from the specified table.
|
|
36
|
+
*
|
|
37
|
+
* @template T - The type of the table
|
|
38
|
+
* @param table - The table to select from
|
|
39
|
+
* @returns Select distinct query builder with all table columns and field aliasing support
|
|
40
|
+
* @example
|
|
41
|
+
* ```typescript
|
|
42
|
+
* const uniqueUsers = await forgeSQL.selectDistinctFrom(userTable).where(eq(userTable.status, 'active'));
|
|
43
|
+
* ```
|
|
44
|
+
*/
|
|
45
|
+
selectDistinctFrom<T extends MySqlTable>(table: T): import("drizzle-orm/mysql-core").MySqlSelectBase<import("drizzle-orm/query-builders/select.types").GetSelectTableName<T>, T["_"]["columns"] extends undefined ? import("drizzle-orm/query-builders/select.types").GetSelectTableSelection<T> : T["_"]["columns"], T["_"]["columns"] extends undefined ? "single" : "partial", MySqlRemotePreparedQueryHKT, import("drizzle-orm/query-builders/select.types").GetSelectTableName<T> extends string ? Record<string & import("drizzle-orm/query-builders/select.types").GetSelectTableName<T>, "not-null"> : {}, false, never, any, import("drizzle-orm/query-builders/select.types").BuildSubquerySelection<T["_"]["columns"] extends undefined ? import("drizzle-orm/query-builders/select.types").GetSelectTableSelection<T> : T["_"]["columns"], import("drizzle-orm/query-builders/select.types").GetSelectTableName<T> extends string ? Record<string & import("drizzle-orm/query-builders/select.types").GetSelectTableName<T>, "not-null"> : {}>>;
|
|
46
|
+
/**
|
|
47
|
+
* Creates a cacheable select query builder for all columns from a table with field aliasing and caching support.
|
|
48
|
+
* This is a convenience method that automatically selects all columns from the specified table with caching enabled.
|
|
49
|
+
*
|
|
50
|
+
* @template T - The type of the table
|
|
51
|
+
* @param table - The table to select from
|
|
52
|
+
* @param cacheTTL - Optional cache TTL override (defaults to global cache TTL)
|
|
53
|
+
* @returns Select query builder with all table columns, field aliasing, and caching support
|
|
54
|
+
* @example
|
|
55
|
+
* ```typescript
|
|
56
|
+
* const users = await forgeSQL.selectCacheableFrom(userTable, 300).where(eq(userTable.id, 1));
|
|
57
|
+
* ```
|
|
58
|
+
*/
|
|
59
|
+
selectCacheableFrom<T extends MySqlTable>(table: T, cacheTTL?: number): import("drizzle-orm/mysql-core").MySqlSelectBase<import("drizzle-orm/query-builders/select.types").GetSelectTableName<T>, T["_"]["columns"] extends undefined ? import("drizzle-orm/query-builders/select.types").GetSelectTableSelection<T> : T["_"]["columns"], T["_"]["columns"] extends undefined ? "single" : "partial", MySqlRemotePreparedQueryHKT, import("drizzle-orm/query-builders/select.types").GetSelectTableName<T> extends string ? Record<string & import("drizzle-orm/query-builders/select.types").GetSelectTableName<T>, "not-null"> : {}, false, never, any, import("drizzle-orm/query-builders/select.types").BuildSubquerySelection<T["_"]["columns"] extends undefined ? import("drizzle-orm/query-builders/select.types").GetSelectTableSelection<T> : T["_"]["columns"], import("drizzle-orm/query-builders/select.types").GetSelectTableName<T> extends string ? Record<string & import("drizzle-orm/query-builders/select.types").GetSelectTableName<T>, "not-null"> : {}>>;
|
|
60
|
+
/**
|
|
61
|
+
* Creates a cacheable select distinct query builder for all columns from a table with field aliasing and caching support.
|
|
62
|
+
* This is a convenience method that automatically selects all distinct columns from the specified table with caching enabled.
|
|
63
|
+
*
|
|
64
|
+
* @template T - The type of the table
|
|
65
|
+
* @param table - The table to select from
|
|
66
|
+
* @param cacheTTL - Optional cache TTL override (defaults to global cache TTL)
|
|
67
|
+
* @returns Select distinct query builder with all table columns, field aliasing, and caching support
|
|
68
|
+
* @example
|
|
69
|
+
* ```typescript
|
|
70
|
+
* const uniqueUsers = await forgeSQL.selectDistinctCacheableFrom(userTable, 300).where(eq(userTable.status, 'active'));
|
|
71
|
+
* ```
|
|
72
|
+
*/
|
|
73
|
+
selectDistinctCacheableFrom<T extends MySqlTable>(table: T, cacheTTL?: number): import("drizzle-orm/mysql-core").MySqlSelectBase<import("drizzle-orm/query-builders/select.types").GetSelectTableName<T>, T["_"]["columns"] extends undefined ? import("drizzle-orm/query-builders/select.types").GetSelectTableSelection<T> : T["_"]["columns"], T["_"]["columns"] extends undefined ? "single" : "partial", MySqlRemotePreparedQueryHKT, import("drizzle-orm/query-builders/select.types").GetSelectTableName<T> extends string ? Record<string & import("drizzle-orm/query-builders/select.types").GetSelectTableName<T>, "not-null"> : {}, false, never, any, import("drizzle-orm/query-builders/select.types").BuildSubquerySelection<T["_"]["columns"] extends undefined ? import("drizzle-orm/query-builders/select.types").GetSelectTableSelection<T> : T["_"]["columns"], import("drizzle-orm/query-builders/select.types").GetSelectTableName<T> extends string ? Record<string & import("drizzle-orm/query-builders/select.types").GetSelectTableName<T>, "not-null"> : {}>>;
|
|
18
74
|
executeWithCacheContext(cacheContext: () => Promise<void>): Promise<void>;
|
|
19
75
|
executeWithCacheContextAndReturnValue<T>(cacheContext: () => Promise<T>): Promise<T>;
|
|
20
76
|
/**
|
|
@@ -155,14 +211,102 @@ declare class ForgeSQLORM implements ForgeSqlOperation {
|
|
|
155
211
|
getDrizzleQueryBuilder(): MySqlRemoteDatabase<Record<string, unknown>> & {
|
|
156
212
|
selectAliased: SelectAliasedType;
|
|
157
213
|
selectAliasedDistinct: SelectAliasedDistinctType;
|
|
214
|
+
executeQuery: import("../lib/drizzle/extensions/additionalActions").ExecuteQuery;
|
|
158
215
|
selectAliasedCacheable: SelectAliasedCacheableType;
|
|
159
216
|
selectAliasedDistinctCacheable: SelectAliasedDistinctCacheableType;
|
|
217
|
+
executeQueryCacheable: import("../lib/drizzle/extensions/additionalActions").ExecuteQueryCacheable;
|
|
160
218
|
insertWithCacheContext: InsertAndEvictCacheType;
|
|
161
219
|
insertAndEvictCache: InsertAndEvictCacheType;
|
|
162
220
|
updateAndEvictCache: UpdateAndEvictCacheType;
|
|
163
221
|
updateWithCacheContext: UpdateAndEvictCacheType;
|
|
164
222
|
deleteAndEvictCache: DeleteAndEvictCacheType;
|
|
165
223
|
deleteWithCacheContext: DeleteAndEvictCacheType;
|
|
224
|
+
selectFrom: import("../lib/drizzle/extensions/additionalActions").SelectAllFromAliasedType;
|
|
225
|
+
selectDistinctFrom: import("../lib/drizzle/extensions/additionalActions").SelectAllDistinctFromAliasedType;
|
|
226
|
+
selectFromCacheable: import("../lib/drizzle/extensions/additionalActions").SelectAllFromCacheableAliasedType;
|
|
227
|
+
selectDistinctFromCacheable: import("../lib/drizzle/extensions/additionalActions").SelectAllDistinctFromCacheableAliasedType;
|
|
228
|
+
};
|
|
229
|
+
/**
|
|
230
|
+
* Executes a raw SQL query with local cache support.
|
|
231
|
+
* This method provides local caching for raw SQL queries within the current invocation context.
|
|
232
|
+
* Results are cached locally and will be returned from cache on subsequent identical queries.
|
|
233
|
+
*
|
|
234
|
+
* @param query - The SQL query to execute (SQLWrapper or string)
|
|
235
|
+
* @returns Promise with query results
|
|
236
|
+
* @example
|
|
237
|
+
* ```typescript
|
|
238
|
+
* // Using SQLWrapper
|
|
239
|
+
* const result = await forgeSQL.execute(sql`SELECT * FROM users WHERE id = ${userId}`);
|
|
240
|
+
*
|
|
241
|
+
* // Using string
|
|
242
|
+
* const result = await forgeSQL.execute("SELECT * FROM users WHERE status = 'active'");
|
|
243
|
+
* ```
|
|
244
|
+
*/
|
|
245
|
+
execute(query: SQLWrapper | string): Promise<import("drizzle-orm/mysql-proxy").MySqlRawQueryResult>;
|
|
246
|
+
/**
|
|
247
|
+
* Executes a raw SQL query with both local and global cache support.
|
|
248
|
+
* This method provides comprehensive caching for raw SQL queries:
|
|
249
|
+
* - Local cache: Within the current invocation context
|
|
250
|
+
* - Global cache: Cross-invocation caching using @forge/kvs
|
|
251
|
+
*
|
|
252
|
+
* @param query - The SQL query to execute (SQLWrapper or string)
|
|
253
|
+
* @param cacheTtl - Optional cache TTL override (defaults to global cache TTL)
|
|
254
|
+
* @returns Promise with query results
|
|
255
|
+
* @example
|
|
256
|
+
* ```typescript
|
|
257
|
+
* // Using SQLWrapper with custom TTL
|
|
258
|
+
* const result = await forgeSQL.executeCacheable(sql`SELECT * FROM users WHERE id = ${userId}`, 300);
|
|
259
|
+
*
|
|
260
|
+
* // Using string with default TTL
|
|
261
|
+
* const result = await forgeSQL.executeCacheable("SELECT * FROM users WHERE status = 'active'");
|
|
262
|
+
* ```
|
|
263
|
+
*/
|
|
264
|
+
executeCacheable(query: SQLWrapper | string, cacheTtl?: number): Promise<import("drizzle-orm/mysql-proxy").MySqlRawQueryResult>;
|
|
265
|
+
/**
|
|
266
|
+
* Creates a Common Table Expression (CTE) builder for complex queries.
|
|
267
|
+
* CTEs allow you to define temporary named result sets that exist within the scope of a single query.
|
|
268
|
+
*
|
|
269
|
+
* @returns WithBuilder for creating CTEs
|
|
270
|
+
* @example
|
|
271
|
+
* ```typescript
|
|
272
|
+
* const withQuery = forgeSQL.$with('userStats').as(
|
|
273
|
+
* forgeSQL.select({ userId: users.id, count: sql<number>`count(*)` })
|
|
274
|
+
* .from(users)
|
|
275
|
+
* .groupBy(users.id)
|
|
276
|
+
* );
|
|
277
|
+
* ```
|
|
278
|
+
*/
|
|
279
|
+
get $with(): import("drizzle-orm/mysql-core").WithBuilder;
|
|
280
|
+
/**
|
|
281
|
+
* Creates a query builder that uses Common Table Expressions (CTEs).
|
|
282
|
+
* CTEs allow you to define temporary named result sets that exist within the scope of a single query.
|
|
283
|
+
*
|
|
284
|
+
* @param queries - Array of CTE queries created with $with()
|
|
285
|
+
* @returns Query builder with CTE support
|
|
286
|
+
* @example
|
|
287
|
+
* ```typescript
|
|
288
|
+
* const withQuery = forgeSQL.$with('userStats').as(
|
|
289
|
+
* forgeSQL.select({ userId: users.id, count: sql<number>`count(*)` })
|
|
290
|
+
* .from(users)
|
|
291
|
+
* .groupBy(users.id)
|
|
292
|
+
* );
|
|
293
|
+
*
|
|
294
|
+
* const result = await forgeSQL.with(withQuery)
|
|
295
|
+
* .select({ userId: withQuery.userId, count: withQuery.count })
|
|
296
|
+
* .from(withQuery);
|
|
297
|
+
* ```
|
|
298
|
+
*/
|
|
299
|
+
with(...queries: WithSubquery[]): {
|
|
300
|
+
select: {
|
|
301
|
+
(): MySqlSelectBuilder<undefined, MySqlRemotePreparedQueryHKT, "db">;
|
|
302
|
+
<TSelection extends SelectedFields>(fields: TSelection): MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT, "db">;
|
|
303
|
+
};
|
|
304
|
+
selectDistinct: {
|
|
305
|
+
(): MySqlSelectBuilder<undefined, MySqlRemotePreparedQueryHKT, "db">;
|
|
306
|
+
<TSelection extends SelectedFields>(fields: TSelection): MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT, "db">;
|
|
307
|
+
};
|
|
308
|
+
update: <TTable extends MySqlTable>(table: TTable) => MySqlUpdateBuilder<TTable, MySqlRemoteQueryResultHKT, MySqlRemotePreparedQueryHKT>;
|
|
309
|
+
delete: <TTable extends MySqlTable>(table: TTable) => MySqlDeleteBase<TTable, MySqlRemoteQueryResultHKT, MySqlRemotePreparedQueryHKT, false, never>;
|
|
166
310
|
};
|
|
167
311
|
}
|
|
168
312
|
export default ForgeSQLORM;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ForgeSQLORM.d.ts","sourceRoot":"","sources":["../../src/core/ForgeSQLORM.ts"],"names":[],"mappings":"AACA,OAAO,EACL,6BAA6B,EAC7B,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,iBAAiB,EAClB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAEL,mBAAmB,EACnB,2BAA2B,EAC3B,yBAAyB,EAC1B,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oDAAoD,CAAC;AACzF,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EAEvB,0BAA0B,EAC1B,kCAAkC,EAClC,yBAAyB,EACzB,iBAAiB,EACjB,uBAAuB,EACxB,MAAM,6CAA6C,CAAC;AAErD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,uCAAuC,CAAC;
|
|
1
|
+
{"version":3,"file":"ForgeSQLORM.d.ts","sourceRoot":"","sources":["../../src/core/ForgeSQLORM.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,9 +7,14 @@ import { MySqlRemoteDatabase, MySqlRemotePreparedQueryHKT } from "drizzle-orm/my
|
|
|
7
7
|
import { SqlHints } from "../utils/sqlHints";
|
|
8
8
|
import { ClusterStatementRowCamelCase, ExplainAnalyzeRow, SlowQueryNormalized } from "./SystemTables";
|
|
9
9
|
import { ForgeSQLCacheOperations } from "./ForgeSQLCacheOperations";
|
|
10
|
-
import { DeleteAndEvictCacheType, InsertAndEvictCacheType, SelectAliasedCacheableType, SelectAliasedDistinctCacheableType, SelectAliasedDistinctType, SelectAliasedType, UpdateAndEvictCacheType } from "..";
|
|
11
|
-
import { MySqlDeleteBase, MySqlInsertBuilder, MySqlUpdateBuilder } from "drizzle-orm/mysql-core/query-builders";
|
|
10
|
+
import { DeleteAndEvictCacheType, ExecuteQuery, ExecuteQueryCacheable, InsertAndEvictCacheType, SelectAliasedCacheableType, SelectAliasedDistinctCacheableType, SelectAliasedDistinctType, SelectAliasedType, SelectAllDistinctFromAliasedType, SelectAllDistinctFromCacheableAliasedType, SelectAllFromAliasedType, SelectAllFromCacheableAliasedType, UpdateAndEvictCacheType } from "..";
|
|
11
|
+
import { MySqlDeleteBase, MySqlInsertBuilder, MySqlSelectBase, MySqlUpdateBuilder } from "drizzle-orm/mysql-core/query-builders";
|
|
12
12
|
import { MySqlRemoteQueryResultHKT } from "drizzle-orm/mysql-proxy";
|
|
13
|
+
import { GetSelectTableName, GetSelectTableSelection } from "drizzle-orm/query-builders/select.types";
|
|
14
|
+
import { SQLWrapper } from "drizzle-orm/sql/sql";
|
|
15
|
+
import type { MySqlQueryResultKind } from "drizzle-orm/mysql-core/session";
|
|
16
|
+
import type { WithBuilder } from "drizzle-orm/mysql-core/subquery";
|
|
17
|
+
import { WithSubquery } from "drizzle-orm/subquery";
|
|
13
18
|
/**
|
|
14
19
|
* Core interface for ForgeSQL operations.
|
|
15
20
|
* Provides access to CRUD operations, schema-level SQL operations, and query analysis capabilities.
|
|
@@ -28,14 +33,20 @@ export interface ForgeSqlOperation extends QueryBuilderForgeSql {
|
|
|
28
33
|
getDrizzleQueryBuilder(): MySqlRemoteDatabase<Record<string, unknown>> & {
|
|
29
34
|
selectAliased: SelectAliasedType;
|
|
30
35
|
selectAliasedDistinct: SelectAliasedDistinctType;
|
|
36
|
+
executeQuery: ExecuteQuery;
|
|
31
37
|
selectAliasedCacheable: SelectAliasedCacheableType;
|
|
32
38
|
selectAliasedDistinctCacheable: SelectAliasedDistinctCacheableType;
|
|
39
|
+
executeQueryCacheable: ExecuteQueryCacheable;
|
|
33
40
|
insertWithCacheContext: InsertAndEvictCacheType;
|
|
34
41
|
insertAndEvictCache: InsertAndEvictCacheType;
|
|
35
42
|
updateAndEvictCache: UpdateAndEvictCacheType;
|
|
36
43
|
updateWithCacheContext: UpdateAndEvictCacheType;
|
|
37
44
|
deleteAndEvictCache: DeleteAndEvictCacheType;
|
|
38
45
|
deleteWithCacheContext: DeleteAndEvictCacheType;
|
|
46
|
+
selectFrom: SelectAllFromAliasedType;
|
|
47
|
+
selectDistinctFrom: SelectAllDistinctFromAliasedType;
|
|
48
|
+
selectFromCacheable: SelectAllFromCacheableAliasedType;
|
|
49
|
+
selectDistinctFromCacheable: SelectAllDistinctFromCacheableAliasedType;
|
|
39
50
|
};
|
|
40
51
|
/**
|
|
41
52
|
* Provides modify (Create, Update, Delete) operations with optimistic locking support.
|
|
@@ -83,8 +94,10 @@ export interface QueryBuilderForgeSql {
|
|
|
83
94
|
getDrizzleQueryBuilder(): MySqlRemoteDatabase<Record<string, unknown>> & {
|
|
84
95
|
selectAliased: SelectAliasedType;
|
|
85
96
|
selectAliasedDistinct: SelectAliasedDistinctType;
|
|
97
|
+
executeQuery: ExecuteQuery;
|
|
86
98
|
selectAliasedCacheable: SelectAliasedCacheableType;
|
|
87
99
|
selectAliasedDistinctCacheable: SelectAliasedDistinctCacheableType;
|
|
100
|
+
executeQueryCacheable: ExecuteQueryCacheable;
|
|
88
101
|
insertWithCacheContext: InsertAndEvictCacheType;
|
|
89
102
|
insertAndEvictCache: InsertAndEvictCacheType;
|
|
90
103
|
updateAndEvictCache: UpdateAndEvictCacheType;
|
|
@@ -109,6 +122,19 @@ export interface QueryBuilderForgeSql {
|
|
|
109
122
|
* ```
|
|
110
123
|
*/
|
|
111
124
|
select<TSelection extends SelectedFields>(fields: TSelection): MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT>;
|
|
125
|
+
/**
|
|
126
|
+
* Creates a select query builder for all columns from a table with field aliasing support.
|
|
127
|
+
* This is a convenience method that automatically selects all columns from the specified table.
|
|
128
|
+
*
|
|
129
|
+
* @template T - The type of the table
|
|
130
|
+
* @param table - The table to select from
|
|
131
|
+
* @returns Select query builder with all table columns and field aliasing support
|
|
132
|
+
* @example
|
|
133
|
+
* ```typescript
|
|
134
|
+
* const users = await forgeSQL.selectFrom(userTable).where(eq(userTable.id, 1));
|
|
135
|
+
* ```
|
|
136
|
+
*/
|
|
137
|
+
selectFrom<T extends MySqlTable>(table: T): MySqlSelectBase<GetSelectTableName<T>, T["_"]["columns"] extends undefined ? GetSelectTableSelection<T> : T["_"]["columns"], T["_"]["columns"] extends undefined ? "single" : "partial", MySqlRemotePreparedQueryHKT, GetSelectTableName<T> extends string ? Record<string & GetSelectTableName<T>, "not-null"> : {}, false, never, any>;
|
|
112
138
|
/**
|
|
113
139
|
* Creates a distinct select query with unique field aliases to prevent field name collisions in joins.
|
|
114
140
|
* This is particularly useful when working with Atlassian Forge SQL, which collapses fields with the same name in joined tables.
|
|
@@ -126,6 +152,19 @@ export interface QueryBuilderForgeSql {
|
|
|
126
152
|
* ```
|
|
127
153
|
*/
|
|
128
154
|
selectDistinct<TSelection extends SelectedFields>(fields: TSelection): MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT>;
|
|
155
|
+
/**
|
|
156
|
+
* Creates a select distinct query builder for all columns from a table with field aliasing support.
|
|
157
|
+
* This is a convenience method that automatically selects all distinct columns from the specified table.
|
|
158
|
+
*
|
|
159
|
+
* @template T - The type of the table
|
|
160
|
+
* @param table - The table to select from
|
|
161
|
+
* @returns Select distinct query builder with all table columns and field aliasing support
|
|
162
|
+
* @example
|
|
163
|
+
* ```typescript
|
|
164
|
+
* const uniqueUsers = await forgeSQL.selectDistinctFrom(userTable).where(eq(userTable.status, 'active'));
|
|
165
|
+
* ```
|
|
166
|
+
*/
|
|
167
|
+
selectDistinctFrom<T extends MySqlTable>(table: T): MySqlSelectBase<GetSelectTableName<T>, T["_"]["columns"] extends undefined ? GetSelectTableSelection<T> : T["_"]["columns"], T["_"]["columns"] extends undefined ? "single" : "partial", MySqlRemotePreparedQueryHKT, GetSelectTableName<T> extends string ? Record<string & GetSelectTableName<T>, "not-null"> : {}, false, never, any>;
|
|
129
168
|
/**
|
|
130
169
|
* Creates a cacheable select query with unique field aliases to prevent field name collisions in joins.
|
|
131
170
|
* This is particularly useful when working with Atlassian Forge SQL, which collapses fields with the same name in joined tables.
|
|
@@ -144,6 +183,20 @@ export interface QueryBuilderForgeSql {
|
|
|
144
183
|
* ```
|
|
145
184
|
*/
|
|
146
185
|
selectCacheable<TSelection extends SelectedFields>(fields: TSelection, cacheTTL?: number): MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT>;
|
|
186
|
+
/**
|
|
187
|
+
* Creates a cacheable select query builder for all columns from a table with field aliasing and caching support.
|
|
188
|
+
* This is a convenience method that automatically selects all columns from the specified table with caching enabled.
|
|
189
|
+
*
|
|
190
|
+
* @template T - The type of the table
|
|
191
|
+
* @param table - The table to select from
|
|
192
|
+
* @param cacheTTL - Optional cache TTL override (defaults to global cache TTL)
|
|
193
|
+
* @returns Select query builder with all table columns, field aliasing, and caching support
|
|
194
|
+
* @example
|
|
195
|
+
* ```typescript
|
|
196
|
+
* const users = await forgeSQL.selectCacheableFrom(userTable, 300).where(eq(userTable.id, 1));
|
|
197
|
+
* ```
|
|
198
|
+
*/
|
|
199
|
+
selectCacheableFrom<T extends MySqlTable>(table: T, cacheTTL?: number): MySqlSelectBase<GetSelectTableName<T>, T["_"]["columns"] extends undefined ? GetSelectTableSelection<T> : T["_"]["columns"], T["_"]["columns"] extends undefined ? "single" : "partial", MySqlRemotePreparedQueryHKT, GetSelectTableName<T> extends string ? Record<string & GetSelectTableName<T>, "not-null"> : {}, false, never, any>;
|
|
147
200
|
/**
|
|
148
201
|
* Creates a cacheable distinct select query with unique field aliases to prevent field name collisions in joins.
|
|
149
202
|
* This is particularly useful when working with Atlassian Forge SQL, which collapses fields with the same name in joined tables.
|
|
@@ -162,6 +215,20 @@ export interface QueryBuilderForgeSql {
|
|
|
162
215
|
* ```
|
|
163
216
|
*/
|
|
164
217
|
selectDistinctCacheable<TSelection extends SelectedFields>(fields: TSelection, cacheTTL?: number): MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT>;
|
|
218
|
+
/**
|
|
219
|
+
* Creates a cacheable select distinct query builder for all columns from a table with field aliasing and caching support.
|
|
220
|
+
* This is a convenience method that automatically selects all distinct columns from the specified table with caching enabled.
|
|
221
|
+
*
|
|
222
|
+
* @template T - The type of the table
|
|
223
|
+
* @param table - The table to select from
|
|
224
|
+
* @param cacheTTL - Optional cache TTL override (defaults to global cache TTL)
|
|
225
|
+
* @returns Select distinct query builder with all table columns, field aliasing, and caching support
|
|
226
|
+
* @example
|
|
227
|
+
* ```typescript
|
|
228
|
+
* const uniqueUsers = await forgeSQL.selectDistinctCacheableFrom(userTable, 300).where(eq(userTable.status, 'active'));
|
|
229
|
+
* ```
|
|
230
|
+
*/
|
|
231
|
+
selectDistinctCacheableFrom<T extends MySqlTable>(table: T, cacheTTL?: number): MySqlSelectBase<GetSelectTableName<T>, T["_"]["columns"] extends undefined ? GetSelectTableSelection<T> : T["_"]["columns"], T["_"]["columns"] extends undefined ? "single" : "partial", MySqlRemotePreparedQueryHKT, GetSelectTableName<T> extends string ? Record<string & GetSelectTableName<T>, "not-null"> : {}, false, never, any>;
|
|
165
232
|
/**
|
|
166
233
|
* Creates an insert query builder.
|
|
167
234
|
*
|
|
@@ -299,6 +366,86 @@ export interface QueryBuilderForgeSql {
|
|
|
299
366
|
* ```
|
|
300
367
|
*/
|
|
301
368
|
executeWithLocalCacheContextAndReturnValue<T>(cacheContext: () => Promise<T>): Promise<T>;
|
|
369
|
+
/**
|
|
370
|
+
* Executes a raw SQL query with local cache support.
|
|
371
|
+
* This method provides local caching for raw SQL queries within the current invocation context.
|
|
372
|
+
* Results are cached locally and will be returned from cache on subsequent identical queries.
|
|
373
|
+
*
|
|
374
|
+
* @param query - The SQL query to execute (SQLWrapper or string)
|
|
375
|
+
* @returns Promise with query results
|
|
376
|
+
* @example
|
|
377
|
+
* ```typescript
|
|
378
|
+
* // Using SQLWrapper
|
|
379
|
+
* const result = await forgeSQL.execute(sql`SELECT * FROM users WHERE id = ${userId}`);
|
|
380
|
+
*
|
|
381
|
+
* // Using string
|
|
382
|
+
* const result = await forgeSQL.execute("SELECT * FROM users WHERE status = 'active'");
|
|
383
|
+
* ```
|
|
384
|
+
*/
|
|
385
|
+
execute(query: SQLWrapper | string): Promise<MySqlQueryResultKind<MySqlRemoteQueryResultHKT, unknown>>;
|
|
386
|
+
/**
|
|
387
|
+
* Executes a raw SQL query with both local and global cache support.
|
|
388
|
+
* This method provides comprehensive caching for raw SQL queries:
|
|
389
|
+
* - Local cache: Within the current invocation context
|
|
390
|
+
* - Global cache: Cross-invocation caching using @forge/kvs
|
|
391
|
+
*
|
|
392
|
+
* @param query - The SQL query to execute (SQLWrapper or string)
|
|
393
|
+
* @param cacheTtl - Optional cache TTL override (defaults to global cache TTL)
|
|
394
|
+
* @returns Promise with query results
|
|
395
|
+
* @example
|
|
396
|
+
* ```typescript
|
|
397
|
+
* // Using SQLWrapper with custom TTL
|
|
398
|
+
* const result = await forgeSQL.executeCacheable(sql`SELECT * FROM users WHERE id = ${userId}`, 300);
|
|
399
|
+
*
|
|
400
|
+
* // Using string with default TTL
|
|
401
|
+
* const result = await forgeSQL.executeCacheable("SELECT * FROM users WHERE status = 'active'");
|
|
402
|
+
* ```
|
|
403
|
+
*/
|
|
404
|
+
executeCacheable(query: SQLWrapper | string, cacheTtl?: number): Promise<MySqlQueryResultKind<MySqlRemoteQueryResultHKT, unknown>>;
|
|
405
|
+
/**
|
|
406
|
+
* Creates a Common Table Expression (CTE) builder for complex queries.
|
|
407
|
+
* CTEs allow you to define temporary named result sets that exist within the scope of a single query.
|
|
408
|
+
*
|
|
409
|
+
* @returns WithBuilder for creating CTEs
|
|
410
|
+
* @example
|
|
411
|
+
* ```typescript
|
|
412
|
+
* const withQuery = forgeSQL.$with('userStats').as(
|
|
413
|
+
* forgeSQL.select({ userId: users.id, count: sql<number>`count(*)` })
|
|
414
|
+
* .from(users)
|
|
415
|
+
* .groupBy(users.id)
|
|
416
|
+
* );
|
|
417
|
+
* ```
|
|
418
|
+
*/
|
|
419
|
+
$with: WithBuilder;
|
|
420
|
+
/**
|
|
421
|
+
* Creates a query builder that uses Common Table Expressions (CTEs).
|
|
422
|
+
* CTEs allow you to define temporary named result sets that exist within the scope of a single query.
|
|
423
|
+
*
|
|
424
|
+
* @param queries - Array of CTE queries created with $with()
|
|
425
|
+
* @returns Query builder with CTE support
|
|
426
|
+
* @example
|
|
427
|
+
* ```typescript
|
|
428
|
+
* const withQuery = forgeSQL.$with('userStats').as(
|
|
429
|
+
* forgeSQL.select({ userId: users.id, count: sql<number>`count(*)` })
|
|
430
|
+
* .from(users)
|
|
431
|
+
* .groupBy(users.id)
|
|
432
|
+
* );
|
|
433
|
+
*
|
|
434
|
+
* const result = await forgeSQL.with(withQuery)
|
|
435
|
+
* .select({ userId: withQuery.userId, count: withQuery.count })
|
|
436
|
+
* .from(withQuery);
|
|
437
|
+
* ```
|
|
438
|
+
*/
|
|
439
|
+
with(...queries: WithSubquery[]): {
|
|
440
|
+
select: {
|
|
441
|
+
(): MySqlSelectBuilder<undefined, MySqlRemotePreparedQueryHKT>;
|
|
442
|
+
<TSelection extends SelectedFields>(fields: TSelection): MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT>;
|
|
443
|
+
};
|
|
444
|
+
selectDistinct: {
|
|
445
|
+
(): MySqlSelectBuilder<undefined, MySqlRemotePreparedQueryHKT>;
|
|
446
|
+
<TSelection extends SelectedFields>(fields: TSelection): MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT>;
|
|
447
|
+
};
|
|
448
|
+
};
|
|
302
449
|
}
|
|
303
450
|
/**
|
|
304
451
|
* Interface for Modify (Create, Update, Delete) operations.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ForgeSQLQueryBuilder.d.ts","sourceRoot":"","sources":["../../src/core/ForgeSQLQueryBuilder.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ForgeSQLQueryBuilder.d.ts","sourceRoot":"","sources":["../../src/core/ForgeSQLQueryBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,63 @@
|
|
|
1
1
|
import { MySqlRemoteDatabase, MySqlRemotePreparedQueryHKT, MySqlRemoteQueryResultHKT } from "drizzle-orm/mysql-proxy";
|
|
2
|
-
import
|
|
2
|
+
import { SelectedFields } from "drizzle-orm/mysql-core/query-builders/select.types";
|
|
3
3
|
import { ForgeSqlOrmOptions } from "../../..";
|
|
4
|
-
import { MySqlSelectBuilder } from "drizzle-orm/mysql-core";
|
|
4
|
+
import { MySqlSelectBase, MySqlSelectBuilder } from "drizzle-orm/mysql-core";
|
|
5
5
|
import type { MySqlTable } from "drizzle-orm/mysql-core/table";
|
|
6
6
|
import { MySqlDeleteBase, MySqlInsertBuilder, MySqlUpdateBuilder } from "drizzle-orm/mysql-core/query-builders";
|
|
7
|
+
import { SQLWrapper } from "drizzle-orm/sql/sql";
|
|
8
|
+
import type { MySqlQueryResultKind } from "drizzle-orm/mysql-core/session";
|
|
9
|
+
import type { GetSelectTableName, GetSelectTableSelection } from "drizzle-orm/query-builders/select.types";
|
|
10
|
+
/**
|
|
11
|
+
* Type for select queries with field aliasing
|
|
12
|
+
*/
|
|
7
13
|
export type SelectAliasedType = <TSelection extends SelectedFields>(fields: TSelection) => MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT>;
|
|
14
|
+
/**
|
|
15
|
+
* Type for select distinct queries with field aliasing
|
|
16
|
+
*/
|
|
8
17
|
export type SelectAliasedDistinctType = <TSelection extends SelectedFields>(fields: TSelection) => MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT>;
|
|
18
|
+
/**
|
|
19
|
+
* Type for select queries with field aliasing and caching
|
|
20
|
+
*/
|
|
9
21
|
export type SelectAliasedCacheableType = <TSelection extends SelectedFields>(fields: TSelection, cacheTtl?: number) => MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT>;
|
|
22
|
+
/**
|
|
23
|
+
* Type for select distinct queries with field aliasing and caching
|
|
24
|
+
*/
|
|
10
25
|
export type SelectAliasedDistinctCacheableType = <TSelection extends SelectedFields>(fields: TSelection, cacheTtl?: number) => MySqlSelectBuilder<TSelection, MySqlRemotePreparedQueryHKT>;
|
|
26
|
+
/**
|
|
27
|
+
* Type for select queries from table with field aliasing
|
|
28
|
+
*/
|
|
29
|
+
export type SelectAllFromAliasedType = <T extends MySqlTable>(table: T) => MySqlSelectBase<GetSelectTableName<T>, T["_"]["columns"] extends undefined ? GetSelectTableSelection<T> : T["_"]["columns"], T["_"]["columns"] extends undefined ? "single" : "partial", MySqlRemotePreparedQueryHKT, GetSelectTableName<T> extends string ? Record<string & GetSelectTableName<T>, "not-null"> : {}, false, never, any>;
|
|
30
|
+
/**
|
|
31
|
+
* Type for select distinct queries from table with field aliasing
|
|
32
|
+
*/
|
|
33
|
+
export type SelectAllDistinctFromAliasedType = <T extends MySqlTable>(table: T) => MySqlSelectBase<GetSelectTableName<T>, T["_"]["columns"] extends undefined ? GetSelectTableSelection<T> : T["_"]["columns"], T["_"]["columns"] extends undefined ? "single" : "partial", MySqlRemotePreparedQueryHKT, GetSelectTableName<T> extends string ? Record<string & GetSelectTableName<T>, "not-null"> : {}, false, never, any>;
|
|
34
|
+
/**
|
|
35
|
+
* Type for select queries from table with field aliasing and caching
|
|
36
|
+
*/
|
|
37
|
+
export type SelectAllFromCacheableAliasedType = <T extends MySqlTable>(table: T, cacheTtl?: number) => MySqlSelectBase<GetSelectTableName<T>, T["_"]["columns"] extends undefined ? GetSelectTableSelection<T> : T["_"]["columns"], T["_"]["columns"] extends undefined ? "single" : "partial", MySqlRemotePreparedQueryHKT, GetSelectTableName<T> extends string ? Record<string & GetSelectTableName<T>, "not-null"> : {}, false, never, any>;
|
|
38
|
+
/**
|
|
39
|
+
* Type for select distinct queries from table with field aliasing and caching
|
|
40
|
+
*/
|
|
41
|
+
export type SelectAllDistinctFromCacheableAliasedType = <T extends MySqlTable>(table: T, cacheTtl?: number) => MySqlSelectBase<GetSelectTableName<T>, T["_"]["columns"] extends undefined ? GetSelectTableSelection<T> : T["_"]["columns"], T["_"]["columns"] extends undefined ? "single" : "partial", MySqlRemotePreparedQueryHKT, GetSelectTableName<T> extends string ? Record<string & GetSelectTableName<T>, "not-null"> : {}, false, never, any>;
|
|
42
|
+
/**
|
|
43
|
+
* Type for executing raw SQL queries with local cache
|
|
44
|
+
*/
|
|
45
|
+
export type ExecuteQuery = (query: SQLWrapper | string) => Promise<MySqlQueryResultKind<MySqlRemoteQueryResultHKT, unknown>>;
|
|
46
|
+
/**
|
|
47
|
+
* Type for executing raw SQL queries with local and global cache
|
|
48
|
+
*/
|
|
49
|
+
export type ExecuteQueryCacheable = (query: SQLWrapper | string, cacheTtl?: number) => Promise<MySqlQueryResultKind<MySqlRemoteQueryResultHKT, unknown>>;
|
|
50
|
+
/**
|
|
51
|
+
* Type for insert operations with cache eviction
|
|
52
|
+
*/
|
|
11
53
|
export type InsertAndEvictCacheType = <TTable extends MySqlTable>(table: TTable) => MySqlInsertBuilder<TTable, MySqlRemoteQueryResultHKT, MySqlRemotePreparedQueryHKT>;
|
|
54
|
+
/**
|
|
55
|
+
* Type for update operations with cache eviction
|
|
56
|
+
*/
|
|
12
57
|
export type UpdateAndEvictCacheType = <TTable extends MySqlTable>(table: TTable) => MySqlUpdateBuilder<TTable, MySqlRemoteQueryResultHKT, MySqlRemotePreparedQueryHKT>;
|
|
58
|
+
/**
|
|
59
|
+
* Type for delete operations with cache eviction
|
|
60
|
+
*/
|
|
13
61
|
export type DeleteAndEvictCacheType = <TTable extends MySqlTable>(table: TTable) => MySqlDeleteBase<TTable, MySqlRemoteQueryResultHKT, MySqlRemotePreparedQueryHKT>;
|
|
14
62
|
/**
|
|
15
63
|
* Patches a Drizzle database instance with additional methods for aliased selects and cache management.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"additionalActions.d.ts","sourceRoot":"","sources":["../../../../src/lib/drizzle/extensions/additionalActions.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"additionalActions.d.ts","sourceRoot":"","sources":["../../../../src/lib/drizzle/extensions/additionalActions.ts"],"names":[],"mappings":"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"}
|
|
@@ -58,6 +58,7 @@ export declare function saveTableIfInsideCacheContext<T extends AnyMySqlTable>(t
|
|
|
58
58
|
*
|
|
59
59
|
* @param query - The Drizzle query to cache
|
|
60
60
|
* @param rows - The query result data to cache
|
|
61
|
+
* @param options - ForgeSqlOrm options
|
|
61
62
|
* @returns Promise that resolves when the data is saved to local cache
|
|
62
63
|
*
|
|
63
64
|
* @example
|
|
@@ -67,12 +68,13 @@ export declare function saveTableIfInsideCacheContext<T extends AnyMySqlTable>(t
|
|
|
67
68
|
* await saveQueryLocalCacheQuery(query, results);
|
|
68
69
|
* ```
|
|
69
70
|
*/
|
|
70
|
-
export declare function saveQueryLocalCacheQuery<T extends MySqlSelectDynamic<AnyMySqlSelectQueryBuilder>>(query: T, rows: unknown[]): Promise<void>;
|
|
71
|
+
export declare function saveQueryLocalCacheQuery<T extends MySqlSelectDynamic<AnyMySqlSelectQueryBuilder>>(query: T, rows: unknown[], options: ForgeSqlOrmOptions): Promise<void>;
|
|
71
72
|
/**
|
|
72
73
|
* Retrieves a query result from the local cache context.
|
|
73
74
|
* This function checks if a query result is already cached in memory.
|
|
74
75
|
*
|
|
75
76
|
* @param query - The Drizzle query to check for cached results
|
|
77
|
+
* @param options - Option Property
|
|
76
78
|
* @returns Promise that resolves to cached data if found, undefined otherwise
|
|
77
79
|
*
|
|
78
80
|
* @example
|
|
@@ -85,7 +87,7 @@ export declare function saveQueryLocalCacheQuery<T extends MySqlSelectDynamic<An
|
|
|
85
87
|
* // Execute query and cache result
|
|
86
88
|
* ```
|
|
87
89
|
*/
|
|
88
|
-
export declare function getQueryLocalCacheQuery<T extends MySqlSelectDynamic<AnyMySqlSelectQueryBuilder>>(query: T): Promise<unknown[] | undefined>;
|
|
90
|
+
export declare function getQueryLocalCacheQuery<T extends MySqlSelectDynamic<AnyMySqlSelectQueryBuilder>>(query: T, options: ForgeSqlOrmOptions): Promise<unknown[] | undefined>;
|
|
89
91
|
/**
|
|
90
92
|
* Evicts cached queries from the local cache context that involve the specified table.
|
|
91
93
|
* This function removes cached query results that contain the given table name.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cacheContextUtils.d.ts","sourceRoot":"","sources":["../../src/utils/cacheContextUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,0BAA0B,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEnF,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oDAAoD,CAAC;AAIxF;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC,0FAA0F;IAC1F,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACrB;AAED;;;;;GAKG;AACH,MAAM,WAAW,4BAA4B;IAC3C;;;OAGG;IACH,KAAK,EAAE,MAAM,CACX,MAAM,EACN;QACE,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,OAAO,EAAE,CAAC;KACjB,CACF,CAAC;CACH;AAED;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,4CAAmD,CAAC;AAExF;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,iDAAwD,CAAC;AAElG;;;;;;;;;;;;GAYG;AACH,wBAAsB,6BAA6B,CAAC,CAAC,SAAS,aAAa,EACzE,KAAK,EAAE,CAAC,GACP,OAAO,CAAC,IAAI,CAAC,CAMf;AAED
|
|
1
|
+
{"version":3,"file":"cacheContextUtils.d.ts","sourceRoot":"","sources":["../../src/utils/cacheContextUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,0BAA0B,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEnF,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oDAAoD,CAAC;AAIxF;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC,0FAA0F;IAC1F,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACrB;AAED;;;;;GAKG;AACH,MAAM,WAAW,4BAA4B;IAC3C;;;OAGG;IACH,KAAK,EAAE,MAAM,CACX,MAAM,EACN;QACE,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,OAAO,EAAE,CAAC;KACjB,CACF,CAAC;CACH;AAED;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,4CAAmD,CAAC;AAExF;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,iDAAwD,CAAC;AAElG;;;;;;;;;;;;GAYG;AACH,wBAAsB,6BAA6B,CAAC,CAAC,SAAS,aAAa,EACzE,KAAK,EAAE,CAAC,GACP,OAAO,CAAC,IAAI,CAAC,CAMf;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,wBAAwB,CAC5C,CAAC,SAAS,kBAAkB,CAAC,0BAA0B,CAAC,EACxD,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmBvE;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,uBAAuB,CAC3C,CAAC,SAAS,kBAAkB,CAAC,0BAA0B,CAAC,EACxD,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,CAmBvE;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,oBAAoB,CAAC,CAAC,SAAS,aAAa,EAChE,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAgBf;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,kCAAkC,CACtD,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,OAAO,CAAC,CAalB"}
|
package/dist/utils/sqlUtils.d.ts
CHANGED
|
@@ -35,13 +35,13 @@ export interface MetadataInfo {
|
|
|
35
35
|
*/
|
|
36
36
|
export declare const parseDateTime: (value: string | Date, format: string) => Date;
|
|
37
37
|
/**
|
|
38
|
-
* Helper function to validate and format
|
|
39
|
-
* @param value - Date object
|
|
40
|
-
* @param format - DateTime format string
|
|
41
|
-
* @returns Formatted date string
|
|
42
|
-
* @throws Error if
|
|
38
|
+
* Helper function to validate and format a date-like value using Luxon DateTime.
|
|
39
|
+
* @param value - Date object, ISO/RFC2822/SQL/HTTP string, or timestamp (number|string).
|
|
40
|
+
* @param format - DateTime format string (Luxon format tokens).
|
|
41
|
+
* @returns Formatted date string.
|
|
42
|
+
* @throws Error if value cannot be parsed as a valid date.
|
|
43
43
|
*/
|
|
44
|
-
export declare function formatDateTime(value: Date, format: string): string;
|
|
44
|
+
export declare function formatDateTime(value: Date | string | number, format: string): string;
|
|
45
45
|
/**
|
|
46
46
|
* Gets primary keys from the schema.
|
|
47
47
|
* @template T - The type of the table schema
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sqlUtils.d.ts","sourceRoot":"","sources":["../../src/utils/sqlUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAA0C,MAAM,aAAa,CAAC;AAChF,OAAO,EAAE,aAAa,EAAqB,MAAM,8BAA8B,CAAC;AAEhF,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AACnF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oDAAoD,CAAC;AAIzF;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,4BAA4B;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,wEAAwE;IACxE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACnC,8BAA8B;IAC9B,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,yCAAyC;IACzC,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,oCAAoC;IACpC,WAAW,EAAE,iBAAiB,EAAE,CAAC;IACjC,oCAAoC;IACpC,WAAW,EAAE,iBAAiB,EAAE,CAAC;IACjC,0CAA0C;IAC1C,iBAAiB,EAAE,uBAAuB,EAAE,CAAC;IAC7C,kCAAkC;IAClC,MAAM,EAAE,GAAG,EAAE,CAAC;CACf;AAUD;;;;;GAKG;AAEH,eAAO,MAAM,aAAa,GAAI,OAAO,MAAM,GAAG,IAAI,EAAE,QAAQ,MAAM,KAAG,IAyBpE,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"sqlUtils.d.ts","sourceRoot":"","sources":["../../src/utils/sqlUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAA0C,MAAM,aAAa,CAAC;AAChF,OAAO,EAAE,aAAa,EAAqB,MAAM,8BAA8B,CAAC;AAEhF,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AACnF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oDAAoD,CAAC;AAIzF;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,4BAA4B;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,wEAAwE;IACxE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACnC,8BAA8B;IAC9B,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,yCAAyC;IACzC,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,oCAAoC;IACpC,WAAW,EAAE,iBAAiB,EAAE,CAAC;IACjC,oCAAoC;IACpC,WAAW,EAAE,iBAAiB,EAAE,CAAC;IACjC,0CAA0C;IAC1C,iBAAiB,EAAE,uBAAuB,EAAE,CAAC;IAC7C,kCAAkC;IAClC,MAAM,EAAE,GAAG,EAAE,CAAC;CACf;AAUD;;;;;GAKG;AAEH,eAAO,MAAM,aAAa,GAAI,OAAO,MAAM,GAAG,IAAI,EAAE,QAAQ,MAAM,KAAG,IAyBpE,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAgCpF;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,aAAa,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,CAkCvF;AA0DD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,aAAa,GAAG,YAAY,CAoEnE;AAED;;;;;;;;GAQG;AACH,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,MAAM,EAAE,EAChB,OAAO,CAAC,EAAE;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,GAC9C,MAAM,EAAE,CAiBV;AAED,KAAK,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AAuBhD,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,GAAG,EACf,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,GAAG,EACX,QAAQ,EAAE,cAAc,GACvB,GAAG,CAmBL;AACD,wBAAgB,wBAAwB,CAAC,UAAU,SAAS,cAAc,EACxE,MAAM,EAAE,UAAU,GACjB;IAAE,UAAU,EAAE,UAAU,CAAC;IAAC,QAAQ,EAAE,cAAc,CAAA;CAAE,CAUtD;AAsED,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,UAAU,EACpD,IAAI,EAAE,CAAC,EAAE,EACT,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAClC,CAAC,EAAE,CAUL;AAoCD,wBAAgB,iBAAiB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAK/D;AAED,wBAAgB,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAEpD"}
|