@powerhousedao/analytics-engine-core 0.6.1 → 0.6.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 (68) hide show
  1. package/build/index.js +5556 -0
  2. package/build/index.js.map +18 -0
  3. package/package.json +11 -4
  4. package/dist/src/AnalyticsDiscretizer.d.ts +0 -59
  5. package/dist/src/AnalyticsDiscretizer.d.ts.map +0 -1
  6. package/dist/src/AnalyticsDiscretizer.js +0 -237
  7. package/dist/src/AnalyticsDiscretizer.js.map +0 -1
  8. package/dist/src/AnalyticsPath.d.ts +0 -36
  9. package/dist/src/AnalyticsPath.d.ts.map +0 -1
  10. package/dist/src/AnalyticsPath.js +0 -166
  11. package/dist/src/AnalyticsPath.js.map +0 -1
  12. package/dist/src/AnalyticsPeriod.d.ts +0 -49
  13. package/dist/src/AnalyticsPeriod.d.ts.map +0 -1
  14. package/dist/src/AnalyticsPeriod.js +0 -214
  15. package/dist/src/AnalyticsPeriod.js.map +0 -1
  16. package/dist/src/AnalyticsProfiler.d.ts +0 -31
  17. package/dist/src/AnalyticsProfiler.d.ts.map +0 -1
  18. package/dist/src/AnalyticsProfiler.js +0 -76
  19. package/dist/src/AnalyticsProfiler.js.map +0 -1
  20. package/dist/src/AnalyticsQuery.d.ts +0 -86
  21. package/dist/src/AnalyticsQuery.d.ts.map +0 -1
  22. package/dist/src/AnalyticsQuery.js +0 -30
  23. package/dist/src/AnalyticsQuery.js.map +0 -1
  24. package/dist/src/AnalyticsQueryEngine.d.ts +0 -20
  25. package/dist/src/AnalyticsQueryEngine.d.ts.map +0 -1
  26. package/dist/src/AnalyticsQueryEngine.js +0 -173
  27. package/dist/src/AnalyticsQueryEngine.js.map +0 -1
  28. package/dist/src/AnalyticsQueryResult.d.ts +0 -10
  29. package/dist/src/AnalyticsQueryResult.d.ts.map +0 -1
  30. package/dist/src/AnalyticsQueryResult.js +0 -3
  31. package/dist/src/AnalyticsQueryResult.js.map +0 -1
  32. package/dist/src/AnalyticsSubscriptionManager.d.ts +0 -48
  33. package/dist/src/AnalyticsSubscriptionManager.d.ts.map +0 -1
  34. package/dist/src/AnalyticsSubscriptionManager.js +0 -162
  35. package/dist/src/AnalyticsSubscriptionManager.js.map +0 -1
  36. package/dist/src/AnalyticsTimeSlicer.d.ts +0 -29
  37. package/dist/src/AnalyticsTimeSlicer.d.ts.map +0 -1
  38. package/dist/src/AnalyticsTimeSlicer.js +0 -212
  39. package/dist/src/AnalyticsTimeSlicer.js.map +0 -1
  40. package/dist/src/IAnalyticsCache.d.ts +0 -7
  41. package/dist/src/IAnalyticsCache.d.ts.map +0 -1
  42. package/dist/src/IAnalyticsCache.js +0 -2
  43. package/dist/src/IAnalyticsCache.js.map +0 -1
  44. package/dist/src/IAnalyticsStore.d.ts +0 -26
  45. package/dist/src/IAnalyticsStore.d.ts.map +0 -1
  46. package/dist/src/IAnalyticsStore.js +0 -3
  47. package/dist/src/IAnalyticsStore.js.map +0 -1
  48. package/dist/src/index.d.ts +0 -11
  49. package/dist/src/index.d.ts.map +0 -1
  50. package/dist/src/index.js +0 -7
  51. package/dist/src/index.js.map +0 -1
  52. package/dist/test/AnalyticsTimeSlicer.spec.d.ts +0 -2
  53. package/dist/test/AnalyticsTimeSlicer.spec.d.ts.map +0 -1
  54. package/dist/test/AnalyticsTimeSlicer.spec.js +0 -448
  55. package/dist/test/AnalyticsTimeSlicer.spec.js.map +0 -1
  56. package/dist/test/Subscriptions.test.d.ts +0 -2
  57. package/dist/test/Subscriptions.test.d.ts.map +0 -1
  58. package/dist/test/Subscriptions.test.js +0 -151
  59. package/dist/test/Subscriptions.test.js.map +0 -1
  60. package/dist/test/vitest.setup.d.ts +0 -2
  61. package/dist/test/vitest.setup.d.ts.map +0 -1
  62. package/dist/test/vitest.setup.js +0 -2
  63. package/dist/test/vitest.setup.js.map +0 -1
  64. package/dist/tsconfig.tsbuildinfo +0 -1
  65. package/dist/vitest.config.d.ts +0 -3
  66. package/dist/vitest.config.d.ts.map +0 -1
  67. package/dist/vitest.config.js +0 -11
  68. package/dist/vitest.config.js.map +0 -1
@@ -1,212 +0,0 @@
1
- import { DateTime } from "luxon";
2
- import { AnalyticsGranularity } from "./AnalyticsQuery.js";
3
- export const getPeriodSeriesArray = (range) => {
4
- const result = [];
5
- const series = getPeriodSeries(range);
6
- let next = series.next();
7
- while (next) {
8
- result.push(next);
9
- next = series.next();
10
- }
11
- return result;
12
- };
13
- export const getPeriodSeries = (range) => {
14
- return {
15
- ...range,
16
- next: _createFactoryFn(range),
17
- };
18
- };
19
- const _createFactoryFn = (range) => {
20
- let current = range.start;
21
- return () => {
22
- if (current == null) {
23
- return null;
24
- }
25
- let result = null;
26
- switch (range.granularity) {
27
- case AnalyticsGranularity.Total:
28
- result = _nextTotalPeriod(current, range.end);
29
- break;
30
- case AnalyticsGranularity.Annual:
31
- result = _nextAnnualPeriod(current, range.end);
32
- break;
33
- case AnalyticsGranularity.SemiAnnual:
34
- result = _nextSemiAnnualPeriod(current, range.end);
35
- break;
36
- case AnalyticsGranularity.Quarterly:
37
- result = _nextQuarterlyPeriod(current, range.end);
38
- break;
39
- case AnalyticsGranularity.Monthly:
40
- result = _nextMonthlyPeriod(current, range.end);
41
- break;
42
- case AnalyticsGranularity.Weekly:
43
- result = _nextWeeklyPeriod(current, range.end);
44
- break;
45
- case AnalyticsGranularity.Daily:
46
- result = _nextDailyPeriod(current, range.end);
47
- break;
48
- case AnalyticsGranularity.Hourly:
49
- result = _nextHourlyPeriod(current, range.end);
50
- }
51
- // Update current to start of next period
52
- if (result === null) {
53
- current = null;
54
- }
55
- else {
56
- current = result.end.plus({ milliseconds: 1 });
57
- }
58
- return result;
59
- };
60
- };
61
- const _nextTotalPeriod = (nextStart, seriesEnd) => {
62
- if (seriesEnd <= nextStart) {
63
- return null;
64
- }
65
- return {
66
- period: "total",
67
- start: nextStart,
68
- end: seriesEnd,
69
- };
70
- };
71
- export const _nextAnnualPeriod = (nextStart, seriesEnd) => {
72
- if (seriesEnd <= nextStart) {
73
- return null;
74
- }
75
- const inputUtc = nextStart.toUTC();
76
- const oneYearLater = DateTime.utc(inputUtc.year, inputUtc.month, inputUtc.day).plus({ years: 1 });
77
- return {
78
- period: "annual",
79
- start: nextStart,
80
- end: oneYearLater,
81
- };
82
- };
83
- export const _nextSemiAnnualPeriod = (nextStart, seriesEnd) => {
84
- if (seriesEnd <= nextStart) {
85
- return null;
86
- }
87
- const midYear = DateTime.utc(nextStart.year, 7, 1);
88
- const endYear = DateTime.utc(nextStart.year, 12, 31, 23, 59, 59, 999);
89
- let endDate;
90
- if (midYear > nextStart) {
91
- endDate = midYear;
92
- }
93
- else {
94
- endDate = endYear;
95
- }
96
- if (endDate > seriesEnd) {
97
- endDate = seriesEnd;
98
- }
99
- return {
100
- period: "semiAnnual",
101
- start: nextStart,
102
- end: endDate,
103
- };
104
- };
105
- export const _nextQuarterlyPeriod = (nextStart, seriesEnd) => {
106
- if (seriesEnd <= nextStart) {
107
- return null;
108
- }
109
- let endDate;
110
- const nextStartUtc = nextStart.toUTC();
111
- const startMonth = nextStartUtc.month;
112
- if (startMonth < 3) {
113
- endDate = DateTime.utc(nextStartUtc.year, 4, 1);
114
- }
115
- else if (startMonth < 6) {
116
- endDate = DateTime.utc(nextStartUtc.year, 7, 1);
117
- }
118
- else if (startMonth < 9) {
119
- endDate = DateTime.utc(nextStartUtc.year, 10, 1);
120
- }
121
- else {
122
- endDate = DateTime.utc(nextStartUtc.year, 12, 31, 23, 59, 59, 999);
123
- }
124
- if (endDate > seriesEnd) {
125
- endDate = seriesEnd;
126
- }
127
- return {
128
- period: "quarterly",
129
- start: nextStart,
130
- end: endDate,
131
- };
132
- };
133
- export const _nextMonthlyPeriod = (nextStart, seriesEnd) => {
134
- if (seriesEnd <= nextStart) {
135
- return null;
136
- }
137
- // Get the first day of the next month
138
- const nextStartUtc = nextStart.toUTC();
139
- let endDate = DateTime.utc(nextStartUtc.year, nextStartUtc.month, nextStartUtc.day)
140
- .plus({ months: 1 })
141
- .startOf("month");
142
- // If the end date is after the series end, then use the series end as the end date
143
- if (endDate > seriesEnd) {
144
- if (!nextStart.hasSame(seriesEnd, "month")) {
145
- endDate = seriesEnd;
146
- }
147
- }
148
- // Otherwise, return the end date as the first day of the next month
149
- return {
150
- period: "monthly",
151
- start: nextStart,
152
- end: endDate,
153
- };
154
- };
155
- export const _nextWeeklyPeriod = (nextStart, seriesEnd) => {
156
- if (seriesEnd <= nextStart) {
157
- return null;
158
- }
159
- // Calculate the start of the next week (Monday)
160
- const nextStartUtc = nextStart.toUTC();
161
- const nextWeekStartUTC = DateTime.utc(nextStartUtc.year, nextStartUtc.month, nextStartUtc.day)
162
- .plus({ weeks: 1 })
163
- .startOf("week");
164
- // If the calculated next week start is later or equal to the series end date, return the series end
165
- if (nextWeekStartUTC > seriesEnd)
166
- if (!nextWeekStartUTC.hasSame(seriesEnd, "day")) {
167
- return {
168
- period: "weekly",
169
- start: nextStart,
170
- end: seriesEnd,
171
- };
172
- }
173
- return {
174
- period: "weekly",
175
- start: nextStart,
176
- end: nextWeekStartUTC,
177
- };
178
- };
179
- export const _nextDailyPeriod = (nextStart, seriesEnd) => {
180
- if (seriesEnd <= nextStart) {
181
- return null;
182
- }
183
- // Set the end date to the start of the next day
184
- const nextStartUtc = nextStart.toUTC();
185
- let endDate = nextStartUtc.plus({ days: 1 }).startOf("day");
186
- if (endDate > seriesEnd || endDate.hasSame(seriesEnd, "day")) {
187
- endDate = seriesEnd;
188
- }
189
- return {
190
- period: "daily",
191
- start: nextStart,
192
- end: endDate,
193
- };
194
- };
195
- export const _nextHourlyPeriod = (nextStart, seriesEnd) => {
196
- if (seriesEnd <= nextStart) {
197
- return null;
198
- }
199
- const startDate = nextStart.toUTC();
200
- let endDate = startDate.plus({ hours: 1 });
201
- if (endDate > seriesEnd) {
202
- if (nextStart.hour !== seriesEnd.hour) {
203
- endDate = seriesEnd.toUTC();
204
- }
205
- }
206
- return {
207
- period: "hourly",
208
- start: nextStart,
209
- end: endDate,
210
- };
211
- };
212
- //# sourceMappingURL=AnalyticsTimeSlicer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AnalyticsTimeSlicer.js","sourceRoot":"","sources":["../../src/AnalyticsTimeSlicer.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- import type { GroupedPeriodResults } from "./AnalyticsDiscretizer.js";
2
- import type { AnalyticsQuery } from "./AnalyticsQuery.js";
3
- export interface IAnalyticsCache {
4
- get(query: AnalyticsQuery): Promise<GroupedPeriodResults | null>;
5
- set(query: AnalyticsQuery, expirySecs?: number): void;
6
- }
7
- //# sourceMappingURL=IAnalyticsCache.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IAnalyticsCache.d.ts","sourceRoot":"","sources":["../../src/IAnalyticsCache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,MAAM,WAAW,eAAe;IAC9B,GAAG,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAAC;IACjE,GAAG,CAAC,KAAK,EAAE,cAAc,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvD"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=IAnalyticsCache.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IAnalyticsCache.js","sourceRoot":"","sources":["../../src/IAnalyticsCache.ts"],"names":[],"mappings":""}
@@ -1,26 +0,0 @@
1
- import { DateTime } from "luxon";
2
- import { AnalyticsPath } from "./AnalyticsPath.js";
3
- import type { AnalyticsSeries, AnalyticsSeriesQuery } from "./AnalyticsQuery.js";
4
- export type AnalyticsSeriesInput = {
5
- start: DateTime;
6
- end?: DateTime | null;
7
- source: AnalyticsPath;
8
- metric: string;
9
- value: number;
10
- unit?: string | null;
11
- fn?: string | null;
12
- params?: Record<string, any> | null;
13
- dimensions: Record<string, AnalyticsPath>;
14
- dimensionMetadata?: Record<string, string>;
15
- };
16
- export type AnalyticsUpdateCallback = (source: AnalyticsPath) => void;
17
- export interface IAnalyticsStore {
18
- clearSeriesBySource: (source: AnalyticsPath, cleanUpDimensions?: boolean) => Promise<number>;
19
- clearEmptyAnalyticsDimensions: () => Promise<number>;
20
- getMatchingSeries: (query: AnalyticsSeriesQuery) => Promise<AnalyticsSeries[]>;
21
- addSeriesValue: (input: AnalyticsSeriesInput) => Promise<void>;
22
- addSeriesValues: (inputs: AnalyticsSeriesInput[]) => Promise<void>;
23
- getDimensions: () => Promise<any>;
24
- subscribeToSource: (source: AnalyticsPath, callback: AnalyticsUpdateCallback) => () => void;
25
- }
26
- //# sourceMappingURL=IAnalyticsStore.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IAnalyticsStore.d.ts","sourceRoot":"","sources":["../../src/IAnalyticsStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EACV,eAAe,EACf,oBAAoB,EACrB,MAAM,qBAAqB,CAAC;AAE7B,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,EAAE,QAAQ,CAAC;IAChB,GAAG,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IACtB,MAAM,EAAE,aAAa,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC;IACpC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAC1C,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAC;AAEtE,MAAM,WAAW,eAAe;IAC9B,mBAAmB,EAAE,CACnB,MAAM,EAAE,aAAa,EACrB,iBAAiB,CAAC,EAAE,OAAO,KACxB,OAAO,CAAC,MAAM,CAAC,CAAC;IACrB,6BAA6B,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IACrD,iBAAiB,EAAE,CACjB,KAAK,EAAE,oBAAoB,KACxB,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IAChC,cAAc,EAAE,CAAC,KAAK,EAAE,oBAAoB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/D,eAAe,EAAE,CAAC,MAAM,EAAE,oBAAoB,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACnE,aAAa,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC;IAElC,iBAAiB,EAAE,CACjB,MAAM,EAAE,aAAa,EACrB,QAAQ,EAAE,uBAAuB,KAC9B,MAAM,IAAI,CAAC;CACjB"}
@@ -1,3 +0,0 @@
1
- import { DateTime } from "luxon";
2
- import { AnalyticsPath } from "./AnalyticsPath.js";
3
- //# sourceMappingURL=IAnalyticsStore.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IAnalyticsStore.js","sourceRoot":"","sources":["../../src/IAnalyticsStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC"}
@@ -1,11 +0,0 @@
1
- export type { IAnalyticsProfiler } from "./AnalyticsProfiler.js";
2
- export { AnalyticsProfiler, PassthroughAnalyticsProfiler, } from "./AnalyticsProfiler.js";
3
- export type { IAnalyticsStore, AnalyticsSeriesInput, AnalyticsUpdateCallback, } from "./IAnalyticsStore.js";
4
- export { AnalyticsPath, AnalyticsPathSegment } from "./AnalyticsPath.js";
5
- export type { AnalyticsQuery, AnalyticsSeriesQuery, AnalyticsSeries, AnalyticsDimension, } from "./AnalyticsQuery.js";
6
- export { AnalyticsGranularity } from "./AnalyticsQuery.js";
7
- export { AnalyticsQueryEngine } from "./AnalyticsQueryEngine.js";
8
- export type { GroupedPeriodResult, GroupedPeriodResults, } from "./AnalyticsDiscretizer.js";
9
- export { AnalyticsSerializerTypes, AnalyticsPeriod, } from "./AnalyticsPeriod.js";
10
- export * from "./AnalyticsSubscriptionManager.js";
11
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EACL,iBAAiB,EACjB,4BAA4B,GAC7B,MAAM,wBAAwB,CAAC;AAEhC,YAAY,EACV,eAAe,EACf,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AACzE,YAAY,EACV,cAAc,EACd,oBAAoB,EACpB,eAAe,EACf,kBAAkB,GACnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,YAAY,EACV,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,wBAAwB,EACxB,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAC9B,cAAc,mCAAmC,CAAC"}
package/dist/src/index.js DELETED
@@ -1,7 +0,0 @@
1
- export { AnalyticsProfiler, PassthroughAnalyticsProfiler, } from "./AnalyticsProfiler.js";
2
- export { AnalyticsPath, AnalyticsPathSegment } from "./AnalyticsPath.js";
3
- export { AnalyticsGranularity } from "./AnalyticsQuery.js";
4
- export { AnalyticsQueryEngine } from "./AnalyticsQueryEngine.js";
5
- export { AnalyticsSerializerTypes, AnalyticsPeriod, } from "./AnalyticsPeriod.js";
6
- export * from "./AnalyticsSubscriptionManager.js";
7
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,iBAAiB,EACjB,4BAA4B,GAC7B,MAAM,wBAAwB,CAAC;AAQhC,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAOzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAKjE,OAAO,EACL,wBAAwB,EACxB,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAC9B,cAAc,mCAAmC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=AnalyticsTimeSlicer.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AnalyticsTimeSlicer.spec.d.ts","sourceRoot":"","sources":["../../test/AnalyticsTimeSlicer.spec.ts"],"names":[],"mappings":""}