@loopback/cli 4.0.0-alpha.9 → 4.1.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.
Files changed (159) hide show
  1. package/.yo-rc.json +1719 -0
  2. package/{generators/project/templates/LICENSE → LICENSE} +2 -1
  3. package/README.md +44 -43
  4. package/bin/cli-main.js +61 -0
  5. package/generators/app/index.js +109 -15
  6. package/generators/app/templates/.dockerignore +5 -0
  7. package/generators/app/templates/Dockerfile +28 -0
  8. package/generators/app/templates/README.md.ejs +130 -0
  9. package/generators/app/templates/public/index.html.ejs +88 -0
  10. package/generators/app/templates/{test → src/__tests__}/README.md +0 -1
  11. package/generators/app/templates/src/__tests__/acceptance/home-page.acceptance.ts.ejs +31 -0
  12. package/generators/app/templates/src/__tests__/acceptance/ping.controller.acceptance.ts.ejs +21 -0
  13. package/generators/app/templates/src/__tests__/acceptance/test-helper.ts.ejs +32 -0
  14. package/generators/app/templates/src/application.ts.ejs +70 -0
  15. package/generators/app/templates/src/controllers/README.md +6 -0
  16. package/generators/app/templates/src/controllers/index.ts.ejs +1 -0
  17. package/generators/app/templates/src/controllers/ping.controller.ts.ejs +55 -0
  18. package/generators/app/templates/src/datasources/README.md +3 -0
  19. package/generators/app/templates/src/index.ts.ejs +39 -0
  20. package/generators/app/templates/src/migrate.ts.ejs +20 -0
  21. package/generators/app/templates/src/models/README.md +3 -0
  22. package/generators/app/templates/src/openapi-spec.ts.ejs +23 -0
  23. package/generators/app/templates/src/sequence.ts.ejs +3 -0
  24. package/generators/controller/index.js +240 -23
  25. package/generators/controller/templates/src/controllers/controller-rest-template.ts.ejs +150 -0
  26. package/generators/controller/templates/src/controllers/{controller-template.ts → controller-template.ts.ejs} +2 -2
  27. package/generators/copyright/fs.js +46 -0
  28. package/generators/copyright/git.js +78 -0
  29. package/generators/copyright/header.js +306 -0
  30. package/generators/copyright/index.js +230 -0
  31. package/generators/copyright/license.js +105 -0
  32. package/generators/datasource/index.js +341 -0
  33. package/generators/datasource/templates/datasource.ts.ejs +22 -0
  34. package/generators/discover/import-discovered-model.js +70 -0
  35. package/generators/discover/index.js +411 -0
  36. package/generators/example/downloader.js +16 -0
  37. package/generators/example/index.js +176 -0
  38. package/generators/extension/index.js +34 -5
  39. package/generators/extension/templates/README.md.ejs +32 -0
  40. package/generators/extension/templates/{test → src/__tests__}/acceptance/README.md +0 -0
  41. package/generators/extension/templates/{test → src/__tests__}/integration/README.md +0 -0
  42. package/generators/extension/templates/{test → src/__tests__}/unit/README.md +0 -0
  43. package/generators/extension/templates/src/component.ts.ejs +22 -0
  44. package/generators/extension/templates/src/controllers/README.md +3 -2
  45. package/generators/extension/templates/src/decorators/README.md +10 -4
  46. package/generators/extension/templates/src/index.ts.ejs +3 -0
  47. package/generators/extension/templates/src/keys.ts.ejs +11 -0
  48. package/generators/extension/templates/src/mixins/README.md +77 -21
  49. package/generators/extension/templates/src/providers/README.md +51 -25
  50. package/generators/extension/templates/src/repositories/README.md +1 -1
  51. package/generators/extension/templates/src/types.ts.ejs +15 -0
  52. package/generators/import-lb3-models/index.js +197 -0
  53. package/generators/import-lb3-models/lb3app-loader.js +31 -0
  54. package/generators/import-lb3-models/migrate-model.js +249 -0
  55. package/generators/import-lb3-models/model-names.js +32 -0
  56. package/generators/interceptor/index.js +178 -0
  57. package/generators/interceptor/templates/interceptor-template.ts.ejs +62 -0
  58. package/generators/model/index.js +536 -0
  59. package/generators/model/property-definition.js +85 -0
  60. package/generators/model/templates/model.ts.ejs +49 -0
  61. package/generators/observer/index.js +132 -0
  62. package/generators/observer/templates/observer-template.ts.ejs +40 -0
  63. package/generators/openapi/README.md +211 -0
  64. package/generators/openapi/index.js +535 -0
  65. package/generators/openapi/schema-helper.js +447 -0
  66. package/generators/openapi/spec-helper.js +484 -0
  67. package/generators/openapi/spec-loader.js +75 -0
  68. package/generators/openapi/templates/src/controllers/controller-template.ts.ejs +43 -0
  69. package/generators/openapi/templates/src/datasources/datasource.ts.ejs +42 -0
  70. package/generators/openapi/templates/src/models/model-template.ts.ejs +71 -0
  71. package/generators/openapi/templates/src/models/type-template.ts.ejs +13 -0
  72. package/generators/openapi/templates/src/services/service-proxy-template.ts.ejs +55 -0
  73. package/generators/openapi/utils.js +322 -0
  74. package/generators/project/templates/.eslintignore +4 -0
  75. package/generators/project/templates/.eslintrc.js.ejs +3 -0
  76. package/generators/project/templates/.mocharc.json +5 -0
  77. package/generators/project/templates/.prettierignore +0 -2
  78. package/generators/project/templates/.prettierrc +2 -1
  79. package/generators/project/templates/.vscode/launch.json +38 -0
  80. package/generators/project/templates/.vscode/settings.json +32 -0
  81. package/generators/project/templates/.vscode/tasks.json +29 -0
  82. package/generators/project/templates/DEVELOPING.md +36 -0
  83. package/generators/project/templates/_.gitignore +3 -5
  84. package/generators/project/templates/package.json.ejs +175 -0
  85. package/generators/project/templates/package.plain.json.ejs +176 -0
  86. package/generators/project/templates/tsconfig.json.ejs +39 -0
  87. package/generators/relation/base-relation.generator.js +220 -0
  88. package/generators/relation/belongs-to-relation.generator.js +196 -0
  89. package/generators/relation/has-many-relation.generator.js +200 -0
  90. package/generators/relation/has-many-through-relation.generator.js +331 -0
  91. package/generators/relation/has-one-relation.generator.js +200 -0
  92. package/generators/relation/index.js +795 -0
  93. package/generators/relation/references-many-relation.generator.js +142 -0
  94. package/generators/relation/templates/controller-relation-template-belongs-to.ts.ejs +38 -0
  95. package/generators/relation/templates/controller-relation-template-has-many-through.ts.ejs +110 -0
  96. package/generators/relation/templates/controller-relation-template-has-many.ts.ejs +110 -0
  97. package/generators/relation/templates/controller-relation-template-has-one.ts.ejs +110 -0
  98. package/generators/relation/utils.generator.js +260 -0
  99. package/generators/repository/index.js +576 -0
  100. package/generators/repository/templates/src/repositories/repository-crud-default-template.ts.ejs +21 -0
  101. package/generators/repository/templates/src/repositories/repository-kv-template.ts.ejs +19 -0
  102. package/generators/rest-crud/crud-rest-component.js +63 -0
  103. package/generators/rest-crud/index.js +423 -0
  104. package/generators/rest-crud/templates/src/model-endpoints/model.rest-config-template.ts.ejs +11 -0
  105. package/generators/service/index.js +351 -0
  106. package/generators/service/templates/local-service-class-template.ts.ejs +10 -0
  107. package/generators/service/templates/local-service-provider-template.ts.ejs +19 -0
  108. package/generators/service/templates/remote-service-proxy-template.ts.ejs +21 -0
  109. package/generators/update/index.js +55 -0
  110. package/intl/cs/messages.json +204 -0
  111. package/intl/de/messages.json +204 -0
  112. package/intl/en/messages.json +204 -0
  113. package/intl/es/messages.json +204 -0
  114. package/intl/fr/messages.json +204 -0
  115. package/intl/it/messages.json +204 -0
  116. package/intl/ja/messages.json +204 -0
  117. package/intl/ko/messages.json +204 -0
  118. package/intl/nl/messages.json +204 -0
  119. package/intl/pl/messages.json +204 -0
  120. package/intl/pt/messages.json +204 -0
  121. package/intl/ru/messages.json +204 -0
  122. package/intl/tr/messages.json +204 -0
  123. package/intl/zh-Hans/messages.json +204 -0
  124. package/intl/zh-Hant/messages.json +204 -0
  125. package/lib/artifact-generator.js +138 -39
  126. package/lib/ast-helper.js +214 -0
  127. package/lib/base-generator.js +509 -0
  128. package/lib/cli.js +233 -0
  129. package/lib/connectors.json +894 -0
  130. package/lib/debug.js +16 -0
  131. package/lib/globalize.js +12 -0
  132. package/lib/model-discoverer.js +118 -0
  133. package/lib/project-generator.js +154 -57
  134. package/lib/tab-completion.js +127 -0
  135. package/lib/update-index.js +44 -0
  136. package/lib/utils.js +689 -20
  137. package/lib/version-helper.js +299 -0
  138. package/package.json +183 -39
  139. package/CHANGELOG.md +0 -86
  140. package/bin/cli.js +0 -66
  141. package/generators/app/templates/index.js +0 -14
  142. package/generators/app/templates/src/application.ts +0 -27
  143. package/generators/app/templates/src/controllers/ping-controller.ts +0 -25
  144. package/generators/app/templates/src/index.ts +0 -25
  145. package/generators/app/templates/test/ping-controller.test.ts +0 -46
  146. package/generators/extension/templates/index.js +0 -8
  147. package/generators/extension/templates/src/component.ts +0 -14
  148. package/generators/extension/templates/src/index.ts +0 -6
  149. package/generators/project/templates/.npmrc +0 -1
  150. package/generators/project/templates/.yo-rc.json +0 -1
  151. package/generators/project/templates/README.md +0 -4
  152. package/generators/project/templates/index.d.ts +0 -6
  153. package/generators/project/templates/index.ts +0 -11
  154. package/generators/project/templates/package.json +0 -79
  155. package/generators/project/templates/package.plain.json +0 -82
  156. package/generators/project/templates/test/mocha.opts +0 -1
  157. package/generators/project/templates/tsconfig.json +0 -29
  158. package/generators/project/templates/tslint.build.json +0 -17
  159. package/generators/project/templates/tslint.json +0 -33
@@ -0,0 +1,894 @@
1
+ {
2
+ "memory": {
3
+ "name": "memory",
4
+ "description": "In-memory db",
5
+ "baseModel": "PersistedModel",
6
+ "features": {
7
+ "discovery": false,
8
+ "migration": false
9
+ },
10
+ "settings": {
11
+ "localStorage": {
12
+ "type": "string",
13
+ "message": "window.localStorage key to use for persistence (browser only)"
14
+ },
15
+ "file": {
16
+ "type": "string",
17
+ "message": "Full path to file for persistence (server only)"
18
+ }
19
+ },
20
+ "supportedByStrongLoop": true
21
+ },
22
+ "kv-memory": {
23
+ "name": "kv-memory",
24
+ "description": "In-memory key-value connector",
25
+ "baseModel": "KeyValueModel",
26
+ "features": {
27
+ "discovery": false,
28
+ "migration": false
29
+ },
30
+ "supportedByStrongLoop": true
31
+ },
32
+ "ibm-object-storage": {
33
+ "name": "ibm-object-storage",
34
+ "description": "IBM Object Storage",
35
+ "baseModel": "Model",
36
+ "features": {
37
+ "discovery": false,
38
+ "migration": false
39
+ },
40
+ "settings": {
41
+ "authUrl": {
42
+ "type": "string"
43
+ },
44
+ "tenantId": {
45
+ "type": "string"
46
+ },
47
+ "domainId": {
48
+ "type": "string"
49
+ },
50
+ "username": {
51
+ "type": "string"
52
+ },
53
+ "password": {
54
+ "type": "password"
55
+ },
56
+ "region": {
57
+ "type": "string"
58
+ }
59
+ },
60
+ "package": {
61
+ "name": "loopback-component-storage",
62
+ "version": "^3.5.0"
63
+ },
64
+ "supportedByStrongLoop": true
65
+ },
66
+ "db2": {
67
+ "name": "db2",
68
+ "description": "IBM Db2 (for Linux, Unix, Windows)",
69
+ "baseModel": "PersistedModel",
70
+ "features": {
71
+ "discovery": true,
72
+ "migration": true
73
+ },
74
+ "settings": {
75
+ "dsn": {
76
+ "type": "string",
77
+ "message": "Connection String dsn to override other settings (eg: DATABASE=MY_DB;HOSTNAME=MY_HOST;PORT=MY_PORT;PROTOCOL=TCPIP;UID=MY_UID;PWD=MY_PWD))"
78
+ },
79
+ "host": {
80
+ "type": "string"
81
+ },
82
+ "port": {
83
+ "type": "number"
84
+ },
85
+ "user": {
86
+ "type": "string"
87
+ },
88
+ "password": {
89
+ "type": "password"
90
+ },
91
+ "database": {
92
+ "type": "string"
93
+ },
94
+ "schema": {
95
+ "type": "string"
96
+ }
97
+ },
98
+ "package": {
99
+ "name": "loopback-connector-db2",
100
+ "version": "^2.1.1"
101
+ },
102
+ "supportedByStrongLoop": true
103
+ },
104
+ "ibmi": {
105
+ "name": "ibmi",
106
+ "description": "IBM i (Db2 for i)",
107
+ "baseModel": "PersistedModel",
108
+ "features": {
109
+ "discovery": true,
110
+ "migration": true
111
+ },
112
+ "settings": {
113
+ "dsn": {
114
+ "type": "string",
115
+ "message": "ODBC DSN"
116
+ },
117
+ "connectionString": {
118
+ "type": "string",
119
+ "message": "ODBC connection string for overriding other options (e.g.: DBQ=QGPL;NAM=1)"
120
+ },
121
+ "user": {
122
+ "type": "string",
123
+ "message": "IBM i User (If not specified in DSN or connection string)"
124
+ },
125
+ "password": {
126
+ "type": "password",
127
+ "message": "IBM i User's Password (If not specified in DSN or connection string)"
128
+ }
129
+ },
130
+ "package": {
131
+ "name": "loopback-connector-ibmi",
132
+ "version": "^1.0.0"
133
+ },
134
+ "supportedByStrongLoop": true
135
+ },
136
+ "db2z": {
137
+ "name": "db2z",
138
+ "description": "IBM Db2 for z/OS",
139
+ "baseModel": "PersistedModel",
140
+ "features": {
141
+ "discovery": true,
142
+ "migration": true
143
+ },
144
+ "settings": {
145
+ "dsn": {
146
+ "type": "string",
147
+ "message": "Connection String dsn to override other settings (eg: DATABASE=MY_DB;HOSTNAME=MY_HOST;PORT=MY_PORT;PROTOCOL=TCPIP;UID=MY_UID;PWD=MY_PWD))"
148
+ },
149
+ "host": {
150
+ "type": "string"
151
+ },
152
+ "port": {
153
+ "type": "number"
154
+ },
155
+ "user": {
156
+ "type": "string"
157
+ },
158
+ "password": {
159
+ "type": "password"
160
+ },
161
+ "database": {
162
+ "type": "string"
163
+ }
164
+ },
165
+ "package": {
166
+ "name": "loopback-connector-db2z",
167
+ "version": "^2.0.0"
168
+ },
169
+ "supportedByStrongLoop": true
170
+ },
171
+ "dashdb": {
172
+ "name": "dashdb",
173
+ "description": "IBM DashDB",
174
+ "baseModel": "PersistedModel",
175
+ "features": {
176
+ "discovery": true,
177
+ "migration": true
178
+ },
179
+ "settings": {
180
+ "dsn": {
181
+ "type": "string",
182
+ "message": "Connection String dsn to override other settings (eg: DATABASE=MY_DB;HOSTNAME=MY_HOST;PORT=MY_PORT;PROTOCOL=TCPIP;UID=MY_UID;PWD=MY_PWD))"
183
+ },
184
+ "host": {
185
+ "type": "string"
186
+ },
187
+ "port": {
188
+ "type": "number"
189
+ },
190
+ "user": {
191
+ "type": "string"
192
+ },
193
+ "password": {
194
+ "type": "password"
195
+ },
196
+ "database": {
197
+ "type": "string"
198
+ }
199
+ },
200
+ "package": {
201
+ "name": "loopback-connector-dashdb",
202
+ "version": "^2.0.2"
203
+ },
204
+ "supportedByStrongLoop": true
205
+ },
206
+ "mqlight": {
207
+ "name": "mqlight",
208
+ "description": "IBM MQ Light",
209
+ "baseModel": "Model",
210
+ "features": {
211
+ "discovery": false,
212
+ "migration": false
213
+ },
214
+ "settings": {
215
+ "service": {
216
+ "type": "string",
217
+ "message": "URL string for MQ Light service"
218
+ },
219
+ "user": {
220
+ "type": "string"
221
+ },
222
+ "password": {
223
+ "type": "password"
224
+ }
225
+ },
226
+ "package": {
227
+ "name": "loopback-connector-mqlight",
228
+ "version": "^3.1.0"
229
+ },
230
+ "supportedByStrongLoop": true
231
+ },
232
+ "cloudant": {
233
+ "name": "cloudant",
234
+ "description": "IBM Cloudant DB",
235
+ "baseModel": "PersistedModel",
236
+ "features": {
237
+ "discovery": false,
238
+ "migration": true
239
+ },
240
+ "settings": {
241
+ "url": {
242
+ "type": "string",
243
+ "message": "Connection String url to override other settings (eg: https://username:password@host)"
244
+ },
245
+ "database": {
246
+ "type": "string"
247
+ },
248
+ "username": {
249
+ "type": "string"
250
+ },
251
+ "password": {
252
+ "type": "password"
253
+ },
254
+ "modelIndex": {
255
+ "type": "string",
256
+ "message": "Specify the model name to document mapping, defaults to `loopback__model__name`"
257
+ }
258
+ },
259
+ "package": {
260
+ "name": "loopback-connector-cloudant",
261
+ "version": "^2.2.0"
262
+ },
263
+ "supportedByStrongLoop": true
264
+ },
265
+ "couchdb2": {
266
+ "name": "couchdb2",
267
+ "description": "Couchdb 2.x",
268
+ "baseModel": "PersistedModel",
269
+ "features": {
270
+ "discovery": false,
271
+ "migration": true
272
+ },
273
+ "settings": {
274
+ "url": {
275
+ "type": "string",
276
+ "message": "Connection String url to override other settings (eg: https://username:password@host)"
277
+ },
278
+ "database": {
279
+ "type": "string"
280
+ },
281
+ "username": {
282
+ "type": "string"
283
+ },
284
+ "password": {
285
+ "type": "password"
286
+ },
287
+ "modelIndex": {
288
+ "type": "string",
289
+ "message": "Specify the model name to document mapping, defaults to `loopback__model__name`"
290
+ }
291
+ },
292
+ "package": {
293
+ "name": "loopback-connector-couchdb2",
294
+ "version": "^1.3.0"
295
+ },
296
+ "supportedByStrongLoop": true
297
+ },
298
+ "kv-extreme-scale": {
299
+ "name": "kv-extreme-scale",
300
+ "description": "IBM WebSphere eXtreme Scale key-value connector",
301
+ "baseModel": "KeyValueModel",
302
+ "features": {
303
+ "discovery": false,
304
+ "migration": false
305
+ },
306
+ "settings": {
307
+ "url": {
308
+ "type": "string",
309
+ "message": "Connection String url to override other settings (eg: https://user:pass@host:port/wxsdata/v1/grids/$GRID_NAME)"
310
+ },
311
+ "strictSSL": {
312
+ "type": "boolean",
313
+ "message": "Use SSL for connections to the grid"
314
+ }
315
+ },
316
+ "package": {
317
+ "name": "loopback-connector-kv-extreme-scale",
318
+ "version": "^1.0.1"
319
+ },
320
+ "supportedByStrongLoop": true
321
+ },
322
+ "cassandra": {
323
+ "name": "cassandra",
324
+ "description": "Cassandra",
325
+ "baseModel": "PersistedModel",
326
+ "features": {
327
+ "discovery": true,
328
+ "migration": true
329
+ },
330
+ "settings": {
331
+ "host": {
332
+ "type": "string"
333
+ },
334
+ "port": {
335
+ "type": "number",
336
+ "default": 9042
337
+ },
338
+ "user": {
339
+ "type": "string"
340
+ },
341
+ "password": {
342
+ "type": "password"
343
+ },
344
+ "database": {
345
+ "type": "string"
346
+ },
347
+ "connectTimeout": {
348
+ "type": "number",
349
+ "default": 30000,
350
+ "message": "connectTimeout(ms)"
351
+ },
352
+ "readTimeout": {
353
+ "type": "number",
354
+ "default": 30000,
355
+ "message": "readTimeout(ms)"
356
+ }
357
+ },
358
+ "package": {
359
+ "name": "loopback-connector-cassandra",
360
+ "version": "^1.7.0"
361
+ },
362
+ "supportedByStrongLoop": true
363
+ },
364
+ "grpc": {
365
+ "name": "grpc",
366
+ "description": "gRPC",
367
+ "baseModel": "Model",
368
+ "features": {
369
+ "discovery": false,
370
+ "migration": false
371
+ },
372
+ "package": {
373
+ "name": "loopback-connector-grpc",
374
+ "version": "^2.0.0"
375
+ },
376
+ "settings": {
377
+ "host": {
378
+ "type": "string"
379
+ },
380
+ "port": {
381
+ "type": "number"
382
+ },
383
+ "spec": {
384
+ "type": "string",
385
+ "message": "HTTP URL/path to gRPC spec file (file name extension .yaml/.yml or .json or .proto)"
386
+ },
387
+ "validate": {
388
+ "type": "boolean",
389
+ "message": "Validate spec against gRPC specification 2.0?"
390
+ },
391
+ "security": {
392
+ "type": "object",
393
+ "message": "Security config for making authenticated requests to API"
394
+ }
395
+ },
396
+ "supportedByStrongLoop": true
397
+ },
398
+ "kv-redis": {
399
+ "name": "kv-redis",
400
+ "description": "Redis key-value connector",
401
+ "baseModel": "KeyValueModel",
402
+ "features": {
403
+ "discovery": false,
404
+ "migration": false
405
+ },
406
+ "settings": {
407
+ "url": {
408
+ "type": "string",
409
+ "message": "Connection String url to override other settings (eg: redis://user:pass@host:port/db)"
410
+ },
411
+ "host": {
412
+ "type": "string"
413
+ },
414
+ "port": {
415
+ "type": "number"
416
+ },
417
+ "password": {
418
+ "type": "password"
419
+ },
420
+ "db": {
421
+ "type": "number"
422
+ }
423
+ },
424
+ "package": {
425
+ "name": "loopback-connector-kv-redis",
426
+ "version": "^3.0.0"
427
+ },
428
+ "supportedByStrongLoop": true
429
+ },
430
+ "mongodb": {
431
+ "name": "mongodb",
432
+ "description": "MongoDB",
433
+ "baseModel": "PersistedModel",
434
+ "features": {
435
+ "discovery": false,
436
+ "migration": true
437
+ },
438
+ "settings": {
439
+ "url": {
440
+ "type": "string",
441
+ "message": "Connection String url to override other settings (eg: mongodb://username:password@hostname:port/database)"
442
+ },
443
+ "host": {
444
+ "type": "string"
445
+ },
446
+ "port": {
447
+ "type": "number"
448
+ },
449
+ "user": {
450
+ "type": "string"
451
+ },
452
+ "password": {
453
+ "type": "password"
454
+ },
455
+ "database": {
456
+ "type": "string"
457
+ },
458
+ "useNewUrlParser": {
459
+ "type": "boolean",
460
+ "message": "Feature supported by MongoDB v3.1.0 and above"
461
+ }
462
+ },
463
+ "package": {
464
+ "name": "loopback-connector-mongodb",
465
+ "version": "^5.2.3"
466
+ },
467
+ "supportedByStrongLoop": true
468
+ },
469
+ "mysql": {
470
+ "name": "mysql",
471
+ "description": "MySQL",
472
+ "baseModel": "PersistedModel",
473
+ "features": {
474
+ "discovery": true,
475
+ "migration": true
476
+ },
477
+ "settings": {
478
+ "url": {
479
+ "type": "string",
480
+ "message": "Connection String url to override other settings (eg: mysql://user:pass@host/db)"
481
+ },
482
+ "host": {
483
+ "type": "string"
484
+ },
485
+ "port": {
486
+ "type": "number"
487
+ },
488
+ "user": {
489
+ "type": "string"
490
+ },
491
+ "password": {
492
+ "type": "password"
493
+ },
494
+ "database": {
495
+ "type": "string"
496
+ }
497
+ },
498
+ "package": {
499
+ "name": "loopback-connector-mysql",
500
+ "version": "^5.3.0"
501
+ },
502
+ "supportedByStrongLoop": true
503
+ },
504
+ "postgresql": {
505
+ "name": "postgresql",
506
+ "description": "PostgreSQL",
507
+ "baseModel": "PersistedModel",
508
+ "features": {
509
+ "discovery": true,
510
+ "migration": true
511
+ },
512
+ "settings": {
513
+ "url": {
514
+ "type": "string",
515
+ "message": "Connection String url to override other settings (eg: postgres://username:password@localhost/database)"
516
+ },
517
+ "host": {
518
+ "type": "string"
519
+ },
520
+ "port": {
521
+ "type": "number"
522
+ },
523
+ "user": {
524
+ "type": "string"
525
+ },
526
+ "password": {
527
+ "type": "password"
528
+ },
529
+ "database": {
530
+ "type": "string"
531
+ }
532
+ },
533
+ "package": {
534
+ "name": "loopback-connector-postgresql",
535
+ "version": "^5.0.1"
536
+ },
537
+ "supportedByStrongLoop": true
538
+ },
539
+ "oracle": {
540
+ "name": "oracle",
541
+ "description": "Oracle",
542
+ "baseModel": "PersistedModel",
543
+ "features": {
544
+ "discovery": true,
545
+ "migration": true
546
+ },
547
+ "settings": {
548
+ "tns": {
549
+ "type": "string",
550
+ "message": "Connection String tns (eg: DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=MY_HOST)(PORT=MY_PORT))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=MY_DB)))"
551
+ },
552
+ "host": {
553
+ "type": "string"
554
+ },
555
+ "port": {
556
+ "type": "number"
557
+ },
558
+ "user": {
559
+ "type": "string"
560
+ },
561
+ "password": {
562
+ "type": "password"
563
+ },
564
+ "database": {
565
+ "type": "string"
566
+ }
567
+ },
568
+ "package": {
569
+ "name": "loopback-connector-oracle",
570
+ "version": "^4.1.0"
571
+ },
572
+ "supportedByStrongLoop": true
573
+ },
574
+ "mssql": {
575
+ "name": "mssql",
576
+ "description": "Microsoft SQL",
577
+ "baseModel": "PersistedModel",
578
+ "features": {
579
+ "discovery": true,
580
+ "migration": true
581
+ },
582
+ "settings": {
583
+ "url": {
584
+ "type": "string",
585
+ "message": "Connection String url to override other settings (eg: mssql://username:password@localhost/database)"
586
+ },
587
+ "host": {
588
+ "type": "string"
589
+ },
590
+ "port": {
591
+ "type": "number"
592
+ },
593
+ "user": {
594
+ "type": "string"
595
+ },
596
+ "password": {
597
+ "type": "password"
598
+ },
599
+ "database": {
600
+ "type": "string"
601
+ }
602
+ },
603
+ "package": {
604
+ "name": "loopback-connector-mssql",
605
+ "version": "^3.3.0"
606
+ },
607
+ "supportedByStrongLoop": true
608
+ },
609
+ "openapi": {
610
+ "name": "openapi",
611
+ "description": "OpenAPI",
612
+ "baseModel": "Model",
613
+ "features": {
614
+ "discovery": false,
615
+ "migration": false
616
+ },
617
+ "package": {
618
+ "name": "loopback-connector-openapi",
619
+ "version": "^6.0.0"
620
+ },
621
+ "settings": {
622
+ "spec": {
623
+ "type": "string",
624
+ "message": "HTTP URL/path to Swagger spec file (file name extension .yaml/.yml or .json)"
625
+ },
626
+ "validate": {
627
+ "type": "boolean",
628
+ "message": "Validate spec against Swagger spec 2.0?"
629
+ },
630
+ "authorizations": {
631
+ "type": "object",
632
+ "message": "Security config for making authenticated requests to API"
633
+ },
634
+ "positional": {
635
+ "type": "boolean",
636
+ "message": "Use positional parameters instead of named parameters?"
637
+ }
638
+ },
639
+ "supportedByStrongLoop": true
640
+ },
641
+ "rest": {
642
+ "name": "rest",
643
+ "description": "REST services",
644
+ "baseModel": "Model",
645
+ "features": {
646
+ "discovery": false,
647
+ "migration": false
648
+ },
649
+ "settings": {
650
+ "baseURL": {
651
+ "type": "string",
652
+ "message": "Base URL for the REST service"
653
+ },
654
+ "options": {
655
+ "type": "object",
656
+ "message": "Default options for the request"
657
+ },
658
+ "operations": {
659
+ "type": "array",
660
+ "message": "An array of operation templates"
661
+ },
662
+ "crud": {
663
+ "type": "boolean",
664
+ "default": false,
665
+ "message": "Use default CRUD mapping"
666
+ }
667
+ },
668
+ "package": {
669
+ "name": "loopback-connector-rest",
670
+ "version": "^3.2.0"
671
+ },
672
+ "supportedByStrongLoop": true
673
+ },
674
+ "soap": {
675
+ "name": "soap",
676
+ "description": "SOAP webservices",
677
+ "baseModel": "Model",
678
+ "features": {
679
+ "discovery": false,
680
+ "migration": false
681
+ },
682
+ "package": {
683
+ "name": "loopback-connector-soap",
684
+ "version": "^5.1.0"
685
+ },
686
+ "settings": {
687
+ "url": {
688
+ "type": "string",
689
+ "message": "URL to the SOAP web service endpoint"
690
+ },
691
+ "wsdl": {
692
+ "type": "string",
693
+ "message": "HTTP URL or local file system path to the WSDL file"
694
+ },
695
+ "remotingEnabled": {
696
+ "type": "boolean",
697
+ "message": "Expose operations as REST APIs"
698
+ },
699
+ "operations": {
700
+ "type": "object",
701
+ "message": "Maps WSDL binding operations to Node.js methods"
702
+ }
703
+ },
704
+ "supportedByStrongLoop": true
705
+ },
706
+ "couchbase": {
707
+ "name": "couchbase",
708
+ "description": "Couchbase",
709
+ "baseModel": "PersistedModel",
710
+ "features": {
711
+ "discovery": false,
712
+ "migration": false
713
+ },
714
+ "settings": {
715
+ "host": {
716
+ "type": "string"
717
+ },
718
+ "port": {
719
+ "type": "number"
720
+ },
721
+ "n1qlport": {
722
+ "type": "number"
723
+ },
724
+ "name": {
725
+ "type": "string",
726
+ "message": "The name of the datasource"
727
+ },
728
+ "connectionTimeout": {
729
+ "type": "number"
730
+ },
731
+ "operationTimeout": {
732
+ "type": "number"
733
+ },
734
+ "env": {
735
+ "type": "string",
736
+ "message": "Environment variable for debugging"
737
+ }
738
+ },
739
+ "package": {
740
+ "name": "loopback-connector-couchbase",
741
+ "version": "^1.0.6"
742
+ },
743
+ "supportedByStrongLoop": false
744
+ },
745
+ "neo4j": {
746
+ "name": "neo4j",
747
+ "description": "Neo4j",
748
+ "baseModel": "PersistedModel",
749
+ "features": {
750
+ "discovery": false,
751
+ "migration": false
752
+ },
753
+ "package": {
754
+ "name": "loopback-connector-neo4j",
755
+ "version": "^0.1.3"
756
+ },
757
+ "supportedByStrongLoop": false
758
+ },
759
+ "twilio": {
760
+ "name": "twilio",
761
+ "description": "Twilio Connector",
762
+ "baseModel": "Model",
763
+ "features": {
764
+ "discovery": false,
765
+ "migration": false
766
+ },
767
+ "settings": {
768
+ "accountSid": {
769
+ "type": "string",
770
+ "message": "Twilio Account Sid"
771
+ },
772
+ "authToken": {
773
+ "type": "string",
774
+ "message": "Twilio Account AuthToken"
775
+ }
776
+ },
777
+ "package": {
778
+ "name": "loopback-connector-twilio",
779
+ "version": "^1.0.0"
780
+ },
781
+ "supportedByStrongLoop": false
782
+ },
783
+ "kafka": {
784
+ "name": "kafka",
785
+ "description": "Kafka",
786
+ "baseModel": "PersistedModel",
787
+ "features": {
788
+ "discovery": false,
789
+ "migration": false
790
+ },
791
+ "package": {
792
+ "name": "loopback-connector-kafka",
793
+ "version": "^0.2.1"
794
+ },
795
+ "supportedByStrongLoop": false
796
+ },
797
+ "saphana": {
798
+ "name": "saphana",
799
+ "description": "SAP HANA",
800
+ "baseModel": "PersistedModel",
801
+ "features": {
802
+ "discovery": true,
803
+ "migration": true
804
+ },
805
+ "settings": {
806
+ "host": {
807
+ "type": "string"
808
+ },
809
+ "port": {
810
+ "type": "number"
811
+ },
812
+ "user": {
813
+ "type": "string"
814
+ },
815
+ "password": {
816
+ "type": "password"
817
+ },
818
+ "database": {
819
+ "type": "string"
820
+ }
821
+ },
822
+ "package": {
823
+ "name": "loopback-connector-saphana",
824
+ "version": "^0.7.2"
825
+ },
826
+ "supportedByStrongLoop": false
827
+ },
828
+ "es": {
829
+ "name": "es",
830
+ "description": "ElasticSearch",
831
+ "baseModel": "PersistedModel",
832
+ "features": {
833
+ "discovery": false,
834
+ "migration": false
835
+ },
836
+ "settings": {
837
+ "index": {
838
+ "type": "string",
839
+ "message": "ElasticSearch Index"
840
+ },
841
+ "hosts": {
842
+ "type": "array",
843
+ "message": "Hosts array"
844
+ },
845
+ "apiVersion": {
846
+ "type": "string",
847
+ "message": "API Version to use (ex: 2.2)"
848
+ },
849
+ "defaultSize": {
850
+ "type": "string",
851
+ "message": "Default results size"
852
+ },
853
+ "mappings": {
854
+ "type": "array",
855
+ "message": "Array of field mappings"
856
+ },
857
+ "settings": {
858
+ "type": "object",
859
+ "message": "Settings object"
860
+ }
861
+ },
862
+ "package": {
863
+ "name": "loopback-connector-es",
864
+ "version": "^1.4.1"
865
+ },
866
+ "supportedByStrongLoop": false
867
+ },
868
+ "zosconnectee": {
869
+ "name": "zosconnectee",
870
+ "description": "z/OS Connect Enterprise Edition",
871
+ "baseModel": "Model",
872
+ "features": {
873
+ "discovery": false,
874
+ "migration": false
875
+ },
876
+ "settings": {
877
+ "baseURL": {
878
+ "type": "string",
879
+ "message": "Base URL of the z/OS Connect Enterprise Edition server"
880
+ },
881
+ "user": {
882
+ "type": "string"
883
+ },
884
+ "password": {
885
+ "type": "password"
886
+ }
887
+ },
888
+ "package": {
889
+ "name": "loopback-connector-zosconnectee",
890
+ "version": "^1.0.0"
891
+ },
892
+ "supportedByStrongLoop": true
893
+ }
894
+ }