pqb 0.11.20 → 0.11.21
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 +30 -16
- package/dist/index.js +213 -215
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +213 -215
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as orchid_core from 'orchid-core';
|
|
2
|
-
import { Sql, QueryBaseCommon, ColumnsShapeBase, QueryInternal, QueryMetaBase, EmptyObject, RawExpression, ColumnTypeBase, MaybeArray, QueryResultRow, AdapterBase, QueryInput, StringKey, ColumnOutput, NullableColumn, EmptyTuple, ColumnTypesBase, DbBase, ThenResult, ColumnShapeOutput, DefaultSelectColumns, SetOptional, Spread, CoalesceString, QueryCommon, BaseNumberData, Code, numberTypeMethods, BaseStringData, PrimaryKeyColumn, DateColumnData, EncodeColumn, ParseColumn, dateTypeMethods, JSONTypeAny, record, ArrayMethodsData, arrayMethods, name, ColumnDataBase, BaseOperators, HiddenColumn, ValidationContext, MessageParam } from 'orchid-core';
|
|
2
|
+
import { Sql, QueryBaseCommon, ColumnsShapeBase, QueryInternal, QueryMetaBase, EmptyObject, RawExpression, ColumnTypeBase, MaybeArray, QueryResultRow, AdapterBase, QueryInput, StringKey, ColumnOutput, NullableColumn, EmptyTuple, ColumnTypesBase, DbBase, ThenResult, ColumnShapeOutput, DefaultSelectColumns, SetOptional, Spread, CoalesceString, QueryCommon, BaseNumberData, Code, ColumnWithDefault, numberTypeMethods, BaseStringData, PrimaryKeyColumn, DateColumnData, EncodeColumn, ParseColumn, dateTypeMethods, JSONTypeAny, record, ArrayMethodsData, arrayMethods, name, ColumnDataBase, BaseOperators, HiddenColumn, ValidationContext, MessageParam } from 'orchid-core';
|
|
3
3
|
import { PoolConfig, Pool, PoolClient } from 'pg';
|
|
4
4
|
import { inspect } from 'util';
|
|
5
5
|
import { AsyncLocalStorage } from 'node:async_hooks';
|
|
@@ -490,25 +490,38 @@ declare class QueryGet {
|
|
|
490
490
|
type SelectArg<T extends QueryBase> = '*' | StringKey<keyof T['selectable']> | SelectAsArg<T>;
|
|
491
491
|
type SelectAsArg<T extends QueryBase> = Record<string, SelectAsValue<T>>;
|
|
492
492
|
type SelectAsValue<T extends QueryBase> = StringKey<keyof T['selectable']> | RawExpression | ((q: T) => Query) | ((q: T) => RawExpression) | ((q: T) => Query | RawExpression);
|
|
493
|
-
type
|
|
494
|
-
|
|
493
|
+
type SelectObjectResultTuple = [ColumnsShapeBase, SelectableBase];
|
|
494
|
+
type SelectResult<T extends Query, Args extends SelectArg<T>[], SelectStringsResult extends ColumnsShapeBase = SelectStringArgsResult<T, Args>, StringsKeys extends keyof SelectStringsResult = keyof SelectStringsResult, SelectAsResult extends SelectObjectResultTuple = SpreadSelectObjectArgs<T, Args, [
|
|
495
|
+
EmptyObject,
|
|
496
|
+
T['selectable']
|
|
497
|
+
]>, AsKeys extends keyof SelectAsResult[0] = keyof SelectAsResult[0], ResultKeys extends keyof T['result'] = T['meta']['hasSelect'] extends true ? keyof T['result'] : never, ShapeKeys extends keyof T['shape'] = '*' extends Args[number] ? keyof T['shape'] : never, Result extends ColumnsShapeBase = {
|
|
498
|
+
[K in StringsKeys | AsKeys | ResultKeys | ShapeKeys]: K extends StringsKeys ? SelectStringsResult[K] : K extends AsKeys ? SelectAsResult[0][K] : K extends ResultKeys ? T['result'][K] : K extends ShapeKeys ? T['shape'][K] : never;
|
|
495
499
|
}> = (T['meta']['hasSelect'] extends true ? unknown : {
|
|
496
500
|
meta: {
|
|
497
501
|
hasSelect: true;
|
|
498
502
|
};
|
|
499
503
|
}) & {
|
|
500
|
-
[K in keyof T]: K extends 'result' ? Result : K extends 'then' ? QueryThen<T['returnType'], Result> : T[K];
|
|
504
|
+
[K in keyof T]: K extends 'result' ? Result : K extends 'then' ? QueryThen<T['returnType'], Result> : K extends 'selectable' ? SelectAsResult[1] : T[K];
|
|
501
505
|
};
|
|
502
|
-
type SpreadSelectArgs<T extends Query, Args extends [...any]> = Args extends [
|
|
503
|
-
infer L,
|
|
504
|
-
...infer R
|
|
505
|
-
] ? L extends SelectAsArg<T> ? SelectAsResult<T, L> & SpreadSelectArgs<T, R> : SpreadSelectArgs<T, R> : EmptyObject;
|
|
506
506
|
type SelectStringArgsResult<T extends Query, Args extends SelectArg<T>[]> = {
|
|
507
507
|
[Arg in Args[number] as Arg extends keyof T['selectable'] ? T['selectable'][Arg]['as'] : never]: Arg extends keyof T['selectable'] ? T['selectable'][Arg]['column'] : never;
|
|
508
508
|
};
|
|
509
|
-
type
|
|
510
|
-
|
|
511
|
-
|
|
509
|
+
type SpreadSelectObjectArgs<T extends Query, Args extends [...unknown[]], Result extends SelectObjectResultTuple> = Args extends [infer L, ...infer R] ? SpreadSelectObjectArgs<T, R, SelectAsResult<T, L, Result>> : Result;
|
|
510
|
+
type SelectAsResult<T extends Query, Arg, Result extends SelectObjectResultTuple, Shape = Result[0], AddSelectable extends SelectableBase = {
|
|
511
|
+
[K in keyof Arg]: Arg[K] extends ((q: T) => infer R extends Query) ? (x: {
|
|
512
|
+
[C in keyof R['result'] as `${StringKey<K>}.${StringKey<C>}`]: {
|
|
513
|
+
as: C;
|
|
514
|
+
column: R['result'][C];
|
|
515
|
+
};
|
|
516
|
+
}) => void : never;
|
|
517
|
+
}[keyof Arg] extends (x: infer I) => void ? {
|
|
518
|
+
[K in keyof I]: I[K];
|
|
519
|
+
} : never> = Arg extends SelectAsArg<T> ? [
|
|
520
|
+
{
|
|
521
|
+
[K in keyof Shape | keyof Arg]: K extends keyof Arg ? SelectAsValueResult<T, Arg[K]> : K extends keyof Shape ? Shape[K] : never;
|
|
522
|
+
},
|
|
523
|
+
Result[1] & AddSelectable
|
|
524
|
+
] : Result;
|
|
512
525
|
type SelectAsValueResult<T extends Query, Arg extends SelectAsValue<T>> = Arg extends keyof T['selectable'] ? T['selectable'][Arg]['column'] : Arg extends RawExpression ? Arg['__column'] : Arg extends (q: T) => infer R ? R extends Query ? SelectSubQueryResult<R> : R extends RawExpression ? R['__column'] : R extends Query | RawExpression ? SelectSubQueryResult<Exclude<R, RawExpression>> | Exclude<R, Query>['__column'] : never : never;
|
|
513
526
|
type SelectSubQueryResult<Arg extends Query & {
|
|
514
527
|
[isRequiredRelationKey]?: boolean;
|
|
@@ -2063,22 +2076,23 @@ declare class DecimalBaseColumn<Precision extends number | undefined = undefined
|
|
|
2063
2076
|
toCode(t: string): Code;
|
|
2064
2077
|
toSQL(): string;
|
|
2065
2078
|
}
|
|
2079
|
+
type IdentityColumn<T extends ColumnTypeBase> = ColumnWithDefault<T, RawExpression>;
|
|
2066
2080
|
declare class SmallIntColumn extends IntegerBaseColumn {
|
|
2067
2081
|
dataType: "smallint";
|
|
2068
2082
|
parseItem: typeof parseInt;
|
|
2069
2083
|
toCode(t: string): Code;
|
|
2070
|
-
identity<T extends ColumnType>(this: T, options?: TableData.Identity): T
|
|
2084
|
+
identity<T extends ColumnType>(this: T, options?: TableData.Identity): IdentityColumn<T>;
|
|
2071
2085
|
}
|
|
2072
2086
|
declare class IntegerColumn extends IntegerBaseColumn {
|
|
2073
2087
|
dataType: "integer";
|
|
2074
2088
|
parseItem: typeof parseInt;
|
|
2075
2089
|
toCode(t: string): Code;
|
|
2076
|
-
identity<T extends ColumnType>(this: T, options?: TableData.Identity): T
|
|
2090
|
+
identity<T extends ColumnType>(this: T, options?: TableData.Identity): IdentityColumn<T>;
|
|
2077
2091
|
}
|
|
2078
2092
|
declare class BigIntColumn extends NumberAsStringBaseColumn {
|
|
2079
2093
|
dataType: "bigint";
|
|
2080
2094
|
toCode(t: string): Code;
|
|
2081
|
-
identity<T extends ColumnType>(this: T, options?: TableData.Identity): T
|
|
2095
|
+
identity<T extends ColumnType>(this: T, options?: TableData.Identity): IdentityColumn<T>;
|
|
2082
2096
|
}
|
|
2083
2097
|
declare class DecimalColumn<Precision extends number | undefined = undefined, Scale extends number | undefined = undefined> extends DecimalBaseColumn<Precision, Scale> {
|
|
2084
2098
|
}
|
|
@@ -3470,7 +3484,7 @@ declare const columnTypes: {
|
|
|
3470
3484
|
decimal<Precision_1 extends number | undefined = undefined, Scale_1 extends number | undefined = undefined>(precision?: Precision_1 | undefined, scale?: Scale_1 | undefined): DecimalColumn<Precision_1, Scale_1>;
|
|
3471
3485
|
real(): RealColumn;
|
|
3472
3486
|
doublePrecision(): DoublePrecisionColumn;
|
|
3473
|
-
identity(options?: TableData.Identity): IntegerColumn
|
|
3487
|
+
identity(options?: TableData.Identity): IdentityColumn<IntegerColumn>;
|
|
3474
3488
|
smallSerial(): SmallSerialColumn;
|
|
3475
3489
|
serial(): SerialColumn;
|
|
3476
3490
|
bigSerial(): BigSerialColumn;
|
|
@@ -3714,4 +3728,4 @@ declare const testTransaction: {
|
|
|
3714
3728
|
close(arg: Arg): Promise<void>;
|
|
3715
3729
|
};
|
|
3716
3730
|
|
|
3717
|
-
export { Adapter, AdapterConfig, AdapterOptions, AddQuerySelect, AddQueryWith, AfterCallback, Aggregate, Aggregate1ArgumentTypes, AggregateArg, AggregateItem, AggregateItemArg, AggregateItemOptions, AggregateOptions, AliasOrTable, ArrayColumn, ArrayData, ArrayOfColumnsObjects, BaseRelation, BeforeCallback, BelongsToRelation, BigIntColumn, BigSerialColumn, BitColumn, BitVaryingColumn, BooleanColumn, BooleanExpression, BoxColumn, ByteaColumn, CharColumn, CidrColumn, CircleColumn, CitextColumn, Clear, ClearStatement, ColumnData, ColumnFromDbParams, ColumnInfo, ColumnInfoMethods, ColumnInfoQueryData, ColumnNameOfTable, ColumnOperators, ColumnParser, ColumnType, ColumnTypes, ColumnsObject, ColumnsParsers, ColumnsShape, CommonQueryData, CopyOptions, CopyQueryData, Create, CreateCtx, CreateData, CreateMethodsNames, CustomTypeColumn, DateBaseColumn, DateColumn, DateTimeBaseClass, DateTimeTzBaseClass, Db, DbOptions, DbResult, DbTableOptions, DecimalBaseColumn, DecimalColumn, DefaultColumnTypes, Delete, DeleteMethodsNames, DeleteQueryData, DomainColumn, DoublePrecisionColumn, DropMode, EnumColumn, Expression, ExpressionOfType, ExpressionOutput, For, ForeignKey, ForeignKeyAction, ForeignKeyMatch, ForeignKeyOptions, ForeignKeyTable, From, FromArgs, FromResult, GetArg, HasAndBelongsToManyRelation, HasManyRelation, HasOneRelation, Having, HavingArg, HavingItem, IndexColumnOptions, IndexOptions, InetColumn, InsertQueryData, IntegerBaseColumn, IntegerColumn, IntervalColumn, IsolationLevel, JSONColumn, JSONTextColumn, JSONTypes, Join, JoinArgs, JoinCallback, JoinFirstArg, JoinItem, JoinLateralCallback, JoinLateralItem, JoinLateralResult, JoinResult, JoinedParsers, JoinedShapes, Json, JsonItem, LimitedTextBaseColumn, LineColumn, LsegColumn, MacAddr8Column, MacAddrColumn, MergeQuery, MergeQueryMethods, MoneyColumn, MoreThanOneRowError, NoPrimaryKeyOption, NotFoundError, NumberAsStringBaseColumn, NumberBaseColumn, NumberColumn, NumberColumnData, NumberExpression, OnConflictItem, OnConflictMergeUpdate, OnConflictQueryBuilder, OnQueryBuilder, Operators, OrchidOrmError, OrchidOrmInternalError, OrderArg, OrderItem, PathColumn, PluckResultColumnType, PointColumn, PolygonColumn, Query, QueryArraysResult, QueryBase, QueryCallbacks, QueryData, QueryError, QueryErrorName, QueryGet, QueryLog, QueryLogObject, QueryLogOptions, QueryLogger, QueryMethods, QueryResult, QueryReturnType, QueryReturnsAll, QueryThen, QueryUpsertOrCreate, QueryWithTable, RawMethods, RealColumn, Relation, RelationQuery, RelationQueryBase, RelationQueryData, RelationsBase, Select, SelectAgg, SelectArg, SelectFunctionItem, SelectItem, SelectQueryData, Selectable, SelectableBase, SelectableFromShape, SerialColumn, SerialColumnData, SetQueryReturns, SetQueryReturnsAll, SetQueryReturnsColumnInfo, SetQueryReturnsOne, SetQueryReturnsOneOptional, SetQueryReturnsPluck, SetQueryReturnsRowCount, SetQueryReturnsRows, SetQueryReturnsValue, SetQueryReturnsValueOptional, SetQueryReturnsVoid, SetQueryTableAlias, SetQueryWindows, SetQueryWith, SimpleJoinItem, SingleColumnIndexOptions, SmallIntColumn, SmallSerialColumn, SortDir, StringColumn, StringExpression, TableData, TextBaseColumn, TextColumn, TextColumnData, Then, TimeColumn, TimeInterval, TimestampColumn, TimestampTZColumn, ToSqlCtx, ToSqlOptions, Transaction, TransactionAdapter, TransactionOptions, TruncateQueryData, TsQueryColumn, TsVectorColumn, TypeParsers, UUIDColumn, UnhandledTypeError, Union, UnionArg, UnionItem, UnionKind, UnknownColumn, Update, UpdateCtx, UpdateData, UpdateQueryData, UpdateQueryDataItem, UpdateQueryDataObject, UpdatedAtDataInjector, UpsertCreateArg, UpsertData, UpsertResult, UpsertThis, VarCharColumn, VirtualColumn, Where, WhereArg, WhereInArg, WhereInColumn, WhereInItem, WhereInValues, WhereItem, WhereJsonPathEqualsItem, WhereOnItem, WhereOnJoinItem, WhereQueryBuilder, WhereResult, WindowArg, WindowArgDeclaration, WindowDeclaration, WindowFunctionOptions, WindowItem, With, WithDataBase, WithDataItem, WithItem, WithOptions, XMLColumn, addOr, addOrNot, addParserForRawExpression, addParserForSelectItem, addParserToQuery, addQueryOn, addQueryOrOn, addWhere, addWhereIn, addWhereNot, aggregate1FunctionNames, anyShape, checkIfASimpleQuery, cloneQueryArrays, columnCheckToCode, columnCode, columnForeignKeysToCode, columnIndexesToCode, columnTypes, utils as columnUtils, columnsByType, columnsShapeToCode, constraintPropsToCode, constraintToCode, createDb, foreignKeyArgumentToCode, getClonedQueryData, getColumnTypes, getConstraintKind, getQueryAs, getRaw, getShapeFromSelect, getTableData, getValueKey, handleResult, identityToCode, indexToCode, instantiateColumn, isQueryReturnsAll, isRequiredRelationKey, jsonTypes, logColors, logParamToLogObject, makeRegexToFindInSql, makeSql, newTableData, parseRecord, parseResult, primaryKeyToCode, processSelectArg, pushQueryArray, pushQueryOn, pushQueryOrOn, pushQueryValue, queryMethodByReturnType, queryTypeWithLimitOne, quote, quoteString, referencesArgsToCode, relationQueryKey, resetTableData, setQueryObjectValue, simplifyColumnDefault, testTransaction, toSql, toSqlCacheKey };
|
|
3731
|
+
export { Adapter, AdapterConfig, AdapterOptions, AddQuerySelect, AddQueryWith, AfterCallback, Aggregate, Aggregate1ArgumentTypes, AggregateArg, AggregateItem, AggregateItemArg, AggregateItemOptions, AggregateOptions, AliasOrTable, ArrayColumn, ArrayData, ArrayOfColumnsObjects, BaseRelation, BeforeCallback, BelongsToRelation, BigIntColumn, BigSerialColumn, BitColumn, BitVaryingColumn, BooleanColumn, BooleanExpression, BoxColumn, ByteaColumn, CharColumn, CidrColumn, CircleColumn, CitextColumn, Clear, ClearStatement, ColumnData, ColumnFromDbParams, ColumnInfo, ColumnInfoMethods, ColumnInfoQueryData, ColumnNameOfTable, ColumnOperators, ColumnParser, ColumnType, ColumnTypes, ColumnsObject, ColumnsParsers, ColumnsShape, CommonQueryData, CopyOptions, CopyQueryData, Create, CreateCtx, CreateData, CreateMethodsNames, CustomTypeColumn, DateBaseColumn, DateColumn, DateTimeBaseClass, DateTimeTzBaseClass, Db, DbOptions, DbResult, DbTableOptions, DecimalBaseColumn, DecimalColumn, DefaultColumnTypes, Delete, DeleteMethodsNames, DeleteQueryData, DomainColumn, DoublePrecisionColumn, DropMode, EnumColumn, Expression, ExpressionOfType, ExpressionOutput, For, ForeignKey, ForeignKeyAction, ForeignKeyMatch, ForeignKeyOptions, ForeignKeyTable, From, FromArgs, FromResult, GetArg, HasAndBelongsToManyRelation, HasManyRelation, HasOneRelation, Having, HavingArg, HavingItem, IdentityColumn, IndexColumnOptions, IndexOptions, InetColumn, InsertQueryData, IntegerBaseColumn, IntegerColumn, IntervalColumn, IsolationLevel, JSONColumn, JSONTextColumn, JSONTypes, Join, JoinArgs, JoinCallback, JoinFirstArg, JoinItem, JoinLateralCallback, JoinLateralItem, JoinLateralResult, JoinResult, JoinedParsers, JoinedShapes, Json, JsonItem, LimitedTextBaseColumn, LineColumn, LsegColumn, MacAddr8Column, MacAddrColumn, MergeQuery, MergeQueryMethods, MoneyColumn, MoreThanOneRowError, NoPrimaryKeyOption, NotFoundError, NumberAsStringBaseColumn, NumberBaseColumn, NumberColumn, NumberColumnData, NumberExpression, OnConflictItem, OnConflictMergeUpdate, OnConflictQueryBuilder, OnQueryBuilder, Operators, OrchidOrmError, OrchidOrmInternalError, OrderArg, OrderItem, PathColumn, PluckResultColumnType, PointColumn, PolygonColumn, Query, QueryArraysResult, QueryBase, QueryCallbacks, QueryData, QueryError, QueryErrorName, QueryGet, QueryLog, QueryLogObject, QueryLogOptions, QueryLogger, QueryMethods, QueryResult, QueryReturnType, QueryReturnsAll, QueryThen, QueryUpsertOrCreate, QueryWithTable, RawMethods, RealColumn, Relation, RelationQuery, RelationQueryBase, RelationQueryData, RelationsBase, Select, SelectAgg, SelectArg, SelectFunctionItem, SelectItem, SelectQueryData, Selectable, SelectableBase, SelectableFromShape, SerialColumn, SerialColumnData, SetQueryReturns, SetQueryReturnsAll, SetQueryReturnsColumnInfo, SetQueryReturnsOne, SetQueryReturnsOneOptional, SetQueryReturnsPluck, SetQueryReturnsRowCount, SetQueryReturnsRows, SetQueryReturnsValue, SetQueryReturnsValueOptional, SetQueryReturnsVoid, SetQueryTableAlias, SetQueryWindows, SetQueryWith, SimpleJoinItem, SingleColumnIndexOptions, SmallIntColumn, SmallSerialColumn, SortDir, StringColumn, StringExpression, TableData, TextBaseColumn, TextColumn, TextColumnData, Then, TimeColumn, TimeInterval, TimestampColumn, TimestampTZColumn, ToSqlCtx, ToSqlOptions, Transaction, TransactionAdapter, TransactionOptions, TruncateQueryData, TsQueryColumn, TsVectorColumn, TypeParsers, UUIDColumn, UnhandledTypeError, Union, UnionArg, UnionItem, UnionKind, UnknownColumn, Update, UpdateCtx, UpdateData, UpdateQueryData, UpdateQueryDataItem, UpdateQueryDataObject, UpdatedAtDataInjector, UpsertCreateArg, UpsertData, UpsertResult, UpsertThis, VarCharColumn, VirtualColumn, Where, WhereArg, WhereInArg, WhereInColumn, WhereInItem, WhereInValues, WhereItem, WhereJsonPathEqualsItem, WhereOnItem, WhereOnJoinItem, WhereQueryBuilder, WhereResult, WindowArg, WindowArgDeclaration, WindowDeclaration, WindowFunctionOptions, WindowItem, With, WithDataBase, WithDataItem, WithItem, WithOptions, XMLColumn, addOr, addOrNot, addParserForRawExpression, addParserForSelectItem, addParserToQuery, addQueryOn, addQueryOrOn, addWhere, addWhereIn, addWhereNot, aggregate1FunctionNames, anyShape, checkIfASimpleQuery, cloneQueryArrays, columnCheckToCode, columnCode, columnForeignKeysToCode, columnIndexesToCode, columnTypes, utils as columnUtils, columnsByType, columnsShapeToCode, constraintPropsToCode, constraintToCode, createDb, foreignKeyArgumentToCode, getClonedQueryData, getColumnTypes, getConstraintKind, getQueryAs, getRaw, getShapeFromSelect, getTableData, getValueKey, handleResult, identityToCode, indexToCode, instantiateColumn, isQueryReturnsAll, isRequiredRelationKey, jsonTypes, logColors, logParamToLogObject, makeRegexToFindInSql, makeSql, newTableData, parseRecord, parseResult, primaryKeyToCode, processSelectArg, pushQueryArray, pushQueryOn, pushQueryOrOn, pushQueryValue, queryMethodByReturnType, queryTypeWithLimitOne, quote, quoteString, referencesArgsToCode, relationQueryKey, resetTableData, setQueryObjectValue, simplifyColumnDefault, testTransaction, toSql, toSqlCacheKey };
|