pqb 0.11.5 → 0.11.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 +42 -31
- package/dist/index.js +37 -28
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +37 -28
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -288,6 +288,7 @@ declare class TransactionAdapter implements Adapter {
|
|
|
288
288
|
}
|
|
289
289
|
|
|
290
290
|
type JoinedShapes = Record<string, ColumnsShapeBase>;
|
|
291
|
+
type JoinedParsers = Record<string, ColumnsParsers>;
|
|
291
292
|
type CommonQueryData = {
|
|
292
293
|
adapter: Adapter;
|
|
293
294
|
shape: ColumnsShapeBase;
|
|
@@ -300,7 +301,7 @@ type CommonQueryData = {
|
|
|
300
301
|
with?: WithItem[];
|
|
301
302
|
withShapes?: Record<string, ColumnsShape>;
|
|
302
303
|
joinedShapes?: JoinedShapes;
|
|
303
|
-
joinedParsers?:
|
|
304
|
+
joinedParsers?: JoinedParsers;
|
|
304
305
|
schema?: string;
|
|
305
306
|
select?: SelectItem[];
|
|
306
307
|
as?: string;
|
|
@@ -648,24 +649,34 @@ type JoinWithArgs<T extends QueryBase, W extends keyof T['withData']> = [
|
|
|
648
649
|
op: string,
|
|
649
650
|
rightColumn: Selectable<T> | RawExpression
|
|
650
651
|
];
|
|
651
|
-
type JoinResult<T extends Query,
|
|
652
|
+
type JoinResult<T extends Query, RequireJoined extends boolean, RequireMain extends boolean, Arg extends JoinFirstArg<T>, J extends Pick<Query, 'result' | 'table' | 'meta'> = Arg extends Query ? Arg : T['relations'] extends Record<string, Relation> ? Arg extends keyof T['relations'] ? T['relations'][Arg]['table'] : Arg extends keyof T['withData'] ? T['withData'][Arg] extends WithDataItem ? {
|
|
652
653
|
table: T['withData'][Arg]['table'];
|
|
653
654
|
result: T['withData'][Arg]['shape'];
|
|
654
655
|
meta: EmptyObject;
|
|
655
|
-
} : never : never : never, Result extends ColumnsShape =
|
|
656
|
+
} : never : never : never, Result extends ColumnsShape = RequireJoined extends true ? J['result'] : {
|
|
656
657
|
[K in keyof J['result']]: NullableColumn<J['result'][K]>;
|
|
657
|
-
}, As extends string = AliasOrTable<J
|
|
658
|
-
[K in keyof
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
658
|
+
}, As extends string = AliasOrTable<J>, Selectable extends SelectableBase = {
|
|
659
|
+
[K in keyof Result as `${As}.${StringKey<K>}`]: {
|
|
660
|
+
as: K;
|
|
661
|
+
column: Result[K];
|
|
662
|
+
};
|
|
663
|
+
} & {
|
|
664
|
+
[K in As]: {
|
|
665
|
+
as: K;
|
|
666
|
+
column: RequireJoined extends true ? ColumnsObject<J['result']> : NullableColumn<ColumnsObject<J['result']>>;
|
|
667
|
+
};
|
|
668
|
+
}> = RequireMain extends true ? {
|
|
669
|
+
[K in keyof T]: K extends 'selectable' ? T['selectable'] & Selectable : T[K];
|
|
670
|
+
} : OptionalMain<T, Selectable>;
|
|
671
|
+
type OptionalMain<T extends Query, Selectable extends SelectableBase, Result extends ColumnsShape = {
|
|
672
|
+
[K in keyof T['result']]: NullableColumn<T['result'][K]>;
|
|
673
|
+
}> = {
|
|
674
|
+
[K in keyof T]: K extends 'selectable' ? {
|
|
675
|
+
[K in keyof T['selectable']]: {
|
|
676
|
+
as: T['selectable'][K]['as'];
|
|
677
|
+
column: NullableColumn<T['selectable'][K]['column']>;
|
|
667
678
|
};
|
|
668
|
-
} : T[K];
|
|
679
|
+
} & Selectable : K extends 'result' ? Result : K extends 'then' ? QueryThen<T['returnType'], Result> : T[K];
|
|
669
680
|
};
|
|
670
681
|
type JoinCallback<T extends QueryBase, Arg extends JoinFirstArg<T>> = (q: OnQueryBuilder<T, Arg extends keyof T['withData'] ? T['withData'][Arg] extends WithDataItem ? {
|
|
671
682
|
query: QueryData;
|
|
@@ -685,22 +696,22 @@ type JoinCallback<T extends QueryBase, Arg extends JoinFirstArg<T>> = (q: OnQuer
|
|
|
685
696
|
internal: QueryInternal;
|
|
686
697
|
} : never : Arg extends Query ? Arg : T['relations'] extends Record<string, Relation> ? Arg extends keyof T['relations'] ? T['relations'][Arg]['table'] : never : never>) => OnQueryBuilder;
|
|
687
698
|
declare class Join {
|
|
688
|
-
join<T extends Query, Arg extends JoinFirstArg<T>, Args extends JoinArgs<T, Arg>>(this: T, arg: Arg, ...args: Args): JoinResult<T, true, Arg>;
|
|
689
|
-
join<T extends Query, Arg extends JoinFirstArg<T>>(this: T, arg: Arg, cb: JoinCallback<T, Arg>): JoinResult<T, true, Arg>;
|
|
690
|
-
_join<T extends Query, Arg extends JoinFirstArg<T>, Args extends JoinArgs<T, Arg>>(this: T, arg: Arg, ...args: Args): JoinResult<T, true, Arg>;
|
|
691
|
-
_join<T extends Query, Arg extends JoinFirstArg<T>>(this: T, arg: Arg, cb: JoinCallback<T, Arg>): JoinResult<T, true, Arg>;
|
|
692
|
-
leftJoin<T extends Query, Arg extends JoinFirstArg<T>, Args extends JoinArgs<T, Arg>>(this: T, arg: Arg, ...args: Args): JoinResult<T, false, Arg>;
|
|
693
|
-
leftJoin<T extends Query, Arg extends JoinFirstArg<T>>(this: T, arg: Arg, cb: JoinCallback<T, Arg>): JoinResult<T, false, Arg>;
|
|
694
|
-
_leftJoin<T extends Query, Arg extends JoinFirstArg<T>, Args extends JoinArgs<T, Arg>>(this: T, arg: Arg, ...args: Args): JoinResult<T, false, Arg>;
|
|
695
|
-
_leftJoin<T extends Query, Arg extends JoinFirstArg<T>>(this: T, arg: Arg, cb: JoinCallback<T, Arg>): JoinResult<T, false, Arg>;
|
|
696
|
-
rightJoin<T extends Query, Arg extends JoinFirstArg<T>, Args extends JoinArgs<T, Arg>>(this: T, arg: Arg, ...args: Args): JoinResult<T, true, Arg>;
|
|
697
|
-
rightJoin<T extends Query, Arg extends JoinFirstArg<T>>(this: T, arg: Arg, cb: JoinCallback<T, Arg>): JoinResult<T, true, Arg>;
|
|
698
|
-
_rightJoin<T extends Query, Arg extends JoinFirstArg<T>, Args extends JoinArgs<T, Arg>>(this: T, arg: Arg, ...args: Args): JoinResult<T, true, Arg>;
|
|
699
|
-
_rightJoin<T extends Query, Arg extends JoinFirstArg<T>>(this: T, arg: Arg, cb: JoinCallback<T, Arg>): JoinResult<T, true, Arg>;
|
|
700
|
-
fullJoin<T extends Query, Arg extends JoinFirstArg<T>, Args extends JoinArgs<T, Arg>>(this: T, arg: Arg, ...args: Args): JoinResult<T, false, Arg>;
|
|
701
|
-
fullJoin<T extends Query, Arg extends JoinFirstArg<T>>(this: T, arg: Arg, cb: JoinCallback<T, Arg>): JoinResult<T, false, Arg>;
|
|
702
|
-
_fullJoin<T extends Query, Arg extends JoinFirstArg<T>, Args extends JoinArgs<T, Arg>>(this: T, arg: Arg, ...args: Args): JoinResult<T, false, Arg>;
|
|
703
|
-
_fullJoin<T extends Query, Arg extends JoinFirstArg<T>>(this: T, arg: Arg, cb: JoinCallback<T, Arg>): JoinResult<T, false, Arg>;
|
|
699
|
+
join<T extends Query, Arg extends JoinFirstArg<T>, Args extends JoinArgs<T, Arg>>(this: T, arg: Arg, ...args: Args): JoinResult<T, true, true, Arg>;
|
|
700
|
+
join<T extends Query, Arg extends JoinFirstArg<T>>(this: T, arg: Arg, cb: JoinCallback<T, Arg>): JoinResult<T, true, true, Arg>;
|
|
701
|
+
_join<T extends Query, Arg extends JoinFirstArg<T>, Args extends JoinArgs<T, Arg>>(this: T, arg: Arg, ...args: Args): JoinResult<T, true, true, Arg>;
|
|
702
|
+
_join<T extends Query, Arg extends JoinFirstArg<T>>(this: T, arg: Arg, cb: JoinCallback<T, Arg>): JoinResult<T, true, true, Arg>;
|
|
703
|
+
leftJoin<T extends Query, Arg extends JoinFirstArg<T>, Args extends JoinArgs<T, Arg>>(this: T, arg: Arg, ...args: Args): JoinResult<T, false, true, Arg>;
|
|
704
|
+
leftJoin<T extends Query, Arg extends JoinFirstArg<T>>(this: T, arg: Arg, cb: JoinCallback<T, Arg>): JoinResult<T, false, true, Arg>;
|
|
705
|
+
_leftJoin<T extends Query, Arg extends JoinFirstArg<T>, Args extends JoinArgs<T, Arg>>(this: T, arg: Arg, ...args: Args): JoinResult<T, false, true, Arg>;
|
|
706
|
+
_leftJoin<T extends Query, Arg extends JoinFirstArg<T>>(this: T, arg: Arg, cb: JoinCallback<T, Arg>): JoinResult<T, false, true, Arg>;
|
|
707
|
+
rightJoin<T extends Query, Arg extends JoinFirstArg<T>, Args extends JoinArgs<T, Arg>>(this: T, arg: Arg, ...args: Args): JoinResult<T, true, false, Arg>;
|
|
708
|
+
rightJoin<T extends Query, Arg extends JoinFirstArg<T>>(this: T, arg: Arg, cb: JoinCallback<T, Arg>): JoinResult<T, true, false, Arg>;
|
|
709
|
+
_rightJoin<T extends Query, Arg extends JoinFirstArg<T>, Args extends JoinArgs<T, Arg>>(this: T, arg: Arg, ...args: Args): JoinResult<T, true, false, Arg>;
|
|
710
|
+
_rightJoin<T extends Query, Arg extends JoinFirstArg<T>>(this: T, arg: Arg, cb: JoinCallback<T, Arg>): JoinResult<T, true, false, Arg>;
|
|
711
|
+
fullJoin<T extends Query, Arg extends JoinFirstArg<T>, Args extends JoinArgs<T, Arg>>(this: T, arg: Arg, ...args: Args): JoinResult<T, false, false, Arg>;
|
|
712
|
+
fullJoin<T extends Query, Arg extends JoinFirstArg<T>>(this: T, arg: Arg, cb: JoinCallback<T, Arg>): JoinResult<T, false, false, Arg>;
|
|
713
|
+
_fullJoin<T extends Query, Arg extends JoinFirstArg<T>, Args extends JoinArgs<T, Arg>>(this: T, arg: Arg, ...args: Args): JoinResult<T, false, false, Arg>;
|
|
714
|
+
_fullJoin<T extends Query, Arg extends JoinFirstArg<T>>(this: T, arg: Arg, cb: JoinCallback<T, Arg>): JoinResult<T, false, false, Arg>;
|
|
704
715
|
}
|
|
705
716
|
type OnArgs<Q extends {
|
|
706
717
|
selectable: SelectableBase;
|
|
@@ -3631,4 +3642,4 @@ declare const setQueryObjectValue: <T extends {
|
|
|
3631
3642
|
query: QueryData;
|
|
3632
3643
|
}>(q: T, object: string, key: string, value: unknown) => T;
|
|
3633
3644
|
|
|
3634
|
-
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, JoinResult, 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, 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, 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, defaultsKey, 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, toSql, toSqlCacheKey };
|
|
3645
|
+
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, 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, 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, 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, defaultsKey, 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, toSql, toSqlCacheKey };
|
package/dist/index.js
CHANGED
|
@@ -161,7 +161,7 @@ const getJoinedColumnName = (data, shape, table, key, isOwnColumn) => {
|
|
|
161
161
|
return (_c = (isOwnColumn ? shape[key] : void 0) || ((_b = (_a = data.joinedShapes) == null ? void 0 : _a[table]) == null ? void 0 : _b[key])) == null ? void 0 : _c.data.name;
|
|
162
162
|
};
|
|
163
163
|
const revealColumnToSql = (data, shape, column, quotedAs) => {
|
|
164
|
-
var _a;
|
|
164
|
+
var _a, _b;
|
|
165
165
|
const index = column.indexOf(".");
|
|
166
166
|
if (index !== -1) {
|
|
167
167
|
const table = column.slice(0, index);
|
|
@@ -170,10 +170,12 @@ const revealColumnToSql = (data, shape, column, quotedAs) => {
|
|
|
170
170
|
return `${quoted}.${q(
|
|
171
171
|
getJoinedColumnName(data, shape, table, key, quoted === quotedAs) || key
|
|
172
172
|
)}`;
|
|
173
|
+
} else if ((_a = data.joinedShapes) == null ? void 0 : _a[column]) {
|
|
174
|
+
return `row_to_json("${column}".*)`;
|
|
173
175
|
} else if (quotedAs && shape[column]) {
|
|
174
176
|
return `${quotedAs}.${q(shape[column].data.name || column)}`;
|
|
175
177
|
} else {
|
|
176
|
-
return q(((
|
|
178
|
+
return q(((_b = shape[column]) == null ? void 0 : _b.data.name) || column);
|
|
177
179
|
}
|
|
178
180
|
};
|
|
179
181
|
const revealColumnToSqlWithAs = (data, column, quotedAs) => {
|
|
@@ -3722,8 +3724,21 @@ const subQueryResult = {
|
|
|
3722
3724
|
rowCount: -1,
|
|
3723
3725
|
rows: []
|
|
3724
3726
|
};
|
|
3727
|
+
const addParsersForSelectJoined = (q, arg, as = arg) => {
|
|
3728
|
+
const parsers = q.query.joinedParsers[arg];
|
|
3729
|
+
if (parsers) {
|
|
3730
|
+
addParserToQuery(q.query, as, (item) => {
|
|
3731
|
+
subQueryResult.rows = [item];
|
|
3732
|
+
const type = q.query.returnType;
|
|
3733
|
+
q.query.returnType = "one";
|
|
3734
|
+
const res = q.query.handleResult(q, subQueryResult, true);
|
|
3735
|
+
q.query.returnType = type;
|
|
3736
|
+
return res;
|
|
3737
|
+
});
|
|
3738
|
+
}
|
|
3739
|
+
};
|
|
3725
3740
|
const addParserForSelectItem = (q, as, key, arg) => {
|
|
3726
|
-
var _a, _b, _c, _d;
|
|
3741
|
+
var _a, _b, _c, _d, _e;
|
|
3727
3742
|
if (typeof arg === "object") {
|
|
3728
3743
|
addParserForRawExpression(q, key, arg);
|
|
3729
3744
|
return arg;
|
|
@@ -3745,23 +3760,27 @@ const addParserForSelectItem = (q, as, key, arg) => {
|
|
|
3745
3760
|
}
|
|
3746
3761
|
return rel;
|
|
3747
3762
|
} else {
|
|
3748
|
-
|
|
3749
|
-
|
|
3750
|
-
|
|
3751
|
-
const
|
|
3752
|
-
if (
|
|
3753
|
-
const
|
|
3754
|
-
|
|
3755
|
-
|
|
3763
|
+
if ((_a = q.query.joinedShapes) == null ? void 0 : _a[arg]) {
|
|
3764
|
+
addParsersForSelectJoined(q, arg, key);
|
|
3765
|
+
} else {
|
|
3766
|
+
const index = arg.indexOf(".");
|
|
3767
|
+
if (index !== -1) {
|
|
3768
|
+
const table = arg.slice(0, index);
|
|
3769
|
+
const column = arg.slice(index + 1);
|
|
3770
|
+
if (table === as) {
|
|
3771
|
+
const parser = (_b = q.query.parsers) == null ? void 0 : _b[column];
|
|
3772
|
+
if (parser)
|
|
3773
|
+
addParserToQuery(q.query, key, parser);
|
|
3774
|
+
} else {
|
|
3775
|
+
const parser = (_d = (_c = q.query.joinedParsers) == null ? void 0 : _c[table]) == null ? void 0 : _d[column];
|
|
3776
|
+
if (parser)
|
|
3777
|
+
addParserToQuery(q.query, key, parser);
|
|
3778
|
+
}
|
|
3756
3779
|
} else {
|
|
3757
|
-
const parser = (
|
|
3780
|
+
const parser = (_e = q.query.parsers) == null ? void 0 : _e[arg];
|
|
3758
3781
|
if (parser)
|
|
3759
3782
|
addParserToQuery(q.query, key, parser);
|
|
3760
3783
|
}
|
|
3761
|
-
} else {
|
|
3762
|
-
const parser = (_d = q.query.parsers) == null ? void 0 : _d[arg];
|
|
3763
|
-
if (parser)
|
|
3764
|
-
addParserToQuery(q.query, key, parser);
|
|
3765
3784
|
}
|
|
3766
3785
|
return arg;
|
|
3767
3786
|
}
|
|
@@ -3773,20 +3792,10 @@ const addParserToQuery = (query, key, parser) => {
|
|
|
3773
3792
|
query.parsers = { [key]: parser };
|
|
3774
3793
|
};
|
|
3775
3794
|
const processSelectArg = (q, as, arg, columnAs) => {
|
|
3776
|
-
var _a
|
|
3795
|
+
var _a;
|
|
3777
3796
|
if (typeof arg === "string") {
|
|
3778
3797
|
if ((_a = q.query.joinedShapes) == null ? void 0 : _a[arg]) {
|
|
3779
|
-
|
|
3780
|
-
if (parsers) {
|
|
3781
|
-
addParserToQuery(q.query, arg, (item) => {
|
|
3782
|
-
subQueryResult.rows = [item];
|
|
3783
|
-
const type = q.query.returnType;
|
|
3784
|
-
q.query.returnType = "one";
|
|
3785
|
-
const res = q.query.handleResult(q, subQueryResult, true);
|
|
3786
|
-
q.query.returnType = type;
|
|
3787
|
-
return res;
|
|
3788
|
-
});
|
|
3789
|
-
}
|
|
3798
|
+
addParsersForSelectJoined(q, arg);
|
|
3790
3799
|
return arg;
|
|
3791
3800
|
} else if (q.relations[arg]) {
|
|
3792
3801
|
const rel = q.relations[arg];
|