@loopback/repository 4.1.1 → 5.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/dist/connectors/connector.js +1 -1
- package/dist/connectors/connector.js.map +1 -1
- package/dist/connectors/crud.connector.js +1 -1
- package/dist/connectors/crud.connector.js.map +1 -1
- package/dist/connectors/index.js +4 -4
- package/dist/connectors/index.js.map +1 -1
- package/dist/connectors/kv.connector.js +1 -1
- package/dist/connectors/kv.connector.js.map +1 -1
- package/dist/datasource.js +1 -1
- package/dist/datasource.js.map +1 -1
- package/dist/decorators/index.js +4 -4
- package/dist/decorators/index.js.map +1 -1
- package/dist/decorators/metadata.js +1 -1
- package/dist/decorators/metadata.js.map +1 -1
- package/dist/decorators/model.decorator.js +1 -1
- package/dist/decorators/model.decorator.js.map +1 -1
- package/dist/decorators/repository.decorator.js +2 -2
- package/dist/decorators/repository.decorator.js.map +1 -1
- package/dist/define-model-class.js +2 -2
- package/dist/define-model-class.js.map +1 -1
- package/dist/define-repository-class.js +2 -2
- package/dist/define-repository-class.js.map +1 -1
- package/dist/errors/entity-not-found.error.js +1 -1
- package/dist/errors/entity-not-found.error.js.map +1 -1
- package/dist/errors/index.d.ts +1 -0
- package/dist/errors/index.js +4 -3
- package/dist/errors/index.js.map +1 -1
- package/dist/errors/invalid-polymorphism.error.d.ts +5 -0
- package/dist/errors/invalid-polymorphism.error.js +22 -0
- package/dist/errors/invalid-polymorphism.error.js.map +1 -0
- package/dist/errors/invalid-relation.error.d.ts +1 -1
- package/dist/errors/invalid-relation.error.js +1 -1
- package/dist/errors/invalid-relation.error.js.map +1 -1
- package/dist/index.js +17 -17
- package/dist/index.js.map +1 -1
- package/dist/mixins/index.js +2 -2
- package/dist/mixins/index.js.map +1 -1
- package/dist/mixins/repository.mixin.d.ts +49 -50
- package/dist/mixins/repository.mixin.js +2 -2
- package/dist/mixins/repository.mixin.js.map +1 -1
- package/dist/model.d.ts +7 -1
- package/dist/model.js +15 -1
- package/dist/model.js.map +1 -1
- package/dist/relations/belongs-to/belongs-to.accessor.d.ts +6 -2
- package/dist/relations/belongs-to/belongs-to.accessor.js +20 -7
- package/dist/relations/belongs-to/belongs-to.accessor.js.map +1 -1
- package/dist/relations/belongs-to/belongs-to.decorator.js +1 -1
- package/dist/relations/belongs-to/belongs-to.decorator.js.map +1 -1
- package/dist/relations/belongs-to/belongs-to.helpers.d.ts +3 -0
- package/dist/relations/belongs-to/belongs-to.helpers.js +34 -10
- package/dist/relations/belongs-to/belongs-to.helpers.js.map +1 -1
- package/dist/relations/belongs-to/belongs-to.inclusion-resolver.d.ts +5 -2
- package/dist/relations/belongs-to/belongs-to.inclusion-resolver.js +82 -9
- package/dist/relations/belongs-to/belongs-to.inclusion-resolver.js.map +1 -1
- package/dist/relations/belongs-to/belongs-to.repository.d.ts +28 -5
- package/dist/relations/belongs-to/belongs-to.repository.js +50 -11
- package/dist/relations/belongs-to/belongs-to.repository.js.map +1 -1
- package/dist/relations/belongs-to/index.d.ts +2 -2
- package/dist/relations/belongs-to/index.js +5 -5
- package/dist/relations/belongs-to/index.js.map +1 -1
- package/dist/relations/has-many/has-many-through.helpers.d.ts +3 -0
- package/dist/relations/has-many/has-many-through.helpers.js +27 -3
- package/dist/relations/has-many/has-many-through.helpers.js.map +1 -1
- package/dist/relations/has-many/has-many-through.inclusion-resolver.d.ts +3 -1
- package/dist/relations/has-many/has-many-through.inclusion-resolver.js +94 -23
- package/dist/relations/has-many/has-many-through.inclusion-resolver.js.map +1 -1
- package/dist/relations/has-many/has-many-through.repository-factory.d.ts +3 -1
- package/dist/relations/has-many/has-many-through.repository-factory.js +8 -2
- package/dist/relations/has-many/has-many-through.repository-factory.js.map +1 -1
- package/dist/relations/has-many/has-many-through.repository.d.ts +66 -11
- package/dist/relations/has-many/has-many-through.repository.js +212 -36
- package/dist/relations/has-many/has-many-through.repository.js.map +1 -1
- package/dist/relations/has-many/has-many.decorator.js +1 -1
- package/dist/relations/has-many/has-many.decorator.js.map +1 -1
- package/dist/relations/has-many/has-many.helpers.js +2 -2
- package/dist/relations/has-many/has-many.helpers.js.map +1 -1
- package/dist/relations/has-many/has-many.inclusion-resolver.js +2 -2
- package/dist/relations/has-many/has-many.inclusion-resolver.js.map +1 -1
- package/dist/relations/has-many/has-many.repository-factory.js +2 -2
- package/dist/relations/has-many/has-many.repository-factory.js.map +1 -1
- package/dist/relations/has-many/has-many.repository.js +1 -1
- package/dist/relations/has-many/has-many.repository.js.map +1 -1
- package/dist/relations/has-many/index.d.ts +2 -2
- package/dist/relations/has-many/index.js +7 -7
- package/dist/relations/has-many/index.js.map +1 -1
- package/dist/relations/has-one/has-one.decorator.js +1 -1
- package/dist/relations/has-one/has-one.decorator.js.map +1 -1
- package/dist/relations/has-one/has-one.helpers.d.ts +3 -0
- package/dist/relations/has-one/has-one.helpers.js +36 -10
- package/dist/relations/has-one/has-one.helpers.js.map +1 -1
- package/dist/relations/has-one/has-one.inclusion-resolver.d.ts +6 -3
- package/dist/relations/has-one/has-one.inclusion-resolver.js +83 -8
- package/dist/relations/has-one/has-one.inclusion-resolver.js.map +1 -1
- package/dist/relations/has-one/has-one.repository-factory.d.ts +9 -3
- package/dist/relations/has-one/has-one.repository-factory.js +15 -5
- package/dist/relations/has-one/has-one.repository-factory.js.map +1 -1
- package/dist/relations/has-one/has-one.repository.d.ts +58 -11
- package/dist/relations/has-one/has-one.repository.js +119 -16
- package/dist/relations/has-one/has-one.repository.js.map +1 -1
- package/dist/relations/has-one/index.js +4 -4
- package/dist/relations/has-one/index.js.map +1 -1
- package/dist/relations/index.d.ts +2 -0
- package/dist/relations/index.js +9 -7
- package/dist/relations/index.js.map +1 -1
- package/dist/relations/references-many/index.d.ts +4 -0
- package/dist/relations/references-many/index.js +12 -0
- package/dist/relations/references-many/index.js.map +1 -0
- package/dist/relations/references-many/references-many.accessor.d.ts +17 -0
- package/dist/relations/references-many/references-many.accessor.js +40 -0
- package/dist/relations/references-many/references-many.accessor.js.map +1 -0
- package/dist/relations/references-many/references-many.decorator.d.ts +11 -0
- package/dist/relations/references-many/references-many.decorator.js +73 -0
- package/dist/relations/references-many/references-many.decorator.js.map +1 -0
- package/dist/relations/references-many/references-many.helpers.d.ts +17 -0
- package/dist/relations/references-many/references-many.helpers.js +63 -0
- package/dist/relations/references-many/references-many.helpers.js.map +1 -0
- package/dist/relations/references-many/references-many.inclusion-resolver.d.ts +14 -0
- package/dist/relations/references-many/references-many.inclusion-resolver.js +42 -0
- package/dist/relations/references-many/references-many.inclusion-resolver.js.map +1 -0
- package/dist/relations/references-many/references-many.repository.d.ts +28 -0
- package/dist/relations/references-many/references-many.repository.js +33 -0
- package/dist/relations/references-many/references-many.repository.js.map +1 -0
- package/dist/relations/relation.decorator.d.ts +0 -6
- package/dist/relations/relation.decorator.js +2 -14
- package/dist/relations/relation.decorator.js.map +1 -1
- package/dist/relations/relation.filter.solver.d.ts +2 -0
- package/dist/relations/relation.filter.solver.js +57 -0
- package/dist/relations/relation.filter.solver.js.map +1 -0
- package/dist/relations/relation.helpers.js +20 -5
- package/dist/relations/relation.helpers.js.map +1 -1
- package/dist/relations/relation.types.d.ts +52 -1
- package/dist/relations/relation.types.js +1 -1
- package/dist/relations/relation.types.js.map +1 -1
- package/dist/repositories/constraint-utils.js +1 -1
- package/dist/repositories/constraint-utils.js.map +1 -1
- package/dist/repositories/index.d.ts +2 -2
- package/dist/repositories/index.js +6 -6
- package/dist/repositories/index.js.map +1 -1
- package/dist/repositories/kv.repository.bridge.js +1 -1
- package/dist/repositories/kv.repository.bridge.js.map +1 -1
- package/dist/repositories/kv.repository.d.ts +2 -2
- package/dist/repositories/kv.repository.js +1 -1
- package/dist/repositories/kv.repository.js.map +1 -1
- package/dist/repositories/legacy-juggler-bridge.d.ts +35 -8
- package/dist/repositories/legacy-juggler-bridge.js +39 -17
- package/dist/repositories/legacy-juggler-bridge.js.map +1 -1
- package/dist/repositories/repository.js +1 -1
- package/dist/repositories/repository.js.map +1 -1
- package/dist/type-resolver.js +1 -1
- package/dist/type-resolver.js.map +1 -1
- package/dist/types/any.js +1 -1
- package/dist/types/any.js.map +1 -1
- package/dist/types/array.js +2 -2
- package/dist/types/array.js.map +1 -1
- package/dist/types/boolean.js +1 -1
- package/dist/types/boolean.js.map +1 -1
- package/dist/types/buffer.js +2 -2
- package/dist/types/buffer.js.map +1 -1
- package/dist/types/date.js +2 -2
- package/dist/types/date.js.map +1 -1
- package/dist/types/index.js +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/model.js +1 -1
- package/dist/types/model.js.map +1 -1
- package/dist/types/null.js +1 -1
- package/dist/types/null.js.map +1 -1
- package/dist/types/number.js +2 -2
- package/dist/types/number.js.map +1 -1
- package/dist/types/object.js +2 -2
- package/dist/types/object.js.map +1 -1
- package/dist/types/string.js +1 -1
- package/dist/types/string.js.map +1 -1
- package/dist/types/type.js +1 -1
- package/dist/types/type.js.map +1 -1
- package/dist/types/union.js +2 -2
- package/dist/types/union.js.map +1 -1
- package/package.json +17 -17
- package/src/connectors/connector.ts +1 -1
- package/src/connectors/crud.connector.ts +1 -1
- package/src/connectors/index.ts +1 -1
- package/src/connectors/kv.connector.ts +1 -1
- package/src/datasource.ts +1 -1
- package/src/decorators/index.ts +1 -1
- package/src/decorators/metadata.ts +1 -1
- package/src/decorators/model.decorator.ts +1 -1
- package/src/decorators/repository.decorator.ts +1 -1
- package/src/define-model-class.ts +1 -1
- package/src/define-repository-class.ts +1 -1
- package/src/errors/entity-not-found.error.ts +1 -1
- package/src/errors/index.ts +2 -1
- package/src/errors/invalid-polymorphism.error.ts +28 -0
- package/src/errors/invalid-relation.error.ts +2 -2
- package/src/index.ts +1 -1
- package/src/mixins/index.ts +1 -1
- package/src/mixins/repository.mixin.ts +1 -6
- package/src/model.ts +20 -1
- package/src/relations/belongs-to/belongs-to.accessor.ts +36 -7
- package/src/relations/belongs-to/belongs-to.decorator.ts +2 -2
- package/src/relations/belongs-to/belongs-to.helpers.ts +37 -10
- package/src/relations/belongs-to/belongs-to.inclusion-resolver.ts +109 -18
- package/src/relations/belongs-to/belongs-to.repository.ts +78 -18
- package/src/relations/belongs-to/index.ts +3 -3
- package/src/relations/has-many/has-many-through.helpers.ts +28 -2
- package/src/relations/has-many/has-many-through.inclusion-resolver.ts +118 -27
- package/src/relations/has-many/has-many-through.repository-factory.ts +22 -4
- package/src/relations/has-many/has-many-through.repository.ts +344 -77
- package/src/relations/has-many/has-many.decorator.ts +1 -1
- package/src/relations/has-many/has-many.helpers.ts +1 -1
- package/src/relations/has-many/has-many.inclusion-resolver.ts +1 -1
- package/src/relations/has-many/has-many.repository-factory.ts +1 -1
- package/src/relations/has-many/has-many.repository.ts +1 -1
- package/src/relations/has-many/index.ts +3 -3
- package/src/relations/has-one/has-one.decorator.ts +1 -1
- package/src/relations/has-one/has-one.helpers.ts +41 -14
- package/src/relations/has-one/has-one.inclusion-resolver.ts +110 -16
- package/src/relations/has-one/has-one.repository-factory.ts +35 -7
- package/src/relations/has-one/has-one.repository.ts +189 -36
- package/src/relations/has-one/index.ts +1 -1
- package/src/relations/index.ts +3 -1
- package/src/relations/references-many/index.ts +9 -0
- package/src/relations/references-many/references-many.accessor.ts +76 -0
- package/src/relations/references-many/references-many.decorator.ts +100 -0
- package/src/relations/references-many/references-many.helpers.ts +82 -0
- package/src/relations/references-many/references-many.inclusion-resolver.ts +80 -0
- package/src/relations/references-many/references-many.repository.ts +55 -0
- package/src/relations/relation.decorator.ts +1 -13
- package/src/relations/relation.filter.solver.ts +56 -0
- package/src/relations/relation.helpers.ts +17 -2
- package/src/relations/relation.types.ts +52 -1
- package/src/repositories/constraint-utils.ts +1 -1
- package/src/repositories/index.ts +3 -3
- package/src/repositories/kv.repository.bridge.ts +1 -1
- package/src/repositories/kv.repository.ts +3 -3
- package/src/repositories/legacy-juggler-bridge.ts +79 -15
- package/src/repositories/repository.ts +1 -1
- package/src/type-resolver.ts +1 -1
- package/src/types/any.ts +1 -1
- package/src/types/array.ts +1 -1
- package/src/types/boolean.ts +1 -1
- package/src/types/buffer.ts +1 -1
- package/src/types/date.ts +1 -1
- package/src/types/index.ts +1 -1
- package/src/types/model.ts +1 -1
- package/src/types/null.ts +1 -1
- package/src/types/number.ts +1 -1
- package/src/types/object.ts +1 -1
- package/src/types/string.ts +1 -1
- package/src/types/type.ts +1 -1
- package/src/types/union.ts +1 -1
package/dist/types/date.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
// Copyright IBM Corp. 2017,2019. All Rights Reserved.
|
|
2
|
+
// Copyright IBM Corp. and LoopBack contributors 2017,2019. All Rights Reserved.
|
|
3
3
|
// Node module: @loopback/repository
|
|
4
4
|
// This file is licensed under the MIT License.
|
|
5
5
|
// License text available at https://opensource.org/licenses/MIT
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
exports.DateType = void 0;
|
|
8
8
|
const tslib_1 = require("tslib");
|
|
9
|
-
const util_1 =
|
|
9
|
+
const util_1 = tslib_1.__importDefault(require("util"));
|
|
10
10
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
11
11
|
/**
|
|
12
12
|
* Date type
|
package/dist/types/date.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"date.js","sourceRoot":"","sources":["../../src/types/date.ts"],"names":[],"mappings":";AAAA,
|
|
1
|
+
{"version":3,"file":"date.js","sourceRoot":"","sources":["../../src/types/date.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,oCAAoC;AACpC,+CAA+C;AAC/C,gEAAgE;;;;AAEhE,wDAAwB;AAGxB,uDAAuD;AAEvD;;GAEG;AACH,MAAa,QAAQ;IAArB;QACW,SAAI,GAAG,MAAM,CAAC;IA8CzB,CAAC;IA5CC,UAAU,CAAC,KAAU;QACnB,OAAO,KAAK,IAAI,IAAI,IAAI,KAAK,YAAY,IAAI,CAAC;IAChD,CAAC;IAED,WAAW,CAAC,KAAU;QACpB,iDAAiD;QACjD;;;;;;;;;;;;;WAaG;QACH,OAAO,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,YAAY;QACV,OAAO,IAAI,IAAI,EAAE,CAAC;IACpB,CAAC;IAED,MAAM,CAAC,KAAU;QACf,IAAI,KAAK,IAAI,IAAI;YAAE,OAAO,KAAK,CAAC;QAChC,IAAI,KAAK,YAAY,IAAI,EAAE;YACzB,OAAO,KAAK,CAAC;SACd;QACD,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,IAAI,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE;YACtB,MAAM,GAAG,GAAG,cAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC5D,MAAM,IAAI,SAAS,CAAC,GAAG,CAAC,CAAC;SAC1B;QACD,OAAO,CAAC,CAAC;IACX,CAAC;IAED,SAAS,CAAC,KAA8B;QACtC,IAAI,KAAK,IAAI,IAAI;YAAE,OAAO,KAAK,CAAC;QAChC,OAAO,KAAK,CAAC,MAAM,EAAE,CAAC;IACxB,CAAC;CACF;AA/CD,4BA+CC"}
|
package/dist/types/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
// Copyright IBM Corp. 2017,2020. All Rights Reserved.
|
|
2
|
+
// Copyright IBM Corp. and LoopBack contributors 2017,2020. All Rights Reserved.
|
|
3
3
|
// Node module: @loopback/repository
|
|
4
4
|
// This file is licensed under the MIT License.
|
|
5
5
|
// License text available at https://opensource.org/licenses/MIT
|
package/dist/types/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,oCAAoC;AACpC,+CAA+C;AAC/C,gEAAgE;;;AAEhE;;;;;;;;;;;GAWG;AACH,+BAA8B;AAoB5B,wFApBM,aAAO,OAoBN;AAnBT,mCAAkC;AAoBhC,0FApBM,iBAAS,OAoBN;AAnBX,uCAAsC;AAcpC,4FAdM,qBAAW,OAcN;AAbb,qCAAoC;AAgBlC,2FAhBM,mBAAU,OAgBN;AAfZ,iCAAgC;AAc9B,yFAdM,eAAQ,OAcN;AAbV,mCAAkC;AAkBhC,0FAlBM,iBAAS,OAkBN;AAjBX,iCAAgC;AAkB9B,yFAlBM,eAAQ,OAkBN;AAjBV,qCAAoC;AAUlC,2FAVM,mBAAU,OAUN;AATZ,qCAAoC;AAiBlC,2FAjBM,mBAAU,OAiBN;AAhBZ,qCAAoC;AAMlC,2FANM,mBAAU,OAMN;AAJZ,mCAAkC;AAWhC,0FAXM,iBAAS,OAWN;AAME,QAAA,MAAM,GAAG,IAAI,mBAAU,EAAE,CAAC;AAC1B,QAAA,OAAO,GAAG,IAAI,qBAAW,EAAE,CAAC;AAC5B,QAAA,MAAM,GAAG,IAAI,mBAAU,EAAE,CAAC;AAC1B,QAAA,IAAI,GAAG,IAAI,eAAQ,EAAE,CAAC;AACtB,QAAA,MAAM,GAAG,IAAI,mBAAU,EAAE,CAAC;AAC1B,QAAA,GAAG,GAAG,IAAI,aAAO,EAAE,CAAC;AACpB,QAAA,IAAI,GAAG,IAAI,eAAQ,EAAE,CAAC"}
|
package/dist/types/model.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
// Copyright IBM Corp. 2017,2019. All Rights Reserved.
|
|
2
|
+
// Copyright IBM Corp. and LoopBack contributors 2017,2019. All Rights Reserved.
|
|
3
3
|
// Node module: @loopback/repository
|
|
4
4
|
// This file is licensed under the MIT License.
|
|
5
5
|
// License text available at https://opensource.org/licenses/MIT
|
package/dist/types/model.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.js","sourceRoot":"","sources":["../../src/types/model.ts"],"names":[],"mappings":";AAAA,
|
|
1
|
+
{"version":3,"file":"model.js","sourceRoot":"","sources":["../../src/types/model.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,oCAAoC;AACpC,+CAA+C;AAC/C,gEAAgE;;;AAIhE,qCAAoC;AAEpC;;GAEG;AACH,MAAa,SAA2B,SAAQ,mBAAa;IAG3D,YAAmB,UAAoB;QACrC,KAAK,CAAC,UAAU,CAAC,CAAC;QADD,eAAU,GAAV,UAAU,CAAU;QAF9B,SAAI,GAAW,OAAO,CAAC;IAIhC,CAAC;IAED,SAAS,CAAC,KAA2B;QACnC,IAAI,KAAK,IAAI,IAAI;YAAE,OAAO,KAAK,CAAC;QAChC,OAAO,KAAK,CAAC,MAAM,EAAE,CAAC;IACxB,CAAC;CACF;AAXD,8BAWC"}
|
package/dist/types/null.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
// Copyright IBM Corp. 2020. All Rights Reserved.
|
|
2
|
+
// Copyright IBM Corp. and LoopBack contributors 2020. All Rights Reserved.
|
|
3
3
|
// Node module: @loopback/repository
|
|
4
4
|
// This file is licensed under the MIT License.
|
|
5
5
|
// License text available at https://opensource.org/licenses/MIT
|
package/dist/types/null.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"null.js","sourceRoot":"","sources":["../../src/types/null.ts"],"names":[],"mappings":";AAAA,
|
|
1
|
+
{"version":3,"file":"null.js","sourceRoot":"","sources":["../../src/types/null.ts"],"names":[],"mappings":";AAAA,2EAA2E;AAC3E,oCAAoC;AACpC,+CAA+C;AAC/C,gEAAgE;;;AAIhE,uDAAuD;AAEvD;;GAEG;AACH,MAAa,QAAQ;IAArB;QACW,SAAI,GAAG,SAAS,CAAC;IAqB5B,CAAC;IAnBC,UAAU,CAAC,KAAU;QACnB,OAAO,KAAK,KAAK,IAAI,CAAC;IACxB,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC;IACd,CAAC;IAED,WAAW,CAAC,KAAU;QACpB,OAAO,KAAK,IAAI,IAAI,CAAC;IACvB,CAAC;IAED,MAAM,CAAC,KAAU;QACf,OAAO,IAAI,CAAC;IACd,CAAC;IAED,SAAS,CAAC,KAAiC;QACzC,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAtBD,4BAsBC"}
|
package/dist/types/number.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
// Copyright IBM Corp. 2017,2019. All Rights Reserved.
|
|
2
|
+
// Copyright IBM Corp. and LoopBack contributors 2017,2019. All Rights Reserved.
|
|
3
3
|
// Node module: @loopback/repository
|
|
4
4
|
// This file is licensed under the MIT License.
|
|
5
5
|
// License text available at https://opensource.org/licenses/MIT
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
exports.NumberType = void 0;
|
|
8
8
|
const tslib_1 = require("tslib");
|
|
9
|
-
const util_1 =
|
|
9
|
+
const util_1 = tslib_1.__importDefault(require("util"));
|
|
10
10
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
11
11
|
/**
|
|
12
12
|
* Number type
|
package/dist/types/number.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"number.js","sourceRoot":"","sources":["../../src/types/number.ts"],"names":[],"mappings":";AAAA,
|
|
1
|
+
{"version":3,"file":"number.js","sourceRoot":"","sources":["../../src/types/number.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,oCAAoC;AACpC,+CAA+C;AAC/C,gEAAgE;;;;AAEhE,wDAAwB;AAGxB,uDAAuD;AAEvD;;GAEG;AACH,MAAa,UAAU;IAAvB;QACW,SAAI,GAAG,QAAQ,CAAC;IA2B3B,CAAC;IAzBC,UAAU,CAAC,KAAU;QACnB,OAAO,KAAK,IAAI,IAAI,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC;IACvE,CAAC;IAED,WAAW,CAAC,KAAU;QACpB,OAAO,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAChD,CAAC;IAED,YAAY;QACV,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,CAAC,KAAU;QACf,IAAI,KAAK,IAAI,IAAI;YAAE,OAAO,KAAK,CAAC;QAChC,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QACxB,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE;YACZ,MAAM,GAAG,GAAG,cAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC5D,MAAM,IAAI,SAAS,CAAC,GAAG,CAAC,CAAC;SAC1B;QACD,OAAO,CAAC,CAAC;IACX,CAAC;IAED,SAAS,CAAC,KAAgC;QACxC,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AA5BD,gCA4BC"}
|
package/dist/types/object.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
// Copyright IBM Corp. 2017,2019. All Rights Reserved.
|
|
2
|
+
// Copyright IBM Corp. and LoopBack contributors 2017,2019. All Rights Reserved.
|
|
3
3
|
// Node module: @loopback/repository
|
|
4
4
|
// This file is licensed under the MIT License.
|
|
5
5
|
// License text available at https://opensource.org/licenses/MIT
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
exports.ObjectType = void 0;
|
|
8
8
|
const tslib_1 = require("tslib");
|
|
9
|
-
const util_1 =
|
|
9
|
+
const util_1 = tslib_1.__importDefault(require("util"));
|
|
10
10
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
11
11
|
/**
|
|
12
12
|
* Object type
|
package/dist/types/object.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"object.js","sourceRoot":"","sources":["../../src/types/object.ts"],"names":[],"mappings":";AAAA,
|
|
1
|
+
{"version":3,"file":"object.js","sourceRoot":"","sources":["../../src/types/object.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,oCAAoC;AACpC,+CAA+C;AAC/C,gEAAgE;;;;AAEhE,wDAAwB;AAIxB,uDAAuD;AAEvD;;GAEG;AACH,MAAa,UAAU;IAGrB,YAAmB,IAAc;QAAd,SAAI,GAAJ,IAAI,CAAU;QAFjC,SAAI,GAAG,QAAQ,CAAC;IAEoB,CAAC;IAErC,UAAU,CAAC,KAAU;QACnB,OAAO,KAAK,IAAI,IAAI,IAAI,KAAK,YAAY,IAAI,CAAC,IAAI,CAAC;IACrD,CAAC;IAED,WAAW,CAAC,KAAU;QACpB,OAAO,CACL,KAAK,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CACtE,CAAC;IACJ,CAAC;IAED,YAAY;QACV,OAAO,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;IACzB,CAAC;IAED,MAAM,CAAC,KAAU;QACf,IAAI,KAAK,IAAI,IAAI;YAAE,OAAO,KAAK,CAAC;QAChC,IAAI,KAAK,YAAY,IAAI,CAAC,IAAI,EAAE;YAC9B,OAAO,KAAK,CAAC;SACd;QACD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACrD,MAAM,GAAG,GAAG,cAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC5D,MAAM,IAAI,SAAS,CAAC,GAAG,CAAC,CAAC;SAC1B;QACD,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IAED,SAAS,CAAC,KAA2B;QACnC,IAAI,KAAK,IAAI,IAAI;YAAE,OAAO,KAAK,CAAC;QAChC,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,UAAU,EAAE;YACtC,OAAO,KAAK,CAAC,MAAM,EAAE,CAAC;SACvB;QACD,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AAtCD,gCAsCC"}
|
package/dist/types/string.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
// Copyright IBM Corp. 2017,2019. All Rights Reserved.
|
|
2
|
+
// Copyright IBM Corp. and LoopBack contributors 2017,2019. All Rights Reserved.
|
|
3
3
|
// Node module: @loopback/repository
|
|
4
4
|
// This file is licensed under the MIT License.
|
|
5
5
|
// License text available at https://opensource.org/licenses/MIT
|
package/dist/types/string.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"string.js","sourceRoot":"","sources":["../../src/types/string.ts"],"names":[],"mappings":";AAAA,
|
|
1
|
+
{"version":3,"file":"string.js","sourceRoot":"","sources":["../../src/types/string.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,oCAAoC;AACpC,+CAA+C;AAC/C,gEAAgE;;;AAIhE,uDAAuD;AAEvD;;GAEG;AACH,MAAa,UAAU;IAAvB;QACW,SAAI,GAAG,QAAQ,CAAC;IA4B3B,CAAC;IA1BC,UAAU,CAAC,KAAU;QACnB,OAAO,KAAK,IAAI,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC;IACpD,CAAC;IAED,WAAW,CAAC,KAAU;QACpB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,YAAY;QACV,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,CAAC,KAAU;QACf,IAAI,KAAK,IAAI,IAAI;YAAE,OAAO,KAAK,CAAC;QAChC,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,UAAU,EAAE;YACtC,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;SACxB;QACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;SAC9B;QACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAED,SAAS,CAAC,KAAgC;QACxC,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AA7BD,gCA6BC"}
|
package/dist/types/type.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
// Copyright IBM Corp. 2017,2019. All Rights Reserved.
|
|
2
|
+
// Copyright IBM Corp. and LoopBack contributors 2017,2019. All Rights Reserved.
|
|
3
3
|
// Node module: @loopback/repository
|
|
4
4
|
// This file is licensed under the MIT License.
|
|
5
5
|
// License text available at https://opensource.org/licenses/MIT
|
package/dist/types/type.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type.js","sourceRoot":"","sources":["../../src/types/type.ts"],"names":[],"mappings":";AAAA,
|
|
1
|
+
{"version":3,"file":"type.js","sourceRoot":"","sources":["../../src/types/type.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,oCAAoC;AACpC,+CAA+C;AAC/C,gEAAgE"}
|
package/dist/types/union.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
// Copyright IBM Corp. 2017,2019. All Rights Reserved.
|
|
2
|
+
// Copyright IBM Corp. and LoopBack contributors 2017,2019. All Rights Reserved.
|
|
3
3
|
// Node module: @loopback/repository
|
|
4
4
|
// This file is licensed under the MIT License.
|
|
5
5
|
// License text available at https://opensource.org/licenses/MIT
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
exports.UnionType = void 0;
|
|
8
8
|
const tslib_1 = require("tslib");
|
|
9
|
-
const util_1 =
|
|
9
|
+
const util_1 = tslib_1.__importDefault(require("util"));
|
|
10
10
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
11
11
|
/**
|
|
12
12
|
* Union type, such as string | number
|
package/dist/types/union.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"union.js","sourceRoot":"","sources":["../../src/types/union.ts"],"names":[],"mappings":";AAAA,
|
|
1
|
+
{"version":3,"file":"union.js","sourceRoot":"","sources":["../../src/types/union.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,oCAAoC;AACpC,+CAA+C;AAC/C,gEAAgE;;;;AAEhE,wDAAwB;AAGxB,uDAAuD;AAEvD;;GAEG;AACH,MAAa,SAAS;IACpB,YAAmB,SAAsB;QAAtB,cAAS,GAAT,SAAS,CAAa;QAEhC,SAAI,GAAG,OAAO,CAAC;IAFoB,CAAC;IAI7C,UAAU,CAAC,KAAU;QACnB,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;IACvD,CAAC;IAED,WAAW,CAAC,KAAU;QACpB,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IACxD,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC;IAC1C,CAAC;IAED,MAAM,CAAC,KAAU;QACf,uBAAuB;QACvB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,SAAS,EAAE;YACjC,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE;gBAC1B,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;aAC3B;SACF;QACD,gBAAgB;QAChB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,SAAS,EAAE;YACjC,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE;gBAC3B,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;aAC3B;SACF;QACD,MAAM,GAAG,GAAG,cAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC5D,MAAM,IAAI,SAAS,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAED,SAAS,CAAC,KAAU;QAClB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,SAAS,EAAE;YACjC,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE;gBAC1B,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;aAC9B;SACF;IACH,CAAC;CACF;AAzCD,8BAyCC"}
|
package/package.json
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@loopback/repository",
|
|
3
3
|
"description": "Define and implement a common set of interfaces for interacting with databases",
|
|
4
|
-
"version": "
|
|
4
|
+
"version": "5.0.1",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
8
|
-
"author": "IBM Corp.",
|
|
9
|
-
"copyright.owner": "IBM Corp.",
|
|
8
|
+
"author": "IBM Corp. and LoopBack contributors",
|
|
9
|
+
"copyright.owner": "IBM Corp. and LoopBack contributors",
|
|
10
10
|
"repository": {
|
|
11
11
|
"type": "git",
|
|
12
12
|
"url": "https://github.com/loopbackio/loopback-next.git",
|
|
13
13
|
"directory": "packages/repository"
|
|
14
14
|
},
|
|
15
15
|
"engines": {
|
|
16
|
-
"node": "
|
|
16
|
+
"node": "14 || 16 || 17 || 18"
|
|
17
17
|
},
|
|
18
18
|
"scripts": {
|
|
19
19
|
"acceptance": "lb-mocha \"dist/__tests__/acceptance/**/*.js\"",
|
|
@@ -33,26 +33,26 @@
|
|
|
33
33
|
"!*/__tests__"
|
|
34
34
|
],
|
|
35
35
|
"peerDependencies": {
|
|
36
|
-
"@loopback/core": "^
|
|
36
|
+
"@loopback/core": "^4.0.1"
|
|
37
37
|
},
|
|
38
38
|
"dependencies": {
|
|
39
|
-
"@loopback/filter": "^
|
|
39
|
+
"@loopback/filter": "^3.0.1",
|
|
40
40
|
"@types/debug": "^4.1.7",
|
|
41
|
-
"debug": "^4.3.
|
|
41
|
+
"debug": "^4.3.4",
|
|
42
42
|
"lodash": "^4.17.21",
|
|
43
43
|
"loopback-datasource-juggler": "^4.27.1",
|
|
44
|
-
"tslib": "^2.
|
|
44
|
+
"tslib": "^2.4.0"
|
|
45
45
|
},
|
|
46
46
|
"devDependencies": {
|
|
47
|
-
"@loopback/build": "^
|
|
48
|
-
"@loopback/core": "^
|
|
49
|
-
"@loopback/eslint-config": "^
|
|
50
|
-
"@loopback/testlab": "^
|
|
47
|
+
"@loopback/build": "^9.0.1",
|
|
48
|
+
"@loopback/core": "^4.0.1",
|
|
49
|
+
"@loopback/eslint-config": "^13.0.1",
|
|
50
|
+
"@loopback/testlab": "^5.0.1",
|
|
51
51
|
"@types/bson": "^4.0.5",
|
|
52
|
-
"@types/json-schema": "^7.0.
|
|
53
|
-
"@types/lodash": "^4.14.
|
|
54
|
-
"@types/node": "^
|
|
55
|
-
"bson": "4.6.
|
|
52
|
+
"@types/json-schema": "^7.0.11",
|
|
53
|
+
"@types/lodash": "^4.14.182",
|
|
54
|
+
"@types/node": "^14.18.21",
|
|
55
|
+
"bson": "4.6.4"
|
|
56
56
|
},
|
|
57
|
-
"gitHead": "
|
|
57
|
+
"gitHead": "ccf7863d0639de966d6c6129b4aa94ba1dce2c33"
|
|
58
58
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Copyright IBM Corp. 2018,2019. All Rights Reserved.
|
|
1
|
+
// Copyright IBM Corp. and LoopBack contributors 2018,2019. All Rights Reserved.
|
|
2
2
|
// Node module: @loopback/repository
|
|
3
3
|
// This file is licensed under the MIT License.
|
|
4
4
|
// License text available at https://opensource.org/licenses/MIT
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Copyright IBM Corp. 2018,2020. All Rights Reserved.
|
|
1
|
+
// Copyright IBM Corp. and LoopBack contributors 2018,2020. All Rights Reserved.
|
|
2
2
|
// Node module: @loopback/repository
|
|
3
3
|
// This file is licensed under the MIT License.
|
|
4
4
|
// License text available at https://opensource.org/licenses/MIT
|
package/src/connectors/index.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Copyright IBM Corp. 2018,2020. All Rights Reserved.
|
|
1
|
+
// Copyright IBM Corp. and LoopBack contributors 2018,2020. All Rights Reserved.
|
|
2
2
|
// Node module: @loopback/repository
|
|
3
3
|
// This file is licensed under the MIT License.
|
|
4
4
|
// License text available at https://opensource.org/licenses/MIT
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Copyright IBM Corp. 2018,2020. All Rights Reserved.
|
|
1
|
+
// Copyright IBM Corp. and LoopBack contributors 2018,2020. All Rights Reserved.
|
|
2
2
|
// Node module: @loopback/repository
|
|
3
3
|
// This file is licensed under the MIT License.
|
|
4
4
|
// License text available at https://opensource.org/licenses/MIT
|
package/src/datasource.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Copyright IBM Corp. 2017,2019. All Rights Reserved.
|
|
1
|
+
// Copyright IBM Corp. and LoopBack contributors 2017,2019. All Rights Reserved.
|
|
2
2
|
// Node module: @loopback/repository
|
|
3
3
|
// This file is licensed under the MIT License.
|
|
4
4
|
// License text available at https://opensource.org/licenses/MIT
|
package/src/decorators/index.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Copyright IBM Corp. 2018,2020. All Rights Reserved.
|
|
1
|
+
// Copyright IBM Corp. and LoopBack contributors 2018,2020. All Rights Reserved.
|
|
2
2
|
// Node module: @loopback/repository
|
|
3
3
|
// This file is licensed under the MIT License.
|
|
4
4
|
// License text available at https://opensource.org/licenses/MIT
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Copyright IBM Corp. 2017,2020. All Rights Reserved.
|
|
1
|
+
// Copyright IBM Corp. and LoopBack contributors 2017,2020. All Rights Reserved.
|
|
2
2
|
// Node module: @loopback/repository
|
|
3
3
|
// This file is licensed under the MIT License.
|
|
4
4
|
// License text available at https://opensource.org/licenses/MIT
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Copyright IBM Corp. 2018,2020. All Rights Reserved.
|
|
1
|
+
// Copyright IBM Corp. and LoopBack contributors 2018,2020. All Rights Reserved.
|
|
2
2
|
// Node module: @loopback/repository
|
|
3
3
|
// This file is licensed under the MIT License.
|
|
4
4
|
// License text available at https://opensource.org/licenses/MIT
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Copyright IBM Corp. 2018,2020. All Rights Reserved.
|
|
1
|
+
// Copyright IBM Corp. and LoopBack contributors 2018,2020. All Rights Reserved.
|
|
2
2
|
// Node module: @loopback/repository
|
|
3
3
|
// This file is licensed under the MIT License.
|
|
4
4
|
// License text available at https://opensource.org/licenses/MIT
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Copyright IBM Corp. 2019,2020. All Rights Reserved.
|
|
1
|
+
// Copyright IBM Corp. and LoopBack contributors 2019,2020. All Rights Reserved.
|
|
2
2
|
// Node module: @loopback/repository
|
|
3
3
|
// This file is licensed under the MIT License.
|
|
4
4
|
// License text available at https://opensource.org/licenses/MIT
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Copyright IBM Corp. 2020. All Rights Reserved.
|
|
1
|
+
// Copyright IBM Corp. and LoopBack contributors 2020. All Rights Reserved.
|
|
2
2
|
// Node module: @loopback/repository
|
|
3
3
|
// This file is licensed under the MIT License.
|
|
4
4
|
// License text available at https://opensource.org/licenses/MIT
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Copyright IBM Corp. 2018,2019. All Rights Reserved.
|
|
1
|
+
// Copyright IBM Corp. and LoopBack contributors 2018,2019. All Rights Reserved.
|
|
2
2
|
// Node module: @loopback/repository
|
|
3
3
|
// This file is licensed under the MIT License.
|
|
4
4
|
// License text available at https://opensource.org/licenses/MIT
|
package/src/errors/index.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
// Copyright IBM Corp. 2018. All Rights Reserved.
|
|
1
|
+
// Copyright IBM Corp. and LoopBack contributors 2018. All Rights Reserved.
|
|
2
2
|
// Node module: @loopback/repository
|
|
3
3
|
// This file is licensed under the MIT License.
|
|
4
4
|
// License text available at https://opensource.org/licenses/MIT
|
|
5
5
|
|
|
6
6
|
export * from './entity-not-found.error';
|
|
7
|
+
export * from './invalid-polymorphism.error';
|
|
7
8
|
export * from './invalid-relation.error';
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export class InvalidPolymorphismError<Props extends object = {}> extends Error {
|
|
2
|
+
code: string;
|
|
3
|
+
|
|
4
|
+
constructor(
|
|
5
|
+
typeName: string,
|
|
6
|
+
discriminator?: string,
|
|
7
|
+
extraProperties?: Props,
|
|
8
|
+
) {
|
|
9
|
+
const message = discriminator
|
|
10
|
+
? `Invalid class name ${typeName} by discriminator ${discriminator}. Please check polymorphic types and the discriminator.`
|
|
11
|
+
: `Invalid class name ${typeName}. Please check polymorphic types and the discriminator.`;
|
|
12
|
+
super(message);
|
|
13
|
+
|
|
14
|
+
Error.captureStackTrace(this, this.constructor);
|
|
15
|
+
|
|
16
|
+
this.code = 'INVALID_POLYMORPHISM';
|
|
17
|
+
|
|
18
|
+
Object.assign(this, extraProperties);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export function isInvalidPolymorphismError(
|
|
23
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
24
|
+
e: any,
|
|
25
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
26
|
+
): e is InvalidPolymorphismError<any> {
|
|
27
|
+
return e instanceof InvalidPolymorphismError;
|
|
28
|
+
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
// Copyright IBM Corp. 2018,2019. All Rights Reserved.
|
|
1
|
+
// Copyright IBM Corp. and LoopBack contributors 2018,2019. All Rights Reserved.
|
|
2
2
|
// Node module: @loopback/repository
|
|
3
3
|
// This file is licensed under the MIT License.
|
|
4
4
|
// License text available at https://opensource.org/licenses/MIT
|
|
5
5
|
|
|
6
|
-
import {
|
|
6
|
+
import {RelationMetadata, RelationType} from '../relations';
|
|
7
7
|
|
|
8
8
|
export class InvalidRelationError<Props extends object = {}> extends Error {
|
|
9
9
|
code: string;
|
package/src/index.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Copyright IBM Corp. 2017,2020. All Rights Reserved.
|
|
1
|
+
// Copyright IBM Corp. and LoopBack contributors 2017,2020. All Rights Reserved.
|
|
2
2
|
// Node module: @loopback/repository
|
|
3
3
|
// This file is licensed under the MIT License.
|
|
4
4
|
// License text available at https://opensource.org/licenses/MIT
|
package/src/mixins/index.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Copyright IBM Corp. 2018,2020. All Rights Reserved.
|
|
1
|
+
// Copyright IBM Corp. and LoopBack contributors 2018,2020. All Rights Reserved.
|
|
2
2
|
// Node module: @loopback/repository
|
|
3
3
|
// This file is licensed under the MIT License.
|
|
4
4
|
// License text available at https://opensource.org/licenses/MIT
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Copyright IBM Corp. 2018,2020. All Rights Reserved.
|
|
1
|
+
// Copyright IBM Corp. and LoopBack contributors 2018,2020. All Rights Reserved.
|
|
2
2
|
// Node module: @loopback/repository
|
|
3
3
|
// This file is licensed under the MIT License.
|
|
4
4
|
// License text available at https://opensource.org/licenses/MIT
|
|
@@ -23,11 +23,6 @@ import {juggler, Repository} from '../repositories';
|
|
|
23
23
|
|
|
24
24
|
const debug = debugFactory('loopback:repository:mixin');
|
|
25
25
|
|
|
26
|
-
// FIXME(rfeng): Workaround for https://github.com/microsoft/rushstack/pull/1867
|
|
27
|
-
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
28
|
-
import * as loopbackContext from '@loopback/core';
|
|
29
|
-
import * as loopbackCore from '@loopback/core';
|
|
30
|
-
|
|
31
26
|
/* eslint-enable @typescript-eslint/no-unused-vars */
|
|
32
27
|
|
|
33
28
|
/**
|
package/src/model.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Copyright IBM Corp. 2017,2020. All Rights Reserved.
|
|
1
|
+
// Copyright IBM Corp. and LoopBack contributors 2017,2020. All Rights Reserved.
|
|
2
2
|
// Node module: @loopback/repository
|
|
3
3
|
// This file is licensed under the MIT License.
|
|
4
4
|
// License text available at https://opensource.org/licenses/MIT
|
|
@@ -9,6 +9,7 @@ import {
|
|
|
9
9
|
HasManyDefinition,
|
|
10
10
|
HasOneDefinition,
|
|
11
11
|
JsonSchema,
|
|
12
|
+
ReferencesManyDefinition,
|
|
12
13
|
RelationMetadata,
|
|
13
14
|
RelationType,
|
|
14
15
|
} from './index';
|
|
@@ -240,6 +241,24 @@ export class ModelDefinition {
|
|
|
240
241
|
return this.addRelation(meta);
|
|
241
242
|
}
|
|
242
243
|
|
|
244
|
+
/**
|
|
245
|
+
* Define a new referencesMany relation.
|
|
246
|
+
* @param name - The name of the referencesMany relation.
|
|
247
|
+
* @param definition - The definition of the referencesMany relation.
|
|
248
|
+
*/
|
|
249
|
+
referencesMany(
|
|
250
|
+
name: string,
|
|
251
|
+
definition: Omit<ReferencesManyDefinition, 'name' | 'type' | 'targetsMany'>,
|
|
252
|
+
): this {
|
|
253
|
+
const meta: ReferencesManyDefinition = {
|
|
254
|
+
...definition,
|
|
255
|
+
name,
|
|
256
|
+
type: RelationType.referencesMany,
|
|
257
|
+
targetsMany: true,
|
|
258
|
+
};
|
|
259
|
+
return this.addRelation(meta);
|
|
260
|
+
}
|
|
261
|
+
|
|
243
262
|
/**
|
|
244
263
|
* Get an array of names of ID properties, which are specified in
|
|
245
264
|
* the model settings or properties with `id` attribute.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Copyright IBM Corp. 2018,2019. All Rights Reserved.
|
|
1
|
+
// Copyright IBM Corp. and LoopBack contributors 2018,2019. All Rights Reserved.
|
|
2
2
|
// Node module: @loopback/repository
|
|
3
3
|
// This file is licensed under the MIT License.
|
|
4
4
|
// License text available at https://opensource.org/licenses/MIT
|
|
@@ -22,7 +22,7 @@ export interface BelongsToAccessor<Target extends Entity, SourceId> {
|
|
|
22
22
|
/**
|
|
23
23
|
* Invoke the function to obtain HasManyRepository.
|
|
24
24
|
*/
|
|
25
|
-
(sourceId: SourceId): Promise<Target>;
|
|
25
|
+
(sourceId: SourceId, polymorphicTypes?: string | string[]): Promise<Target>;
|
|
26
26
|
|
|
27
27
|
/**
|
|
28
28
|
* Use `resolver` property to obtain an InclusionResolver for this relation.
|
|
@@ -32,6 +32,8 @@ export interface BelongsToAccessor<Target extends Entity, SourceId> {
|
|
|
32
32
|
|
|
33
33
|
/**
|
|
34
34
|
* Enforces a BelongsTo constraint on a repository
|
|
35
|
+
* If the target model is polymorphic, i.e. stored within different repositories,
|
|
36
|
+
* supply the targetRepositoryGetter with a dictionary in the form of {[typeName: string]: repositoryGetter}
|
|
35
37
|
*/
|
|
36
38
|
export function createBelongsToAccessor<
|
|
37
39
|
Target extends Entity,
|
|
@@ -40,13 +42,35 @@ export function createBelongsToAccessor<
|
|
|
40
42
|
SourceId,
|
|
41
43
|
>(
|
|
42
44
|
belongsToMetadata: BelongsToDefinition,
|
|
43
|
-
|
|
45
|
+
targetRepositoryGetter:
|
|
46
|
+
| Getter<EntityCrudRepository<Target, TargetId>>
|
|
47
|
+
| {
|
|
48
|
+
[repoType: string]: Getter<EntityCrudRepository<Target, TargetId>>;
|
|
49
|
+
},
|
|
44
50
|
sourceRepository: EntityCrudRepository<Source, SourceId>,
|
|
45
51
|
): BelongsToAccessor<Target, SourceId> {
|
|
46
52
|
const meta = resolveBelongsToMetadata(belongsToMetadata);
|
|
53
|
+
// resolve the repositoryGetter into a dictionary
|
|
54
|
+
if (typeof targetRepositoryGetter === 'function') {
|
|
55
|
+
targetRepositoryGetter = {
|
|
56
|
+
[meta.target().name]: targetRepositoryGetter as Getter<
|
|
57
|
+
EntityCrudRepository<Target, TargetId>
|
|
58
|
+
>,
|
|
59
|
+
};
|
|
60
|
+
}
|
|
47
61
|
debug('Resolved BelongsTo relation metadata: %o', meta);
|
|
48
62
|
const result: BelongsToAccessor<Target, SourceId> =
|
|
49
|
-
async function getTargetInstanceOfBelongsTo(
|
|
63
|
+
async function getTargetInstanceOfBelongsTo(
|
|
64
|
+
sourceId: SourceId,
|
|
65
|
+
polymorphicTypes?: string | string[],
|
|
66
|
+
) {
|
|
67
|
+
if (meta.polymorphic !== false) {
|
|
68
|
+
if (!polymorphicTypes || polymorphicTypes.length === 0) {
|
|
69
|
+
console.warn(
|
|
70
|
+
'It is highly recommended to specify the polymorphicTypes param when using polymorphic types.',
|
|
71
|
+
);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
50
74
|
const foreignKey = meta.keyFrom;
|
|
51
75
|
const primaryKey = meta.keyTo;
|
|
52
76
|
const sourceModel = await sourceRepository.findById(sourceId);
|
|
@@ -60,15 +84,20 @@ export function createBelongsToAccessor<
|
|
|
60
84
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
61
85
|
const constraint: any = {[primaryKey]: foreignKeyValue};
|
|
62
86
|
const constrainedRepo = new DefaultBelongsToRepository(
|
|
63
|
-
|
|
87
|
+
targetRepositoryGetter as {
|
|
88
|
+
[repoType: string]: Getter<EntityCrudRepository<Target, TargetId>>;
|
|
89
|
+
},
|
|
64
90
|
constraint as DataObject<Target>,
|
|
91
|
+
belongsToMetadata.target,
|
|
65
92
|
);
|
|
66
|
-
return constrainedRepo.get();
|
|
93
|
+
return constrainedRepo.get({polymorphicType: polymorphicTypes});
|
|
67
94
|
};
|
|
68
95
|
|
|
69
96
|
result.inclusionResolver = createBelongsToInclusionResolver(
|
|
70
97
|
meta,
|
|
71
|
-
|
|
98
|
+
targetRepositoryGetter as {
|
|
99
|
+
[repoType: string]: Getter<EntityCrudRepository<Target, TargetId>>;
|
|
100
|
+
},
|
|
72
101
|
);
|
|
73
102
|
return result;
|
|
74
103
|
}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
// Copyright IBM Corp. 2018,2020. All Rights Reserved.
|
|
1
|
+
// Copyright IBM Corp. and LoopBack contributors 2018,2020. All Rights Reserved.
|
|
2
2
|
// Node module: @loopback/repository
|
|
3
3
|
// This file is licensed under the MIT License.
|
|
4
4
|
// License text available at https://opensource.org/licenses/MIT
|
|
5
5
|
|
|
6
6
|
import {DecoratorFactory, MetadataInspector} from '@loopback/core';
|
|
7
7
|
import {property} from '../../decorators';
|
|
8
|
-
import {relation} from '../relation.decorator';
|
|
9
8
|
import {Entity, EntityResolver, PropertyDefinition} from '../../model';
|
|
9
|
+
import {relation} from '../relation.decorator';
|
|
10
10
|
import {BelongsToDefinition, RelationType} from '../relation.types';
|
|
11
11
|
|
|
12
12
|
/**
|