pqb 0.35.5 → 0.35.7

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/dist/index.d.ts CHANGED
@@ -5057,9 +5057,14 @@ type SelectArgs<T extends SelectSelf> = ('*' | keyof T['meta']['selectable'])[];
5057
5057
  interface SelectAsArg<T extends SelectSelf> {
5058
5058
  [K: string]: keyof T['meta']['selectable'] | Expression | ((q: {
5059
5059
  [K in keyof T]: K extends keyof T['relations'] ? T[K] extends (...args: any[]) => any ? ReturnType<T[K]> : never : T[K];
5060
- }) => (QueryBase & {
5061
- returnType: Exclude<QueryReturnType, 'rows'>;
5062
- }) | Expression);
5060
+ }) => unknown);
5061
+ }
5062
+ type SelectAsFnReturnType = {
5063
+ result: QueryColumns;
5064
+ returnType: Exclude<QueryReturnType, 'rows'>;
5065
+ } | Expression;
5066
+ interface SelectAsCheckReturnTypes {
5067
+ [K: string]: PropertyKey | Expression | ((q: never) => SelectAsFnReturnType);
5063
5068
  }
5064
5069
  type SelectResult<T extends SelectSelf, Columns extends PropertyKey[]> = {
5065
5070
  [K in keyof T]: K extends 'result' ? ('*' extends Columns[number] ? {
@@ -5072,7 +5077,7 @@ type SelectResult<T extends SelectSelf, Columns extends PropertyKey[]> = {
5072
5077
  [K in Columns[number] as T['meta']['selectable'][K]['as']]: T['meta']['selectable'][K]['column'];
5073
5078
  }) & (T['meta']['hasSelect'] extends true ? Omit<T['result'], Columns[number]> : unknown)>> : T[K];
5074
5079
  } & QueryMetaHasSelect;
5075
- type SelectResultObj<T extends SelectSelf, Obj> = {
5080
+ type SelectResultObj<T extends SelectSelf, Obj> = Obj extends SelectAsCheckReturnTypes ? {
5076
5081
  [K in keyof T]: K extends 'meta' ? T['meta'] & {
5077
5082
  hasSelect: true;
5078
5083
  selectable: SelectAsSelectable<Obj>;
@@ -5081,7 +5086,9 @@ type SelectResultObj<T extends SelectSelf, Obj> = {
5081
5086
  } : K extends 'then' ? QueryThen<GetQueryResult<T, {
5082
5087
  [K in T['meta']['hasSelect'] extends true ? keyof Obj | keyof T['result'] : keyof Obj]: K extends keyof Obj ? SelectAsValueResult<T, Obj[K]> : K extends keyof T['result'] ? T['result'][K] : never;
5083
5088
  }>> : T[K];
5084
- };
5089
+ } : `Invalid return type of ${{
5090
+ [K in keyof Obj]: Obj[K] extends (...args: any[]) => any ? ReturnType<Obj[K]> extends SelectAsFnReturnType ? never : K : never;
5091
+ }[keyof Obj] & string}`;
5085
5092
  type SelectResultColumnsAndObj<T extends SelectSelf, Columns extends PropertyKey[], Obj> = {
5086
5093
  [K in keyof T]: K extends 'meta' ? T['meta'] & {
5087
5094
  hasSelect: true;
package/dist/index.js CHANGED
@@ -1850,10 +1850,7 @@ const columnWithDotToSql = (ctx, data, shape, column, index, quotedAs, select) =
1850
1850
  const table = column.slice(0, index);
1851
1851
  const key = column.slice(index + 1);
1852
1852
  if (key === "*") {
1853
- if ((_a = data.joinedShapes) == null ? void 0 : _a[table]) {
1854
- return select ? `row_to_json("${table}".*)` : `"${table}".r`;
1855
- }
1856
- return column;
1853
+ return ((_a = data.joinedShapes) == null ? void 0 : _a[table]) ? select ? `row_to_json("${table}".*)` : `"${table}".*` : column;
1857
1854
  }
1858
1855
  const tableName = ((_b = data.joinOverrides) == null ? void 0 : _b[table]) || table;
1859
1856
  const quoted = `"${table}"`;
@@ -6331,7 +6328,7 @@ class FnExpression extends orchidCore.Expression {
6331
6328
  sql.push(
6332
6329
  this.args.map((arg) => {
6333
6330
  if (typeof arg === "string") {
6334
- return arg === "*" ? "*" : columnToSql(ctx, this.q, this.q.shape, arg, quotedAs, true);
6331
+ return arg === "*" ? "*" : columnToSql(ctx, this.q, this.q.shape, arg, quotedAs);
6335
6332
  } else if (arg instanceof orchidCore.Expression) {
6336
6333
  return arg.toSQL(ctx, quotedAs);
6337
6334
  } else if ("pairs" in arg) {