tantan-typeorm-gs 1.0.1 → 1.0.3
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/core/query/interpreter.d.ts +2 -0
- package/dist/core/query/interpreter.d.ts.map +1 -1
- package/dist/core/query/interpreter.js +125 -13
- package/dist/core/query/interpreter.js.map +1 -1
- package/dist/core/query/types.d.ts +3 -0
- package/dist/core/query/types.d.ts.map +1 -1
- package/package.json +3 -3
|
@@ -17,6 +17,8 @@ export declare class GoogleSheetsQueryInterpreter {
|
|
|
17
17
|
private unwrapOuterParentheses;
|
|
18
18
|
private isWrappedByOuterParentheses;
|
|
19
19
|
extractColumnName(expression: string): string;
|
|
20
|
+
private evaluateSelectExpression;
|
|
21
|
+
private evaluateDistinctExpression;
|
|
20
22
|
evaluateAggregate(rows: Record<string, unknown>[], aggregate: AggregateColumn): number | null;
|
|
21
23
|
evaluateWhere(value: unknown, operator: WhereOperator, parameters: unknown[]): boolean;
|
|
22
24
|
private evaluateLike;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interpreter.d.ts","sourceRoot":"","sources":["../../../src/core/query/interpreter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,eAAe,EAEf,WAAW,EACX,SAAS,EACT,WAAW,EAEX,SAAS,EAET,OAAO,EAEP,UAAU,EACV,YAAY,EACZ,WAAW,EACX,eAAe,EACf,aAAa,EAChB,MAAM,YAAY,CAAC;AAGpB,qBAAa,4BAA4B;IAErC,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,CAiC3C;IAED,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,CAiC3C;IAED,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,CAO3C;IAED,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"interpreter.d.ts","sourceRoot":"","sources":["../../../src/core/query/interpreter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,eAAe,EAEf,WAAW,EACX,SAAS,EACT,WAAW,EAEX,SAAS,EAET,OAAO,EAEP,UAAU,EACV,YAAY,EACZ,WAAW,EACX,eAAe,EACf,aAAa,EAChB,MAAM,YAAY,CAAC;AAGpB,qBAAa,4BAA4B;IAErC,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,CAiC3C;IAED,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,CAiC3C;IAED,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,CAO3C;IAED,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,EAAE,CAiJhD;IAED,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAOlC;IAED,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,CA4BrC;IAED,OAAO,CAAC,mBAAmB;IA8G3B,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS,CAYzD;IAED,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe,EAAE,CAmEhD;IAED,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS,CAO/D;IAED,OAAO,CAAC,wBAAwB;IAgBhC,OAAO,CAAC,uBAAuB;IAwB/B,OAAO,CAAC,yBAAyB;IA4KjC,OAAO,CAAC,sBAAsB;IA0D9B,OAAO,CAAC,sBAAsB;IAY9B,OAAO,CAAC,2BAA2B;IAoBnC,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAO5C;IAED,OAAO,CAAC,wBAAwB;IA0ChC,OAAO,CAAC,0BAA0B;IAKlC,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,eAAe,GAAG,MAAM,GAAG,IAAI,CAuE5F;IAED,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,OAAO,CA6DrF;IAED,OAAO,CAAC,YAAY;IAWpB,uBAAuB,CACnB,UAAU,EAAE,eAAe,EAC3B,YAAY,EAAE,CACV,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,KACb,OAAO,EACZ,gBAAgB,EAAE,CACd,SAAS,EAAE,MAAM,KAChB,OAAO,GACb,OAAO,CAiCT;IAED,OAAO,CAAC,aAAa;IAoBrB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,EAAE,CA8CrC;IAED,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,CASzC;CACJ"}
|
|
@@ -54,7 +54,7 @@ export class GoogleSheetsQueryInterpreter {
|
|
|
54
54
|
const selectMatch = query.match(/^SELECT\s+(.+?)\s+FROM\s+/i);
|
|
55
55
|
if (!selectMatch?.[1])
|
|
56
56
|
throw new GoogleSheetsParseError('Unable to parse SELECT clause.');
|
|
57
|
-
|
|
57
|
+
const selectColumns = selectMatch[1]
|
|
58
58
|
.split(',')
|
|
59
59
|
.map((expression) => {
|
|
60
60
|
const normalizedExpression = expression.trim();
|
|
@@ -71,6 +71,24 @@ export class GoogleSheetsQueryInterpreter {
|
|
|
71
71
|
alias: literalMatch[2],
|
|
72
72
|
};
|
|
73
73
|
}
|
|
74
|
+
/**
|
|
75
|
+
* COUNT(DISTINCT(...))
|
|
76
|
+
*
|
|
77
|
+
* Example:
|
|
78
|
+
*
|
|
79
|
+
* COUNT(DISTINCT("Projects"."id" || '|;|' || "Projects"."title"))
|
|
80
|
+
* AS "cnt"
|
|
81
|
+
*/
|
|
82
|
+
const countDistinctMatch = normalizedExpression.match(/^COUNT\s*\(\s*DISTINCT\s*\(([\s\S]+)\)\s*\)\s+AS\s+"([^"]+)"$/i);
|
|
83
|
+
if (countDistinctMatch?.[1] && countDistinctMatch[2]) {
|
|
84
|
+
return {
|
|
85
|
+
tableAlias: '',
|
|
86
|
+
column: countDistinctMatch[1],
|
|
87
|
+
alias: countDistinctMatch[2],
|
|
88
|
+
aggregate: 'COUNT',
|
|
89
|
+
distinct: true,
|
|
90
|
+
};
|
|
91
|
+
}
|
|
74
92
|
/**
|
|
75
93
|
* Aggregate:
|
|
76
94
|
*
|
|
@@ -93,6 +111,7 @@ export class GoogleSheetsQueryInterpreter {
|
|
|
93
111
|
tableAlias,
|
|
94
112
|
column: aggregateMatch[2],
|
|
95
113
|
alias: aggregateMatch[3],
|
|
114
|
+
aggregate: aggregateMatch[1].toUpperCase(),
|
|
96
115
|
};
|
|
97
116
|
}
|
|
98
117
|
/**
|
|
@@ -138,6 +157,7 @@ export class GoogleSheetsQueryInterpreter {
|
|
|
138
157
|
alias: match[3],
|
|
139
158
|
};
|
|
140
159
|
});
|
|
160
|
+
return selectColumns;
|
|
141
161
|
}
|
|
142
162
|
parseFrom(query) {
|
|
143
163
|
const match = query.match(/\bFROM\s+"([^"]+)"\s+"([^"]+)"/i);
|
|
@@ -266,13 +286,44 @@ export class GoogleSheetsQueryInterpreter {
|
|
|
266
286
|
const expressions = selectMatch[1].split(',').map((expression) => expression.trim());
|
|
267
287
|
const aggregates = [];
|
|
268
288
|
for (const expression of expressions) {
|
|
269
|
-
|
|
289
|
+
/**
|
|
290
|
+
* COUNT(DISTINCT(...))
|
|
291
|
+
*
|
|
292
|
+
* Example:
|
|
293
|
+
*
|
|
294
|
+
* COUNT(DISTINCT(
|
|
295
|
+
* "Projects"."id" || '|;|' ||
|
|
296
|
+
* "Projects"."title" || '|;|' ||
|
|
297
|
+
* ...
|
|
298
|
+
* )) AS "cnt"
|
|
299
|
+
*/
|
|
300
|
+
const distinctMatch = expression.match(/^(COUNT|SUM|AVG|MIN|MAX)\s*\(\s*DISTINCT\s*\(([\s\S]+)\)\s*\)\s+AS\s+"([^"]+)"$/i);
|
|
301
|
+
if (distinctMatch?.[1] && distinctMatch[2] && distinctMatch[3]) {
|
|
302
|
+
aggregates.push({
|
|
303
|
+
function: distinctMatch[1].toUpperCase(),
|
|
304
|
+
argument: distinctMatch[2].trim(),
|
|
305
|
+
alias: distinctMatch[3],
|
|
306
|
+
distinct: true,
|
|
307
|
+
});
|
|
308
|
+
continue;
|
|
309
|
+
}
|
|
310
|
+
/**
|
|
311
|
+
* Normal aggregate.
|
|
312
|
+
*
|
|
313
|
+
* COUNT(*)
|
|
314
|
+
* COUNT(1)
|
|
315
|
+
* COUNT("Projects"."id")
|
|
316
|
+
* SUM("Projects"."age")
|
|
317
|
+
* etc.
|
|
318
|
+
*/
|
|
319
|
+
const match = expression.match(/^(COUNT|SUM|AVG|MIN|MAX)\s*\(\s*([\s\S]+?)\s*\)\s+AS\s+"([^"]+)"$/i);
|
|
270
320
|
if (!match?.[1] || !match[2] || !match[3])
|
|
271
321
|
continue;
|
|
272
322
|
aggregates.push({
|
|
273
323
|
function: match[1].toUpperCase(),
|
|
274
324
|
argument: match[2].trim(),
|
|
275
325
|
alias: match[3],
|
|
326
|
+
distinct: false,
|
|
276
327
|
});
|
|
277
328
|
}
|
|
278
329
|
return aggregates;
|
|
@@ -378,6 +429,28 @@ export class GoogleSheetsQueryInterpreter {
|
|
|
378
429
|
},
|
|
379
430
|
};
|
|
380
431
|
}
|
|
432
|
+
const castLikeMatch = normalizedExpression.match(/^CAST\(\s*(?:"([^"]+)"\.)?"([^"]+)"\s+AS\s+(?:CHAR|TEXT)\s*\)\s+(NOT\s+)?(I?LIKE)\s+(:[a-zA-Z_][a-zA-Z0-9_]*)$/i);
|
|
433
|
+
if (castLikeMatch?.[2] && castLikeMatch?.[4] && castLikeMatch?.[5]) {
|
|
434
|
+
const likeOperator = castLikeMatch[4].toUpperCase();
|
|
435
|
+
let operator;
|
|
436
|
+
if (likeOperator === 'LIKE') {
|
|
437
|
+
operator = castLikeMatch[3] ? 'NOT LIKE' : 'LIKE';
|
|
438
|
+
}
|
|
439
|
+
else {
|
|
440
|
+
operator = castLikeMatch[3] ? 'NOT ILIKE' : 'ILIKE';
|
|
441
|
+
}
|
|
442
|
+
return {
|
|
443
|
+
type: 'condition',
|
|
444
|
+
condition: {
|
|
445
|
+
tableAlias: castLikeMatch[1] ?? '',
|
|
446
|
+
column: castLikeMatch[2],
|
|
447
|
+
operator,
|
|
448
|
+
parameters: [
|
|
449
|
+
castLikeMatch[5],
|
|
450
|
+
],
|
|
451
|
+
}
|
|
452
|
+
};
|
|
453
|
+
}
|
|
381
454
|
/**
|
|
382
455
|
* LIKE / NOT LIKE
|
|
383
456
|
*
|
|
@@ -484,16 +557,55 @@ export class GoogleSheetsQueryInterpreter {
|
|
|
484
557
|
return match[1];
|
|
485
558
|
return expression.replace(/^"|"$/g, '');
|
|
486
559
|
}
|
|
560
|
+
evaluateSelectExpression(row, expression) {
|
|
561
|
+
const parts = expression.split(/\s*\|\|\s*/).map((part) => part.trim());
|
|
562
|
+
if (parts.length === 1) {
|
|
563
|
+
const part = parts[0];
|
|
564
|
+
const columnMatch = part.match(/^"?([^".]+)"?\."?([^".]+)"?$/);
|
|
565
|
+
if (columnMatch?.[1] && columnMatch[2]) {
|
|
566
|
+
const tableRow = row[columnMatch[1]];
|
|
567
|
+
if (tableRow && typeof tableRow === 'object') {
|
|
568
|
+
return tableRow[columnMatch[2]];
|
|
569
|
+
}
|
|
570
|
+
return undefined;
|
|
571
|
+
}
|
|
572
|
+
const literalMatch = part.match(/^'(.*)'$/s);
|
|
573
|
+
if (literalMatch)
|
|
574
|
+
return literalMatch[1];
|
|
575
|
+
return undefined;
|
|
576
|
+
}
|
|
577
|
+
const values = parts.map((part) => this.evaluateSelectExpression(row, part));
|
|
578
|
+
/**
|
|
579
|
+
* SQL concatenation:
|
|
580
|
+
*
|
|
581
|
+
* 'foo' || NULL
|
|
582
|
+
* => NULL
|
|
583
|
+
*/
|
|
584
|
+
if (values.some((value) => value === null || value === undefined))
|
|
585
|
+
return null;
|
|
586
|
+
return values.map((value) => String(value)).join('');
|
|
587
|
+
}
|
|
588
|
+
evaluateDistinctExpression(row, expression) {
|
|
589
|
+
return expression.split(/\s*\|\|\s*/).map((part) => this.evaluateSelectExpression(row, part.trim()));
|
|
590
|
+
}
|
|
487
591
|
evaluateAggregate(rows, aggregate) {
|
|
488
592
|
if (aggregate.function === 'COUNT') {
|
|
489
593
|
/**
|
|
490
594
|
* COUNT(*) / COUNT(1)
|
|
491
|
-
*
|
|
492
|
-
* TypeORM uses COUNT(1) for repository.count().
|
|
493
|
-
* Both forms count rows, not a column value.
|
|
494
595
|
*/
|
|
495
|
-
if (aggregate.argument === '*' || /^\d+$/.test(aggregate.argument))
|
|
496
|
-
|
|
596
|
+
if (aggregate.argument === '*' || /^\d+$/.test(aggregate.argument)) {
|
|
597
|
+
if (!aggregate.distinct)
|
|
598
|
+
return rows.length;
|
|
599
|
+
}
|
|
600
|
+
/**
|
|
601
|
+
* COUNT(DISTINCT expression)
|
|
602
|
+
*/
|
|
603
|
+
if (aggregate.distinct) {
|
|
604
|
+
const values = rows.map((row) => this.evaluateDistinctExpression(row, aggregate.argument))
|
|
605
|
+
.filter((value) => value !== null && value !== undefined);
|
|
606
|
+
const distinctValues = new Set(values.map((value) => JSON.stringify(value)));
|
|
607
|
+
return distinctValues.size;
|
|
608
|
+
}
|
|
497
609
|
}
|
|
498
610
|
const columnMatch = aggregate.argument.match(/^"?([^".]+)"?\."?([^".]+)"?$/);
|
|
499
611
|
const tableAlias = columnMatch?.[1];
|
|
@@ -501,21 +613,20 @@ export class GoogleSheetsQueryInterpreter {
|
|
|
501
613
|
const getValue = (row) => {
|
|
502
614
|
if (tableAlias) {
|
|
503
615
|
const tableRow = row[tableAlias];
|
|
504
|
-
if (tableRow && typeof tableRow === 'object')
|
|
616
|
+
if (tableRow && typeof tableRow === 'object') {
|
|
505
617
|
return tableRow[column];
|
|
618
|
+
}
|
|
506
619
|
return undefined;
|
|
507
620
|
}
|
|
508
621
|
return row[column];
|
|
509
622
|
};
|
|
510
|
-
const values = rows
|
|
511
|
-
.map((row) => getValue(row))
|
|
623
|
+
const values = rows.map((row) => getValue(row))
|
|
512
624
|
.filter((value) => value !== null && value !== undefined);
|
|
513
625
|
if (aggregate.function === 'COUNT')
|
|
514
626
|
return values.length;
|
|
515
627
|
if (values.length === 0)
|
|
516
628
|
return null;
|
|
517
|
-
const numericValues = values
|
|
518
|
-
.map((value) => typeof value === 'number' ? value : Number(value))
|
|
629
|
+
const numericValues = values.map((value) => typeof value === 'number' ? value : Number(value))
|
|
519
630
|
.filter((value) => Number.isFinite(value));
|
|
520
631
|
if (numericValues.length === 0)
|
|
521
632
|
return null;
|
|
@@ -524,7 +635,8 @@ export class GoogleSheetsQueryInterpreter {
|
|
|
524
635
|
case 'AVG': return numericValues.reduce((sum, value) => sum + value, 0) / numericValues.length;
|
|
525
636
|
case 'MIN': return Math.min(...numericValues);
|
|
526
637
|
case 'MAX': return Math.max(...numericValues);
|
|
527
|
-
default:
|
|
638
|
+
default:
|
|
639
|
+
throw new GoogleSheetsUnsupportedOperationError(`Unsupported aggregate function: ${aggregate.function}`);
|
|
528
640
|
}
|
|
529
641
|
}
|
|
530
642
|
evaluateWhere(value, operator, parameters) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interpreter.js","sourceRoot":"","sources":["../../../src/core/query/interpreter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"interpreter.js","sourceRoot":"","sources":["../../../src/core/query/interpreter.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,8 @@ export interface SelectColumn {
|
|
|
19
19
|
tableAlias: string;
|
|
20
20
|
column: string;
|
|
21
21
|
alias: string;
|
|
22
|
+
aggregate?: 'COUNT' | 'SUM' | 'AVG' | 'MIN' | 'MAX';
|
|
23
|
+
distinct?: boolean;
|
|
22
24
|
}
|
|
23
25
|
export interface FromQuery {
|
|
24
26
|
table: string;
|
|
@@ -75,6 +77,7 @@ export interface AggregateColumn {
|
|
|
75
77
|
function: AggregateFunction;
|
|
76
78
|
argument: string;
|
|
77
79
|
alias: string;
|
|
80
|
+
distinct?: boolean;
|
|
78
81
|
}
|
|
79
82
|
export type OrderDirection = 'ASC' | 'DESC';
|
|
80
83
|
export interface OrderBy {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/query/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,MAAM,WAAW,WAAW;IAExB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,WAAW;IAExB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE;QACT,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;KACjB,EAAE,CAAC;IACJ,KAAK,EAAE,eAAe,CAAC;CAC1B;AAED,MAAM,WAAW,WAAW;IAExB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,eAAe,CAAC;CAC1B;AAED,MAAM,WAAW,YAAY;IAEzB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/query/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "tantan-typeorm-gs",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.3",
|
|
4
4
|
"description": "A TypeORM-compatible driver for using Google Sheets as a data source.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"typeorm",
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
"exports": {
|
|
22
22
|
".": {
|
|
23
23
|
"types": "./dist/index.d.ts",
|
|
24
|
-
"
|
|
24
|
+
"default": "./dist/index.js"
|
|
25
25
|
}
|
|
26
26
|
},
|
|
27
27
|
"scripts": {
|
|
@@ -40,4 +40,4 @@
|
|
|
40
40
|
"peerDependencies": {
|
|
41
41
|
"typescript": "^7"
|
|
42
42
|
}
|
|
43
|
-
}
|
|
43
|
+
}
|