@antelaca/querybuilder
Advanced tools
Comparing version 1.1.3 to 1.1.4
@@ -1,10 +0,6 @@ | ||
import QueryBuilder from '../query/QueryBuilder'; | ||
import { DatabaseConfig } from '../../types'; | ||
import { DatabaseConfig, QueryBuilder } from '../../types'; | ||
export default class Database { | ||
#private; | ||
constructor(config: DatabaseConfig); | ||
table(table: string): QueryBuilder & { | ||
get: () => Promise<void>; | ||
getAll: () => Promise<void>; | ||
}; | ||
table(table: string): QueryBuilder; | ||
query(sql: string, args?: (string | number)[]): Promise<void>; | ||
@@ -11,0 +7,0 @@ get(): Promise<void>; |
import { Join, JoinCondition, RawSQL } from './clauses'; | ||
import { ComparisonOperators } from '../../types'; | ||
export default class JoinQueryBuilder { | ||
import { ComparisonOperators, JoinQueryBuilderInterface } from '../../types'; | ||
export default class JoinQueryBuilder implements JoinQueryBuilderInterface { | ||
#private; | ||
@@ -5,0 +5,0 @@ on(column1: string, column2: string | number, comparisonOperator?: ComparisonOperators, quoteValue?: boolean): this; |
import { From, RawSQL, Select, Where } from './clauses'; | ||
import { ColumnAlias, ComparisonOperators, LogicalOperators, QueryBuilderCallback, WhereQueryBuilderCallback, JoinQueryBuilderCallback } from '../../types'; | ||
export default class QueryBuilder { | ||
import { ColumnAlias, ComparisonOperators, LogicalOperators, QueryBuilderCallback, WhereQueryBuilderCallback, JoinQueryBuilderCallback, QueryBuilder as QueryBuilderInterface } from '../../types'; | ||
export default class QueryBuilder implements QueryBuilderInterface { | ||
#private; | ||
@@ -40,3 +40,3 @@ constructor(); | ||
getTables(): (From | RawSQL)[]; | ||
getWheres(): (string | RawSQL | Where)[]; | ||
getWheres(): (string | Where | RawSQL)[]; | ||
getJoins(): (RawSQL | JoinQueryBuilderCallback)[]; | ||
@@ -43,0 +43,0 @@ getGroupBy(): (string | RawSQL)[]; |
{ | ||
"name": "@antelaca/querybuilder", | ||
"version": "1.1.3", | ||
"version": "1.1.4", | ||
"description": "Query Builder", | ||
@@ -5,0 +5,0 @@ "main": "dist/index.js", |
@@ -1,4 +0,1 @@ | ||
import QueryBuilder from '../src/query/QueryBuilder' | ||
import JoinQueryBuilder from '../src/query/JoinQueryBuilder' | ||
export type DatabaseConfig = { | ||
@@ -46,2 +43,152 @@ client: string | ||
export type QueryBuilder = QueryBuilderInterface & WhereQueryBuilderInterface | ||
interface QueryBuilderInterface { | ||
from(table: string, alias?: string): QueryBuilder | ||
select(...columns: (string | ColumnAlias)[]): QueryBuilder | ||
selectRaw(sql: string, ...args: Array<string | number>): QueryBuilder | ||
distinct(): QueryBuilder | ||
join(join: JoinQueryBuilderCallback): QueryBuilder | ||
leftJoin( | ||
table: string, | ||
column1: string, | ||
column2: string, | ||
alias?: string | ||
): QueryBuilder | ||
rightJoin( | ||
table: string, | ||
column1: string, | ||
column2: string, | ||
alias?: string | ||
): QueryBuilder | ||
innerJoin( | ||
table: string, | ||
column1: string, | ||
column2: string, | ||
alias?: string | ||
): QueryBuilder | ||
joinRaw(sql: string, ...args: Array<string | number>): QueryBuilder | ||
groupBy(column: string): QueryBuilder | ||
groupByRaw(sql: string, ...args: Array<string | number>): QueryBuilder | ||
getSQL(): string | ||
} | ||
interface WhereQueryBuilderInterface { | ||
where( | ||
column: string | WhereQueryBuilderCallback, | ||
value?: string | number | QueryBuilderCallback | undefined, | ||
comparisonOperator?: ComparisonOperators | LogicalOperators | ||
): QueryBuilder | ||
orWhere( | ||
column: string | WhereQueryBuilderCallback, | ||
value?: string | number | QueryBuilderCallback | null, | ||
comparisonOperator?: ComparisonOperators | LogicalOperators | ||
): QueryBuilder | ||
whereLike(column: string, value: string): QueryBuilder | ||
orWhereLike(column: string, value: string): QueryBuilder | ||
whereNotLike(column: string, value: string): QueryBuilder | ||
orWhereNotLike(column: string, value: string): QueryBuilder | ||
whereBetween( | ||
column: string, | ||
min: string | number, | ||
max: string | number | ||
): QueryBuilder | ||
whereNotBetween( | ||
column: string, | ||
min: string | number, | ||
max: string | number | ||
): QueryBuilder | ||
orWhereBetween( | ||
column: string, | ||
min: string | number, | ||
max: string | number | ||
): QueryBuilder | ||
orWhereNotBetween( | ||
column: string, | ||
min: string | number, | ||
max: string | number | ||
): QueryBuilder | ||
whereIn( | ||
column: string, | ||
value: Array<string | number> | QueryBuilderCallback | ||
): QueryBuilder | ||
orWhereIn( | ||
column: string, | ||
value: Array<string | number> | QueryBuilderCallback | ||
): QueryBuilder | ||
whereNotIn( | ||
column: string, | ||
value: Array<string | number> | QueryBuilderCallback | ||
): QueryBuilder | ||
orWhereNotIn( | ||
column: string, | ||
value: Array<string | number> | QueryBuilderCallback | ||
): QueryBuilder | ||
whereIsNull(column: string): QueryBuilder | ||
orWhereIsNull(column: string): QueryBuilder | ||
whereIsNotNull(column: string): QueryBuilder | ||
orWhereIsNotNull(column: string): QueryBuilder | ||
whereRaw(sql: string, ...args: Array<string | number>): QueryBuilder | ||
} | ||
interface JoinQueryBuilderInterface { | ||
on( | ||
column1: string, | ||
column2: string | number, | ||
comparisonOperator?: ComparisonOperators, | ||
quoteValue?: boolean | ||
): JoinQueryBuilderInterface | ||
and( | ||
column1: string, | ||
column2: string | number, | ||
comparisonOperator?: ComparisonOperators, | ||
quoteValue?: boolean | ||
): JoinQueryBuilderInterface | ||
or( | ||
column1: string, | ||
column2: string | number, | ||
comparisonOperator?: ComparisonOperators, | ||
quoteValue?: boolean | ||
): JoinQueryBuilderInterface | ||
leftJoin(table: string, alias?: string | undefined): JoinQueryBuilderInterface | ||
rightJoin(table: string, alias?: string | undefined): JoinQueryBuilderInterface | ||
innerJoin(table: string, alias?: string | undefined): JoinQueryBuilderInterface | ||
joinRaw(sql: string, ...args: Array<string | number>): JoinQueryBuilderInterface | ||
} | ||
export interface QueryBuilderCallback { | ||
@@ -52,7 +199,7 @@ (builder: QueryBuilder): void; | ||
export interface WhereQueryBuilderCallback { | ||
(builder: QueryBuilder & JoinQueryBuilder): void; | ||
(builder: WhereQueryBuilderInterface): void; | ||
} | ||
export interface JoinQueryBuilderCallback { | ||
(builder: JoinQueryBuilder): void; | ||
(builder: JoinQueryBuilderInterface): void; | ||
} |
Sorry, the diff of this file is not supported yet
60776
903