@casekit/orm 0.0.1-alpha.20 → 0.0.1-alpha.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/Connection.d.ts +2 -2
- package/lib/Connection.d.ts.map +1 -1
- package/lib/migrate/commands/implode.d.ts.map +1 -1
- package/lib/migrate/migrator.d.ts.map +1 -1
- package/lib/migrate/sql/createExtensionsSql.d.ts.map +1 -1
- package/lib/migrate/sql/createSchemasSql.d.ts.map +1 -1
- package/lib/migrate/sql/dropSchemasSql.d.ts.map +1 -1
- package/lib/orm.d.ts.map +1 -1
- package/lib/pull/introspect/getForeignKeys.d.ts.map +1 -1
- package/lib/pull/introspect/getPrimaryKeys.d.ts.map +1 -1
- package/lib/pull/introspect/getTables.d.ts.map +1 -1
- package/lib/pull/introspect/getUniqueConstraints.d.ts.map +1 -1
- package/lib/pull/pull.d.ts.map +1 -1
- package/lib/queries/clauses/OrderByClause.d.ts +14 -0
- package/lib/queries/clauses/OrderByClause.d.ts.map +1 -0
- package/lib/queries/clauses/OrderByClause.js +2 -0
- package/lib/queries/clauses/OrderByClause.js.map +1 -0
- package/lib/queries/clauses/where/buildWhereClause.js +1 -1
- package/lib/queries/clauses/where/buildWhereClause.js.map +1 -1
- package/lib/queries/clauses/where/buildWhereClauses.d.ts.map +1 -1
- package/lib/queries/find/buildFind.d.ts.map +1 -1
- package/lib/queries/find/buildFind.js +38 -6
- package/lib/queries/find/buildFind.js.map +1 -1
- package/lib/queries/find/tests/findMany.orderBy.test-d.js +2 -1
- package/lib/queries/find/tests/findMany.orderBy.test-d.js.map +1 -1
- package/lib/queries/find/tests/findMany.orderBy.test.js +77 -0
- package/lib/queries/find/tests/findMany.orderBy.test.js.map +1 -1
- package/lib/queries/find/tests/findMany.too-deep.test-d.js +0 -8
- package/lib/queries/find/tests/findMany.too-deep.test-d.js.map +1 -1
- package/lib/queries/find/types/FindBuilder.d.ts +1 -0
- package/lib/queries/find/types/FindBuilder.d.ts.map +1 -1
- package/lib/queries/find/types/FindManyParams.d.ts +2 -3
- package/lib/queries/find/types/FindManyParams.d.ts.map +1 -1
- package/lib/queries/util/hasConditions.d.ts.map +1 -1
- package/lib/queries/util/rowToObject.d.ts.map +1 -1
- package/lib/schema/populate/populateConfiguration.d.ts.map +1 -1
- package/lib/schema/populate/populateModel.d.ts.map +1 -1
- package/lib/sql/sql.d.ts.map +1 -1
- package/lib/test/gen/column.d.ts +11 -11
- package/lib/test/gen/column.d.ts.map +1 -1
- package/lib/test/seed/index.d.ts +2 -278
- package/lib/test/seed/index.d.ts.map +1 -1
- package/lib/test/util/withRollback.d.ts.map +1 -1
- package/lib/test/util/withTransaction.d.ts.map +1 -1
- package/lib/util/ensureArray.d.ts.map +1 -1
- package/lib/util/interleave.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/queries/clauses/OrderByClause.ts +27 -0
- package/src/queries/clauses/where/buildWhereClause.ts +1 -1
- package/src/queries/find/buildFind.ts +39 -6
- package/src/queries/find/tests/findMany.orderBy.test-d.ts +2 -1
- package/src/queries/find/tests/findMany.orderBy.test.ts +87 -0
- package/src/queries/find/tests/findMany.too-deep.test-d.ts +0 -9
- package/src/queries/find/types/FindBuilder.ts +1 -0
- package/src/queries/find/types/FindManyParams.ts +2 -5
package/lib/Connection.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import pg from "pg";
|
|
1
|
+
import pg, { QueryResultRow } from "pg";
|
|
2
2
|
import { SQLStatement } from "./sql";
|
|
3
3
|
export declare class Connection {
|
|
4
4
|
private pool;
|
|
5
5
|
private client?;
|
|
6
6
|
constructor(pool: pg.Pool, client?: pg.PoolClient | undefined);
|
|
7
|
-
query: <T extends
|
|
7
|
+
query: <T extends QueryResultRow>(query: SQLStatement) => Promise<pg.QueryResult<any>>;
|
|
8
8
|
transact: <T>(fn: (conn: Connection) => Promise<T>, { rollback }?: {
|
|
9
9
|
rollback?: boolean;
|
|
10
10
|
}) => Promise<T>;
|
package/lib/Connection.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Connection.d.ts","sourceRoot":"","sources":["../src/Connection.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"Connection.d.ts","sourceRoot":"","sources":["../src/Connection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,IAAI,CAAC;AAIxC,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAErC,qBAAa,UAAU;IAEf,OAAO,CAAC,IAAI;IACZ,OAAO,CAAC,MAAM,CAAC;gBADP,IAAI,EAAE,EAAE,CAAC,IAAI,EACb,MAAM,CAAC,EAAE,EAAE,CAAC,UAAU,YAAA;IAG3B,KAAK,GAAU,CAAC,SAAS,cAAc,SAAS,YAAY,kCAMjE;IAEK,QAAQ,GAAU,CAAC,MAClB,CAAC,IAAI,EAAE,UAAU,KAAK,OAAO,CAAC,CAAC,CAAC,iBACd;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,gBAyC9C;CACL"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"implode.d.ts","sourceRoot":"","sources":["../../../src/migrate/commands/implode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAC;AAS1D,eAAO,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"implode.d.ts","sourceRoot":"","sources":["../../../src/migrate/commands/implode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAC;AAS1D,eAAO,MAAM,OAAO,OACZ,OAAO,sBACS;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,kBAkC3D,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrator.d.ts","sourceRoot":"","sources":["../../src/migrate/migrator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AACpF,OAAO,EAAE,yBAAyB,EAAE,MAAM,iDAAiD,CAAC;AAG5F,qBAAa,QAAQ;IACV,EAAE,EAAE,OAAO,CAAC;gBAEP,EAAE,EAAE,OAAO;IAIV,OAAO,CAAC,IAAI;;;KAAiC;CAG7D;AAED,eAAO,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"migrator.d.ts","sourceRoot":"","sources":["../../src/migrate/migrator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AACpF,OAAO,EAAE,yBAAyB,EAAE,MAAM,iDAAiD,CAAC;AAG5F,qBAAa,QAAQ;IACV,EAAE,EAAE,OAAO,CAAC;gBAEP,EAAE,EAAE,OAAO;IAIV,OAAO,CAAC,IAAI;;;KAAiC;CAG7D;AAED,eAAO,MAAM,QAAQ,GACjB,MAAM,SAAS,qBAAqB,EACpC,SAAS,SAAS,yBAAyB,CAAC,MAAM,CAAC,MAE/C,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,aACE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createExtensionsSql.d.ts","sourceRoot":"","sources":["../../../src/migrate/sql/createExtensionsSql.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC,eAAO,MAAM,mBAAmB,
|
|
1
|
+
{"version":3,"file":"createExtensionsSql.d.ts","sourceRoot":"","sources":["../../../src/migrate/sql/createExtensionsSql.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC,eAAO,MAAM,mBAAmB,OAAQ,OAAO,KAAG,YAAY,GAAG,IAUhE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createSchemasSql.d.ts","sourceRoot":"","sources":["../../../src/migrate/sql/createSchemasSql.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC,eAAO,MAAM,gBAAgB,
|
|
1
|
+
{"version":3,"file":"createSchemasSql.d.ts","sourceRoot":"","sources":["../../../src/migrate/sql/createSchemasSql.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC,eAAO,MAAM,gBAAgB,OAAQ,OAAO,KAAG,YAQ9C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dropSchemasSql.d.ts","sourceRoot":"","sources":["../../../src/migrate/sql/dropSchemasSql.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC,eAAO,MAAM,cAAc,
|
|
1
|
+
{"version":3,"file":"dropSchemasSql.d.ts","sourceRoot":"","sources":["../../../src/migrate/sql/dropSchemasSql.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC,eAAO,MAAM,cAAc,OAAQ,OAAO,KAAG,YAQ5C,CAAC"}
|
package/lib/orm.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orm.d.ts","sourceRoot":"","sources":["../src/orm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,IAAI,CAAC;AAGpC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAI1C,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAIhE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC3E,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAC;AAKzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC3E,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAInE,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAInE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC3E,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAKnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,yBAAyB,EAAE,MAAM,gDAAgD,CAAC;AAG3F,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAEnE,qBAAa,GAAG,CACZ,MAAM,SAAS,qBAAqB,EACpC,SAAS,SAAS,yBAAyB,CAAC,MAAM,CAAC;IAE5C,MAAM,EAAE,iBAAiB,CAAC;IAEjC;;;OAGG;IACH,IAAW,MAAM,IAAI;SAChB,CAAC,IAAI,SAAS,CAAC,MAAM,CAAC,GAAG,SAAS;KACtC,CAIA;IAED,IAAW,UAAU,IAAI,UAAU,CAElC;gBAEW,MAAM,EAAE,iBAAiB;IAIxB,QAAQ,CAAC,CAAC,EACnB,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,EAC9C,IAAI;;KAAsB,GAC3B,OAAO,CAAC,CAAC,CAAC;IAWA,QAAQ,CACjB,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,EAC3B,CAAC,SAAS,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,EAE9C,CAAC,EAAE,CAAC,EACJ,KAAK,EAAE,iBAAiB,CAAC,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,GAClE,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAMtC,OAAO,CAChB,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,EAC3B,CAAC,SAAS,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,EAE9C,CAAC,EAAE,CAAC,EACJ,KAAK,EAAE,iBAAiB,CAAC,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,GAClE,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAMrC,SAAS,CAClB,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,EAC3B,CAAC,SAAS,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC,EAEpC,CAAC,EAAE,CAAC,EACJ,MAAM,EAAE,iBAAiB,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,GACzD,OAAO,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAe5B,UAAU,CACnB,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,EAC3B,CAAC,SAAS,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,EAErC,CAAC,EAAE,CAAC,EACJ,MAAM,EAAE,iBAAiB,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,GAC1D,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAgB7B,SAAS,CAClB,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,EAC3B,CAAC,SAAS,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,EAEjC,CAAC,EAAE,CAAC,EACJ,MAAM,EAAE,iBAAiB,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,GACtD,OAAO,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAe5B,UAAU,CACnB,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,EAC3B,CAAC,SAAS,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,EAEjC,CAAC,EAAE,CAAC,EACJ,MAAM,EAAE,iBAAiB,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,GACtD,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAiB7B,SAAS,CAClB,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,EAC3B,CAAC,SAAS,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,EAEjC,CAAC,EAAE,CAAC,EACJ,MAAM,EAAE,iBAAiB,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,GACtD,OAAO,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAiD5B,UAAU,CACnB,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,EAC3B,CAAC,SAAS,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,EAEjC,CAAC,EAAE,CAAC,EACJ,MAAM,EAAE,iBAAiB,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,GACtD,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAmD7B,KAAK,CACd,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,EAC3B,CAAC,SAAS,WAAW,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,EAE3C,CAAC,EAAE,CAAC,EACJ,MAAM,EAAE,iBAAiB,CAAC,WAAW,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,GAChE,OAAO,CAAC,MAAM,CAAC;IAUL,KAAK,CAAC,CAAC,SAAS,cAAc,EACvC,SAAS,EAAE,oBAAoB,EAC/B,GAAG,SAAS,EAAE,SAAS,OAAO,EAAE,GACjC,OAAO,CAAC,CAAC,EAAE,CAAC;IAUF,QAAQ,CAAC,CAAC,SAAS,cAAc,EAC1C,SAAS,EAAE,oBAAoB,EAC/B,GAAG,SAAS,EAAE,SAAS,OAAO,EAAE,GACjC,OAAO,CAAC,CAAC,CAAC;CAehB;AAED,eAAO,MAAM,GAAG,
|
|
1
|
+
{"version":3,"file":"orm.d.ts","sourceRoot":"","sources":["../src/orm.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getForeignKeys.d.ts","sourceRoot":"","sources":["../../../src/pull/introspect/getForeignKeys.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,eAAO,MAAM,cAAc,WACf,
|
|
1
|
+
{"version":3,"file":"getForeignKeys.d.ts","sourceRoot":"","sources":["../../../src/pull/introspect/getForeignKeys.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,eAAO,MAAM,cAAc,WACf,EAAE,CAAC,MAAM,UACT,MAAM,KACf,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC,CAuDtC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getPrimaryKeys.d.ts","sourceRoot":"","sources":["../../../src/pull/introspect/getPrimaryKeys.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,IAAI,CAAC;AAKpB,eAAO,MAAM,cAAc,WACf,
|
|
1
|
+
{"version":3,"file":"getPrimaryKeys.d.ts","sourceRoot":"","sources":["../../../src/pull/introspect/getPrimaryKeys.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,IAAI,CAAC;AAKpB,eAAO,MAAM,cAAc,WACf,EAAE,CAAC,MAAM,UACT,MAAM,KACf,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAgBlC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getTables.d.ts","sourceRoot":"","sources":["../../../src/pull/introspect/getTables.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,IAAI,CAAC;AAGpB,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,eAAO,MAAM,SAAS,WAAkB,
|
|
1
|
+
{"version":3,"file":"getTables.d.ts","sourceRoot":"","sources":["../../../src/pull/introspect/getTables.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,IAAI,CAAC;AAGpB,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,eAAO,MAAM,SAAS,WAAkB,EAAE,CAAC,MAAM,UAAU,MAAM;;EA4ChE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getUniqueConstraints.d.ts","sourceRoot":"","sources":["../../../src/pull/introspect/getUniqueConstraints.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,IAAI,CAAC;AAIpB,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,WACrB,
|
|
1
|
+
{"version":3,"file":"getUniqueConstraints.d.ts","sourceRoot":"","sources":["../../../src/pull/introspect/getUniqueConstraints.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,IAAI,CAAC;AAIpB,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,WACrB,EAAE,CAAC,MAAM,UACT,MAAM,KACf,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAqB5C,CAAC"}
|
package/lib/pull/pull.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pull.d.ts","sourceRoot":"","sources":["../../src/pull/pull.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,IAAI,CAAC;AAYpB,eAAO,MAAM,IAAI,WACL,
|
|
1
|
+
{"version":3,"file":"pull.d.ts","sourceRoot":"","sources":["../../src/pull/pull.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,IAAI,CAAC;AAYpB,eAAO,MAAM,IAAI,WACL,EAAE,CAAC,MAAM,QACX;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,kBA4D3C,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ModelName } from "../../schema/types/helpers/ModelName";
|
|
2
|
+
import { LooseModelDefinitions } from "../../schema/types/loose/LooseModelDefinitions";
|
|
3
|
+
import { LooseRelationsDefinitions } from "../../schema/types/loose/LooseRelationsDefinitions";
|
|
4
|
+
import { ColumnName } from "../../types/ColumnName";
|
|
5
|
+
import { NonEmptyArray } from "../../types/util/NonEmptyArray";
|
|
6
|
+
export type OrderByClause<Models extends LooseModelDefinitions, Relations extends LooseRelationsDefinitions<Models>, M extends ModelName<Models>> = NonEmptyArray<OrderByColumn<Models, Relations, M> | [OrderByColumn<Models, Relations, M>, "asc" | "desc"]>;
|
|
7
|
+
type OrderByColumn<Models extends LooseModelDefinitions, Relations extends LooseRelationsDefinitions<Models>, M extends ModelName<Models>> = ColumnName<Models[M]> | {
|
|
8
|
+
[R in Extract<keyof Relations[M], string>]: `${R}.${Relations[M][R] extends {
|
|
9
|
+
type: "N:1";
|
|
10
|
+
model: infer M2 extends ModelName<Models>;
|
|
11
|
+
} ? Extract<keyof Models[M2]["columns"], string> : never}`;
|
|
12
|
+
}[Extract<keyof Relations[M], string>];
|
|
13
|
+
export {};
|
|
14
|
+
//# sourceMappingURL=OrderByClause.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OrderByClause.d.ts","sourceRoot":"","sources":["../../../src/queries/clauses/OrderByClause.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAC;AACvF,OAAO,EAAE,yBAAyB,EAAE,MAAM,oDAAoD,CAAC;AAC/F,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAE/D,MAAM,MAAM,aAAa,CACrB,MAAM,SAAS,qBAAqB,EACpC,SAAS,SAAS,yBAAyB,CAAC,MAAM,CAAC,EACnD,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,IAC3B,aAAa,CACX,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,GACnC,CAAC,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC,CAC1D,CAAC;AAEF,KAAK,aAAa,CACd,MAAM,SAAS,qBAAqB,EACpC,SAAS,SAAS,yBAAyB,CAAC,MAAM,CAAC,EACnD,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,IAEzB,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GACrB;KACK,CAAC,IAAI,OAAO,CACT,MAAM,SAAS,CAAC,CAAC,CAAC,EAClB,MAAM,CACT,GAAG,GAAG,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;QAAE,IAAI,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,EAAE,SAAS,SAAS,CAAC,MAAM,CAAC,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,MAAM,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,GAAG,KAAK,EAAE;CAC1J,CAAC,OAAO,CAAC,MAAM,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OrderByClause.js","sourceRoot":"","sources":["../../../src/queries/clauses/OrderByClause.ts"],"names":[],"mappings":""}
|
|
@@ -2,7 +2,7 @@ import { OrmError } from "../../../errors";
|
|
|
2
2
|
import { sql } from "../../../sql";
|
|
3
3
|
import { $eq, $gt, $gte, $ilike, $in, $is, $like, $lt, $lte, $ne, $not, } from "./operators";
|
|
4
4
|
export const buildWhereClause = (table, column, v) => {
|
|
5
|
-
if (v === null) {
|
|
5
|
+
if (v === null || v === undefined) {
|
|
6
6
|
return sql `%I.%I IS NULL`.withIdentifiers(table, column);
|
|
7
7
|
}
|
|
8
8
|
else if (typeof v === "string" ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildWhereClause.js","sourceRoot":"","sources":["../../../../src/queries/clauses/where/buildWhereClause.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAgB,GAAG,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EACH,GAAG,EACH,GAAG,EACH,IAAI,EACJ,MAAM,EACN,GAAG,EACH,GAAG,EACH,KAAK,EACL,GAAG,EACH,IAAI,EACJ,GAAG,EACH,IAAI,GACP,MAAM,aAAa,CAAC;AAErB,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC5B,KAAa,EACb,MAAc,EACd,CAAU,EACE,EAAE;IACd,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"buildWhereClause.js","sourceRoot":"","sources":["../../../../src/queries/clauses/where/buildWhereClause.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildWhereClauses.d.ts","sourceRoot":"","sources":["../../../../src/queries/clauses/where/buildWhereClauses.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,8CAA8C,CAAC;AACjF,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,mDAAmD,CAAC;AAC1F,OAAO,EAAE,YAAY,EAAO,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAI7C,eAAO,MAAM,iBAAiB,WAClB,iBAAiB,SAClB;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,SAC/D,
|
|
1
|
+
{"version":3,"file":"buildWhereClauses.d.ts","sourceRoot":"","sources":["../../../../src/queries/clauses/where/buildWhereClauses.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,8CAA8C,CAAC;AACjF,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,mDAAmD,CAAC;AAC1F,OAAO,EAAE,YAAY,EAAO,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAI7C,eAAO,MAAM,iBAAiB,WAClB,iBAAiB,SAClB;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,SAC/D,WAAW,CAAC,qBAAqB,EAAE,SAAS,CAAC,qBAAqB,CAAC,CAAC,KAC5E,YAgCF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildFind.d.ts","sourceRoot":"","sources":["../../../src/queries/find/buildFind.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAI5E,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD,eAAO,MAAM,SAAS,WACV,iBAAiB,KACtB,MAAM,SACF,cAAc,SACf,MAAM,EAAE,2BAEf,
|
|
1
|
+
{"version":3,"file":"buildFind.d.ts","sourceRoot":"","sources":["../../../src/queries/find/buildFind.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAI5E,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD,eAAO,MAAM,SAAS,WACV,iBAAiB,KACtB,MAAM,SACF,cAAc,SACf,MAAM,EAAE,2BAEf,WAgKF,CAAC"}
|
|
@@ -40,13 +40,30 @@ export const buildFind = (config, m, query, path = [], _tableIndex = 0) => {
|
|
|
40
40
|
path: [...path, f],
|
|
41
41
|
});
|
|
42
42
|
}
|
|
43
|
-
|
|
43
|
+
const relationQueries = { ...query.include };
|
|
44
|
+
// make sure we include a join to any relations we're ordering by
|
|
45
|
+
// (we'll use them later)
|
|
46
|
+
if (query.orderBy) {
|
|
47
|
+
query.orderBy.forEach((o) => {
|
|
48
|
+
const [col] = Array.isArray(o) ? o : [o, "asc"];
|
|
49
|
+
if (col.includes(".")) {
|
|
50
|
+
const r = col.split(".")[0];
|
|
51
|
+
if (!relationQueries[r]) {
|
|
52
|
+
relationQueries[r] = {
|
|
53
|
+
select: [],
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
for (const [r, subquery] of Object.entries(relationQueries)) {
|
|
44
60
|
const relation = config.relations[m][r];
|
|
45
61
|
const joinedModel = config.models[relation.model];
|
|
46
62
|
if (relation.type === "N:1") {
|
|
47
63
|
const joinBuilder = buildFind(config, relation.model, subquery, [...path, r], builder.tableIndex++);
|
|
48
64
|
const joinedTable = joinBuilder.table;
|
|
49
65
|
builder.table.joins.push({
|
|
66
|
+
relation: r,
|
|
50
67
|
from: {
|
|
51
68
|
schema: config.models[m].schema,
|
|
52
69
|
table: config.models[m].table,
|
|
@@ -91,11 +108,26 @@ export const buildFind = (config, m, query, path = [], _tableIndex = 0) => {
|
|
|
91
108
|
};
|
|
92
109
|
}
|
|
93
110
|
if (query.orderBy) {
|
|
94
|
-
builder.orderBy = query.orderBy.map((o) =>
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
111
|
+
builder.orderBy = query.orderBy.map((o) => {
|
|
112
|
+
const [col, order] = Array.isArray(o) ? o : [o, "asc"];
|
|
113
|
+
if (col.includes(".")) {
|
|
114
|
+
const [r, c] = col.split(".");
|
|
115
|
+
const join = builder.table.joins.find((j) => j.relation === r);
|
|
116
|
+
const joinedModel = config.models[join.to.model];
|
|
117
|
+
return {
|
|
118
|
+
table: join.to.alias,
|
|
119
|
+
column: joinedModel.columns[c].name,
|
|
120
|
+
direction: order,
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
else {
|
|
124
|
+
return {
|
|
125
|
+
table: alias,
|
|
126
|
+
column: model.columns[Array.isArray(o) ? o[0] : o].name,
|
|
127
|
+
direction: Array.isArray(o) ? o[1] : "asc",
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
});
|
|
99
131
|
}
|
|
100
132
|
if (query.limit) {
|
|
101
133
|
builder.limit = query.limit;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildFind.js","sourceRoot":"","sources":["../../../src/queries/find/buildFind.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAG3C,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAIhD,MAAM,CAAC,MAAM,SAAS,GAAG,CACrB,MAAyB,EACzB,CAAS,EACT,KAAqB,EACrB,OAAiB,EAAE,EACnB,WAAW,GAAG,CAAC,EACJ,EAAE;IACb,MAAM,OAAO,GAAgB;QACzB,OAAO,EAAE,EAAE;QACX,KAAK,EAAE;YACH,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YAChC,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YAClC,KAAK,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC;YAChC,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK;gBAChC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE;oBACtC,MAAM;oBACN,KAAK,EAAE,CAAC;iBACX,CAAC;gBACJ,CAAC,CAAC,KAAK,CAAC,KAAK;YACjB,KAAK,EAAE,EAAE;SACZ;QACD,OAAO,EAAE,EAAE;QACX,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,UAAU,EAAE,WAAW;KAC1B,CAAC;IAEF,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAE/B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;IAClC,IAAI,QAAQ,GAAG,CAAC,CAAC;IAEjB,sDAAsD;IACtD,sDAAsD;IACtD,+BAA+B;IAC/B,MAAM,MAAM,GAAG,IAAI,CAAC;QAChB,GAAG,KAAK,CAAC,MAAM;QACf,GAAG,KAAK,CAAC,UAAU;QACnB,GAAG,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC;KACzD,CAAC,CAAC;IAEH,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACrB,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;YACjB,KAAK,EAAE,KAAK;YACZ,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YAC9B,KAAK,EAAE,GAAG,KAAK,IAAI,QAAQ,EAAE,EAAE;YAC/B,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;SACrB,CAAC,CAAC;IACP,CAAC;IAED,KAAK,MAAM,CAAC,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"buildFind.js","sourceRoot":"","sources":["../../../src/queries/find/buildFind.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,9 +28,10 @@ describe("findMany", () => {
|
|
|
28
28
|
],
|
|
29
29
|
}));
|
|
30
30
|
});
|
|
31
|
-
test("included N:1 relations
|
|
31
|
+
test("included N:1 relations can be ordered", () => {
|
|
32
32
|
assertType(db.findMany("post", {
|
|
33
33
|
select: ["id", "content"],
|
|
34
|
+
orderBy: ["author.username"],
|
|
34
35
|
include: {
|
|
35
36
|
author: {
|
|
36
37
|
select: ["username"],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"findMany.orderBy.test-d.js","sourceRoot":"","sources":["../../../../src/queries/find/tests/findMany.orderBy.test-d.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEpD,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAEtC,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACtB,IAAI,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC3D,UAAU,CACN,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE;YAChB,MAAM,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC;YACzB,OAAO,EAAE;gBACL,OAAO;gBACP,6DAA6D;gBAC7D,OAAO;aACV;SACJ,CAAC,CACL,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,kFAAkF,EAAE,GAAG,EAAE;QAC1F,UAAU,CACN,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE;YAChB,MAAM,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC;YACzB,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;SACzD,CAAC,CACL,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,oEAAoE,EAAE,GAAG,EAAE;QAC5E,UAAU,CACN,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE;YAChB,MAAM,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC;YACzB,OAAO,EAAE;gBACL,OAAO;gBACP,CAAC,SAAS,EAAE,KAAK,CAAC;gBAClB,qDAAqD;gBACrD,CAAC,IAAI,EAAE,OAAO,CAAC;aAClB;SACJ,CAAC,CACL,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"findMany.orderBy.test-d.js","sourceRoot":"","sources":["../../../../src/queries/find/tests/findMany.orderBy.test-d.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEpD,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAEtC,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACtB,IAAI,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC3D,UAAU,CACN,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE;YAChB,MAAM,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC;YACzB,OAAO,EAAE;gBACL,OAAO;gBACP,6DAA6D;gBAC7D,OAAO;aACV;SACJ,CAAC,CACL,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,kFAAkF,EAAE,GAAG,EAAE;QAC1F,UAAU,CACN,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE;YAChB,MAAM,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC;YACzB,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;SACzD,CAAC,CACL,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,oEAAoE,EAAE,GAAG,EAAE;QAC5E,UAAU,CACN,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE;YAChB,MAAM,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC;YACzB,OAAO,EAAE;gBACL,OAAO;gBACP,CAAC,SAAS,EAAE,KAAK,CAAC;gBAClB,qDAAqD;gBACrD,CAAC,IAAI,EAAE,OAAO,CAAC;aAClB;SACJ,CAAC,CACL,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC/C,UAAU,CACN,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE;YAChB,MAAM,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC;YACzB,OAAO,EAAE,CAAC,iBAAiB,CAAC;YAC5B,OAAO,EAAE;gBACL,MAAM,EAAE;oBACJ,MAAM,EAAE,CAAC,UAAU,CAAC;oBACpB,mDAAmD;oBACnD,OAAO,EAAE,CAAC,UAAU,CAAC;iBACxB;aACJ;SACJ,CAAC,CACL,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC/C,UAAU,CACN,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE;YAChB,MAAM,EAAE,CAAC,IAAI,EAAE,UAAU,CAAC;YAC1B,OAAO,EAAE;gBACL,KAAK,EAAE;oBACH,MAAM,EAAE,CAAC,OAAO,CAAC;oBACjB,OAAO,EAAE,CAAC,OAAO,CAAC;iBACrB;aACJ;SACJ,CAAC,CACL,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC/C,UAAU,CACN,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE;YAChB,MAAM,EAAE,CAAC,IAAI,EAAE,UAAU,CAAC;YAC1B,OAAO,EAAE;gBACL,OAAO,EAAE;oBACL,MAAM,EAAE,CAAC,MAAM,CAAC;oBAChB,OAAO,EAAE,CAAC,MAAM,CAAC;iBACpB;aACJ;SACJ,CAAC,CACL,CAAC;IACN,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { describe, expect, test } from "vitest";
|
|
2
2
|
import { db } from "../../../test/db";
|
|
3
3
|
import { seed } from "../../../test/seed";
|
|
4
|
+
import { $in } from "../../clauses/where/operators";
|
|
4
5
|
describe("findMany", () => {
|
|
5
6
|
test("it can return data in the specified order", async () => {
|
|
6
7
|
await db.transact(async (db) => {
|
|
@@ -156,5 +157,81 @@ describe("findMany", () => {
|
|
|
156
157
|
]);
|
|
157
158
|
}, { rollback: true });
|
|
158
159
|
});
|
|
160
|
+
test("it can order by fields on N:1 relations even if they're not included in the query", async () => {
|
|
161
|
+
await db.transact(async (db) => {
|
|
162
|
+
await seed(db, {
|
|
163
|
+
users: [
|
|
164
|
+
{
|
|
165
|
+
username: "Russell",
|
|
166
|
+
tenants: [{ name: "WFMA", posts: 3 }],
|
|
167
|
+
},
|
|
168
|
+
{
|
|
169
|
+
username: "Dan",
|
|
170
|
+
tenants: [{ name: "WFMA", posts: 2 }],
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
username: "Fairooz",
|
|
174
|
+
tenants: [{ name: "WFMA", posts: 6 }],
|
|
175
|
+
},
|
|
176
|
+
],
|
|
177
|
+
});
|
|
178
|
+
const results = await db.findMany("post", {
|
|
179
|
+
select: ["title"],
|
|
180
|
+
orderBy: [["author.username", "desc"], "title"],
|
|
181
|
+
});
|
|
182
|
+
// the extra joined table used for the ordering is not included in the result object
|
|
183
|
+
expect(Object.keys(results[0])).toEqual(["title"]);
|
|
184
|
+
expect(results.map((r) => r.title)).toEqual([
|
|
185
|
+
"Post a",
|
|
186
|
+
"Post b",
|
|
187
|
+
"Post c",
|
|
188
|
+
"Post f",
|
|
189
|
+
"Post g",
|
|
190
|
+
"Post h",
|
|
191
|
+
"Post i",
|
|
192
|
+
"Post j",
|
|
193
|
+
"Post k",
|
|
194
|
+
"Post d",
|
|
195
|
+
"Post e",
|
|
196
|
+
]);
|
|
197
|
+
}, { rollback: true });
|
|
198
|
+
});
|
|
199
|
+
test("it can order by fields on N:1 relations that are included in the query without issue", async () => {
|
|
200
|
+
await db.transact(async (db) => {
|
|
201
|
+
await seed(db, {
|
|
202
|
+
users: [
|
|
203
|
+
{
|
|
204
|
+
username: "Russell",
|
|
205
|
+
tenants: [{ name: "WFMA", posts: 3 }],
|
|
206
|
+
},
|
|
207
|
+
{
|
|
208
|
+
username: "Dan",
|
|
209
|
+
tenants: [{ name: "WFMA", posts: 2 }],
|
|
210
|
+
},
|
|
211
|
+
{
|
|
212
|
+
username: "Fairooz",
|
|
213
|
+
tenants: [{ name: "WFMA", posts: 6 }],
|
|
214
|
+
},
|
|
215
|
+
],
|
|
216
|
+
});
|
|
217
|
+
const results = await db.findMany("post", {
|
|
218
|
+
select: ["title"],
|
|
219
|
+
include: {
|
|
220
|
+
author: {
|
|
221
|
+
select: ["id"],
|
|
222
|
+
where: { username: { [$in]: ["Russell", "Dan"] } },
|
|
223
|
+
},
|
|
224
|
+
},
|
|
225
|
+
orderBy: [["author.username", "desc"], "title"],
|
|
226
|
+
});
|
|
227
|
+
expect(results.map((r) => r.title)).toEqual([
|
|
228
|
+
"Post a",
|
|
229
|
+
"Post b",
|
|
230
|
+
"Post c",
|
|
231
|
+
"Post d",
|
|
232
|
+
"Post e",
|
|
233
|
+
]);
|
|
234
|
+
}, { rollback: true });
|
|
235
|
+
});
|
|
159
236
|
});
|
|
160
237
|
//# sourceMappingURL=findMany.orderBy.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"findMany.orderBy.test.js","sourceRoot":"","sources":["../../../../src/queries/find/tests/findMany.orderBy.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEhD,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"findMany.orderBy.test.js","sourceRoot":"","sources":["../../../../src/queries/find/tests/findMany.orderBy.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"findMany.too-deep.test-d.js","sourceRoot":"","sources":["../../../../src/queries/find/tests/findMany.too-deep.test-d.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEpD,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACtC,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,+BAA+B,CAAC;AAE7E,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACtB,IAAI,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;QAC5E,UAAU,CACN,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE;YACtB,MAAM,EAAE,CAAC,UAAU,CAAC;YACpB,OAAO,EAAE;gBACL,OAAO,EAAE;oBACL,MAAM,EAAE,CAAC,MAAM,CAAC;oBAChB,OAAO,EAAE,CAAC,MAAM,CAAC;oBACjB,OAAO,EAAE;wBACL,SAAS,EAAE;4BACP,MAAM,EAAE,CAAC,IAAI,CAAC;4BACd,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE;yBAC9C;wBACD,KAAK,EAAE;4BACH,MAAM,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC;4BAC1B,KAAK,EAAE;gCACH,EAAE,EAAE,KAAK;gCACT,SAAS,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,EAAE,EAAE;6BACnC;4BACD,OAAO,EAAE;gCACL,OAAO,EAAE;oCACL,MAAM,EAAE,CAAC,MAAM,CAAC;oCAChB,KAAK,EAAE;wCACH,CAAC,GAAG,CAAC,EAAE;4CACH,EAAE,IAAI,EAAE,GAAG,EAAE;4CACb,EAAE,IAAI,EAAE,GAAG,EAAE;4CACb;gDACI,CAAC,IAAI,CAAC,EAAE;oDACJ;wDACI,CAAC,GAAG,CAAC,EAAE;4DACH,EAAE,IAAI,EAAE,GAAG,EAAE;4DACb,EAAE,IAAI,EAAE,GAAG,EAAE;yDAChB;qDACJ;oDACD;wDACI,CAAC,GAAG,CAAC,EAAE;4DACH,EAAE,IAAI,EAAE,GAAG,EAAE;4DACb,EAAE,IAAI,EAAE,GAAG,EAAE;yDAChB;qDACJ;iDACJ;6CACJ;yCACJ;qCACJ;oCACD,OAAO,EAAE;wCACL,SAAS,EAAE;4CACP,MAAM,EAAE,CAAC,IAAI,CAAC;4CACd,KAAK,EAAE;gDACH,CAAC,GAAG,CAAC,EAAE;oDACH;wDACI,SAAS,EAAE;4DACP,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,EAAE;yDACpB;qDACJ;oDACD;wDACI,CAAC,IAAI,CAAC,EAAE;4DACJ;gEACI,SAAS,EAAE;oEACP,CAAC,IAAI,CAAC,EAAE,IAAI;iEACf;6DACJ;yDACJ;qDACJ;iDACJ;6CACJ;4CACD,OAAO,EAAE;gDACL,MAAM,EAAE;oDACJ,MAAM,EAAE,CAAC,IAAI,CAAC;oDACd,KAAK,EAAE;wDACH,IAAI,EAAE,KAAK;qDACd;oDACD,OAAO,EAAE;wDACL,KAAK,EAAE;4DACH,MAAM,EAAE;gEACJ,UAAU;6DACb;4DACD,KAAK,EAAE;gEACH,QAAQ,EAAE;oEACN,CAAC,MAAM,CAAC,EACJ,SAAS;iEAChB;6DACJ;yDACJ;wDACD,KAAK,EAAE;4DACH,MAAM,EAAE;gEACJ,IAAI;gEACJ,OAAO;6DACV;4DACD,KAAK,EAAE;gEACH,WAAW,EACP;oEACI,CAAC,IAAI,CAAC,EAAE,IAAI;iEACf;6DACR;4DACD,OAAO,EAAE;gEACL,MAAM,EAAE;oEACJ,MAAM,EAAE;wEACJ,IAAI;wEACJ,UAAU;qEACb;oEACD,OAAO,EACH;wEACI,KAAK,EAAE;4EACH,MAAM,EAAE;gFACJ,IAAI;gFACJ,OAAO;6EACV;4EACD,KAAK,EAAE;gFACH,WAAW,EACP;oFACI,CAAC,IAAI,CAAC,EAAE,IAAI;iFACf;6EACR;
|
|
1
|
+
{"version":3,"file":"findMany.too-deep.test-d.js","sourceRoot":"","sources":["../../../../src/queries/find/tests/findMany.too-deep.test-d.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FindBuilder.d.ts","sourceRoot":"","sources":["../../../../src/queries/find/types/FindBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,mDAAmD,CAAC;AAC1F,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,MAAM,WAAW,GAAG;IACtB,UAAU,EAAE,MAAM,CAAC;IAEnB,OAAO,EAAE;QACL,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,EAAE,CAAC;KAClB,EAAE,CAAC;IAEJ,KAAK,EAAE;QACH,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,IAAI,EAAE,CAAC;QACd,UAAU,CAAC,EAAE,WAAW,CACpB,qBAAqB,EACrB,SAAS,CAAC,qBAAqB,CAAC,CACnC,CAAC;QACF,KAAK,CAAC,EAAE,WAAW,CACf,qBAAqB,EACrB,SAAS,CAAC,qBAAqB,CAAC,CACnC,CAAC;KACL,CAAC;IAEF,SAAS,CAAC,EAAE;QACR,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE;YACL,MAAM,EAAE,MAAM,CAAC;YACf,IAAI,EAAE,MAAM,CAAC;YACb,MAAM,EAAE,OAAO,EAAE,CAAC;SACrB,EAAE,CAAC;KACP,CAAC;IAEF,GAAG,CAAC,EAAE,QAAQ,GAAG,eAAe,GAAG,OAAO,GAAG,WAAW,CAAC;IAEzD,OAAO,EAAE;QACL,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,KAAK,GAAG,MAAM,CAAC;KAC7B,EAAE,CAAC;IAEJ,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AACF,MAAM,MAAM,IAAI,GAAG;IACf,IAAI,EAAE;QACF,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;IACF,EAAE,EAAE;QACA,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;IACF,KAAK,CAAC,EAAE,WAAW,CACf,qBAAqB,EACrB,SAAS,CAAC,qBAAqB,CAAC,CACnC,CAAC;IACF,IAAI,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CAC3B,CAAC"}
|
|
1
|
+
{"version":3,"file":"FindBuilder.d.ts","sourceRoot":"","sources":["../../../../src/queries/find/types/FindBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,mDAAmD,CAAC;AAC1F,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,MAAM,WAAW,GAAG;IACtB,UAAU,EAAE,MAAM,CAAC;IAEnB,OAAO,EAAE;QACL,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,EAAE,CAAC;KAClB,EAAE,CAAC;IAEJ,KAAK,EAAE;QACH,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,IAAI,EAAE,CAAC;QACd,UAAU,CAAC,EAAE,WAAW,CACpB,qBAAqB,EACrB,SAAS,CAAC,qBAAqB,CAAC,CACnC,CAAC;QACF,KAAK,CAAC,EAAE,WAAW,CACf,qBAAqB,EACrB,SAAS,CAAC,qBAAqB,CAAC,CACnC,CAAC;KACL,CAAC;IAEF,SAAS,CAAC,EAAE;QACR,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE;YACL,MAAM,EAAE,MAAM,CAAC;YACf,IAAI,EAAE,MAAM,CAAC;YACb,MAAM,EAAE,OAAO,EAAE,CAAC;SACrB,EAAE,CAAC;KACP,CAAC;IAEF,GAAG,CAAC,EAAE,QAAQ,GAAG,eAAe,GAAG,OAAO,GAAG,WAAW,CAAC;IAEzD,OAAO,EAAE;QACL,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,KAAK,GAAG,MAAM,CAAC;KAC7B,EAAE,CAAC;IAEJ,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AACF,MAAM,MAAM,IAAI,GAAG;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE;QACF,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;IACF,EAAE,EAAE;QACA,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;IACF,KAAK,CAAC,EAAE,WAAW,CACf,qBAAqB,EACrB,SAAS,CAAC,qBAAqB,CAAC,CACnC,CAAC;IACF,IAAI,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CAC3B,CAAC"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import { ColumnName } from "../../../schema/types/helpers/ColumnName";
|
|
2
1
|
import { ModelName } from "../../../schema/types/helpers/ModelName";
|
|
3
2
|
import { LooseModelDefinitions } from "../../../schema/types/loose/LooseModelDefinitions";
|
|
4
3
|
import { LooseRelationsDefinitions } from "../../../schema/types/loose/LooseRelationsDefinitions";
|
|
5
|
-
import { NonEmptyArray } from "../../../types/util/NonEmptyArray";
|
|
6
4
|
import { IncludeClause } from "../../clauses/IncludeClause";
|
|
5
|
+
import { OrderByClause } from "../../clauses/OrderByClause";
|
|
7
6
|
import { SelectClause } from "../../clauses/SelectClause";
|
|
8
7
|
import { WhereClause } from "../../clauses/WhereClause";
|
|
9
8
|
export type FindManyParams<Models extends LooseModelDefinitions, Relations extends LooseRelationsDefinitions<Models>, M extends ModelName<Models>> = {
|
|
@@ -12,7 +11,7 @@ export type FindManyParams<Models extends LooseModelDefinitions, Relations exten
|
|
|
12
11
|
where?: WhereClause<Models, M>;
|
|
13
12
|
limit?: number;
|
|
14
13
|
offset?: number;
|
|
15
|
-
orderBy?:
|
|
14
|
+
orderBy?: OrderByClause<Models, Relations, M>;
|
|
16
15
|
for?: "update" | "no key update" | "share" | "key share";
|
|
17
16
|
};
|
|
18
17
|
//# sourceMappingURL=FindManyParams.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FindManyParams.d.ts","sourceRoot":"","sources":["../../../../src/queries/find/types/FindManyParams.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"FindManyParams.d.ts","sourceRoot":"","sources":["../../../../src/queries/find/types/FindManyParams.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,mDAAmD,CAAC;AAC1F,OAAO,EAAE,yBAAyB,EAAE,MAAM,uDAAuD,CAAC;AAClG,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,MAAM,cAAc,CACtB,MAAM,SAAS,qBAAqB,EACpC,SAAS,SAAS,yBAAyB,CAAC,MAAM,CAAC,EACnD,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,IAC3B;IACA,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAChC,OAAO,CAAC,EAAE,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IAC9C,KAAK,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IAC9C,GAAG,CAAC,EAAE,QAAQ,GAAG,eAAe,GAAG,OAAO,GAAG,WAAW,CAAC;CAC5D,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hasConditions.d.ts","sourceRoot":"","sources":["../../../src/queries/util/hasConditions.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,
|
|
1
|
+
{"version":3,"file":"hasConditions.d.ts","sourceRoot":"","sources":["../../../src/queries/util/hasConditions.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,GAAI,CAAC,UAAU,CAAC,KAAG,MAAM,IAAI,WAAW,CAAC,CAAC,CAanE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rowToObject.d.ts","sourceRoot":"","sources":["../../../src/queries/util/rowToObject.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,aAAa,GAAG;IAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvE,eAAO,MAAM,WAAW,YACV,aAAa,EAAE,WACnB,
|
|
1
|
+
{"version":3,"file":"rowToObject.d.ts","sourceRoot":"","sources":["../../../src/queries/util/rowToObject.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,aAAa,GAAG;IAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvE,eAAO,MAAM,WAAW,YACV,aAAa,EAAE,WACnB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAMrD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"populateConfiguration.d.ts","sourceRoot":"","sources":["../../../src/schema/populate/populateConfiguration.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAG5E,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AAIrF,eAAO,MAAM,qBAAqB,
|
|
1
|
+
{"version":3,"file":"populateConfiguration.d.ts","sourceRoot":"","sources":["../../../src/schema/populate/populateConfiguration.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAG5E,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AAIrF,eAAO,MAAM,qBAAqB,GAC9B,MAAM,SAAS,qBAAqB,EACpC,SAAS,SAAS,yBAAyB,CAAC,MAAM,CAAC,UAE3C,aAAa,CAAC,MAAM,EAAE,SAAS,CAAC,KACzC,iBAgCF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"populateModel.d.ts","sourceRoot":"","sources":["../../../src/schema/populate/populateModel.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAE5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAGpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAG3E,eAAO,MAAM,aAAa,WACd,
|
|
1
|
+
{"version":3,"file":"populateModel.d.ts","sourceRoot":"","sources":["../../../src/schema/populate/populateModel.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAE5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAGpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAG3E,eAAO,MAAM,aAAa,WACd,IAAI,CAAC,iBAAiB,EAAE,QAAQ,GAAG,QAAQ,CAAC,QAC9C,MAAM,SACL,oBAAoB,KAC5B,SAoFF,CAAC"}
|
package/lib/sql/sql.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sql.d.ts","sourceRoot":"","sources":["../../src/sql/sql.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,eAAO,MAAM,GAAG;gBACD,oBAAoB,gBACjB,SAAS,OAAO,EAAE;
|
|
1
|
+
{"version":3,"file":"sql.d.ts","sourceRoot":"","sources":["../../src/sql/sql.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,eAAO,MAAM,GAAG;gBACD,oBAAoB,gBACjB,SAAS,OAAO,EAAE;UAmCvB,CAAC,UAAU,CAAC,EAAE;CAF1B,CAAC"}
|
package/lib/test/gen/column.d.ts
CHANGED
|
@@ -2,22 +2,22 @@ import { fc } from "@fast-check/vitest";
|
|
|
2
2
|
import { z } from "zod";
|
|
3
3
|
export declare const column: () => fc.Arbitrary<{
|
|
4
4
|
type: string;
|
|
5
|
-
name?: string
|
|
5
|
+
name?: string;
|
|
6
6
|
zodSchema?: z.ZodType<unknown, z.ZodTypeDef, unknown> | undefined;
|
|
7
|
-
nullable?: boolean
|
|
7
|
+
nullable?: boolean;
|
|
8
8
|
default?: unknown;
|
|
9
9
|
unique?: boolean | {
|
|
10
|
-
where?: import("../..").SQLStatement
|
|
11
|
-
nullsNotDistinct?: boolean
|
|
12
|
-
}
|
|
13
|
-
primaryKey?: boolean
|
|
10
|
+
where?: import("../..").SQLStatement;
|
|
11
|
+
nullsNotDistinct?: boolean;
|
|
12
|
+
};
|
|
13
|
+
primaryKey?: boolean;
|
|
14
14
|
references?: {
|
|
15
|
-
schema?: string
|
|
15
|
+
schema?: string;
|
|
16
16
|
table: string;
|
|
17
17
|
column: string;
|
|
18
|
-
onUpdate?: import("../..").SQLStatement
|
|
19
|
-
onDelete?: import("../..").SQLStatement
|
|
20
|
-
}
|
|
21
|
-
provided?: boolean
|
|
18
|
+
onUpdate?: import("../..").SQLStatement;
|
|
19
|
+
onDelete?: import("../..").SQLStatement;
|
|
20
|
+
};
|
|
21
|
+
provided?: boolean;
|
|
22
22
|
}>;
|
|
23
23
|
//# sourceMappingURL=column.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"column.d.ts","sourceRoot":"","sources":["../../../src/test/gen/column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,MAAM
|
|
1
|
+
{"version":3,"file":"column.d.ts","sourceRoot":"","sources":["../../../src/test/gen/column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,MAAM;;;;;;;aAgC0B,CAAC;wBAAgC,CAAC;;;;cAAgT,CAAC;;;gBAAyE,CAAC;gBAAgC,CAAC;;;EAD1e,CAAC"}
|
package/lib/test/seed/index.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { DB } from "../db";
|
|
1
2
|
export type SeedParams = {
|
|
2
3
|
users: {
|
|
3
4
|
username: string;
|
|
@@ -7,284 +8,7 @@ export type SeedParams = {
|
|
|
7
8
|
}[];
|
|
8
9
|
}[];
|
|
9
10
|
};
|
|
10
|
-
export declare const seed: (db:
|
|
11
|
-
foo: {
|
|
12
|
-
readonly columns: {
|
|
13
|
-
readonly id: {
|
|
14
|
-
readonly type: "uuid";
|
|
15
|
-
readonly default: import("../..").SQLStatement;
|
|
16
|
-
readonly primaryKey: true;
|
|
17
|
-
};
|
|
18
|
-
readonly bigint: {
|
|
19
|
-
readonly type: "bigint";
|
|
20
|
-
};
|
|
21
|
-
readonly text: {
|
|
22
|
-
readonly type: "text";
|
|
23
|
-
};
|
|
24
|
-
readonly timestamp: {
|
|
25
|
-
readonly type: "timestamp";
|
|
26
|
-
};
|
|
27
|
-
readonly renamedColumn: {
|
|
28
|
-
readonly name: "original_name";
|
|
29
|
-
readonly type: "timestamp";
|
|
30
|
-
};
|
|
31
|
-
readonly a: {
|
|
32
|
-
readonly type: "bigint";
|
|
33
|
-
};
|
|
34
|
-
readonly b: {
|
|
35
|
-
readonly type: "bigint";
|
|
36
|
-
};
|
|
37
|
-
readonly c: {
|
|
38
|
-
readonly type: "bigint";
|
|
39
|
-
};
|
|
40
|
-
readonly d: {
|
|
41
|
-
readonly type: "bigint";
|
|
42
|
-
};
|
|
43
|
-
readonly e: {
|
|
44
|
-
readonly type: "bigint";
|
|
45
|
-
};
|
|
46
|
-
readonly f: {
|
|
47
|
-
readonly type: "bigint";
|
|
48
|
-
};
|
|
49
|
-
readonly g: {
|
|
50
|
-
readonly type: "bigint";
|
|
51
|
-
};
|
|
52
|
-
readonly h: {
|
|
53
|
-
readonly type: "bigint";
|
|
54
|
-
};
|
|
55
|
-
};
|
|
56
|
-
};
|
|
57
|
-
post: {
|
|
58
|
-
readonly columns: {
|
|
59
|
-
readonly id: {
|
|
60
|
-
readonly type: "uuid";
|
|
61
|
-
readonly default: import("../..").SQLStatement;
|
|
62
|
-
readonly primaryKey: true;
|
|
63
|
-
};
|
|
64
|
-
readonly title: {
|
|
65
|
-
readonly type: "text";
|
|
66
|
-
};
|
|
67
|
-
readonly content: {
|
|
68
|
-
readonly type: "text";
|
|
69
|
-
};
|
|
70
|
-
readonly authorId: {
|
|
71
|
-
readonly name: "created_by_id";
|
|
72
|
-
readonly type: "uuid";
|
|
73
|
-
readonly references: {
|
|
74
|
-
readonly table: "user";
|
|
75
|
-
readonly column: "id";
|
|
76
|
-
};
|
|
77
|
-
};
|
|
78
|
-
readonly reviewedById: {
|
|
79
|
-
readonly name: "reviewed_by_id";
|
|
80
|
-
readonly type: "uuid";
|
|
81
|
-
readonly nullable: true;
|
|
82
|
-
readonly references: {
|
|
83
|
-
readonly table: "user";
|
|
84
|
-
readonly column: "id";
|
|
85
|
-
};
|
|
86
|
-
};
|
|
87
|
-
readonly publishedAt: {
|
|
88
|
-
readonly type: "timestamp";
|
|
89
|
-
readonly nullable: true;
|
|
90
|
-
};
|
|
91
|
-
readonly tags: {
|
|
92
|
-
readonly type: "text[][][][]";
|
|
93
|
-
readonly nullable: true;
|
|
94
|
-
};
|
|
95
|
-
readonly tenantId: {
|
|
96
|
-
readonly type: "uuid";
|
|
97
|
-
readonly references: {
|
|
98
|
-
readonly table: "tenant";
|
|
99
|
-
readonly column: "id";
|
|
100
|
-
};
|
|
101
|
-
readonly default: "00000000-0000-0000-0000-000000000000";
|
|
102
|
-
};
|
|
103
|
-
readonly updatedAt: {
|
|
104
|
-
readonly type: "timestamp";
|
|
105
|
-
readonly nullable: true;
|
|
106
|
-
};
|
|
107
|
-
readonly deletedAt: {
|
|
108
|
-
readonly type: "timestamp";
|
|
109
|
-
readonly nullable: true;
|
|
110
|
-
};
|
|
111
|
-
};
|
|
112
|
-
};
|
|
113
|
-
user: {
|
|
114
|
-
readonly columns: {
|
|
115
|
-
readonly id: {
|
|
116
|
-
readonly type: "uuid";
|
|
117
|
-
readonly default: import("../..").SQLStatement;
|
|
118
|
-
};
|
|
119
|
-
readonly username: {
|
|
120
|
-
readonly zodSchema: import("zod").ZodString;
|
|
121
|
-
readonly type: "text";
|
|
122
|
-
};
|
|
123
|
-
readonly invitedById: {
|
|
124
|
-
readonly name: "invited_by_id";
|
|
125
|
-
readonly type: "uuid";
|
|
126
|
-
readonly nullable: true;
|
|
127
|
-
readonly references: {
|
|
128
|
-
readonly table: "user";
|
|
129
|
-
readonly column: "id";
|
|
130
|
-
};
|
|
131
|
-
};
|
|
132
|
-
readonly joinedAt: {
|
|
133
|
-
readonly name: "created_at";
|
|
134
|
-
readonly zodSchema: import("zod").ZodDate;
|
|
135
|
-
readonly type: "timestamp";
|
|
136
|
-
readonly nullable: true;
|
|
137
|
-
};
|
|
138
|
-
readonly updatedAt: {
|
|
139
|
-
readonly type: "timestamp";
|
|
140
|
-
readonly nullable: true;
|
|
141
|
-
};
|
|
142
|
-
readonly deletedAt: {
|
|
143
|
-
readonly zodSchema: import("zod").ZodDate;
|
|
144
|
-
readonly type: "timestamp";
|
|
145
|
-
readonly nullable: true;
|
|
146
|
-
};
|
|
147
|
-
};
|
|
148
|
-
readonly primaryKey: ["id"];
|
|
149
|
-
readonly uniqueConstraints: [{
|
|
150
|
-
readonly columns: ["username"];
|
|
151
|
-
readonly where: import("../..").SQLStatement;
|
|
152
|
-
}];
|
|
153
|
-
};
|
|
154
|
-
tenant: {
|
|
155
|
-
readonly columns: {
|
|
156
|
-
readonly id: {
|
|
157
|
-
readonly type: "uuid";
|
|
158
|
-
readonly default: import("../..").SQLStatement;
|
|
159
|
-
readonly primaryKey: true;
|
|
160
|
-
};
|
|
161
|
-
readonly name: {
|
|
162
|
-
readonly type: "text";
|
|
163
|
-
};
|
|
164
|
-
readonly createdAt: {
|
|
165
|
-
readonly type: "timestamp";
|
|
166
|
-
readonly default: import("../..").SQLStatement;
|
|
167
|
-
};
|
|
168
|
-
};
|
|
169
|
-
};
|
|
170
|
-
tenantUser: {
|
|
171
|
-
readonly table: "tenant_user";
|
|
172
|
-
readonly columns: {
|
|
173
|
-
readonly id: {
|
|
174
|
-
readonly type: "uuid";
|
|
175
|
-
readonly default: import("../..").SQLStatement;
|
|
176
|
-
readonly primaryKey: true;
|
|
177
|
-
};
|
|
178
|
-
readonly tenantId: {
|
|
179
|
-
readonly type: "uuid";
|
|
180
|
-
readonly references: {
|
|
181
|
-
readonly table: "tenant";
|
|
182
|
-
readonly column: "id";
|
|
183
|
-
};
|
|
184
|
-
};
|
|
185
|
-
readonly userId: {
|
|
186
|
-
readonly type: "uuid";
|
|
187
|
-
readonly references: {
|
|
188
|
-
readonly table: "user";
|
|
189
|
-
readonly column: "id";
|
|
190
|
-
};
|
|
191
|
-
};
|
|
192
|
-
readonly createdAt: {
|
|
193
|
-
readonly type: "timestamp with time zone";
|
|
194
|
-
readonly default: import("../..").SQLStatement;
|
|
195
|
-
};
|
|
196
|
-
readonly deletedAt: {
|
|
197
|
-
readonly type: "timestamp with time zone";
|
|
198
|
-
readonly nullable: true;
|
|
199
|
-
};
|
|
200
|
-
};
|
|
201
|
-
};
|
|
202
|
-
}, {
|
|
203
|
-
post: {
|
|
204
|
-
readonly author: {
|
|
205
|
-
readonly model: "user";
|
|
206
|
-
readonly type: "N:1";
|
|
207
|
-
readonly foreignKey: "authorId";
|
|
208
|
-
};
|
|
209
|
-
readonly reviewedBy: {
|
|
210
|
-
readonly model: "user";
|
|
211
|
-
readonly type: "N:1";
|
|
212
|
-
readonly foreignKey: "reviewedById";
|
|
213
|
-
readonly optional: true;
|
|
214
|
-
};
|
|
215
|
-
readonly tenant: {
|
|
216
|
-
readonly model: "tenant";
|
|
217
|
-
readonly type: "N:1";
|
|
218
|
-
readonly foreignKey: "tenantId";
|
|
219
|
-
};
|
|
220
|
-
};
|
|
221
|
-
user: {
|
|
222
|
-
readonly posts: {
|
|
223
|
-
readonly type: "1:N";
|
|
224
|
-
readonly model: "post";
|
|
225
|
-
readonly foreignKey: "authorId";
|
|
226
|
-
};
|
|
227
|
-
readonly reviewedPosts: {
|
|
228
|
-
readonly type: "1:N";
|
|
229
|
-
readonly model: "post";
|
|
230
|
-
readonly foreignKey: "reviewedById";
|
|
231
|
-
};
|
|
232
|
-
readonly invitedBy: {
|
|
233
|
-
readonly type: "N:1";
|
|
234
|
-
readonly model: "user";
|
|
235
|
-
readonly foreignKey: "invitedById";
|
|
236
|
-
readonly optional: true;
|
|
237
|
-
};
|
|
238
|
-
readonly invitedUsers: {
|
|
239
|
-
readonly type: "1:N";
|
|
240
|
-
readonly model: "user";
|
|
241
|
-
readonly foreignKey: "invitedById";
|
|
242
|
-
};
|
|
243
|
-
readonly tenancies: {
|
|
244
|
-
readonly type: "1:N";
|
|
245
|
-
readonly model: "tenantUser";
|
|
246
|
-
readonly foreignKey: "userId";
|
|
247
|
-
};
|
|
248
|
-
readonly tenants: {
|
|
249
|
-
readonly type: "N:N";
|
|
250
|
-
readonly model: "tenant";
|
|
251
|
-
readonly through: "tenantUser";
|
|
252
|
-
readonly foreignKey: "userId";
|
|
253
|
-
readonly otherKey: "tenantId";
|
|
254
|
-
};
|
|
255
|
-
};
|
|
256
|
-
tenant: {
|
|
257
|
-
readonly users: {
|
|
258
|
-
readonly model: "user";
|
|
259
|
-
readonly through: "tenantUser";
|
|
260
|
-
readonly type: "N:N";
|
|
261
|
-
readonly foreignKey: "tenantId";
|
|
262
|
-
readonly otherKey: "userId";
|
|
263
|
-
};
|
|
264
|
-
readonly tenancies: {
|
|
265
|
-
readonly model: "tenantUser";
|
|
266
|
-
readonly type: "1:N";
|
|
267
|
-
readonly foreignKey: "tenantId";
|
|
268
|
-
};
|
|
269
|
-
readonly posts: {
|
|
270
|
-
readonly model: "post";
|
|
271
|
-
readonly type: "1:N";
|
|
272
|
-
readonly foreignKey: "tenantId";
|
|
273
|
-
};
|
|
274
|
-
};
|
|
275
|
-
tenantUser: {
|
|
276
|
-
readonly user: {
|
|
277
|
-
readonly model: "user";
|
|
278
|
-
readonly type: "N:1";
|
|
279
|
-
readonly foreignKey: "userId";
|
|
280
|
-
};
|
|
281
|
-
readonly tenant: {
|
|
282
|
-
readonly model: "tenant";
|
|
283
|
-
readonly type: "N:1";
|
|
284
|
-
readonly foreignKey: "tenantId";
|
|
285
|
-
};
|
|
286
|
-
};
|
|
287
|
-
}>, params: SeedParams) => Promise<{
|
|
11
|
+
export declare const seed: (db: DB, params: SeedParams) => Promise<{
|
|
288
12
|
users: Record<string, {
|
|
289
13
|
id: string;
|
|
290
14
|
username: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/test/seed/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/test/seed/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAE3B,MAAM,MAAM,UAAU,GAAG;IACrB,KAAK,EAAE;QACH,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE;YACL,IAAI,EAAE,MAAM,CAAC;YACb,KAAK,EAAE,MAAM,CAAC;SACjB,EAAE,CAAC;KACP,EAAE,CAAC;CACP,CAAC;AAEF,eAAO,MAAM,IAAI,OACT,EAAE,UACE,UAAU,KACnB,OAAO,CAAC;IACP,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACxD,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACtD,WAAW,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACpD,KAAK,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC7E,CAoDA,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withRollback.d.ts","sourceRoot":"","sources":["../../../src/test/util/withRollback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,eAAO,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"withRollback.d.ts","sourceRoot":"","sources":["../../../src/test/util/withRollback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,eAAO,MAAM,YAAY,GAAU,CAAC,MAC5B,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,KACtC,OAAO,CAAC,CAAC,CAaX,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withTransaction.d.ts","sourceRoot":"","sources":["../../../src/test/util/withTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,eAAO,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"withTransaction.d.ts","sourceRoot":"","sources":["../../../src/test/util/withTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,eAAO,MAAM,eAAe,GAAU,CAAC,MAC/B,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,KACtC,OAAO,CAAC,CAAC,CAcX,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ensureArray.d.ts","sourceRoot":"","sources":["../../src/util/ensureArray.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"ensureArray.d.ts","sourceRoot":"","sources":["../../src/util/ensureArray.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,WAAW,GAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,KAAG,CAAC,EAAkC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interleave.d.ts","sourceRoot":"","sources":["../../src/util/interleave.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"interleave.d.ts","sourceRoot":"","sources":["../../src/util/interleave.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU,GAAI,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,KAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAOvD,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@casekit/orm",
|
|
3
|
-
"version": "0.0.1-alpha.
|
|
3
|
+
"version": "0.0.1-alpha.22",
|
|
4
4
|
"description": "A simple ORM",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "lib/index.js",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"@types/pg": "^8.11.5",
|
|
27
27
|
"@types/pg-format": "^1.0.5",
|
|
28
28
|
"@types/pluralize": "^0.0.33",
|
|
29
|
-
"@types/uuid": "^
|
|
29
|
+
"@types/uuid": "^10.0.0",
|
|
30
30
|
"@typescript-eslint/eslint-plugin": "^7.7.0",
|
|
31
31
|
"@vitest/coverage-istanbul": "^1.4.0",
|
|
32
32
|
"@vitest/coverage-v8": "^1.4.0",
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
"pluralize": "^8.0.0",
|
|
49
49
|
"prettier": "^3.2.5",
|
|
50
50
|
"ts-toolbelt": "^9.6.0",
|
|
51
|
-
"uuid": "^
|
|
51
|
+
"uuid": "^10.0.0",
|
|
52
52
|
"zod": "^3.22.4"
|
|
53
53
|
},
|
|
54
54
|
"scripts": {
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { ModelName } from "../../schema/types/helpers/ModelName";
|
|
2
|
+
import { LooseModelDefinitions } from "../../schema/types/loose/LooseModelDefinitions";
|
|
3
|
+
import { LooseRelationsDefinitions } from "../../schema/types/loose/LooseRelationsDefinitions";
|
|
4
|
+
import { ColumnName } from "../../types/ColumnName";
|
|
5
|
+
import { NonEmptyArray } from "../../types/util/NonEmptyArray";
|
|
6
|
+
|
|
7
|
+
export type OrderByClause<
|
|
8
|
+
Models extends LooseModelDefinitions,
|
|
9
|
+
Relations extends LooseRelationsDefinitions<Models>,
|
|
10
|
+
M extends ModelName<Models>,
|
|
11
|
+
> = NonEmptyArray<
|
|
12
|
+
| OrderByColumn<Models, Relations, M>
|
|
13
|
+
| [OrderByColumn<Models, Relations, M>, "asc" | "desc"]
|
|
14
|
+
>;
|
|
15
|
+
|
|
16
|
+
type OrderByColumn<
|
|
17
|
+
Models extends LooseModelDefinitions,
|
|
18
|
+
Relations extends LooseRelationsDefinitions<Models>,
|
|
19
|
+
M extends ModelName<Models>,
|
|
20
|
+
> =
|
|
21
|
+
| ColumnName<Models[M]>
|
|
22
|
+
| {
|
|
23
|
+
[R in Extract<
|
|
24
|
+
keyof Relations[M],
|
|
25
|
+
string
|
|
26
|
+
>]: `${R}.${Relations[M][R] extends { type: "N:1"; model: infer M2 extends ModelName<Models> } ? Extract<keyof Models[M2]["columns"], string> : never}`;
|
|
27
|
+
}[Extract<keyof Relations[M], string>];
|
|
@@ -56,7 +56,25 @@ export const buildFind = (
|
|
|
56
56
|
});
|
|
57
57
|
}
|
|
58
58
|
|
|
59
|
-
|
|
59
|
+
const relationQueries = { ...query.include };
|
|
60
|
+
|
|
61
|
+
// make sure we include a join to any relations we're ordering by
|
|
62
|
+
// (we'll use them later)
|
|
63
|
+
if (query.orderBy) {
|
|
64
|
+
query.orderBy.forEach((o) => {
|
|
65
|
+
const [col] = Array.isArray(o) ? o : [o, "asc"];
|
|
66
|
+
if (col.includes(".")) {
|
|
67
|
+
const r = col.split(".")[0]!;
|
|
68
|
+
if (!relationQueries[r]) {
|
|
69
|
+
relationQueries[r] = {
|
|
70
|
+
select: [],
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
for (const [r, subquery] of Object.entries(relationQueries)) {
|
|
60
78
|
const relation = config.relations[m][r];
|
|
61
79
|
const joinedModel = config.models[relation.model];
|
|
62
80
|
if (relation.type === "N:1") {
|
|
@@ -70,6 +88,7 @@ export const buildFind = (
|
|
|
70
88
|
const joinedTable = joinBuilder.table;
|
|
71
89
|
builder.table.joins.push(
|
|
72
90
|
{
|
|
91
|
+
relation: r,
|
|
73
92
|
from: {
|
|
74
93
|
schema: config.models[m].schema,
|
|
75
94
|
table: config.models[m].table,
|
|
@@ -123,11 +142,25 @@ export const buildFind = (
|
|
|
123
142
|
}
|
|
124
143
|
|
|
125
144
|
if (query.orderBy) {
|
|
126
|
-
builder.orderBy = query.orderBy.map((o) =>
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
145
|
+
builder.orderBy = query.orderBy.map((o) => {
|
|
146
|
+
const [col, order] = Array.isArray(o) ? o : [o, "asc" as const];
|
|
147
|
+
if (col.includes(".")) {
|
|
148
|
+
const [r, c] = col.split(".");
|
|
149
|
+
const join = builder.table.joins.find((j) => j.relation === r)!;
|
|
150
|
+
const joinedModel = config.models[join.to.model]!;
|
|
151
|
+
return {
|
|
152
|
+
table: join.to.alias,
|
|
153
|
+
column: joinedModel.columns[c].name,
|
|
154
|
+
direction: order,
|
|
155
|
+
};
|
|
156
|
+
} else {
|
|
157
|
+
return {
|
|
158
|
+
table: alias,
|
|
159
|
+
column: model.columns[Array.isArray(o) ? o[0] : o].name,
|
|
160
|
+
direction: Array.isArray(o) ? o[1] : "asc",
|
|
161
|
+
};
|
|
162
|
+
}
|
|
163
|
+
});
|
|
131
164
|
}
|
|
132
165
|
|
|
133
166
|
if (query.limit) {
|
|
@@ -39,10 +39,11 @@ describe("findMany", () => {
|
|
|
39
39
|
);
|
|
40
40
|
});
|
|
41
41
|
|
|
42
|
-
test("included N:1 relations
|
|
42
|
+
test("included N:1 relations can be ordered", () => {
|
|
43
43
|
assertType(
|
|
44
44
|
db.findMany("post", {
|
|
45
45
|
select: ["id", "content"],
|
|
46
|
+
orderBy: ["author.username"],
|
|
46
47
|
include: {
|
|
47
48
|
author: {
|
|
48
49
|
select: ["username"],
|
|
@@ -2,6 +2,7 @@ import { describe, expect, test } from "vitest";
|
|
|
2
2
|
|
|
3
3
|
import { db } from "../../../test/db";
|
|
4
4
|
import { seed } from "../../../test/seed";
|
|
5
|
+
import { $in } from "../../clauses/where/operators";
|
|
5
6
|
|
|
6
7
|
describe("findMany", () => {
|
|
7
8
|
test("it can return data in the specified order", async () => {
|
|
@@ -181,4 +182,90 @@ describe("findMany", () => {
|
|
|
181
182
|
{ rollback: true },
|
|
182
183
|
);
|
|
183
184
|
});
|
|
185
|
+
test("it can order by fields on N:1 relations even if they're not included in the query", async () => {
|
|
186
|
+
await db.transact(
|
|
187
|
+
async (db) => {
|
|
188
|
+
await seed(db, {
|
|
189
|
+
users: [
|
|
190
|
+
{
|
|
191
|
+
username: "Russell",
|
|
192
|
+
tenants: [{ name: "WFMA", posts: 3 }],
|
|
193
|
+
},
|
|
194
|
+
{
|
|
195
|
+
username: "Dan",
|
|
196
|
+
tenants: [{ name: "WFMA", posts: 2 }],
|
|
197
|
+
},
|
|
198
|
+
{
|
|
199
|
+
username: "Fairooz",
|
|
200
|
+
tenants: [{ name: "WFMA", posts: 6 }],
|
|
201
|
+
},
|
|
202
|
+
],
|
|
203
|
+
});
|
|
204
|
+
const results = await db.findMany("post", {
|
|
205
|
+
select: ["title"],
|
|
206
|
+
orderBy: [["author.username", "desc"], "title"],
|
|
207
|
+
});
|
|
208
|
+
|
|
209
|
+
// the extra joined table used for the ordering is not included in the result object
|
|
210
|
+
expect(Object.keys(results[0])).toEqual(["title"]);
|
|
211
|
+
|
|
212
|
+
expect(results.map((r) => r.title)).toEqual([
|
|
213
|
+
"Post a",
|
|
214
|
+
"Post b",
|
|
215
|
+
"Post c",
|
|
216
|
+
"Post f",
|
|
217
|
+
"Post g",
|
|
218
|
+
"Post h",
|
|
219
|
+
"Post i",
|
|
220
|
+
"Post j",
|
|
221
|
+
"Post k",
|
|
222
|
+
"Post d",
|
|
223
|
+
"Post e",
|
|
224
|
+
]);
|
|
225
|
+
},
|
|
226
|
+
{ rollback: true },
|
|
227
|
+
);
|
|
228
|
+
});
|
|
229
|
+
|
|
230
|
+
test("it can order by fields on N:1 relations that are included in the query without issue", async () => {
|
|
231
|
+
await db.transact(
|
|
232
|
+
async (db) => {
|
|
233
|
+
await seed(db, {
|
|
234
|
+
users: [
|
|
235
|
+
{
|
|
236
|
+
username: "Russell",
|
|
237
|
+
tenants: [{ name: "WFMA", posts: 3 }],
|
|
238
|
+
},
|
|
239
|
+
{
|
|
240
|
+
username: "Dan",
|
|
241
|
+
tenants: [{ name: "WFMA", posts: 2 }],
|
|
242
|
+
},
|
|
243
|
+
{
|
|
244
|
+
username: "Fairooz",
|
|
245
|
+
tenants: [{ name: "WFMA", posts: 6 }],
|
|
246
|
+
},
|
|
247
|
+
],
|
|
248
|
+
});
|
|
249
|
+
const results = await db.findMany("post", {
|
|
250
|
+
select: ["title"],
|
|
251
|
+
include: {
|
|
252
|
+
author: {
|
|
253
|
+
select: ["id"],
|
|
254
|
+
where: { username: { [$in]: ["Russell", "Dan"] } },
|
|
255
|
+
},
|
|
256
|
+
},
|
|
257
|
+
orderBy: [["author.username", "desc"], "title"],
|
|
258
|
+
});
|
|
259
|
+
|
|
260
|
+
expect(results.map((r) => r.title)).toEqual([
|
|
261
|
+
"Post a",
|
|
262
|
+
"Post b",
|
|
263
|
+
"Post c",
|
|
264
|
+
"Post d",
|
|
265
|
+
"Post e",
|
|
266
|
+
]);
|
|
267
|
+
},
|
|
268
|
+
{ rollback: true },
|
|
269
|
+
);
|
|
270
|
+
});
|
|
184
271
|
});
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import { ColumnName } from "../../../schema/types/helpers/ColumnName";
|
|
2
1
|
import { ModelName } from "../../../schema/types/helpers/ModelName";
|
|
3
2
|
import { LooseModelDefinitions } from "../../../schema/types/loose/LooseModelDefinitions";
|
|
4
3
|
import { LooseRelationsDefinitions } from "../../../schema/types/loose/LooseRelationsDefinitions";
|
|
5
|
-
import { NonEmptyArray } from "../../../types/util/NonEmptyArray";
|
|
6
4
|
import { IncludeClause } from "../../clauses/IncludeClause";
|
|
5
|
+
import { OrderByClause } from "../../clauses/OrderByClause";
|
|
7
6
|
import { SelectClause } from "../../clauses/SelectClause";
|
|
8
7
|
import { WhereClause } from "../../clauses/WhereClause";
|
|
9
8
|
|
|
@@ -17,8 +16,6 @@ export type FindManyParams<
|
|
|
17
16
|
where?: WhereClause<Models, M>;
|
|
18
17
|
limit?: number;
|
|
19
18
|
offset?: number;
|
|
20
|
-
orderBy?:
|
|
21
|
-
ColumnName<Models[M]> | [ColumnName<Models[M]>, "asc" | "desc"]
|
|
22
|
-
>;
|
|
19
|
+
orderBy?: OrderByClause<Models, Relations, M>;
|
|
23
20
|
for?: "update" | "no key update" | "share" | "key share";
|
|
24
21
|
};
|