@loopback/repository 4.0.0-alpha.7 → 4.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 +25 -0
- package/README.md +94 -372
- package/dist/common-types.d.ts +96 -0
- package/dist/common-types.js +24 -0
- package/dist/common-types.js.map +1 -0
- package/dist/connectors/connector.d.ts +48 -0
- package/{lib → dist/connectors}/connector.js +1 -1
- package/dist/connectors/connector.js.map +1 -0
- package/{lib/crud-connector.d.ts → dist/connectors/crud.connector.d.ts} +51 -51
- package/{lib/common-types.js → dist/connectors/crud.connector.js} +2 -2
- package/dist/connectors/crud.connector.js.map +1 -0
- package/dist/connectors/index.d.ts +3 -0
- package/dist/connectors/index.js +11 -0
- package/dist/connectors/index.js.map +1 -0
- package/{lib6/kv-connector.d.ts → dist/connectors/kv.connector.d.ts} +28 -28
- package/{lib/datasource.js → dist/connectors/kv.connector.js} +2 -2
- package/dist/connectors/kv.connector.js.map +1 -0
- package/dist/datasource.d.ts +27 -0
- package/{lib6 → dist}/datasource.js +1 -1
- package/dist/datasource.js.map +1 -0
- package/dist/decorators/index.d.ts +3 -0
- package/dist/decorators/index.js +11 -0
- package/dist/decorators/index.js.map +1 -0
- package/dist/decorators/metadata.d.ts +12 -0
- package/dist/decorators/metadata.js +51 -0
- package/dist/decorators/metadata.js.map +1 -0
- package/dist/decorators/model.decorator.d.ts +40 -0
- package/dist/decorators/model.decorator.js +112 -0
- package/dist/decorators/model.decorator.js.map +1 -0
- package/dist/decorators/repository.decorator.d.ts +106 -0
- package/dist/decorators/repository.decorator.js +114 -0
- package/dist/decorators/repository.decorator.js.map +1 -0
- package/dist/define-model-class.d.ts +55 -0
- package/dist/define-model-class.js +57 -0
- package/dist/define-model-class.js.map +1 -0
- package/dist/define-repository-class.d.ts +119 -0
- package/dist/define-repository-class.js +98 -0
- package/dist/define-repository-class.js.map +1 -0
- package/dist/errors/entity-not-found.error.d.ts +8 -0
- package/dist/errors/entity-not-found.error.js +28 -0
- package/dist/errors/entity-not-found.error.js.map +1 -0
- package/dist/errors/index.d.ts +2 -0
- package/dist/errors/index.js +10 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/errors/invalid-relation.error.d.ts +10 -0
- package/dist/errors/invalid-relation.error.js +28 -0
- package/dist/errors/invalid-relation.error.js.map +1 -0
- package/dist/index.d.ts +30 -0
- package/dist/index.js +39 -0
- package/dist/index.js.map +1 -0
- package/dist/keys.d.ts +34 -0
- package/dist/keys.js +44 -0
- package/dist/keys.js.map +1 -0
- package/dist/mixins/index.d.ts +1 -0
- package/dist/mixins/index.js +9 -0
- package/dist/mixins/index.js.map +1 -0
- package/dist/mixins/repository.mixin.d.ts +377 -0
- package/dist/mixins/repository.mixin.js +405 -0
- package/dist/mixins/repository.mixin.js.map +1 -0
- package/dist/model.d.ts +232 -0
- package/dist/model.js +367 -0
- package/dist/model.js.map +1 -0
- package/dist/relations/belongs-to/belongs-to.accessor.d.ts +17 -0
- package/dist/relations/belongs-to/belongs-to.accessor.js +40 -0
- package/dist/relations/belongs-to/belongs-to.accessor.js.map +1 -0
- package/dist/relations/belongs-to/belongs-to.decorator.d.ts +11 -0
- package/dist/relations/belongs-to/belongs-to.decorator.js +64 -0
- package/dist/relations/belongs-to/belongs-to.decorator.js.map +1 -0
- package/dist/relations/belongs-to/belongs-to.helpers.d.ts +17 -0
- package/dist/relations/belongs-to/belongs-to.helpers.js +63 -0
- package/dist/relations/belongs-to/belongs-to.helpers.js.map +1 -0
- package/dist/relations/belongs-to/belongs-to.inclusion-resolver.d.ts +14 -0
- package/dist/relations/belongs-to/belongs-to.inclusion-resolver.js +36 -0
- package/dist/relations/belongs-to/belongs-to.inclusion-resolver.js.map +1 -0
- package/dist/relations/belongs-to/belongs-to.repository.d.ts +28 -0
- package/dist/relations/belongs-to/belongs-to.repository.js +33 -0
- package/dist/relations/belongs-to/belongs-to.repository.js.map +1 -0
- package/dist/relations/belongs-to/index.d.ts +4 -0
- package/dist/relations/belongs-to/index.js +12 -0
- package/dist/relations/belongs-to/index.js.map +1 -0
- package/dist/relations/has-many/has-many-through.helpers.d.ts +182 -0
- package/dist/relations/has-many/has-many-through.helpers.js +282 -0
- package/dist/relations/has-many/has-many-through.helpers.js.map +1 -0
- package/dist/relations/has-many/has-many-through.inclusion-resolver.d.ts +16 -0
- package/dist/relations/has-many/has-many-through.inclusion-resolver.js +78 -0
- package/dist/relations/has-many/has-many-through.inclusion-resolver.js.map +1 -0
- package/dist/relations/has-many/has-many-through.repository-factory.d.ts +17 -0
- package/dist/relations/has-many/has-many-through.repository-factory.js +37 -0
- package/dist/relations/has-many/has-many-through.repository-factory.js.map +1 -0
- package/dist/relations/has-many/has-many-through.repository.d.ts +114 -0
- package/dist/relations/has-many/has-many-through.repository.js +103 -0
- package/dist/relations/has-many/has-many-through.repository.js.map +1 -0
- package/dist/relations/has-many/has-many.decorator.d.ts +11 -0
- package/dist/relations/has-many/has-many.decorator.js +36 -0
- package/dist/relations/has-many/has-many.decorator.js.map +1 -0
- package/dist/relations/has-many/has-many.helpers.d.ts +26 -0
- package/dist/relations/has-many/has-many.helpers.js +78 -0
- package/dist/relations/has-many/has-many.helpers.js.map +1 -0
- package/dist/relations/has-many/has-many.inclusion-resolver.d.ts +14 -0
- package/dist/relations/has-many/has-many.inclusion-resolver.js +45 -0
- package/dist/relations/has-many/has-many.inclusion-resolver.js.map +1 -0
- package/dist/relations/has-many/has-many.repository-factory.d.ts +28 -0
- package/dist/relations/has-many/has-many.repository-factory.js +39 -0
- package/dist/relations/has-many/has-many.repository-factory.js.map +1 -0
- package/dist/relations/has-many/has-many.repository.d.ts +54 -0
- package/dist/relations/has-many/has-many.repository.js +38 -0
- package/dist/relations/has-many/has-many.repository.js.map +1 -0
- package/dist/relations/has-many/index.d.ts +6 -0
- package/dist/relations/has-many/index.js +14 -0
- package/dist/relations/has-many/index.js.map +1 -0
- package/dist/relations/has-one/has-one.decorator.d.ts +3 -0
- package/dist/relations/has-one/has-one.decorator.js +37 -0
- package/dist/relations/has-one/has-one.decorator.js.map +1 -0
- package/dist/relations/has-one/has-one.helpers.d.ts +17 -0
- package/dist/relations/has-one/has-one.helpers.js +64 -0
- package/dist/relations/has-one/has-one.helpers.js.map +1 -0
- package/dist/relations/has-one/has-one.inclusion-resolver.d.ts +14 -0
- package/dist/relations/has-one/has-one.inclusion-resolver.js +35 -0
- package/dist/relations/has-one/has-one.inclusion-resolver.js.map +1 -0
- package/dist/relations/has-one/has-one.repository-factory.d.ts +28 -0
- package/dist/relations/has-one/has-one.repository-factory.js +39 -0
- package/dist/relations/has-one/has-one.repository-factory.js.map +1 -0
- package/dist/relations/has-one/has-one.repository.d.ts +53 -0
- package/dist/relations/has-one/has-one.repository.js +45 -0
- package/dist/relations/has-one/has-one.repository.js.map +1 -0
- package/dist/relations/has-one/index.d.ts +3 -0
- package/dist/relations/has-one/index.js +11 -0
- package/dist/relations/has-one/index.js.map +1 -0
- package/dist/relations/index.d.ts +6 -0
- package/dist/relations/index.js +14 -0
- package/dist/relations/index.js.map +1 -0
- package/dist/relations/relation.decorator.d.ts +39 -0
- package/dist/relations/relation.decorator.js +88 -0
- package/dist/relations/relation.decorator.js.map +1 -0
- package/dist/relations/relation.helpers.d.ts +105 -0
- package/dist/relations/relation.helpers.js +304 -0
- package/dist/relations/relation.helpers.js.map +1 -0
- package/dist/relations/relation.types.d.ts +142 -0
- package/dist/relations/relation.types.js +21 -0
- package/dist/relations/relation.types.js.map +1 -0
- package/dist/repositories/constraint-utils.d.ts +49 -0
- package/dist/repositories/constraint-utils.js +87 -0
- package/dist/repositories/constraint-utils.js.map +1 -0
- package/dist/repositories/index.d.ts +5 -0
- package/dist/repositories/index.js +13 -0
- package/dist/repositories/index.js.map +1 -0
- package/dist/repositories/kv.repository.bridge.d.ts +30 -0
- package/dist/repositories/kv.repository.bridge.js +76 -0
- package/dist/repositories/kv.repository.bridge.js.map +1 -0
- package/dist/repositories/kv.repository.d.ts +74 -0
- package/{lib/crud-connector.js → dist/repositories/kv.repository.js} +2 -2
- package/dist/repositories/kv.repository.js.map +1 -0
- package/dist/repositories/legacy-juggler-bridge.d.ts +305 -0
- package/dist/repositories/legacy-juggler-bridge.js +452 -0
- package/dist/repositories/legacy-juggler-bridge.js.map +1 -0
- package/dist/repositories/repository.d.ts +223 -0
- package/dist/repositories/repository.js +157 -0
- package/dist/repositories/repository.js.map +1 -0
- package/dist/transaction.d.ts +30 -0
- package/dist/transaction.js +18 -0
- package/dist/transaction.js.map +1 -0
- package/dist/type-resolver.d.ts +42 -0
- package/dist/type-resolver.js +61 -0
- package/dist/type-resolver.js.map +1 -0
- package/{lib → dist}/types/any.d.ts +1 -1
- package/{lib6 → dist}/types/any.js +3 -2
- package/dist/types/any.js.map +1 -0
- package/{lib6 → dist}/types/array.d.ts +4 -4
- package/{lib6 → dist}/types/array.js +6 -4
- package/dist/types/array.js.map +1 -0
- package/{lib → dist}/types/boolean.d.ts +1 -1
- package/{lib6 → dist}/types/boolean.js +3 -2
- package/dist/types/boolean.js.map +1 -0
- package/{lib6 → dist}/types/buffer.d.ts +2 -2
- package/{lib → dist}/types/buffer.js +8 -6
- package/dist/types/buffer.js.map +1 -0
- package/{lib → dist}/types/date.d.ts +1 -1
- package/{lib → dist}/types/date.js +6 -4
- package/dist/types/date.js.map +1 -0
- package/{lib → dist}/types/index.d.ts +11 -9
- package/dist/types/index.js +49 -0
- package/dist/types/index.js.map +1 -0
- package/{lib6 → dist}/types/model.d.ts +2 -1
- package/{lib6 → dist}/types/model.js +2 -2
- package/dist/types/model.js.map +1 -0
- package/dist/types/null.d.ts +12 -0
- package/{lib/types/boolean.js → dist/types/null.js} +12 -11
- package/dist/types/null.js.map +1 -0
- package/{lib6 → dist}/types/number.d.ts +1 -1
- package/{lib → dist}/types/number.js +6 -4
- package/dist/types/number.js.map +1 -0
- package/{lib → dist}/types/object.d.ts +1 -1
- package/{lib → dist}/types/object.js +7 -6
- package/dist/types/object.js.map +1 -0
- package/{lib → dist}/types/string.d.ts +1 -1
- package/{lib → dist}/types/string.js +3 -2
- package/dist/types/string.js.map +1 -0
- package/{lib6 → dist}/types/type.d.ts +7 -7
- package/{lib6 → dist}/types/type.js +1 -1
- package/dist/types/type.js.map +1 -0
- package/{lib → dist}/types/union.d.ts +1 -1
- package/{lib → dist}/types/union.js +6 -4
- package/dist/types/union.js.map +1 -0
- package/package.json +49 -32
- package/src/common-types.ts +123 -0
- package/src/connectors/connector.ts +70 -0
- package/src/connectors/crud.connector.ts +208 -0
- package/src/connectors/index.ts +8 -0
- package/src/connectors/kv.connector.ts +113 -0
- package/src/datasource.ts +37 -0
- package/src/decorators/index.ts +8 -0
- package/src/decorators/metadata.ts +84 -0
- package/src/decorators/model.decorator.ts +166 -0
- package/src/decorators/repository.decorator.ts +223 -0
- package/src/define-model-class.ts +90 -0
- package/src/define-repository-class.ts +170 -0
- package/src/errors/entity-not-found.error.ts +40 -0
- package/src/errors/index.ts +7 -0
- package/src/errors/invalid-relation.error.ts +39 -0
- package/src/index.ts +36 -0
- package/src/keys.ts +40 -0
- package/{index.d.ts → src/mixins/index.ts} +2 -2
- package/src/mixins/repository.mixin.ts +499 -0
- package/src/model.ts +539 -0
- package/src/relations/belongs-to/belongs-to.accessor.ts +74 -0
- package/src/relations/belongs-to/belongs-to.decorator.ts +81 -0
- package/src/relations/belongs-to/belongs-to.helpers.ts +78 -0
- package/src/relations/belongs-to/belongs-to.inclusion-resolver.ts +71 -0
- package/src/relations/belongs-to/belongs-to.repository.ts +55 -0
- package/src/relations/belongs-to/index.ts +9 -0
- package/src/relations/has-many/has-many-through.helpers.ts +361 -0
- package/src/relations/has-many/has-many-through.inclusion-resolver.ts +135 -0
- package/src/relations/has-many/has-many-through.repository-factory.ts +121 -0
- package/src/relations/has-many/has-many-through.repository.ts +318 -0
- package/src/relations/has-many/has-many.decorator.ts +38 -0
- package/src/relations/has-many/has-many.helpers.ts +100 -0
- package/src/relations/has-many/has-many.inclusion-resolver.ts +88 -0
- package/src/relations/has-many/has-many.repository-factory.ts +76 -0
- package/src/relations/has-many/has-many.repository.ts +118 -0
- package/src/relations/has-many/index.ts +11 -0
- package/src/relations/has-one/has-one.decorator.ts +40 -0
- package/src/relations/has-one/has-one.helpers.ts +84 -0
- package/src/relations/has-one/has-one.inclusion-resolver.ts +65 -0
- package/src/relations/has-one/has-one.repository-factory.ts +72 -0
- package/src/relations/has-one/has-one.repository.ts +127 -0
- package/src/relations/has-one/index.ts +8 -0
- package/src/relations/index.ts +11 -0
- package/src/relations/relation.decorator.ts +90 -0
- package/src/relations/relation.helpers.ts +373 -0
- package/src/relations/relation.types.ts +180 -0
- package/src/repositories/constraint-utils.ts +98 -0
- package/src/repositories/index.ts +10 -0
- package/src/repositories/kv.repository.bridge.ts +97 -0
- package/src/repositories/kv.repository.ts +87 -0
- package/src/repositories/legacy-juggler-bridge.ts +788 -0
- package/src/repositories/repository.ts +441 -0
- package/src/transaction.ts +39 -0
- package/src/type-resolver.ts +98 -0
- package/src/types/any.ts +38 -0
- package/src/types/array.ts +53 -0
- package/src/types/boolean.ts +35 -0
- package/src/types/buffer.ts +53 -0
- package/src/types/date.ts +61 -0
- package/src/types/index.ts +52 -0
- package/src/types/model.ts +24 -0
- package/src/types/null.ts +35 -0
- package/src/types/number.ts +42 -0
- package/src/types/object.ts +53 -0
- package/src/types/string.ts +42 -0
- package/src/types/type.ts +51 -0
- package/src/types/union.ts +55 -0
- package/api-docs/apple-touch-icon-114x114-precomposed.png +0 -0
- package/api-docs/apple-touch-icon-144x144-precomposed.png +0 -0
- package/api-docs/apple-touch-icon-57x57-precomposed.png +0 -0
- package/api-docs/apple-touch-icon-72x72-precomposed.png +0 -0
- package/api-docs/apple-touch-icon-precomposed.png +0 -0
- package/api-docs/apple-touch-icon.png +0 -0
- package/api-docs/css/bootstrap.min.css +0 -9
- package/api-docs/css/code-themes/arta.css +0 -158
- package/api-docs/css/code-themes/ascetic.css +0 -50
- package/api-docs/css/code-themes/brown_paper.css +0 -104
- package/api-docs/css/code-themes/brown_papersq.png +0 -0
- package/api-docs/css/code-themes/dark.css +0 -103
- package/api-docs/css/code-themes/default.css +0 -135
- package/api-docs/css/code-themes/far.css +0 -111
- package/api-docs/css/code-themes/github.css +0 -127
- package/api-docs/css/code-themes/googlecode.css +0 -144
- package/api-docs/css/code-themes/idea.css +0 -121
- package/api-docs/css/code-themes/ir_black.css +0 -104
- package/api-docs/css/code-themes/magula.css +0 -121
- package/api-docs/css/code-themes/monokai.css +0 -114
- package/api-docs/css/code-themes/pojoaque.css +0 -104
- package/api-docs/css/code-themes/pojoaque.jpg +0 -0
- package/api-docs/css/code-themes/rainbow.css +0 -114
- package/api-docs/css/code-themes/school_book.css +0 -111
- package/api-docs/css/code-themes/school_book.png +0 -0
- package/api-docs/css/code-themes/sl-theme.css +0 -45
- package/api-docs/css/code-themes/solarized_dark.css +0 -88
- package/api-docs/css/code-themes/solarized_light.css +0 -88
- package/api-docs/css/code-themes/sunburst.css +0 -158
- package/api-docs/css/code-themes/tomorrow-night-blue.css +0 -52
- package/api-docs/css/code-themes/tomorrow-night-bright.css +0 -51
- package/api-docs/css/code-themes/tomorrow-night-eighties.css +0 -51
- package/api-docs/css/code-themes/tomorrow-night.css +0 -52
- package/api-docs/css/code-themes/tomorrow.css +0 -49
- package/api-docs/css/code-themes/vs.css +0 -86
- package/api-docs/css/code-themes/xcode.css +0 -154
- package/api-docs/css/code-themes/zenburn.css +0 -115
- package/api-docs/css/main.css +0 -139
- package/api-docs/favicon.ico +0 -0
- package/api-docs/fonts/0ihfXUL2emPh0ROJezvraLO3LdcAZYWl9Si6vvxL-qU.woff +0 -0
- package/api-docs/fonts/OsJ2DjdpjqFRVUSto6IffLO3LdcAZYWl9Si6vvxL-qU.woff +0 -0
- package/api-docs/fonts/_aijTyevf54tkVDLy-dlnLO3LdcAZYWl9Si6vvxL-qU.woff +0 -0
- package/api-docs/index.html +0 -18017
- package/api-docs/js/main.js +0 -19
- package/api-docs/js/vendor/bootstrap.min.js +0 -6
- package/api-docs/js/vendor/jquery-1.10.1.min.js +0 -6
- package/api-docs/js/vendor/jquery.scrollTo-1.4.3.1.js +0 -218
- package/api-docs/js/vendor/modernizr-2.6.2-respond-1.1.0.min.js +0 -11
- package/index.js +0 -9
- package/lib/common-types.d.ts +0 -44
- package/lib/common-types.js.map +0 -1
- package/lib/connector.d.ts +0 -12
- package/lib/connector.js.map +0 -1
- package/lib/crud-connector.js.map +0 -1
- package/lib/datasource.d.ts +0 -11
- package/lib/datasource.js.map +0 -1
- package/lib/decorators/model.d.ts +0 -17
- package/lib/decorators/model.js +0 -55
- package/lib/decorators/model.js.map +0 -1
- package/lib/decorators/relation.d.ts +0 -65
- package/lib/decorators/relation.js +0 -126
- package/lib/decorators/relation.js.map +0 -1
- package/lib/decorators/repository.d.ts +0 -61
- package/lib/decorators/repository.js +0 -107
- package/lib/decorators/repository.js.map +0 -1
- package/lib/index.d.ts +0 -16
- package/lib/index.js +0 -20
- package/lib/index.js.map +0 -1
- package/lib/kv-connector.d.ts +0 -77
- package/lib/kv-connector.js +0 -7
- package/lib/kv-connector.js.map +0 -1
- package/lib/kv-repository.d.ts +0 -78
- package/lib/kv-repository.js +0 -7
- package/lib/kv-repository.js.map +0 -1
- package/lib/legacy-juggler-bridge.d.ts +0 -53
- package/lib/legacy-juggler-bridge.js +0 -142
- package/lib/legacy-juggler-bridge.js.map +0 -1
- package/lib/loopback-datasource-juggler.d.ts +0 -666
- package/lib/loopback-datasource-juggler.js +0 -8
- package/lib/loopback-datasource-juggler.js.map +0 -1
- package/lib/mixin.d.ts +0 -43
- package/lib/mixin.js +0 -34
- package/lib/mixin.js.map +0 -1
- package/lib/model.d.ts +0 -137
- package/lib/model.js +0 -182
- package/lib/model.js.map +0 -1
- package/lib/query.d.ts +0 -112
- package/lib/query.js +0 -25
- package/lib/query.js.map +0 -1
- package/lib/repository.d.ts +0 -172
- package/lib/repository.js +0 -127
- package/lib/repository.js.map +0 -1
- package/lib/types/any.js +0 -35
- package/lib/types/any.js.map +0 -1
- package/lib/types/array.d.ts +0 -14
- package/lib/types/array.js +0 -53
- package/lib/types/array.js.map +0 -1
- package/lib/types/boolean.js.map +0 -1
- package/lib/types/buffer.d.ts +0 -14
- package/lib/types/buffer.js.map +0 -1
- package/lib/types/date.js.map +0 -1
- package/lib/types/index.js +0 -33
- package/lib/types/index.js.map +0 -1
- package/lib/types/model.d.ts +0 -11
- package/lib/types/model.js +0 -25
- package/lib/types/model.js.map +0 -1
- package/lib/types/number.d.ts +0 -12
- package/lib/types/number.js.map +0 -1
- package/lib/types/object.js.map +0 -1
- package/lib/types/string.js.map +0 -1
- package/lib/types/type.d.ts +0 -38
- package/lib/types/type.js +0 -7
- package/lib/types/type.js.map +0 -1
- package/lib/types/union.js.map +0 -1
- package/lib6/common-types.d.ts +0 -44
- package/lib6/common-types.js +0 -7
- package/lib6/common-types.js.map +0 -1
- package/lib6/connector.d.ts +0 -12
- package/lib6/connector.js +0 -7
- package/lib6/connector.js.map +0 -1
- package/lib6/crud-connector.d.ts +0 -130
- package/lib6/crud-connector.js +0 -7
- package/lib6/crud-connector.js.map +0 -1
- package/lib6/datasource.d.ts +0 -11
- package/lib6/datasource.js.map +0 -1
- package/lib6/decorators/model.d.ts +0 -17
- package/lib6/decorators/model.js +0 -55
- package/lib6/decorators/model.js.map +0 -1
- package/lib6/decorators/relation.d.ts +0 -65
- package/lib6/decorators/relation.js +0 -126
- package/lib6/decorators/relation.js.map +0 -1
- package/lib6/decorators/repository.d.ts +0 -61
- package/lib6/decorators/repository.js +0 -117
- package/lib6/decorators/repository.js.map +0 -1
- package/lib6/index.d.ts +0 -16
- package/lib6/index.js +0 -20
- package/lib6/index.js.map +0 -1
- package/lib6/kv-connector.js +0 -7
- package/lib6/kv-connector.js.map +0 -1
- package/lib6/kv-repository.d.ts +0 -78
- package/lib6/kv-repository.js +0 -7
- package/lib6/kv-repository.js.map +0 -1
- package/lib6/legacy-juggler-bridge.d.ts +0 -53
- package/lib6/legacy-juggler-bridge.js +0 -158
- package/lib6/legacy-juggler-bridge.js.map +0 -1
- package/lib6/loopback-datasource-juggler.d.ts +0 -666
- package/lib6/loopback-datasource-juggler.js +0 -8
- package/lib6/loopback-datasource-juggler.js.map +0 -1
- package/lib6/mixin.d.ts +0 -43
- package/lib6/mixin.js +0 -34
- package/lib6/mixin.js.map +0 -1
- package/lib6/model.d.ts +0 -137
- package/lib6/model.js +0 -182
- package/lib6/model.js.map +0 -1
- package/lib6/query.d.ts +0 -112
- package/lib6/query.js +0 -25
- package/lib6/query.js.map +0 -1
- package/lib6/repository.d.ts +0 -172
- package/lib6/repository.js +0 -127
- package/lib6/repository.js.map +0 -1
- package/lib6/types/any.d.ts +0 -12
- package/lib6/types/any.js.map +0 -1
- package/lib6/types/array.js.map +0 -1
- package/lib6/types/boolean.d.ts +0 -12
- package/lib6/types/boolean.js.map +0 -1
- package/lib6/types/buffer.js +0 -57
- package/lib6/types/buffer.js.map +0 -1
- package/lib6/types/date.d.ts +0 -12
- package/lib6/types/date.js +0 -60
- package/lib6/types/date.js.map +0 -1
- package/lib6/types/index.d.ts +0 -30
- package/lib6/types/index.js +0 -33
- package/lib6/types/index.js.map +0 -1
- package/lib6/types/model.js.map +0 -1
- package/lib6/types/number.js +0 -40
- package/lib6/types/number.js.map +0 -1
- package/lib6/types/object.d.ts +0 -15
- package/lib6/types/object.js +0 -49
- package/lib6/types/object.js.map +0 -1
- package/lib6/types/string.d.ts +0 -12
- package/lib6/types/string.js +0 -40
- package/lib6/types/string.js.map +0 -1
- package/lib6/types/type.js.map +0 -1
- package/lib6/types/union.d.ts +0 -14
- package/lib6/types/union.js +0 -51
- package/lib6/types/union.js.map +0 -1
|
@@ -1,117 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// Copyright IBM Corp. 2017. All Rights Reserved.
|
|
3
|
-
// Node module: @loopback/repository
|
|
4
|
-
// This file is licensed under the MIT License.
|
|
5
|
-
// License text available at https://opensource.org/licenses/MIT
|
|
6
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
7
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
8
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
9
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
10
|
-
function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
|
|
11
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
12
|
-
});
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
const assert = require("assert");
|
|
16
|
-
const legacy_juggler_bridge_1 = require("../legacy-juggler-bridge");
|
|
17
|
-
const context_1 = require("@loopback/context");
|
|
18
|
-
/**
|
|
19
|
-
* Metadata for a repository
|
|
20
|
-
*/
|
|
21
|
-
class RepositoryMetadata {
|
|
22
|
-
/**
|
|
23
|
-
* Constructor for RepositoryMetadata
|
|
24
|
-
*
|
|
25
|
-
* @param model Name or class of the model. If the value is a string and
|
|
26
|
-
* `dataSource` is not present, it will treated as the name of a predefined
|
|
27
|
-
* repository
|
|
28
|
-
* @param dataSource Name or instance of the data source
|
|
29
|
-
*
|
|
30
|
-
* For example:
|
|
31
|
-
*
|
|
32
|
-
* - new RepositoryMetadata(repoName);
|
|
33
|
-
* - new RepositoryMetadata(modelName, dataSourceName);
|
|
34
|
-
* - new RepositoryMetadata(modelClass, dataSourceInstance);
|
|
35
|
-
* - new RepositoryMetadata(modelName, dataSourceInstance);
|
|
36
|
-
* - new RepositoryMetadata(modelClass, dataSourceName);
|
|
37
|
-
*/
|
|
38
|
-
constructor(modelOrRepo, dataSource) {
|
|
39
|
-
this.name = typeof modelOrRepo === 'string' && dataSource === undefined
|
|
40
|
-
? modelOrRepo
|
|
41
|
-
: undefined;
|
|
42
|
-
this.modelName = typeof modelOrRepo === 'string' && dataSource != null
|
|
43
|
-
? modelOrRepo
|
|
44
|
-
: undefined;
|
|
45
|
-
this.modelClass = typeof modelOrRepo === 'function'
|
|
46
|
-
? modelOrRepo
|
|
47
|
-
: undefined;
|
|
48
|
-
this.dataSourceName = typeof dataSource === 'string'
|
|
49
|
-
? dataSource
|
|
50
|
-
: undefined;
|
|
51
|
-
this.dataSource = typeof dataSource === 'object' ? dataSource : undefined;
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
exports.RepositoryMetadata = RepositoryMetadata;
|
|
55
|
-
/**
|
|
56
|
-
* Decorator for model definitions
|
|
57
|
-
* @param model Name of the repo or name/class of the model
|
|
58
|
-
* @param dataSource Name or instance of the data source
|
|
59
|
-
* @returns {(target:AnyType)}
|
|
60
|
-
*
|
|
61
|
-
* For example:
|
|
62
|
-
*
|
|
63
|
-
* - @repository('myCustomerRepo')
|
|
64
|
-
* - @repository('Customer', 'mysqlDataSource')
|
|
65
|
-
* - @repository(Customer, mysqlDataSource)
|
|
66
|
-
* - @repository('Customer', mysqlDataSource)
|
|
67
|
-
* - @repository(Customer, 'mysqlDataSource')
|
|
68
|
-
*/
|
|
69
|
-
function repository(model, dataSource) {
|
|
70
|
-
const meta = new RepositoryMetadata(model, dataSource);
|
|
71
|
-
return function (target, key, descriptor) {
|
|
72
|
-
if (key || typeof descriptor === 'number') {
|
|
73
|
-
if (meta.name) {
|
|
74
|
-
// Make it shortcut to `@inject('repositories.MyRepo')`
|
|
75
|
-
// Please note key is undefined for constructor. If strictNullChecks
|
|
76
|
-
// is true, the compiler will complain as reflect-metadata won't
|
|
77
|
-
// accept undefined or null for key. Use ! to fool the compiler.
|
|
78
|
-
context_1.inject('repositories.' + meta.name, meta)(target, key, descriptor);
|
|
79
|
-
}
|
|
80
|
-
else {
|
|
81
|
-
// Use repository-factory to create a repository from model + dataSource
|
|
82
|
-
// inject('repository-factory', meta)(target, key!, descriptor);
|
|
83
|
-
context_1.inject('', meta, resolve)(target, key, descriptor);
|
|
84
|
-
// throw new Error('@repository(model, dataSource) is not implemented');
|
|
85
|
-
}
|
|
86
|
-
return;
|
|
87
|
-
}
|
|
88
|
-
// Mixin repository into the class
|
|
89
|
-
throw new Error('Class level @repository is not implemented');
|
|
90
|
-
};
|
|
91
|
-
}
|
|
92
|
-
exports.repository = repository;
|
|
93
|
-
/**
|
|
94
|
-
* Resolve the @repository injection
|
|
95
|
-
* @param ctx Context
|
|
96
|
-
* @param injection Injection metadata
|
|
97
|
-
*/
|
|
98
|
-
function resolve(ctx, injection) {
|
|
99
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
100
|
-
const meta = injection.metadata;
|
|
101
|
-
let modelClass = meta.modelClass;
|
|
102
|
-
if (meta.modelName) {
|
|
103
|
-
modelClass = (yield ctx.get('models.' + meta.modelName));
|
|
104
|
-
}
|
|
105
|
-
if (!modelClass) {
|
|
106
|
-
throw new Error('Invalid repository config: ' +
|
|
107
|
-
' neither modelClass nor modelName was specified.');
|
|
108
|
-
}
|
|
109
|
-
let dataSource = meta.dataSource;
|
|
110
|
-
if (meta.dataSourceName) {
|
|
111
|
-
dataSource = yield ctx.get('datasources.' + meta.dataSourceName);
|
|
112
|
-
}
|
|
113
|
-
assert(dataSource instanceof legacy_juggler_bridge_1.DataSourceConstructor, 'DataSource must be provided');
|
|
114
|
-
return new legacy_juggler_bridge_1.DefaultCrudRepository(modelClass, dataSource);
|
|
115
|
-
});
|
|
116
|
-
}
|
|
117
|
-
//# sourceMappingURL=repository.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"repository.js","sourceRoot":"","sources":["../../src/decorators/repository.ts"],"names":[],"mappings":"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"}
|
package/lib6/index.d.ts
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
export * from './common-types';
|
|
2
|
-
export * from './decorators/model';
|
|
3
|
-
export * from './decorators/repository';
|
|
4
|
-
export * from './decorators/relation';
|
|
5
|
-
export * from './types';
|
|
6
|
-
export * from './model';
|
|
7
|
-
export * from './query';
|
|
8
|
-
export * from './datasource';
|
|
9
|
-
export * from './mixin';
|
|
10
|
-
export * from './repository';
|
|
11
|
-
export * from './connector';
|
|
12
|
-
export * from './crud-connector';
|
|
13
|
-
export * from './kv-connector';
|
|
14
|
-
export * from './kv-repository';
|
|
15
|
-
export * from './legacy-juggler-bridge';
|
|
16
|
-
export * from './loopback-datasource-juggler';
|
package/lib6/index.js
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// Copyright IBM Corp. 2017. All Rights Reserved.
|
|
3
|
-
// Node module: @loopback/repository
|
|
4
|
-
// This file is licensed under the MIT License.
|
|
5
|
-
// License text available at https://opensource.org/licenses/MIT
|
|
6
|
-
function __export(m) {
|
|
7
|
-
for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];
|
|
8
|
-
}
|
|
9
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
__export(require("./decorators/model"));
|
|
11
|
-
__export(require("./decorators/repository"));
|
|
12
|
-
__export(require("./decorators/relation"));
|
|
13
|
-
__export(require("./types"));
|
|
14
|
-
__export(require("./model"));
|
|
15
|
-
__export(require("./query"));
|
|
16
|
-
__export(require("./mixin"));
|
|
17
|
-
__export(require("./repository"));
|
|
18
|
-
__export(require("./legacy-juggler-bridge"));
|
|
19
|
-
__export(require("./loopback-datasource-juggler"));
|
|
20
|
-
//# sourceMappingURL=index.js.map
|
package/lib6/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,iDAAiD;AACjD,oCAAoC;AACpC,+CAA+C;AAC/C,gEAAgE;;;;;AAGhE,wCAAmC;AACnC,6CAAwC;AACxC,2CAAsC;AACtC,6BAAwB;AACxB,6BAAwB;AACxB,6BAAwB;AAExB,6BAAwB;AACxB,kCAA6B;AAK7B,6CAAwC;AACxC,mDAA8C"}
|
package/lib6/kv-connector.js
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// Copyright IBM Corp. 2017. All Rights Reserved.
|
|
3
|
-
// Node module: @loopback/repository
|
|
4
|
-
// This file is licensed under the MIT License.
|
|
5
|
-
// License text available at https://opensource.org/licenses/MIT
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
//# sourceMappingURL=kv-connector.js.map
|
package/lib6/kv-connector.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"kv-connector.js","sourceRoot":"","sources":["../src/kv-connector.ts"],"names":[],"mappings":";AAAA,iDAAiD;AACjD,oCAAoC;AACpC,+CAA+C;AAC/C,gEAAgE"}
|
package/lib6/kv-repository.d.ts
DELETED
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
import { Repository } from './repository';
|
|
2
|
-
import { Options } from './common-types';
|
|
3
|
-
import { Model } from './model';
|
|
4
|
-
import { DataObject } from './common-types';
|
|
5
|
-
import { Filter } from './query';
|
|
6
|
-
/**
|
|
7
|
-
* Key/Value operations for connector implementations
|
|
8
|
-
*/
|
|
9
|
-
export interface KVRepository<T extends Model> extends Repository<T> {
|
|
10
|
-
/**
|
|
11
|
-
* Delete an entry by key
|
|
12
|
-
*
|
|
13
|
-
* @param key Key for the entry
|
|
14
|
-
* @param options Options for the operation
|
|
15
|
-
* @returns Promise<true> if an entry is deleted for the key, otherwise
|
|
16
|
-
* Promise<false>
|
|
17
|
-
*/
|
|
18
|
-
delete(key: string, options?: Options): Promise<boolean>;
|
|
19
|
-
/**
|
|
20
|
-
* Delete all entries
|
|
21
|
-
*
|
|
22
|
-
* @param key Key for the entry
|
|
23
|
-
* @param options Options for the operation
|
|
24
|
-
* @returns A promise of the number of entries deleted
|
|
25
|
-
*/
|
|
26
|
-
deleteAll(options?: Options): Promise<number>;
|
|
27
|
-
/**
|
|
28
|
-
* Get an entry by key
|
|
29
|
-
*
|
|
30
|
-
* @param key Key for the entry
|
|
31
|
-
* @param options Options for the operation
|
|
32
|
-
* @returns A promise of the entry
|
|
33
|
-
*/
|
|
34
|
-
get(key: string, options?: Options): Promise<T>;
|
|
35
|
-
/**
|
|
36
|
-
* Set an entry with key/value
|
|
37
|
-
*
|
|
38
|
-
* @param key Key for the entry
|
|
39
|
-
* @param value Value for the entry
|
|
40
|
-
* @param options Options for the operation
|
|
41
|
-
* @returns Promise<true> if an entry is set for the key, otherwise
|
|
42
|
-
* Promise<false>
|
|
43
|
-
*/
|
|
44
|
-
set(key: string, value: DataObject<T>, options?: Options): Promise<boolean>;
|
|
45
|
-
/**
|
|
46
|
-
* Set up ttl for an entry by key
|
|
47
|
-
*
|
|
48
|
-
* @param key Key for the entry
|
|
49
|
-
* @param options Options for the operation
|
|
50
|
-
* @returns Promise<true> if an entry is set for the key, otherwise
|
|
51
|
-
* Promise<false>
|
|
52
|
-
*/
|
|
53
|
-
expire(key: string, ttl: number, options?: Options): Promise<boolean>;
|
|
54
|
-
/**
|
|
55
|
-
* Get ttl for an entry by key
|
|
56
|
-
*
|
|
57
|
-
* @param key Key for the entry
|
|
58
|
-
* @param options Options for the operation
|
|
59
|
-
* @returns A promise of the TTL value
|
|
60
|
-
*/
|
|
61
|
-
ttl?(key: string, ttl: number, options?: Options): Promise<number>;
|
|
62
|
-
/**
|
|
63
|
-
* Fetch all keys
|
|
64
|
-
*
|
|
65
|
-
* @param key Key for the entry
|
|
66
|
-
* @param options Options for the operation
|
|
67
|
-
* @returns A promise of an array of keys for all entries
|
|
68
|
-
*/
|
|
69
|
-
keys?(options?: Options): Promise<string[]>;
|
|
70
|
-
/**
|
|
71
|
-
* Get an Iterator for matching keys
|
|
72
|
-
*
|
|
73
|
-
* @param filter Filter for keys
|
|
74
|
-
* @param options Options for the operation
|
|
75
|
-
* @returns A promise of an iterator of entries
|
|
76
|
-
*/
|
|
77
|
-
iterateKeys?(filter?: Filter, options?: Options): Promise<Iterator<T>>;
|
|
78
|
-
}
|
package/lib6/kv-repository.js
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// Copyright IBM Corp. 2017. All Rights Reserved.
|
|
3
|
-
// Node module: @loopback/repository
|
|
4
|
-
// This file is licensed under the MIT License.
|
|
5
|
-
// License text available at https://opensource.org/licenses/MIT
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
//# sourceMappingURL=kv-repository.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"kv-repository.js","sourceRoot":"","sources":["../src/kv-repository.ts"],"names":[],"mappings":";AAAA,iDAAiD;AACjD,oCAAoC;AACpC,+CAA+C;AAC/C,gEAAgE"}
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
export declare const jugglerModule: any;
|
|
2
|
-
import { DataObject, Options } from './common-types';
|
|
3
|
-
import { Entity } from './model';
|
|
4
|
-
import { Filter, Where } from './query';
|
|
5
|
-
import { EntityCrudRepository } from './repository';
|
|
6
|
-
export * from './loopback-datasource-juggler';
|
|
7
|
-
import { juggler } from './loopback-datasource-juggler';
|
|
8
|
-
declare type DataSourceType = juggler.DataSource;
|
|
9
|
-
export { DataSourceType };
|
|
10
|
-
export declare const DataSourceConstructor: typeof juggler.DataSource;
|
|
11
|
-
export declare const ModelBaseConstructor: typeof juggler.ModelBase;
|
|
12
|
-
/**
|
|
13
|
-
* This is a bridge to the legacy DAO class. The function mixes DAO methods
|
|
14
|
-
* into a model class and attach it to a given data source
|
|
15
|
-
* @param modelClass {} Model class
|
|
16
|
-
* @param ds {DataSource} Data source
|
|
17
|
-
* @returns {} The new model class with DAO (CRUD) operations
|
|
18
|
-
*/
|
|
19
|
-
export declare function bindModel<T extends typeof juggler.ModelBase>(modelClass: T, ds: juggler.DataSource): T;
|
|
20
|
-
/**
|
|
21
|
-
* Default implementation of CRUD repository using legacy juggler model
|
|
22
|
-
* and data source
|
|
23
|
-
*/
|
|
24
|
-
export declare class DefaultCrudRepository<T extends Entity, ID> implements EntityCrudRepository<T, ID> {
|
|
25
|
-
entityClass: typeof Entity & {
|
|
26
|
-
prototype: T;
|
|
27
|
-
};
|
|
28
|
-
modelClass: typeof juggler.PersistedModel;
|
|
29
|
-
/**
|
|
30
|
-
* Constructor of DefaultCrudRepository
|
|
31
|
-
* @param modelClass Legacy model class
|
|
32
|
-
* @param dataSource Legacy data source
|
|
33
|
-
*/
|
|
34
|
-
constructor(entityClass: typeof Entity & {
|
|
35
|
-
prototype: T;
|
|
36
|
-
}, dataSource: juggler.DataSource);
|
|
37
|
-
create(entity: Partial<T>, options?: Options): Promise<T>;
|
|
38
|
-
createAll(entities: Partial<T>[], options?: Options): Promise<T[]>;
|
|
39
|
-
save(entity: T, options?: Options): Promise<T | null>;
|
|
40
|
-
find(filter?: Filter, options?: Options): Promise<T[]>;
|
|
41
|
-
findById(id: ID, filter?: Filter, options?: Options): Promise<T>;
|
|
42
|
-
update(entity: T, options?: Options): Promise<boolean>;
|
|
43
|
-
delete(entity: T, options?: Options): Promise<boolean>;
|
|
44
|
-
updateAll(data: Partial<T>, where?: Where, options?: Options): Promise<number>;
|
|
45
|
-
updateById(id: ID, data: Partial<T>, options?: Options): Promise<boolean>;
|
|
46
|
-
replaceById(id: ID, data: Partial<T>, options?: Options): Promise<boolean>;
|
|
47
|
-
deleteAll(where?: Where, options?: Options): Promise<number>;
|
|
48
|
-
deleteById(id: ID, options?: Options): Promise<boolean>;
|
|
49
|
-
count(where?: Where, options?: Options): Promise<number>;
|
|
50
|
-
exists(id: ID, options?: Options): Promise<boolean>;
|
|
51
|
-
protected toEntity(model: DataObject<T>): T;
|
|
52
|
-
protected toEntities(models: DataObject<T>[]): T[];
|
|
53
|
-
}
|
|
@@ -1,158 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// Copyright IBM Corp. 2017. All Rights Reserved.
|
|
3
|
-
// Node module: @loopback/repository
|
|
4
|
-
// This file is licensed under the MIT License.
|
|
5
|
-
// License text available at https://opensource.org/licenses/MIT
|
|
6
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
7
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
8
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
9
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
10
|
-
function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
|
|
11
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
12
|
-
});
|
|
13
|
-
};
|
|
14
|
-
function __export(m) {
|
|
15
|
-
for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];
|
|
16
|
-
}
|
|
17
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
exports.jugglerModule = require('loopback-datasource-juggler');
|
|
19
|
-
const assert = require("assert");
|
|
20
|
-
const context_1 = require("@loopback/context");
|
|
21
|
-
__export(require("./loopback-datasource-juggler"));
|
|
22
|
-
/* tslint:disable-next-line:variable-name */
|
|
23
|
-
exports.DataSourceConstructor = exports.jugglerModule.DataSource;
|
|
24
|
-
/* tslint:disable-next-line:variable-name */
|
|
25
|
-
exports.ModelBaseConstructor = exports.jugglerModule.ModelBaseClass;
|
|
26
|
-
/**
|
|
27
|
-
* This is a bridge to the legacy DAO class. The function mixes DAO methods
|
|
28
|
-
* into a model class and attach it to a given data source
|
|
29
|
-
* @param modelClass {} Model class
|
|
30
|
-
* @param ds {DataSource} Data source
|
|
31
|
-
* @returns {} The new model class with DAO (CRUD) operations
|
|
32
|
-
*/
|
|
33
|
-
function bindModel(modelClass, ds) {
|
|
34
|
-
const boundModelClass = class extends modelClass {
|
|
35
|
-
};
|
|
36
|
-
boundModelClass.attachTo(ds);
|
|
37
|
-
return boundModelClass;
|
|
38
|
-
}
|
|
39
|
-
exports.bindModel = bindModel;
|
|
40
|
-
/**
|
|
41
|
-
* Ensure the value is a promise
|
|
42
|
-
* @param p Promise or void
|
|
43
|
-
*/
|
|
44
|
-
/* tslint:disable-next-line:no-any */
|
|
45
|
-
function ensurePromise(p) {
|
|
46
|
-
if (p && context_1.isPromise(p)) {
|
|
47
|
-
return p;
|
|
48
|
-
}
|
|
49
|
-
else {
|
|
50
|
-
return Promise.reject(new Error('The value should be a Promise: ' + p));
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* Default implementation of CRUD repository using legacy juggler model
|
|
55
|
-
* and data source
|
|
56
|
-
*/
|
|
57
|
-
class DefaultCrudRepository {
|
|
58
|
-
/**
|
|
59
|
-
* Constructor of DefaultCrudRepository
|
|
60
|
-
* @param modelClass Legacy model class
|
|
61
|
-
* @param dataSource Legacy data source
|
|
62
|
-
*/
|
|
63
|
-
constructor(
|
|
64
|
-
// entityClass should have type "typeof T", but that's not supported by TSC
|
|
65
|
-
entityClass, dataSource) {
|
|
66
|
-
this.entityClass = entityClass;
|
|
67
|
-
const definition = entityClass.definition;
|
|
68
|
-
assert(!!definition, `Entity ${entityClass.name} must have valid model definition.`);
|
|
69
|
-
assert(definition.idProperties().length > 0, `Entity ${entityClass.name} must have at least one id/pk property.`);
|
|
70
|
-
// Create an internal legacy Model attached to the datasource
|
|
71
|
-
// We need to convert property definitions from PropertyDefinition
|
|
72
|
-
// to plain data object because of a juggler limitation
|
|
73
|
-
const properties = {};
|
|
74
|
-
for (const p in definition.properties) {
|
|
75
|
-
properties[p] = Object.assign({}, definition.properties[p]);
|
|
76
|
-
}
|
|
77
|
-
this.modelClass = dataSource.createModel(definition.name, properties, definition.settings);
|
|
78
|
-
this.modelClass.attachTo(dataSource);
|
|
79
|
-
}
|
|
80
|
-
create(entity, options) {
|
|
81
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
82
|
-
const model = yield ensurePromise(this.modelClass.create(entity, options));
|
|
83
|
-
return this.toEntity(model);
|
|
84
|
-
});
|
|
85
|
-
}
|
|
86
|
-
createAll(entities, options) {
|
|
87
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
88
|
-
const models = yield ensurePromise(this.modelClass.create(entities, options));
|
|
89
|
-
return this.toEntities(models);
|
|
90
|
-
});
|
|
91
|
-
}
|
|
92
|
-
save(entity, options) {
|
|
93
|
-
const idName = this.modelClass.definition.idName();
|
|
94
|
-
let id;
|
|
95
|
-
if (typeof entity.getId === 'function') {
|
|
96
|
-
id = entity.getId();
|
|
97
|
-
}
|
|
98
|
-
else {
|
|
99
|
-
id = entity[idName];
|
|
100
|
-
}
|
|
101
|
-
if (id == null) {
|
|
102
|
-
return this.create(entity, options);
|
|
103
|
-
}
|
|
104
|
-
else {
|
|
105
|
-
return this.replaceById(id, entity, options).then(result => (result ? this.toEntity(entity) : null));
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
find(filter, options) {
|
|
109
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
110
|
-
const models = yield ensurePromise(this.modelClass.find(filter, options));
|
|
111
|
-
return this.toEntities(models);
|
|
112
|
-
});
|
|
113
|
-
}
|
|
114
|
-
findById(id, filter, options) {
|
|
115
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
116
|
-
const model = yield ensurePromise(this.modelClass.findById(id, filter, options));
|
|
117
|
-
return this.toEntity(model);
|
|
118
|
-
});
|
|
119
|
-
}
|
|
120
|
-
update(entity, options) {
|
|
121
|
-
return this.updateById(entity.getId(), entity, options);
|
|
122
|
-
}
|
|
123
|
-
delete(entity, options) {
|
|
124
|
-
return this.deleteById(entity.getId(), options);
|
|
125
|
-
}
|
|
126
|
-
updateAll(data, where, options) {
|
|
127
|
-
return ensurePromise(this.modelClass.updateAll(where, data, options)).then(result => result.count);
|
|
128
|
-
}
|
|
129
|
-
updateById(id, data, options) {
|
|
130
|
-
const idProp = this.modelClass.definition.idName();
|
|
131
|
-
const where = {};
|
|
132
|
-
where[idProp] = id;
|
|
133
|
-
return this.updateAll(data, where, options).then(count => count > 0);
|
|
134
|
-
}
|
|
135
|
-
replaceById(id, data, options) {
|
|
136
|
-
return ensurePromise(this.modelClass.replaceById(id, data, options)).then(result => !!result);
|
|
137
|
-
}
|
|
138
|
-
deleteAll(where, options) {
|
|
139
|
-
return ensurePromise(this.modelClass.deleteAll(where, options)).then(result => result.count);
|
|
140
|
-
}
|
|
141
|
-
deleteById(id, options) {
|
|
142
|
-
return ensurePromise(this.modelClass.deleteById(id, options)).then(result => result.count > 0);
|
|
143
|
-
}
|
|
144
|
-
count(where, options) {
|
|
145
|
-
return ensurePromise(this.modelClass.count(where, options));
|
|
146
|
-
}
|
|
147
|
-
exists(id, options) {
|
|
148
|
-
return ensurePromise(this.modelClass.exists(id, options));
|
|
149
|
-
}
|
|
150
|
-
toEntity(model) {
|
|
151
|
-
return new this.entityClass(model.toObject());
|
|
152
|
-
}
|
|
153
|
-
toEntities(models) {
|
|
154
|
-
return models.map(m => this.toEntity(m));
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
-
exports.DefaultCrudRepository = DefaultCrudRepository;
|
|
158
|
-
//# sourceMappingURL=legacy-juggler-bridge.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"legacy-juggler-bridge.js","sourceRoot":"","sources":["../src/legacy-juggler-bridge.ts"],"names":[],"mappings":"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"}
|