@goatlab/fluent 0.6.24 → 0.7.1
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/README.md +17 -136
- package/dist/BaseConnector.d.ts +45 -75
- package/dist/BaseConnector.js +218 -317
- package/dist/Fluent.d.ts +2 -21
- package/dist/Fluent.js +0 -33
- package/dist/FluentEntity.d.ts +7 -0
- package/dist/FluentEntity.js +28 -0
- package/dist/TypeOrmConnector/TypeOrmConnector.d.ts +31 -24
- package/dist/TypeOrmConnector/TypeOrmConnector.js +599 -343
- package/dist/TypeOrmConnector/test/advanced/advancedTestSuite.js +182 -48
- package/dist/TypeOrmConnector/test/advanced/typeOrm.entity.d.ts +103 -3
- package/dist/TypeOrmConnector/test/advanced/typeOrm.entity.js +30 -13
- package/dist/TypeOrmConnector/test/advanced/typeOrm.mongo.repository.d.ts +5 -0
- package/dist/TypeOrmConnector/test/advanced/typeOrm.mongo.repository.js +17 -0
- package/dist/TypeOrmConnector/test/advanced/typeOrm.mysql.repository.d.ts +5 -0
- package/dist/TypeOrmConnector/test/advanced/typeOrm.mysql.repository.js +17 -0
- package/dist/TypeOrmConnector/test/advanced/typeOrm.repository.d.ts +3 -3
- package/dist/TypeOrmConnector/test/advanced/typeOrm.repository.js +8 -3
- package/dist/TypeOrmConnector/test/basic/basicTestSuite.d.ts +1 -1
- package/dist/TypeOrmConnector/test/basic/basicTestSuite.js +42 -16
- package/dist/TypeOrmConnector/test/basic/goat.entity.d.ts +43 -0
- package/dist/TypeOrmConnector/test/basic/goat.entity.js +19 -8
- package/dist/TypeOrmConnector/test/basic/goat.mongo.repository.d.ts +5 -0
- package/dist/TypeOrmConnector/test/basic/goat.mongo.repository.js +16 -0
- package/dist/TypeOrmConnector/test/basic/goat.mysql.repository.d.ts +5 -0
- package/dist/TypeOrmConnector/test/basic/goat.mysql.repository.js +16 -0
- package/dist/TypeOrmConnector/test/basic/goat.repository.d.ts +3 -4
- package/dist/TypeOrmConnector/test/basic/goat.repository.js +7 -3
- package/dist/TypeOrmConnector/test/dbEntities.d.ts +6 -6
- package/dist/TypeOrmConnector/test/docker/docker.d.ts +35 -0
- package/dist/TypeOrmConnector/test/docker/docker.js +149 -0
- package/dist/TypeOrmConnector/test/docker/mysql.d.ts +17 -0
- package/dist/TypeOrmConnector/test/docker/mysql.js +132 -0
- package/dist/TypeOrmConnector/test/mongo/car.mongo.repository.d.ts +8 -0
- package/dist/TypeOrmConnector/test/mongo/car.mongo.repository.js +23 -0
- package/dist/TypeOrmConnector/test/mongo/mongo.memory.d.ts +4 -0
- package/dist/TypeOrmConnector/test/mongo/mongo.memory.js +43 -0
- package/dist/TypeOrmConnector/test/mongo/mongoDatasource.d.ts +2 -0
- package/dist/TypeOrmConnector/test/mongo/mongoDatasource.js +12 -0
- package/dist/TypeOrmConnector/test/mongo/roles.mongo.repository.d.ts +8 -0
- package/dist/TypeOrmConnector/test/mongo/roles.mongo.repository.js +23 -0
- package/dist/TypeOrmConnector/test/mongo/roles_user.mongo.repository.d.ts +6 -0
- package/dist/TypeOrmConnector/test/mongo/roles_user.mongo.repository.js +17 -0
- package/dist/TypeOrmConnector/test/mongo/user.mongo.repository.d.ts +10 -0
- package/dist/TypeOrmConnector/test/mongo/user.mongo.repository.js +31 -0
- package/dist/TypeOrmConnector/test/mysql/car.mysql.repository.d.ts +6 -0
- package/dist/TypeOrmConnector/test/mysql/car.mysql.repository.js +17 -0
- package/dist/TypeOrmConnector/test/mysql/mysqlDataSource.d.ts +2 -0
- package/dist/TypeOrmConnector/test/mysql/mysqlDataSource.js +16 -0
- package/dist/TypeOrmConnector/test/mysql/roles.mysql.repository.d.ts +8 -0
- package/dist/TypeOrmConnector/test/mysql/roles.mysql.repository.js +23 -0
- package/dist/TypeOrmConnector/test/mysql/roles_user.mysql.repository.d.ts +6 -0
- package/dist/TypeOrmConnector/test/mysql/roles_user.mysql.repository.js +17 -0
- package/dist/TypeOrmConnector/test/mysql/user.mysql.repository.d.ts +10 -0
- package/dist/TypeOrmConnector/test/mysql/user.mysql.repository.js +32 -0
- package/dist/TypeOrmConnector/test/relations/car/car.entity.d.ts +1 -0
- package/dist/TypeOrmConnector/test/relations/car/car.entity.js +13 -5
- package/dist/TypeOrmConnector/test/relations/car/car.repositoryTypeOrm.d.ts +3 -3
- package/dist/TypeOrmConnector/test/relations/car/car.repositoryTypeOrm.js +11 -4
- package/dist/TypeOrmConnector/test/relations/car/car.schema.d.ts +38 -0
- package/dist/TypeOrmConnector/test/relations/car/car.schema.js +14 -0
- package/dist/TypeOrmConnector/test/relations/relationsTestsSuite.js +85 -32
- package/dist/TypeOrmConnector/test/relations/roles/role.schema.d.ts +35 -0
- package/dist/TypeOrmConnector/test/relations/roles/role.schema.js +16 -0
- package/dist/TypeOrmConnector/test/relations/roles/roles.entity.js +4 -4
- package/dist/TypeOrmConnector/test/relations/roles/roles.repositoryTypeOrm.d.ts +3 -3
- package/dist/TypeOrmConnector/test/relations/roles/roles.repositoryTypeOrm.js +12 -4
- package/dist/TypeOrmConnector/test/relations/roles/roles_user.entity.d.ts +2 -2
- package/dist/TypeOrmConnector/test/relations/roles/roles_user.entity.js +4 -4
- package/dist/TypeOrmConnector/test/relations/roles/roles_user.schema.d.ts +15 -0
- package/dist/TypeOrmConnector/test/relations/roles/roles_user.schema.js +9 -0
- package/dist/TypeOrmConnector/test/relations/roles/roles_users.repositoryTypeOrm.d.ts +3 -3
- package/dist/TypeOrmConnector/test/relations/roles/roles_users.repositoryTypeOrm.js +8 -3
- package/dist/TypeOrmConnector/test/relations/user/user.entity.js +10 -10
- package/dist/TypeOrmConnector/test/relations/user/user.repositoryTypeOrm.d.ts +3 -3
- package/dist/TypeOrmConnector/test/relations/user/user.repositoryTypeOrm.js +17 -5
- package/dist/TypeOrmConnector/test/relations/user/user.schema.d.ts +150 -0
- package/dist/TypeOrmConnector/test/relations/user/user.schema.js +18 -0
- package/dist/TypeOrmConnector/test/{memoryDataSource.d.ts → sqlite/memoryDataSource.d.ts} +0 -0
- package/dist/TypeOrmConnector/test/{memoryDataSource.js → sqlite/memoryDataSource.js} +1 -1
- package/dist/core/Loopback/build-schema.js +1 -3
- package/dist/core/Loopback/json-to-schema.js +6 -6
- package/dist/core/Loopback/mapValues.d.ts +2 -0
- package/dist/core/Loopback/mapValues.js +835 -0
- package/dist/core/Loopback/query.js +6 -4
- package/dist/core/Loopback/type-resolver.d.ts +1 -1
- package/dist/core/Nestjs/applyDecorators.d.ts +1 -1
- package/dist/core/Nestjs/types/common.js +3 -1
- package/dist/core/Nestjs/types/decorators/apply-is-optional.decorator.d.ts +1 -1
- package/dist/core/Nestjs/types/decorators/create-property.decorator.js +9 -4
- package/dist/core/Nestjs/types/decorators/field.decorator.d.ts +1 -1
- package/dist/core/Nestjs/types/decorators/field.decorator.js +6 -6
- package/dist/core/Nestjs/types/lazy-metadata.storage.js +3 -3
- package/dist/core/Nestjs/types/omit-type.js +6 -2
- package/dist/core/Nestjs/types/reflection.utils.d.ts +1 -1
- package/dist/core/Nestjs/types/reflection.utils.js +9 -2
- package/dist/core/Nestjs/types/type-metadata.storage.js +4 -4
- package/dist/core/Nestjs/types/utils/get-fields-and-decorator.util.d.ts +1 -11
- package/dist/core/Nestjs/types/utils/mapped-types.utils.js +2 -2
- package/dist/decorators.d.ts +25 -21
- package/dist/decorators.js +76 -70
- package/dist/index.d.ts +6 -7
- package/dist/index.js +5 -7
- package/dist/loadRelations.js +108 -68
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types.d.ts +104 -55
- package/dist/types.js +20 -0
- package/package.json +11 -102
- package/dist/TypeOrmConnector/TypeOrmMongoConnector._bypass.d.ts +0 -1
- package/dist/TypeOrmConnector/TypeOrmMongoConnector._bypass.js +0 -52
- package/dist/TypeOrmConnector/TypeOrmMysqlConnector._bypass.d.ts +0 -1
- package/dist/TypeOrmConnector/TypeOrmMysqlConnector._bypass.js +0 -55
- package/dist/TypeOrmConnector/test/basic/goat.dto.d.ts +0 -8
- package/dist/TypeOrmConnector/test/basic/goat.dto.js +0 -18
- package/dist/TypeOrmConnector/test/relations/car/car.dto.d.ts +0 -5
- package/dist/TypeOrmConnector/test/relations/car/car.dto.js +0 -12
- package/dist/TypeOrmConnector/test/relations/roles/role.dto.d.ts +0 -5
- package/dist/TypeOrmConnector/test/relations/roles/role.dto.js +0 -12
- package/dist/TypeOrmConnector/test/relations/roles/roles_user.dto.d.ts +0 -5
- package/dist/TypeOrmConnector/test/relations/roles/roles_user.dto.js +0 -12
- package/dist/TypeOrmConnector/test/relations/user/user.dto.d.ts +0 -5
- package/dist/TypeOrmConnector/test/relations/user/user.dto.js +0 -12
- package/dist/core/dtos/access.dto.d.ts +0 -4
- package/dist/core/dtos/access.dto.js +0 -21
- package/dist/core/dtos/pagination.dto.d.ts +0 -13
- package/dist/core/dtos/pagination.dto.js +0 -62
package/README.md
CHANGED
|
@@ -12,20 +12,20 @@
|
|
|
12
12
|
<img src="https://docs.goatlab.io/logo.png" alt="Logo" width="150" height="150">
|
|
13
13
|
</a>
|
|
14
14
|
|
|
15
|
-
<h3 align="center">GOAT-FLUENT</h3>
|
|
15
|
+
<h3 align="center">GOAT - FLUENT</h3>
|
|
16
16
|
|
|
17
17
|
<p align="center">
|
|
18
|
-
|
|
18
|
+
Fluent - Time Saving (TS) utils
|
|
19
19
|
<br />
|
|
20
|
-
<a href="https://docs.goatlab.io/#/0.
|
|
20
|
+
<a href="https://docs.goatlab.io/#/0.7.x/fluent/fluent"><strong>Explore the docs »</strong></a>
|
|
21
21
|
<br />
|
|
22
22
|
<br />
|
|
23
|
-
<a href="https://codesandbox.io/s/goat-nestjs-tytmv?file=/src/main.ts">View Demo</a>
|
|
24
23
|
·
|
|
25
24
|
<a href="https://github.com/goat-io/fluent/issues">Report Bug</a>
|
|
26
25
|
·
|
|
27
26
|
<a href="https://github.com/goat-io/fluent/issues">Request Feature</a>
|
|
28
27
|
</p>
|
|
28
|
+
</p>
|
|
29
29
|
</p>
|
|
30
30
|
|
|
31
31
|
# Goat - Fluent
|
|
@@ -34,147 +34,28 @@ Fluent query interface for Multiple database types and helpers for fast API gene
|
|
|
34
34
|
|
|
35
35
|
## Supported Databases
|
|
36
36
|
|
|
37
|
-
1.
|
|
38
|
-
2.
|
|
39
|
-
3.
|
|
40
|
-
4.
|
|
41
|
-
5.
|
|
42
|
-
6.
|
|
43
|
-
7.
|
|
44
|
-
8.
|
|
45
|
-
9.
|
|
46
|
-
10.
|
|
47
|
-
11.
|
|
48
|
-
12. LokiJS
|
|
49
|
-
13. In-memory
|
|
37
|
+
1. MongoDB\*
|
|
38
|
+
2. Mysql\*
|
|
39
|
+
3. MariaDB\*
|
|
40
|
+
4. SQLite\*
|
|
41
|
+
5. Postgres\*
|
|
42
|
+
6. CockroachDB\*
|
|
43
|
+
7. Microsoft SQL Server\*
|
|
44
|
+
8. Oracle\*
|
|
45
|
+
9. SAP Hana\*
|
|
46
|
+
10. sql.js\*
|
|
47
|
+
11. In-memory SQlite
|
|
50
48
|
|
|
51
49
|
Wrapper for TypeORM \*
|
|
52
50
|
|
|
53
|
-
Wrapper for firebase-admin and fireorm \*\*
|
|
54
|
-
|
|
55
51
|
### Installing
|
|
56
52
|
|
|
57
53
|
To install this package in your project, you can use the following command within your terminal.
|
|
58
54
|
|
|
59
55
|
```bash
|
|
60
|
-
|
|
56
|
+
yarn add @goatlab/fluent
|
|
61
57
|
```
|
|
62
58
|
|
|
63
59
|
### Documentation
|
|
64
60
|
|
|
65
|
-
To learn how to use this visit the [Goat Docs](https://docs.goatlab.io/#/0.
|
|
66
|
-
|
|
67
|
-
<!--
|
|
68
|
-
|
|
69
|
-
Packages that we need to replace
|
|
70
|
-
npm-pack-zip
|
|
71
|
-
@commitlint/prompt-cli
|
|
72
|
-
formiojs
|
|
73
|
-
react-native
|
|
74
|
-
multer-google-storage
|
|
75
|
-
nestjs-typed-dynamodb
|
|
76
|
-
-->
|
|
77
|
-
|
|
78
|
-
## Roadmap
|
|
79
|
-
|
|
80
|
-
See the [open issues](https://github.com/github_username/repo/issues) for a list of proposed features (and known issues).
|
|
81
|
-
|
|
82
|
-
<!-- CONTRIBUTING -->
|
|
83
|
-
|
|
84
|
-
## Contributing
|
|
85
|
-
|
|
86
|
-
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are **greatly appreciated**.
|
|
87
|
-
|
|
88
|
-
We use a few tools to help with code styling, pre-commits, versioning, changelog and releases.
|
|
89
|
-
|
|
90
|
-
- [Pretty-quick](https://github.com/azz/pretty-quick)
|
|
91
|
-
- [Husky](https://github.com/typicode/husky)
|
|
92
|
-
- [Auto-changelog](https://github.com/CookPete/auto-changelog)
|
|
93
|
-
- [Release-it](https://github.com/release-it/release-it)
|
|
94
|
-
|
|
95
|
-
All of these should run out of the box with your dev dependencies
|
|
96
|
-
|
|
97
|
-
1. If you have an issue assigned, please include the issue code/id in the beginning of you commits.
|
|
98
|
-
2. Include the issue id also at the start of your PR message.
|
|
99
|
-
3. Fork the Project
|
|
100
|
-
4. Create your Feature Branch (`git checkout -b feature/AmazingFeature`)
|
|
101
|
-
5. Commit your Changes (`git commit -m 'Add some AmazingFeature'`)
|
|
102
|
-
6. Push to the Branch (`git push origin feature/AmazingFeature`)
|
|
103
|
-
7. Open a Pull Request
|
|
104
|
-
|
|
105
|
-
## Release Process
|
|
106
|
-
|
|
107
|
-
1. All PRs will be merge directly into Master. (If test are green)
|
|
108
|
-
2. Once we are ready to create a release, we will locally pull the latest master version and run the release process
|
|
109
|
-
|
|
110
|
-
If patch release
|
|
111
|
-
|
|
112
|
-
```
|
|
113
|
-
npm run release
|
|
114
|
-
```
|
|
115
|
-
|
|
116
|
-
If minor release
|
|
117
|
-
|
|
118
|
-
```
|
|
119
|
-
npm run release:minor
|
|
120
|
-
```
|
|
121
|
-
|
|
122
|
-
If mayor release
|
|
123
|
-
|
|
124
|
-
```
|
|
125
|
-
npm run release:mayor
|
|
126
|
-
```
|
|
127
|
-
|
|
128
|
-
This will start the release scripts including:
|
|
129
|
-
|
|
130
|
-
- Local tests
|
|
131
|
-
- Final version building
|
|
132
|
-
- Final release zip
|
|
133
|
-
- Tag
|
|
134
|
-
- Release
|
|
135
|
-
- Push
|
|
136
|
-
|
|
137
|
-
## Continuous Deployment
|
|
138
|
-
|
|
139
|
-
Continuous deployment is optional. We will trigger a deployment with every published release. The equivalent trigger in Github Actions is:
|
|
140
|
-
|
|
141
|
-
```yml
|
|
142
|
-
on:
|
|
143
|
-
release:
|
|
144
|
-
types: [published]
|
|
145
|
-
```
|
|
146
|
-
|
|
147
|
-
<!-- LICENSE -->
|
|
148
|
-
|
|
149
|
-
## License
|
|
150
|
-
|
|
151
|
-
Distributed under the MIT License. See `LICENSE` for more information.
|
|
152
|
-
|
|
153
|
-
<!-- CONTACT -->
|
|
154
|
-
|
|
155
|
-
## Contact
|
|
156
|
-
|
|
157
|
-
Ignacio Cabrera - [@twitter_handle](https://twitter.com/cabrerabywaters) - ignacio.cabrera@goatlab.io
|
|
158
|
-
|
|
159
|
-
<!-- ACKNOWLEDGEMENTS -->
|
|
160
|
-
|
|
161
|
-
## Acknowledgements
|
|
162
|
-
|
|
163
|
-
- [Tomas Castro]()
|
|
164
|
-
- []()
|
|
165
|
-
- []()
|
|
166
|
-
|
|
167
|
-
<!-- MARKDOWN LINKS & IMAGES -->
|
|
168
|
-
<!-- https://www.markdownguide.org/basic-syntax/#reference-style-links -->
|
|
169
|
-
|
|
170
|
-
[contributors-url]: https://github.com/goat-io/fluent/graphs/contributors
|
|
171
|
-
[forks-url]: https://github.com/goat-io/fluent/network/members
|
|
172
|
-
[stars-shield]: https://img.shields.io/github/stars/goat-io/fluent?style=flat-square
|
|
173
|
-
[stars-url]: https://github.com/goat-io/fluent/stargazers
|
|
174
|
-
[issues-shield]: https://img.shields.io/github/issues/goat-io/fluent?style=flat-square
|
|
175
|
-
[issues-url]: https://github.com/goat-io/fluent/issues
|
|
176
|
-
[license-shield]: https://img.shields.io/github/license/goat-io/fluent?style=flat-square
|
|
177
|
-
[license-url]: https://github.com/goat-io/fluent/blob/master/LICENSE.txt
|
|
178
|
-
[linkedin-shield]: https://img.shields.io/badge/-LinkedIn-black.svg?style=flat-square&logo=linkedin&colorB=555
|
|
179
|
-
[linkedin-url]: https://linkedin.com/in/othneildrew
|
|
180
|
-
[product-screenshot]: images/screenshot.png
|
|
61
|
+
To learn how to use this visit the [Goat Docs](https://docs.goatlab.io/#/0.7.x/fluent/fluent)
|
package/dist/BaseConnector.d.ts
CHANGED
|
@@ -1,89 +1,59 @@
|
|
|
1
|
-
import { TypedPathWrapper } from 'typed-path';
|
|
2
1
|
import { Collection } from '@goatlab/js-utils';
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
all(filter: Filter): Promise<OutputDTO[]>;
|
|
8
|
-
findById(id: string): Promise<OutputDTO>;
|
|
9
|
-
findByIds(id: string[]): Promise<OutputDTO[]>;
|
|
10
|
-
find(filter: Filter): Promise<OutputDTO[]>;
|
|
11
|
-
deleteById(id: string): Promise<string>;
|
|
12
|
-
updateById(id: string, data: InputDTO): Promise<OutputDTO>;
|
|
2
|
+
import { FindByIdFilter, FluentHasManyParams, FluentBelongsToParams, FluentBelongsToManyParams, FluentQuery, LogicOperator, Primitives, PrimitivesArray, QueryFieldSelector, QueryOutput, SingleQueryOutput } from './types';
|
|
3
|
+
export interface FluentConnectorInterface<ModelDTO, InputDTO, OutputDTO> {
|
|
4
|
+
findByIds<T extends FindByIdFilter<ModelDTO>>(ids: string[], q?: T): Promise<QueryOutput<T, ModelDTO, OutputDTO>>;
|
|
5
|
+
findMany<T extends FluentQuery<ModelDTO>>(query?: T): Promise<QueryOutput<T, ModelDTO, OutputDTO>>;
|
|
13
6
|
insert(data: InputDTO): Promise<OutputDTO>;
|
|
14
7
|
insertMany(data: InputDTO[]): Promise<OutputDTO[]>;
|
|
8
|
+
loadFirst(query?: FluentQuery<ModelDTO>): any;
|
|
9
|
+
loadById(id: string): any;
|
|
10
|
+
replaceById(id: string, data: InputDTO): Promise<OutputDTO>;
|
|
11
|
+
updateById(id: string, data: InputDTO): Promise<OutputDTO>;
|
|
12
|
+
clear(): Promise<boolean>;
|
|
13
|
+
requireById(id: string, q?: FindByIdFilter<ModelDTO>): Promise<SingleQueryOutput<FindByIdFilter<ModelDTO>, ModelDTO, OutputDTO>>;
|
|
15
14
|
}
|
|
16
15
|
export declare abstract class BaseConnector<ModelDTO, InputDTO, OutputDTO> {
|
|
17
|
-
generatedKeyPath: TypedPathWrapper<ModelDTO & InputDTO & OutputDTO, Record<never, never> & {
|
|
18
|
-
$path: (path: import("typed-path").TypedPathKey[]) => string;
|
|
19
|
-
$raw: (path: import("typed-path").TypedPathKey[]) => string[];
|
|
20
|
-
$rawPath: (path: import("typed-path").TypedPathKey[]) => import("typed-path").TypedPathKey[];
|
|
21
|
-
toString: (path: import("typed-path").TypedPathKey[]) => () => string;
|
|
22
|
-
valueOf: (path: import("typed-path").TypedPathKey[]) => () => string;
|
|
23
|
-
[Symbol.toStringTag]: (path: import("typed-path").TypedPathKey[]) => string;
|
|
24
|
-
}>;
|
|
25
16
|
protected outputKeys: string[];
|
|
26
|
-
protected
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
protected
|
|
34
|
-
protected
|
|
35
|
-
protected
|
|
36
|
-
protected
|
|
37
|
-
protected ownerId: any;
|
|
38
|
-
protected paginator: any;
|
|
39
|
-
protected rawQuery: any;
|
|
40
|
-
protected getFirst: boolean;
|
|
41
|
-
protected relations: any;
|
|
42
|
-
protected loadModels: boolean;
|
|
43
|
-
protected relationQuery: any;
|
|
17
|
+
protected relatedQuery?: {
|
|
18
|
+
entity: new () => ModelDTO;
|
|
19
|
+
query?: FluentQuery<ModelDTO>;
|
|
20
|
+
repository?: any;
|
|
21
|
+
key?: string;
|
|
22
|
+
pivot?: any;
|
|
23
|
+
};
|
|
24
|
+
protected chunk: null;
|
|
25
|
+
protected pullSize: null;
|
|
26
|
+
protected paginator: undefined;
|
|
27
|
+
protected rawQuery: undefined;
|
|
44
28
|
protected modelRelations: any;
|
|
45
29
|
isMongoDB: boolean;
|
|
46
30
|
constructor();
|
|
47
|
-
findByIds(ids: string[]): Promise<OutputDTO
|
|
48
|
-
get(): Promise<OutputDTO[]>;
|
|
31
|
+
findByIds<T extends FindByIdFilter<ModelDTO>>(ids: string[], q?: T): Promise<QueryOutput<T, ModelDTO, OutputDTO>>;
|
|
49
32
|
insertMany(data: InputDTO[]): Promise<OutputDTO[]>;
|
|
50
33
|
updateById(id: string, data: InputDTO): Promise<OutputDTO>;
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
pluck(path: (p: TypedPathWrapper<ModelDTO & InputDTO & OutputDTO, Record<never, never>>) => TypedPathWrapper<string, Record<never, never>> | TypedPathWrapper<string[], Record<never, never>>): Promise<string[]>;
|
|
66
|
-
orderBy(path: (p: TypedPathWrapper<ModelDTO & InputDTO & OutputDTO, Record<never, never>>) => TypedPathWrapper<string, Record<never, never>> | TypedPathWrapper<string[], Record<never, never>>, order?: 'asc' | 'desc', orderType?: 'string' | 'number' | 'date'): this;
|
|
67
|
-
protected jsApplySelect(data: any): any[];
|
|
68
|
-
protected jsApplyOrderBy(data: any): any[];
|
|
69
|
-
protected reset(): void;
|
|
70
|
-
load(): Promise<this>;
|
|
71
|
-
loadFirst(): Promise<this>;
|
|
72
|
-
getLoadedData(): OutputDTO[] | OutputDTO;
|
|
73
|
-
with(entities: any): this;
|
|
74
|
-
attach(data: InputDTO | OutputDTO): Promise<OutputDTO[]>;
|
|
75
|
-
associate(id: string): any;
|
|
76
|
-
protected hasMany<T>(Repository: any, relationName: string): T;
|
|
34
|
+
findMany<T extends FluentQuery<ModelDTO>>(query?: T): Promise<QueryOutput<T, ModelDTO, OutputDTO>>;
|
|
35
|
+
findFirst<T extends FluentQuery<ModelDTO>>(query?: T): Promise<SingleQueryOutput<T, ModelDTO, OutputDTO> | null>;
|
|
36
|
+
collect(query: FluentQuery<ModelDTO>): Promise<Collection<OutputDTO>>;
|
|
37
|
+
pluck(path: QueryFieldSelector<ModelDTO>, query?: FluentQuery<ModelDTO>): Promise<Primitives[]>;
|
|
38
|
+
protected setRelatedQuery(r: {
|
|
39
|
+
entity: new () => ModelDTO;
|
|
40
|
+
query?: FluentQuery<ModelDTO>;
|
|
41
|
+
repository?: any;
|
|
42
|
+
key?: string;
|
|
43
|
+
}): void;
|
|
44
|
+
associate(data: InputDTO | OutputDTO): Promise<OutputDTO[]>;
|
|
45
|
+
attach(id: string): Promise<any>;
|
|
46
|
+
protected hasMany<T extends FluentHasManyParams<T>>(r: T): InstanceType<T['repository']>;
|
|
47
|
+
protected belongsTo<T extends FluentBelongsToParams<T>>(r: T): InstanceType<T['repository']>;
|
|
77
48
|
protected hasOne(): void;
|
|
78
|
-
protected
|
|
79
|
-
protected belongsToMany<T, R>(Repository: any, Pivot: any, relationName: string): T;
|
|
80
|
-
withPivot(): this;
|
|
49
|
+
protected belongsToMany<T extends FluentBelongsToManyParams<T>>(r: T): InstanceType<T['repository']>;
|
|
81
50
|
protected hasManyThrough(): void;
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
}
|
|
51
|
+
protected clearEmpties(object: any): any;
|
|
52
|
+
private isAnyObject;
|
|
53
|
+
protected extractConditions(conditions: FluentQuery<ModelDTO>['where'][]): {
|
|
54
|
+
operator: LogicOperator;
|
|
55
|
+
element: string;
|
|
56
|
+
value: Primitives | PrimitivesArray;
|
|
57
|
+
}[];
|
|
58
|
+
protected jsApplySelect(select: FluentQuery<ModelDTO>['select'], data: ModelDTO[]): ModelDTO[];
|
|
89
59
|
}
|