@spinajs/orm-sql 2.0.38 → 2.0.39
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/lib/compilers.d.ts +25 -6
- package/lib/compilers.js +223 -16
- package/lib/compilers.js.map +1 -1
- package/lib/converters.js +4 -7
- package/lib/converters.js.map +1 -1
- package/lib/index.js +3 -0
- package/lib/index.js.map +1 -1
- package/lib/orm/src/builders.d.ts +636 -0
- package/lib/orm/src/builders.js +1509 -0
- package/lib/orm/src/builders.js.map +1 -0
- package/lib/orm/src/converters.d.ts +14 -0
- package/lib/orm/src/converters.js +57 -0
- package/lib/orm/src/converters.js.map +1 -0
- package/lib/orm/src/decorators.d.ts +152 -0
- package/lib/orm/src/decorators.js +454 -0
- package/lib/orm/src/decorators.js.map +1 -0
- package/lib/orm/src/dehydrators.d.ts +7 -0
- package/lib/orm/src/dehydrators.js +41 -0
- package/lib/orm/src/dehydrators.js.map +1 -0
- package/lib/orm/src/driver.d.ts +80 -0
- package/lib/orm/src/driver.js +104 -0
- package/lib/orm/src/driver.js.map +1 -0
- package/lib/orm/src/enums.d.ts +115 -0
- package/lib/orm/src/enums.js +125 -0
- package/lib/orm/src/enums.js.map +1 -0
- package/lib/orm/src/exceptions.d.ts +6 -0
- package/lib/orm/src/exceptions.js +11 -0
- package/lib/orm/src/exceptions.js.map +1 -0
- package/lib/orm/src/hydrators.d.ts +19 -0
- package/lib/orm/src/hydrators.js +110 -0
- package/lib/orm/src/hydrators.js.map +1 -0
- package/lib/orm/src/interfaces.d.ts +794 -0
- package/lib/orm/src/interfaces.js +293 -0
- package/lib/orm/src/interfaces.js.map +1 -0
- package/lib/orm/src/model.d.ts +310 -0
- package/lib/orm/src/model.js +779 -0
- package/lib/orm/src/model.js.map +1 -0
- package/lib/orm/src/orm.d.ts +61 -0
- package/lib/orm/src/orm.js +341 -0
- package/lib/orm/src/orm.js.map +1 -0
- package/lib/orm/src/relations.d.ts +150 -0
- package/lib/orm/src/relations.js +681 -0
- package/lib/orm/src/relations.js.map +1 -0
- package/lib/orm/src/statements.d.ts +140 -0
- package/lib/orm/src/statements.js +314 -0
- package/lib/orm/src/statements.js.map +1 -0
- package/lib/orm/src/types.d.ts +11 -0
- package/lib/orm/src/types.js +3 -0
- package/lib/orm/src/types.js.map +1 -0
- package/lib/orm-sql/src/builders.d.ts +11 -0
- package/lib/orm-sql/src/builders.js +42 -0
- package/lib/orm-sql/src/builders.js.map +1 -0
- package/lib/orm-sql/src/compilers.d.ts +226 -0
- package/lib/orm-sql/src/compilers.js +1016 -0
- package/lib/orm-sql/src/compilers.js.map +1 -0
- package/lib/orm-sql/src/converters.d.ts +10 -0
- package/lib/orm-sql/src/converters.js +39 -0
- package/lib/orm-sql/src/converters.js.map +1 -0
- package/lib/orm-sql/src/index.d.ts +6 -0
- package/lib/orm-sql/src/index.js +70 -0
- package/lib/orm-sql/src/index.js.map +1 -0
- package/lib/orm-sql/src/statements.d.ts +46 -0
- package/lib/orm-sql/src/statements.js +268 -0
- package/lib/orm-sql/src/statements.js.map +1 -0
- package/lib/statements.js +22 -4
- package/lib/statements.js.map +1 -1
- package/package.json +5 -5
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"builders.js","sourceRoot":"","sources":["../../../../orm/src/builders.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { IUniversalConverterOptions, ValueConverter } from './interfaces';
|
|
3
|
+
import { ModelBase } from './model';
|
|
4
|
+
/**
|
|
5
|
+
* UUid converter to & from db as binary
|
|
6
|
+
*/
|
|
7
|
+
export declare class UuidConverter extends ValueConverter {
|
|
8
|
+
toDB(value: string): Buffer;
|
|
9
|
+
fromDB(value: Buffer): string;
|
|
10
|
+
}
|
|
11
|
+
export declare class UniversalValueConverter extends ValueConverter {
|
|
12
|
+
toDB(value: any, model: ModelBase, options: IUniversalConverterOptions): any;
|
|
13
|
+
fromDB(value: string, raw: any, options: IUniversalConverterOptions): any;
|
|
14
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.UniversalValueConverter = exports.UuidConverter = void 0;
|
|
4
|
+
const luxon_1 = require("luxon");
|
|
5
|
+
const interfaces_1 = require("./interfaces");
|
|
6
|
+
/**
|
|
7
|
+
* UUid converter to & from db as binary
|
|
8
|
+
*/
|
|
9
|
+
class UuidConverter extends interfaces_1.ValueConverter {
|
|
10
|
+
toDB(value) {
|
|
11
|
+
const buffer = Buffer.alloc(16);
|
|
12
|
+
if (!value) {
|
|
13
|
+
return null;
|
|
14
|
+
}
|
|
15
|
+
buffer.write(value.replace(/-/g, ''), 'hex');
|
|
16
|
+
return buffer;
|
|
17
|
+
}
|
|
18
|
+
fromDB(value) {
|
|
19
|
+
return value.toString('hex');
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
exports.UuidConverter = UuidConverter;
|
|
23
|
+
class UniversalValueConverter extends interfaces_1.ValueConverter {
|
|
24
|
+
toDB(value, model, options) {
|
|
25
|
+
switch (model[options.TypeColumn]) {
|
|
26
|
+
case 'string':
|
|
27
|
+
return value;
|
|
28
|
+
case 'boolean':
|
|
29
|
+
return value ? 'true' : 'false';
|
|
30
|
+
case 'datetime':
|
|
31
|
+
return value.toISO();
|
|
32
|
+
case 'float':
|
|
33
|
+
case 'number':
|
|
34
|
+
value.toString();
|
|
35
|
+
case 'json':
|
|
36
|
+
return JSON.stringify(value);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
fromDB(value, raw, options) {
|
|
40
|
+
switch (raw[options.TypeColumn]) {
|
|
41
|
+
case 'string':
|
|
42
|
+
return value;
|
|
43
|
+
case 'boolean':
|
|
44
|
+
return value === 'true' ? true : false;
|
|
45
|
+
case 'datetime':
|
|
46
|
+
return luxon_1.DateTime.fromISO(value);
|
|
47
|
+
case 'float':
|
|
48
|
+
return parseFloat(value);
|
|
49
|
+
case 'number':
|
|
50
|
+
return parseInt(value, 10);
|
|
51
|
+
case 'json':
|
|
52
|
+
return JSON.parse(value);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
exports.UniversalValueConverter = UniversalValueConverter;
|
|
57
|
+
//# sourceMappingURL=converters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"converters.js","sourceRoot":"","sources":["../../../../orm/src/converters.ts"],"names":[],"mappings":";;;AACA,iCAAiC;AACjC,6CAA0E;AAG1E;;GAEG;AACH,MAAa,aAAc,SAAQ,2BAAc;IACxC,IAAI,CAAC,KAAa;QACvB,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAEhC,IAAI,CAAC,KAAK,EAAE;YACV,OAAO,IAAI,CAAC;SACb;QAED,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;QAE7C,OAAO,MAAM,CAAC;IAChB,CAAC;IAEM,MAAM,CAAC,KAAa;QACzB,OAAO,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;CACF;AAhBD,sCAgBC;AAED,MAAa,uBAAwB,SAAQ,2BAAc;IAClD,IAAI,CAAC,KAAU,EAAE,KAAgB,EAAE,OAAmC;QAC3E,QAAS,KAAa,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;YAC1C,KAAK,QAAQ;gBACX,OAAO,KAAK,CAAC;YACf,KAAK,SAAS;gBACZ,OAAO,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;YAClC,KAAK,UAAU;gBACb,OAAQ,KAAkB,CAAC,KAAK,EAAE,CAAC;YACrC,KAAK,OAAO,CAAC;YACb,KAAK,QAAQ;gBACV,KAAgB,CAAC,QAAQ,EAAE,CAAC;YAC/B,KAAK,MAAM;gBACT,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;SAChC;IACH,CAAC;IAEM,MAAM,CAAC,KAAa,EAAE,GAAQ,EAAE,OAAmC;QACxE,QAAQ,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;YAC/B,KAAK,QAAQ;gBACX,OAAO,KAAK,CAAC;YACf,KAAK,SAAS;gBACZ,OAAO,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;YACzC,KAAK,UAAU;gBACb,OAAO,gBAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACjC,KAAK,OAAO;gBACV,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC;YAC3B,KAAK,QAAQ;gBACX,OAAO,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAC7B,KAAK,MAAM;gBACT,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SAC5B;IACH,CAAC;CACF;AAjCD,0DAiCC"}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import { Constructor, IContainer } from '@spinajs/di';
|
|
2
|
+
import { IModelDescriptor, IRelationDescriptor, IDiscriminationEntry } from './interfaces';
|
|
3
|
+
import 'reflect-metadata';
|
|
4
|
+
import { ModelBase } from './model';
|
|
5
|
+
import { Relation } from './relations';
|
|
6
|
+
export declare const MODEL_DESCTRIPTION_SYMBOL: unique symbol;
|
|
7
|
+
export declare const MIGRATION_DESCRIPTION_SYMBOL: unique symbol;
|
|
8
|
+
/**
|
|
9
|
+
* Helper func to create model metadata
|
|
10
|
+
*/
|
|
11
|
+
export declare function extractDecoratorDescriptor(callback: (model: IModelDescriptor, target: any, propertyKey: symbol | string, indexOrDescriptor: number | PropertyDescriptor) => void, base?: boolean): any;
|
|
12
|
+
/**
|
|
13
|
+
* Sets migration option
|
|
14
|
+
*
|
|
15
|
+
* @param connection - connection name, must exists in configuration file
|
|
16
|
+
*/
|
|
17
|
+
export declare function Migration(connection: string): (target: any) => void;
|
|
18
|
+
/**
|
|
19
|
+
* Connection model decorator, assigns connection to model
|
|
20
|
+
*
|
|
21
|
+
* @param name - connection name, must be avaible in db config
|
|
22
|
+
*/
|
|
23
|
+
export declare function Connection(name: string): any;
|
|
24
|
+
/**
|
|
25
|
+
* TableName model decorator, assigns table from database to model
|
|
26
|
+
*
|
|
27
|
+
* @param name - table name in database that is referred by this model
|
|
28
|
+
*/
|
|
29
|
+
export declare function Model(tableName: string): any;
|
|
30
|
+
/**
|
|
31
|
+
* Set create timestamps feature to model. Proper columns must be avaible in database table.
|
|
32
|
+
* It allow to track creation times & changes to model
|
|
33
|
+
*/
|
|
34
|
+
export declare function CreatedAt(): any;
|
|
35
|
+
/**
|
|
36
|
+
* Set update timestamps feature to model. Proper columns must be avaible in database table.
|
|
37
|
+
* It allow to track creation times & changes to model
|
|
38
|
+
*/
|
|
39
|
+
export declare function UpdatedAt(): any;
|
|
40
|
+
/**
|
|
41
|
+
* Sets soft delete feature to model. Soft delete dont delete model, but sets deletion date and hides from
|
|
42
|
+
* select result by default.
|
|
43
|
+
*/
|
|
44
|
+
export declare function SoftDelete(): any;
|
|
45
|
+
/**
|
|
46
|
+
* Enable archive mode for model. If enabled all changes creates new instance in DB and old have set archived field
|
|
47
|
+
* and gets attached to new model. It enabled to track changes to model in DB and also preserve data in relations.
|
|
48
|
+
*
|
|
49
|
+
*/
|
|
50
|
+
export declare function Archived(): any;
|
|
51
|
+
/**
|
|
52
|
+
* Makrs field as primary key
|
|
53
|
+
*/
|
|
54
|
+
export declare function Primary(): any;
|
|
55
|
+
/**
|
|
56
|
+
* Marks columns as UUID. Column will be generated ad creation
|
|
57
|
+
*/
|
|
58
|
+
export declare function Ignore(): any;
|
|
59
|
+
/**
|
|
60
|
+
* Marks columns as UUID. Column will be generated ad creation
|
|
61
|
+
*/
|
|
62
|
+
export declare function Uuid(): any;
|
|
63
|
+
export declare function JunctionTable(): any;
|
|
64
|
+
/**
|
|
65
|
+
*
|
|
66
|
+
* Marks model to have discrimination map.
|
|
67
|
+
*
|
|
68
|
+
* @param fieldName - db field name to look for
|
|
69
|
+
* @param discriminationMap - field - model mapping
|
|
70
|
+
*/
|
|
71
|
+
export declare function DiscriminationMap(fieldName: string, discriminationMap: IDiscriminationEntry[]): any;
|
|
72
|
+
/**
|
|
73
|
+
* Marks relation as recursive. When relation is populated it loads all to the top
|
|
74
|
+
*
|
|
75
|
+
*/
|
|
76
|
+
export declare function Recursive(): any;
|
|
77
|
+
export interface IForwardReference<T = any> {
|
|
78
|
+
forwardRef: T;
|
|
79
|
+
}
|
|
80
|
+
export declare const forwardRef: (fn: () => any) => IForwardReference;
|
|
81
|
+
/**
|
|
82
|
+
* Creates one to one relation with target model.
|
|
83
|
+
*
|
|
84
|
+
* @param foreignKey - foreign key name in db, defaults to lowercase property name with _id suffix eg. owner_id
|
|
85
|
+
* @param primaryKey - primary key in related model, defaults to primary key taken from db
|
|
86
|
+
*/
|
|
87
|
+
export declare function BelongsTo(targetModel: Constructor<ModelBase> | string, foreignKey?: string, primaryKey?: string): any;
|
|
88
|
+
/**
|
|
89
|
+
* Creates one to one relation with target model.
|
|
90
|
+
*
|
|
91
|
+
* @param foreignKey - foreign key name in db, defaults to lowercase property name with _id suffix eg. owner_id
|
|
92
|
+
* @param primaryKey - primary key in related model, defaults to primary key taken from db
|
|
93
|
+
*/
|
|
94
|
+
export declare function ForwardBelongsTo(forwardRef: IForwardReference, foreignKey?: string, primaryKey?: string): any;
|
|
95
|
+
export interface IHasManyDecoratorOptions {
|
|
96
|
+
foreignKey?: string;
|
|
97
|
+
primaryKey?: string;
|
|
98
|
+
/**
|
|
99
|
+
* Relation factory, sometimes we dont want to create standard relation object.
|
|
100
|
+
* When creating object and specific relation is created via this factory
|
|
101
|
+
*/
|
|
102
|
+
factory?: (owner: ModelBase, relation: IRelationDescriptor, container: IContainer) => Relation<ModelBase<unknown>, ModelBase<unknown>>;
|
|
103
|
+
/**
|
|
104
|
+
* sometimes we dont want to create standard relation object, so we create type
|
|
105
|
+
* that is passed in this property
|
|
106
|
+
*/
|
|
107
|
+
type?: Constructor<Relation<ModelBase<unknown>, ModelBase<unknown>>>;
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Creates one to many relation with target model.
|
|
111
|
+
*
|
|
112
|
+
* @param targetModel - due to limitations of metadata reflection api in typescript target model mus be set explicitly
|
|
113
|
+
* @param foreignKey - foreign key name in db, defaults to lowercase property name with _id suffix eg. owner_id
|
|
114
|
+
* @param primaryKey - primary key in source table defaults to lowercase property name with _id suffix eg. owner_id
|
|
115
|
+
*
|
|
116
|
+
*/
|
|
117
|
+
export declare function HasMany(targetModel: Constructor<ModelBase> | string, options?: IHasManyDecoratorOptions): any;
|
|
118
|
+
export declare function Historical(targetModel: Constructor<ModelBase>): any;
|
|
119
|
+
/**
|
|
120
|
+
* Creates many to many relation with separate join table
|
|
121
|
+
*
|
|
122
|
+
* @param junctionModel - model for junction table
|
|
123
|
+
* @param targetModel - model for related data
|
|
124
|
+
* @param targetModelPKey - target model primary key name
|
|
125
|
+
* @param sourceModelPKey - source model primary key name
|
|
126
|
+
* @param junctionModelTargetPk - junction table target primary key name ( foreign key for target model )
|
|
127
|
+
* @param junctionModelSourcePk - junction table source primary key name ( foreign key for source model )
|
|
128
|
+
*/
|
|
129
|
+
export declare function HasManyToMany(junctionModel: Constructor<ModelBase>, targetModel: Constructor<ModelBase> | string, targetModelPKey?: string, sourceModelPKey?: string, junctionModelTargetPk?: string, junctionModelSourcePk?: string): any;
|
|
130
|
+
/**
|
|
131
|
+
* Mark field as datetime type. It will ensure that conversion to & from DB is valid, eg. sqlite DB
|
|
132
|
+
* saves datetime as TEXT and ISO8601 strings
|
|
133
|
+
*/
|
|
134
|
+
export declare function DateTime(): any;
|
|
135
|
+
/**
|
|
136
|
+
* Converts data in db to json object. Column type in DB should be STRING.
|
|
137
|
+
* DO not use this decorator for use of native DB JSON implementation.
|
|
138
|
+
* ORM will detect automatically if field is native JSON DB type.
|
|
139
|
+
*/
|
|
140
|
+
export declare function Json(): any;
|
|
141
|
+
/**
|
|
142
|
+
*
|
|
143
|
+
* Universal converter that guess whitch type to return. Usefull in tables that holds as text different values
|
|
144
|
+
* eg. metadata table
|
|
145
|
+
*
|
|
146
|
+
* @param typeColumn - type column that defines final type of value
|
|
147
|
+
*/
|
|
148
|
+
export declare function UniversalConverter(typeColumn: string): any;
|
|
149
|
+
/**
|
|
150
|
+
* Mark field as SET type. It will ensure that conversion to & from DB is valid, eg. to emulate field type SET in sqlite
|
|
151
|
+
*/
|
|
152
|
+
export declare function Set(): any;
|