@quillsql/node 0.8.2 → 0.8.4
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.
- package/dist/cjs/index.d.ts +28 -1
- package/dist/cjs/index.js +69 -10
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/models/Quill.d.ts +3 -1
- package/dist/cjs/utils/pivotTemplate.d.ts +93 -0
- package/dist/cjs/utils/pivotTemplate.js +508 -0
- package/dist/cjs/utils/pivotTemplate.js.map +1 -0
- package/dist/esm/index.d.ts +28 -1
- package/dist/esm/index.js +69 -10
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/models/Quill.d.ts +3 -1
- package/dist/esm/utils/pivotTemplate.d.ts +93 -0
- package/dist/esm/utils/pivotTemplate.js +494 -0
- package/dist/esm/utils/pivotTemplate.js.map +1 -0
- package/package.json +1 -1
- package/dist/cjs/index.ispec.d.ts +0 -0
- package/dist/cjs/index.ispec.js +0 -36
- package/dist/cjs/index.ispec.js.map +0 -1
- package/dist/cjs/index.uspec.d.ts +0 -0
- package/dist/cjs/index.uspec.js +0 -45
- package/dist/cjs/index.uspec.js.map +0 -1
- package/dist/esm/index.ispec.d.ts +0 -0
- package/dist/esm/index.ispec.js +0 -36
- package/dist/esm/index.ispec.js.map +0 -1
- package/dist/esm/index.uspec.d.ts +0 -0
- package/dist/esm/index.uspec.js +0 -45
- package/dist/esm/index.uspec.js.map +0 -1
package/dist/cjs/index.d.ts
CHANGED
|
@@ -2,6 +2,9 @@ import { CacheCredentials } from "./models/Cache";
|
|
|
2
2
|
import { QuillQueryParams } from "./models/Quill";
|
|
3
3
|
import "dotenv/config";
|
|
4
4
|
import { DatabaseConnectionConfig, DatabaseConnectionType } from "./db/DatabaseHelper";
|
|
5
|
+
import { SnowflakeConnectionConfig } from "./db/Snowflake";
|
|
6
|
+
import { MysqlConnectionConfig } from "./db/Mysql";
|
|
7
|
+
import { PostgresConnectionConfig } from "./db/Postgres";
|
|
5
8
|
export declare const SINGLE_TENANT = "QUILL_SINGLE_TENANT";
|
|
6
9
|
export declare const ALL_TENANTS = "QUILL_ALL_TENANTS";
|
|
7
10
|
/**
|
|
@@ -29,6 +32,30 @@ export declare class Quill implements AsyncDisposable {
|
|
|
29
32
|
private targetConnection;
|
|
30
33
|
private baseUrl;
|
|
31
34
|
private config;
|
|
35
|
+
constructor(data: {
|
|
36
|
+
privateKey: string;
|
|
37
|
+
databaseType: "snowflake";
|
|
38
|
+
databaseConnectionString?: string;
|
|
39
|
+
databaseConfig?: SnowflakeConnectionConfig;
|
|
40
|
+
cache?: Partial<CacheCredentials>;
|
|
41
|
+
metadataServerURL?: string;
|
|
42
|
+
});
|
|
43
|
+
constructor(data: {
|
|
44
|
+
privateKey: string;
|
|
45
|
+
databaseType: "mysql";
|
|
46
|
+
databaseConnectionString?: string;
|
|
47
|
+
databaseConfig?: MysqlConnectionConfig;
|
|
48
|
+
cache?: Partial<CacheCredentials>;
|
|
49
|
+
metadataServerURL?: string;
|
|
50
|
+
});
|
|
51
|
+
constructor(data: {
|
|
52
|
+
privateKey: string;
|
|
53
|
+
databaseType: "postgresql";
|
|
54
|
+
databaseConnectionString?: string;
|
|
55
|
+
databaseConfig?: PostgresConnectionConfig;
|
|
56
|
+
cache?: Partial<CacheCredentials>;
|
|
57
|
+
metadataServerURL?: string;
|
|
58
|
+
});
|
|
32
59
|
constructor(data: {
|
|
33
60
|
privateKey: string;
|
|
34
61
|
databaseType: DatabaseConnectionType;
|
|
@@ -37,7 +64,7 @@ export declare class Quill implements AsyncDisposable {
|
|
|
37
64
|
cache?: Partial<CacheCredentials>;
|
|
38
65
|
metadataServerURL?: string;
|
|
39
66
|
});
|
|
40
|
-
query({ tenants, flags, metadata, filters, }: QuillQueryParams): Promise<QuillQueryResult>;
|
|
67
|
+
query({ tenants, flags, metadata, filters, adminEnabled, }: QuillQueryParams): Promise<QuillQueryResult>;
|
|
41
68
|
private applyLimit;
|
|
42
69
|
private runQueries;
|
|
43
70
|
private postQuill;
|
package/dist/cjs/index.js
CHANGED
|
@@ -22,6 +22,7 @@ const Filters_1 = require("./models/Filters");
|
|
|
22
22
|
const schemaConversion_1 = require("./utils/schemaConversion");
|
|
23
23
|
const Filters_2 = require("./models/Filters");
|
|
24
24
|
const tenants_1 = require("./utils/tenants");
|
|
25
|
+
const pivotTemplate_1 = require("./utils/pivotTemplate");
|
|
25
26
|
exports.SINGLE_TENANT = "QUILL_SINGLE_TENANT";
|
|
26
27
|
exports.ALL_TENANTS = "QUILL_ALL_TENANTS";
|
|
27
28
|
const HOST = process.env.QUILL_ENV === "development"
|
|
@@ -62,7 +63,7 @@ class Quill {
|
|
|
62
63
|
this.targetConnection = new CachedConnection_1.CachedConnection(databaseType, credentials, cache || {});
|
|
63
64
|
}
|
|
64
65
|
query(_a) {
|
|
65
|
-
return __awaiter(this, arguments, void 0, function* ({ tenants, flags, metadata, filters, }) {
|
|
66
|
+
return __awaiter(this, arguments, void 0, function* ({ tenants, flags, metadata, filters, adminEnabled, }) {
|
|
66
67
|
var _b, _c, _d;
|
|
67
68
|
// TODO: Add support for multiple tenants
|
|
68
69
|
if (tenants === null || tenants === void 0 ? void 0 : tenants.length) {
|
|
@@ -80,16 +81,79 @@ class Quill {
|
|
|
80
81
|
}
|
|
81
82
|
let tenantFlags;
|
|
82
83
|
try {
|
|
84
|
+
// Handle pivot queries: run unique value query, then use results in pivot template
|
|
85
|
+
if (metadata.task === "pivot-template") {
|
|
86
|
+
// Step 1: Get pivot template and queries from server
|
|
87
|
+
const pivotTemplateResponse = yield this.postQuill("pivot-template", Object.assign(Object.assign({}, metadata), { sdkFilters: filters === null || filters === void 0 ? void 0 : filters.map(Filters_2.convertCustomFilter), tenants,
|
|
88
|
+
flags,
|
|
89
|
+
adminEnabled }));
|
|
90
|
+
if (pivotTemplateResponse.error) {
|
|
91
|
+
return {
|
|
92
|
+
status: "error",
|
|
93
|
+
error: pivotTemplateResponse.error,
|
|
94
|
+
data: pivotTemplateResponse.metadata || {},
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
const { template, config, distinctValuesQuery, rowCountQuery } = pivotTemplateResponse.metadata;
|
|
98
|
+
// Step 2: Run the distinct values query to get unique values
|
|
99
|
+
let distinctValues = [];
|
|
100
|
+
if (distinctValuesQuery) {
|
|
101
|
+
const distinctValueResults = yield this.runQueries([distinctValuesQuery], this.targetConnection.databaseType);
|
|
102
|
+
// Parse distinct values from database results
|
|
103
|
+
distinctValues = (0, pivotTemplate_1.parseDistinctValues)(distinctValueResults.queryResults[0], config.databaseType);
|
|
104
|
+
}
|
|
105
|
+
// Step 3: Hydrate the template with the distinct values
|
|
106
|
+
let finalQuery;
|
|
107
|
+
try {
|
|
108
|
+
finalQuery = (0, pivotTemplate_1.hydratePivotTemplate)(template, distinctValues, config);
|
|
109
|
+
}
|
|
110
|
+
catch (err) {
|
|
111
|
+
return {
|
|
112
|
+
status: "error",
|
|
113
|
+
error: `Failed to hydrate pivot template: ${err.message}`,
|
|
114
|
+
data: {},
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
// Step 4: Run queries - pivot query and optional row count query
|
|
118
|
+
const queriesToRun = [finalQuery];
|
|
119
|
+
if (rowCountQuery) {
|
|
120
|
+
// Hydrate the rowCountQuery with the same distinct values
|
|
121
|
+
const hydratedRowCountQuery = (0, pivotTemplate_1.hydratePivotTemplate)(rowCountQuery, distinctValues, config);
|
|
122
|
+
queriesToRun.push(hydratedRowCountQuery);
|
|
123
|
+
}
|
|
124
|
+
const finalResults = yield this.runQueries(queriesToRun, this.targetConnection.databaseType, metadata.databaseType, (_b = pivotTemplateResponse.metadata) === null || _b === void 0 ? void 0 : _b.runQueryConfig);
|
|
125
|
+
responseMetadata = pivotTemplateResponse.metadata || {};
|
|
126
|
+
// Set rows and fields from first query result (the pivot query)
|
|
127
|
+
if ((finalResults === null || finalResults === void 0 ? void 0 : finalResults.queryResults.length) >= 1) {
|
|
128
|
+
const queryResults = finalResults.queryResults[0];
|
|
129
|
+
if (queryResults.rows) {
|
|
130
|
+
responseMetadata.rows = queryResults.rows;
|
|
131
|
+
}
|
|
132
|
+
if (queryResults.fields) {
|
|
133
|
+
responseMetadata.fields = queryResults.fields;
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
// Remove internal SDK fields before returning to frontend
|
|
137
|
+
delete responseMetadata.template;
|
|
138
|
+
delete responseMetadata.distinctValuesQuery;
|
|
139
|
+
delete responseMetadata.rowCountQuery;
|
|
140
|
+
return {
|
|
141
|
+
data: responseMetadata,
|
|
142
|
+
queries: finalResults,
|
|
143
|
+
status: "success",
|
|
144
|
+
};
|
|
145
|
+
}
|
|
83
146
|
// If the task is one that requires flags to be synthesized from the tenants
|
|
84
147
|
if (FLAG_TASKS.has(metadata.task) &&
|
|
85
148
|
(tenants === null || tenants === void 0 ? void 0 : tenants[0]) !== exports.ALL_TENANTS &&
|
|
86
149
|
(tenants === null || tenants === void 0 ? void 0 : tenants[0]) !== exports.SINGLE_TENANT) {
|
|
87
150
|
const response = yield this.postQuill("tenant-mapped-flags", {
|
|
88
|
-
reportId: (
|
|
151
|
+
reportId: (_c = metadata.reportId) !== null && _c !== void 0 ? _c : metadata.dashboardItemId,
|
|
89
152
|
clientId: metadata.clientId,
|
|
90
153
|
dashboardName: metadata.name,
|
|
91
154
|
tenants,
|
|
92
155
|
flags,
|
|
156
|
+
adminEnabled,
|
|
93
157
|
});
|
|
94
158
|
if (response.error) {
|
|
95
159
|
return {
|
|
@@ -117,15 +181,9 @@ class Quill {
|
|
|
117
181
|
const preQueryResults = metadata.preQueries
|
|
118
182
|
? yield this.runQueries(metadata.preQueries, this.targetConnection.databaseType, metadata.databaseType, metadata.runQueryConfig)
|
|
119
183
|
: {};
|
|
120
|
-
|
|
121
|
-
return {
|
|
122
|
-
data: { queryResults: preQueryResults },
|
|
123
|
-
status: "success",
|
|
124
|
-
};
|
|
125
|
-
}
|
|
126
|
-
const response = yield this.postQuill(metadata.task, Object.assign(Object.assign(Object.assign(Object.assign({}, metadata), { sdkFilters: filters === null || filters === void 0 ? void 0 : filters.map(Filters_2.convertCustomFilter) }), preQueryResults), { tenants,
|
|
184
|
+
const response = yield this.postQuill(metadata.task, Object.assign(Object.assign({}, metadata), { sdkFilters: filters === null || filters === void 0 ? void 0 : filters.map(Filters_2.convertCustomFilter), tenants,
|
|
127
185
|
// as array
|
|
128
|
-
flags: tenantFlags, viewQuery: metadata.preQueries ? metadata.preQueries[0] : undefined }));
|
|
186
|
+
flags: tenantFlags, viewQuery: metadata.preQueries ? metadata.preQueries[0] : undefined, adminEnabled }));
|
|
129
187
|
if (response.error) {
|
|
130
188
|
return {
|
|
131
189
|
status: "error",
|
|
@@ -169,6 +227,7 @@ class Quill {
|
|
|
169
227
|
table: metadata.name,
|
|
170
228
|
clientId: metadata.clientId,
|
|
171
229
|
error: err.message,
|
|
230
|
+
adminEnabled,
|
|
172
231
|
});
|
|
173
232
|
}
|
|
174
233
|
return {
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -29,6 +29,8 @@ export interface QuillRequestMetadata {
|
|
|
29
29
|
clientId?: string;
|
|
30
30
|
deleted?: boolean;
|
|
31
31
|
databaseType?: string;
|
|
32
|
+
pivot?: any;
|
|
33
|
+
itemQuery?: string;
|
|
32
34
|
}
|
|
33
35
|
export interface QuillQueryParams {
|
|
34
36
|
tenants: {
|
|
@@ -50,6 +52,7 @@ export interface QuillQueryParams {
|
|
|
50
52
|
field: string;
|
|
51
53
|
table: string;
|
|
52
54
|
}[];
|
|
55
|
+
adminEnabled?: boolean;
|
|
53
56
|
}
|
|
54
57
|
export interface QuillConfig {
|
|
55
58
|
privateKey: string;
|
|
@@ -77,7 +80,6 @@ export interface AdditionalProcessing {
|
|
|
77
80
|
arrayName: string;
|
|
78
81
|
field: string;
|
|
79
82
|
};
|
|
80
|
-
overridePost?: boolean;
|
|
81
83
|
convertDatatypes?: boolean;
|
|
82
84
|
limitThousand?: boolean;
|
|
83
85
|
limitBy?: number;
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pivot Template System - SDK SIDE
|
|
3
|
+
*
|
|
4
|
+
* This file contains all the logic needed on the SDK to:
|
|
5
|
+
* 1. Hydrate pivot query templates with actual distinct values
|
|
6
|
+
* 2. Parse distinct values from different database result formats
|
|
7
|
+
* 3. Validate templates before hydration
|
|
8
|
+
*
|
|
9
|
+
* This runs on the customer's Node SDK where customer data is accessible.
|
|
10
|
+
* Takes templates from server and populates them with actual data.
|
|
11
|
+
*/
|
|
12
|
+
export declare const MAX_PIVOT_UNIQUE_VALUES = 250;
|
|
13
|
+
export declare const PIVOT_COLUMN_MARKER = "{{QUILL_PIVOT_COLUMNS}}";
|
|
14
|
+
export declare const PIVOT_COLUMN_ALIAS_MARKER = "{{QUILL_PIVOT_COLUMN_ALIASES}}";
|
|
15
|
+
export interface PivotConfig {
|
|
16
|
+
requiresDistinctValues: boolean;
|
|
17
|
+
columnField?: string;
|
|
18
|
+
rowField?: string;
|
|
19
|
+
rowFieldType?: string;
|
|
20
|
+
aggregations: Array<{
|
|
21
|
+
aggregationType: string;
|
|
22
|
+
valueField?: string;
|
|
23
|
+
valueFieldType?: string;
|
|
24
|
+
valueField2?: string;
|
|
25
|
+
valueField2Type?: string;
|
|
26
|
+
}>;
|
|
27
|
+
databaseType: string;
|
|
28
|
+
dateBucket?: string;
|
|
29
|
+
pivotType: "2d-string" | "2d-date" | "1d-string" | "1d-date" | "aggregation";
|
|
30
|
+
sort?: boolean;
|
|
31
|
+
sortField?: string;
|
|
32
|
+
sortDirection?: string;
|
|
33
|
+
rowLimit?: number;
|
|
34
|
+
}
|
|
35
|
+
export interface PivotQueryTemplate {
|
|
36
|
+
template: string;
|
|
37
|
+
config: PivotConfig;
|
|
38
|
+
distinctValuesQuery?: string;
|
|
39
|
+
countQuery?: string;
|
|
40
|
+
rowCountQuery?: string;
|
|
41
|
+
minMaxDateRangeQuery?: string;
|
|
42
|
+
}
|
|
43
|
+
export declare function processSingleQuotes(value: string, databaseType: string): string;
|
|
44
|
+
export declare function processAggType(aggType: string, hasColumnField?: boolean): string;
|
|
45
|
+
export declare function processColumnReference(column: string, databaseType: string, fallbackOnNull?: string, isColumnFieldAlias?: boolean, isValueFieldAlias?: boolean): string;
|
|
46
|
+
export declare function processValueField(aggType: string, databaseType: string, valueField: string): string;
|
|
47
|
+
/**
|
|
48
|
+
* Parses distinct values from database query results.
|
|
49
|
+
* Different databases return different formats.
|
|
50
|
+
*/
|
|
51
|
+
export declare function parseDistinctValues(queryResult: any, databaseType: string): string[];
|
|
52
|
+
/**
|
|
53
|
+
* Hydrates a pivot query template with actual distinct values.
|
|
54
|
+
* This function should be called in the Node SDK after fetching distinct values.
|
|
55
|
+
*
|
|
56
|
+
* @param template - The SQL template string containing markers
|
|
57
|
+
* @param distinctValues - Array of distinct values fetched from the database
|
|
58
|
+
* @param config - config about the pivot configuration
|
|
59
|
+
* @returns Hydrated SQL query string ready to execute
|
|
60
|
+
*/
|
|
61
|
+
export declare function hydratePivotTemplate(template: string, distinctValues: string[], config: PivotConfig): string;
|
|
62
|
+
/**
|
|
63
|
+
* Validates that a template can be hydrated with the given config
|
|
64
|
+
*/
|
|
65
|
+
export declare function validateTemplate(template: string, config: PivotConfig): {
|
|
66
|
+
valid: boolean;
|
|
67
|
+
errors: string[];
|
|
68
|
+
};
|
|
69
|
+
/**
|
|
70
|
+
* Matches the casing of text to template
|
|
71
|
+
*/
|
|
72
|
+
export declare function matchCasing(text: string | undefined, template: string | undefined): string;
|
|
73
|
+
/**
|
|
74
|
+
* Combines a base query with a hydrated pivot template.
|
|
75
|
+
* The hydrated template already includes the WITH quill_base_table CTE (from itemQuery.replace),
|
|
76
|
+
* so we should NOT prepend anything. The template IS the complete query.
|
|
77
|
+
*/
|
|
78
|
+
export declare function combineBaseQueryWithTemplate(baseQuery: string, hydratedTemplate: string): string;
|
|
79
|
+
/**
|
|
80
|
+
* Extracts the base query from a template by removing the pivot-specific parts.
|
|
81
|
+
* This is useful when you need to get the original base query back.
|
|
82
|
+
*/
|
|
83
|
+
export declare function extractBaseQueryFromTemplate(template: string): string;
|
|
84
|
+
/**
|
|
85
|
+
* Complete workflow: fetch distinct values and hydrate template
|
|
86
|
+
* This is a convenience function that combines the common SDK workflow
|
|
87
|
+
*/
|
|
88
|
+
export declare function executePivotTemplate(template: PivotQueryTemplate, baseQuery: string, executeQuery: (sql: string) => Promise<any>): Promise<{
|
|
89
|
+
pivotResults: any;
|
|
90
|
+
rowCount?: number;
|
|
91
|
+
distinctValuesCount?: number;
|
|
92
|
+
finalSQL: string;
|
|
93
|
+
}>;
|