linkgress-orm 0.0.1 → 0.0.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.
- package/LICENSE +21 -21
- package/README.md +196 -196
- package/dist/database/database-client.interface.d.ts +19 -3
- package/dist/database/database-client.interface.d.ts.map +1 -1
- package/dist/database/database-client.interface.js +7 -0
- package/dist/database/database-client.interface.js.map +1 -1
- package/dist/database/pg-client.d.ts +12 -3
- package/dist/database/pg-client.d.ts.map +1 -1
- package/dist/database/pg-client.js +47 -12
- package/dist/database/pg-client.js.map +1 -1
- package/dist/database/postgres-client.d.ts +13 -3
- package/dist/database/postgres-client.d.ts.map +1 -1
- package/dist/database/postgres-client.js +42 -10
- package/dist/database/postgres-client.js.map +1 -1
- package/dist/entity/db-context.d.ts +18 -0
- package/dist/entity/db-context.d.ts.map +1 -1
- package/dist/entity/db-context.js +11 -1
- package/dist/entity/db-context.js.map +1 -1
- package/dist/migration/db-schema-manager.js +77 -77
- package/dist/migration/enum-migrator.js +6 -6
- package/dist/query/cte-builder.js +5 -5
- package/dist/query/query-builder.d.ts.map +1 -1
- package/dist/query/query-builder.js +100 -51
- package/dist/query/query-builder.js.map +1 -1
- package/dist/query/strategies/jsonb-collection-strategy.js +38 -38
- package/dist/query/strategies/temptable-collection-strategy.js +62 -62
- package/package.json +1 -1
|
@@ -114,10 +114,10 @@ class DbSchemaManager {
|
|
|
114
114
|
}
|
|
115
115
|
for (const [enumName, enumDef] of enums.entries()) {
|
|
116
116
|
// Check if enum already exists
|
|
117
|
-
const checkSQL = `
|
|
118
|
-
SELECT EXISTS (
|
|
119
|
-
SELECT 1 FROM pg_type WHERE typname = $1
|
|
120
|
-
) as exists
|
|
117
|
+
const checkSQL = `
|
|
118
|
+
SELECT EXISTS (
|
|
119
|
+
SELECT 1 FROM pg_type WHERE typname = $1
|
|
120
|
+
) as exists
|
|
121
121
|
`;
|
|
122
122
|
const result = await this.client.query(checkSQL, [enumName]);
|
|
123
123
|
const exists = result.rows[0]?.exists;
|
|
@@ -152,13 +152,13 @@ class DbSchemaManager {
|
|
|
152
152
|
: `"${config.name}"`;
|
|
153
153
|
// Check if sequence already exists
|
|
154
154
|
const checkSQL = config.schema
|
|
155
|
-
? `SELECT EXISTS (
|
|
156
|
-
SELECT 1 FROM information_schema.sequences
|
|
157
|
-
WHERE sequence_schema = $1 AND sequence_name = $2
|
|
155
|
+
? `SELECT EXISTS (
|
|
156
|
+
SELECT 1 FROM information_schema.sequences
|
|
157
|
+
WHERE sequence_schema = $1 AND sequence_name = $2
|
|
158
158
|
) as exists`
|
|
159
|
-
: `SELECT EXISTS (
|
|
160
|
-
SELECT 1 FROM information_schema.sequences
|
|
161
|
-
WHERE sequence_name = $1 AND sequence_schema = 'public'
|
|
159
|
+
: `SELECT EXISTS (
|
|
160
|
+
SELECT 1 FROM information_schema.sequences
|
|
161
|
+
WHERE sequence_name = $1 AND sequence_schema = 'public'
|
|
162
162
|
) as exists`;
|
|
163
163
|
const checkParams = config.schema ? [config.schema, config.name] : [config.name];
|
|
164
164
|
const result = await this.client.query(checkSQL, checkParams);
|
|
@@ -279,10 +279,10 @@ class DbSchemaManager {
|
|
|
279
279
|
}
|
|
280
280
|
}
|
|
281
281
|
const qualifiedTableName = this.getQualifiedTableName(tableName, tableSchema.schema);
|
|
282
|
-
const createTableSQL = `
|
|
283
|
-
CREATE TABLE IF NOT EXISTS ${qualifiedTableName} (
|
|
284
|
-
${columnDefs.join(',\n ')}
|
|
285
|
-
)
|
|
282
|
+
const createTableSQL = `
|
|
283
|
+
CREATE TABLE IF NOT EXISTS ${qualifiedTableName} (
|
|
284
|
+
${columnDefs.join(',\n ')}
|
|
285
|
+
)
|
|
286
286
|
`;
|
|
287
287
|
if (this.logQueries) {
|
|
288
288
|
console.log(` Creating table ${qualifiedTableName}...`);
|
|
@@ -408,10 +408,10 @@ class DbSchemaManager {
|
|
|
408
408
|
}
|
|
409
409
|
// Add schema creation operations if needed
|
|
410
410
|
for (const schemaName of modelSchemas) {
|
|
411
|
-
const result = await this.client.query(`
|
|
412
|
-
SELECT EXISTS (
|
|
413
|
-
SELECT 1 FROM information_schema.schemata WHERE schema_name = $1
|
|
414
|
-
) as exists
|
|
411
|
+
const result = await this.client.query(`
|
|
412
|
+
SELECT EXISTS (
|
|
413
|
+
SELECT 1 FROM information_schema.schemata WHERE schema_name = $1
|
|
414
|
+
) as exists
|
|
415
415
|
`, [schemaName]);
|
|
416
416
|
if (!result.rows[0]?.exists) {
|
|
417
417
|
operations.push({ type: 'create_schema', schemaName });
|
|
@@ -420,10 +420,10 @@ class DbSchemaManager {
|
|
|
420
420
|
// Check enums
|
|
421
421
|
const modelEnums = enum_builder_1.EnumTypeRegistry.getAll();
|
|
422
422
|
for (const [enumName, enumDef] of modelEnums.entries()) {
|
|
423
|
-
const result = await this.client.query(`
|
|
424
|
-
SELECT EXISTS (
|
|
425
|
-
SELECT 1 FROM pg_type WHERE typname = $1
|
|
426
|
-
) as exists
|
|
423
|
+
const result = await this.client.query(`
|
|
424
|
+
SELECT EXISTS (
|
|
425
|
+
SELECT 1 FROM pg_type WHERE typname = $1
|
|
426
|
+
) as exists
|
|
427
427
|
`, [enumName]);
|
|
428
428
|
if (!result.rows[0]?.exists) {
|
|
429
429
|
operations.push({ type: 'create_enum', enumName, values: enumDef.values });
|
|
@@ -744,10 +744,10 @@ class DbSchemaManager {
|
|
|
744
744
|
* Get all existing tables in the database
|
|
745
745
|
*/
|
|
746
746
|
async getExistingTables() {
|
|
747
|
-
const result = await this.client.query(`
|
|
748
|
-
SELECT table_name
|
|
749
|
-
FROM information_schema.tables
|
|
750
|
-
WHERE table_schema = 'public' AND table_type = 'BASE TABLE'
|
|
747
|
+
const result = await this.client.query(`
|
|
748
|
+
SELECT table_name
|
|
749
|
+
FROM information_schema.tables
|
|
750
|
+
WHERE table_schema = 'public' AND table_type = 'BASE TABLE'
|
|
751
751
|
`);
|
|
752
752
|
const tables = new Map();
|
|
753
753
|
for (const row of result.rows) {
|
|
@@ -759,18 +759,18 @@ class DbSchemaManager {
|
|
|
759
759
|
* Get all columns for a table
|
|
760
760
|
*/
|
|
761
761
|
async getExistingColumns(tableName, schemaName) {
|
|
762
|
-
const result = await this.client.query(`
|
|
763
|
-
SELECT
|
|
764
|
-
column_name,
|
|
765
|
-
data_type,
|
|
766
|
-
character_maximum_length,
|
|
767
|
-
numeric_precision,
|
|
768
|
-
numeric_scale,
|
|
769
|
-
is_nullable,
|
|
770
|
-
column_default
|
|
771
|
-
FROM information_schema.columns
|
|
772
|
-
WHERE table_schema = $1 AND table_name = $2
|
|
773
|
-
ORDER BY ordinal_position
|
|
762
|
+
const result = await this.client.query(`
|
|
763
|
+
SELECT
|
|
764
|
+
column_name,
|
|
765
|
+
data_type,
|
|
766
|
+
character_maximum_length,
|
|
767
|
+
numeric_precision,
|
|
768
|
+
numeric_scale,
|
|
769
|
+
is_nullable,
|
|
770
|
+
column_default
|
|
771
|
+
FROM information_schema.columns
|
|
772
|
+
WHERE table_schema = $1 AND table_name = $2
|
|
773
|
+
ORDER BY ordinal_position
|
|
774
774
|
`, [schemaName || 'public', tableName]);
|
|
775
775
|
const columns = new Map();
|
|
776
776
|
for (const row of result.rows) {
|
|
@@ -782,22 +782,22 @@ class DbSchemaManager {
|
|
|
782
782
|
* Get all indexes for a table
|
|
783
783
|
*/
|
|
784
784
|
async getExistingIndexes(tableName, schemaName) {
|
|
785
|
-
const result = await this.client.query(`
|
|
786
|
-
SELECT
|
|
787
|
-
i.relname as index_name,
|
|
788
|
-
array_agg(a.attname ORDER BY k.ordinality) as column_names
|
|
789
|
-
FROM pg_index ix
|
|
790
|
-
JOIN pg_class t ON t.oid = ix.indrelid
|
|
791
|
-
JOIN pg_class i ON i.oid = ix.indexrelid
|
|
792
|
-
JOIN pg_namespace n ON n.oid = t.relnamespace
|
|
793
|
-
CROSS JOIN LATERAL unnest(ix.indkey) WITH ORDINALITY k(attnum, ordinality)
|
|
794
|
-
JOIN pg_attribute a ON a.attrelid = t.oid AND a.attnum = k.attnum
|
|
795
|
-
WHERE
|
|
796
|
-
n.nspname = $1
|
|
797
|
-
AND t.relname = $2
|
|
798
|
-
AND NOT ix.indisprimary
|
|
799
|
-
AND NOT ix.indisunique
|
|
800
|
-
GROUP BY i.relname
|
|
785
|
+
const result = await this.client.query(`
|
|
786
|
+
SELECT
|
|
787
|
+
i.relname as index_name,
|
|
788
|
+
array_agg(a.attname ORDER BY k.ordinality) as column_names
|
|
789
|
+
FROM pg_index ix
|
|
790
|
+
JOIN pg_class t ON t.oid = ix.indrelid
|
|
791
|
+
JOIN pg_class i ON i.oid = ix.indexrelid
|
|
792
|
+
JOIN pg_namespace n ON n.oid = t.relnamespace
|
|
793
|
+
CROSS JOIN LATERAL unnest(ix.indkey) WITH ORDINALITY k(attnum, ordinality)
|
|
794
|
+
JOIN pg_attribute a ON a.attrelid = t.oid AND a.attnum = k.attnum
|
|
795
|
+
WHERE
|
|
796
|
+
n.nspname = $1
|
|
797
|
+
AND t.relname = $2
|
|
798
|
+
AND NOT ix.indisprimary
|
|
799
|
+
AND NOT ix.indisunique
|
|
800
|
+
GROUP BY i.relname
|
|
801
801
|
`, [schemaName || 'public', tableName]);
|
|
802
802
|
return result.rows.map(row => ({
|
|
803
803
|
index_name: row.index_name,
|
|
@@ -808,29 +808,29 @@ class DbSchemaManager {
|
|
|
808
808
|
* Get all foreign key constraints for a table
|
|
809
809
|
*/
|
|
810
810
|
async getExistingForeignKeys(tableName, schemaName) {
|
|
811
|
-
const result = await this.client.query(`
|
|
812
|
-
SELECT
|
|
813
|
-
tc.constraint_name,
|
|
814
|
-
array_agg(kcu.column_name ORDER BY kcu.ordinal_position) as column_names,
|
|
815
|
-
ccu.table_name AS referenced_table,
|
|
816
|
-
array_agg(ccu.column_name ORDER BY kcu.ordinal_position) as referenced_column_names,
|
|
817
|
-
rc.delete_rule as on_delete,
|
|
818
|
-
rc.update_rule as on_update
|
|
819
|
-
FROM information_schema.table_constraints AS tc
|
|
820
|
-
JOIN information_schema.key_column_usage AS kcu
|
|
821
|
-
ON tc.constraint_name = kcu.constraint_name
|
|
822
|
-
AND tc.table_schema = kcu.table_schema
|
|
823
|
-
JOIN information_schema.constraint_column_usage AS ccu
|
|
824
|
-
ON ccu.constraint_name = tc.constraint_name
|
|
825
|
-
AND ccu.table_schema = tc.table_schema
|
|
826
|
-
JOIN information_schema.referential_constraints AS rc
|
|
827
|
-
ON rc.constraint_name = tc.constraint_name
|
|
828
|
-
AND rc.constraint_schema = tc.table_schema
|
|
829
|
-
WHERE
|
|
830
|
-
tc.table_schema = $1
|
|
831
|
-
AND tc.table_name = $2
|
|
832
|
-
AND tc.constraint_type = 'FOREIGN KEY'
|
|
833
|
-
GROUP BY tc.constraint_name, ccu.table_name, rc.delete_rule, rc.update_rule
|
|
811
|
+
const result = await this.client.query(`
|
|
812
|
+
SELECT
|
|
813
|
+
tc.constraint_name,
|
|
814
|
+
array_agg(kcu.column_name ORDER BY kcu.ordinal_position) as column_names,
|
|
815
|
+
ccu.table_name AS referenced_table,
|
|
816
|
+
array_agg(ccu.column_name ORDER BY kcu.ordinal_position) as referenced_column_names,
|
|
817
|
+
rc.delete_rule as on_delete,
|
|
818
|
+
rc.update_rule as on_update
|
|
819
|
+
FROM information_schema.table_constraints AS tc
|
|
820
|
+
JOIN information_schema.key_column_usage AS kcu
|
|
821
|
+
ON tc.constraint_name = kcu.constraint_name
|
|
822
|
+
AND tc.table_schema = kcu.table_schema
|
|
823
|
+
JOIN information_schema.constraint_column_usage AS ccu
|
|
824
|
+
ON ccu.constraint_name = tc.constraint_name
|
|
825
|
+
AND ccu.table_schema = tc.table_schema
|
|
826
|
+
JOIN information_schema.referential_constraints AS rc
|
|
827
|
+
ON rc.constraint_name = tc.constraint_name
|
|
828
|
+
AND rc.constraint_schema = tc.table_schema
|
|
829
|
+
WHERE
|
|
830
|
+
tc.table_schema = $1
|
|
831
|
+
AND tc.table_name = $2
|
|
832
|
+
AND tc.constraint_type = 'FOREIGN KEY'
|
|
833
|
+
GROUP BY tc.constraint_name, ccu.table_name, rc.delete_rule, rc.update_rule
|
|
834
834
|
`, [schemaName || 'public', tableName]);
|
|
835
835
|
return result.rows.map(row => ({
|
|
836
836
|
constraint_name: row.constraint_name,
|
|
@@ -14,12 +14,12 @@ class EnumMigrator {
|
|
|
14
14
|
* Get existing enum values from the database
|
|
15
15
|
*/
|
|
16
16
|
async getExistingEnumValues(enumName) {
|
|
17
|
-
const query = `
|
|
18
|
-
SELECT e.enumlabel as value
|
|
19
|
-
FROM pg_type t
|
|
20
|
-
JOIN pg_enum e ON t.oid = e.enumtypid
|
|
21
|
-
WHERE t.typname = $1
|
|
22
|
-
ORDER BY e.enumsortorder
|
|
17
|
+
const query = `
|
|
18
|
+
SELECT e.enumlabel as value
|
|
19
|
+
FROM pg_type t
|
|
20
|
+
JOIN pg_enum e ON t.oid = e.enumtypid
|
|
21
|
+
WHERE t.typname = $1
|
|
22
|
+
ORDER BY e.enumsortorder
|
|
23
23
|
`;
|
|
24
24
|
const result = await this.client.query(query, [enumName]);
|
|
25
25
|
if (result.rows.length === 0) {
|
|
@@ -107,11 +107,11 @@ class DbCteBuilder {
|
|
|
107
107
|
// However, getting all column names requires introspection we don't have access to here
|
|
108
108
|
// So we'll use jsonb_agg with to_jsonb which includes all columns
|
|
109
109
|
// The type system will indicate which fields should be excluded
|
|
110
|
-
const aggregationSql = `
|
|
111
|
-
SELECT ${selectColumns},
|
|
112
|
-
jsonb_agg(to_jsonb(t.*)) as "${finalAggregationAlias}"
|
|
113
|
-
FROM (${innerSql}) t
|
|
114
|
-
GROUP BY ${groupByClause}
|
|
110
|
+
const aggregationSql = `
|
|
111
|
+
SELECT ${selectColumns},
|
|
112
|
+
jsonb_agg(to_jsonb(t.*)) as "${finalAggregationAlias}"
|
|
113
|
+
FROM (${innerSql}) t
|
|
114
|
+
GROUP BY ${groupByClause}
|
|
115
115
|
`.trim();
|
|
116
116
|
// Update parameter offset
|
|
117
117
|
this.paramOffset = context.paramCounter;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-builder.d.ts","sourceRoot":"","sources":["../../src/query/query-builder.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"query-builder.d.ts","sourceRoot":"","sources":["../../src/query/query-builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,11 @@ const subquery_1 = require("./subquery");
|
|
|
6
6
|
const grouped_query_1 = require("./grouped-query");
|
|
7
7
|
const cte_builder_1 = require("./cte-builder");
|
|
8
8
|
const collection_strategy_factory_1 = require("./collection-strategy.factory");
|
|
9
|
+
/**
|
|
10
|
+
* Cached regex for numeric string detection
|
|
11
|
+
* Used to convert PostgreSQL NUMERIC/BIGINT strings to numbers
|
|
12
|
+
*/
|
|
13
|
+
const NUMERIC_REGEX = /^-?\d+(\.\d+)?$/;
|
|
9
14
|
/**
|
|
10
15
|
* Query builder for a table
|
|
11
16
|
*/
|
|
@@ -1739,33 +1744,59 @@ class SelectQueryBuilder {
|
|
|
1739
1744
|
* Transform database results
|
|
1740
1745
|
*/
|
|
1741
1746
|
transformResults(rows, selection) {
|
|
1742
|
-
|
|
1743
|
-
|
|
1744
|
-
|
|
1745
|
-
|
|
1746
|
-
|
|
1747
|
-
|
|
1748
|
-
|
|
1749
|
-
|
|
1750
|
-
|
|
1751
|
-
|
|
1752
|
-
|
|
1747
|
+
// Check if mappers are disabled for performance
|
|
1748
|
+
const disableMappers = this.executor?.getOptions().disableMappers ?? false;
|
|
1749
|
+
// Pre-analyze selection structure once instead of per-row
|
|
1750
|
+
// This avoids repeated Object.entries() calls and type checks
|
|
1751
|
+
const selectionKeys = Object.keys(selection);
|
|
1752
|
+
const selectionEntries = Object.entries(selection);
|
|
1753
|
+
// Pre-cache navigation placeholders to avoid repeated checks
|
|
1754
|
+
// Only cache actual navigation properties (arrays and getter-based navigation)
|
|
1755
|
+
const navigationPlaceholders = {};
|
|
1756
|
+
for (const [key, value] of selectionEntries) {
|
|
1757
|
+
if (Array.isArray(value) && value.length === 0) {
|
|
1758
|
+
navigationPlaceholders[key] = [];
|
|
1759
|
+
}
|
|
1760
|
+
else if (value === undefined) {
|
|
1761
|
+
navigationPlaceholders[key] = undefined;
|
|
1762
|
+
}
|
|
1763
|
+
else if (value && typeof value === 'object' && !('__dbColumnName' in value) && !('__fieldName' in value)) {
|
|
1764
|
+
// Check if it's a navigation property mock (object with getters)
|
|
1765
|
+
// Exclude FieldRef objects by checking for __fieldName
|
|
1766
|
+
const props = Object.getOwnPropertyNames(value);
|
|
1767
|
+
if (props.length > 0) {
|
|
1768
|
+
const firstProp = props[0];
|
|
1769
|
+
const descriptor = Object.getOwnPropertyDescriptor(value, firstProp);
|
|
1770
|
+
if (descriptor && descriptor.get) {
|
|
1771
|
+
navigationPlaceholders[key] = undefined;
|
|
1772
|
+
}
|
|
1753
1773
|
}
|
|
1754
|
-
|
|
1755
|
-
|
|
1756
|
-
|
|
1757
|
-
|
|
1758
|
-
|
|
1759
|
-
|
|
1760
|
-
|
|
1761
|
-
|
|
1762
|
-
|
|
1763
|
-
|
|
1774
|
+
}
|
|
1775
|
+
}
|
|
1776
|
+
// Pre-build column metadata cache to avoid repeated schema lookups
|
|
1777
|
+
const columnMetadataCache = {};
|
|
1778
|
+
if (!disableMappers) {
|
|
1779
|
+
for (const [key, value] of selectionEntries) {
|
|
1780
|
+
if (typeof value === 'object' && value !== null && '__fieldName' in value) {
|
|
1781
|
+
const fieldName = value.__fieldName;
|
|
1782
|
+
const column = this.schema.columns[fieldName];
|
|
1783
|
+
if (column) {
|
|
1784
|
+
const config = column.build();
|
|
1785
|
+
columnMetadataCache[key] = {
|
|
1786
|
+
hasMapper: !!config.mapper,
|
|
1787
|
+
mapper: config.mapper,
|
|
1788
|
+
config: config,
|
|
1789
|
+
};
|
|
1764
1790
|
}
|
|
1765
1791
|
}
|
|
1766
1792
|
}
|
|
1793
|
+
}
|
|
1794
|
+
return rows.map(row => {
|
|
1795
|
+
const result = {};
|
|
1796
|
+
// Copy navigation placeholders without iteration
|
|
1797
|
+
Object.assign(result, navigationPlaceholders);
|
|
1767
1798
|
// Then process actual data fields
|
|
1768
|
-
for (const [key, value] of
|
|
1799
|
+
for (const [key, value] of selectionEntries) {
|
|
1769
1800
|
// Skip if we already set this key as a navigation placeholder
|
|
1770
1801
|
// UNLESS there's actual data for this key in the row (e.g., from json_build_object)
|
|
1771
1802
|
if (key in result && (result[key] === undefined || Array.isArray(result[key])) && !(key in row && row[key] !== undefined && row[key] !== null)) {
|
|
@@ -1788,7 +1819,7 @@ class SelectQueryBuilder {
|
|
|
1788
1819
|
if (rawValue === null) {
|
|
1789
1820
|
result[key] = null;
|
|
1790
1821
|
}
|
|
1791
|
-
else if (typeof rawValue === 'string' &&
|
|
1822
|
+
else if (typeof rawValue === 'string' && NUMERIC_REGEX.test(rawValue)) {
|
|
1792
1823
|
result[key] = Number(rawValue);
|
|
1793
1824
|
}
|
|
1794
1825
|
else {
|
|
@@ -1818,49 +1849,61 @@ class SelectQueryBuilder {
|
|
|
1818
1849
|
}
|
|
1819
1850
|
else if (typeof value === 'object' && value !== null && typeof value.getMapper === 'function') {
|
|
1820
1851
|
// SqlFragment with custom mapper (check this BEFORE FieldRef to handle subquery/CTE fields with mappers)
|
|
1821
|
-
let mapper = value.getMapper();
|
|
1822
1852
|
const rawValue = row[key];
|
|
1823
|
-
if (
|
|
1824
|
-
//
|
|
1825
|
-
|
|
1826
|
-
|
|
1827
|
-
|
|
1828
|
-
|
|
1829
|
-
if (
|
|
1830
|
-
|
|
1853
|
+
if (disableMappers) {
|
|
1854
|
+
// Skip mapper transformation for performance
|
|
1855
|
+
result[key] = this.convertValue(rawValue);
|
|
1856
|
+
}
|
|
1857
|
+
else {
|
|
1858
|
+
let mapper = value.getMapper();
|
|
1859
|
+
if (mapper && rawValue !== null && rawValue !== undefined) {
|
|
1860
|
+
// If mapper is a CustomTypeBuilder, get the actual type
|
|
1861
|
+
if (typeof mapper.getType === 'function') {
|
|
1862
|
+
mapper = mapper.getType();
|
|
1863
|
+
}
|
|
1864
|
+
// Apply the fromDriver transformation
|
|
1865
|
+
if (typeof mapper.fromDriver === 'function') {
|
|
1866
|
+
result[key] = mapper.fromDriver(rawValue);
|
|
1867
|
+
}
|
|
1868
|
+
else {
|
|
1869
|
+
// Fallback if fromDriver doesn't exist
|
|
1870
|
+
result[key] = this.convertValue(rawValue);
|
|
1871
|
+
}
|
|
1831
1872
|
}
|
|
1832
1873
|
else {
|
|
1833
|
-
//
|
|
1874
|
+
// No mapper or null value - convert normally
|
|
1834
1875
|
result[key] = this.convertValue(rawValue);
|
|
1835
1876
|
}
|
|
1836
1877
|
}
|
|
1837
|
-
else {
|
|
1838
|
-
// No mapper or null value - convert normally
|
|
1839
|
-
result[key] = this.convertValue(rawValue);
|
|
1840
|
-
}
|
|
1841
1878
|
}
|
|
1842
1879
|
else if (typeof value === 'object' && value !== null && '__fieldName' in value) {
|
|
1843
1880
|
// FieldRef object - check if it has a custom mapper
|
|
1844
|
-
const
|
|
1845
|
-
|
|
1846
|
-
|
|
1847
|
-
|
|
1848
|
-
// Apply fromDriver mapper if present, convert null to undefined
|
|
1849
|
-
const rawValue = row[key];
|
|
1850
|
-
result[key] = rawValue === null
|
|
1851
|
-
? undefined
|
|
1852
|
-
: (config.mapper ? config.mapper.fromDriver(rawValue) : rawValue);
|
|
1881
|
+
const rawValue = row[key];
|
|
1882
|
+
if (disableMappers) {
|
|
1883
|
+
// Skip mapper transformation for performance
|
|
1884
|
+
result[key] = rawValue === null ? undefined : rawValue;
|
|
1853
1885
|
}
|
|
1854
1886
|
else {
|
|
1855
|
-
//
|
|
1856
|
-
|
|
1857
|
-
|
|
1887
|
+
// Use pre-cached column metadata instead of repeated lookups
|
|
1888
|
+
const cached = columnMetadataCache[key];
|
|
1889
|
+
if (cached) {
|
|
1890
|
+
// Field is in our schema - use cached mapper info
|
|
1891
|
+
result[key] = rawValue === null
|
|
1892
|
+
? undefined
|
|
1893
|
+
: (cached.hasMapper ? cached.mapper.fromDriver(rawValue) : rawValue);
|
|
1894
|
+
}
|
|
1895
|
+
else {
|
|
1896
|
+
// Field not in schema (e.g., CTE field, joined table field)
|
|
1897
|
+
// Always call convertValue to handle numeric string conversion
|
|
1898
|
+
result[key] = this.convertValue(row[key]);
|
|
1899
|
+
}
|
|
1858
1900
|
}
|
|
1859
1901
|
}
|
|
1860
1902
|
else {
|
|
1861
1903
|
// Convert null to undefined for all other values
|
|
1862
1904
|
// Also convert numeric strings to numbers for scalar subqueries (PostgreSQL returns NUMERIC as string)
|
|
1863
|
-
|
|
1905
|
+
const converted = this.convertValue(row[key]);
|
|
1906
|
+
result[key] = converted;
|
|
1864
1907
|
}
|
|
1865
1908
|
}
|
|
1866
1909
|
return result;
|
|
@@ -1875,7 +1918,7 @@ class SelectQueryBuilder {
|
|
|
1875
1918
|
}
|
|
1876
1919
|
// Check if it's a numeric string (PostgreSQL NUMERIC type)
|
|
1877
1920
|
// This handles scalar subqueries with aggregates like AVG, SUM, etc.
|
|
1878
|
-
if (typeof value === 'string' &&
|
|
1921
|
+
if (typeof value === 'string' && NUMERIC_REGEX.test(value)) {
|
|
1879
1922
|
const num = Number(value);
|
|
1880
1923
|
if (!isNaN(num)) {
|
|
1881
1924
|
return num;
|
|
@@ -1891,6 +1934,12 @@ class SelectQueryBuilder {
|
|
|
1891
1934
|
if (!targetSchema) {
|
|
1892
1935
|
return items;
|
|
1893
1936
|
}
|
|
1937
|
+
// Check if mappers are disabled for performance
|
|
1938
|
+
const disableMappers = this.executor?.getOptions().disableMappers ?? false;
|
|
1939
|
+
if (disableMappers) {
|
|
1940
|
+
// Skip mapper transformation for performance - return items as-is
|
|
1941
|
+
return items;
|
|
1942
|
+
}
|
|
1894
1943
|
return items.map(item => {
|
|
1895
1944
|
const transformedItem = {};
|
|
1896
1945
|
for (const [key, value] of Object.entries(item)) {
|