@lwrjs/core 0.15.0-alpha.32 → 0.15.0-alpha.33

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.
@@ -26,6 +26,7 @@ __markAsModule(exports);
26
26
  __export(exports, {
27
27
  viewMiddleware: () => viewMiddleware
28
28
  });
29
+ var import_util = __toModule(require("util"));
29
30
  var import_diagnostics = __toModule(require("@lwrjs/diagnostics"));
30
31
  var import_router = __toModule(require("@lwrjs/router"));
31
32
  var import_shared_utils = __toModule(require("@lwrjs/shared-utils"));
@@ -81,9 +82,13 @@ function createViewMiddleware(route, errorRoutes, context, viewHandler) {
81
82
  basePath: runtimeParams.basePath,
82
83
  locale: runtimeParams.locale
83
84
  }
84
- }, (span) => {
85
+ }, async (span) => {
85
86
  traceId = span.traceId;
86
- return resolve.call(viewHandler, viewRequest, route, runtimeEnvironment, runtimeParams);
87
+ const res2 = await resolve.call(viewHandler, viewRequest, route, runtimeEnvironment, runtimeParams);
88
+ span.setAttributes({
89
+ size: byteSize(res2.body)
90
+ });
91
+ return res2;
87
92
  });
88
93
  resolvedRoute = route;
89
94
  } catch (err) {
@@ -187,7 +192,6 @@ function createConfigMiddleware(routes, context, viewHandler) {
187
192
  res.setHeader("cache-control", `public, max-age=${cacheTtl}`);
188
193
  }
189
194
  }
190
- res.status(200);
191
195
  res.type("application/javascript");
192
196
  res.status(viewResponse.status || 200);
193
197
  res.send(viewResponse.body);
@@ -252,3 +256,11 @@ function addRedirectQueryParam(redirectUrl, depth) {
252
256
  url.searchParams.set(import_shared_utils.REQUEST_DEPTH_KEY, String(depth + 1));
253
257
  return url.toString().replace(fakeOrigin, "");
254
258
  }
259
+ function byteSize(body) {
260
+ if (Buffer.isBuffer(body)) {
261
+ return body.length;
262
+ } else if (typeof body === "string") {
263
+ return new import_util.TextEncoder().encode(body).length;
264
+ }
265
+ return -1;
266
+ }
@@ -1,3 +1,4 @@
1
+ import { TextEncoder } from 'util';
1
2
  import { descriptions, logger } from '@lwrjs/diagnostics';
2
3
  import { getClientRoutes } from '@lwrjs/router';
3
4
  import { decodeViewPath, extractRequestParams, getClientBootstrapConfigurationRoutes, isURL, parseRequestDepth, REQUEST_DEPTH_KEY, shortestTtl, } from '@lwrjs/shared-utils';
@@ -55,9 +56,14 @@ function createViewMiddleware(route, errorRoutes, context, viewHandler) {
55
56
  basePath: runtimeParams.basePath,
56
57
  locale: runtimeParams.locale,
57
58
  },
58
- }, (span) => {
59
+ }, async (span) => {
59
60
  traceId = span.traceId;
60
- return resolve.call(viewHandler, viewRequest, route, runtimeEnvironment, runtimeParams);
61
+ const res = await resolve.call(viewHandler, viewRequest, route, runtimeEnvironment, runtimeParams);
62
+ // Add the view size metric
63
+ span.setAttributes({
64
+ size: byteSize(res.body),
65
+ });
66
+ return res;
61
67
  });
62
68
  resolvedRoute = route;
63
69
  }
@@ -177,7 +183,6 @@ function createConfigMiddleware(routes, context, viewHandler) {
177
183
  res.setHeader('cache-control', `public, max-age=${cacheTtl}`);
178
184
  }
179
185
  }
180
- res.status(200);
181
186
  res.type('application/javascript');
182
187
  res.status(viewResponse.status || 200);
183
188
  res.send(viewResponse.body);
@@ -261,4 +266,15 @@ function addRedirectQueryParam(redirectUrl, depth) {
261
266
  url.searchParams.set(REQUEST_DEPTH_KEY, String(depth + 1));
262
267
  return url.toString().replace(fakeOrigin, '');
263
268
  }
269
+ // Get number of bytes from a string. Different char encodings can effect size per char.
270
+ function byteSize(body) {
271
+ if (Buffer.isBuffer(body)) {
272
+ return body.length;
273
+ }
274
+ else if (typeof body === 'string') {
275
+ return new TextEncoder().encode(body).length; // Get byte size of the string
276
+ }
277
+ // Return -1 if JSON or undefined
278
+ return -1;
279
+ }
264
280
  //# sourceMappingURL=view-middleware.js.map
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
7
- "version": "0.15.0-alpha.32",
7
+ "version": "0.15.0-alpha.33",
8
8
  "homepage": "https://developer.salesforce.com/docs/platform/lwr/overview",
9
9
  "repository": {
10
10
  "type": "git",
@@ -43,34 +43,34 @@
43
43
  "build": "tsc -b"
44
44
  },
45
45
  "dependencies": {
46
- "@lwrjs/app-service": "0.15.0-alpha.32",
47
- "@lwrjs/asset-registry": "0.15.0-alpha.32",
48
- "@lwrjs/asset-transformer": "0.15.0-alpha.32",
49
- "@lwrjs/base-view-provider": "0.15.0-alpha.32",
50
- "@lwrjs/base-view-transformer": "0.15.0-alpha.32",
51
- "@lwrjs/client-modules": "0.15.0-alpha.32",
52
- "@lwrjs/config": "0.15.0-alpha.32",
53
- "@lwrjs/diagnostics": "0.15.0-alpha.32",
54
- "@lwrjs/esbuild": "0.15.0-alpha.32",
55
- "@lwrjs/fs-asset-provider": "0.15.0-alpha.32",
56
- "@lwrjs/fs-watch": "0.15.0-alpha.32",
57
- "@lwrjs/html-view-provider": "0.15.0-alpha.32",
58
- "@lwrjs/instrumentation": "0.15.0-alpha.32",
59
- "@lwrjs/loader": "0.15.0-alpha.32",
60
- "@lwrjs/lwc-module-provider": "0.15.0-alpha.32",
61
- "@lwrjs/lwc-ssr": "0.15.0-alpha.32",
62
- "@lwrjs/markdown-view-provider": "0.15.0-alpha.32",
63
- "@lwrjs/module-bundler": "0.15.0-alpha.32",
64
- "@lwrjs/module-registry": "0.15.0-alpha.32",
65
- "@lwrjs/npm-module-provider": "0.15.0-alpha.32",
66
- "@lwrjs/nunjucks-view-provider": "0.15.0-alpha.32",
67
- "@lwrjs/o11y": "0.15.0-alpha.32",
68
- "@lwrjs/resource-registry": "0.15.0-alpha.32",
69
- "@lwrjs/router": "0.15.0-alpha.32",
70
- "@lwrjs/server": "0.15.0-alpha.32",
71
- "@lwrjs/shared-utils": "0.15.0-alpha.32",
72
- "@lwrjs/static": "0.15.0-alpha.32",
73
- "@lwrjs/view-registry": "0.15.0-alpha.32",
46
+ "@lwrjs/app-service": "0.15.0-alpha.33",
47
+ "@lwrjs/asset-registry": "0.15.0-alpha.33",
48
+ "@lwrjs/asset-transformer": "0.15.0-alpha.33",
49
+ "@lwrjs/base-view-provider": "0.15.0-alpha.33",
50
+ "@lwrjs/base-view-transformer": "0.15.0-alpha.33",
51
+ "@lwrjs/client-modules": "0.15.0-alpha.33",
52
+ "@lwrjs/config": "0.15.0-alpha.33",
53
+ "@lwrjs/diagnostics": "0.15.0-alpha.33",
54
+ "@lwrjs/esbuild": "0.15.0-alpha.33",
55
+ "@lwrjs/fs-asset-provider": "0.15.0-alpha.33",
56
+ "@lwrjs/fs-watch": "0.15.0-alpha.33",
57
+ "@lwrjs/html-view-provider": "0.15.0-alpha.33",
58
+ "@lwrjs/instrumentation": "0.15.0-alpha.33",
59
+ "@lwrjs/loader": "0.15.0-alpha.33",
60
+ "@lwrjs/lwc-module-provider": "0.15.0-alpha.33",
61
+ "@lwrjs/lwc-ssr": "0.15.0-alpha.33",
62
+ "@lwrjs/markdown-view-provider": "0.15.0-alpha.33",
63
+ "@lwrjs/module-bundler": "0.15.0-alpha.33",
64
+ "@lwrjs/module-registry": "0.15.0-alpha.33",
65
+ "@lwrjs/npm-module-provider": "0.15.0-alpha.33",
66
+ "@lwrjs/nunjucks-view-provider": "0.15.0-alpha.33",
67
+ "@lwrjs/o11y": "0.15.0-alpha.33",
68
+ "@lwrjs/resource-registry": "0.15.0-alpha.33",
69
+ "@lwrjs/router": "0.15.0-alpha.33",
70
+ "@lwrjs/server": "0.15.0-alpha.33",
71
+ "@lwrjs/shared-utils": "0.15.0-alpha.33",
72
+ "@lwrjs/static": "0.15.0-alpha.33",
73
+ "@lwrjs/view-registry": "0.15.0-alpha.33",
74
74
  "chokidar": "^3.6.0",
75
75
  "esbuild": "^0.9.7",
76
76
  "fs-extra": "^11.2.0",
@@ -80,7 +80,7 @@
80
80
  "ws": "^8.18.0"
81
81
  },
82
82
  "devDependencies": {
83
- "@lwrjs/types": "0.15.0-alpha.32",
83
+ "@lwrjs/types": "0.15.0-alpha.33",
84
84
  "@types/ws": "^8.5.12",
85
85
  "memfs": "^4.13.0"
86
86
  },
@@ -93,5 +93,5 @@
93
93
  "volta": {
94
94
  "extends": "../../../package.json"
95
95
  },
96
- "gitHead": "0c204463b639ce4a03bcb7963fe2a7eee5d62313"
96
+ "gitHead": "0e636fb16ede654870100f5fa3bb5b3985a3db00"
97
97
  }