File tree Expand file tree Collapse file tree 11 files changed +193
-45
lines changed Expand file tree Collapse file tree 11 files changed +193
-45
lines changed Original file line number Diff line number Diff line change @@ -13,10 +13,25 @@ export default class PostgresMetaColumns {
1313 this . metaTables = new PostgresMetaTables ( query )
1414 }
1515
16- async list ( { includeSystemSchemas = false } = { } ) : Promise < PostgresMetaResult < PostgresColumn [ ] > > {
17- const sql = includeSystemSchemas
18- ? columnsSql
19- : `${ columnsSql } AND NOT (nc.nspname IN (${ DEFAULT_SYSTEM_SCHEMAS . map ( literal ) . join ( ',' ) } ));`
16+ async list ( {
17+ includeSystemSchemas = false ,
18+ limit,
19+ offset,
20+ } : {
21+ includeSystemSchemas ?: boolean
22+ limit ?: number
23+ offset ?: number
24+ } = { } ) : Promise < PostgresMetaResult < PostgresColumn [ ] > > {
25+ let sql = columnsSql
26+ if ( ! includeSystemSchemas ) {
27+ sql = `${ sql } AND NOT (nc.nspname IN (${ DEFAULT_SYSTEM_SCHEMAS . map ( literal ) . join ( ',' ) } ))`
28+ }
29+ if ( limit ) {
30+ sql = `${ sql } LIMIT ${ limit } `
31+ }
32+ if ( offset ) {
33+ sql = `${ sql } OFFSET ${ offset } `
34+ }
2035 return await this . query ( sql )
2136 }
2237
Original file line number Diff line number Diff line change @@ -8,7 +8,20 @@ export default class PostgresMetaConfig {
88 this . query = query
99 }
1010
11- async list ( ) : Promise < PostgresMetaResult < PostgresConfig [ ] > > {
12- return await this . query ( configSql )
11+ async list ( {
12+ limit,
13+ offset,
14+ } : {
15+ limit ?: number
16+ offset ?: number
17+ } = { } ) : Promise < PostgresMetaResult < PostgresConfig [ ] > > {
18+ let sql = configSql
19+ if ( limit ) {
20+ sql = `${ sql } LIMIT ${ limit } `
21+ }
22+ if ( offset ) {
23+ sql = `${ sql } OFFSET ${ offset } `
24+ }
25+ return await this . query ( sql )
1326 }
1427}
Original file line number Diff line number Diff line change @@ -9,8 +9,21 @@ export default class PostgresMetaExtensions {
99 this . query = query
1010 }
1111
12- async list ( ) : Promise < PostgresMetaResult < PostgresExtension [ ] > > {
13- return await this . query ( extensionsSql )
12+ async list ( {
13+ limit,
14+ offset,
15+ } : {
16+ limit ?: number
17+ offset ?: number
18+ } = { } ) : Promise < PostgresMetaResult < PostgresExtension [ ] > > {
19+ let sql = extensionsSql
20+ if ( limit ) {
21+ sql = `${ sql } LIMIT ${ limit } `
22+ }
23+ if ( offset ) {
24+ sql = `${ sql } OFFSET ${ offset } `
25+ }
26+ return await this . query ( sql )
1427 }
1528
1629 async retrieve ( { name } : { name : string } ) : Promise < PostgresMetaResult < PostgresExtension > > {
Original file line number Diff line number Diff line change @@ -10,14 +10,25 @@ export default class PostgresMetaFunctions {
1010 this . query = query
1111 }
1212
13- async list ( { includeSystemSchemas = false } = { } ) : Promise <
14- PostgresMetaResult < PostgresFunction [ ] >
15- > {
16- const sql = includeSystemSchemas
17- ? enrichedFunctionsSql
18- : `${ enrichedFunctionsSql } WHERE NOT (schema IN (${ DEFAULT_SYSTEM_SCHEMAS . map ( literal ) . join (
19- ','
20- ) } ));`
13+ async list ( {
14+ includeSystemSchemas = false ,
15+ limit,
16+ offset,
17+ } : {
18+ includeSystemSchemas ?: boolean
19+ limit ?: number
20+ offset ?: number
21+ } = { } ) : Promise < PostgresMetaResult < PostgresFunction [ ] > > {
22+ let sql = enrichedFunctionsSql
23+ if ( ! includeSystemSchemas ) {
24+ sql = `${ sql } WHERE NOT (schema IN (${ DEFAULT_SYSTEM_SCHEMAS . map ( literal ) . join ( ',' ) } ))`
25+ }
26+ if ( limit ) {
27+ sql = `${ sql } LIMIT ${ limit } `
28+ }
29+ if ( offset ) {
30+ sql = `${ sql } OFFSET ${ offset } `
31+ }
2132 return await this . query ( sql )
2233 }
2334
Original file line number Diff line number Diff line change @@ -10,12 +10,25 @@ export default class PostgresMetaPolicies {
1010 this . query = query
1111 }
1212
13- async list ( { includeSystemSchemas = false } = { } ) : Promise < PostgresMetaResult < PostgresPolicy [ ] > > {
14- const sql = includeSystemSchemas
15- ? policiesSql
16- : `${ policiesSql } WHERE NOT (n.nspname IN (${ DEFAULT_SYSTEM_SCHEMAS . map ( literal ) . join (
17- ','
18- ) } ));`
13+ async list ( {
14+ includeSystemSchemas = false ,
15+ limit,
16+ offset,
17+ } : {
18+ includeSystemSchemas ?: boolean
19+ limit ?: number
20+ offset ?: number
21+ } = { } ) : Promise < PostgresMetaResult < PostgresPolicy [ ] > > {
22+ let sql = policiesSql
23+ if ( ! includeSystemSchemas ) {
24+ sql = `${ sql } WHERE NOT (n.nspname IN (${ DEFAULT_SYSTEM_SCHEMAS . map ( literal ) . join ( ',' ) } ))`
25+ }
26+ if ( limit ) {
27+ sql = `${ sql } LIMIT ${ limit } `
28+ }
29+ if ( offset ) {
30+ sql = `${ sql } OFFSET ${ offset } `
31+ }
1932 return await this . query ( sql )
2033 }
2134
Original file line number Diff line number Diff line change @@ -9,8 +9,21 @@ export default class PostgresMetaPublications {
99 this . query = query
1010 }
1111
12- async list ( ) : Promise < PostgresMetaResult < PostgresPublication [ ] > > {
13- return await this . query ( publicationsSql )
12+ async list ( {
13+ limit,
14+ offset,
15+ } : {
16+ limit ?: number
17+ offset ?: number
18+ } ) : Promise < PostgresMetaResult < PostgresPublication [ ] > > {
19+ let sql = publicationsSql
20+ if ( limit ) {
21+ sql = `${ sql } LIMIT ${ limit } `
22+ }
23+ if ( offset ) {
24+ sql = `${ sql } OFFSET ${ offset } `
25+ }
26+ return await this . query ( sql )
1427 }
1528
1629 async retrieve ( { id } : { id : number } ) : Promise < PostgresMetaResult < PostgresPublication > >
Original file line number Diff line number Diff line change @@ -11,10 +11,18 @@ export default class PostgresMetaRoles {
1111 this . query = query
1212 }
1313
14- async list ( { includeDefaultRoles = false , includeSystemSchemas = false } = { } ) : Promise <
15- PostgresMetaResult < PostgresRole [ ] >
16- > {
17- const sql = `
14+ async list ( {
15+ includeDefaultRoles = false ,
16+ includeSystemSchemas = false ,
17+ limit,
18+ offset,
19+ } : {
20+ includeDefaultRoles ?: boolean
21+ includeSystemSchemas ?: boolean
22+ limit ?: number
23+ offset ?: number
24+ } = { } ) : Promise < PostgresMetaResult < PostgresRole [ ] > > {
25+ let sql = `
1826WITH roles AS (${
1927 includeDefaultRoles
2028 ? rolesSql
@@ -29,7 +37,13 @@ SELECT
2937 *,
3038 ${ coalesceRowsToArray ( 'grants' , 'SELECT * FROM grants WHERE grants.grantee = roles.name' ) }
3139FROM
32- roles;`
40+ roles`
41+ if ( limit ) {
42+ sql = `${ sql } LIMIT ${ limit } `
43+ }
44+ if ( offset ) {
45+ sql = `${ sql } OFFSET ${ offset } `
46+ }
3347 return await this . query ( sql )
3448 }
3549
Original file line number Diff line number Diff line change @@ -15,10 +15,25 @@ export default class PostgresMetaSchemas {
1515 this . query = query
1616 }
1717
18- async list ( { includeSystemSchemas = false } = { } ) : Promise < PostgresMetaResult < PostgresSchema [ ] > > {
19- const sql = includeSystemSchemas
20- ? schemasSql
21- : `${ schemasSql } AND NOT (n.nspname IN (${ DEFAULT_SYSTEM_SCHEMAS . map ( literal ) . join ( ',' ) } ));`
18+ async list ( {
19+ includeSystemSchemas = false ,
20+ limit,
21+ offset,
22+ } : {
23+ includeSystemSchemas ?: boolean
24+ limit ?: number
25+ offset ?: number
26+ } = { } ) : Promise < PostgresMetaResult < PostgresSchema [ ] > > {
27+ let sql = schemasSql
28+ if ( ! includeSystemSchemas ) {
29+ sql = `${ sql } AND NOT (n.nspname IN (${ DEFAULT_SYSTEM_SCHEMAS . map ( literal ) . join ( ',' ) } ))`
30+ }
31+ if ( limit ) {
32+ sql = `${ sql } LIMIT ${ limit } `
33+ }
34+ if ( offset ) {
35+ sql = `${ sql } OFFSET ${ offset } `
36+ }
2237 return await this . query ( sql )
2338 }
2439
Original file line number Diff line number Diff line change @@ -18,12 +18,25 @@ export default class PostgresMetaTables {
1818 this . query = query
1919 }
2020
21- async list ( { includeSystemSchemas = false } = { } ) : Promise < PostgresMetaResult < PostgresTable [ ] > > {
22- const sql = includeSystemSchemas
23- ? enrichedTablesSql
24- : `${ enrichedTablesSql } WHERE NOT (schema IN (${ DEFAULT_SYSTEM_SCHEMAS . map ( literal ) . join (
25- ','
26- ) } ));`
21+ async list ( {
22+ includeSystemSchemas = false ,
23+ limit,
24+ offset,
25+ } : {
26+ includeSystemSchemas ?: boolean
27+ limit ?: number
28+ offset ?: number
29+ } = { } ) : Promise < PostgresMetaResult < PostgresTable [ ] > > {
30+ let sql = enrichedTablesSql
31+ if ( ! includeSystemSchemas ) {
32+ sql = `${ sql } WHERE NOT (schema IN (${ DEFAULT_SYSTEM_SCHEMAS . map ( literal ) . join ( ',' ) } ))`
33+ }
34+ if ( limit ) {
35+ sql = `${ sql } LIMIT ${ limit } `
36+ }
37+ if ( offset ) {
38+ sql = `${ sql } OFFSET ${ offset } `
39+ }
2740 return await this . query ( sql )
2841 }
2942
Original file line number Diff line number Diff line change @@ -9,8 +9,21 @@ export default class PostgresMetaTriggers {
99 this . query = query
1010 }
1111
12- async list ( ) : Promise < PostgresMetaResult < PostgresTrigger [ ] > > {
13- return await this . query ( enrichedTriggersSql )
12+ async list ( {
13+ limit,
14+ offset,
15+ } : {
16+ limit ?: number
17+ offset ?: number
18+ } = { } ) : Promise < PostgresMetaResult < PostgresTrigger [ ] > > {
19+ let sql = enrichedTriggersSql
20+ if ( limit ) {
21+ sql = `${ sql } LIMIT ${ limit } `
22+ }
23+ if ( offset ) {
24+ sql = `${ sql } OFFSET ${ offset } `
25+ }
26+ return await this . query ( sql )
1427 }
1528
1629 async retrieve ( { id } : { id : number } ) : Promise < PostgresMetaResult < PostgresTrigger > >
You can’t perform that action at this time.
0 commit comments