@typetron/websockets 0.3.10 → 0.3.11
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 +32 -0
- package/index.d.ts +2 -5
- package/index.d.ts.map +1 -1
- package/index.js +2 -0
- package/index.js.map +1 -1
- package/package.json +2 -2
- package/Container/ClassResolver.d.ts +0 -9
- package/Container/ClassResolver.d.ts.map +0 -1
- package/Container/ClassResolver.js +0 -88
- package/Container/ClassResolver.js.map +0 -1
- package/Container/Container.d.ts +0 -25
- package/Container/Container.d.ts.map +0 -1
- package/Container/Container.js +0 -122
- package/Container/Container.js.map +0 -1
- package/Container/Contracts.d.ts +0 -3
- package/Container/Contracts.d.ts.map +0 -1
- package/Container/Contracts.js +0 -3
- package/Container/Contracts.js.map +0 -1
- package/Container/Decorators.d.ts +0 -5
- package/Container/Decorators.d.ts.map +0 -1
- package/Container/Decorators.js +0 -22
- package/Container/Decorators.js.map +0 -1
- package/Container/Metadata.d.ts +0 -21
- package/Container/Metadata.d.ts.map +0 -1
- package/Container/Metadata.js +0 -19
- package/Container/Metadata.js.map +0 -1
- package/Container/Resolver.d.ts +0 -19
- package/Container/Resolver.d.ts.map +0 -1
- package/Container/Resolver.js +0 -16
- package/Container/Resolver.js.map +0 -1
- package/Container/index.d.ts +0 -6
- package/Container/index.d.ts.map +0 -1
- package/Container/index.js +0 -18
- package/Container/index.js.map +0 -1
- package/Database/Connection.d.ts +0 -24
- package/Database/Connection.d.ts.map +0 -1
- package/Database/Connection.js +0 -43
- package/Database/Connection.js.map +0 -1
- package/Database/Decorators.d.ts +0 -32
- package/Database/Decorators.d.ts.map +0 -1
- package/Database/Decorators.js +0 -114
- package/Database/Decorators.js.map +0 -1
- package/Database/Drivers/DatabaseDriver.d.ts +0 -31
- package/Database/Drivers/DatabaseDriver.d.ts.map +0 -1
- package/Database/Drivers/DatabaseDriver.js +0 -7
- package/Database/Drivers/DatabaseDriver.js.map +0 -1
- package/Database/Drivers/MySQL/MysqlDriver.d.ts +0 -38
- package/Database/Drivers/MySQL/MysqlDriver.d.ts.map +0 -1
- package/Database/Drivers/MySQL/MysqlDriver.js +0 -81
- package/Database/Drivers/MySQL/MysqlDriver.js.map +0 -1
- package/Database/Drivers/MySQL/Schema.d.ts +0 -6
- package/Database/Drivers/MySQL/Schema.d.ts.map +0 -1
- package/Database/Drivers/MySQL/Schema.js +0 -12
- package/Database/Drivers/MySQL/Schema.js.map +0 -1
- package/Database/Drivers/SQL/Schema.d.ts +0 -12
- package/Database/Drivers/SQL/Schema.d.ts.map +0 -1
- package/Database/Drivers/SQL/Schema.js +0 -100
- package/Database/Drivers/SQL/Schema.js.map +0 -1
- package/Database/Drivers/SQL/Statements/Alter.d.ts +0 -8
- package/Database/Drivers/SQL/Statements/Alter.d.ts.map +0 -1
- package/Database/Drivers/SQL/Statements/Alter.js +0 -25
- package/Database/Drivers/SQL/Statements/Alter.js.map +0 -1
- package/Database/Drivers/SQL/Statements/BaseStatement.d.ts +0 -13
- package/Database/Drivers/SQL/Statements/BaseStatement.d.ts.map +0 -1
- package/Database/Drivers/SQL/Statements/BaseStatement.js +0 -47
- package/Database/Drivers/SQL/Statements/BaseStatement.js.map +0 -1
- package/Database/Drivers/SQL/Statements/Create.d.ts +0 -7
- package/Database/Drivers/SQL/Statements/Create.d.ts.map +0 -1
- package/Database/Drivers/SQL/Statements/Create.js +0 -22
- package/Database/Drivers/SQL/Statements/Create.js.map +0 -1
- package/Database/Drivers/SQL/Statements/Delete.d.ts +0 -6
- package/Database/Drivers/SQL/Statements/Delete.d.ts.map +0 -1
- package/Database/Drivers/SQL/Statements/Delete.js +0 -22
- package/Database/Drivers/SQL/Statements/Delete.js.map +0 -1
- package/Database/Drivers/SQL/Statements/Insert.d.ts +0 -7
- package/Database/Drivers/SQL/Statements/Insert.d.ts.map +0 -1
- package/Database/Drivers/SQL/Statements/Insert.js +0 -24
- package/Database/Drivers/SQL/Statements/Insert.js.map +0 -1
- package/Database/Drivers/SQL/Statements/Select.d.ts +0 -8
- package/Database/Drivers/SQL/Statements/Select.d.ts.map +0 -1
- package/Database/Drivers/SQL/Statements/Select.js +0 -54
- package/Database/Drivers/SQL/Statements/Select.js.map +0 -1
- package/Database/Drivers/SQL/Statements/Update.d.ts +0 -7
- package/Database/Drivers/SQL/Statements/Update.d.ts.map +0 -1
- package/Database/Drivers/SQL/Statements/Update.js +0 -35
- package/Database/Drivers/SQL/Statements/Update.js.map +0 -1
- package/Database/Drivers/SQLite/Schema.d.ts +0 -6
- package/Database/Drivers/SQLite/Schema.d.ts.map +0 -1
- package/Database/Drivers/SQLite/Schema.js +0 -12
- package/Database/Drivers/SQLite/Schema.js.map +0 -1
- package/Database/Drivers/SQLite/SqliteDriver.d.ts +0 -39
- package/Database/Drivers/SQLite/SqliteDriver.d.ts.map +0 -1
- package/Database/Drivers/SQLite/SqliteDriver.js +0 -98
- package/Database/Drivers/SQLite/SqliteDriver.js.map +0 -1
- package/Database/Drivers/SchemaContract.d.ts +0 -11
- package/Database/Drivers/SchemaContract.d.ts.map +0 -1
- package/Database/Drivers/SchemaContract.js +0 -10
- package/Database/Drivers/SchemaContract.js.map +0 -1
- package/Database/Drivers/Statement.d.ts +0 -9
- package/Database/Drivers/Statement.d.ts.map +0 -1
- package/Database/Drivers/Statement.js +0 -14
- package/Database/Drivers/Statement.js.map +0 -1
- package/Database/Drivers/index.d.ts +0 -5
- package/Database/Drivers/index.d.ts.map +0 -1
- package/Database/Drivers/index.js +0 -17
- package/Database/Drivers/index.js.map +0 -1
- package/Database/Entity.d.ts +0 -65
- package/Database/Entity.d.ts.map +0 -1
- package/Database/Entity.js +0 -252
- package/Database/Entity.js.map +0 -1
- package/Database/EntityNotFoundError.d.ts +0 -6
- package/Database/EntityNotFoundError.d.ts.map +0 -1
- package/Database/EntityNotFoundError.js +0 -11
- package/Database/EntityNotFoundError.js.map +0 -1
- package/Database/EntityProxyHandler.d.ts +0 -6
- package/Database/EntityProxyHandler.d.ts.map +0 -1
- package/Database/EntityProxyHandler.js +0 -31
- package/Database/EntityProxyHandler.js.map +0 -1
- package/Database/EntityQuery.d.ts +0 -29
- package/Database/EntityQuery.d.ts.map +0 -1
- package/Database/EntityQuery.js +0 -157
- package/Database/EntityQuery.js.map +0 -1
- package/Database/Expression.d.ts +0 -6
- package/Database/Expression.d.ts.map +0 -1
- package/Database/Expression.js +0 -13
- package/Database/Expression.js.map +0 -1
- package/Database/Fields.d.ts +0 -156
- package/Database/Fields.d.ts.map +0 -1
- package/Database/Fields.js +0 -549
- package/Database/Fields.js.map +0 -1
- package/Database/Helpers.d.ts +0 -2
- package/Database/Helpers.d.ts.map +0 -1
- package/Database/Helpers.js +0 -11
- package/Database/Helpers.js.map +0 -1
- package/Database/List.d.ts +0 -25
- package/Database/List.d.ts.map +0 -1
- package/Database/List.js +0 -50
- package/Database/List.js.map +0 -1
- package/Database/ORM/BaseRelationship.d.ts +0 -8
- package/Database/ORM/BaseRelationship.d.ts.map +0 -1
- package/Database/ORM/BaseRelationship.js +0 -11
- package/Database/ORM/BaseRelationship.js.map +0 -1
- package/Database/Query.d.ts +0 -62
- package/Database/Query.d.ts.map +0 -1
- package/Database/Query.js +0 -263
- package/Database/Query.js.map +0 -1
- package/Database/Types.d.ts +0 -118
- package/Database/Types.d.ts.map +0 -1
- package/Database/Types.js +0 -95
- package/Database/Types.js.map +0 -1
- package/Database/index.d.ts +0 -20
- package/Database/index.d.ts.map +0 -1
- package/Database/index.js +0 -20
- package/Database/index.js.map +0 -1
- package/Forms/Decorators.d.ts +0 -7
- package/Forms/Decorators.d.ts.map +0 -1
- package/Forms/Decorators.js +0 -29
- package/Forms/Decorators.js.map +0 -1
- package/Forms/Form.d.ts +0 -18
- package/Forms/Form.d.ts.map +0 -1
- package/Forms/Form.js +0 -70
- package/Forms/Form.js.map +0 -1
- package/Forms/FormFields.d.ts +0 -10
- package/Forms/FormFields.d.ts.map +0 -1
- package/Forms/FormFields.js +0 -36
- package/Forms/FormFields.js.map +0 -1
- package/Forms/index.d.ts +0 -4
- package/Forms/index.d.ts.map +0 -1
- package/Forms/index.js +0 -16
- package/Forms/index.js.map +0 -1
- package/Framework/App.d.ts +0 -7
- package/Framework/App.d.ts.map +0 -1
- package/Framework/App.js +0 -10
- package/Framework/App.js.map +0 -1
- package/Framework/Application.d.ts +0 -18
- package/Framework/Application.d.ts.map +0 -1
- package/Framework/Application.js +0 -94
- package/Framework/Application.js.map +0 -1
- package/Framework/Auth/Auth.d.ts +0 -25
- package/Framework/Auth/Auth.d.ts.map +0 -1
- package/Framework/Auth/Auth.js +0 -114
- package/Framework/Auth/Auth.js.map +0 -1
- package/Framework/Auth/Authenticatable.d.ts +0 -7
- package/Framework/Auth/Authenticatable.d.ts.map +0 -1
- package/Framework/Auth/Authenticatable.js +0 -3
- package/Framework/Auth/Authenticatable.js.map +0 -1
- package/Framework/Auth/User.d.ts +0 -11
- package/Framework/Auth/User.d.ts.map +0 -1
- package/Framework/Auth/User.js +0 -38
- package/Framework/Auth/User.js.map +0 -1
- package/Framework/Auth/index.d.ts +0 -6
- package/Framework/Auth/index.d.ts.map +0 -1
- package/Framework/Auth/index.js +0 -46
- package/Framework/Auth/index.js.map +0 -1
- package/Framework/Config/AppConfig.d.ts +0 -19
- package/Framework/Config/AppConfig.d.ts.map +0 -1
- package/Framework/Config/AppConfig.js +0 -12
- package/Framework/Config/AppConfig.js.map +0 -1
- package/Framework/Config/AuthConfig.d.ts +0 -9
- package/Framework/Config/AuthConfig.d.ts.map +0 -1
- package/Framework/Config/AuthConfig.js +0 -8
- package/Framework/Config/AuthConfig.js.map +0 -1
- package/Framework/Config/BaseConfig.d.ts +0 -7
- package/Framework/Config/BaseConfig.d.ts.map +0 -1
- package/Framework/Config/BaseConfig.js +0 -13
- package/Framework/Config/BaseConfig.js.map +0 -1
- package/Framework/Config/DatabaseConfig.d.ts +0 -10
- package/Framework/Config/DatabaseConfig.d.ts.map +0 -1
- package/Framework/Config/DatabaseConfig.js +0 -25
- package/Framework/Config/DatabaseConfig.js.map +0 -1
- package/Framework/Config/index.d.ts +0 -5
- package/Framework/Config/index.d.ts.map +0 -1
- package/Framework/Config/index.js +0 -17
- package/Framework/Config/index.js.map +0 -1
- package/Framework/Middleware/StaticAssetsMiddleware.d.ts +0 -15
- package/Framework/Middleware/StaticAssetsMiddleware.d.ts.map +0 -1
- package/Framework/Middleware/StaticAssetsMiddleware.js +0 -105
- package/Framework/Middleware/StaticAssetsMiddleware.js.map +0 -1
- package/Framework/Provider.d.ts +0 -6
- package/Framework/Provider.d.ts.map +0 -1
- package/Framework/Provider.js +0 -21
- package/Framework/Provider.js.map +0 -1
- package/Framework/Providers/DatabaseProvider.d.ts +0 -10
- package/Framework/Providers/DatabaseProvider.d.ts.map +0 -1
- package/Framework/Providers/DatabaseProvider.js +0 -64
- package/Framework/Providers/DatabaseProvider.js.map +0 -1
- package/Framework/Providers/WebsocketsProvider.d.ts +0 -13
- package/Framework/Providers/WebsocketsProvider.d.ts.map +0 -1
- package/Framework/Providers/WebsocketsProvider.js +0 -123
- package/Framework/Providers/WebsocketsProvider.js.map +0 -1
- package/Framework/Resolvers/AuthResolver.d.ts +0 -6
- package/Framework/Resolvers/AuthResolver.d.ts.map +0 -1
- package/Framework/Resolvers/AuthResolver.js +0 -15
- package/Framework/Resolvers/AuthResolver.js.map +0 -1
- package/Framework/Resolvers/EntityResolver.d.ts +0 -10
- package/Framework/Resolvers/EntityResolver.d.ts.map +0 -1
- package/Framework/Resolvers/EntityResolver.js +0 -41
- package/Framework/Resolvers/EntityResolver.js.map +0 -1
- package/Framework/Resolvers/FormResolver.d.ts +0 -10
- package/Framework/Resolvers/FormResolver.d.ts.map +0 -1
- package/Framework/Resolvers/FormResolver.js +0 -33
- package/Framework/Resolvers/FormResolver.js.map +0 -1
- package/Framework/RootDir.d.ts +0 -3
- package/Framework/RootDir.d.ts.map +0 -1
- package/Framework/RootDir.js +0 -7
- package/Framework/RootDir.js.map +0 -1
- package/Framework/index.d.ts +0 -7
- package/Framework/index.d.ts.map +0 -1
- package/Framework/index.js +0 -19
- package/Framework/index.js.map +0 -1
- package/Frontend/Websockets/index.d.ts +0 -24
- package/Frontend/Websockets/index.d.ts.map +0 -1
- package/Frontend/Websockets/index.js +0 -77
- package/Frontend/Websockets/index.js.map +0 -1
- package/Router/BaseController.d.ts +0 -5
- package/Router/BaseController.d.ts.map +0 -1
- package/Router/BaseController.js +0 -21
- package/Router/BaseController.js.map +0 -1
- package/Router/Decorators.d.ts +0 -22
- package/Router/Decorators.d.ts.map +0 -1
- package/Router/Decorators.js +0 -171
- package/Router/Decorators.js.map +0 -1
- package/Router/Guard.d.ts +0 -5
- package/Router/Guard.d.ts.map +0 -1
- package/Router/Guard.js +0 -11
- package/Router/Guard.js.map +0 -1
- package/Router/Http/Contracts.d.ts +0 -4
- package/Router/Http/Contracts.d.ts.map +0 -1
- package/Router/Http/Contracts.js +0 -3
- package/Router/Http/Contracts.js.map +0 -1
- package/Router/Http/ErrorHandler.d.ts +0 -10
- package/Router/Http/ErrorHandler.d.ts.map +0 -1
- package/Router/Http/ErrorHandler.js +0 -52
- package/Router/Http/ErrorHandler.js.map +0 -1
- package/Router/Http/ErrorHandlerInterface.d.ts +0 -6
- package/Router/Http/ErrorHandlerInterface.d.ts.map +0 -1
- package/Router/Http/ErrorHandlerInterface.js +0 -7
- package/Router/Http/ErrorHandlerInterface.js.map +0 -1
- package/Router/Http/Errors/HttpError.d.ts +0 -8
- package/Router/Http/Errors/HttpError.d.ts.map +0 -1
- package/Router/Http/Errors/HttpError.js +0 -16
- package/Router/Http/Errors/HttpError.js.map +0 -1
- package/Router/Http/Handler.d.ts +0 -16
- package/Router/Http/Handler.d.ts.map +0 -1
- package/Router/Http/Handler.js +0 -132
- package/Router/Http/Handler.js.map +0 -1
- package/Router/Http/Request.d.ts +0 -23
- package/Router/Http/Request.d.ts.map +0 -1
- package/Router/Http/Request.js +0 -152
- package/Router/Http/Request.js.map +0 -1
- package/Router/Http/Response.d.ts +0 -18
- package/Router/Http/Response.d.ts.map +0 -1
- package/Router/Http/Response.js +0 -52
- package/Router/Http/Response.js.map +0 -1
- package/Router/Http/index.d.ts +0 -84
- package/Router/Http/index.d.ts.map +0 -1
- package/Router/Http/index.js +0 -100
- package/Router/Http/index.js.map +0 -1
- package/Router/Metadata.d.ts +0 -32
- package/Router/Metadata.d.ts.map +0 -1
- package/Router/Metadata.js +0 -26
- package/Router/Metadata.js.map +0 -1
- package/Router/Middleware.d.ts +0 -6
- package/Router/Middleware.d.ts.map +0 -1
- package/Router/Middleware.js +0 -3
- package/Router/Middleware.js.map +0 -1
- package/Router/Route.d.ts +0 -24
- package/Router/Route.d.ts.map +0 -1
- package/Router/Route.js +0 -111
- package/Router/Route.js.map +0 -1
- package/Router/RouteNotFoundError.d.ts +0 -4
- package/Router/RouteNotFoundError.d.ts.map +0 -1
- package/Router/RouteNotFoundError.js +0 -10
- package/Router/RouteNotFoundError.js.map +0 -1
- package/Router/Router.d.ts +0 -13
- package/Router/Router.d.ts.map +0 -1
- package/Router/Router.js +0 -33
- package/Router/Router.js.map +0 -1
- package/Router/Websockets/Handler.d.ts +0 -13
- package/Router/Websockets/Handler.d.ts.map +0 -1
- package/Router/Websockets/Handler.js +0 -60
- package/Router/Websockets/Handler.js.map +0 -1
- package/Router/Websockets/WebsocketEvent.d.ts +0 -16
- package/Router/Websockets/WebsocketEvent.d.ts.map +0 -1
- package/Router/Websockets/WebsocketEvent.js +0 -54
- package/Router/Websockets/WebsocketEvent.js.map +0 -1
- package/Router/Websockets/index.d.ts +0 -17
- package/Router/Websockets/index.d.ts.map +0 -1
- package/Router/Websockets/index.js +0 -58
- package/Router/Websockets/index.js.map +0 -1
- package/Router/Websockets/types.d.ts +0 -21
- package/Router/Websockets/types.d.ts.map +0 -1
- package/Router/Websockets/types.js +0 -9
- package/Router/Websockets/types.js.map +0 -1
- package/Router/index.d.ts +0 -7
- package/Router/index.d.ts.map +0 -1
- package/Router/index.js +0 -19
- package/Router/index.js.map +0 -1
- package/Storage/File.d.ts +0 -12
- package/Storage/File.d.ts.map +0 -1
- package/Storage/File.js +0 -47
- package/Storage/File.js.map +0 -1
- package/Storage/Image.d.ts +0 -4
- package/Storage/Image.d.ts.map +0 -1
- package/Storage/Image.js +0 -8
- package/Storage/Image.js.map +0 -1
- package/Storage/Storage.d.ts +0 -13
- package/Storage/Storage.d.ts.map +0 -1
- package/Storage/Storage.js +0 -111
- package/Storage/Storage.js.map +0 -1
- package/Storage/index.d.ts +0 -5
- package/Storage/index.d.ts.map +0 -1
- package/Storage/index.js +0 -17
- package/Storage/index.js.map +0 -1
- package/Storage/utils.d.ts +0 -6
- package/Storage/utils.d.ts.map +0 -1
- package/Storage/utils.js +0 -21
- package/Storage/utils.js.map +0 -1
- package/Support/Array.d.ts +0 -25
- package/Support/Array.d.ts.map +0 -1
- package/Support/Array.js +0 -91
- package/Support/Array.js.map +0 -1
- package/Support/Math.d.ts +0 -7
- package/Support/Math.d.ts.map +0 -1
- package/Support/Math.js +0 -8
- package/Support/Math.js.map +0 -1
- package/Support/Metadata.d.ts +0 -15
- package/Support/Metadata.d.ts.map +0 -1
- package/Support/Metadata.js +0 -21
- package/Support/Metadata.js.map +0 -1
- package/Support/String.d.ts +0 -12
- package/Support/String.d.ts.map +0 -1
- package/Support/String.js +0 -24
- package/Support/String.js.map +0 -1
- package/Support/index.d.ts +0 -14
- package/Support/index.d.ts.map +0 -1
- package/Support/index.js +0 -6
- package/Support/index.js.map +0 -1
- package/Validation/Rule.d.ts +0 -7
- package/Validation/Rule.d.ts.map +0 -1
- package/Validation/Rule.js +0 -7
- package/Validation/Rule.js.map +0 -1
- package/Validation/RuleInterface.d.ts +0 -7
- package/Validation/RuleInterface.d.ts.map +0 -1
- package/Validation/RuleInterface.js +0 -3
- package/Validation/RuleInterface.js.map +0 -1
- package/Validation/Rules/Email.d.ts +0 -4
- package/Validation/Rules/Email.d.ts.map +0 -1
- package/Validation/Rules/Email.js +0 -21
- package/Validation/Rules/Email.js.map +0 -1
- package/Validation/Rules/MaxLength.d.ts +0 -4
- package/Validation/Rules/MaxLength.d.ts.map +0 -1
- package/Validation/Rules/MaxLength.js +0 -20
- package/Validation/Rules/MaxLength.js.map +0 -1
- package/Validation/Rules/MinLength.d.ts +0 -4
- package/Validation/Rules/MinLength.d.ts.map +0 -1
- package/Validation/Rules/MinLength.js +0 -20
- package/Validation/Rules/MinLength.js.map +0 -1
- package/Validation/Rules/Optional.d.ts +0 -4
- package/Validation/Rules/Optional.d.ts.map +0 -1
- package/Validation/Rules/Optional.js +0 -20
- package/Validation/Rules/Optional.js.map +0 -1
- package/Validation/Rules/Required.d.ts +0 -4
- package/Validation/Rules/Required.d.ts.map +0 -1
- package/Validation/Rules/Required.js +0 -27
- package/Validation/Rules/Required.js.map +0 -1
- package/Validation/Validator.d.ts +0 -12
- package/Validation/Validator.d.ts.map +0 -1
- package/Validation/Validator.js +0 -11
- package/Validation/Validator.js.map +0 -1
- package/Validation/index.d.ts +0 -10
- package/Validation/index.d.ts.map +0 -1
- package/Validation/index.js +0 -22
- package/Validation/index.js.map +0 -1
- package/types.d.ts +0 -17
- package/types.d.ts.map +0 -1
- package/types.js +0 -9
- package/types.js.map +0 -1
package/Database/Entity.d.ts
DELETED
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import { EntityQuery } from './EntityQuery';
|
|
2
|
-
import { ChildObject, KeysOfType } from '../Support';
|
|
3
|
-
import { EntityMetadata, ID } from './Decorators';
|
|
4
|
-
import { BelongsTo, BelongsToMany, HasMany, HasOne } from './Fields';
|
|
5
|
-
import { Boolean as BooleanType, Direction, Operator, WhereFunction, WhereValue } from './Types';
|
|
6
|
-
import { DotNotationProperties, EntityConstructor, EntityKeys, EntityObject } from './index';
|
|
7
|
-
import { Query } from './Query';
|
|
8
|
-
import { List } from './List';
|
|
9
|
-
export declare abstract class Entity {
|
|
10
|
-
exists: boolean;
|
|
11
|
-
original: Record<string, any>;
|
|
12
|
-
constructor();
|
|
13
|
-
static get metadata(): EntityMetadata<Entity>;
|
|
14
|
-
get metadata(): EntityMetadata<Entity>;
|
|
15
|
-
get static(): EntityConstructor<this>;
|
|
16
|
-
static where<T extends Entity, K extends EntityKeys<T>>(this: EntityConstructor<T>, column: EntityKeys<T>, operator: Operator | Query | WhereValue | T[K], value?: Query | WhereValue | T[K], boolean?: BooleanType): EntityQuery<T>;
|
|
17
|
-
static whereIn<T extends Entity, K extends EntityKeys<T>>(this: EntityConstructor<T>, column: EntityKeys<T>, value: Query | WhereValue[] | T[K][], boolean?: BooleanType): EntityQuery<T>;
|
|
18
|
-
static whereNotIn<T extends Entity, K extends EntityKeys<T>>(this: EntityConstructor<T>, column: EntityKeys<T>, value: Query | WhereFunction | WhereValue[] | T[K][]): EntityQuery<T>;
|
|
19
|
-
static whereLike<T extends Entity, K extends EntityKeys<T>>(this: EntityConstructor<T>, column: EntityKeys<T>, value?: WhereValue | T[K], boolean?: BooleanType): EntityQuery<T>;
|
|
20
|
-
static first<T extends Entity, K extends EntityKeys<T>>(this: EntityConstructor<T>, ...columns: EntityKeys<T>[]): Promise<T | undefined>;
|
|
21
|
-
static firstOrNew<T extends Entity, K extends keyof Entity>(this: EntityConstructor<T>, properties: Partial<EntityObject<T>>, values?: Partial<EntityObject<T>>): Promise<T>;
|
|
22
|
-
static firstOrCreate<T extends Entity, K extends keyof Entity>(this: EntityConstructor<T>, properties: Partial<EntityObject<T>>, values?: Partial<EntityObject<T>>): Promise<T>;
|
|
23
|
-
static orderBy<T extends Entity, K extends EntityKeys<T>>(this: EntityConstructor<T>, column: EntityKeys<T>, direction?: Direction): EntityQuery<T>;
|
|
24
|
-
static getTable<T extends Entity>(this: EntityConstructor<T>): string;
|
|
25
|
-
static new<T extends Entity, K extends keyof T>(this: EntityConstructor<T>, data: Partial<ChildObject<T, Entity>> | {}, exists?: boolean): T;
|
|
26
|
-
static create<T extends Entity>(this: EntityConstructor<T>, data?: ChildObject<T, Entity> | {}): Promise<T>;
|
|
27
|
-
static insert<T extends Entity>(this: EntityConstructor<T>, data: (ChildObject<T, Entity> | {})[]): Promise<void>;
|
|
28
|
-
static get<T extends Entity>(this: EntityConstructor<T>, ...columns: EntityKeys<T>[]): Promise<T[]>;
|
|
29
|
-
static with<T extends Entity>(this: EntityConstructor<T>, ...relations: (KeysOfType<T, BelongsTo<any> | HasOne<any> | HasMany<any> | BelongsToMany<any>> | DotNotationProperties<T> | [
|
|
30
|
-
KeysOfType<T, BelongsTo<any> | HasOne<any> | HasMany<any> | BelongsToMany<any>> | DotNotationProperties<T>,
|
|
31
|
-
(Query: EntityQuery<any>) => void
|
|
32
|
-
])[]): EntityQuery<T>;
|
|
33
|
-
static withCount<T extends Entity, K extends KeysOfType<T, List<Entity>>>(this: EntityConstructor<T>, ...relations: (KeysOfType<T, BelongsTo<any> | HasOne<any> | HasMany<any> | BelongsToMany<any>> | DotNotationProperties<T> | [
|
|
34
|
-
KeysOfType<T, BelongsTo<any> | HasOne<any> | HasMany<any> | BelongsToMany<any>> | DotNotationProperties<T>,
|
|
35
|
-
(Query: EntityQuery<any>) => void
|
|
36
|
-
])[]): EntityQuery<T>;
|
|
37
|
-
static find<T extends Entity>(this: EntityConstructor<T>, id: string | number | ID): Promise<T | undefined>;
|
|
38
|
-
static findOrFail<T extends Entity>(this: EntityConstructor<T>, id: string | number | ID): Promise<T>;
|
|
39
|
-
static getPrimaryKey<T extends Entity>(): EntityKeys<T>;
|
|
40
|
-
static hydrate<T extends Entity>(modelType: EntityConstructor<T>, models: Partial<ChildObject<T, Entity>>[], exist?: boolean): T[];
|
|
41
|
-
static newQuery<T extends Entity>(this: EntityConstructor<T>): EntityQuery<T>;
|
|
42
|
-
getTable(): string;
|
|
43
|
-
load(...relations: (KeysOfType<this, BelongsTo<any> | HasOne<any> | HasMany<any> | BelongsToMany<any>> | DotNotationProperties<this> | [
|
|
44
|
-
KeysOfType<this, BelongsTo<any> | HasOne<any> | HasMany<any> | BelongsToMany<any>> | DotNotationProperties<this>,
|
|
45
|
-
(Query: EntityQuery<any>) => void
|
|
46
|
-
])[]): Promise<this>;
|
|
47
|
-
loadCount<K extends KeysOfType<this, List<Entity>>>(...relations: (KeysOfType<this, BelongsTo<any> | HasOne<any> | HasMany<any> | BelongsToMany<any>> | DotNotationProperties<this> | [
|
|
48
|
-
KeysOfType<this, BelongsTo<any> | HasOne<any> | HasMany<any> | BelongsToMany<any>> | DotNotationProperties<this>,
|
|
49
|
-
(Query: EntityQuery<any>) => void
|
|
50
|
-
])[]): Promise<this>;
|
|
51
|
-
newQuery(): EntityQuery<this>;
|
|
52
|
-
static delete<T extends Entity>(this: EntityConstructor<T>, ...ids: [ID, ...ID[]]): Promise<void>;
|
|
53
|
-
private getDataToSave;
|
|
54
|
-
hydrateWithRelationships(): void;
|
|
55
|
-
fill(data: ChildObject<this, Entity> | {}): this;
|
|
56
|
-
delete(): Promise<void>;
|
|
57
|
-
static truncate<T extends Entity>(this: EntityConstructor<T>): Promise<void>;
|
|
58
|
-
save(data?: ChildObject<this, Entity> | {}): Promise<this>;
|
|
59
|
-
getPrimaryKey<T extends Entity>(this: T): EntityKeys<T>;
|
|
60
|
-
getPrimaryKeyValue<T extends Entity>(this: T): ID;
|
|
61
|
-
toJSON(): { [K in keyof this]: this[K]; };
|
|
62
|
-
private updateTimestamps;
|
|
63
|
-
private convertValueByType;
|
|
64
|
-
}
|
|
65
|
-
//# sourceMappingURL=Entity.d.ts.map
|
package/Database/Entity.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Entity.d.ts","sourceRoot":"","sources":["../../../../Database/Entity.ts"],"names":[],"mappings":"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"}
|
package/Database/Entity.js
DELETED
|
@@ -1,252 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Entity = void 0;
|
|
4
|
-
const EntityProxyHandler_1 = require("./EntityProxyHandler");
|
|
5
|
-
const EntityQuery_1 = require("./EntityQuery");
|
|
6
|
-
const Decorators_1 = require("./Decorators");
|
|
7
|
-
const EntityNotFoundError_1 = require("./EntityNotFoundError");
|
|
8
|
-
class Entity {
|
|
9
|
-
constructor() {
|
|
10
|
-
this.exists = false;
|
|
11
|
-
// tslint:disable-next-line:no-any
|
|
12
|
-
this.original = {};
|
|
13
|
-
const entityProxyHandler = new EntityProxyHandler_1.EntityProxyHandler();
|
|
14
|
-
const proxy = new Proxy(this, entityProxyHandler);
|
|
15
|
-
// Weird JS issues: "filling" an instance with data is not possible since the default values of child entities
|
|
16
|
-
// are assigned after the constructor of base class (this constructor exactly) is called.
|
|
17
|
-
// Calling "proxy.fill will update the instance but then the default values will overwrite them"
|
|
18
|
-
// proxy.fill(this.original = data || {})
|
|
19
|
-
this.hydrateWithRelationships();
|
|
20
|
-
return proxy;
|
|
21
|
-
}
|
|
22
|
-
static get metadata() {
|
|
23
|
-
return Reflect.getMetadata(Decorators_1.EntityMetadataKey, this.prototype);
|
|
24
|
-
}
|
|
25
|
-
get metadata() {
|
|
26
|
-
return this.static.metadata;
|
|
27
|
-
}
|
|
28
|
-
get static() {
|
|
29
|
-
return this.constructor;
|
|
30
|
-
}
|
|
31
|
-
static where(column, operator, value, boolean) {
|
|
32
|
-
const columnMetadata = {
|
|
33
|
-
...this.metadata.columns,
|
|
34
|
-
...this.metadata.relationships
|
|
35
|
-
}[column];
|
|
36
|
-
return this.newQuery().where(columnMetadata.column, operator, value, boolean);
|
|
37
|
-
}
|
|
38
|
-
static whereIn(column, value, boolean) {
|
|
39
|
-
const columnMetadata = {
|
|
40
|
-
...this.metadata.columns,
|
|
41
|
-
...this.metadata.relationships
|
|
42
|
-
}[column];
|
|
43
|
-
return this.newQuery().whereIn(columnMetadata.column, value, boolean);
|
|
44
|
-
}
|
|
45
|
-
static whereNotIn(column, value) {
|
|
46
|
-
const columnMetadata = {
|
|
47
|
-
...this.metadata.columns,
|
|
48
|
-
...this.metadata.relationships
|
|
49
|
-
}[column];
|
|
50
|
-
return this.newQuery().whereNotIn(columnMetadata.column, value);
|
|
51
|
-
}
|
|
52
|
-
static whereLike(column, value, boolean) {
|
|
53
|
-
const columnMetadata = {
|
|
54
|
-
...this.metadata.columns,
|
|
55
|
-
...this.metadata.relationships
|
|
56
|
-
}[column];
|
|
57
|
-
return this.newQuery().whereLike(columnMetadata.column, value, boolean);
|
|
58
|
-
}
|
|
59
|
-
static async first(...columns) {
|
|
60
|
-
return this.newQuery().first(...columns);
|
|
61
|
-
}
|
|
62
|
-
// static first2: <T extends Entity>(this: EntityConstructor<T>, ...params: Parameters<Query<T>['first']>) => Query<T>['first'];
|
|
63
|
-
// tslint:disable-next-line:no-any
|
|
64
|
-
static async firstOrNew(properties, values) {
|
|
65
|
-
return this.newQuery().firstOrNew(properties, values);
|
|
66
|
-
}
|
|
67
|
-
// tslint:disable-next-line:no-any
|
|
68
|
-
static async firstOrCreate(properties, values) {
|
|
69
|
-
return (await this.firstOrNew(properties, values)).save();
|
|
70
|
-
}
|
|
71
|
-
static orderBy(column, direction) {
|
|
72
|
-
return this.newQuery().orderBy(column, direction);
|
|
73
|
-
}
|
|
74
|
-
static getTable() {
|
|
75
|
-
return this.metadata.table || this.name.toLowerCase(); // TODO make metadata.table un-optional
|
|
76
|
-
}
|
|
77
|
-
static new(data, exists = false) {
|
|
78
|
-
const instance = new this();
|
|
79
|
-
instance.fill(instance.original = data);
|
|
80
|
-
instance.exists = exists;
|
|
81
|
-
return instance;
|
|
82
|
-
}
|
|
83
|
-
static create(data) {
|
|
84
|
-
return this.new(data).save();
|
|
85
|
-
}
|
|
86
|
-
static async insert(data) {
|
|
87
|
-
const dataToSave = data.map(piece => {
|
|
88
|
-
const instance = new this();
|
|
89
|
-
return instance.getDataToSave(piece);
|
|
90
|
-
});
|
|
91
|
-
const query = this.newQuery();
|
|
92
|
-
await query.insert(dataToSave);
|
|
93
|
-
}
|
|
94
|
-
static async get(...columns) {
|
|
95
|
-
return this.newQuery().get(...columns);
|
|
96
|
-
}
|
|
97
|
-
static with(...relations) {
|
|
98
|
-
return this.newQuery().with(...relations);
|
|
99
|
-
}
|
|
100
|
-
static withCount(...relations) {
|
|
101
|
-
return this.newQuery().withCount(...relations);
|
|
102
|
-
}
|
|
103
|
-
static async find(id) {
|
|
104
|
-
return this.newQuery().where('id', id).first();
|
|
105
|
-
}
|
|
106
|
-
static async findOrFail(id) {
|
|
107
|
-
const query = this.newQuery().where('id', id);
|
|
108
|
-
const instance = await query.first();
|
|
109
|
-
if (!instance || !Object.entries(instance).length) {
|
|
110
|
-
throw new EntityNotFoundError_1.EntityNotFoundError(this, `No records found for entity '${this.name}' when querying with parameters [${query.getBindings().join(', ')}]`);
|
|
111
|
-
}
|
|
112
|
-
return instance;
|
|
113
|
-
}
|
|
114
|
-
static getPrimaryKey() {
|
|
115
|
-
return 'id';
|
|
116
|
-
}
|
|
117
|
-
static hydrate(modelType, models, exist = false) {
|
|
118
|
-
return models.map(data => {
|
|
119
|
-
return modelType.new(data, exist);
|
|
120
|
-
});
|
|
121
|
-
}
|
|
122
|
-
static newQuery() {
|
|
123
|
-
return (new EntityQuery_1.EntityQuery(this)).table(this.getTable());
|
|
124
|
-
}
|
|
125
|
-
getTable() {
|
|
126
|
-
return this.static.getTable();
|
|
127
|
-
}
|
|
128
|
-
async load(...relations) {
|
|
129
|
-
await this.newQuery().with(...relations).eagerLoadRelationships([this]);
|
|
130
|
-
return this;
|
|
131
|
-
}
|
|
132
|
-
async loadCount(...relations) {
|
|
133
|
-
await this.newQuery().withCount(...relations).eagerLoadRelationshipsCounts([this]);
|
|
134
|
-
return this;
|
|
135
|
-
}
|
|
136
|
-
newQuery() {
|
|
137
|
-
return this.static.newQuery();
|
|
138
|
-
}
|
|
139
|
-
static async delete(...ids) {
|
|
140
|
-
await this.newQuery().whereIn(this.getPrimaryKey(), ids).delete();
|
|
141
|
-
}
|
|
142
|
-
getDataToSave(data) {
|
|
143
|
-
this.fill(data);
|
|
144
|
-
this.updateTimestamps();
|
|
145
|
-
// tslint:disable-next-line:no-any
|
|
146
|
-
const dataToSave = {};
|
|
147
|
-
// TODO diff the values so we don't update every value from the entity
|
|
148
|
-
Object.values({ ...this.metadata.columns, ...this.metadata.relationships }).forEach(field => {
|
|
149
|
-
dataToSave[field.column] = field.value(this, field.property);
|
|
150
|
-
});
|
|
151
|
-
return dataToSave;
|
|
152
|
-
}
|
|
153
|
-
hydrateWithRelationships() {
|
|
154
|
-
const relationships = this.metadata.allRelationships;
|
|
155
|
-
Object.keys(relationships).forEach(key => {
|
|
156
|
-
if (!this[key]) {
|
|
157
|
-
// @ts-ignore
|
|
158
|
-
this[key] = new relationships[key].relationClass(relationships[key], this);
|
|
159
|
-
}
|
|
160
|
-
});
|
|
161
|
-
}
|
|
162
|
-
fill(data) {
|
|
163
|
-
const relationships = this.metadata.relationships;
|
|
164
|
-
Object.keys(relationships).forEach(key => {
|
|
165
|
-
relationships[key].update(this);
|
|
166
|
-
});
|
|
167
|
-
const fields = { ...this.metadata.columns, ...this.metadata.relationships, ...this.metadata.inverseRelationships };
|
|
168
|
-
Object.keys(data).forEach(key => {
|
|
169
|
-
const field = fields[key];
|
|
170
|
-
if (field) {
|
|
171
|
-
const value = data[key];
|
|
172
|
-
field.set(this, this.convertValueByType(value, field));
|
|
173
|
-
}
|
|
174
|
-
});
|
|
175
|
-
return this;
|
|
176
|
-
}
|
|
177
|
-
async delete() {
|
|
178
|
-
if (!this.exists) {
|
|
179
|
-
return;
|
|
180
|
-
}
|
|
181
|
-
await this.newQuery().where(this.getPrimaryKey(), this[this.getPrimaryKey()]).delete();
|
|
182
|
-
}
|
|
183
|
-
static async truncate() {
|
|
184
|
-
await this.newQuery().truncate();
|
|
185
|
-
}
|
|
186
|
-
async save(data = {}) {
|
|
187
|
-
const dataToSave = this.getDataToSave(data);
|
|
188
|
-
const query = this.newQuery();
|
|
189
|
-
if (this.exists) {
|
|
190
|
-
delete dataToSave[this.getPrimaryKey()];
|
|
191
|
-
await query.where(this.getPrimaryKey(), this[this.getPrimaryKey()]).update(dataToSave);
|
|
192
|
-
}
|
|
193
|
-
else {
|
|
194
|
-
const id = await query.insertOne(dataToSave);
|
|
195
|
-
this.exists = true;
|
|
196
|
-
this.fill({ id });
|
|
197
|
-
}
|
|
198
|
-
return this;
|
|
199
|
-
}
|
|
200
|
-
getPrimaryKey() {
|
|
201
|
-
return this.static.getPrimaryKey();
|
|
202
|
-
}
|
|
203
|
-
getPrimaryKeyValue() {
|
|
204
|
-
return this[this.static.getPrimaryKey()];
|
|
205
|
-
}
|
|
206
|
-
toJSON() {
|
|
207
|
-
return Object.keys({ ...this.metadata.columns, ...this.metadata.allRelationships })
|
|
208
|
-
.reduce((obj, key) => {
|
|
209
|
-
if (this.hasOwnProperty(key)) {
|
|
210
|
-
obj[key] = this[key];
|
|
211
|
-
}
|
|
212
|
-
return obj;
|
|
213
|
-
}, {});
|
|
214
|
-
}
|
|
215
|
-
updateTimestamps() {
|
|
216
|
-
const metadata = this.metadata;
|
|
217
|
-
const columnsToFill = {};
|
|
218
|
-
const createdAtValue = metadata.createdAtColumn ? this[metadata.createdAtColumn] : undefined;
|
|
219
|
-
if (metadata.createdAtColumn && !createdAtValue) {
|
|
220
|
-
columnsToFill[metadata.createdAtColumn] = new Date();
|
|
221
|
-
}
|
|
222
|
-
const updatedAtValue = metadata.updatedAtColumn ? this[metadata.updatedAtColumn] : undefined;
|
|
223
|
-
if (metadata.updatedAtColumn &&
|
|
224
|
-
(!updatedAtValue || (updatedAtValue === null || updatedAtValue === void 0 ? void 0 : updatedAtValue.getTime()) === new Date(this.original[metadata.updatedAtColumn]).getTime())) {
|
|
225
|
-
columnsToFill[metadata.updatedAtColumn] = new Date();
|
|
226
|
-
}
|
|
227
|
-
this.fill(columnsToFill);
|
|
228
|
-
}
|
|
229
|
-
convertValueByType(value, property) {
|
|
230
|
-
const converter = types.get(property.type()) || (() => value);
|
|
231
|
-
return converter(value);
|
|
232
|
-
}
|
|
233
|
-
}
|
|
234
|
-
exports.Entity = Entity;
|
|
235
|
-
const types = new Map();
|
|
236
|
-
types.set(Date, (value) => value ? new Date(value) : value);
|
|
237
|
-
types.set(String, (value) => value ? String(value) : value);
|
|
238
|
-
types.set(Boolean, (value) => Boolean(value));
|
|
239
|
-
// let handler = {
|
|
240
|
-
// set: (target, prop, value) => {
|
|
241
|
-
// console.log(target, prop, value);
|
|
242
|
-
// target[prop] = value;
|
|
243
|
-
// return true;
|
|
244
|
-
// },
|
|
245
|
-
// get: (target, prop) => {
|
|
246
|
-
// if(!(prop in Entity))
|
|
247
|
-
// return () => {return new Query};
|
|
248
|
-
// return target[prop];
|
|
249
|
-
// }
|
|
250
|
-
// };
|
|
251
|
-
// Object.setPrototypeOf(Entity, new Proxy({}, new EntityProxyHandler(Entity)));
|
|
252
|
-
//# sourceMappingURL=Entity.js.map
|
package/Database/Entity.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Entity.js","sourceRoot":"","sources":["../../../../Database/Entity.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"EntityNotFoundError.d.ts","sourceRoot":"","sources":["../../../../Database/EntityNotFoundError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAEjC,qBAAa,mBAAoB,SAAQ,KAAK;IACvB,MAAM,EAAE,OAAO,MAAM;gBAArB,MAAM,EAAE,OAAO,MAAM,EAAE,OAAO,EAAE,MAAM;CAC5D"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.EntityNotFoundError = void 0;
|
|
4
|
-
class EntityNotFoundError extends Error {
|
|
5
|
-
constructor(entity, message) {
|
|
6
|
-
super(message);
|
|
7
|
-
this.entity = entity;
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
exports.EntityNotFoundError = EntityNotFoundError;
|
|
11
|
-
//# sourceMappingURL=EntityNotFoundError.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"EntityNotFoundError.js","sourceRoot":"","sources":["../../../../Database/EntityNotFoundError.ts"],"names":[],"mappings":";;;AAEA,MAAa,mBAAoB,SAAQ,KAAK;IAC1C,YAAmB,MAAqB,EAAE,OAAe;QAAG,KAAK,CAAC,OAAO,CAAC,CAAA;QAAvD,WAAM,GAAN,MAAM,CAAe;IAAkC,CAAC;CAC9E;AAFD,kDAEC"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { Entity } from './Entity';
|
|
2
|
-
export declare class EntityProxyHandler<T extends Entity> {
|
|
3
|
-
set<K extends keyof T>(target: T, property: string, value: T[K]): boolean;
|
|
4
|
-
get(target: T, property: string): T[keyof T] | ((...args: object[]) => any);
|
|
5
|
-
}
|
|
6
|
-
//# sourceMappingURL=EntityProxyHandler.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"EntityProxyHandler.d.ts","sourceRoot":"","sources":["../../../../Database/EntityProxyHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAIjC,qBAAa,kBAAkB,CAAC,CAAC,SAAS,MAAM;IAE5C,GAAG,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IAK/D,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,2BAQF,MAAM,EAAE;CAYxC"}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.EntityProxyHandler = void 0;
|
|
4
|
-
const EntityQuery_1 = require("./EntityQuery");
|
|
5
|
-
class EntityProxyHandler {
|
|
6
|
-
set(target, property, value) {
|
|
7
|
-
target[property] = value;
|
|
8
|
-
return true;
|
|
9
|
-
}
|
|
10
|
-
get(target, property) {
|
|
11
|
-
if (!(property in target)) {
|
|
12
|
-
const targetConstructor = target.constructor;
|
|
13
|
-
const query = new EntityQuery_1.EntityQuery(targetConstructor);
|
|
14
|
-
const queryProperty = query[property];
|
|
15
|
-
if (typeof queryProperty === 'function') {
|
|
16
|
-
// @ts-ignore
|
|
17
|
-
query.table(target.constructor.getTable());
|
|
18
|
-
return (...args) => {
|
|
19
|
-
return queryProperty.apply(query, args);
|
|
20
|
-
};
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
return target[property];
|
|
24
|
-
// if (typeof value === 'function') {
|
|
25
|
-
// return value.bind(target);
|
|
26
|
-
// }
|
|
27
|
-
// return value;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
exports.EntityProxyHandler = EntityProxyHandler;
|
|
31
|
-
//# sourceMappingURL=EntityProxyHandler.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"EntityProxyHandler.js","sourceRoot":"","sources":["../../../../Database/EntityProxyHandler.ts"],"names":[],"mappings":";;;AACA,+CAA2C;AAG3C,MAAa,kBAAkB;IAE3B,GAAG,CAAoB,MAAS,EAAE,QAAgB,EAAE,KAAW;QAC3D,MAAM,CAAC,QAAmB,CAAC,GAAG,KAAK,CAAA;QACnC,OAAO,IAAI,CAAA;IACf,CAAC;IAED,GAAG,CAAC,MAAS,EAAE,QAAgB;QAC3B,IAAI,CAAC,CAAC,QAAQ,IAAI,MAAM,CAAC,EAAE;YACvB,MAAM,iBAAiB,GAAG,MAAM,CAAC,WAAmC,CAAA;YACpE,MAAM,KAAK,GAAG,IAAI,yBAAW,CAAC,iBAAiB,CAAC,CAAA;YAChD,MAAM,aAAa,GAAG,KAAK,CAAC,QAAgC,CAAa,CAAA;YACzE,IAAI,OAAO,aAAa,KAAK,UAAU,EAAE;gBACrC,aAAa;gBACb,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAA;gBAC1C,OAAO,CAAC,GAAG,IAAc,EAAE,EAAE;oBACzB,OAAO,aAAa,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;gBAC3C,CAAC,CAAA;aACJ;SACJ;QAED,OAAO,MAAM,CAAC,QAAmB,CAAC,CAAA;QAClC,qCAAqC;QACrC,iCAAiC;QACjC,IAAI;QACJ,gBAAgB;IACpB,CAAC;CACJ;AA3BD,gDA2BC"}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { Query } from './Query';
|
|
2
|
-
import { Entity } from './Entity';
|
|
3
|
-
import { DotNotationProperties, EntityConstructor, EntityObject, Expression } from './index';
|
|
4
|
-
import { KeysOfType } from '../Support';
|
|
5
|
-
import { BelongsTo, BelongsToMany, HasMany, HasOne } from './Fields';
|
|
6
|
-
import { List } from './List';
|
|
7
|
-
import { RelationsTreeQuery } from './Types';
|
|
8
|
-
export declare class EntityQuery<T extends Entity> extends Query<T> {
|
|
9
|
-
entity: EntityConstructor<T>;
|
|
10
|
-
eagerLoad: (string | [string, RelationsTreeQuery])[];
|
|
11
|
-
eagerLoadCount: (string | [string, RelationsTreeQuery])[];
|
|
12
|
-
constructor(entity: EntityConstructor<T>);
|
|
13
|
-
get<K extends keyof T>(...columns: (K | string | Expression)[]): Promise<T[]>;
|
|
14
|
-
eagerLoadRelationships(entities: T[]): Promise<T[]>;
|
|
15
|
-
eagerLoadRelationshipsCounts(entities: T[]): Promise<T[]>;
|
|
16
|
-
first<K extends keyof T>(...columns: (K | string | Expression)[]): Promise<T | undefined>;
|
|
17
|
-
firstOrNew<K extends keyof T>(properties: Partial<EntityObject<T> | Record<string, any>>, values?: Partial<EntityObject<T>>): Promise<T>;
|
|
18
|
-
with(...relations: (KeysOfType<T, BelongsTo<any> | HasOne<any> | HasMany<any> | BelongsToMany<any>> | DotNotationProperties<this> | [
|
|
19
|
-
KeysOfType<T, BelongsTo<any> | HasOne<any> | HasMany<any> | BelongsToMany<any>> | DotNotationProperties<this>,
|
|
20
|
-
RelationsTreeQuery
|
|
21
|
-
])[]): this;
|
|
22
|
-
withCount<K extends KeysOfType<T, List<Entity>>>(...relations: (KeysOfType<T, BelongsTo<any> | HasOne<any> | HasMany<any> | BelongsToMany<any>> | DotNotationProperties<this> | [
|
|
23
|
-
KeysOfType<T, BelongsTo<any> | HasOne<any> | HasMany<any> | BelongsToMany<any>> | DotNotationProperties<this>,
|
|
24
|
-
RelationsTreeQuery
|
|
25
|
-
])[]): this;
|
|
26
|
-
private tree;
|
|
27
|
-
private treeBack;
|
|
28
|
-
}
|
|
29
|
-
//# sourceMappingURL=EntityQuery.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"EntityQuery.d.ts","sourceRoot":"","sources":["../../../../Database/EntityQuery.ts"],"names":[],"mappings":"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"}
|
package/Database/EntityQuery.js
DELETED
|
@@ -1,157 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.EntityQuery = void 0;
|
|
4
|
-
const Query_1 = require("./Query");
|
|
5
|
-
const Entity_1 = require("./Entity");
|
|
6
|
-
class EntityQuery extends Query_1.Query {
|
|
7
|
-
constructor(entity) {
|
|
8
|
-
super();
|
|
9
|
-
this.entity = entity;
|
|
10
|
-
// tslint:disable-next-line:no-any
|
|
11
|
-
this.eagerLoad = [];
|
|
12
|
-
// tslint:disable-next-line:no-any
|
|
13
|
-
this.eagerLoadCount = [];
|
|
14
|
-
}
|
|
15
|
-
async get(...columns) {
|
|
16
|
-
let entities = await super.get(...columns);
|
|
17
|
-
entities = this.entity.hydrate(this.entity, entities, true);
|
|
18
|
-
entities = await this.eagerLoadRelationships(entities);
|
|
19
|
-
return await this.eagerLoadRelationshipsCounts(entities);
|
|
20
|
-
}
|
|
21
|
-
async eagerLoadRelationships(entities) {
|
|
22
|
-
const relationsTree = this.tree(this.eagerLoad);
|
|
23
|
-
await Object.keys(relationsTree).forEachAsync(async (relationName) => {
|
|
24
|
-
const relationValue = relationsTree[relationName];
|
|
25
|
-
const relation = this.entity.metadata.allRelationships[relationName];
|
|
26
|
-
if (!relation) {
|
|
27
|
-
throw new Error(`Relation '${relationName}' doesn't not exist on entity '${this.entity.name}'`);
|
|
28
|
-
}
|
|
29
|
-
// tslint:disable-next-line:no-any
|
|
30
|
-
let fieldQueryFunction;
|
|
31
|
-
let otherRelations = [];
|
|
32
|
-
if (relationValue instanceof Function) {
|
|
33
|
-
fieldQueryFunction = relationValue;
|
|
34
|
-
}
|
|
35
|
-
else {
|
|
36
|
-
otherRelations = this.treeBack(relationValue);
|
|
37
|
-
}
|
|
38
|
-
const results = await relation.getRelatedValue(entities, otherRelations, fieldQueryFunction);
|
|
39
|
-
if (results.length) {
|
|
40
|
-
entities = relation.match(entities, results);
|
|
41
|
-
}
|
|
42
|
-
});
|
|
43
|
-
// await this.eagerLoad.forEachAsync(async (field) => {
|
|
44
|
-
// // tslint:disable-next-line:no-any
|
|
45
|
-
// let fieldName: string, fieldQueryFunction: undefined | RelationsTreeQuery
|
|
46
|
-
// if (field instanceof Array) {
|
|
47
|
-
// fieldName = field[0]
|
|
48
|
-
// fieldQueryFunction = field[1]
|
|
49
|
-
// } else {
|
|
50
|
-
// fieldName = field
|
|
51
|
-
// }
|
|
52
|
-
// const [first, ...rest] = fieldName.split('.')
|
|
53
|
-
// const relation = this.entity.metadata.allRelationships[first]
|
|
54
|
-
// const results = await relation.getRelatedValue(entities, [rest.join('.')], fieldQueryFunction as (query: Query) => void)
|
|
55
|
-
// if (results.length) {
|
|
56
|
-
// entities = relation.match(entities, results) as T[]
|
|
57
|
-
// }
|
|
58
|
-
// })
|
|
59
|
-
return entities;
|
|
60
|
-
}
|
|
61
|
-
async eagerLoadRelationshipsCounts(entities) {
|
|
62
|
-
await this.eagerLoadCount.forEachAsync(async (field) => {
|
|
63
|
-
// tslint:disable-next-line:no-any
|
|
64
|
-
let fieldName, fieldQueryFunction;
|
|
65
|
-
if (field instanceof Array) {
|
|
66
|
-
fieldName = field[0];
|
|
67
|
-
fieldQueryFunction = field[1];
|
|
68
|
-
}
|
|
69
|
-
else {
|
|
70
|
-
fieldName = field;
|
|
71
|
-
}
|
|
72
|
-
const relation = this.entity.metadata.allRelationships[fieldName];
|
|
73
|
-
const results = await relation.getRelatedCount(entities, fieldQueryFunction);
|
|
74
|
-
if (results.length) {
|
|
75
|
-
entities = relation.matchCounts(entities, results);
|
|
76
|
-
}
|
|
77
|
-
});
|
|
78
|
-
return entities;
|
|
79
|
-
}
|
|
80
|
-
async first(...columns) {
|
|
81
|
-
const entityData = await super.first(...columns);
|
|
82
|
-
if (!entityData) {
|
|
83
|
-
return undefined;
|
|
84
|
-
}
|
|
85
|
-
let entity = this.entity.new(entityData, true);
|
|
86
|
-
entity = (await this.eagerLoadRelationships([entity])).first();
|
|
87
|
-
return (await this.eagerLoadRelationshipsCounts([entity])).first();
|
|
88
|
-
}
|
|
89
|
-
async firstOrNew(
|
|
90
|
-
// tslint:disable-next-line:no-any
|
|
91
|
-
properties, values) {
|
|
92
|
-
Object.entries(properties).forEach(([property, value]) => {
|
|
93
|
-
const field = this.entity.metadata.columns[property] || this.entity.metadata.relationships[property];
|
|
94
|
-
const finalValue = value instanceof Entity_1.Entity ? value[value.getPrimaryKey()] : value;
|
|
95
|
-
if (finalValue === undefined) {
|
|
96
|
-
this.andWhereNull(field.column);
|
|
97
|
-
}
|
|
98
|
-
else {
|
|
99
|
-
this.andWhere(field.column, finalValue);
|
|
100
|
-
}
|
|
101
|
-
});
|
|
102
|
-
const instance = await this.first();
|
|
103
|
-
if (!instance) {
|
|
104
|
-
return this.entity.new({ ...properties, ...values });
|
|
105
|
-
}
|
|
106
|
-
instance.exists = true;
|
|
107
|
-
return instance;
|
|
108
|
-
}
|
|
109
|
-
with(...relations) {
|
|
110
|
-
relations = relations.filter(Boolean);
|
|
111
|
-
if (relations.length) {
|
|
112
|
-
// tslint:disable-next-line:no-any
|
|
113
|
-
this.eagerLoad = this.eagerLoad.concat(relations).unique();
|
|
114
|
-
}
|
|
115
|
-
return this;
|
|
116
|
-
}
|
|
117
|
-
withCount(...relations) {
|
|
118
|
-
// @ts-ignore
|
|
119
|
-
this.eagerLoadCount = this.eagerLoadCount.concat(relations);
|
|
120
|
-
return this;
|
|
121
|
-
}
|
|
122
|
-
tree(relations) {
|
|
123
|
-
const tree = {};
|
|
124
|
-
relations.forEach(relation => {
|
|
125
|
-
let relationName;
|
|
126
|
-
let relationValue = {};
|
|
127
|
-
if (relation instanceof Array) {
|
|
128
|
-
relationName = relation[0];
|
|
129
|
-
relationValue = relation[1];
|
|
130
|
-
}
|
|
131
|
-
else {
|
|
132
|
-
relationName = relation;
|
|
133
|
-
}
|
|
134
|
-
let container = tree;
|
|
135
|
-
const relationStringParts = relationName.split('.');
|
|
136
|
-
relationStringParts.forEach((part, index) => {
|
|
137
|
-
const value = index === relationStringParts.length - 1 ? relationValue : {};
|
|
138
|
-
// @ts-ignore
|
|
139
|
-
container = (container[part] ? container[part] : container[part] = value);
|
|
140
|
-
});
|
|
141
|
-
});
|
|
142
|
-
return tree;
|
|
143
|
-
}
|
|
144
|
-
treeBack(relationsTree) {
|
|
145
|
-
return Object.keys(relationsTree).map(relationName => {
|
|
146
|
-
const item = relationsTree[relationName];
|
|
147
|
-
if (item instanceof Function) {
|
|
148
|
-
return [relationName, item];
|
|
149
|
-
}
|
|
150
|
-
else {
|
|
151
|
-
return [relationName, this.treeBack(item)].filter(Boolean).join('.');
|
|
152
|
-
}
|
|
153
|
-
});
|
|
154
|
-
}
|
|
155
|
-
}
|
|
156
|
-
exports.EntityQuery = EntityQuery;
|
|
157
|
-
//# sourceMappingURL=EntityQuery.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"EntityQuery.js","sourceRoot":"","sources":["../../../../Database/EntityQuery.ts"],"names":[],"mappings":"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"}
|
package/Database/Expression.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Expression.d.ts","sourceRoot":"","sources":["../../../../Database/Expression.ts"],"names":[],"mappings":"AAAA,qBAAa,UAAU;IACA,KAAK,EAAE,MAAM;gBAAb,KAAK,EAAE,MAAM;IAEhC,KAAK;CAGR"}
|