@loopback/repository 4.0.0-alpha.6 → 4.0.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.
Files changed (457) hide show
  1. package/LICENSE +25 -0
  2. package/README.md +94 -372
  3. package/dist/common-types.d.ts +96 -0
  4. package/dist/common-types.js +24 -0
  5. package/dist/common-types.js.map +1 -0
  6. package/dist/connectors/connector.d.ts +48 -0
  7. package/{lib → dist/connectors}/connector.js +1 -1
  8. package/dist/connectors/connector.js.map +1 -0
  9. package/{lib/crud-connector.d.ts → dist/connectors/crud.connector.d.ts} +51 -51
  10. package/{lib/common-types.js → dist/connectors/crud.connector.js} +2 -2
  11. package/dist/connectors/crud.connector.js.map +1 -0
  12. package/dist/connectors/index.d.ts +3 -0
  13. package/dist/connectors/index.js +11 -0
  14. package/dist/connectors/index.js.map +1 -0
  15. package/{lib6/kv-connector.d.ts → dist/connectors/kv.connector.d.ts} +28 -28
  16. package/{lib/datasource.js → dist/connectors/kv.connector.js} +2 -2
  17. package/dist/connectors/kv.connector.js.map +1 -0
  18. package/dist/datasource.d.ts +27 -0
  19. package/{lib6 → dist}/datasource.js +1 -1
  20. package/dist/datasource.js.map +1 -0
  21. package/dist/decorators/index.d.ts +3 -0
  22. package/dist/decorators/index.js +11 -0
  23. package/dist/decorators/index.js.map +1 -0
  24. package/dist/decorators/metadata.d.ts +12 -0
  25. package/dist/decorators/metadata.js +51 -0
  26. package/dist/decorators/metadata.js.map +1 -0
  27. package/dist/decorators/model.decorator.d.ts +40 -0
  28. package/dist/decorators/model.decorator.js +112 -0
  29. package/dist/decorators/model.decorator.js.map +1 -0
  30. package/dist/decorators/repository.decorator.d.ts +106 -0
  31. package/dist/decorators/repository.decorator.js +114 -0
  32. package/dist/decorators/repository.decorator.js.map +1 -0
  33. package/dist/define-model-class.d.ts +55 -0
  34. package/dist/define-model-class.js +57 -0
  35. package/dist/define-model-class.js.map +1 -0
  36. package/dist/define-repository-class.d.ts +119 -0
  37. package/dist/define-repository-class.js +98 -0
  38. package/dist/define-repository-class.js.map +1 -0
  39. package/dist/errors/entity-not-found.error.d.ts +8 -0
  40. package/dist/errors/entity-not-found.error.js +28 -0
  41. package/dist/errors/entity-not-found.error.js.map +1 -0
  42. package/dist/errors/index.d.ts +2 -0
  43. package/dist/errors/index.js +10 -0
  44. package/dist/errors/index.js.map +1 -0
  45. package/dist/errors/invalid-relation.error.d.ts +10 -0
  46. package/dist/errors/invalid-relation.error.js +28 -0
  47. package/dist/errors/invalid-relation.error.js.map +1 -0
  48. package/dist/index.d.ts +30 -0
  49. package/dist/index.js +39 -0
  50. package/dist/index.js.map +1 -0
  51. package/dist/keys.d.ts +34 -0
  52. package/dist/keys.js +44 -0
  53. package/dist/keys.js.map +1 -0
  54. package/dist/mixins/index.d.ts +1 -0
  55. package/dist/mixins/index.js +9 -0
  56. package/dist/mixins/index.js.map +1 -0
  57. package/dist/mixins/repository.mixin.d.ts +377 -0
  58. package/dist/mixins/repository.mixin.js +405 -0
  59. package/dist/mixins/repository.mixin.js.map +1 -0
  60. package/dist/model.d.ts +232 -0
  61. package/dist/model.js +367 -0
  62. package/dist/model.js.map +1 -0
  63. package/dist/relations/belongs-to/belongs-to.accessor.d.ts +17 -0
  64. package/dist/relations/belongs-to/belongs-to.accessor.js +40 -0
  65. package/dist/relations/belongs-to/belongs-to.accessor.js.map +1 -0
  66. package/dist/relations/belongs-to/belongs-to.decorator.d.ts +11 -0
  67. package/dist/relations/belongs-to/belongs-to.decorator.js +64 -0
  68. package/dist/relations/belongs-to/belongs-to.decorator.js.map +1 -0
  69. package/dist/relations/belongs-to/belongs-to.helpers.d.ts +17 -0
  70. package/dist/relations/belongs-to/belongs-to.helpers.js +63 -0
  71. package/dist/relations/belongs-to/belongs-to.helpers.js.map +1 -0
  72. package/dist/relations/belongs-to/belongs-to.inclusion-resolver.d.ts +14 -0
  73. package/dist/relations/belongs-to/belongs-to.inclusion-resolver.js +36 -0
  74. package/dist/relations/belongs-to/belongs-to.inclusion-resolver.js.map +1 -0
  75. package/dist/relations/belongs-to/belongs-to.repository.d.ts +28 -0
  76. package/dist/relations/belongs-to/belongs-to.repository.js +33 -0
  77. package/dist/relations/belongs-to/belongs-to.repository.js.map +1 -0
  78. package/dist/relations/belongs-to/index.d.ts +4 -0
  79. package/dist/relations/belongs-to/index.js +12 -0
  80. package/dist/relations/belongs-to/index.js.map +1 -0
  81. package/dist/relations/has-many/has-many-through.helpers.d.ts +182 -0
  82. package/dist/relations/has-many/has-many-through.helpers.js +282 -0
  83. package/dist/relations/has-many/has-many-through.helpers.js.map +1 -0
  84. package/dist/relations/has-many/has-many-through.inclusion-resolver.d.ts +16 -0
  85. package/dist/relations/has-many/has-many-through.inclusion-resolver.js +78 -0
  86. package/dist/relations/has-many/has-many-through.inclusion-resolver.js.map +1 -0
  87. package/dist/relations/has-many/has-many-through.repository-factory.d.ts +17 -0
  88. package/dist/relations/has-many/has-many-through.repository-factory.js +37 -0
  89. package/dist/relations/has-many/has-many-through.repository-factory.js.map +1 -0
  90. package/dist/relations/has-many/has-many-through.repository.d.ts +114 -0
  91. package/dist/relations/has-many/has-many-through.repository.js +103 -0
  92. package/dist/relations/has-many/has-many-through.repository.js.map +1 -0
  93. package/dist/relations/has-many/has-many.decorator.d.ts +11 -0
  94. package/dist/relations/has-many/has-many.decorator.js +36 -0
  95. package/dist/relations/has-many/has-many.decorator.js.map +1 -0
  96. package/dist/relations/has-many/has-many.helpers.d.ts +26 -0
  97. package/dist/relations/has-many/has-many.helpers.js +78 -0
  98. package/dist/relations/has-many/has-many.helpers.js.map +1 -0
  99. package/dist/relations/has-many/has-many.inclusion-resolver.d.ts +14 -0
  100. package/dist/relations/has-many/has-many.inclusion-resolver.js +45 -0
  101. package/dist/relations/has-many/has-many.inclusion-resolver.js.map +1 -0
  102. package/dist/relations/has-many/has-many.repository-factory.d.ts +28 -0
  103. package/dist/relations/has-many/has-many.repository-factory.js +39 -0
  104. package/dist/relations/has-many/has-many.repository-factory.js.map +1 -0
  105. package/dist/relations/has-many/has-many.repository.d.ts +54 -0
  106. package/dist/relations/has-many/has-many.repository.js +38 -0
  107. package/dist/relations/has-many/has-many.repository.js.map +1 -0
  108. package/dist/relations/has-many/index.d.ts +6 -0
  109. package/dist/relations/has-many/index.js +14 -0
  110. package/dist/relations/has-many/index.js.map +1 -0
  111. package/dist/relations/has-one/has-one.decorator.d.ts +3 -0
  112. package/dist/relations/has-one/has-one.decorator.js +37 -0
  113. package/dist/relations/has-one/has-one.decorator.js.map +1 -0
  114. package/dist/relations/has-one/has-one.helpers.d.ts +17 -0
  115. package/dist/relations/has-one/has-one.helpers.js +64 -0
  116. package/dist/relations/has-one/has-one.helpers.js.map +1 -0
  117. package/dist/relations/has-one/has-one.inclusion-resolver.d.ts +14 -0
  118. package/dist/relations/has-one/has-one.inclusion-resolver.js +35 -0
  119. package/dist/relations/has-one/has-one.inclusion-resolver.js.map +1 -0
  120. package/dist/relations/has-one/has-one.repository-factory.d.ts +28 -0
  121. package/dist/relations/has-one/has-one.repository-factory.js +39 -0
  122. package/dist/relations/has-one/has-one.repository-factory.js.map +1 -0
  123. package/dist/relations/has-one/has-one.repository.d.ts +53 -0
  124. package/dist/relations/has-one/has-one.repository.js +45 -0
  125. package/dist/relations/has-one/has-one.repository.js.map +1 -0
  126. package/dist/relations/has-one/index.d.ts +3 -0
  127. package/dist/relations/has-one/index.js +11 -0
  128. package/dist/relations/has-one/index.js.map +1 -0
  129. package/dist/relations/index.d.ts +6 -0
  130. package/dist/relations/index.js +14 -0
  131. package/dist/relations/index.js.map +1 -0
  132. package/dist/relations/relation.decorator.d.ts +39 -0
  133. package/dist/relations/relation.decorator.js +88 -0
  134. package/dist/relations/relation.decorator.js.map +1 -0
  135. package/dist/relations/relation.helpers.d.ts +105 -0
  136. package/dist/relations/relation.helpers.js +298 -0
  137. package/dist/relations/relation.helpers.js.map +1 -0
  138. package/dist/relations/relation.types.d.ts +142 -0
  139. package/dist/relations/relation.types.js +21 -0
  140. package/dist/relations/relation.types.js.map +1 -0
  141. package/dist/repositories/constraint-utils.d.ts +49 -0
  142. package/dist/repositories/constraint-utils.js +87 -0
  143. package/dist/repositories/constraint-utils.js.map +1 -0
  144. package/dist/repositories/index.d.ts +5 -0
  145. package/dist/repositories/index.js +13 -0
  146. package/dist/repositories/index.js.map +1 -0
  147. package/dist/repositories/kv.repository.bridge.d.ts +30 -0
  148. package/dist/repositories/kv.repository.bridge.js +76 -0
  149. package/dist/repositories/kv.repository.bridge.js.map +1 -0
  150. package/dist/repositories/kv.repository.d.ts +74 -0
  151. package/{lib/crud-connector.js → dist/repositories/kv.repository.js} +2 -2
  152. package/dist/repositories/kv.repository.js.map +1 -0
  153. package/dist/repositories/legacy-juggler-bridge.d.ts +305 -0
  154. package/dist/repositories/legacy-juggler-bridge.js +452 -0
  155. package/dist/repositories/legacy-juggler-bridge.js.map +1 -0
  156. package/dist/repositories/repository.d.ts +223 -0
  157. package/dist/repositories/repository.js +157 -0
  158. package/dist/repositories/repository.js.map +1 -0
  159. package/dist/transaction.d.ts +30 -0
  160. package/dist/transaction.js +18 -0
  161. package/dist/transaction.js.map +1 -0
  162. package/dist/type-resolver.d.ts +42 -0
  163. package/dist/type-resolver.js +61 -0
  164. package/dist/type-resolver.js.map +1 -0
  165. package/{lib6 → dist}/types/any.d.ts +1 -1
  166. package/{lib6 → dist}/types/any.js +3 -2
  167. package/dist/types/any.js.map +1 -0
  168. package/{lib6 → dist}/types/array.d.ts +4 -4
  169. package/{lib → dist}/types/array.js +6 -4
  170. package/dist/types/array.js.map +1 -0
  171. package/{lib → dist}/types/boolean.d.ts +1 -1
  172. package/{lib → dist}/types/boolean.js +3 -2
  173. package/dist/types/boolean.js.map +1 -0
  174. package/{lib6 → dist}/types/buffer.d.ts +2 -2
  175. package/{lib6 → dist}/types/buffer.js +8 -6
  176. package/dist/types/buffer.js.map +1 -0
  177. package/{lib → dist}/types/date.d.ts +1 -1
  178. package/{lib6 → dist}/types/date.js +6 -4
  179. package/dist/types/date.js.map +1 -0
  180. package/{lib → dist}/types/index.d.ts +11 -9
  181. package/dist/types/index.js +49 -0
  182. package/dist/types/index.js.map +1 -0
  183. package/{lib6 → dist}/types/model.d.ts +2 -1
  184. package/{lib → dist}/types/model.js +2 -2
  185. package/dist/types/model.js.map +1 -0
  186. package/dist/types/null.d.ts +12 -0
  187. package/{lib6/types/boolean.js → dist/types/null.js} +12 -11
  188. package/dist/types/null.js.map +1 -0
  189. package/{lib6 → dist}/types/number.d.ts +1 -1
  190. package/{lib6 → dist}/types/number.js +6 -4
  191. package/dist/types/number.js.map +1 -0
  192. package/{lib → dist}/types/object.d.ts +1 -1
  193. package/{lib6 → dist}/types/object.js +7 -6
  194. package/dist/types/object.js.map +1 -0
  195. package/{lib → dist}/types/string.d.ts +1 -1
  196. package/{lib → dist}/types/string.js +3 -2
  197. package/dist/types/string.js.map +1 -0
  198. package/{lib → dist}/types/type.d.ts +7 -7
  199. package/{lib6 → dist}/types/type.js +1 -1
  200. package/dist/types/type.js.map +1 -0
  201. package/{lib → dist}/types/union.d.ts +1 -1
  202. package/{lib6 → dist}/types/union.js +6 -4
  203. package/dist/types/union.js.map +1 -0
  204. package/package.json +49 -32
  205. package/src/common-types.ts +123 -0
  206. package/src/connectors/connector.ts +70 -0
  207. package/src/connectors/crud.connector.ts +208 -0
  208. package/src/connectors/index.ts +8 -0
  209. package/src/connectors/kv.connector.ts +113 -0
  210. package/src/datasource.ts +37 -0
  211. package/src/decorators/index.ts +8 -0
  212. package/src/decorators/metadata.ts +84 -0
  213. package/src/decorators/model.decorator.ts +166 -0
  214. package/src/decorators/repository.decorator.ts +223 -0
  215. package/src/define-model-class.ts +90 -0
  216. package/src/define-repository-class.ts +170 -0
  217. package/src/errors/entity-not-found.error.ts +40 -0
  218. package/src/errors/index.ts +7 -0
  219. package/src/errors/invalid-relation.error.ts +39 -0
  220. package/src/index.ts +36 -0
  221. package/src/keys.ts +40 -0
  222. package/{index.d.ts → src/mixins/index.ts} +2 -2
  223. package/src/mixins/repository.mixin.ts +499 -0
  224. package/src/model.ts +539 -0
  225. package/src/relations/belongs-to/belongs-to.accessor.ts +74 -0
  226. package/src/relations/belongs-to/belongs-to.decorator.ts +81 -0
  227. package/src/relations/belongs-to/belongs-to.helpers.ts +78 -0
  228. package/src/relations/belongs-to/belongs-to.inclusion-resolver.ts +71 -0
  229. package/src/relations/belongs-to/belongs-to.repository.ts +55 -0
  230. package/src/relations/belongs-to/index.ts +9 -0
  231. package/src/relations/has-many/has-many-through.helpers.ts +361 -0
  232. package/src/relations/has-many/has-many-through.inclusion-resolver.ts +135 -0
  233. package/src/relations/has-many/has-many-through.repository-factory.ts +121 -0
  234. package/src/relations/has-many/has-many-through.repository.ts +318 -0
  235. package/src/relations/has-many/has-many.decorator.ts +38 -0
  236. package/src/relations/has-many/has-many.helpers.ts +100 -0
  237. package/src/relations/has-many/has-many.inclusion-resolver.ts +88 -0
  238. package/src/relations/has-many/has-many.repository-factory.ts +76 -0
  239. package/src/relations/has-many/has-many.repository.ts +118 -0
  240. package/src/relations/has-many/index.ts +11 -0
  241. package/src/relations/has-one/has-one.decorator.ts +40 -0
  242. package/src/relations/has-one/has-one.helpers.ts +84 -0
  243. package/src/relations/has-one/has-one.inclusion-resolver.ts +65 -0
  244. package/src/relations/has-one/has-one.repository-factory.ts +72 -0
  245. package/src/relations/has-one/has-one.repository.ts +127 -0
  246. package/src/relations/has-one/index.ts +8 -0
  247. package/src/relations/index.ts +11 -0
  248. package/src/relations/relation.decorator.ts +90 -0
  249. package/src/relations/relation.helpers.ts +364 -0
  250. package/src/relations/relation.types.ts +180 -0
  251. package/src/repositories/constraint-utils.ts +98 -0
  252. package/src/repositories/index.ts +10 -0
  253. package/src/repositories/kv.repository.bridge.ts +97 -0
  254. package/src/repositories/kv.repository.ts +87 -0
  255. package/src/repositories/legacy-juggler-bridge.ts +788 -0
  256. package/src/repositories/repository.ts +441 -0
  257. package/src/transaction.ts +39 -0
  258. package/src/type-resolver.ts +98 -0
  259. package/src/types/any.ts +38 -0
  260. package/src/types/array.ts +53 -0
  261. package/src/types/boolean.ts +35 -0
  262. package/src/types/buffer.ts +53 -0
  263. package/src/types/date.ts +61 -0
  264. package/src/types/index.ts +52 -0
  265. package/src/types/model.ts +24 -0
  266. package/src/types/null.ts +35 -0
  267. package/src/types/number.ts +42 -0
  268. package/src/types/object.ts +53 -0
  269. package/src/types/string.ts +42 -0
  270. package/src/types/type.ts +51 -0
  271. package/src/types/union.ts +55 -0
  272. package/api-docs/apple-touch-icon-114x114-precomposed.png +0 -0
  273. package/api-docs/apple-touch-icon-144x144-precomposed.png +0 -0
  274. package/api-docs/apple-touch-icon-57x57-precomposed.png +0 -0
  275. package/api-docs/apple-touch-icon-72x72-precomposed.png +0 -0
  276. package/api-docs/apple-touch-icon-precomposed.png +0 -0
  277. package/api-docs/apple-touch-icon.png +0 -0
  278. package/api-docs/css/bootstrap.min.css +0 -9
  279. package/api-docs/css/code-themes/arta.css +0 -158
  280. package/api-docs/css/code-themes/ascetic.css +0 -50
  281. package/api-docs/css/code-themes/brown_paper.css +0 -104
  282. package/api-docs/css/code-themes/brown_papersq.png +0 -0
  283. package/api-docs/css/code-themes/dark.css +0 -103
  284. package/api-docs/css/code-themes/default.css +0 -135
  285. package/api-docs/css/code-themes/far.css +0 -111
  286. package/api-docs/css/code-themes/github.css +0 -127
  287. package/api-docs/css/code-themes/googlecode.css +0 -144
  288. package/api-docs/css/code-themes/idea.css +0 -121
  289. package/api-docs/css/code-themes/ir_black.css +0 -104
  290. package/api-docs/css/code-themes/magula.css +0 -121
  291. package/api-docs/css/code-themes/monokai.css +0 -114
  292. package/api-docs/css/code-themes/pojoaque.css +0 -104
  293. package/api-docs/css/code-themes/pojoaque.jpg +0 -0
  294. package/api-docs/css/code-themes/rainbow.css +0 -114
  295. package/api-docs/css/code-themes/school_book.css +0 -111
  296. package/api-docs/css/code-themes/school_book.png +0 -0
  297. package/api-docs/css/code-themes/sl-theme.css +0 -45
  298. package/api-docs/css/code-themes/solarized_dark.css +0 -88
  299. package/api-docs/css/code-themes/solarized_light.css +0 -88
  300. package/api-docs/css/code-themes/sunburst.css +0 -158
  301. package/api-docs/css/code-themes/tomorrow-night-blue.css +0 -52
  302. package/api-docs/css/code-themes/tomorrow-night-bright.css +0 -51
  303. package/api-docs/css/code-themes/tomorrow-night-eighties.css +0 -51
  304. package/api-docs/css/code-themes/tomorrow-night.css +0 -52
  305. package/api-docs/css/code-themes/tomorrow.css +0 -49
  306. package/api-docs/css/code-themes/vs.css +0 -86
  307. package/api-docs/css/code-themes/xcode.css +0 -154
  308. package/api-docs/css/code-themes/zenburn.css +0 -115
  309. package/api-docs/css/main.css +0 -139
  310. package/api-docs/favicon.ico +0 -0
  311. package/api-docs/fonts/0ihfXUL2emPh0ROJezvraLO3LdcAZYWl9Si6vvxL-qU.woff +0 -0
  312. package/api-docs/fonts/OsJ2DjdpjqFRVUSto6IffLO3LdcAZYWl9Si6vvxL-qU.woff +0 -0
  313. package/api-docs/fonts/_aijTyevf54tkVDLy-dlnLO3LdcAZYWl9Si6vvxL-qU.woff +0 -0
  314. package/api-docs/index.html +0 -17872
  315. package/api-docs/js/main.js +0 -19
  316. package/api-docs/js/vendor/bootstrap.min.js +0 -6
  317. package/api-docs/js/vendor/jquery-1.10.1.min.js +0 -6
  318. package/api-docs/js/vendor/jquery.scrollTo-1.4.3.1.js +0 -218
  319. package/api-docs/js/vendor/modernizr-2.6.2-respond-1.1.0.min.js +0 -11
  320. package/index.js +0 -9
  321. package/lib/common-types.d.ts +0 -44
  322. package/lib/common-types.js.map +0 -1
  323. package/lib/connector.d.ts +0 -12
  324. package/lib/connector.js.map +0 -1
  325. package/lib/crud-connector.js.map +0 -1
  326. package/lib/datasource.d.ts +0 -11
  327. package/lib/datasource.js.map +0 -1
  328. package/lib/decorators/model.d.ts +0 -14
  329. package/lib/decorators/model.js +0 -35
  330. package/lib/decorators/model.js.map +0 -1
  331. package/lib/decorators/relation.d.ts +0 -65
  332. package/lib/decorators/relation.js +0 -126
  333. package/lib/decorators/relation.js.map +0 -1
  334. package/lib/decorators/repository.d.ts +0 -61
  335. package/lib/decorators/repository.js +0 -103
  336. package/lib/decorators/repository.js.map +0 -1
  337. package/lib/index.d.ts +0 -15
  338. package/lib/index.js +0 -19
  339. package/lib/index.js.map +0 -1
  340. package/lib/kv-connector.d.ts +0 -77
  341. package/lib/kv-connector.js +0 -7
  342. package/lib/kv-connector.js.map +0 -1
  343. package/lib/kv-repository.d.ts +0 -78
  344. package/lib/kv-repository.js +0 -7
  345. package/lib/kv-repository.js.map +0 -1
  346. package/lib/legacy-juggler-bridge.d.ts +0 -44
  347. package/lib/legacy-juggler-bridge.js +0 -119
  348. package/lib/legacy-juggler-bridge.js.map +0 -1
  349. package/lib/loopback-datasource-juggler.d.ts +0 -666
  350. package/lib/loopback-datasource-juggler.js +0 -8
  351. package/lib/loopback-datasource-juggler.js.map +0 -1
  352. package/lib/mixin.d.ts +0 -43
  353. package/lib/mixin.js +0 -34
  354. package/lib/mixin.js.map +0 -1
  355. package/lib/model.d.ts +0 -127
  356. package/lib/model.js +0 -187
  357. package/lib/model.js.map +0 -1
  358. package/lib/query.d.ts +0 -112
  359. package/lib/query.js +0 -25
  360. package/lib/query.js.map +0 -1
  361. package/lib/repository.d.ts +0 -172
  362. package/lib/repository.js +0 -127
  363. package/lib/repository.js.map +0 -1
  364. package/lib/types/any.d.ts +0 -12
  365. package/lib/types/any.js +0 -35
  366. package/lib/types/any.js.map +0 -1
  367. package/lib/types/array.d.ts +0 -14
  368. package/lib/types/array.js.map +0 -1
  369. package/lib/types/boolean.js.map +0 -1
  370. package/lib/types/buffer.d.ts +0 -14
  371. package/lib/types/buffer.js +0 -57
  372. package/lib/types/buffer.js.map +0 -1
  373. package/lib/types/date.js +0 -60
  374. package/lib/types/date.js.map +0 -1
  375. package/lib/types/index.js +0 -33
  376. package/lib/types/index.js.map +0 -1
  377. package/lib/types/model.d.ts +0 -11
  378. package/lib/types/model.js.map +0 -1
  379. package/lib/types/number.d.ts +0 -12
  380. package/lib/types/number.js +0 -40
  381. package/lib/types/number.js.map +0 -1
  382. package/lib/types/object.js +0 -49
  383. package/lib/types/object.js.map +0 -1
  384. package/lib/types/string.js.map +0 -1
  385. package/lib/types/type.js +0 -7
  386. package/lib/types/type.js.map +0 -1
  387. package/lib/types/union.js +0 -51
  388. package/lib/types/union.js.map +0 -1
  389. package/lib6/common-types.d.ts +0 -44
  390. package/lib6/common-types.js +0 -7
  391. package/lib6/common-types.js.map +0 -1
  392. package/lib6/connector.d.ts +0 -12
  393. package/lib6/connector.js +0 -7
  394. package/lib6/connector.js.map +0 -1
  395. package/lib6/crud-connector.d.ts +0 -130
  396. package/lib6/crud-connector.js +0 -7
  397. package/lib6/crud-connector.js.map +0 -1
  398. package/lib6/datasource.d.ts +0 -11
  399. package/lib6/datasource.js.map +0 -1
  400. package/lib6/decorators/model.d.ts +0 -14
  401. package/lib6/decorators/model.js +0 -35
  402. package/lib6/decorators/model.js.map +0 -1
  403. package/lib6/decorators/relation.d.ts +0 -65
  404. package/lib6/decorators/relation.js +0 -126
  405. package/lib6/decorators/relation.js.map +0 -1
  406. package/lib6/decorators/repository.d.ts +0 -61
  407. package/lib6/decorators/repository.js +0 -113
  408. package/lib6/decorators/repository.js.map +0 -1
  409. package/lib6/index.d.ts +0 -15
  410. package/lib6/index.js +0 -19
  411. package/lib6/index.js.map +0 -1
  412. package/lib6/kv-connector.js +0 -7
  413. package/lib6/kv-connector.js.map +0 -1
  414. package/lib6/kv-repository.d.ts +0 -78
  415. package/lib6/kv-repository.js +0 -7
  416. package/lib6/kv-repository.js.map +0 -1
  417. package/lib6/legacy-juggler-bridge.d.ts +0 -44
  418. package/lib6/legacy-juggler-bridge.js +0 -119
  419. package/lib6/legacy-juggler-bridge.js.map +0 -1
  420. package/lib6/loopback-datasource-juggler.d.ts +0 -666
  421. package/lib6/loopback-datasource-juggler.js +0 -8
  422. package/lib6/loopback-datasource-juggler.js.map +0 -1
  423. package/lib6/mixin.d.ts +0 -43
  424. package/lib6/mixin.js +0 -34
  425. package/lib6/mixin.js.map +0 -1
  426. package/lib6/model.d.ts +0 -127
  427. package/lib6/model.js +0 -187
  428. package/lib6/model.js.map +0 -1
  429. package/lib6/query.d.ts +0 -112
  430. package/lib6/query.js +0 -25
  431. package/lib6/query.js.map +0 -1
  432. package/lib6/repository.d.ts +0 -172
  433. package/lib6/repository.js +0 -127
  434. package/lib6/repository.js.map +0 -1
  435. package/lib6/types/any.js.map +0 -1
  436. package/lib6/types/array.js +0 -53
  437. package/lib6/types/array.js.map +0 -1
  438. package/lib6/types/boolean.d.ts +0 -12
  439. package/lib6/types/boolean.js.map +0 -1
  440. package/lib6/types/buffer.js.map +0 -1
  441. package/lib6/types/date.d.ts +0 -12
  442. package/lib6/types/date.js.map +0 -1
  443. package/lib6/types/index.d.ts +0 -30
  444. package/lib6/types/index.js +0 -33
  445. package/lib6/types/index.js.map +0 -1
  446. package/lib6/types/model.js +0 -25
  447. package/lib6/types/model.js.map +0 -1
  448. package/lib6/types/number.js.map +0 -1
  449. package/lib6/types/object.d.ts +0 -15
  450. package/lib6/types/object.js.map +0 -1
  451. package/lib6/types/string.d.ts +0 -12
  452. package/lib6/types/string.js +0 -40
  453. package/lib6/types/string.js.map +0 -1
  454. package/lib6/types/type.d.ts +0 -38
  455. package/lib6/types/type.js.map +0 -1
  456. package/lib6/types/union.d.ts +0 -14
  457. package/lib6/types/union.js.map +0 -1
@@ -1,61 +0,0 @@
1
- import { Model } from '../model';
2
- import { Repository } from '../repository';
3
- import { DataSource } from '../datasource';
4
- import { juggler } from '../legacy-juggler-bridge';
5
- /**
6
- * Metadata for a repository
7
- */
8
- export declare class RepositoryMetadata {
9
- /**
10
- * Name of the predefined repository
11
- */
12
- name?: string;
13
- /**
14
- * Name of the model
15
- */
16
- modelName?: string;
17
- /**
18
- * Class of the model
19
- */
20
- modelClass?: typeof juggler.PersistedModel | typeof Model;
21
- /**
22
- * Name of the data source
23
- */
24
- dataSourceName?: string;
25
- /**
26
- * Instance of the data source
27
- */
28
- dataSource?: juggler.DataSource | DataSource;
29
- /**
30
- * Constructor for RepositoryMetadata
31
- *
32
- * @param model Name or class of the model. If the value is a string and
33
- * `dataSource` is not present, it will treated as the name of a predefined
34
- * repository
35
- * @param dataSource Name or instance of the data source
36
- *
37
- * For example:
38
- *
39
- * - new RepositoryMetadata(repoName);
40
- * - new RepositoryMetadata(modelName, dataSourceName);
41
- * - new RepositoryMetadata(modelClass, dataSourceInstance);
42
- * - new RepositoryMetadata(modelName, dataSourceInstance);
43
- * - new RepositoryMetadata(modelClass, dataSourceName);
44
- */
45
- constructor(modelOrRepo: string | typeof juggler.PersistedModel | typeof Model, dataSource?: string | juggler.DataSource | DataSource);
46
- }
47
- /**
48
- * Decorator for model definitions
49
- * @param model Name of the repo or name/class of the model
50
- * @param dataSource Name or instance of the data source
51
- * @returns {(target:AnyType)}
52
- *
53
- * For example:
54
- *
55
- * - @repository('myCustomerRepo')
56
- * - @repository('Customer', 'mysqlDataSource')
57
- * - @repository(Customer, mysqlDataSource)
58
- * - @repository('Customer', mysqlDataSource)
59
- * - @repository(Customer, 'mysqlDataSource')
60
- */
61
- export declare function repository<T extends Model>(model: string | typeof juggler.PersistedModel, dataSource?: string | juggler.DataSource): (target: Object, key?: string | symbol | undefined, descriptor?: number | TypedPropertyDescriptor<Repository<T>> | undefined) => void;
@@ -1,113 +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 repostory 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
- let dataSource = meta.dataSource;
106
- if (meta.dataSourceName) {
107
- dataSource = yield ctx.get('datasources.' + meta.dataSourceName);
108
- }
109
- assert(dataSource instanceof legacy_juggler_bridge_1.DataSourceConstructor, 'DataSource must be provided');
110
- return new legacy_juggler_bridge_1.DefaultCrudRepository(modelClass, dataSource);
111
- });
112
- }
113
- //# sourceMappingURL=repository.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"repository.js","sourceRoot":"","sources":["../../src/decorators/repository.ts"],"names":[],"mappings":";AAAA,iDAAiD;AACjD,oCAAoC;AACpC,+CAA+C;AAC/C,gEAAgE;;;;;;;;;;AAEhE,iCAAiC;AAKjC,oEAIkC;AAClC,+CAA6D;AAE7D;;GAEG;AACH;IAsBE;;;;;;;;;;;;;;;OAeG;IACH,YACE,WAAkE,EAClE,UAAqD;QAErD,IAAI,CAAC,IAAI,GAAG,OAAO,WAAW,KAAK,QAAQ,IAAI,UAAU,KAAK,SAAS;cACnE,WAAW;cACX,SAAS,CAAC;QACd,IAAI,CAAC,SAAS,GAAG,OAAO,WAAW,KAAK,QAAQ,IAAI,UAAU,IAAI,IAAI;cAClE,WAAW;cACX,SAAS,CAAC;QACd,IAAI,CAAC,UAAU,GAAG,OAAO,WAAW,KAAK,UAAU;cAC/C,WAAW;cACX,SAAS,CAAC;QACd,IAAI,CAAC,cAAc,GAAG,OAAO,UAAU,KAAK,QAAQ;cAChD,UAAU;cACV,SAAS,CAAC;QACd,IAAI,CAAC,UAAU,GAAG,OAAO,UAAU,KAAK,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;IAC5E,CAAC;CACF;AAxDD,gDAwDC;AAED;;;;;;;;;;;;;GAaG;AACH,oBACE,KAA6C,EAC7C,UAAwC;IAExC,MAAM,IAAI,GAAG,IAAI,kBAAkB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IACvD,MAAM,CAAC,UACL,MAAc,EACd,GAAqB,EACrB,UAA4D;QAE5D,EAAE,CAAC,CAAC,GAAG,IAAI,OAAO,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC;YAC1C,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBACd,uDAAuD;gBACvD,oEAAoE;gBACpE,gEAAgE;gBAChE,gEAAgE;gBAChE,gBAAM,CAAC,eAAe,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,MAAM,EAAE,GAAI,EAAE,UAAU,CAAC,CAAC;YACtE,CAAC;YAAC,IAAI,CAAC,CAAC;gBACN,wEAAwE;gBACxE,gEAAgE;gBAChE,gBAAM,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,MAAM,EAAE,GAAI,EAAE,UAAU,CAAC,CAAC;gBACpD,wEAAwE;YAC1E,CAAC;YACD,MAAM,CAAC;QACT,CAAC;QACD,iCAAiC;QACjC,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChE,CAAC,CAAC;AACJ,CAAC;AA5BD,gCA4BC;AAED;;;;GAIG;AACH,iBAAuB,GAAY,EAAE,SAAoB;;QACvD,MAAM,IAAI,GAAG,SAAS,CAAC,QAA8B,CAAC;QACtD,IAAI,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACjC,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;YACnB,UAAU,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;QACzD,CAAC;QACD,IAAI,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACjC,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;YACxB,UAAU,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC;QACnE,CAAC;QACD,MAAM,CAAC,UAAU,YAAY,6CAAqB,EAChD,6BAA6B,CAAC,CAAC;QACjC,MAAM,CAAC,IAAI,6CAAqB,CAC9B,UAA2C,EAC3C,UAAiC,CAAC,CAAC;IACvC,CAAC;CAAA"}
package/lib6/index.d.ts DELETED
@@ -1,15 +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';
package/lib6/index.js DELETED
@@ -1,19 +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
- //# 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"}
@@ -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
@@ -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"}
@@ -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
- }
@@ -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,44 +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
- import { juggler } from './loopback-datasource-juggler';
7
- export * from './loopback-datasource-juggler';
8
- export declare const DataSourceConstructor: typeof juggler.DataSource;
9
- export declare const ModelBaseConstructor: typeof juggler.ModelBase;
10
- /**
11
- * This is a bridge to the legacy DAO class. The function mixes DAO methods
12
- * into a model class and attach it to a given data source
13
- * @param modelClass {} Model class
14
- * @param ds {DataSource} Data source
15
- * @returns {} The new model class with DAO (CRUD) operations
16
- */
17
- export declare function bindModel<T extends typeof juggler.ModelBase>(modelClass: T, ds: juggler.DataSource): T;
18
- /**
19
- * Default implementation of CRUD repository using legacy juggler model
20
- * and data source
21
- */
22
- export declare class DefaultCrudRepository<T extends Entity, ID> implements EntityCrudRepository<T, ID> {
23
- modelClass: typeof juggler.PersistedModel;
24
- /**
25
- * Constructor of DefaultCrudRepository
26
- * @param modelClass Legacy model class
27
- * @param dataSource Legacy data source
28
- */
29
- constructor(modelClass: typeof juggler.PersistedModel, dataSource: juggler.DataSource);
30
- create(entity: DataObject<T>, options?: Options): Promise<T>;
31
- createAll(entities: DataObject<T>[], options?: Options): Promise<T[]>;
32
- save(entity: DataObject<T>, options?: Options): Promise<T | null>;
33
- find(filter?: Filter, options?: Options): Promise<T[]>;
34
- findById(id: ID, filter?: Filter, options?: Options): Promise<T>;
35
- update(entity: DataObject<T>, options?: Options): Promise<boolean>;
36
- delete(entity: DataObject<T>, options?: Options): Promise<boolean>;
37
- updateAll(data: DataObject<T>, where?: Where, options?: Options): Promise<number>;
38
- updateById(id: ID, data: DataObject<T>, options?: Options): Promise<boolean>;
39
- replaceById(id: ID, data: DataObject<T>, options?: Options): Promise<boolean>;
40
- deleteAll(where?: Where, options?: Options): Promise<number>;
41
- deleteById(id: ID, options?: Options): Promise<boolean>;
42
- count(where?: Where, options?: Options): Promise<number>;
43
- exists(id: ID, options?: Options): Promise<boolean>;
44
- }
@@ -1,119 +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
- exports.jugglerModule = require('loopback-datasource-juggler');
11
- const context_1 = require("@loopback/context");
12
- __export(require("./loopback-datasource-juggler"));
13
- /* tslint:disable-next-line:variable-name */
14
- exports.DataSourceConstructor = exports.jugglerModule.DataSource;
15
- /* tslint:disable-next-line:variable-name */
16
- exports.ModelBaseConstructor = exports.jugglerModule.ModelBaseClass;
17
- /**
18
- * This is a bridge to the legacy DAO class. The function mixes DAO methods
19
- * into a model class and attach it to a given data source
20
- * @param modelClass {} Model class
21
- * @param ds {DataSource} Data source
22
- * @returns {} The new model class with DAO (CRUD) operations
23
- */
24
- function bindModel(modelClass, ds) {
25
- const boundModelClass = class extends modelClass {
26
- };
27
- boundModelClass.attachTo(ds);
28
- return boundModelClass;
29
- }
30
- exports.bindModel = bindModel;
31
- /**
32
- * Ensure the value is a promise
33
- * @param p Promise or void
34
- */
35
- /* tslint:disable-next-line:no-any */
36
- function ensurePromise(p) {
37
- if (p && context_1.isPromise(p)) {
38
- return p;
39
- }
40
- else {
41
- return Promise.reject(new Error('The value should be a Promise: ' + p));
42
- }
43
- }
44
- /**
45
- * Default implementation of CRUD repository using legacy juggler model
46
- * and data source
47
- */
48
- class DefaultCrudRepository {
49
- /**
50
- * Constructor of DefaultCrudRepository
51
- * @param modelClass Legacy model class
52
- * @param dataSource Legacy data source
53
- */
54
- constructor(modelClass, dataSource) {
55
- // Bind the legacy model class to the datasource to create
56
- // a subclass of the model
57
- this.modelClass = bindModel(modelClass, dataSource);
58
- }
59
- create(entity, options) {
60
- return ensurePromise(this.modelClass.create(entity, options));
61
- }
62
- createAll(entities, options) {
63
- return ensurePromise(this.modelClass.create(entities, options));
64
- }
65
- save(entity, options) {
66
- const idName = this.modelClass.definition.idName();
67
- let id;
68
- if (typeof entity.getId === 'function') {
69
- id = entity.getId();
70
- }
71
- else {
72
- id = entity[idName];
73
- }
74
- if (id == null) {
75
- return this.create(entity, options);
76
- }
77
- else {
78
- return this.replaceById(id, entity, options).then(result => (result ? entity : null));
79
- }
80
- }
81
- find(filter, options) {
82
- return ensurePromise(this.modelClass.find(filter, options));
83
- }
84
- findById(id, filter, options) {
85
- return ensurePromise(this.modelClass.findById(id, filter, options));
86
- }
87
- update(entity, options) {
88
- return this.updateById(entity.getId(), entity, options);
89
- }
90
- delete(entity, options) {
91
- return this.deleteById(entity.getId(), options);
92
- }
93
- updateAll(data, where, options) {
94
- return ensurePromise(this.modelClass.updateAll(where, data, options)).then(result => result.count);
95
- }
96
- updateById(id, data, options) {
97
- const idProp = this.modelClass.definition.idName();
98
- const where = {};
99
- where[idProp] = id;
100
- return this.updateAll(data, where, options).then(count => count > 0);
101
- }
102
- replaceById(id, data, options) {
103
- return ensurePromise(this.modelClass.replaceById(id, data, options)).then(result => !!result);
104
- }
105
- deleteAll(where, options) {
106
- return ensurePromise(this.modelClass.deleteAll(where, options)).then(result => result.count);
107
- }
108
- deleteById(id, options) {
109
- return ensurePromise(this.modelClass.deleteById(id, options)).then(result => result.count > 0);
110
- }
111
- count(where, options) {
112
- return ensurePromise(this.modelClass.count(where, options));
113
- }
114
- exists(id, options) {
115
- return ensurePromise(this.modelClass.exists(id, options));
116
- }
117
- }
118
- exports.DefaultCrudRepository = DefaultCrudRepository;
119
- //# 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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"}