@loopback/core 4.0.0-alpha.9 → 4.0.2

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 (121) hide show
  1. package/LICENSE +25 -0
  2. package/README.md +77 -2
  3. package/dist/application.d.ts +341 -0
  4. package/dist/application.js +554 -0
  5. package/dist/application.js.map +1 -0
  6. package/dist/component.d.ts +80 -0
  7. package/dist/component.js +59 -0
  8. package/dist/component.js.map +1 -0
  9. package/dist/extension-point.d.ts +121 -0
  10. package/dist/extension-point.js +227 -0
  11. package/dist/extension-point.js.map +1 -0
  12. package/dist/index.d.ts +21 -0
  13. package/dist/index.js +31 -0
  14. package/dist/index.js.map +1 -0
  15. package/dist/keys.d.ts +97 -0
  16. package/dist/keys.js +109 -0
  17. package/dist/keys.js.map +1 -0
  18. package/dist/lifecycle-registry.d.ts +91 -0
  19. package/dist/lifecycle-registry.js +191 -0
  20. package/dist/lifecycle-registry.js.map +1 -0
  21. package/dist/lifecycle.d.ts +47 -0
  22. package/dist/lifecycle.js +56 -0
  23. package/dist/lifecycle.js.map +1 -0
  24. package/dist/mixin-target.d.ts +60 -0
  25. package/{lib6/internal-types.js → dist/mixin-target.js} +2 -3
  26. package/dist/mixin-target.js.map +1 -0
  27. package/dist/server.d.ts +16 -0
  28. package/{lib6/component.js → dist/server.js} +2 -2
  29. package/dist/server.js.map +1 -0
  30. package/dist/service.d.ts +63 -0
  31. package/dist/service.js +151 -0
  32. package/dist/service.js.map +1 -0
  33. package/package.json +39 -37
  34. package/src/application.ts +719 -0
  35. package/src/component.ts +155 -0
  36. package/src/extension-point.ts +312 -0
  37. package/src/index.ts +29 -0
  38. package/src/keys.ts +144 -0
  39. package/src/lifecycle-registry.ts +268 -0
  40. package/src/lifecycle.ts +90 -0
  41. package/src/mixin-target.ts +69 -0
  42. package/src/server.ts +22 -0
  43. package/src/service.ts +211 -0
  44. package/index.d.ts +0 -6
  45. package/index.js +0 -9
  46. package/lib/application.d.ts +0 -54
  47. package/lib/application.js +0 -81
  48. package/lib/application.js.map +0 -1
  49. package/lib/component.d.ts +0 -2
  50. package/lib/component.js +0 -7
  51. package/lib/component.js.map +0 -1
  52. package/lib/http-handler.d.ts +0 -16
  53. package/lib/http-handler.js +0 -62
  54. package/lib/http-handler.js.map +0 -1
  55. package/lib/index.d.ts +0 -17
  56. package/lib/index.js +0 -37
  57. package/lib/index.js.map +0 -1
  58. package/lib/internal-types.d.ts +0 -29
  59. package/lib/internal-types.js +0 -8
  60. package/lib/internal-types.js.map +0 -1
  61. package/lib/keys.d.ts +0 -7
  62. package/lib/keys.js +0 -16
  63. package/lib/keys.js.map +0 -1
  64. package/lib/parser.d.ts +0 -11
  65. package/lib/parser.js +0 -96
  66. package/lib/parser.js.map +0 -1
  67. package/lib/promisify.d.ts +0 -3
  68. package/lib/promisify.js +0 -34
  69. package/lib/promisify.js.map +0 -1
  70. package/lib/router/metadata.d.ts +0 -12
  71. package/lib/router/metadata.js +0 -30
  72. package/lib/router/metadata.js.map +0 -1
  73. package/lib/router/routing-table.d.ts +0 -16
  74. package/lib/router/routing-table.js +0 -97
  75. package/lib/router/routing-table.js.map +0 -1
  76. package/lib/sequence.d.ts +0 -55
  77. package/lib/sequence.js +0 -99
  78. package/lib/sequence.js.map +0 -1
  79. package/lib/server.d.ts +0 -23
  80. package/lib/server.js +0 -64
  81. package/lib/server.js.map +0 -1
  82. package/lib/writer.d.ts +0 -11
  83. package/lib/writer.js +0 -34
  84. package/lib/writer.js.map +0 -1
  85. package/lib6/application.d.ts +0 -54
  86. package/lib6/application.js +0 -81
  87. package/lib6/application.js.map +0 -1
  88. package/lib6/component.d.ts +0 -2
  89. package/lib6/component.js.map +0 -1
  90. package/lib6/http-handler.d.ts +0 -16
  91. package/lib6/http-handler.js +0 -72
  92. package/lib6/http-handler.js.map +0 -1
  93. package/lib6/index.d.ts +0 -17
  94. package/lib6/index.js +0 -37
  95. package/lib6/index.js.map +0 -1
  96. package/lib6/internal-types.d.ts +0 -29
  97. package/lib6/internal-types.js.map +0 -1
  98. package/lib6/keys.d.ts +0 -7
  99. package/lib6/keys.js +0 -16
  100. package/lib6/keys.js.map +0 -1
  101. package/lib6/parser.d.ts +0 -11
  102. package/lib6/parser.js +0 -106
  103. package/lib6/parser.js.map +0 -1
  104. package/lib6/promisify.d.ts +0 -3
  105. package/lib6/promisify.js +0 -34
  106. package/lib6/promisify.js.map +0 -1
  107. package/lib6/router/metadata.d.ts +0 -12
  108. package/lib6/router/metadata.js +0 -30
  109. package/lib6/router/metadata.js.map +0 -1
  110. package/lib6/router/routing-table.d.ts +0 -16
  111. package/lib6/router/routing-table.js +0 -97
  112. package/lib6/router/routing-table.js.map +0 -1
  113. package/lib6/sequence.d.ts +0 -55
  114. package/lib6/sequence.js +0 -109
  115. package/lib6/sequence.js.map +0 -1
  116. package/lib6/server.d.ts +0 -23
  117. package/lib6/server.js +0 -74
  118. package/lib6/server.js.map +0 -1
  119. package/lib6/writer.d.ts +0 -11
  120. package/lib6/writer.js +0 -34
  121. package/lib6/writer.js.map +0 -1
package/lib6/server.d.ts DELETED
@@ -1,23 +0,0 @@
1
- /// <reference types="node" />
2
- import { Application } from './application';
3
- import { Context } from '@loopback/context';
4
- import { ServerRequest, ServerResponse } from 'http';
5
- export declare class Server extends Context {
6
- app: Application;
7
- config: ServerConfig;
8
- state: ServerState;
9
- constructor(app: Application, config?: ServerConfig);
10
- start(): Promise<void>;
11
- protected _handleRequest(req: ServerRequest, res: ServerResponse): void;
12
- protected _onUnhandledError(req: ServerRequest, res: ServerResponse, err: Error): void;
13
- }
14
- export interface ServerConfig {
15
- port: number;
16
- }
17
- export declare enum ServerState {
18
- cold = 0,
19
- starting = 1,
20
- listening = 2,
21
- crashed = 3,
22
- stopped = 4,
23
- }
package/lib6/server.js DELETED
@@ -1,74 +0,0 @@
1
- "use strict";
2
- // Copyright IBM Corp. 2017. All Rights Reserved.
3
- // Node module: @loopback/core
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 context_1 = require("@loopback/context");
16
- const http_1 = require("http");
17
- const debug = require('debug')('loopback:core:server');
18
- class Server extends context_1.Context {
19
- constructor(app, config = { port: 3000 }) {
20
- super();
21
- this.app = app;
22
- this.config = config;
23
- this.state = ServerState.cold;
24
- }
25
- start() {
26
- return __awaiter(this, void 0, void 0, function* () {
27
- this.state = ServerState.starting;
28
- const server = http_1.createServer((req, res) => this._handleRequest(req, res));
29
- server.listen(this.config.port);
30
- return new Promise((resolve, reject) => {
31
- server.once('listening', () => {
32
- // FIXME(bajtos) The updated port number should be part of "status"
33
- // object, we shouldn't be changing original config IMO.
34
- // Consider exposing full base URL including http/https scheme prefix
35
- try {
36
- this.config.port = server.address().port;
37
- this.state = ServerState.listening;
38
- resolve();
39
- }
40
- catch (err) {
41
- reject(err);
42
- }
43
- });
44
- });
45
- });
46
- }
47
- _handleRequest(req, res) {
48
- this.app.handleHttp(req, res).catch((err) => {
49
- this._onUnhandledError(req, res, err);
50
- });
51
- }
52
- _onUnhandledError(req, res, err) {
53
- if (!res.headersSent) {
54
- res.statusCode = 500;
55
- res.end();
56
- }
57
- // It's the responsibility of the Application to handle any errors.
58
- // If an unhandled error escaped, then something very wrong happened
59
- // and it's best to crash the process immediately.
60
- process.nextTick(() => {
61
- throw err;
62
- });
63
- }
64
- }
65
- exports.Server = Server;
66
- var ServerState;
67
- (function (ServerState) {
68
- ServerState[ServerState["cold"] = 0] = "cold";
69
- ServerState[ServerState["starting"] = 1] = "starting";
70
- ServerState[ServerState["listening"] = 2] = "listening";
71
- ServerState[ServerState["crashed"] = 3] = "crashed";
72
- ServerState[ServerState["stopped"] = 4] = "stopped";
73
- })(ServerState = exports.ServerState || (exports.ServerState = {}));
74
- //# sourceMappingURL=server.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":";AAAA,iDAAiD;AACjD,8BAA8B;AAC9B,+CAA+C;AAC/C,gEAAgE;;;;;;;;;;AAGhE,+CAA0C;AAC1C,+BAAiE;AAEjE,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,sBAAsB,CAAC,CAAC;AAEvD,YAAoB,SAAQ,iBAAO;IAGjC,YACS,GAAgB,EAChB,SAAuB,EAAC,IAAI,EAAE,IAAI,EAAC;QAE1C,KAAK,EAAE,CAAC;QAHD,QAAG,GAAH,GAAG,CAAa;QAChB,WAAM,GAAN,MAAM,CAA6B;QAG1C,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC;IAChC,CAAC;IAEK,KAAK;;YACT,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC,QAAQ,CAAC;YAElC,MAAM,MAAM,GAAG,mBAAY,CAAC,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;YACzE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAGhC,MAAM,CAAC,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM;gBACvC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE;oBACvB,mEAAmE;oBACnE,wDAAwD;oBACxD,qEAAqE;oBACrE,IAAI,CAAC;wBACH,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC;wBACzC,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC,SAAS,CAAC;wBACnC,OAAO,EAAE,CAAC;oBACZ,CAAC;oBAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;wBACb,MAAM,CAAC,GAAG,CAAC,CAAC;oBACd,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;KAAA;IAES,cAAc,CAAC,GAAkB,EAAE,GAAmB;QAC9D,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,GAAU;YAC7C,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;IACL,CAAC;IAES,iBAAiB,CACzB,GAAkB,EAClB,GAAmB,EACnB,GAAU;QAEV,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;YACrB,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC;YACrB,GAAG,CAAC,GAAG,EAAE,CAAC;QACZ,CAAC;QAED,mEAAmE;QACnE,oEAAoE;QACpE,kDAAkD;QAClD,OAAO,CAAC,QAAQ,CAAC;YACf,MAAM,GAAG,CAAC;QACZ,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAzDD,wBAyDC;AAMD,IAAY,WAMX;AAND,WAAY,WAAW;IACrB,6CAAI,CAAA;IACJ,qDAAQ,CAAA;IACR,uDAAS,CAAA;IACT,mDAAO,CAAA;IACP,mDAAO,CAAA;AACT,CAAC,EANW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAMtB"}
package/lib6/writer.d.ts DELETED
@@ -1,11 +0,0 @@
1
- /// <reference types="node" />
2
- import { ServerResponse as Response } from 'http';
3
- import { OperationRetval } from './internal-types';
4
- /**
5
- * Writes the result from Application controller method
6
- * into the HTTP response
7
- *
8
- * @param response HTTP Response
9
- * @param result Result from the API to write into HTTP Response
10
- */
11
- export declare function writeResultToResponse(response: Response, result: OperationRetval): void;
package/lib6/writer.js DELETED
@@ -1,34 +0,0 @@
1
- "use strict";
2
- // Copyright IBM Corp. 2017. All Rights Reserved.
3
- // Node module: @loopback/core
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
- /**
8
- * Writes the result from Application controller method
9
- * into the HTTP response
10
- *
11
- * @param response HTTP Response
12
- * @param result Result from the API to write into HTTP Response
13
- */
14
- function writeResultToResponse(
15
- // not needed and responsibility should be in the sequence.send
16
- response,
17
- // result returned back from invoking controller method
18
- result) {
19
- if (result) {
20
- if (typeof result === 'object') {
21
- // TODO(ritch) remove this, should be configurable
22
- response.setHeader('Content-Type', 'application/json');
23
- // TODO(bajtos) handle errors - JSON.stringify can throw
24
- result = JSON.stringify(result);
25
- }
26
- else if (typeof result === 'string') {
27
- response.setHeader('Content-Type', 'text/plain');
28
- }
29
- response.write(result);
30
- }
31
- response.end();
32
- }
33
- exports.writeResultToResponse = writeResultToResponse;
34
- //# sourceMappingURL=writer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"writer.js","sourceRoot":"","sources":["../src/writer.ts"],"names":[],"mappings":";AAAA,iDAAiD;AACjD,8BAA8B;AAC9B,+CAA+C;AAC/C,gEAAgE;;AAIhE;;;;;;GAMG;AACH;IACE,+DAA+D;IAC/D,QAAkB;IAClB,uDAAuD;IACvD,MAAuB;IAEvB,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QACX,EAAE,CAAC,CAAC,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC;YAC/B,kDAAkD;YAClD,QAAQ,CAAC,SAAS,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;YACvD,wDAAwD;YACxD,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAClC,CAAC;QAAC,IAAI,CAAC,EAAE,CAAC,CAAC,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC;YACtC,QAAQ,CAAC,SAAS,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;QACnD,CAAC;QACD,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACzB,CAAC;IACD,QAAQ,CAAC,GAAG,EAAE,CAAC;AACjB,CAAC;AAlBD,sDAkBC"}