@oas-tools/oas-telemetry 0.1.7 → 0.1.9

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/README.md CHANGED
@@ -35,11 +35,17 @@ const customTelemetryConfig = {
35
35
 
36
36
  app.use(oasTelemetry(customTelemetryConfig));
37
37
  ```
38
- ## Some Telemetry Endpoints
38
+
39
+ ## Telemetry UI
40
+
41
+ You can access the telemetry UI in the endpoint ``/telemetry``
42
+
43
+
44
+ ## API Telemetry Endpoints
39
45
 
40
46
  OAS Telemetry middleware adds the following endpoints to your Express application:
41
47
 
42
- - /telemetry: Landing page with links to available routes.
48
+
43
49
  - /telemetry/start: Start telemetry data collection.
44
50
  - /telemetry/stop: Stop telemetry data collection.
45
51
  - /telemetry/status: Get status of telemetry.
package/dist/index.cjs CHANGED
@@ -10,12 +10,10 @@ var _v = _interopRequireDefault(require("v8"));
10
10
  var _fs = require("fs");
11
11
  var _path = _interopRequireDefault(require("path"));
12
12
  var _jsYaml = _interopRequireDefault(require("js-yaml"));
13
- var _url = require("url");
13
+ var _ui = _interopRequireDefault(require("./ui.cjs"));
14
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
15
  // telemetryMiddleware.js
16
16
 
17
- const _filename = (0, _url.fileURLToPath)(import.meta.url);
18
- const _dirname = _path.default.dirname(_filename);
19
17
  let telemetryStatus = {
20
18
  active: true
21
19
  };
@@ -36,9 +34,6 @@ function oasTelemetry(tlConfig) {
36
34
  }
37
35
  }
38
36
  const router = (0, _express.Router)();
39
-
40
- //const baseURL = telemetryConfig.baseURL;
41
-
42
37
  router.get(baseURL, mainPage);
43
38
  router.get(baseURL + "/detail/*", detailPage);
44
39
  router.get(baseURL + "/spec", specLoader);
@@ -68,18 +63,10 @@ const apiPage = (req, res) => {
68
63
  res.send(text);
69
64
  };
70
65
  const mainPage = (req, res) => {
71
- const data = (0, _fs.readFileSync)(_dirname + '/ui/main.html', {
72
- encoding: 'utf8',
73
- flag: 'r'
74
- });
75
- res.send(data);
66
+ res.send((0, _ui.default)().main);
76
67
  };
77
68
  const detailPage = (req, res) => {
78
- const data = (0, _fs.readFileSync)(_dirname + '/ui/detail.html', {
79
- encoding: 'utf8',
80
- flag: 'r'
81
- });
82
- res.send(data);
69
+ res.send((0, _ui.default)().detail);
83
70
  };
84
71
  const specLoader = (req, res) => {
85
72
  if (telemetryConfig.specFileName) {
@@ -97,7 +84,7 @@ const specLoader = (req, res) => {
97
84
  console.log(`ERROR loading spec file ${telemetryConfig.specFileName}: ${e}`);
98
85
  }
99
86
  } else {
100
- if (telemetryConfig.spec) {
87
+ if (typeof telemetryConfig.spec === 'string' || telemetryConfig.spec instanceof String) {
101
88
  let spec = false;
102
89
  try {
103
90
  spec = JSON.parse(telemetryConfig.spec);
@@ -114,6 +101,11 @@ const specLoader = (req, res) => {
114
101
  res.setHeader('Content-Type', 'application/json');
115
102
  res.send(spec);
116
103
  }
104
+ } else if (typeof telemetryConfig.spec === 'object') {
105
+ res.setHeader('Content-Type', 'application/json');
106
+ res.send(telemetryConfig.spec);
107
+ } else {
108
+ res.status(404);
117
109
  }
118
110
  }
119
111
  };