pqb 0.38.4 → 0.38.6
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 +18 -11
- package/dist/index.js +58 -34
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +58 -35
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -2890,7 +2890,7 @@ interface DecimalColumnData extends ColumnData {
|
|
|
2890
2890
|
numericPrecision?: number;
|
|
2891
2891
|
numericScale?: number;
|
|
2892
2892
|
}
|
|
2893
|
-
declare class DecimalColumn<Schema extends ColumnSchemaConfig> extends
|
|
2893
|
+
declare class DecimalColumn<Schema extends ColumnSchemaConfig> extends NumberAsStringBaseColumn<Schema> {
|
|
2894
2894
|
data: DecimalColumnData;
|
|
2895
2895
|
operators: OperatorsNumber;
|
|
2896
2896
|
dataType: "numeric";
|
|
@@ -3604,6 +3604,7 @@ type GetArg<T extends QueryGetSelf> = GetStringArg<T> | Expression;
|
|
|
3604
3604
|
type GetStringArg<T extends PickQueryMeta> = keyof T['meta']['selectable'] & string;
|
|
3605
3605
|
type GetResult<T extends QueryGetSelf, Arg extends GetArg<T>> = Arg extends string ? SetQueryReturnsValueOrThrow<T, Arg> : Arg extends Expression ? SetQueryReturnsColumnOrThrow<T, Arg['result']['value']> : never;
|
|
3606
3606
|
type GetResultOptional<T extends QueryGetSelf, Arg extends GetArg<T>> = Arg extends string ? SetQueryReturnsValueOptional<T, Arg> : Arg extends Expression ? SetQueryReturnsColumnOptional<T, Arg['result']['value']> : never;
|
|
3607
|
+
declare const _getSelectableColumn: (q: Query, arg: string) => QueryColumn | undefined;
|
|
3607
3608
|
declare function _queryGet<T extends QueryGetSelf, Arg extends GetArg<T>>(self: T, arg: Arg): GetResult<T, Arg>;
|
|
3608
3609
|
declare function _queryGetOptional<T extends QueryGetSelf, Arg extends GetArg<T>>(self: T, arg: Arg): GetResultOptional<T, Arg>;
|
|
3609
3610
|
|
|
@@ -3612,8 +3613,11 @@ type QueryReturnsAgg<T, C, Op> = SetQueryReturnsColumnOrThrow<T, QueryColumn<C,
|
|
|
3612
3613
|
type CountReturn<T> = QueryReturnsAgg<T, number, OperatorsNumber> & {
|
|
3613
3614
|
isCount: true;
|
|
3614
3615
|
};
|
|
3615
|
-
type
|
|
3616
|
+
type NumberColumnSelectable<T extends PickQueryMeta> = {
|
|
3617
|
+
[K in keyof T['meta']['selectable']]: T['meta']['selectable'][K]['column']['type'] extends number | null ? K : T['meta']['selectable'][K]['column'] extends NumberAsStringBaseColumn<ColumnSchemaConfig> ? K : never;
|
|
3618
|
+
}[keyof T['meta']['selectable']] | Expression<QueryColumn<number | null>>;
|
|
3616
3619
|
type NumberNullable = QueryColumn<number | null, OperatorsNumber>;
|
|
3620
|
+
type NumericReturn<T extends PickQueryMeta, Arg> = Arg extends keyof T['meta']['selectable'] ? SetQueryReturnsColumnOrThrow<T, QueryColumn<T['meta']['selectable'][Arg]['column']['type'] | null, OperatorsNumber>> & OperatorsNumber : Arg extends Expression ? SetQueryReturnsColumnOrThrow<T, QueryColumn<Arg['result']['value']['type'] | null, OperatorsNumber>> & OperatorsNumber : never;
|
|
3617
3621
|
type NullableNumberReturn<T> = SetQueryReturnsColumnOrThrow<T, NumberNullable> & OperatorsNumber;
|
|
3618
3622
|
type BooleanQueryColumn = QueryColumn<boolean, OperatorsBoolean>;
|
|
3619
3623
|
type BooleanNullable = QueryColumn<boolean | null, OperatorsBoolean>;
|
|
@@ -3701,7 +3705,7 @@ declare class AggregateMethods {
|
|
|
3701
3705
|
* @param arg - numeric column or raw SQL
|
|
3702
3706
|
* @param options - aggregation options
|
|
3703
3707
|
*/
|
|
3704
|
-
min<T extends PickQueryMetaResultRelationsWindows
|
|
3708
|
+
min<T extends PickQueryMetaResultRelationsWindows, Arg extends NumberColumnSelectable<T>>(this: T, arg: Arg, options?: AggregateOptions<T>): NumericReturn<T, Arg>;
|
|
3705
3709
|
/**
|
|
3706
3710
|
* Gets the maximum value for the specified numeric column, returns number or `null` if there are no records.
|
|
3707
3711
|
*
|
|
@@ -3723,7 +3727,7 @@ declare class AggregateMethods {
|
|
|
3723
3727
|
* @param arg - numeric column or raw SQL
|
|
3724
3728
|
* @param options - aggregation options
|
|
3725
3729
|
*/
|
|
3726
|
-
max<T extends PickQueryMetaResultRelationsWindows
|
|
3730
|
+
max<T extends PickQueryMetaResultRelationsWindows, Arg extends NumberColumnSelectable<T>>(this: T, arg: Arg, options?: AggregateOptions<T>): NumericReturn<T, Arg>;
|
|
3727
3731
|
/**
|
|
3728
3732
|
* Retrieve the sum of the values of a given numeric column, returns number or `null` if there are no records.
|
|
3729
3733
|
*
|
|
@@ -3744,7 +3748,7 @@ declare class AggregateMethods {
|
|
|
3744
3748
|
* @param arg - numeric column or raw SQL
|
|
3745
3749
|
* @param options - aggregation options
|
|
3746
3750
|
*/
|
|
3747
|
-
sum<T extends PickQueryMetaResultRelationsWindows
|
|
3751
|
+
sum<T extends PickQueryMetaResultRelationsWindows, Arg extends NumberColumnSelectable<T>>(this: T, arg: Arg, options?: AggregateOptions<T>): NumericReturn<T, Arg>;
|
|
3748
3752
|
/**
|
|
3749
3753
|
* Retrieve the average value of a numeric column, it returns a number or `null` if there are no records.
|
|
3750
3754
|
*
|
|
@@ -3762,7 +3766,7 @@ declare class AggregateMethods {
|
|
|
3762
3766
|
* @param arg - numeric column or raw SQL
|
|
3763
3767
|
* @param options - aggregation options
|
|
3764
3768
|
*/
|
|
3765
|
-
avg<T extends PickQueryMetaResultRelationsWindows
|
|
3769
|
+
avg<T extends PickQueryMetaResultRelationsWindows, Arg extends NumberColumnSelectable<T>>(this: T, arg: Arg, options?: AggregateOptions<T>): NumericReturn<T, Arg>;
|
|
3766
3770
|
/**
|
|
3767
3771
|
* Bitwise `and` aggregation, returns `number` or `null` if there are no records.
|
|
3768
3772
|
*
|
|
@@ -3783,7 +3787,7 @@ declare class AggregateMethods {
|
|
|
3783
3787
|
* @param arg - numeric column or raw SQL
|
|
3784
3788
|
* @param options - aggregation options
|
|
3785
3789
|
*/
|
|
3786
|
-
bitAnd<T extends PickQueryMetaResultRelationsWindows
|
|
3790
|
+
bitAnd<T extends PickQueryMetaResultRelationsWindows, Arg extends NumberColumnSelectable<T>>(this: T, arg: Arg, options?: AggregateOptions<T>): NumericReturn<T, Arg>;
|
|
3787
3791
|
/**
|
|
3788
3792
|
* Bitwise `or` aggregation, returns `number` or `null` if there are no records.
|
|
3789
3793
|
*
|
|
@@ -3801,7 +3805,7 @@ declare class AggregateMethods {
|
|
|
3801
3805
|
* @param arg - numeric column or raw SQL
|
|
3802
3806
|
* @param options - aggregation options
|
|
3803
3807
|
*/
|
|
3804
|
-
bitOr<T extends PickQueryMetaResultRelationsWindows
|
|
3808
|
+
bitOr<T extends PickQueryMetaResultRelationsWindows, Arg extends NumberColumnSelectable<T>>(this: T, arg: Arg, options?: AggregateOptions<T>): NumericReturn<T, Arg>;
|
|
3805
3809
|
/**
|
|
3806
3810
|
* Aggregate booleans with `and` logic, it returns `boolean` or `null` if there are no records.
|
|
3807
3811
|
*
|
|
@@ -5623,8 +5627,11 @@ type UpdateRelationData<T extends UpdateSelf, Rel extends RelationConfigBase> =
|
|
|
5623
5627
|
type UpdateArg<T extends UpdateSelf> = T['meta']['hasWhere'] extends true ? UpdateData<T> : never;
|
|
5624
5628
|
type UpdateRawArgs<T extends UpdateSelf> = T['meta']['hasWhere'] extends true ? SQLQueryArgs : never;
|
|
5625
5629
|
type UpdateResult<T extends UpdateSelf> = T['meta']['hasSelect'] extends true ? SetQueryKind<T, 'update'> : SetQueryReturnsRowCount<T, 'update'>;
|
|
5626
|
-
type
|
|
5627
|
-
[K in keyof T['shape']]
|
|
5630
|
+
type NumericColumns<T extends PickQueryShape> = {
|
|
5631
|
+
[K in keyof T['shape']]: T['shape'][K]['type'] extends number | null ? K : T['shape'][K] extends NumberAsStringBaseColumn<ColumnSchemaConfig> ? K : never;
|
|
5632
|
+
}[keyof T['shape']];
|
|
5633
|
+
type ChangeCountArg<T extends PickQueryShape> = NumericColumns<T> | {
|
|
5634
|
+
[K in NumericColumns<T>]?: T['shape'][K]['type'] extends number | null ? number : string;
|
|
5628
5635
|
};
|
|
5629
5636
|
interface UpdateCtx {
|
|
5630
5637
|
queries?: ((queryResult: QueryResult) => Promise<void>)[];
|
|
@@ -8046,4 +8053,4 @@ type CopyResult<T extends PickQueryMeta> = SetQueryKind<T, 'copy'>;
|
|
|
8046
8053
|
*/
|
|
8047
8054
|
declare function copyTableData<T extends PickQueryMetaShape>(query: T, arg: CopyArg<T>): CopyResult<T>;
|
|
8048
8055
|
|
|
8049
|
-
export { Adapter, AdapterConfig, AdapterOptions, AddQueryDefaults, AfterHook, AggregateMethods, AggregateOptions, AliasOrTable, ArrayColumn, ArrayColumnValue, ArrayData, AsMethods, AsQueryArg, BigIntColumn, BigSerialColumn, BitColumn, BitVaryingColumn, BooleanColumn, BooleanQueryColumn, BoxColumn, ByteaColumn, CidrColumn, CircleColumn, CitextColumn, Clear, ClearStatement, ColumnData, ColumnFromDbParams, ColumnInfoQueryData, ColumnRefExpression, ColumnType, ColumnsByType, ColumnsShape, ColumnsShapeToNullableObject, ColumnsShapeToObject, ColumnsShapeToObjectArray, ColumnsShapeToPluck, CommonQueryData, ComputedColumn, ComputedColumns, ComputedColumnsFromOptions, ComputedMethods, ComputedOptionsFactory, CopyOptions, CopyQueryData, Create, CreateBelongsToData, CreateColumn, CreateCtx, CreateData, CreateKind, CreateMethodsNames, CreateRelationsData, CreateRelationsDataOmittingFKeys, CreateResult, CreateSelf, CustomTypeColumn, DateBaseColumn, DateColumn, DateColumnInput, DateTimeBaseClass, DateTimeTzBaseClass, Db, DbDomainArg, DbDomainArgRecord, DbExtension, DbOptions, DbResult, DbSharedOptions, DbTableConstructor, DbTableOptionScopes, DbTableOptions, DecimalColumn, DecimalColumnData, DefaultColumnTypes, DefaultSchemaConfig, Delete, DeleteArgs, DeleteMethodsNames, DeleteQueryData, DeleteResult, DomainColumn, DoublePrecisionColumn, DynamicRawSQL, EnumColumn, ExpressionMethods, ExpressionOutput, FnExpression, FnExpressionArgs, FnExpressionArgsPairs, FnExpressionArgsValue, For, FromArg, FromMethods, FromQuerySelf, FromResult, GetArg, GetColumnInfo, GetQueryResult, GetResult, GetResultOptional, GetStringArg, GroupArgs, HandleResult, Having, HavingItem, HookAction, HookSelectArg, IdentityColumn, InetColumn, InsertQueryData, IntegerBaseColumn, IntegerColumn, IntervalColumn, IsolationLevel, JSONColumn, JSONTextColumn, Join, JoinArgToQuery, JoinArgs, JoinCallback, JoinFirstArg, JoinItem, JoinItemArgs, JoinLateralItem, JoinLateralResult, JoinOverrides, JoinQueryBuilder, JoinQueryMethod, JoinResult, JoinedParsers, JoinedShapes, JsonMethods, LimitedTextBaseColumn, LineColumn, LsegColumn, MacAddr8Column, MacAddrColumn, MapTableScopesOption, MergeQuery, MergeQueryMethods, MoneyColumn, MoreThanOneRowError, NoPrimaryKeyOption, NotFoundError, NumberAsStringBaseColumn, NumberBaseColumn, NumberColumnData, OnConflictMerge, OnConflictQueryBuilder, OnConflictSet, OnConflictTarget, OnMethods, Operator, Operators, OperatorsAny, OperatorsArray, OperatorsBoolean, OperatorsDate, OperatorsJson, OperatorsNumber, OperatorsText, OperatorsTime, OrCreateArg, OrExpression, OrchidOrmError, OrchidOrmInternalError, OrderArg, OrderArgSelf, OrderArgs, OrderItem, OrderTsQueryConfig, Over, PathColumn, PickColumnData, PickQueryBaseQuery, PickQueryColumnTypes, PickQueryDataShapeAndJoinedShapes, PickQueryInternal, PickQueryMetaRelations, PickQueryMetaResultRelations, PickQueryMetaResultRelationsWindows, PickQueryMetaResultRelationsWindowsColumnTypes, PickQueryMetaResultRelationsWithDataReturnType, PickQueryMetaResultRelationsWithDataReturnTypeShape, PickQueryMetaResultReturnTypeWithDataWindows, PickQueryMetaResultReturnTypeWithDataWindowsTable, PickQueryMetaShapeRelationsWithData, PickQueryMetaTable, PickQueryMetaTableShape, PickQueryMetaTableShapeReturnTypeWithData, PickQueryMetaWithData, PickQueryMetaWithDataColumnTypes, PickQueryQ, PickQueryQAndBaseQuery, PickQueryQAndInternal, PickQueryRelations, PickQueryRelationsWithData, PickQueryResultColumnTypes, PickQueryShapeResultSinglePrimaryKey, PickQueryShapeSinglePrimaryKey, PickQuerySinglePrimaryKey, PickQueryWindows, PickQueryWithData, PickQueryWithDataColumnTypes, PointColumn, PolygonColumn, Query, QueryAfterHook, QueryArraysResult, QueryBase, QueryBaseThen, QueryBatchResult, QueryBeforeHook, QueryComputedArg, QueryData, QueryDataFromItem, QueryDataJoinTo, QueryDefaultReturnData, QueryError, QueryErrorName, QueryGet, QueryGetSelf, QueryHelperResult, QueryHooks, QueryInternal, QueryLog, QueryMetaHasSelect, QueryMetaHasWhere, QueryMethods, QueryOrExpression, QueryOrExpressionBooleanOrNullResult, QueryResult, QueryScopeData, QueryScopes, QuerySourceItem, QueryUpsertOrCreate, QueryWithTable, RawSQL, RealColumn, RecordOfColumnsShapeBase, RefExpression, RelationConfigBase, RelationConfigDataForCreate, RelationJoinQuery, RelationQuery, RelationQueryBase, RelationsBase, RuntimeComputedQueryColumn, SearchArg, SearchMethods, SearchWeight, SearchWeightRecord, Select, SelectArg, SelectArgs, SelectAs, SelectAsValue, SelectItem, SelectQueryData, SelectSubQueryResult, SelectableFromShape, SelectableOfType, SelectableOrExpression, SelectableOrExpressionOfType, SelectableOrExpressions, SerialColumn, SerialColumnData, SetQueryKind, SetQueryKindResult, SetQueryReturnsAll, SetQueryReturnsAllKind, SetQueryReturnsAllKindResult, SetQueryReturnsColumnInfo, SetQueryReturnsColumnKind, SetQueryReturnsColumnKindResult, SetQueryReturnsColumnOptional, SetQueryReturnsColumnOrThrow, SetQueryReturnsOne, SetQueryReturnsOneKind, SetQueryReturnsOneKindResult, SetQueryReturnsOneOptional, SetQueryReturnsPluck, SetQueryReturnsPluckColumn, SetQueryReturnsPluckColumnKind, SetQueryReturnsPluckColumnKindResult, SetQueryReturnsRowCount, SetQueryReturnsRows, SetQueryReturnsValueOptional, SetQueryReturnsValueOrThrow, SetQueryReturnsVoid, SetQueryReturnsVoidKind, SetQueryTableAlias, ShapeColumnPrimaryKeys, ShapeUniqueColumns, SimpleJoinItem, SimpleJoinItemNonSubQueryArgs, SmallIntColumn, SmallSerialColumn, SortDir, SqlFn, SqlMethod, StringColumn$1 as StringColumn, TableData, TableDataFn, TableDataInput, TableDataItem, TableDataItemsUniqueColumnTuples, TableDataItemsUniqueColumns, TableDataItemsUniqueConstraints, TableDataMethods, TextBaseColumn, TextColumn, TextColumnData, Then, TimeColumn, TimestampColumn, TimestampTZColumn, ToSQLCtx, ToSQLOptions, ToSQLQuery, Transaction, TransactionAdapter, TransactionOptions, TransformMethods, TruncateQueryData, TsQueryColumn, TsVectorColumn, TypeParsers, UUIDColumn, UnhandledTypeError, Union, UnionArgs, UnionItem, UnionKind, UnionSet, UniqueConstraints, UniqueQueryTypeOrExpression, UniqueTableDataItem, UnknownColumn, Update, UpdateArg, UpdateCtx, UpdateCtxCollect, UpdateData, UpdateQueryData, UpdateQueryDataItem, UpdateQueryDataObject, UpdateSelf, UpdatedAtDataInjector, UpsertResult, UpsertThis, VarCharColumn, VirtualColumn, Where, WhereArg, WhereArgs, WhereInArg, WhereInColumn, WhereInItem, WhereInValues, WhereItem, WhereJsonPathEqualsItem, WhereNotArgs, WhereOnItem, WhereOnJoinItem, WhereQueryBuilder, WhereResult, WhereSearchItem, WhereSearchResult, WindowArg, WindowArgDeclaration, WindowDeclaration, WindowItem, WithArgsOptions, WithConfigs, WithDataItem, WithDataItems, WithItem, WithMethods, WithOptions, WithQueryBuilder, WithRecursiveOptions, WithResult, WithSqlResult, WrapQueryArg, XMLColumn, _initQueryBuilder, _queryAfterSaveCommit, _queryAll, _queryAs, _queryChangeCounter, _queryCreate, _queryCreateFrom, _queryCreateMany, _queryCreateManyFrom, _queryCreateManyRaw, _queryCreateRaw, _queryDefaults, _queryDelete, _queryExec, _queryFindBy, _queryFindByOptional, _queryGet, _queryGetOptional, _queryHookAfterCreate, _queryHookAfterCreateCommit, _queryHookAfterDelete, _queryHookAfterDeleteCommit, _queryHookAfterQuery, _queryHookAfterSave, _queryHookAfterUpdate, _queryHookAfterUpdateCommit, _queryHookBeforeCreate, _queryHookBeforeDelete, _queryHookBeforeQuery, _queryHookBeforeSave, _queryHookBeforeUpdate, _queryInsert, _queryInsertFrom, _queryInsertMany, _queryInsertManyFrom, _queryInsertManyRaw, _queryInsertRaw, _queryJoinOn, _queryJoinOnJsonPathEquals, _queryJoinOrOn, _queryOr, _queryOrNot, _queryRows, _querySelect, _queryTake, _queryTakeOptional, _queryUnion, _queryUpdate, _queryUpdateOrThrow, _queryUpdateRaw, _queryWhere, _queryWhereExists, _queryWhereIn, _queryWhereNot, _queryWhereNotOneOf, _queryWhereNotSql, _queryWhereOneOf, _queryWhereSql, addParserForRawExpression, addParserForSelectItem, addQueryOn, anyShape, applyComputedColumns, checkIfASimpleQuery, cloneQuery, cloneQueryBaseUnscoped, columnCheckToCode, columnCode, columnForeignKeysToCode, columnIndexesToCode, columnsShapeToCode, commitSql, constraintInnerToCode, constraintToCode, copyTableData, countSelect, createDb, defaultSchemaConfig, extendQuery, filterResult, foreignKeyArgumentToCode, getClonedQueryData, getColumnInfo, getColumnTypes, getPrimaryKeys, getQueryAs, getShapeFromSelect, getSqlText, handleResult, identityToCode, indexInnerToCode, indexToCode, instantiateColumn, isDefaultTimeStamp, isQueryReturnsAll, isSelectingCount, joinSubQuery, logParamToLogObject, makeColumnTypes, makeColumnsByType, makeFnExpression, makeRegexToFindInSql, makeSQL, parseRecord, parseTableData, parseTableDataInput, primaryKeyInnerToCode, processComputedBatches, processComputedResult, processSelectArg, pushLimitSQL, pushQueryArray, pushQueryOn, pushQueryOnForOuter, pushQueryOrOn, pushQueryValue, pushTableDataCode, queryFrom, queryFromSql, queryJson, queryMethodByReturnType, queryTypeWithLimitOne, queryWrap, quote, quoteString, raw, referencesArgsToCode, resolveSubQueryCallback, rollbackSql, saveSearchAlias, setParserForSelectedString, setQueryObjectValue, setQueryOperators, simplifyColumnDefault, sqlFn, sqlQueryArgsToExpression, tableDataMethods, templateLiteralToSQL, testTransaction, throwIfNoWhere, toSQL, toSQLCacheKey };
|
|
8056
|
+
export { Adapter, AdapterConfig, AdapterOptions, AddQueryDefaults, AfterHook, AggregateMethods, AggregateOptions, AliasOrTable, ArrayColumn, ArrayColumnValue, ArrayData, AsMethods, AsQueryArg, BigIntColumn, BigSerialColumn, BitColumn, BitVaryingColumn, BooleanColumn, BooleanQueryColumn, BoxColumn, ByteaColumn, ChangeCountArg, CidrColumn, CircleColumn, CitextColumn, Clear, ClearStatement, ColumnData, ColumnFromDbParams, ColumnInfoQueryData, ColumnRefExpression, ColumnType, ColumnsByType, ColumnsShape, ColumnsShapeToNullableObject, ColumnsShapeToObject, ColumnsShapeToObjectArray, ColumnsShapeToPluck, CommonQueryData, ComputedColumn, ComputedColumns, ComputedColumnsFromOptions, ComputedMethods, ComputedOptionsFactory, CopyOptions, CopyQueryData, Create, CreateBelongsToData, CreateColumn, CreateCtx, CreateData, CreateKind, CreateMethodsNames, CreateRelationsData, CreateRelationsDataOmittingFKeys, CreateResult, CreateSelf, CustomTypeColumn, DateBaseColumn, DateColumn, DateColumnInput, DateTimeBaseClass, DateTimeTzBaseClass, Db, DbDomainArg, DbDomainArgRecord, DbExtension, DbOptions, DbResult, DbSharedOptions, DbTableConstructor, DbTableOptionScopes, DbTableOptions, DecimalColumn, DecimalColumnData, DefaultColumnTypes, DefaultSchemaConfig, Delete, DeleteArgs, DeleteMethodsNames, DeleteQueryData, DeleteResult, DomainColumn, DoublePrecisionColumn, DynamicRawSQL, EnumColumn, ExpressionMethods, ExpressionOutput, FnExpression, FnExpressionArgs, FnExpressionArgsPairs, FnExpressionArgsValue, For, FromArg, FromMethods, FromQuerySelf, FromResult, GetArg, GetColumnInfo, GetQueryResult, GetResult, GetResultOptional, GetStringArg, GroupArgs, HandleResult, Having, HavingItem, HookAction, HookSelectArg, IdentityColumn, InetColumn, InsertQueryData, IntegerBaseColumn, IntegerColumn, IntervalColumn, IsolationLevel, JSONColumn, JSONTextColumn, Join, JoinArgToQuery, JoinArgs, JoinCallback, JoinFirstArg, JoinItem, JoinItemArgs, JoinLateralItem, JoinLateralResult, JoinOverrides, JoinQueryBuilder, JoinQueryMethod, JoinResult, JoinedParsers, JoinedShapes, JsonMethods, LimitedTextBaseColumn, LineColumn, LsegColumn, MacAddr8Column, MacAddrColumn, MapTableScopesOption, MergeQuery, MergeQueryMethods, MoneyColumn, MoreThanOneRowError, NoPrimaryKeyOption, NotFoundError, NumberAsStringBaseColumn, NumberBaseColumn, NumberColumnData, NumericColumns, OnConflictMerge, OnConflictQueryBuilder, OnConflictSet, OnConflictTarget, OnMethods, Operator, Operators, OperatorsAny, OperatorsArray, OperatorsBoolean, OperatorsDate, OperatorsJson, OperatorsNumber, OperatorsText, OperatorsTime, OrCreateArg, OrExpression, OrchidOrmError, OrchidOrmInternalError, OrderArg, OrderArgSelf, OrderArgs, OrderItem, OrderTsQueryConfig, Over, PathColumn, PickColumnData, PickQueryBaseQuery, PickQueryColumnTypes, PickQueryDataShapeAndJoinedShapes, PickQueryInternal, PickQueryMetaRelations, PickQueryMetaResultRelations, PickQueryMetaResultRelationsWindows, PickQueryMetaResultRelationsWindowsColumnTypes, PickQueryMetaResultRelationsWithDataReturnType, PickQueryMetaResultRelationsWithDataReturnTypeShape, PickQueryMetaResultReturnTypeWithDataWindows, PickQueryMetaResultReturnTypeWithDataWindowsTable, PickQueryMetaShapeRelationsWithData, PickQueryMetaTable, PickQueryMetaTableShape, PickQueryMetaTableShapeReturnTypeWithData, PickQueryMetaWithData, PickQueryMetaWithDataColumnTypes, PickQueryQ, PickQueryQAndBaseQuery, PickQueryQAndInternal, PickQueryRelations, PickQueryRelationsWithData, PickQueryResultColumnTypes, PickQueryShapeResultSinglePrimaryKey, PickQueryShapeSinglePrimaryKey, PickQuerySinglePrimaryKey, PickQueryWindows, PickQueryWithData, PickQueryWithDataColumnTypes, PointColumn, PolygonColumn, Query, QueryAfterHook, QueryArraysResult, QueryBase, QueryBaseThen, QueryBatchResult, QueryBeforeHook, QueryComputedArg, QueryData, QueryDataFromItem, QueryDataJoinTo, QueryDefaultReturnData, QueryError, QueryErrorName, QueryGet, QueryGetSelf, QueryHelperResult, QueryHooks, QueryInternal, QueryLog, QueryMetaHasSelect, QueryMetaHasWhere, QueryMethods, QueryOrExpression, QueryOrExpressionBooleanOrNullResult, QueryResult, QueryScopeData, QueryScopes, QuerySourceItem, QueryUpsertOrCreate, QueryWithTable, RawSQL, RealColumn, RecordOfColumnsShapeBase, RefExpression, RelationConfigBase, RelationConfigDataForCreate, RelationJoinQuery, RelationQuery, RelationQueryBase, RelationsBase, RuntimeComputedQueryColumn, SearchArg, SearchMethods, SearchWeight, SearchWeightRecord, Select, SelectArg, SelectArgs, SelectAs, SelectAsValue, SelectItem, SelectQueryData, SelectSubQueryResult, SelectableFromShape, SelectableOfType, SelectableOrExpression, SelectableOrExpressionOfType, SelectableOrExpressions, SerialColumn, SerialColumnData, SetQueryKind, SetQueryKindResult, SetQueryReturnsAll, SetQueryReturnsAllKind, SetQueryReturnsAllKindResult, SetQueryReturnsColumnInfo, SetQueryReturnsColumnKind, SetQueryReturnsColumnKindResult, SetQueryReturnsColumnOptional, SetQueryReturnsColumnOrThrow, SetQueryReturnsOne, SetQueryReturnsOneKind, SetQueryReturnsOneKindResult, SetQueryReturnsOneOptional, SetQueryReturnsPluck, SetQueryReturnsPluckColumn, SetQueryReturnsPluckColumnKind, SetQueryReturnsPluckColumnKindResult, SetQueryReturnsRowCount, SetQueryReturnsRows, SetQueryReturnsValueOptional, SetQueryReturnsValueOrThrow, SetQueryReturnsVoid, SetQueryReturnsVoidKind, SetQueryTableAlias, ShapeColumnPrimaryKeys, ShapeUniqueColumns, SimpleJoinItem, SimpleJoinItemNonSubQueryArgs, SmallIntColumn, SmallSerialColumn, SortDir, SqlFn, SqlMethod, StringColumn$1 as StringColumn, TableData, TableDataFn, TableDataInput, TableDataItem, TableDataItemsUniqueColumnTuples, TableDataItemsUniqueColumns, TableDataItemsUniqueConstraints, TableDataMethods, TextBaseColumn, TextColumn, TextColumnData, Then, TimeColumn, TimestampColumn, TimestampTZColumn, ToSQLCtx, ToSQLOptions, ToSQLQuery, Transaction, TransactionAdapter, TransactionOptions, TransformMethods, TruncateQueryData, TsQueryColumn, TsVectorColumn, TypeParsers, UUIDColumn, UnhandledTypeError, Union, UnionArgs, UnionItem, UnionKind, UnionSet, UniqueConstraints, UniqueQueryTypeOrExpression, UniqueTableDataItem, UnknownColumn, Update, UpdateArg, UpdateCtx, UpdateCtxCollect, UpdateData, UpdateQueryData, UpdateQueryDataItem, UpdateQueryDataObject, UpdateSelf, UpdatedAtDataInjector, UpsertResult, UpsertThis, VarCharColumn, VirtualColumn, Where, WhereArg, WhereArgs, WhereInArg, WhereInColumn, WhereInItem, WhereInValues, WhereItem, WhereJsonPathEqualsItem, WhereNotArgs, WhereOnItem, WhereOnJoinItem, WhereQueryBuilder, WhereResult, WhereSearchItem, WhereSearchResult, WindowArg, WindowArgDeclaration, WindowDeclaration, WindowItem, WithArgsOptions, WithConfigs, WithDataItem, WithDataItems, WithItem, WithMethods, WithOptions, WithQueryBuilder, WithRecursiveOptions, WithResult, WithSqlResult, WrapQueryArg, XMLColumn, _getSelectableColumn, _initQueryBuilder, _queryAfterSaveCommit, _queryAll, _queryAs, _queryChangeCounter, _queryCreate, _queryCreateFrom, _queryCreateMany, _queryCreateManyFrom, _queryCreateManyRaw, _queryCreateRaw, _queryDefaults, _queryDelete, _queryExec, _queryFindBy, _queryFindByOptional, _queryGet, _queryGetOptional, _queryHookAfterCreate, _queryHookAfterCreateCommit, _queryHookAfterDelete, _queryHookAfterDeleteCommit, _queryHookAfterQuery, _queryHookAfterSave, _queryHookAfterUpdate, _queryHookAfterUpdateCommit, _queryHookBeforeCreate, _queryHookBeforeDelete, _queryHookBeforeQuery, _queryHookBeforeSave, _queryHookBeforeUpdate, _queryInsert, _queryInsertFrom, _queryInsertMany, _queryInsertManyFrom, _queryInsertManyRaw, _queryInsertRaw, _queryJoinOn, _queryJoinOnJsonPathEquals, _queryJoinOrOn, _queryOr, _queryOrNot, _queryRows, _querySelect, _queryTake, _queryTakeOptional, _queryUnion, _queryUpdate, _queryUpdateOrThrow, _queryUpdateRaw, _queryWhere, _queryWhereExists, _queryWhereIn, _queryWhereNot, _queryWhereNotOneOf, _queryWhereNotSql, _queryWhereOneOf, _queryWhereSql, addParserForRawExpression, addParserForSelectItem, addQueryOn, anyShape, applyComputedColumns, checkIfASimpleQuery, cloneQuery, cloneQueryBaseUnscoped, columnCheckToCode, columnCode, columnForeignKeysToCode, columnIndexesToCode, columnsShapeToCode, commitSql, constraintInnerToCode, constraintToCode, copyTableData, countSelect, createDb, defaultSchemaConfig, extendQuery, filterResult, foreignKeyArgumentToCode, getClonedQueryData, getColumnInfo, getColumnTypes, getPrimaryKeys, getQueryAs, getShapeFromSelect, getSqlText, handleResult, identityToCode, indexInnerToCode, indexToCode, instantiateColumn, isDefaultTimeStamp, isQueryReturnsAll, isSelectingCount, joinSubQuery, logParamToLogObject, makeColumnTypes, makeColumnsByType, makeFnExpression, makeRegexToFindInSql, makeSQL, parseRecord, parseTableData, parseTableDataInput, primaryKeyInnerToCode, processComputedBatches, processComputedResult, processSelectArg, pushLimitSQL, pushQueryArray, pushQueryOn, pushQueryOnForOuter, pushQueryOrOn, pushQueryValue, pushTableDataCode, queryFrom, queryFromSql, queryJson, queryMethodByReturnType, queryTypeWithLimitOne, queryWrap, quote, quoteString, raw, referencesArgsToCode, resolveSubQueryCallback, rollbackSql, saveSearchAlias, setParserForSelectedString, setQueryObjectValue, setQueryOperators, simplifyColumnDefault, sqlFn, sqlQueryArgsToExpression, tableDataMethods, templateLiteralToSQL, testTransaction, throwIfNoWhere, toSQL, toSQLCacheKey };
|
package/dist/index.js
CHANGED
|
@@ -1097,9 +1097,9 @@ class NumberAsStringBaseColumn extends ColumnType {
|
|
|
1097
1097
|
this.operators = Operators.number;
|
|
1098
1098
|
}
|
|
1099
1099
|
}
|
|
1100
|
-
class DecimalColumn extends
|
|
1100
|
+
class DecimalColumn extends NumberAsStringBaseColumn {
|
|
1101
1101
|
constructor(schema, numericPrecision, numericScale) {
|
|
1102
|
-
super(schema
|
|
1102
|
+
super(schema);
|
|
1103
1103
|
this.operators = Operators.number;
|
|
1104
1104
|
this.dataType = "numeric";
|
|
1105
1105
|
this.data.numericPrecision = numericPrecision;
|
|
@@ -3278,18 +3278,7 @@ class Transaction {
|
|
|
3278
3278
|
const result = await this.q.adapter.transaction(sql, callback);
|
|
3279
3279
|
if (log)
|
|
3280
3280
|
log.afterQuery(commitSql$1, logData);
|
|
3281
|
-
|
|
3282
|
-
if (afterCommit) {
|
|
3283
|
-
const promises = [];
|
|
3284
|
-
for (let i = 0, len = afterCommit.length; i < len; i += 2) {
|
|
3285
|
-
const q = afterCommit[i];
|
|
3286
|
-
const result2 = afterCommit[i + 1];
|
|
3287
|
-
for (const fn2 of afterCommit[i + 2]) {
|
|
3288
|
-
promises.push(fn2(result2, q));
|
|
3289
|
-
}
|
|
3290
|
-
}
|
|
3291
|
-
await Promise.all(promises);
|
|
3292
|
-
}
|
|
3281
|
+
await runAfterCommit(trx.afterCommit);
|
|
3293
3282
|
return result;
|
|
3294
3283
|
} catch (err) {
|
|
3295
3284
|
if (log)
|
|
@@ -3321,6 +3310,11 @@ class Transaction {
|
|
|
3321
3310
|
await adapter.query(sql);
|
|
3322
3311
|
if (log)
|
|
3323
3312
|
log.afterQuery(sql, logData);
|
|
3313
|
+
if (transactionId === trx.testTransactionCount) {
|
|
3314
|
+
await runAfterCommit(
|
|
3315
|
+
trx.afterCommit
|
|
3316
|
+
);
|
|
3317
|
+
}
|
|
3324
3318
|
return result;
|
|
3325
3319
|
} finally {
|
|
3326
3320
|
trx.transactionId = transactionId - 1;
|
|
@@ -3328,6 +3322,19 @@ class Transaction {
|
|
|
3328
3322
|
}
|
|
3329
3323
|
}
|
|
3330
3324
|
}
|
|
3325
|
+
const runAfterCommit = async (afterCommit) => {
|
|
3326
|
+
if (afterCommit) {
|
|
3327
|
+
const promises = [];
|
|
3328
|
+
for (let i = 0, len = afterCommit.length; i < len; i += 3) {
|
|
3329
|
+
const result = afterCommit[i];
|
|
3330
|
+
const q = afterCommit[i + 1];
|
|
3331
|
+
for (const fn of afterCommit[i + 2]) {
|
|
3332
|
+
promises.push(fn(result, q));
|
|
3333
|
+
}
|
|
3334
|
+
}
|
|
3335
|
+
await Promise.all(promises);
|
|
3336
|
+
}
|
|
3337
|
+
};
|
|
3331
3338
|
|
|
3332
3339
|
const applyBatchTransforms = (query, batches) => {
|
|
3333
3340
|
if (query.transform) {
|
|
@@ -4564,25 +4571,29 @@ class SelectItemExpression extends orchidCore.Expression {
|
|
|
4564
4571
|
}
|
|
4565
4572
|
}
|
|
4566
4573
|
|
|
4567
|
-
const
|
|
4574
|
+
const _getSelectableColumn = (q, arg) => {
|
|
4568
4575
|
var _a, _b;
|
|
4576
|
+
let type = q.q.shape[arg];
|
|
4577
|
+
if (!type) {
|
|
4578
|
+
const index = arg.indexOf(".");
|
|
4579
|
+
if (index !== -1) {
|
|
4580
|
+
const table = arg.slice(0, index);
|
|
4581
|
+
const column = arg.slice(index + 1);
|
|
4582
|
+
if (table === (q.q.as || q.table)) {
|
|
4583
|
+
type = q.shape[column];
|
|
4584
|
+
} else {
|
|
4585
|
+
type = (_b = (_a = q.q.joinedShapes) == null ? void 0 : _a[table]) == null ? void 0 : _b[column];
|
|
4586
|
+
}
|
|
4587
|
+
}
|
|
4588
|
+
}
|
|
4589
|
+
return type;
|
|
4590
|
+
};
|
|
4591
|
+
const _get = (query, returnType, arg) => {
|
|
4569
4592
|
const q = query.q;
|
|
4570
4593
|
q.returnType = returnType;
|
|
4571
4594
|
let type;
|
|
4572
4595
|
if (typeof arg === "string") {
|
|
4573
|
-
type =
|
|
4574
|
-
if (!type) {
|
|
4575
|
-
const index = arg.indexOf(".");
|
|
4576
|
-
if (index !== -1) {
|
|
4577
|
-
const table = arg.slice(0, index);
|
|
4578
|
-
const column = arg.slice(index + 1);
|
|
4579
|
-
if (table === (q.as || query.table)) {
|
|
4580
|
-
type = q.shape[column];
|
|
4581
|
-
} else {
|
|
4582
|
-
type = (_b = (_a = q.joinedShapes) == null ? void 0 : _a[table]) == null ? void 0 : _b[column];
|
|
4583
|
-
}
|
|
4584
|
-
}
|
|
4585
|
-
}
|
|
4596
|
+
type = _getSelectableColumn(query, arg);
|
|
4586
4597
|
q.getColumn = type;
|
|
4587
4598
|
const selected = setParserForSelectedString(
|
|
4588
4599
|
query,
|
|
@@ -6545,6 +6556,13 @@ const nullableInt = new IntegerColumn(defaultSchemaConfig);
|
|
|
6545
6556
|
nullableInt.parseItem = nullableInt.parseFn = (input) => input === null ? null : parseInt(input);
|
|
6546
6557
|
const nullableFloat = new RealColumn(defaultSchemaConfig);
|
|
6547
6558
|
nullableFloat.parseItem = nullableFloat.parseFn = (input) => input === null ? null : parseFloat(input);
|
|
6559
|
+
const stringAsNumber = new NumberAsStringBaseColumn(
|
|
6560
|
+
defaultSchemaConfig
|
|
6561
|
+
);
|
|
6562
|
+
const numericResultColumn = (q, arg) => {
|
|
6563
|
+
const type = typeof arg === "string" ? _getSelectableColumn(q, arg) : arg.result.value;
|
|
6564
|
+
return type instanceof NumberBaseColumn ? nullableFloat : stringAsNumber;
|
|
6565
|
+
};
|
|
6548
6566
|
class AggregateMethods {
|
|
6549
6567
|
/**
|
|
6550
6568
|
* Use `exists()` to check if there is at least one record-matching condition.
|
|
@@ -6615,7 +6633,7 @@ class AggregateMethods {
|
|
|
6615
6633
|
min(arg, options) {
|
|
6616
6634
|
return makeFnExpression(
|
|
6617
6635
|
this,
|
|
6618
|
-
|
|
6636
|
+
numericResultColumn(this, arg),
|
|
6619
6637
|
"min",
|
|
6620
6638
|
[arg],
|
|
6621
6639
|
options
|
|
@@ -6645,7 +6663,7 @@ class AggregateMethods {
|
|
|
6645
6663
|
max(arg, options) {
|
|
6646
6664
|
return makeFnExpression(
|
|
6647
6665
|
this,
|
|
6648
|
-
|
|
6666
|
+
numericResultColumn(this, arg),
|
|
6649
6667
|
"max",
|
|
6650
6668
|
[arg],
|
|
6651
6669
|
options
|
|
@@ -6674,7 +6692,7 @@ class AggregateMethods {
|
|
|
6674
6692
|
sum(arg, options) {
|
|
6675
6693
|
return makeFnExpression(
|
|
6676
6694
|
this,
|
|
6677
|
-
|
|
6695
|
+
numericResultColumn(this, arg),
|
|
6678
6696
|
"sum",
|
|
6679
6697
|
[arg],
|
|
6680
6698
|
options
|
|
@@ -6700,7 +6718,7 @@ class AggregateMethods {
|
|
|
6700
6718
|
avg(arg, options) {
|
|
6701
6719
|
return makeFnExpression(
|
|
6702
6720
|
this,
|
|
6703
|
-
|
|
6721
|
+
numericResultColumn(this, arg),
|
|
6704
6722
|
"avg",
|
|
6705
6723
|
[arg],
|
|
6706
6724
|
options
|
|
@@ -6729,7 +6747,7 @@ class AggregateMethods {
|
|
|
6729
6747
|
bitAnd(arg, options) {
|
|
6730
6748
|
return makeFnExpression(
|
|
6731
6749
|
this,
|
|
6732
|
-
|
|
6750
|
+
numericResultColumn(this, arg),
|
|
6733
6751
|
"bit_and",
|
|
6734
6752
|
[arg],
|
|
6735
6753
|
options
|
|
@@ -6755,7 +6773,7 @@ class AggregateMethods {
|
|
|
6755
6773
|
bitOr(arg, options) {
|
|
6756
6774
|
return makeFnExpression(
|
|
6757
6775
|
this,
|
|
6758
|
-
|
|
6776
|
+
numericResultColumn(this, arg),
|
|
6759
6777
|
"bit_or",
|
|
6760
6778
|
[arg],
|
|
6761
6779
|
options
|
|
@@ -12704,6 +12722,7 @@ const testTransaction = {
|
|
|
12704
12722
|
adapter.query = t.query.bind(t);
|
|
12705
12723
|
adapter.arrays = t.arrays.bind(t);
|
|
12706
12724
|
adapter.transaction = t.transaction.bind(t);
|
|
12725
|
+
trx.testTransactionCount = trx.testTransactionCount ? trx.testTransactionCount + 1 : 1;
|
|
12707
12726
|
}
|
|
12708
12727
|
data.reject = rej;
|
|
12709
12728
|
});
|
|
@@ -12712,6 +12731,10 @@ const testTransaction = {
|
|
|
12712
12731
|
throw err;
|
|
12713
12732
|
}
|
|
12714
12733
|
}).finally(() => {
|
|
12734
|
+
const trx = db.internal.transactionStorage.getStore();
|
|
12735
|
+
if (trx == null ? void 0 : trx.testTransactionCount) {
|
|
12736
|
+
trx.testTransactionCount--;
|
|
12737
|
+
}
|
|
12715
12738
|
db.internal.transactionStorage.getStore = getStore;
|
|
12716
12739
|
});
|
|
12717
12740
|
});
|
|
@@ -12891,6 +12914,7 @@ exports.VirtualColumn = VirtualColumn;
|
|
|
12891
12914
|
exports.Where = Where;
|
|
12892
12915
|
exports.WithMethods = WithMethods;
|
|
12893
12916
|
exports.XMLColumn = XMLColumn;
|
|
12917
|
+
exports._getSelectableColumn = _getSelectableColumn;
|
|
12894
12918
|
exports._initQueryBuilder = _initQueryBuilder;
|
|
12895
12919
|
exports._queryAfterSaveCommit = _queryAfterSaveCommit;
|
|
12896
12920
|
exports._queryAll = _queryAll;
|