@ts-awesome/orm 1.6.0-rc0 → 1.6.0
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/.gitlab-ci.yml +0 -4
- package/dist/builder.d.ts +0 -1
- package/dist/builder.js +24 -27
- package/dist/builder.js.map +1 -1
- package/dist/decorators.js.map +1 -1
- package/dist/interfaces.d.ts +3 -3
- package/package.json +1 -1
- package/tests/builder.spec.ts +102 -2
- package/tests/models.ts +26 -1
package/.gitlab-ci.yml
CHANGED
|
@@ -26,12 +26,8 @@ publish:
|
|
|
26
26
|
only:
|
|
27
27
|
- tags
|
|
28
28
|
script:
|
|
29
|
-
- echo $NPM_RC
|
|
30
|
-
- cat $NPM_RC
|
|
31
29
|
- npm run lint
|
|
32
30
|
- npm run build
|
|
33
31
|
- npm run test
|
|
34
32
|
- npm --no-git-tag-version version ${CI_COMMIT_TAG}
|
|
35
33
|
- npm publish --access public --userconfig $NPM_RC
|
|
36
|
-
variables:
|
|
37
|
-
NPM_TOKEN: ${NPM_TOKEN}
|
package/dist/builder.d.ts
CHANGED
package/dist/builder.js
CHANGED
|
@@ -137,33 +137,31 @@ function groupBy(_) {
|
|
|
137
137
|
return this;
|
|
138
138
|
}
|
|
139
139
|
function values(_) {
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
if (kind) {
|
|
153
|
-
|
|
154
|
-
throw new Error(`DbField specified by string or symbol is not support since 1.0.0`);
|
|
155
|
-
}
|
|
156
|
-
const { writer, writeQuery } = kind;
|
|
157
|
-
if (typeof writer === 'function') {
|
|
158
|
-
value = writer(value);
|
|
159
|
-
}
|
|
160
|
-
if (typeof writeQuery === 'function') {
|
|
161
|
-
value = writeQuery(new wrappers_1.UnnamedParameter(value), proxy(this._table, false, this._alias));
|
|
162
|
-
}
|
|
140
|
+
const values = typeof _ === 'function'
|
|
141
|
+
? _(proxy(this._table, false, this._alias))
|
|
142
|
+
: { ..._ };
|
|
143
|
+
validateModel(values, this._table);
|
|
144
|
+
this._values = Object
|
|
145
|
+
.keys(values)
|
|
146
|
+
.filter(prop => this._table.fields.has(prop))
|
|
147
|
+
.map(prop => this._table.fields.get(prop))
|
|
148
|
+
.filter(({ relatedTo, builder }) => relatedTo == null && builder == null)
|
|
149
|
+
.reduce((p, { getValue, kind, name }) => {
|
|
150
|
+
let value = getValue(values);
|
|
151
|
+
if (kind) {
|
|
152
|
+
if (typeof kind === 'string' || typeof kind === 'symbol') {
|
|
153
|
+
throw new Error(`DbField specified by string or symbol is not support since 1.0.0`);
|
|
163
154
|
}
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
155
|
+
const { writer, writeQuery } = kind;
|
|
156
|
+
if (typeof writer === 'function') {
|
|
157
|
+
value = writer(value);
|
|
158
|
+
}
|
|
159
|
+
if (typeof writeQuery === 'function') {
|
|
160
|
+
value = writeQuery(new wrappers_1.UnnamedParameter(value), proxy(this._table, false, this._alias));
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
return { ...p, [name]: value };
|
|
164
|
+
}, {});
|
|
167
165
|
return this;
|
|
168
166
|
}
|
|
169
167
|
function conflict(_) {
|
|
@@ -300,7 +298,6 @@ function except(...args) {
|
|
|
300
298
|
}
|
|
301
299
|
class TableRef {
|
|
302
300
|
constructor(table) {
|
|
303
|
-
this.table = table;
|
|
304
301
|
this.info = readModelMeta(table);
|
|
305
302
|
this.alias = `${this.info.tableName}_${Date.now().toString(36)}`;
|
|
306
303
|
}
|
package/dist/builder.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":";;;AAAA,yCAAsF;AA+BtF,2CAAgC;AAEhC,uCAA8C;AAW9C,SAAS,gBAAgB,CAAC,QAAgB,EAAE,SAAqB,EAAE,eAAyB,EAAE,MAAe;IAC3G,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC5C,IAAI,CAAC,IAAI,EAAE;QACT,MAAM,IAAI,KAAK,CAAC,YAAY,QAAQ,oCAAoC,CAAC,CAAC;KAC3E;IAED,MAAM,EAAC,IAAI,GAAG,QAAQ,EAAE,IAAI,EAAC,GAAG,IAAI,CAAC;IACrC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;QACxD,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAC;KAC3F;IAED,MAAM,SAAS,GAAG,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,SAAS,CAAC,SAAS,CAAC;IAChD,MAAM,GAAG,GAAG,IAAI,wBAAa,CAAC,EAAC,IAAI,EAAE,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAAC,CAAC,CAAC;IACtF,IAAI,OAAO,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,SAAS,CAAA,KAAK,UAAU,EAAE;QACzC,OAAO,GAAG,CAAC;KACZ;IAED,OAAO,IAAI,uBAAY,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,SAAS,EAAE,eAAe,EAAE,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;AAChG,CAAC;AAED,SAAS,eAAe,CAAC,QAAgB,EAAE,SAAqB,EAAE,eAAyB,EAAE,KAAc;IACzG,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC5C,IAAI,CAAC,IAAI,EAAE;QACT,MAAM,IAAI,KAAK,CAAC,YAAY,QAAQ,oCAAoC,CAAC,CAAC;KAC3E;IAED,MAAM,EAAC,IAAI,GAAG,QAAQ,EAAE,IAAI,EAAC,GAAG,IAAI,CAAC;IACrC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;QACxD,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAC;KAC3F;IAED,MAAM,SAAS,GAAG,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,SAAS,CAAC,SAAS,CAAC;IAC/C,OAAO,EAAC,OAAO,EAAE,EAAC,IAAI,EAAE,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAAC,EAAC,CAAC;AAC3E,CAAC;AAED,SAAS,KAAK,CAAC,IAAgB,EAAE,eAAyB,EAAE,KAAc;IACxE,MAAM,EAAC,SAAS,EAAE,iBAAiB,EAAE,MAAM,EAAE,UAAU,EAAC,GAAG,IAAI,CAAC;IAChE,OAAO,IAAI,KAAK,CAAC,EAAE,EAAE;QACnB,GAAG,CAAC,CAAC,EAAE,QAAgB;YACrB,MAAM,SAAS,GAAG,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,iBAAiB,CAAC;YAE7C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;gBACzB,MAAM,IAAI,KAAK,CAAC,UAAU,QAAQ,yDAAyD,CAAC,CAAC;aAC9F;YAED,MAAM,EAAC,OAAO,EAAE,SAAS,EAAE,IAAI,EAAC,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACxD,IAAI,CAAC,SAAS,IAAI,CAAC,OAAO,EAAE;gBAC1B,OAAO,gBAAgB,CAAC,QAAQ,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;aACjE;YAED,IAAI,CAAC,UAAU,EAAE;gBACf,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;aAChF;YAED,IAAI,OAAO,EAAE;gBACX,MAAM,EAAE,GAAsB,IAAI,wBAAa,CAAC,EAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAC,CAAC,CAAC;gBACtF,MAAM,KAAK,GAA6B,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC,CAAC;gBACzF,OAAO,IAAI,sBAAW,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aACpD;YAED,OAAO,IAAI,sBAAW,CAAC,UAAU,EAAE,CAAC;oBAClC,KAAK,EAAE,QAAQ;oBACf,QAAQ,EAAE;wBACR,EAAC,OAAO,EAAE,EAAC,KAAK,EAAE,SAAS,CAAC,SAAS,EAAE,IAAI,EAAC,EAAE;qBAC/C;oBACD,MAAM,EAAE,EAAC,SAAS,EAAE,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,IAAW,EAAC;oBAC7D,MAAM,EAAE;wBACN;4BACE,SAAS,EAAE,GAAG;4BACd,SAAS,EAAE;gCACT,EAAC,OAAO,EAAE,EAAC,KAAK,EAAE,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,QAAQ,EAAC,EAAE;gCAClE,EAAC,OAAO,EAAE,EAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAC,EAAE;6BACjD;yBACF;qBACF;iBAC0B,CAAC,CAAC,CAAA;QACjC,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,MAAM,CAAI,CAAa,EAAE,SAAqB,EAAE,KAAc;IACrE,aAAa,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAC5B,OAAO,IAAA,eAAG,EACR,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;SACd,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CACvD,CAAC;AAC5B,CAAC;AAED,SAAS,mBAAmB,CAAI,CAAiB,EAAE,SAAqB,EAAE,KAAc;IACtF,MAAM,EAAC,MAAM,EAAC,GAAG,SAAS,CAAC;IAC3B,KAAK,MAAM,KAAK,IAAI,CAAC,EAAE;QACrB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAe,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,KAAe,CAAC,CAAC,SAAS,IAAI,MAAM,CAAC,GAAG,CAAC,KAAe,CAAC,CAAC,OAAO,EAAE;YAChH,MAAM,IAAI,KAAK,CAAC,UAAU,KAAK,CAAC,QAAQ,EAAE,qCAAqC,CAAC,CAAC;SAClF;KACF;IACD,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAAC,KAAe,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,CAAyB,CAAC,CAAC;AAC5G,CAAC;AAED,SAAS,SAAS,CAAI,CAAiB,EAAE,SAAqB,EAAE,KAAc;IAC5E,MAAM,EAAC,MAAM,EAAC,GAAG,SAAS,CAAC;IAC3B,KAAK,MAAM,KAAK,IAAI,CAAC,EAAE;QACrB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAe,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,KAAe,CAAC,CAAC,SAAS,IAAI,MAAM,CAAC,GAAG,CAAC,KAAe,CAAC,CAAC,OAAO,EAAE;YAChH,MAAM,IAAI,KAAK,CAAC,UAAU,KAAK,CAAC,QAAQ,EAAE,qCAAqC,CAAC,CAAC;SAClF;KACF;IACD,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,eAAe,CAAC,KAAe,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;AACnF,CAAC;AAED,SAAS,aAAa,CAAI,CAAa,EAAE,SAAqB;IAC5D,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;AAC5C,CAAC;AAED,SAAS,cAAc,CAAC,CAAW,EAAE,SAAqB;IACxD,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACf,IAAG,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAC9B,MAAM,IAAI,KAAK,CAAC,UAAU,IAAI,yDAAyD,CAAC,CAAC;SAC1F;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,KAAK,CAAkC,CAA+B;IAC7E,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,UAAU;QAClC,CAAC,CAAE,CAAqB,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAChE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACxC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC;IAChC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvB,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,MAAM,CAAiC,CAAmB;IACjE,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAQ,CAAC;IAC9D,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;IAClC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxB,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,OAAO,CAAiC,CAAqC;IACpF,IAAI,CAAC,QAAQ,GAAG,CAAC,OAAO,CAAC,KAAK,UAAU;QACtC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAkB;QAC5D,CAAC,CAAC,mBAAmB,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACjE,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,OAAO,CAAiC,CAAmC;IAClF,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,KAAK,UAAU;QACrC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAiB;QAC3D,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3C,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,OAAO,CAAiC,CAAqC;IACpF,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,KAAK,UAAU;QACrC,CAAC,CAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAwB;QACnE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3C,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,MAAM,CAAsC,CAAgC;IACnF,IAAI,OAAO,CAAC,KAAK,UAAU,EAAE;QAC3B,IAAI,CAAC,OAAO,GAAI,CAAsB,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;KAChF;SAAM;QACL,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9B,IAAI,CAAC,OAAO,GAAG,MAAM;aAClB,IAAI,CAAC,CAAC,CAAC;aACP,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;aAC5C,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;aACzC,MAAM,CAAC,CAAC,EAAC,SAAS,EAAE,OAAO,EAAC,EAAE,EAAE,CAAC,SAAS,IAAI,IAAI,IAAI,OAAO,IAAI,IAAI,CAAC;aACtE,MAAM,CAAC,CAAC,CAAM,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAa,EAAE,EAAE;YACrD,IAAI,KAAK,GAAQ,QAAQ,CAAC,CAAC,CAAC,CAAC;YAE7B,IAAI,IAAI,EAAE;gBACR,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;oBACxD,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAC;iBACrF;gBAED,MAAM,EAAC,MAAM,EAAE,UAAU,EAAC,GAAG,IAAI,CAAC;gBAClC,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE;oBAChC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;iBACvB;gBACD,IAAI,OAAO,UAAU,KAAK,UAAU,EAAE;oBACpC,KAAK,GAAG,UAAU,CAAC,IAAI,2BAAgB,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;iBACzF;aACF;YACD,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC;QACjC,CAAC,EAAE,EAAE,CAAC,CAAC;KACV;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,QAAQ,CAAiC,CAAU;IAC1D,IAAI,QAAQ,GAAa,EAAE,CAAC;IAC5B,IAAI,MAAM,GAAsB,SAAS,CAAC;IAE1C,IAAI,CAAC,CAAC,EAAE;QACN,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE;YAC3B,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAC;SAC7F;QACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YAC/B,IAAI,CAAC,CAAC,UAAU,EAAE;gBAChB,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;aACvB;QACH,CAAC,CAAC,CAAC;KACJ;SAAM;QACL,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;YACxB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;SAChD;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;QAC1D,IAAI,CAAC,KAAK,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,8BAA8B,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;SAClF;QAED,cAAc,CAAC,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7C,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,WAAC,OAAA,MAAA,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,0CAAE,IAAI,CAAA,EAAA,CAAC,CAAC;QAE3E,IAAI,KAAK,CAAC,KAAK,EAAE;YACf,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC,KAAK,KAAK,UAAU;gBAC5C,CAAC,CAAE,KAAK,CAAC,KAAyB,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;gBACzE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAClD,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC;SACjB;KACF;IACD,IAAI,CAAC,YAAY,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;IACzC,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,KAAK,CAA+B,KAAa;IACxD,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACpB,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,MAAM,CAA8B,MAAc;IACzD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACtB,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,aAAa,CAA8B,GAAG,IAAW;IAChE,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;QACrB,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;KACtC;IACD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;QACrB,OAAO,IAAW,CAAC;KACpB;IACD,MAAM,IAAI,KAAK,CAAC,iCAAiC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;AACnE,CAAC;AAID,SAAS,IAAI,CAA2D,GAAG,IAAW;;IACpF,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,GAAG,aAAa,CAAI,GAAG,IAAI,CAAC,CAAC;IAExD,IAAI,CAAC,MAAM,GAAG,MAAA,IAAI,CAAC,MAAM,mCAAI,EAAE,CAAC;IAChC,MAAM,KAAK,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;IAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;QACf,UAAU,EAAE,KAAK,CAAC,SAAS;QAC3B,MAAM,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,SAAS;QACxB,KAAK,EAAE,OAAO;QACd,UAAU,EAAE,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,SAAS,CAAC,CAAQ;KAChH,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AACd,CAAC;AAID,SAAS,QAAQ,CAA2D,GAAG,IAAW;;IACxF,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,GAAG,aAAa,CAAI,GAAG,IAAI,CAAC,CAAC;IAExD,IAAI,CAAC,MAAM,GAAG,MAAA,IAAI,CAAC,MAAM,mCAAI,EAAE,CAAC;IAChC,MAAM,KAAK,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;IAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;QACf,UAAU,EAAE,KAAK,CAAC,SAAS;QAC3B,MAAM,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,SAAS;QACxB,KAAK,EAAE,MAAM;QACb,UAAU,EAAE,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,SAAS,CAAC,CAAQ;KAChH,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AACd,CAAC;AAID,SAAS,SAAS,CAA2D,GAAG,IAAW;;IACzF,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,GAAG,aAAa,CAAI,GAAG,IAAI,CAAC,CAAC;IAExD,IAAI,CAAC,MAAM,GAAG,MAAA,IAAI,CAAC,MAAM,mCAAI,EAAE,CAAC;IAChC,MAAM,KAAK,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;IAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;QACf,UAAU,EAAE,KAAK,CAAC,SAAS;QAC3B,MAAM,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,SAAS;QACxB,KAAK,EAAE,OAAO;QACd,UAAU,EAAE,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,SAAS,CAAC,CAAQ;KAChH,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AACd,CAAC;AAID,SAAS,QAAQ,CAA2D,GAAG,IAAW;;IACxF,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,GAAG,aAAa,CAAI,GAAG,IAAI,CAAC,CAAC;IAExD,IAAI,CAAC,MAAM,GAAG,MAAA,IAAI,CAAC,MAAM,mCAAI,EAAE,CAAC;IAChC,MAAM,KAAK,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;IAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;QACf,UAAU,EAAE,KAAK,CAAC,SAAS;QAC3B,MAAM,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,SAAS;QACxB,KAAK,EAAE,YAAY;QACnB,UAAU,EAAE,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,SAAS,CAAC,CAAQ;KAChH,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AACd,CAAC;AAID,SAAS,KAAK,CAA8B,GAAG,IAAW;;IACxD,IAAI,CAAC,UAAU,GAAG,MAAA,IAAI,CAAC,UAAU,mCAAI,EAAE,CAAC;IACxC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QACnB,SAAS,EAAE,OAAO;QAClB,SAAS,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK;QAC9D,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE;KACrB,CAAC,CAAA;IACF,OAAO,IAAI,CAAC;AACd,CAAC;AAID,SAAS,SAAS,CAA8B,GAAG,IAAW;;IAC5D,IAAI,CAAC,UAAU,GAAG,MAAA,IAAI,CAAC,UAAU,mCAAI,EAAE,CAAC;IACxC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QACnB,SAAS,EAAE,WAAW;QACtB,SAAS,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK;QAC9D,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE;KACrB,CAAC,CAAA;IACF,OAAO,IAAI,CAAC;AACd,CAAC;AAID,SAAS,MAAM,CAA8B,GAAG,IAAW;;IACzD,IAAI,CAAC,UAAU,GAAG,MAAA,IAAI,CAAC,UAAU,mCAAI,EAAE,CAAC;IACxC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QACnB,SAAS,EAAE,QAAQ;QACnB,SAAS,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK;QAC9D,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE;KACrB,CAAC,CAAA;IACF,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAa,QAAQ;IAInB,YAAoB,KAAQ;QAAR,UAAK,GAAL,KAAK,CAAG;QAC1B,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;QACjC,IAAI,CAAC,KAAK,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;IACnE,CAAC;IAED,IAAW,SAAS;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IACD,IAAW,iBAAiB;QAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;IAC7B,CAAC;IACD,IAAW,UAAU;QACnB,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;IAC9B,CAAC;IACD,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAC1B,CAAC;IACD,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;IAC3B,CAAC;CACF;AAxBD,4BAwBC;AAED,SAAgB,aAAa,CAA8B,KAAQ,EAAE,QAAQ,GAAG,IAAI;;IAClF,IAAI,KAAK,CAAC,6BAAmB,CAAC,IAAI,IAAI,IAAI,QAAQ,EAAE;QAClD,MAAM,IAAI,KAAK,CAAC,SAAS,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,mCAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;KACzG;IACD,OAAO,MAAA,KAAK,CAAC,6BAAmB,CAAC,mCAAI,EAAE,CAAC;AAC1C,CAAC;AALD,sCAKC;AAED,SAAS,GAAG,CAAmB,CAAI;IACjC,IAAI,6BAAmB,IAAI,CAAC,EAAE;QAC5B,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,6BAAmB,EAAE;YAC5C,UAAU,EAAE,KAAK;SAClB,CAAC,CAAA;KACH;IAED,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;QACjC,IAAI,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,UAAU,EAAE;YACjC,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,IAAI,EAAE;gBAC7B,UAAU,EAAE,KAAK;gBACjB,YAAY,EAAE,KAAK;gBACnB,QAAQ,EAAE,KAAK;aAChB,CAAC,CAAA;SACH;KACF;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,KAAK,CAAI,CAAI;IACpB,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,OAAO,KAAK,KAAK,UAAU,CAAC,CAAU,CAAC;AAC3G,CAAC;AAED,SAAS,sBAAsB,CAAC,IAAgB,EAAE,KAAc;IAC9D,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;QAChB,OAAO,EAAE,CAAA;KACV;IAED,MAAM,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAA;IACpC,MAAM,MAAM,GAAG,IAAI;SAChB,MAAM,CAAC,CAAC,CAAC,EAAE;QACV,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAsB,CAAC;QACrD,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAA;IACpE,CAAC,CAAC,CAAC;IAEL,OAAO,mBAAmB,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;AAC5D,CAAC;AAED,MAAM,aAAa,GAAG,MAAM,EAAE,CAAC;AAO/B,SAAgB,MAAM,CAA8B,CAA8C,EAAE,GAAG,IAAe;IACpH,SAAS,OAAO,CAAC,CAAM;QACrB,OAAO,CAAC,IAAI,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC;IAC3C,CAAC;IAED,SAAS,UAAU,CAAC,CAAM;QACxB,OAAO,CAAC,IAAI,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,IAAI,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC;IAClE,CAAC;IAED,MAAM,KAAK,GAAuB,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IAChG,MAAM,QAAQ,GAAY,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EAAS,CAAC,CAAC,CAAC,KAAK,CAAC;IAErF,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE5D,OAAO,GAAG,CAAC;QACT,IAAI,CAAC,6BAAmB,CAAC;YACvB,MAAM,IAAI,GAAG;gBACX,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,WAAW;gBAC9C,IAAI,MAAM;oBACR,OAAO,IAAI,GAAG,CAAqB,IAAI,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;wBACtE,IAAI,SAAS,IAAI,CAAC,EAAE;4BAClB,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE;oCACtB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI;oCACpB,QAAQ,KAAK,OAAO,IAAI,CAAA,CAAC,CAAC;iCAC3B,CAAC,CAAA;yBACH;6BAAM,IAAI,QAAQ,IAAI,CAAC,EAAE;4BACxB,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE;oCAChB,IAAI,EAAE,CAAC,CAAC,MAAM;oCACd,QAAQ,KAAK,OAAO,IAAI,CAAA,CAAC,CAAC;iCAC3B,CAAC,CAAA;yBACH;oBACH,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;gBACpB,CAAC;aACF,CAAC;YAEF,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,aAAa,EAAE;gBACzC,UAAU,EAAE,KAAK;gBACjB,KAAK,EAAE,IAAI;aACZ,CAAC,CAAA;YAEF,OAAO,IAAI,CAAC;QACd,CAAC;QACD,KAAK,EAAE,QAAQ;QACf,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAC,GAAG,CAAC,EAAE,GAAG,IAAI,EAAC,CAAC,CAAC,CAAC,IAAI;QAC9C,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI;QACrE,SAAS,EAAE,QAAQ;QACnB,IAAI,EAAE,KAAK;QACX,QAAQ,EAAE,sBAAsB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;QACzE,OAAO;QACP,IAAI;QACJ,QAAQ;QACR,SAAS;QACT,QAAQ;QACR,KAAK;QACL,MAAM;QACN,OAAO;QACP,OAAO;QACP,KAAK;QACL,SAAS;QACT,MAAM;QACN,KAAK;QACL,MAAM;QACN,QAAQ;;YACN,IAAI,CAAA,MAAA,IAAI,CAAC,QAAQ,0CAAE,MAAM,MAAK,CAAC,EAAE;gBAC/B,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;aAC7D;YAED,OAAO,IAAI,sBAAW,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QAC7C,CAAC;KACF,CAAiC,CAAC;AACrC,CAAC;AAtED,wBAsEC;AAED,SAAgB,MAAM,CAA8B,CAAI;IACtD,OAAO,GAAG,CAAC;QACT,KAAK,EAAE,QAAQ;QACf,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC;QACxB,QAAQ,EAAE,sBAAsB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QAClD,MAAM;KACP,CAAiC,CAAC;AACrC,CAAC;AAPD,wBAOC;AAED,SAAgB,MAAM,CAA8B,CAAI;IACtD,OAAO,GAAG,CAAC;QACT,KAAK,EAAE,QAAQ;QACf,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC;QACxB,QAAQ,EAAE,sBAAsB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QAClD,MAAM,EAAE,CAAC;QACT,MAAM;QACN,KAAK;QACL,KAAK;QACL,QAAQ;KACT,CAAiC,CAAC;AACrC,CAAC;AAXD,wBAWC;AAED,SAAgB,MAAM,CAA8B,CAAI;IACtD,OAAO,GAAG,CAAC;QACT,KAAK,EAAE,QAAQ;QACf,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC;QACxB,QAAQ,EAAE,sBAAsB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QAClD,MAAM;QACN,KAAK;QACL,KAAK;KACN,CAAiC,CAAC;AACrC,CAAC;AATD,wBASC;AAED,SAAgB,MAAM,CAA8B,CAAI;IACtD,OAAO,GAAG,CAAC;QACT,KAAK,EAAE,QAAQ;QACf,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC;QACxB,QAAQ,EAAE,sBAAsB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QAClD,KAAK;QACL,KAAK;KACN,CAAiC,CAAC;AACrC,CAAC;AARD,wBAQC"}
|
|
1
|
+
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"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"}
|
package/dist/decorators.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decorators.js","sourceRoot":"","sources":["../src/decorators.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"decorators.js","sourceRoot":"","sources":["../src/decorators.ts"],"names":[],"mappings":"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"}
|
package/dist/interfaces.d.ts
CHANGED
|
@@ -168,12 +168,12 @@ export interface IBuildableDeleteQuery {
|
|
|
168
168
|
export type IBuildableQuery = IBuildableSelectQuery | IBuildableInsertQuery | IBuildableUpsertQuery | IBuildableUpdateQuery | IBuildableDeleteQuery;
|
|
169
169
|
export interface IWhereHandler<T> {
|
|
170
170
|
where(builder: WhereBuilder<T>): this;
|
|
171
|
-
where(value:
|
|
171
|
+
where(value: Values<T>): this;
|
|
172
172
|
limit(limit: number): this;
|
|
173
173
|
}
|
|
174
174
|
export interface IValuesHandler<T> {
|
|
175
175
|
values(builder: ValuesBuilder<T>): this;
|
|
176
|
-
values(values:
|
|
176
|
+
values(values: Values<T>): this;
|
|
177
177
|
}
|
|
178
178
|
export interface ITableRef<T extends TableMetaProvider> extends ITableInfo {
|
|
179
179
|
readonly originalTableName: string;
|
|
@@ -202,7 +202,7 @@ export interface ISelectBuilder<T> extends IWhereHandler<T> {
|
|
|
202
202
|
except(operand: IBuildableSubSelectQuery): this;
|
|
203
203
|
except(distinct: true, operand: IBuildableSubSelectQuery): this;
|
|
204
204
|
where(builder: WhereBuilder<T>): this;
|
|
205
|
-
where(value:
|
|
205
|
+
where(value: Values<T>): this;
|
|
206
206
|
limit(limit: number): this;
|
|
207
207
|
asScalar<T = number>(): IOperandable<T>;
|
|
208
208
|
}
|
package/package.json
CHANGED
package/tests/builder.spec.ts
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import {alias, and, asc, Delete, desc, Insert, max, Select, sum, TableMetadataSymbol, Update, Upsert, of} from '../dist';
|
|
2
|
-
import {
|
|
2
|
+
import {Employee, MailingList, Person, Tag} from './models';
|
|
3
3
|
import { TableRef, readModelMeta } from '../dist/builder';
|
|
4
4
|
import {count, dbField, dbTable, exists, case_} from "../dist";
|
|
5
|
+
import {cast, IOperandable} from "../src";
|
|
6
|
+
import {FunctionCall} from "../src/wrappers";
|
|
5
7
|
|
|
6
8
|
|
|
7
9
|
const tableInfo = readModelMeta(Person);
|
|
@@ -779,7 +781,38 @@ describe('Insert', () => {
|
|
|
779
781
|
city: person.city,
|
|
780
782
|
};
|
|
781
783
|
expect(query._values).toStrictEqual(expectation);
|
|
782
|
-
|
|
784
|
+
});
|
|
785
|
+
|
|
786
|
+
it('Insert record with cast', () => {
|
|
787
|
+
const query = Insert(Person).values({...person, city: cast(person.city, 'text')});
|
|
788
|
+
const expectation = {
|
|
789
|
+
id: person.id,
|
|
790
|
+
name: person.name,
|
|
791
|
+
age: person.age,
|
|
792
|
+
city: {
|
|
793
|
+
_operator: 'CAST',
|
|
794
|
+
_operands: [ person.city, 'text']
|
|
795
|
+
},
|
|
796
|
+
};
|
|
797
|
+
expect(query._values).toStrictEqual(expectation);
|
|
798
|
+
});
|
|
799
|
+
|
|
800
|
+
it('Insert record with function', () => {
|
|
801
|
+
function test<T>(value: IOperandable<T> | T): IOperandable<T> {
|
|
802
|
+
return new FunctionCall('TEST', [value]) as IOperandable<T>
|
|
803
|
+
}
|
|
804
|
+
|
|
805
|
+
const query = Insert(Person).values({...person, city: test(person.city)});
|
|
806
|
+
const expectation = {
|
|
807
|
+
id: person.id,
|
|
808
|
+
name: person.name,
|
|
809
|
+
age: person.age,
|
|
810
|
+
city: {
|
|
811
|
+
_func: 'TEST',
|
|
812
|
+
_args: [ person.city]
|
|
813
|
+
},
|
|
814
|
+
};
|
|
815
|
+
expect(query._values).toStrictEqual(expectation);
|
|
783
816
|
});
|
|
784
817
|
});
|
|
785
818
|
|
|
@@ -860,6 +893,73 @@ describe('Update', () => {
|
|
|
860
893
|
expect(query._where).toStrictEqual(expectation.where);
|
|
861
894
|
expect(query._limit).toBe(limit);
|
|
862
895
|
});
|
|
896
|
+
|
|
897
|
+
it('Update record with updater and cast', () => {
|
|
898
|
+
const limit = 10;
|
|
899
|
+
const query = Update(Person)
|
|
900
|
+
.values(x => ({...person, city: cast(x.city, 'email')}))
|
|
901
|
+
.limit(limit);
|
|
902
|
+
const expectation = {
|
|
903
|
+
values: {
|
|
904
|
+
id: person.id,
|
|
905
|
+
name: person.name,
|
|
906
|
+
age: person.age,
|
|
907
|
+
city: {
|
|
908
|
+
_operator: 'CAST',
|
|
909
|
+
_operands: [
|
|
910
|
+
{ _column: { name: 'city', table: 'Person' } },
|
|
911
|
+
'email'
|
|
912
|
+
]
|
|
913
|
+
},
|
|
914
|
+
}
|
|
915
|
+
};
|
|
916
|
+
expect(query._values).toStrictEqual(expectation.values);
|
|
917
|
+
expect(query._limit).toBe(limit);
|
|
918
|
+
});
|
|
919
|
+
|
|
920
|
+
it('Update record with values with kinds', () => {
|
|
921
|
+
const limit = 10;
|
|
922
|
+
const email = 'Some@EXAMPLE.org';
|
|
923
|
+
const query = Update(MailingList)
|
|
924
|
+
.values({name: 'test', email}) //cast('some@example.org', 'email')})
|
|
925
|
+
.limit(limit);
|
|
926
|
+
const expectation = {
|
|
927
|
+
values: {
|
|
928
|
+
name: 'test',
|
|
929
|
+
email: {
|
|
930
|
+
_operator: 'CAST',
|
|
931
|
+
_operands: [
|
|
932
|
+
{_value: email.toLowerCase()},
|
|
933
|
+
'Email'
|
|
934
|
+
]
|
|
935
|
+
},
|
|
936
|
+
}
|
|
937
|
+
};
|
|
938
|
+
expect(query._values).toStrictEqual(expectation.values);
|
|
939
|
+
expect(query._limit).toBe(limit);
|
|
940
|
+
});
|
|
941
|
+
|
|
942
|
+
it('Update record with updater with kinds', () => {
|
|
943
|
+
const limit = 10;
|
|
944
|
+
const email = 'Some@EXAMPLE.org';
|
|
945
|
+
const query = Update(MailingList)
|
|
946
|
+
.values(() => ({name: 'test', email}))
|
|
947
|
+
.limit(limit);
|
|
948
|
+
const expectation = {
|
|
949
|
+
values: {
|
|
950
|
+
name: 'test',
|
|
951
|
+
email: {
|
|
952
|
+
_operator: 'CAST',
|
|
953
|
+
_operands: [
|
|
954
|
+
{_value: email.toLowerCase()},
|
|
955
|
+
'Email'
|
|
956
|
+
]
|
|
957
|
+
},
|
|
958
|
+
}
|
|
959
|
+
};
|
|
960
|
+
expect(query._values).toStrictEqual(expectation.values);
|
|
961
|
+
expect(query._limit).toBe(limit);
|
|
962
|
+
});
|
|
863
963
|
});
|
|
864
964
|
|
|
865
965
|
describe('Delete', () => {
|
package/tests/models.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {dbField, dbTable, IDbField, dbFilterField, and, Select, DbValueType, IOperandable, cast} from '../src';
|
|
2
2
|
|
|
3
3
|
const UUID: IDbField = {}
|
|
4
4
|
|
|
@@ -61,3 +61,28 @@ export class Employee {
|
|
|
61
61
|
@dbField company!: string;
|
|
62
62
|
@dbField salary!: number;
|
|
63
63
|
}
|
|
64
|
+
|
|
65
|
+
export const EMAIL: IDbField = {
|
|
66
|
+
reader(value: DbValueType) {
|
|
67
|
+
return typeof value === 'string' ? value.toLowerCase() : value
|
|
68
|
+
},
|
|
69
|
+
writer(value): DbValueType {
|
|
70
|
+
return typeof value === 'string' ? value.toLowerCase() : value
|
|
71
|
+
},
|
|
72
|
+
readQuery(name: IOperandable<string>): IOperandable<string> {
|
|
73
|
+
return cast(name as never, 'Email');
|
|
74
|
+
},
|
|
75
|
+
writeQuery(name: IOperandable<string>): IOperandable<string> {
|
|
76
|
+
return cast(name as never, 'Email');
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
export class MailingList {
|
|
81
|
+
@dbField({
|
|
82
|
+
primaryKey: true,
|
|
83
|
+
autoIncrement: true
|
|
84
|
+
})
|
|
85
|
+
public id!: number;
|
|
86
|
+
@dbField public name!: string;
|
|
87
|
+
@dbField({kind: EMAIL}) email!: string;
|
|
88
|
+
}
|