@contractspec/example.analytics-dashboard 1.57.0 → 1.59.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 (173) hide show
  1. package/dist/browser/dashboard/dashboard.enum.js +34 -0
  2. package/dist/browser/dashboard/dashboard.operation.js +289 -0
  3. package/dist/browser/dashboard/dashboard.presentation.js +197 -0
  4. package/dist/browser/dashboard/dashboard.schema.js +126 -0
  5. package/dist/browser/dashboard/dashboard.test-spec.js +213 -0
  6. package/dist/browser/dashboard/index.js +299 -0
  7. package/dist/browser/dashboard.feature.js +84 -0
  8. package/dist/browser/datasource/posthog-datasource.js +289 -0
  9. package/dist/browser/docs/analytics-dashboard.docblock.js +103 -0
  10. package/dist/browser/docs/index.js +103 -0
  11. package/dist/browser/events.js +81 -0
  12. package/dist/browser/example.js +42 -0
  13. package/dist/browser/handlers/analytics.handlers.js +278 -0
  14. package/dist/browser/handlers/index.js +571 -0
  15. package/dist/browser/handlers/query.handlers.js +294 -0
  16. package/dist/browser/index.js +1677 -0
  17. package/dist/browser/query/index.js +159 -0
  18. package/dist/browser/query/query.enum.js +11 -0
  19. package/dist/browser/query/query.operation.js +154 -0
  20. package/dist/browser/query/query.presentation.js +119 -0
  21. package/dist/browser/query/query.schema.js +70 -0
  22. package/dist/browser/query/query.test-spec.js +113 -0
  23. package/dist/browser/query-engine/index.js +491 -0
  24. package/dist/browser/seeders/index.js +20 -0
  25. package/dist/browser/ui/AnalyticsDashboard.js +394 -0
  26. package/dist/browser/ui/hooks/index.js +69 -0
  27. package/dist/browser/ui/hooks/useAnalyticsData.js +66 -0
  28. package/dist/browser/ui/index.js +671 -0
  29. package/dist/browser/ui/renderers/analytics.markdown.js +275 -0
  30. package/dist/browser/ui/renderers/index.js +275 -0
  31. package/dist/dashboard/dashboard.enum.d.ts +3 -8
  32. package/dist/dashboard/dashboard.enum.d.ts.map +1 -1
  33. package/dist/dashboard/dashboard.enum.js +31 -39
  34. package/dist/dashboard/dashboard.operation.d.ts +444 -450
  35. package/dist/dashboard/dashboard.operation.d.ts.map +1 -1
  36. package/dist/dashboard/dashboard.operation.js +284 -207
  37. package/dist/dashboard/dashboard.presentation.d.ts +3 -8
  38. package/dist/dashboard/dashboard.presentation.d.ts.map +1 -1
  39. package/dist/dashboard/dashboard.presentation.js +193 -85
  40. package/dist/dashboard/dashboard.schema.d.ts +289 -294
  41. package/dist/dashboard/dashboard.schema.d.ts.map +1 -1
  42. package/dist/dashboard/dashboard.schema.js +119 -228
  43. package/dist/dashboard/dashboard.test-spec.d.ts +4 -9
  44. package/dist/dashboard/dashboard.test-spec.d.ts.map +1 -1
  45. package/dist/dashboard/dashboard.test-spec.js +209 -228
  46. package/dist/dashboard/index.d.ts +7 -4
  47. package/dist/dashboard/index.d.ts.map +1 -0
  48. package/dist/dashboard/index.js +299 -4
  49. package/dist/dashboard.feature.d.ts +1 -6
  50. package/dist/dashboard.feature.d.ts.map +1 -1
  51. package/dist/dashboard.feature.js +83 -175
  52. package/dist/datasource/posthog-datasource.d.ts +15 -19
  53. package/dist/datasource/posthog-datasource.d.ts.map +1 -1
  54. package/dist/datasource/posthog-datasource.js +274 -238
  55. package/dist/docs/analytics-dashboard.docblock.d.ts +2 -1
  56. package/dist/docs/analytics-dashboard.docblock.d.ts.map +1 -0
  57. package/dist/docs/analytics-dashboard.docblock.js +45 -56
  58. package/dist/docs/index.d.ts +2 -1
  59. package/dist/docs/index.d.ts.map +1 -0
  60. package/dist/docs/index.js +104 -1
  61. package/dist/events.d.ts +109 -115
  62. package/dist/events.d.ts.map +1 -1
  63. package/dist/events.js +74 -120
  64. package/dist/example.d.ts +2 -6
  65. package/dist/example.d.ts.map +1 -1
  66. package/dist/example.js +41 -55
  67. package/dist/handlers/analytics.handlers.d.ts +110 -109
  68. package/dist/handlers/analytics.handlers.d.ts.map +1 -1
  69. package/dist/handlers/analytics.handlers.js +267 -298
  70. package/dist/handlers/index.d.ts +3 -3
  71. package/dist/handlers/index.d.ts.map +1 -0
  72. package/dist/handlers/index.js +571 -3
  73. package/dist/handlers/query.handlers.d.ts +7 -11
  74. package/dist/handlers/query.handlers.d.ts.map +1 -1
  75. package/dist/handlers/query.handlers.js +292 -7
  76. package/dist/index.d.ts +12 -13
  77. package/dist/index.d.ts.map +1 -0
  78. package/dist/index.js +1678 -14
  79. package/dist/node/dashboard/dashboard.enum.js +34 -0
  80. package/dist/node/dashboard/dashboard.operation.js +289 -0
  81. package/dist/node/dashboard/dashboard.presentation.js +197 -0
  82. package/dist/node/dashboard/dashboard.schema.js +126 -0
  83. package/dist/node/dashboard/dashboard.test-spec.js +213 -0
  84. package/dist/node/dashboard/index.js +299 -0
  85. package/dist/node/dashboard.feature.js +84 -0
  86. package/dist/node/datasource/posthog-datasource.js +289 -0
  87. package/dist/node/docs/analytics-dashboard.docblock.js +103 -0
  88. package/dist/node/docs/index.js +103 -0
  89. package/dist/node/events.js +81 -0
  90. package/dist/node/example.js +42 -0
  91. package/dist/node/handlers/analytics.handlers.js +278 -0
  92. package/dist/node/handlers/index.js +571 -0
  93. package/dist/node/handlers/query.handlers.js +294 -0
  94. package/dist/node/index.js +1677 -0
  95. package/dist/node/query/index.js +159 -0
  96. package/dist/node/query/query.enum.js +11 -0
  97. package/dist/node/query/query.operation.js +154 -0
  98. package/dist/node/query/query.presentation.js +119 -0
  99. package/dist/node/query/query.schema.js +70 -0
  100. package/dist/node/query/query.test-spec.js +113 -0
  101. package/dist/node/query-engine/index.js +491 -0
  102. package/dist/node/seeders/index.js +20 -0
  103. package/dist/node/ui/AnalyticsDashboard.js +394 -0
  104. package/dist/node/ui/hooks/index.js +69 -0
  105. package/dist/node/ui/hooks/useAnalyticsData.js +66 -0
  106. package/dist/node/ui/index.js +671 -0
  107. package/dist/node/ui/renderers/analytics.markdown.js +275 -0
  108. package/dist/node/ui/renderers/index.js +275 -0
  109. package/dist/query/index.d.ts +7 -4
  110. package/dist/query/index.d.ts.map +1 -0
  111. package/dist/query/index.js +159 -4
  112. package/dist/query/query.enum.d.ts +1 -6
  113. package/dist/query/query.enum.d.ts.map +1 -1
  114. package/dist/query/query.enum.js +10 -14
  115. package/dist/query/query.operation.d.ts +148 -154
  116. package/dist/query/query.operation.d.ts.map +1 -1
  117. package/dist/query/query.operation.js +151 -109
  118. package/dist/query/query.presentation.d.ts +2 -7
  119. package/dist/query/query.presentation.d.ts.map +1 -1
  120. package/dist/query/query.presentation.js +116 -56
  121. package/dist/query/query.schema.d.ts +121 -126
  122. package/dist/query/query.schema.d.ts.map +1 -1
  123. package/dist/query/query.schema.js +66 -152
  124. package/dist/query/query.test-spec.d.ts +2 -7
  125. package/dist/query/query.test-spec.d.ts.map +1 -1
  126. package/dist/query/query.test-spec.js +111 -121
  127. package/dist/query-engine/index.d.ts +84 -88
  128. package/dist/query-engine/index.d.ts.map +1 -1
  129. package/dist/query-engine/index.js +489 -188
  130. package/dist/seeders/index.d.ts +4 -8
  131. package/dist/seeders/index.d.ts.map +1 -1
  132. package/dist/seeders/index.js +18 -16
  133. package/dist/ui/AnalyticsDashboard.d.ts +1 -6
  134. package/dist/ui/AnalyticsDashboard.d.ts.map +1 -1
  135. package/dist/ui/AnalyticsDashboard.js +389 -259
  136. package/dist/ui/hooks/index.d.ts +2 -2
  137. package/dist/ui/hooks/index.d.ts.map +1 -0
  138. package/dist/ui/hooks/index.js +69 -4
  139. package/dist/ui/hooks/useAnalyticsData.d.ts +16 -20
  140. package/dist/ui/hooks/useAnalyticsData.d.ts.map +1 -1
  141. package/dist/ui/hooks/useAnalyticsData.js +63 -69
  142. package/dist/ui/index.d.ts +7 -6
  143. package/dist/ui/index.d.ts.map +1 -0
  144. package/dist/ui/index.js +671 -5
  145. package/dist/ui/renderers/analytics.markdown.d.ts +13 -14
  146. package/dist/ui/renderers/analytics.markdown.d.ts.map +1 -1
  147. package/dist/ui/renderers/analytics.markdown.js +266 -254
  148. package/dist/ui/renderers/index.d.ts +2 -2
  149. package/dist/ui/renderers/index.d.ts.map +1 -0
  150. package/dist/ui/renderers/index.js +275 -2
  151. package/package.json +328 -67
  152. package/dist/dashboard/dashboard.enum.js.map +0 -1
  153. package/dist/dashboard/dashboard.operation.js.map +0 -1
  154. package/dist/dashboard/dashboard.presentation.js.map +0 -1
  155. package/dist/dashboard/dashboard.schema.js.map +0 -1
  156. package/dist/dashboard/dashboard.test-spec.js.map +0 -1
  157. package/dist/dashboard.feature.js.map +0 -1
  158. package/dist/datasource/posthog-datasource.js.map +0 -1
  159. package/dist/docs/analytics-dashboard.docblock.js.map +0 -1
  160. package/dist/events.js.map +0 -1
  161. package/dist/example.js.map +0 -1
  162. package/dist/handlers/analytics.handlers.js.map +0 -1
  163. package/dist/handlers/query.handlers.js.map +0 -1
  164. package/dist/query/query.enum.js.map +0 -1
  165. package/dist/query/query.operation.js.map +0 -1
  166. package/dist/query/query.presentation.js.map +0 -1
  167. package/dist/query/query.schema.js.map +0 -1
  168. package/dist/query/query.test-spec.js.map +0 -1
  169. package/dist/query-engine/index.js.map +0 -1
  170. package/dist/seeders/index.js.map +0 -1
  171. package/dist/ui/AnalyticsDashboard.js.map +0 -1
  172. package/dist/ui/hooks/useAnalyticsData.js.map +0 -1
  173. package/dist/ui/renderers/analytics.markdown.js.map +0 -1
@@ -1,124 +1,114 @@
1
+ // @bun
2
+ // src/query/query.test-spec.ts
1
3
  import { defineTestSpec } from "@contractspec/lib.contracts";
2
-
3
- //#region src/query/query.test-spec.ts
4
- const CreateQueryTest = defineTestSpec({
5
- meta: {
6
- key: "analytics.query.create.test",
7
- version: "1.0.0",
8
- title: "Create Query Test",
9
- description: "Verifies query creation flow",
10
- owners: ["@example.analytics-dashboard"],
11
- tags: [
12
- "analytics",
13
- "query",
14
- "test"
15
- ],
16
- stability: "stable"
17
- },
18
- target: {
19
- type: "operation",
20
- operation: {
21
- key: "analytics.query.create",
22
- version: "1.0.0"
23
- }
24
- },
25
- scenarios: [{
26
- key: "success",
27
- description: "Successfully create a query",
28
- when: {
29
- operation: {
30
- key: "analytics.query.create",
31
- version: "1.0.0"
32
- },
33
- input: {
34
- name: "Revenue Query",
35
- sql: "SELECT * FROM revenue"
36
- }
37
- },
38
- then: [{
39
- type: "expectOutput",
40
- match: {
41
- name: "Revenue Query",
42
- type: "sql"
43
- }
44
- }]
45
- }, {
46
- key: "error-invalid-sql",
47
- description: "Fail with invalid SQL",
48
- when: {
49
- operation: {
50
- key: "analytics.query.create",
51
- version: "1.0.0"
52
- },
53
- input: {
54
- name: "Bad Query",
55
- sql: ""
56
- }
57
- },
58
- then: [{
59
- type: "expectError",
60
- messageIncludes: "VALIDATION_ERROR"
61
- }]
62
- }]
4
+ var CreateQueryTest = defineTestSpec({
5
+ meta: {
6
+ key: "analytics.query.create.test",
7
+ version: "1.0.0",
8
+ title: "Create Query Test",
9
+ description: "Verifies query creation flow",
10
+ owners: ["@example.analytics-dashboard"],
11
+ tags: ["analytics", "query", "test"],
12
+ stability: "stable"
13
+ },
14
+ target: {
15
+ type: "operation",
16
+ operation: { key: "analytics.query.create", version: "1.0.0" }
17
+ },
18
+ scenarios: [
19
+ {
20
+ key: "success",
21
+ description: "Successfully create a query",
22
+ when: {
23
+ operation: { key: "analytics.query.create", version: "1.0.0" },
24
+ input: {
25
+ name: "Revenue Query",
26
+ sql: "SELECT * FROM revenue"
27
+ }
28
+ },
29
+ then: [
30
+ {
31
+ type: "expectOutput",
32
+ match: {
33
+ name: "Revenue Query",
34
+ type: "sql"
35
+ }
36
+ }
37
+ ]
38
+ },
39
+ {
40
+ key: "error-invalid-sql",
41
+ description: "Fail with invalid SQL",
42
+ when: {
43
+ operation: { key: "analytics.query.create", version: "1.0.0" },
44
+ input: {
45
+ name: "Bad Query",
46
+ sql: ""
47
+ }
48
+ },
49
+ then: [
50
+ {
51
+ type: "expectError",
52
+ messageIncludes: "VALIDATION_ERROR"
53
+ }
54
+ ]
55
+ }
56
+ ]
63
57
  });
64
- const ExecuteQueryTest = defineTestSpec({
65
- meta: {
66
- key: "analytics.query.execute.test",
67
- version: "1.0.0",
68
- title: "Execute Query Test",
69
- description: "Verifies query execution",
70
- owners: ["@example.analytics-dashboard"],
71
- tags: [
72
- "analytics",
73
- "query",
74
- "test"
75
- ],
76
- stability: "stable"
77
- },
78
- target: {
79
- type: "operation",
80
- operation: {
81
- key: "analytics.query.execute",
82
- version: "1.0.0"
83
- }
84
- },
85
- scenarios: [{
86
- key: "success",
87
- description: "Successfully execute query",
88
- when: {
89
- operation: {
90
- key: "analytics.query.execute",
91
- version: "1.0.0"
92
- },
93
- input: {
94
- queryId: "q-123",
95
- params: { limit: 10 }
96
- }
97
- },
98
- then: [{
99
- type: "expectOutput",
100
- match: { rowCount: 1 }
101
- }]
102
- }, {
103
- key: "error-query-not-found",
104
- description: "Fail when query not found",
105
- when: {
106
- operation: {
107
- key: "analytics.query.execute",
108
- version: "1.0.0"
109
- },
110
- input: {
111
- queryId: "q-999",
112
- params: {}
113
- }
114
- },
115
- then: [{
116
- type: "expectError",
117
- messageIncludes: "NOT_FOUND"
118
- }]
119
- }]
58
+ var ExecuteQueryTest = defineTestSpec({
59
+ meta: {
60
+ key: "analytics.query.execute.test",
61
+ version: "1.0.0",
62
+ title: "Execute Query Test",
63
+ description: "Verifies query execution",
64
+ owners: ["@example.analytics-dashboard"],
65
+ tags: ["analytics", "query", "test"],
66
+ stability: "stable"
67
+ },
68
+ target: {
69
+ type: "operation",
70
+ operation: { key: "analytics.query.execute", version: "1.0.0" }
71
+ },
72
+ scenarios: [
73
+ {
74
+ key: "success",
75
+ description: "Successfully execute query",
76
+ when: {
77
+ operation: { key: "analytics.query.execute", version: "1.0.0" },
78
+ input: {
79
+ queryId: "q-123",
80
+ params: { limit: 10 }
81
+ }
82
+ },
83
+ then: [
84
+ {
85
+ type: "expectOutput",
86
+ match: {
87
+ rowCount: 1
88
+ }
89
+ }
90
+ ]
91
+ },
92
+ {
93
+ key: "error-query-not-found",
94
+ description: "Fail when query not found",
95
+ when: {
96
+ operation: { key: "analytics.query.execute", version: "1.0.0" },
97
+ input: {
98
+ queryId: "q-999",
99
+ params: {}
100
+ }
101
+ },
102
+ then: [
103
+ {
104
+ type: "expectError",
105
+ messageIncludes: "NOT_FOUND"
106
+ }
107
+ ]
108
+ }
109
+ ]
120
110
  });
121
-
122
- //#endregion
123
- export { CreateQueryTest, ExecuteQueryTest };
124
- //# sourceMappingURL=query.test-spec.js.map
111
+ export {
112
+ ExecuteQueryTest,
113
+ CreateQueryTest
114
+ };
@@ -1,108 +1,104 @@
1
- import { PosthogQueryEngine, createPosthogQueryEngine } from "../datasource/posthog-datasource.js";
2
-
3
- //#region src/query-engine/index.d.ts
4
1
  /**
5
2
  * Analytics Query Engine
6
3
  *
7
4
  * Provides query execution and caching for analytics dashboards.
8
5
  */
9
- interface QueryDefinition {
10
- type: 'SQL' | 'METRIC' | 'AGGREGATION' | 'CUSTOM';
11
- sql?: string;
12
- metricIds?: string[];
13
- aggregation?: AggregationDefinition;
14
- custom?: CustomQueryDefinition;
6
+ export interface QueryDefinition {
7
+ type: 'SQL' | 'METRIC' | 'AGGREGATION' | 'CUSTOM';
8
+ sql?: string;
9
+ metricIds?: string[];
10
+ aggregation?: AggregationDefinition;
11
+ custom?: CustomQueryDefinition;
15
12
  }
16
- interface AggregationDefinition {
17
- source: string;
18
- measures: MeasureDefinition[];
19
- dimensions: DimensionDefinition[];
20
- filters?: FilterDefinition[];
21
- orderBy?: OrderByDefinition[];
22
- limit?: number;
13
+ export interface AggregationDefinition {
14
+ source: string;
15
+ measures: MeasureDefinition[];
16
+ dimensions: DimensionDefinition[];
17
+ filters?: FilterDefinition[];
18
+ orderBy?: OrderByDefinition[];
19
+ limit?: number;
23
20
  }
24
- interface MeasureDefinition {
25
- name: string;
26
- field: string;
27
- aggregation: 'COUNT' | 'SUM' | 'AVG' | 'MIN' | 'MAX' | 'COUNT_DISTINCT';
28
- format?: string;
21
+ export interface MeasureDefinition {
22
+ name: string;
23
+ field: string;
24
+ aggregation: 'COUNT' | 'SUM' | 'AVG' | 'MIN' | 'MAX' | 'COUNT_DISTINCT';
25
+ format?: string;
29
26
  }
30
- interface DimensionDefinition {
31
- name: string;
32
- field: string;
33
- type?: 'TIME' | 'STRING' | 'NUMBER';
34
- granularity?: 'HOUR' | 'DAY' | 'WEEK' | 'MONTH' | 'YEAR';
27
+ export interface DimensionDefinition {
28
+ name: string;
29
+ field: string;
30
+ type?: 'TIME' | 'STRING' | 'NUMBER';
31
+ granularity?: 'HOUR' | 'DAY' | 'WEEK' | 'MONTH' | 'YEAR';
35
32
  }
36
- interface FilterDefinition {
37
- field: string;
38
- operator: 'eq' | 'neq' | 'gt' | 'gte' | 'lt' | 'lte' | 'in' | 'nin' | 'contains' | 'between';
39
- value: unknown;
33
+ export interface FilterDefinition {
34
+ field: string;
35
+ operator: 'eq' | 'neq' | 'gt' | 'gte' | 'lt' | 'lte' | 'in' | 'nin' | 'contains' | 'between';
36
+ value: unknown;
40
37
  }
41
- interface OrderByDefinition {
42
- field: string;
43
- direction: 'ASC' | 'DESC';
38
+ export interface OrderByDefinition {
39
+ field: string;
40
+ direction: 'ASC' | 'DESC';
44
41
  }
45
- interface CustomQueryDefinition {
46
- handler: string;
47
- parameters: Record<string, unknown>;
42
+ export interface CustomQueryDefinition {
43
+ handler: string;
44
+ parameters: Record<string, unknown>;
48
45
  }
49
- interface QueryParameters {
50
- dateRange?: {
51
- start: Date;
52
- end: Date;
53
- granularity?: string;
54
- };
55
- filters?: FilterDefinition[];
56
- parameters?: Record<string, unknown>;
46
+ export interface QueryParameters {
47
+ dateRange?: {
48
+ start: Date;
49
+ end: Date;
50
+ granularity?: string;
51
+ };
52
+ filters?: FilterDefinition[];
53
+ parameters?: Record<string, unknown>;
57
54
  }
58
- interface QueryResult {
59
- data: Record<string, unknown>[];
60
- columns: ColumnDefinition[];
61
- rowCount: number;
62
- executionTimeMs: number;
63
- cached: boolean;
64
- cachedAt?: Date;
65
- error?: string;
55
+ export interface QueryResult {
56
+ data: Record<string, unknown>[];
57
+ columns: ColumnDefinition[];
58
+ rowCount: number;
59
+ executionTimeMs: number;
60
+ cached: boolean;
61
+ cachedAt?: Date;
62
+ error?: string;
66
63
  }
67
- interface ColumnDefinition {
68
- name: string;
69
- type: 'STRING' | 'NUMBER' | 'DATE' | 'BOOLEAN';
70
- label?: string;
71
- format?: string;
64
+ export interface ColumnDefinition {
65
+ name: string;
66
+ type: 'STRING' | 'NUMBER' | 'DATE' | 'BOOLEAN';
67
+ label?: string;
68
+ format?: string;
72
69
  }
73
- interface IQueryEngine {
74
- execute(definition: QueryDefinition, params: QueryParameters): Promise<QueryResult>;
75
- validateQuery(definition: QueryDefinition): {
76
- valid: boolean;
77
- errors: string[];
78
- };
70
+ export interface IQueryEngine {
71
+ execute(definition: QueryDefinition, params: QueryParameters): Promise<QueryResult>;
72
+ validateQuery(definition: QueryDefinition): {
73
+ valid: boolean;
74
+ errors: string[];
75
+ };
79
76
  }
80
- interface IQueryCache {
81
- get(key: string): Promise<QueryResult | null>;
82
- set(key: string, result: QueryResult, ttlSeconds: number): Promise<void>;
83
- invalidate(pattern: string): Promise<void>;
77
+ export interface IQueryCache {
78
+ get(key: string): Promise<QueryResult | null>;
79
+ set(key: string, result: QueryResult, ttlSeconds: number): Promise<void>;
80
+ invalidate(pattern: string): Promise<void>;
84
81
  }
85
- declare class InMemoryQueryCache implements IQueryCache {
86
- private cache;
87
- get(key: string): Promise<QueryResult | null>;
88
- set(key: string, result: QueryResult, ttlSeconds: number): Promise<void>;
89
- invalidate(pattern: string): Promise<void>;
82
+ export declare class InMemoryQueryCache implements IQueryCache {
83
+ private cache;
84
+ get(key: string): Promise<QueryResult | null>;
85
+ set(key: string, result: QueryResult, ttlSeconds: number): Promise<void>;
86
+ invalidate(pattern: string): Promise<void>;
90
87
  }
91
- declare class BasicQueryEngine implements IQueryEngine {
92
- private cache;
93
- constructor(cache?: IQueryCache);
94
- execute(definition: QueryDefinition, params: QueryParameters): Promise<QueryResult>;
95
- validateQuery(definition: QueryDefinition): {
96
- valid: boolean;
97
- errors: string[];
98
- };
99
- private buildCacheKey;
100
- private executeAggregation;
101
- private executeMetric;
102
- private executeSql;
103
- private generateMockData;
88
+ export declare class BasicQueryEngine implements IQueryEngine {
89
+ private cache;
90
+ constructor(cache?: IQueryCache);
91
+ execute(definition: QueryDefinition, params: QueryParameters): Promise<QueryResult>;
92
+ validateQuery(definition: QueryDefinition): {
93
+ valid: boolean;
94
+ errors: string[];
95
+ };
96
+ private buildCacheKey;
97
+ private executeAggregation;
98
+ private executeMetric;
99
+ private executeSql;
100
+ private generateMockData;
104
101
  }
105
- declare function createQueryEngine(cache?: IQueryCache): IQueryEngine;
106
- //#endregion
107
- export { AggregationDefinition, BasicQueryEngine, ColumnDefinition, CustomQueryDefinition, DimensionDefinition, FilterDefinition, IQueryCache, IQueryEngine, InMemoryQueryCache, MeasureDefinition, OrderByDefinition, PosthogQueryEngine, QueryDefinition, QueryParameters, QueryResult, createPosthogQueryEngine, createQueryEngine };
102
+ export declare function createQueryEngine(cache?: IQueryCache): IQueryEngine;
103
+ export { PosthogQueryEngine, createPosthogQueryEngine, } from '../datasource/posthog-datasource';
108
104
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../../src/query-engine/index.ts"],"mappings":";;;;;;AAQA;;UAAiB,eAAA;EACf,IAAA;EACA,GAAA;EACA,SAAA;EACA,WAAA,GAAc,qBAAA;EACd,MAAA,GAAS,qBAAA;AAAA;AAAA,UAGM,qBAAA;EACf,MAAA;EACA,QAAA,EAAU,iBAAA;EACV,UAAA,EAAY,mBAAA;EACZ,OAAA,GAAU,gBAAA;EACV,OAAA,GAAU,iBAAA;EACV,KAAA;AAAA;AAAA,UAGe,iBAAA;EACf,IAAA;EACA,KAAA;EACA,WAAA;EACA,MAAA;AAAA;AAAA,UAGe,mBAAA;EACf,IAAA;EACA,KAAA;EACA,IAAA;EACA,WAAA;AAAA;AAAA,UAGe,gBAAA;EACf,KAAA;EACA,QAAA;EAWA,KAAA;AAAA;AAAA,UAGe,iBAAA;EACf,KAAA;EACA,SAAA;AAAA;AAAA,UAGe,qBAAA;EACf,OAAA;EACA,UAAA,EAAY,MAAA;AAAA;AAAA,UAGG,eAAA;EACf,SAAA;IACE,KAAA,EAAO,IAAA;IACP,GAAA,EAAK,IAAA;IACL,WAAA;EAAA;EAEF,OAAA,GAAU,gBAAA;EACV,UAAA,GAAa,MAAA;AAAA;AAAA,UAGE,WAAA;EACf,IAAA,EAAM,MAAA;EACN,OAAA,EAAS,gBAAA;EACT,QAAA;EACA,eAAA;EACA,MAAA;EACA,QAAA,GAAW,IAAA;EACX,KAAA;AAAA;AAAA,UAGe,gBAAA;EACf,IAAA;EACA,IAAA;EACA,KAAA;EACA,MAAA;AAAA;AAAA,UAKe,YAAA;EACf,OAAA,CACE,UAAA,EAAY,eAAA,EACZ,MAAA,EAAQ,eAAA,GACP,OAAA,CAAQ,WAAA;EACX,aAAA,CAAc,UAAA,EAAY,eAAA;IACxB,KAAA;IACA,MAAA;EAAA;AAAA;AAAA,UAMa,WAAA;EACf,GAAA,CAAI,GAAA,WAAc,OAAA,CAAQ,WAAA;EAC1B,GAAA,CAAI,GAAA,UAAa,MAAA,EAAQ,WAAA,EAAa,UAAA,WAAqB,OAAA;EAC3D,UAAA,CAAW,OAAA,WAAkB,OAAA;AAAA;AAAA,cAGlB,kBAAA,YAA8B,WAAA;EAAA,QACjC,KAAA;EAEF,GAAA,CAAI,GAAA,WAAc,OAAA,CAAQ,WAAA;EAU1B,GAAA,CACJ,GAAA,UACA,MAAA,EAAQ,WAAA,EACR,UAAA,WACC,OAAA;EAKG,UAAA,CAAW,OAAA,WAAkB,OAAA;AAAA;AAAA,cAYxB,gBAAA,YAA4B,YAAA;EAAA,QAC/B,KAAA;cAEI,KAAA,GAAQ,WAAA;EAId,OAAA,CACJ,UAAA,EAAY,eAAA,EACZ,MAAA,EAAQ,eAAA,GACP,OAAA,CAAQ,WAAA;EAgEX,aAAA,CAAc,UAAA,EAAY,eAAA;IACxB,KAAA;IACA,MAAA;EAAA;EAAA,QAyCM,aAAA;EAAA,QAOM,kBAAA;EAAA,QAoCA,aAAA;EAAA,QAwBA,UAAA;EAAA,QAeN,gBAAA;AAAA;AAAA,iBAsCM,iBAAA,CAAkB,KAAA,GAAQ,WAAA,GAAc,YAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/query-engine/index.ts"],"names":[],"mappings":"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"}