@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,214 +0,0 @@
1
- export var AnalyticsSerializerTypes;
2
- (function (AnalyticsSerializerTypes) {
3
- AnalyticsSerializerTypes[AnalyticsSerializerTypes["AnalyticsPath"] = 0] = "AnalyticsPath";
4
- AnalyticsSerializerTypes[AnalyticsSerializerTypes["AnalyticsPathSegment"] = 1] = "AnalyticsPathSegment";
5
- AnalyticsSerializerTypes[AnalyticsSerializerTypes["AnalyticsPeriod"] = 2] = "AnalyticsPeriod";
6
- })(AnalyticsSerializerTypes || (AnalyticsSerializerTypes = {}));
7
- export var AnalyticsPeriodType;
8
- (function (AnalyticsPeriodType) {
9
- AnalyticsPeriodType[AnalyticsPeriodType["Year"] = 0] = "Year";
10
- AnalyticsPeriodType[AnalyticsPeriodType["Quarter"] = 1] = "Quarter";
11
- AnalyticsPeriodType[AnalyticsPeriodType["Month"] = 2] = "Month";
12
- })(AnalyticsPeriodType || (AnalyticsPeriodType = {}));
13
- export class AnalyticsPeriod {
14
- get type() {
15
- return this._type;
16
- }
17
- get year() {
18
- return this._year;
19
- }
20
- get quarter() {
21
- return this._quarter;
22
- }
23
- get month() {
24
- return this._month;
25
- }
26
- _type = AnalyticsPeriodType.Year;
27
- _year = 1970;
28
- _quarter = null;
29
- _month = null;
30
- toJSON() {
31
- return {
32
- _t: AnalyticsSerializerTypes.AnalyticsPeriod,
33
- _v: this.toString(),
34
- };
35
- }
36
- static fromString(period) {
37
- let result;
38
- if (period.length === 4) {
39
- result = new AnalyticsPeriod(Number.parseInt(period));
40
- }
41
- else if (period.length === 7) {
42
- if (period[4] !== "/") {
43
- throw new Error(`Invalid period string: '${period}'`);
44
- }
45
- else if (period[5] === "Q") {
46
- result = new AnalyticsPeriod(Number.parseInt(period.slice(0, 4)), Number.parseInt(period[6]));
47
- }
48
- else {
49
- result = new AnalyticsPeriod(Number.parseInt(period.slice(0, 4)), undefined, Number.parseInt(period.slice(5)));
50
- }
51
- }
52
- else {
53
- throw new Error(`Invalid period string: '${period}'`);
54
- }
55
- return result;
56
- }
57
- static fillRange(p1, p2) {
58
- const obj1 = typeof p1 === "string" ? AnalyticsPeriod.fromString(p1) : p1, obj2 = typeof p2 === "string" ? AnalyticsPeriod.fromString(p2) : p2;
59
- if (obj1.type !== obj2.type) {
60
- throw new Error(`Cannot fill range of different type periods ${obj1.toString()} and ${obj2.toString()}.`);
61
- }
62
- const [first, last] = obj1.comesBefore(obj2) ? [obj1, obj2] : [obj2, obj1];
63
- const result = [first];
64
- let next = first.nextPeriod();
65
- while (next.comesBefore(last)) {
66
- result.push(next);
67
- next = next.nextPeriod();
68
- }
69
- if (!last.equals(first)) {
70
- result.push(last);
71
- }
72
- return result;
73
- }
74
- static normalizeQuarters(year, quarter) {
75
- const newYear = year + Math.floor((quarter - 1) / 4);
76
- const newQuarter = moduloButWithoutBugs(quarter - 1, 4) + 1;
77
- return [newYear, newQuarter, undefined];
78
- }
79
- static normalizeMonths(year, month) {
80
- const newYear = year + Math.floor((month - 1) / 12);
81
- const newMonth = moduloButWithoutBugs(month - 1, 12) + 1;
82
- const newQuarter = Math.floor((newMonth - 1) / 3) + 1;
83
- return [newYear, newQuarter, newMonth];
84
- }
85
- constructor(year, quarter, month) {
86
- this._initAsYear(year);
87
- if (quarter !== undefined) {
88
- this._initAsQuarter(quarter);
89
- }
90
- if (month !== undefined) {
91
- this._initAsMonth(month);
92
- }
93
- }
94
- equals(period) {
95
- return (this.toString() ===
96
- (typeof period === "string" ? period : period.toString()));
97
- }
98
- toString() {
99
- let result = this._year + (this._type === AnalyticsPeriodType.Year ? "" : "/");
100
- if (this._type === AnalyticsPeriodType.Quarter) {
101
- result += "Q" + this._quarter;
102
- }
103
- else if (this._type === AnalyticsPeriodType.Month) {
104
- if (this._month < 10) {
105
- result += "0";
106
- }
107
- result += this._month;
108
- }
109
- return result;
110
- }
111
- startAsSqlDate() {
112
- let result = this._year + "-";
113
- switch (this._type) {
114
- case AnalyticsPeriodType.Month:
115
- result += (this._month < 10 ? "0" : "") + this.month;
116
- break;
117
- case AnalyticsPeriodType.Quarter:
118
- const firstMonth = (this._quarter - 1) * 3 + 1;
119
- result += (firstMonth < 10 ? "0" : "") + firstMonth;
120
- break;
121
- case AnalyticsPeriodType.Year:
122
- result += "01";
123
- break;
124
- }
125
- return result + "-01";
126
- }
127
- comesAfter(period) {
128
- return this._start() > period._end();
129
- }
130
- comesBefore(period) {
131
- return period._start() > this._end();
132
- }
133
- contains(period) {
134
- return this._start() <= period._start() && this._end() >= period._end();
135
- }
136
- firstMonth() {
137
- let month = this._month || 1;
138
- if (this._type === AnalyticsPeriodType.Quarter) {
139
- month = (this._quarter - 1) * 3 + 1;
140
- }
141
- return new AnalyticsPeriod(this._year, undefined, month);
142
- }
143
- lastMonth() {
144
- let month = this._month || 12;
145
- if (this._type === AnalyticsPeriodType.Quarter) {
146
- month = this._quarter * 3;
147
- }
148
- return new AnalyticsPeriod(this._year, undefined, month);
149
- }
150
- nextPeriod(n = 1) {
151
- return this._addPeriods(n);
152
- }
153
- previousPeriod(n = 1) {
154
- return this._addPeriods(-n);
155
- }
156
- _start() {
157
- return this._getNumericComparator(false);
158
- }
159
- _end() {
160
- return this._getNumericComparator(true);
161
- }
162
- _getNumericComparator(endOfPeriod) {
163
- const defaultQuarter = endOfPeriod ? 4 : 1, defaultMonth = ((this._quarter || defaultQuarter) - 1) * 3 + (endOfPeriod ? 3 : 1), result = this._year * 1000 +
164
- (this._quarter || defaultQuarter) * 100 +
165
- (this._month || defaultMonth);
166
- return result;
167
- }
168
- _addPeriods(periods) {
169
- let result;
170
- if (this._type === AnalyticsPeriodType.Year) {
171
- result = new AnalyticsPeriod(this._year + periods);
172
- }
173
- else if (this._type === AnalyticsPeriodType.Quarter) {
174
- const [y, q] = AnalyticsPeriod.normalizeQuarters(this._year, this._quarter + periods);
175
- result = new AnalyticsPeriod(y, q);
176
- }
177
- else {
178
- const [y, _, m] = AnalyticsPeriod.normalizeMonths(this._year, this._month + periods);
179
- result = new AnalyticsPeriod(y, undefined, m);
180
- }
181
- return result;
182
- }
183
- _initAsYear(year) {
184
- if (year < 1970 || year > 2100) {
185
- throw new Error(`Invalid period year: '${year}'`);
186
- }
187
- this._year = year;
188
- }
189
- _initAsQuarter(quarter) {
190
- if (quarter < 1 || quarter > 4) {
191
- throw new Error(`Invalid period quarter: ${quarter}`);
192
- }
193
- this._quarter = quarter;
194
- this._type = AnalyticsPeriodType.Quarter;
195
- }
196
- _initAsMonth(month) {
197
- if (month < 1 || month > 12) {
198
- throw new Error(`Invalid period month: ${month}`);
199
- }
200
- if (this.quarter == null) {
201
- this._initAsQuarter(Math.floor((month - 1) / 3) + 1);
202
- }
203
- else if (this.quarter !== Math.floor((month - 1) / 3) + 1) {
204
- throw new Error(`Period month ${month} outside of quarter ${this.quarter}`);
205
- }
206
- this._month = month;
207
- this._type = AnalyticsPeriodType.Month;
208
- }
209
- }
210
- // See https://stackoverflow.com/questions/4467539/javascript-modulo-gives-a-negative-result-for-negative-numbers
211
- function moduloButWithoutBugs(base, n) {
212
- return ((base % n) + n) % n;
213
- }
214
- //# sourceMappingURL=AnalyticsPeriod.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AnalyticsPeriod.js","sourceRoot":"","sources":["../../src/AnalyticsPeriod.ts"],"names":[],"mappings":"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"}
@@ -1,31 +0,0 @@
1
- export interface IAnalyticsProfiler {
2
- get prefix(): string;
3
- push: (system: string) => void;
4
- pop: () => void;
5
- popAndReturn: (result: any) => any;
6
- record: <T>(metric: string, fn: () => Promise<T>) => Promise<T>;
7
- recordSync: <T>(metric: string, fn: () => T) => T;
8
- }
9
- export declare class AnalyticsProfiler implements IAnalyticsProfiler {
10
- private readonly _ns;
11
- private readonly _logger;
12
- private readonly _stack;
13
- private _prefix;
14
- constructor(_ns: string, _logger: (metricName: string, ms: number) => void);
15
- get prefix(): string;
16
- push(system: string): void;
17
- pop(): void;
18
- popAndReturn(result: any): any;
19
- record<T>(metric: string, fn: () => Promise<T>): Promise<T>;
20
- recordSync<T>(metric: string, fn: () => T): T;
21
- updatePrefix(): void;
22
- }
23
- export declare class PassthroughAnalyticsProfiler implements IAnalyticsProfiler {
24
- get prefix(): string;
25
- push(system: string): void;
26
- pop(): void;
27
- popAndReturn(result: any): any;
28
- record<T>(metric: string, fn: () => Promise<T>): Promise<T>;
29
- recordSync<T>(metric: string, fn: () => T): T;
30
- }
31
- //# sourceMappingURL=AnalyticsProfiler.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AnalyticsProfiler.d.ts","sourceRoot":"","sources":["../../src/AnalyticsProfiler.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,kBAAkB;IACjC,IAAI,MAAM,IAAI,MAAM,CAAC;IAErB,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,GAAG,EAAE,MAAM,IAAI,CAAC;IAChB,YAAY,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,GAAG,CAAC;IAEnC,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IAChE,UAAU,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;CACnD;AAED,qBAAa,iBAAkB,YAAW,kBAAkB;IAKxD,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAL1B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;IACvC,OAAO,CAAC,OAAO,CAAc;gBAGV,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,IAAI;IAKpE,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAM1B,GAAG,IAAI,IAAI;IAMX,YAAY,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG;IAMxB,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAWjE,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC;IAW7C,YAAY,IAAI,IAAI;CAOrB;AAED,qBAAa,4BAA6B,YAAW,kBAAkB;IACrE,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,CAAC,MAAM,EAAE,MAAM;IAInB,GAAG;IAIH,YAAY,CAAC,MAAM,EAAE,GAAG;IAIlB,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC;IAIpD,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC;CAG1C"}
@@ -1,76 +0,0 @@
1
- export class AnalyticsProfiler {
2
- _ns;
3
- _logger;
4
- _stack = [];
5
- _prefix = "";
6
- constructor(_ns, _logger) {
7
- this._ns = _ns;
8
- this._logger = _logger;
9
- this._prefix = _ns;
10
- }
11
- get prefix() {
12
- return this._prefix;
13
- }
14
- push(system) {
15
- this._stack.push(system);
16
- this.updatePrefix();
17
- }
18
- pop() {
19
- if (this._stack.pop()) {
20
- this.updatePrefix();
21
- }
22
- }
23
- popAndReturn(result) {
24
- this.pop();
25
- return result;
26
- }
27
- async record(metric, fn) {
28
- const start = performance.now();
29
- const fullMetric = `${this.prefix}.${metric}`;
30
- try {
31
- return await fn();
32
- }
33
- finally {
34
- this._logger(fullMetric, performance.now() - start);
35
- }
36
- }
37
- recordSync(metric, fn) {
38
- const start = performance.now();
39
- const fullMetric = `${this.prefix}.${metric}`;
40
- try {
41
- return fn();
42
- }
43
- finally {
44
- this._logger(fullMetric, performance.now() - start);
45
- }
46
- }
47
- updatePrefix() {
48
- if (this._stack.length > 0) {
49
- this._prefix = `${this._ns}.${this._stack.join(".")}`;
50
- }
51
- else {
52
- this._prefix = this._ns;
53
- }
54
- }
55
- }
56
- export class PassthroughAnalyticsProfiler {
57
- get prefix() {
58
- return "";
59
- }
60
- push(system) {
61
- //
62
- }
63
- pop() {
64
- //
65
- }
66
- popAndReturn(result) {
67
- return result;
68
- }
69
- async record(metric, fn) {
70
- return await fn();
71
- }
72
- recordSync(metric, fn) {
73
- return fn();
74
- }
75
- }
76
- //# sourceMappingURL=AnalyticsProfiler.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AnalyticsProfiler.js","sourceRoot":"","sources":["../../src/AnalyticsProfiler.ts"],"names":[],"mappings":"AAWA,MAAM,OAAO,iBAAiB;IAKT;IACA;IALF,MAAM,GAAa,EAAE,CAAC;IAC/B,OAAO,GAAW,EAAE,CAAC;IAE7B,YACmB,GAAW,EACX,OAAiD;QADjD,QAAG,GAAH,GAAG,CAAQ;QACX,YAAO,GAAP,OAAO,CAA0C;QAElE,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC;IACrB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAI,CAAC,MAAc;QACjB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEzB,IAAI,CAAC,YAAY,EAAE,CAAC;IACtB,CAAC;IAED,GAAG;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC;YACtB,IAAI,CAAC,YAAY,EAAE,CAAC;QACtB,CAAC;IACH,CAAC;IAED,YAAY,CAAC,MAAW;QACtB,IAAI,CAAC,GAAG,EAAE,CAAC;QAEX,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,MAAM,CAAI,MAAc,EAAE,EAAoB;QAClD,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAChC,MAAM,UAAU,GAAG,GAAG,IAAI,CAAC,MAAM,IAAI,MAAM,EAAE,CAAC;QAE9C,IAAI,CAAC;YACH,OAAO,MAAM,EAAE,EAAE,CAAC;QACpB,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED,UAAU,CAAI,MAAc,EAAE,EAAW;QACvC,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAChC,MAAM,UAAU,GAAG,GAAG,IAAI,CAAC,MAAM,IAAI,MAAM,EAAE,CAAC;QAE9C,IAAI,CAAC;YACH,OAAO,EAAE,EAAE,CAAC;QACd,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED,YAAY;QACV,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,IAAI,CAAC,OAAO,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACxD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC;QAC1B,CAAC;IACH,CAAC;CACF;AAED,MAAM,OAAO,4BAA4B;IACvC,IAAI,MAAM;QACR,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC,MAAc;QACjB,EAAE;IACJ,CAAC;IAED,GAAG;QACD,EAAE;IACJ,CAAC;IAED,YAAY,CAAC,MAAW;QACtB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,MAAM,CAAI,MAAc,EAAE,EAAoB;QAClD,OAAO,MAAM,EAAE,EAAE,CAAC;IACpB,CAAC;IAED,UAAU,CAAI,MAAc,EAAE,EAAW;QACvC,OAAO,EAAE,EAAE,CAAC;IACd,CAAC;CACF"}
@@ -1,86 +0,0 @@
1
- import { DateTime } from "luxon";
2
- import { AnalyticsPath } from "./AnalyticsPath.js";
3
- export type AnalyticsSeriesQuery = {
4
- start: DateTime | null;
5
- end: DateTime | null;
6
- metrics: string[];
7
- currency?: AnalyticsPath;
8
- select: Record<string, AnalyticsPath[]>;
9
- };
10
- export type AnalyticsQuery = AnalyticsSeriesQuery & {
11
- granularity: AnalyticsGranularity;
12
- lod: Record<string, number | null>;
13
- };
14
- export type AnalyticsSeries<D = string | AnalyticsDimension> = {
15
- source: AnalyticsPath;
16
- start: DateTime;
17
- end: DateTime | null;
18
- metric: string;
19
- value: number;
20
- unit: string | null;
21
- fn: string;
22
- params: Record<string, any> | null;
23
- dimensions: Record<string, D>;
24
- };
25
- export type AnalyticsDimension = {
26
- path: AnalyticsPath;
27
- icon: string;
28
- label: string;
29
- description: string;
30
- };
31
- export declare enum AnalyticsMetric {
32
- Budget = 0,
33
- Forecast = 1,
34
- Actuals = 2,
35
- PaymentsOnChain = 3,
36
- PaymentsOffChainIncluded = 4,
37
- FTEs = 5
38
- }
39
- export type CompoundAnalyticsQuery = {
40
- start: DateTime | null;
41
- end: DateTime | null;
42
- granularity: AnalyticsGranularity;
43
- lod: Record<string, number | null>;
44
- select: Record<string, AnalyticsPath[]>;
45
- expression: CompoundAnalyticsExpression;
46
- };
47
- export type CompoundAnalyticsExpression = {
48
- inputs: CompoundAnalyticsInputs;
49
- operator: CompoundOperator;
50
- operand: AnalyticsOperand;
51
- resultCurrency?: AnalyticsPath;
52
- };
53
- export type CompoundAnalyticsInputs = {
54
- metrics: string[];
55
- currency?: AnalyticsPath;
56
- };
57
- export type AnalyticsOperand = {
58
- metric: string;
59
- currency?: AnalyticsPath;
60
- useSum: boolean;
61
- };
62
- export declare enum CompoundOperator {
63
- VectorAdd = 0,
64
- VectorSubtract = 1,
65
- ScalarMultiply = 2,
66
- ScalarDivide = 3
67
- }
68
- export type MultiCurrencyConversion = {
69
- targetCurrency?: AnalyticsPath;
70
- conversions: ConversionMetric[];
71
- };
72
- export type ConversionMetric = {
73
- metric: string;
74
- currency?: AnalyticsPath;
75
- };
76
- export declare enum AnalyticsGranularity {
77
- Total = 0,
78
- Annual = 1,
79
- SemiAnnual = 2,
80
- Quarterly = 3,
81
- Monthly = 4,
82
- Weekly = 5,
83
- Daily = 6,
84
- Hourly = 7
85
- }
86
- //# sourceMappingURL=AnalyticsQuery.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AnalyticsQuery.d.ts","sourceRoot":"","sources":["../../src/AnalyticsQuery.ts"],"names":[],"mappings":"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"}
@@ -1,30 +0,0 @@
1
- import { DateTime } from "luxon";
2
- import { AnalyticsPath } from "./AnalyticsPath.js";
3
- export var AnalyticsMetric;
4
- (function (AnalyticsMetric) {
5
- AnalyticsMetric[AnalyticsMetric["Budget"] = 0] = "Budget";
6
- AnalyticsMetric[AnalyticsMetric["Forecast"] = 1] = "Forecast";
7
- AnalyticsMetric[AnalyticsMetric["Actuals"] = 2] = "Actuals";
8
- AnalyticsMetric[AnalyticsMetric["PaymentsOnChain"] = 3] = "PaymentsOnChain";
9
- AnalyticsMetric[AnalyticsMetric["PaymentsOffChainIncluded"] = 4] = "PaymentsOffChainIncluded";
10
- AnalyticsMetric[AnalyticsMetric["FTEs"] = 5] = "FTEs";
11
- })(AnalyticsMetric || (AnalyticsMetric = {}));
12
- export var CompoundOperator;
13
- (function (CompoundOperator) {
14
- CompoundOperator[CompoundOperator["VectorAdd"] = 0] = "VectorAdd";
15
- CompoundOperator[CompoundOperator["VectorSubtract"] = 1] = "VectorSubtract";
16
- CompoundOperator[CompoundOperator["ScalarMultiply"] = 2] = "ScalarMultiply";
17
- CompoundOperator[CompoundOperator["ScalarDivide"] = 3] = "ScalarDivide";
18
- })(CompoundOperator || (CompoundOperator = {}));
19
- export var AnalyticsGranularity;
20
- (function (AnalyticsGranularity) {
21
- AnalyticsGranularity[AnalyticsGranularity["Total"] = 0] = "Total";
22
- AnalyticsGranularity[AnalyticsGranularity["Annual"] = 1] = "Annual";
23
- AnalyticsGranularity[AnalyticsGranularity["SemiAnnual"] = 2] = "SemiAnnual";
24
- AnalyticsGranularity[AnalyticsGranularity["Quarterly"] = 3] = "Quarterly";
25
- AnalyticsGranularity[AnalyticsGranularity["Monthly"] = 4] = "Monthly";
26
- AnalyticsGranularity[AnalyticsGranularity["Weekly"] = 5] = "Weekly";
27
- AnalyticsGranularity[AnalyticsGranularity["Daily"] = 6] = "Daily";
28
- AnalyticsGranularity[AnalyticsGranularity["Hourly"] = 7] = "Hourly";
29
- })(AnalyticsGranularity || (AnalyticsGranularity = {}));
30
- //# sourceMappingURL=AnalyticsQuery.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AnalyticsQuery.js","sourceRoot":"","sources":["../../src/AnalyticsQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAkCnD,MAAM,CAAN,IAAY,eAOX;AAPD,WAAY,eAAe;IACzB,yDAAM,CAAA;IACN,6DAAQ,CAAA;IACR,2DAAO,CAAA;IACP,2EAAe,CAAA;IACf,6FAAwB,CAAA;IACxB,qDAAI,CAAA;AACN,CAAC,EAPW,eAAe,KAAf,eAAe,QAO1B;AA6BD,MAAM,CAAN,IAAY,gBAKX;AALD,WAAY,gBAAgB;IAC1B,iEAAS,CAAA;IACT,2EAAc,CAAA;IACd,2EAAc,CAAA;IACd,uEAAY,CAAA;AACd,CAAC,EALW,gBAAgB,KAAhB,gBAAgB,QAK3B;AAYD,MAAM,CAAN,IAAY,oBASX;AATD,WAAY,oBAAoB;IAC9B,iEAAK,CAAA;IACL,mEAAM,CAAA;IACN,2EAAU,CAAA;IACV,yEAAS,CAAA;IACT,qEAAO,CAAA;IACP,mEAAM,CAAA;IACN,iEAAK,CAAA;IACL,mEAAM,CAAA;AACR,CAAC,EATW,oBAAoB,KAApB,oBAAoB,QAS/B"}
@@ -1,20 +0,0 @@
1
- import { type GroupedPeriodResults } from "./AnalyticsDiscretizer.js";
2
- import { type IAnalyticsProfiler } from "./AnalyticsProfiler.js";
3
- import { type AnalyticsQuery, type CompoundAnalyticsQuery, type MultiCurrencyConversion } from "./AnalyticsQuery.js";
4
- import { type IAnalyticsStore } from "./IAnalyticsStore.js";
5
- export declare class AnalyticsQueryEngine {
6
- private readonly _analyticsStore;
7
- private readonly _profiler;
8
- constructor(_analyticsStore: IAnalyticsStore, profiler?: IAnalyticsProfiler);
9
- executeCompound(query: CompoundAnalyticsQuery): Promise<GroupedPeriodResults>;
10
- execute(query: AnalyticsQuery): Promise<GroupedPeriodResults>;
11
- executeMultiCurrency(query: AnalyticsQuery, mcc: MultiCurrencyConversion): Promise<GroupedPeriodResults>;
12
- private _applyVectorOperator;
13
- private _applyScalarOperator;
14
- private _calculateOutputValue;
15
- private _executeSeriesQuery;
16
- private _applyLods;
17
- private _applyDimensionsLods;
18
- getDimensions(): Promise<any>;
19
- }
20
- //# sourceMappingURL=AnalyticsQueryEngine.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AnalyticsQueryEngine.d.ts","sourceRoot":"","sources":["../../src/AnalyticsQueryEngine.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,oBAAoB,EAE1B,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EACL,KAAK,kBAAkB,EAExB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,KAAK,cAAc,EAGnB,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,EAE7B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE5D,qBAAa,oBAAoB;IAI7B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAHlC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAqB;gBAG5B,eAAe,EAAE,eAAe,EACjD,QAAQ,CAAC,EAAE,kBAAkB;IAKlB,eAAe,CAC1B,KAAK,EAAE,sBAAsB,GAC5B,OAAO,CAAC,oBAAoB,CAAC;IA0DnB,OAAO,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAsB7D,oBAAoB,CAC/B,KAAK,EAAE,cAAc,EACrB,GAAG,EAAE,uBAAuB,GAC3B,OAAO,CAAC,oBAAoB,CAAC;YAwClB,oBAAoB;YAgBpB,oBAAoB;IAoDlC,OAAO,CAAC,qBAAqB;YAiBf,mBAAmB;IAcjC,OAAO,CAAC,UAAU;IAUlB,OAAO,CAAC,oBAAoB;IAmBf,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC;CAW3C"}