@rudderjs/pulse 5.0.0 → 6.1.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 (86) hide show
  1. package/README.md +16 -16
  2. package/boost/guidelines.md +22 -11
  3. package/dist/api/routes.d.ts +11 -4
  4. package/dist/api/routes.d.ts.map +1 -1
  5. package/dist/api/routes.js +117 -135
  6. package/dist/api/routes.js.map +1 -1
  7. package/dist/index.d.ts +10 -9
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +35 -31
  10. package/dist/index.js.map +1 -1
  11. package/dist/recorders/cache.d.ts +11 -0
  12. package/dist/recorders/cache.d.ts.map +1 -0
  13. package/dist/{aggregators → recorders}/cache.js +2 -2
  14. package/dist/recorders/cache.js.map +1 -0
  15. package/dist/recorders/exception.d.ts +11 -0
  16. package/dist/recorders/exception.d.ts.map +1 -0
  17. package/dist/{aggregators → recorders}/exception.js +2 -2
  18. package/dist/recorders/exception.js.map +1 -0
  19. package/dist/{aggregators → recorders}/query.d.ts +3 -3
  20. package/dist/recorders/query.d.ts.map +1 -0
  21. package/dist/{aggregators → recorders}/query.js +2 -2
  22. package/dist/recorders/query.js.map +1 -0
  23. package/dist/recorders/queue.d.ts +19 -0
  24. package/dist/recorders/queue.d.ts.map +1 -0
  25. package/dist/recorders/queue.js +52 -0
  26. package/dist/recorders/queue.js.map +1 -0
  27. package/dist/{aggregators → recorders}/request.d.ts +3 -3
  28. package/dist/recorders/request.d.ts.map +1 -0
  29. package/dist/{aggregators → recorders}/request.js +2 -2
  30. package/dist/recorders/request.js.map +1 -0
  31. package/dist/{aggregators → recorders}/server.d.ts +3 -3
  32. package/dist/recorders/server.d.ts.map +1 -0
  33. package/dist/{aggregators → recorders}/server.js +2 -2
  34. package/dist/recorders/server.js.map +1 -0
  35. package/dist/{aggregators → recorders}/user.d.ts +3 -3
  36. package/dist/recorders/user.d.ts.map +1 -0
  37. package/dist/{aggregators → recorders}/user.js +2 -2
  38. package/dist/recorders/user.js.map +1 -0
  39. package/dist/routes.d.ts +23 -0
  40. package/dist/routes.d.ts.map +1 -0
  41. package/dist/routes.js +44 -0
  42. package/dist/routes.js.map +1 -0
  43. package/dist/types.d.ts +1 -1
  44. package/dist/types.d.ts.map +1 -1
  45. package/dist/types.js.map +1 -1
  46. package/dist/views/vanilla/Dashboard.d.ts +11 -0
  47. package/dist/views/vanilla/Dashboard.d.ts.map +1 -0
  48. package/dist/{ui/dashboard.js → views/vanilla/Dashboard.js} +11 -7
  49. package/dist/views/vanilla/Dashboard.js.map +1 -0
  50. package/dist/views/vanilla/Layout.d.ts +13 -0
  51. package/dist/views/vanilla/Layout.d.ts.map +1 -0
  52. package/dist/{ui/layout.js → views/vanilla/Layout.js} +8 -15
  53. package/dist/views/vanilla/Layout.js.map +1 -0
  54. package/dist/views/vanilla/_html.d.ts +28 -0
  55. package/dist/views/vanilla/_html.d.ts.map +1 -0
  56. package/dist/views/vanilla/_html.js +56 -0
  57. package/dist/views/vanilla/_html.js.map +1 -0
  58. package/dist/views/vanilla/index.d.ts +4 -0
  59. package/dist/views/vanilla/index.d.ts.map +1 -0
  60. package/dist/views/vanilla/index.js +4 -0
  61. package/dist/views/vanilla/index.js.map +1 -0
  62. package/package.json +9 -8
  63. package/dist/aggregators/cache.d.ts +0 -11
  64. package/dist/aggregators/cache.d.ts.map +0 -1
  65. package/dist/aggregators/cache.js.map +0 -1
  66. package/dist/aggregators/exception.d.ts +0 -11
  67. package/dist/aggregators/exception.d.ts.map +0 -1
  68. package/dist/aggregators/exception.js.map +0 -1
  69. package/dist/aggregators/query.d.ts.map +0 -1
  70. package/dist/aggregators/query.js.map +0 -1
  71. package/dist/aggregators/queue.d.ts +0 -12
  72. package/dist/aggregators/queue.d.ts.map +0 -1
  73. package/dist/aggregators/queue.js +0 -43
  74. package/dist/aggregators/queue.js.map +0 -1
  75. package/dist/aggregators/request.d.ts.map +0 -1
  76. package/dist/aggregators/request.js.map +0 -1
  77. package/dist/aggregators/server.d.ts.map +0 -1
  78. package/dist/aggregators/server.js.map +0 -1
  79. package/dist/aggregators/user.d.ts.map +0 -1
  80. package/dist/aggregators/user.js.map +0 -1
  81. package/dist/ui/dashboard.d.ts +0 -5
  82. package/dist/ui/dashboard.d.ts.map +0 -1
  83. package/dist/ui/dashboard.js.map +0 -1
  84. package/dist/ui/layout.d.ts +0 -6
  85. package/dist/ui/layout.d.ts.map +0 -1
  86. package/dist/ui/layout.js.map +0 -1
@@ -0,0 +1,56 @@
1
+ /**
2
+ * Tiny HTML templating helper — inlined from `@rudderjs/view`'s `html\`\``,
3
+ * `escapeHtml`, and `SafeString` so pulse doesn't need to pull
4
+ * `@rudderjs/view` (which has a `vike` peer dep that's unwanted baggage
5
+ * for a self-contained debug tool).
6
+ *
7
+ * Mirrors the same helper used by `@rudderjs/telescope` and
8
+ * `@rudderjs/horizon`. If `@rudderjs/view` ever drops the Vike peer or
9
+ * splits the HTML helpers into a separate package, this file can be
10
+ * replaced with a one-line `export ... from '@rudderjs/view'`.
11
+ *
12
+ * Semantics:
13
+ * - Primitives are escaped via `escapeHtml`
14
+ * - `null`/`undefined`/`false` render as empty string
15
+ * - Arrays recursively render and join (no separator)
16
+ * - `SafeString` instances pass through unchanged (escape hatch for
17
+ * composing nested templates or injecting trusted markup)
18
+ */
19
+ export class SafeString {
20
+ value;
21
+ constructor(value) {
22
+ this.value = value;
23
+ }
24
+ toString() { return this.value; }
25
+ }
26
+ export function escapeHtml(value) {
27
+ if (value === null || value === undefined)
28
+ return '';
29
+ return String(value)
30
+ .replace(/&/g, '&')
31
+ .replace(/</g, '&lt;')
32
+ .replace(/>/g, '&gt;')
33
+ .replace(/"/g, '&quot;')
34
+ .replace(/'/g, '&#39;');
35
+ }
36
+ function renderHtmlValue(value) {
37
+ if (value === null || value === undefined || value === false)
38
+ return '';
39
+ if (value instanceof SafeString)
40
+ return value.value;
41
+ if (Array.isArray(value))
42
+ return value.map(renderHtmlValue).join('');
43
+ return escapeHtml(value);
44
+ }
45
+ export function html(strings, ...values) {
46
+ let out = strings[0] ?? '';
47
+ for (let i = 0; i < values.length; i++) {
48
+ out += renderHtmlValue(values[i]) + (strings[i + 1] ?? '');
49
+ }
50
+ return new SafeString(out);
51
+ }
52
+ /** Wrap pre-rendered, trusted HTML so it passes through `html\`\`` interpolation unchanged. */
53
+ export function raw(value) {
54
+ return new SafeString(value);
55
+ }
56
+ //# sourceMappingURL=_html.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_html.js","sourceRoot":"","sources":["../../../src/views/vanilla/_html.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,MAAM,OAAO,UAAU;IACO;IAA5B,YAA4B,KAAa;QAAb,UAAK,GAAL,KAAK,CAAQ;IAAG,CAAC;IAC7C,QAAQ,KAAa,OAAO,IAAI,CAAC,KAAK,CAAA,CAAC,CAAC;CACzC;AAED,MAAM,UAAU,UAAU,CAAC,KAAc;IACvC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,EAAE,CAAA;IACpD,OAAO,MAAM,CAAC,KAAK,CAAC;SACjB,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;SACvB,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;AAC3B,CAAC;AAED,SAAS,eAAe,CAAC,KAAc;IACrC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,KAAK;QAAE,OAAO,EAAE,CAAA;IACvE,IAAI,KAAK,YAAY,UAAU;QAAE,OAAO,KAAK,CAAC,KAAK,CAAA;IACnD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACpE,OAAO,UAAU,CAAC,KAAK,CAAC,CAAA;AAC1B,CAAC;AAED,MAAM,UAAU,IAAI,CAAC,OAA6B,EAAE,GAAG,MAAiB;IACtE,IAAI,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;IAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;IAC5D,CAAC;IACD,OAAO,IAAI,UAAU,CAAC,GAAG,CAAC,CAAA;AAC5B,CAAC;AAED,+FAA+F;AAC/F,MAAM,UAAU,GAAG,CAAC,KAAa;IAC/B,OAAO,IAAI,UAAU,CAAC,KAAK,CAAC,CAAA;AAC9B,CAAC"}
@@ -0,0 +1,4 @@
1
+ export { Layout, type LayoutProps } from './Layout.js';
2
+ export { Dashboard, type DashboardProps } from './Dashboard.js';
3
+ export { html, raw, escapeHtml, SafeString } from './_html.js';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/vanilla/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAA;AACtD,OAAO,EAAE,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/D,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA"}
@@ -0,0 +1,4 @@
1
+ export { Layout } from './Layout.js';
2
+ export { Dashboard } from './Dashboard.js';
3
+ export { html, raw, escapeHtml, SafeString } from './_html.js';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/views/vanilla/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAoB,MAAM,aAAa,CAAA;AACtD,OAAO,EAAE,SAAS,EAAuB,MAAM,gBAAgB,CAAA;AAC/D,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rudderjs/pulse",
3
- "version": "5.0.0",
3
+ "version": "6.1.0",
4
4
  "rudderjs": {
5
5
  "provider": "PulseProvider",
6
6
  "stage": "monitoring"
@@ -25,16 +25,16 @@
25
25
  }
26
26
  },
27
27
  "dependencies": {
28
- "@rudderjs/core": "^1.0.0",
29
- "@rudderjs/contracts": "^1.0.0"
28
+ "@rudderjs/contracts": "^1.1.0",
29
+ "@rudderjs/core": "^1.0.0"
30
30
  },
31
31
  "peerDependencies": {
32
- "@rudderjs/router": "^1.0.0",
33
32
  "@rudderjs/middleware": "^1.0.0",
34
- "@rudderjs/log": "^1.0.0",
33
+ "@rudderjs/router": "^1.0.0",
34
+ "@rudderjs/orm": "^1.3.0",
35
35
  "@rudderjs/cache": "^1.0.0",
36
- "@rudderjs/orm": "^1.0.0",
37
- "@rudderjs/queue": "^4.0.0"
36
+ "@rudderjs/log": "^1.0.0",
37
+ "@rudderjs/queue": "^4.1.0"
38
38
  },
39
39
  "peerDependenciesMeta": {
40
40
  "@rudderjs/log": {
@@ -56,7 +56,8 @@
56
56
  "devDependencies": {
57
57
  "@types/node": "^20.0.0",
58
58
  "@types/better-sqlite3": "^7.6.0",
59
- "typescript": "^5.4.0"
59
+ "typescript": "^5.4.0",
60
+ "@rudderjs/queue": "^4.1.0"
60
61
  },
61
62
  "author": "Suleiman Shahbari",
62
63
  "scripts": {
@@ -1,11 +0,0 @@
1
- import type { Aggregator, PulseStorage } from '../types.js';
2
- /**
3
- * Tracks cache hit/miss ratio by wrapping the CacheRegistry adapter.
4
- */
5
- export declare class CacheAggregator implements Aggregator {
6
- private readonly storage;
7
- readonly name = "Cache Aggregator";
8
- constructor(storage: PulseStorage);
9
- register(): Promise<void>;
10
- }
11
- //# sourceMappingURL=cache.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../src/aggregators/cache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE3D;;GAEG;AACH,qBAAa,eAAgB,YAAW,UAAU;IAGpC,OAAO,CAAC,QAAQ,CAAC,OAAO;IAFpC,QAAQ,CAAC,IAAI,sBAAqB;gBAEL,OAAO,EAAE,YAAY;IAE5C,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAsBhC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../src/aggregators/cache.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,OAAO,eAAe;IAGG;IAFpB,IAAI,GAAG,kBAAkB,CAAA;IAElC,YAA6B,OAAqB;QAArB,YAAO,GAAP,OAAO,CAAc;IAAG,CAAC;IAEtD,KAAK,CAAC,QAAQ;QACZ,IAAI,CAAC;YACH,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAA;YACzD,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,EAAE,CAAA;YACnC,IAAI,CAAC,OAAO;gBAAE,OAAM;YAEpB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAA;YAC5B,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAExC;YAAC,OAA8C,CAAC,KAAK,CAAC,GAAG,KAAK,EAAe,GAAW,EAAqB,EAAE;gBAC9G,MAAM,KAAK,GAAG,MAAO,OAA8C,CAAC,GAAG,CAAC,CAAA;gBACxE,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;oBACnB,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,CAAA;gBACjC,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC,CAAA;gBACnC,CAAC;gBACD,OAAO,KAAK,CAAA;YACd,CAAC,CAAA;QACH,CAAC;QAAC,MAAM,CAAC;YACP,uCAAuC;QACzC,CAAC;IACH,CAAC;CACF"}
@@ -1,11 +0,0 @@
1
- import type { Aggregator, PulseStorage } from '../types.js';
2
- /**
3
- * Tracks exception count over time by hooking into the exception reporter.
4
- */
5
- export declare class ExceptionAggregator implements Aggregator {
6
- private readonly storage;
7
- readonly name = "Exception Aggregator";
8
- constructor(storage: PulseStorage);
9
- register(): Promise<void>;
10
- }
11
- //# sourceMappingURL=exception.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"exception.d.ts","sourceRoot":"","sources":["../../src/aggregators/exception.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE3D;;GAEG;AACH,qBAAa,mBAAoB,YAAW,UAAU;IAGxC,OAAO,CAAC,QAAQ,CAAC,OAAO;IAFpC,QAAQ,CAAC,IAAI,0BAAyB;gBAET,OAAO,EAAE,YAAY;IAE5C,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAuBhC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"exception.js","sourceRoot":"","sources":["../../src/aggregators/exception.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,OAAO,mBAAmB;IAGD;IAFpB,IAAI,GAAG,sBAAsB,CAAA;IAEtC,YAA6B,OAAqB;QAArB,YAAO,GAAP,OAAO,CAAc;IAAG,CAAC;IAEtD,KAAK,CAAC,QAAQ;QACZ,IAAI,CAAC;YACH,MAAM,EAAE,oBAAoB,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAGrE,CAAA;YAED,MAAM,OAAO,GAAU,IAAI,CAAC,OAAO,CAAA;YACnC,MAAM,cAAc,GAAG,MAAM,CAAA;YAE7B,oBAAoB,CAAC,CAAC,GAAY,EAAE,EAAE;gBACpC,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,CAAA;gBAC/B,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAA;gBACpC,OAAO,CAAC,UAAU,CAAC,WAAW,EAAE;oBAC9B,KAAK,EAAI,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;oBACnD,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBAC7C,CAAC,CAAA;gBACF,cAAc,CAAC,GAAG,CAAC,CAAA;YACrB,CAAC,CAAC,CAAA;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,kBAAkB;QACpB,CAAC;IACH,CAAC;CACF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/aggregators/query.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAExE;;GAEG;AACH,qBAAa,eAAgB,YAAW,UAAU;IAI9C,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAJzB,QAAQ,CAAC,IAAI,sBAAqB;gBAGf,OAAO,EAAE,YAAY,EACrB,MAAM,EAAG,WAAW;IAGjC,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CA4BhC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/aggregators/query.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,OAAO,eAAe;IAIP;IACA;IAJV,IAAI,GAAG,kBAAkB,CAAA;IAElC,YACmB,OAAqB,EACrB,MAAoB;QADpB,YAAO,GAAP,OAAO,CAAc;QACrB,WAAM,GAAN,MAAM,CAAc;IACpC,CAAC;IAEJ,KAAK,CAAC,QAAQ;QACZ,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAA;YACzC,MAAM,QAAQ,GAAG,GAAG,CAAC,aAEpB,CAAA;YACD,IAAI,CAAC,QAAQ,CAAC,UAAU;gBAAE,OAAM;YAEhC,MAAM,OAAO,GAAG,QAAQ,CAAC,UAAU,EAAE,CAAA;YACrC,IAAI,CAAC,OAAO,EAAE,OAAO;gBAAE,OAAM;YAE7B,MAAM,OAAO,GAAK,IAAI,CAAC,OAAO,CAAA;YAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,kBAAkB,IAAI,GAAG,CAAA;YAEvD,OAAO,CAAC,OAAO,CAAC,CAAC,IAAe,EAAE,EAAE;gBAClC,IAAI,IAAI,CAAC,QAAQ,GAAG,SAAS,EAAE,CAAC;oBAC9B,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE;wBAC/B,GAAG,EAAO,IAAI,CAAC,GAAG;wBAClB,QAAQ,EAAE,IAAI,CAAC,QAAQ;wBACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;wBACvB,KAAK,EAAK,IAAI,CAAC,KAAK;qBACrB,CAAC,CAAA;gBACJ,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,qCAAqC;QACvC,CAAC;IACH,CAAC;CACF"}
@@ -1,12 +0,0 @@
1
- import type { Aggregator, PulseStorage } from '../types.js';
2
- /**
3
- * Tracks queue throughput, wait time, and failed jobs.
4
- * Wraps the QueueRegistry adapter's dispatch method.
5
- */
6
- export declare class QueueAggregator implements Aggregator {
7
- private readonly storage;
8
- readonly name = "Queue Aggregator";
9
- constructor(storage: PulseStorage);
10
- register(): Promise<void>;
11
- }
12
- //# sourceMappingURL=queue.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../src/aggregators/queue.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE3D;;;GAGG;AACH,qBAAa,eAAgB,YAAW,UAAU;IAGpC,OAAO,CAAC,QAAQ,CAAC,OAAO;IAFpC,QAAQ,CAAC,IAAI,sBAAqB;gBAEL,OAAO,EAAE,YAAY;IAE5C,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAiChC"}
@@ -1,43 +0,0 @@
1
- /**
2
- * Tracks queue throughput, wait time, and failed jobs.
3
- * Wraps the QueueRegistry adapter's dispatch method.
4
- */
5
- export class QueueAggregator {
6
- storage;
7
- name = 'Queue Aggregator';
8
- constructor(storage) {
9
- this.storage = storage;
10
- }
11
- async register() {
12
- try {
13
- const { QueueRegistry } = await import('@rudderjs/queue');
14
- const adapter = QueueRegistry.get();
15
- if (!adapter)
16
- return;
17
- const storage = this.storage;
18
- const originalDispatch = adapter.dispatch.bind(adapter);
19
- adapter['dispatch'] = async (job, options) => {
20
- const dispatchedAt = Date.now();
21
- try {
22
- await originalDispatch(job, options);
23
- const duration = Date.now() - dispatchedAt;
24
- storage.record('queue_throughput', 1);
25
- storage.record('queue_wait_time', duration);
26
- }
27
- catch (err) {
28
- storage.record('queue_throughput', 1);
29
- const j = job;
30
- storage.storeEntry('failed_job', {
31
- class: j.constructor.name,
32
- exception: err instanceof Error ? err.message : String(err),
33
- });
34
- throw err;
35
- }
36
- };
37
- }
38
- catch {
39
- // @rudderjs/queue not installed — skip
40
- }
41
- }
42
- }
43
- //# sourceMappingURL=queue.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../src/aggregators/queue.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,OAAO,eAAe;IAGG;IAFpB,IAAI,GAAG,kBAAkB,CAAA;IAElC,YAA6B,OAAqB;QAArB,YAAO,GAAP,OAAO,CAAc;IAAG,CAAC;IAEtD,KAAK,CAAC,QAAQ;QACZ,IAAI,CAAC;YACH,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAA;YACzD,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,EAAE,CAAA;YACnC,IAAI,CAAC,OAAO;gBAAE,OAAM;YAEpB,MAAM,OAAO,GAAY,IAAI,CAAC,OAAO,CAAA;YACrC,MAAM,gBAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAEtD;YAAC,OAA8C,CAAC,UAAU,CAAC,GAAG,KAAK,EAClE,GAAY,EACZ,OAAiB,EACF,EAAE;gBACjB,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;gBAC/B,IAAI,CAAC;oBACH,MAAO,gBAA0D,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;oBAC/E,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,YAAY,CAAA;oBAC1C,OAAO,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAA;oBACrC,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAA;gBAC7C,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,OAAO,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAA;oBACrC,MAAM,CAAC,GAAG,GAAwC,CAAA;oBAClD,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE;wBAC/B,KAAK,EAAM,CAAC,CAAC,WAAW,CAAC,IAAI;wBAC7B,SAAS,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;qBAC5D,CAAC,CAAA;oBACF,MAAM,GAAG,CAAA;gBACX,CAAC;YACH,CAAC,CAAA;QACH,CAAC;QAAC,MAAM,CAAC;YACP,uCAAuC;QACzC,CAAC;IACH,CAAC;CACF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../src/aggregators/request.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAClE,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAGxE;;;GAGG;AACH,qBAAa,iBAAkB,YAAW,UAAU;IAIhD,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAJzB,QAAQ,CAAC,IAAI,wBAAuB;gBAGjB,OAAO,EAAE,YAAY,EACrB,MAAM,EAAG,WAAW;IAGvC,QAAQ,IAAI,IAAI;IAIhB,UAAU,KAKM,KAAK,UAAU,EAAE,KAAK,WAAW,EAAE,MAAM,MAAM,OAAO,CAAC,IAAI,CAAC;CAyB7E"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"request.js","sourceRoot":"","sources":["../../src/aggregators/request.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAErC;;;GAGG;AACH,MAAM,OAAO,iBAAiB;IAIT;IACA;IAJV,IAAI,GAAG,oBAAoB,CAAA;IAEpC,YACmB,OAAqB,EACrB,MAAoB;QADpB,YAAO,GAAP,OAAO,CAAc;QACrB,WAAM,GAAN,MAAM,CAAc;IACpC,CAAC;IAEJ,QAAQ;QACN,mDAAmD;IACrD,CAAC;IAED,UAAU;QACR,MAAM,OAAO,GAAK,IAAI,CAAC,OAAO,CAAA;QAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,oBAAoB,IAAI,IAAI,CAAA;QAC1D,MAAM,MAAM,GAAM,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,OAAO,CAAA;QAE7C,OAAO,KAAK,EAAE,GAAe,EAAE,GAAgB,EAAE,IAAyB,EAAE,EAAE;YAC5E,0BAA0B;YAC1B,IAAI,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,MAAM,EAAE,CAAC;gBAAE,OAAO,IAAI,EAAE,CAAA;YACpD,uDAAuD;YACvD,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,OAAO,IAAI,EAAE,CAAA;YAEpC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;YACxB,MAAM,IAAI,EAAE,CAAA;YACZ,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAA;YAEnC,oBAAoB;YACpB,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC,CAAA;YAClC,OAAO,CAAC,MAAM,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAA;YAE5C,qBAAqB;YACrB,IAAI,QAAQ,GAAG,SAAS,EAAE,CAAC;gBACzB,OAAO,CAAC,UAAU,CAAC,cAAc,EAAE;oBACjC,MAAM,EAAI,GAAG,CAAC,MAAM;oBACpB,GAAG,EAAO,GAAG,CAAC,GAAG;oBACjB,IAAI,EAAM,GAAG,CAAC,IAAI;oBAClB,QAAQ;iBACT,CAAC,CAAA;YACJ,CAAC;QACH,CAAC,CAAA;IACH,CAAC;CACF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/aggregators/server.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE3D;;GAEG;AACH,qBAAa,gBAAiB,YAAW,UAAU;IAI/C,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAJ7B,QAAQ,CAAC,IAAI,uBAAsB;gBAGhB,OAAO,EAAE,YAAY,EACrB,UAAU,GAAE,MAAe;IAG9C,QAAQ,IAAI,IAAI;IAOhB,OAAO,CAAC,OAAO;CAiBhB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/aggregators/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAGjD;;GAEG;AACH,MAAM,OAAO,gBAAgB;IAIR;IACA;IAJV,IAAI,GAAG,mBAAmB,CAAA;IAEnC,YACmB,OAAqB,EACrB,aAAqB,MAAM;QAD3B,YAAO,GAAP,OAAO,CAAc;QACrB,eAAU,GAAV,UAAU,CAAiB;IAC3C,CAAC;IAEJ,QAAQ;QACN,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;QAChE,KAAK,CAAC,KAAK,EAAE,CAAA;QACb,2BAA2B;QAC3B,IAAI,CAAC,OAAO,EAAE,CAAA;IAChB,CAAC;IAEO,OAAO;QACb,0CAA0C;QAC1C,MAAM,KAAK,GAAG,IAAI,EAAE,CAAA;QACpB,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;YAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;YAClE,MAAM,IAAI,GAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAA;YAC7B,OAAO,GAAG,GAAG,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC,GAAG,GAAG,CAAA;QAC7C,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAA;QAEpB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,CAAA;QAErE,2BAA2B;QAC3B,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;QACxB,MAAM,IAAI,GAAI,OAAO,EAAE,CAAA;QACvB,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC,GAAG,GAAG,CAAA;QAClD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,CAAA;IAC3E,CAAC;CACF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../src/aggregators/user.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAClE,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAG3D;;;GAGG;AACH,qBAAa,cAAe,YAAW,UAAU;IAKnC,OAAO,CAAC,QAAQ,CAAC,OAAO;IAJpC,QAAQ,CAAC,IAAI,qBAAoB;IACjC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAoB;IACzC,OAAO,CAAC,aAAa,CAAI;gBAEI,OAAO,EAAE,YAAY;IAElD,QAAQ,IAAI,IAAI;IAIhB,UAAU,KAGM,KAAK,UAAU,EAAE,MAAM,WAAW,EAAE,MAAM,MAAM,OAAO,CAAC,IAAI,CAAC;IAoB7E,OAAO,CAAC,YAAY;CAWrB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"user.js","sourceRoot":"","sources":["../../src/aggregators/user.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAErC;;;GAGG;AACH,MAAM,OAAO,cAAc;IAKI;IAJpB,IAAI,GAAG,iBAAiB,CAAA;IAChB,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;IACjC,aAAa,GAAG,CAAC,CAAA;IAEzB,YAA6B,OAAqB;QAArB,YAAO,GAAP,OAAO,CAAc;IAAG,CAAC;IAEtD,QAAQ;QACN,mDAAmD;IACrD,CAAC;IAED,UAAU;QACR,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAA;QAE5B,OAAO,KAAK,EAAE,GAAe,EAAE,IAAiB,EAAE,IAAyB,EAAE,EAAE;YAC7E,uDAAuD;YACvD,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,OAAO,IAAI,EAAE,CAAA;YAEpC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,CAAA;YAC9C,IAAI,MAAM,KAAK,IAAI,CAAC,aAAa,EAAE,CAAC;gBAClC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAA;gBACjB,IAAI,CAAC,aAAa,GAAG,MAAM,CAAA;YAC7B,CAAC;YAED,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;YACrC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC3B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;gBACrB,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC,CAAA;YACnC,CAAC;YAED,OAAO,IAAI,EAAE,CAAA;QACf,CAAC,CAAA;IACH,CAAC;IAEO,YAAY,CAAC,GAAe;QAClC,0CAA0C;QAC1C,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,CAAA;QACzC,IAAI,IAAI;YAAE,OAAO,QAAQ,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAA;QAE5C,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAA;QAC1C,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAC9D,IAAI,OAAO;YAAE,OAAO,WAAW,OAAO,EAAE,CAAA;QAExC,OAAO,MAAM,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,SAAS,EAAE,CAAA;IAC/G,CAAC;CACF"}
@@ -1,5 +0,0 @@
1
- /**
2
- * Renders the Pulse dashboard — a single page with metric cards that auto-refresh.
3
- */
4
- export declare function dashboardPage(apiPrefix: string): string;
5
- //# sourceMappingURL=dashboard.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dashboard.d.ts","sourceRoot":"","sources":["../../src/ui/dashboard.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAoOvD"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"dashboard.js","sourceRoot":"","sources":["../../src/ui/dashboard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,SAAiB;IAC7C,OAAO,MAAM,CAAC,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBA4LN,SAAS;uBACT,SAAS;uBACT,SAAS;uBACT,SAAS;uBACT,SAAS;uBACT,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAiClB,EAAE,OAAO,CAAC,CAAA;AACxB,CAAC"}
@@ -1,6 +0,0 @@
1
- /**
2
- * Shared HTML layout for Pulse UI pages.
3
- * Uses Tailwind CSS (CDN) + Alpine.js (CDN) for a zero-build UI.
4
- */
5
- export declare function layout(title: string, body: string, path: string): string;
6
- //# sourceMappingURL=layout.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../../src/ui/layout.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAgDxE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"layout.js","sourceRoot":"","sources":["../../src/ui/layout.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,UAAU,MAAM,CAAC,KAAa,EAAE,IAAY,EAAE,IAAY;IAC9D,OAAO;;;;;WAKE,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAqCR,IAAI;;;;QAIJ,CAAA;AACR,CAAC"}