Skip to content

Commit 23a7d87

Browse files
author
aadamgough
committed
fixed build
1 parent 61c49b7 commit 23a7d87

File tree

5 files changed

+31
-16
lines changed

5 files changed

+31
-16
lines changed

apps/sim/tools/snowflake/describe_table.ts

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import type {
33
SnowflakeDescribeTableParams,
44
SnowflakeDescribeTableResponse,
55
} from '@/tools/snowflake/types'
6-
import { extractResponseData, parseAccountUrl } from '@/tools/snowflake/utils'
6+
import { extractResponseData, parseAccountUrl, sanitizeIdentifier } from '@/tools/snowflake/utils'
77
import type { ToolConfig } from '@/tools/types'
88

99
const logger = createLogger('SnowflakeDescribeTableTool')
@@ -79,9 +79,16 @@ export const snowflakeDescribeTableTool: ToolConfig<
7979
'X-Snowflake-Authorization-Token-Type': 'OAUTH',
8080
}),
8181
body: (params: SnowflakeDescribeTableParams) => {
82-
const requestBody: any = {
83-
statement: `DESCRIBE TABLE ${params.database}.${params.schema}.${params.table}`,
82+
const sanitizedDatabase = sanitizeIdentifier(params.database)
83+
const sanitizedSchema = sanitizeIdentifier(params.schema)
84+
const sanitizedTable = sanitizeIdentifier(params.table)
85+
const fullTableName = `${sanitizedDatabase}.${sanitizedSchema}.${sanitizedTable}`
86+
87+
const requestBody: Record<string, any> = {
88+
statement: `DESCRIBE TABLE ${fullTableName}`,
8489
timeout: 60,
90+
database: params.database,
91+
schema: params.schema,
8592
}
8693

8794
if (params.warehouse) {
@@ -92,7 +99,7 @@ export const snowflakeDescribeTableTool: ToolConfig<
9299
requestBody.role = params.role
93100
}
94101

95-
return JSON.stringify(requestBody)
102+
return requestBody
96103
},
97104
},
98105

apps/sim/tools/snowflake/execute_query.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ export const snowflakeExecuteQueryTool: ToolConfig<
8989
'X-Snowflake-Authorization-Token-Type': 'OAUTH',
9090
}),
9191
body: (params: SnowflakeExecuteQueryParams) => {
92-
const requestBody: any = {
92+
const requestBody: Record<string, any> = {
9393
statement: params.query,
9494
timeout: params.timeout || 60,
9595
}
@@ -110,7 +110,7 @@ export const snowflakeExecuteQueryTool: ToolConfig<
110110
requestBody.role = params.role
111111
}
112112

113-
return JSON.stringify(requestBody)
113+
return requestBody
114114
},
115115
},
116116

apps/sim/tools/snowflake/list_databases.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ export const snowflakeListDatabasesTool: ToolConfig<
6161
'X-Snowflake-Authorization-Token-Type': 'OAUTH',
6262
}),
6363
body: (params: SnowflakeListDatabasesParams) => {
64-
const requestBody: any = {
64+
const requestBody: Record<string, any> = {
6565
statement: 'SHOW DATABASES',
6666
timeout: 60,
6767
}
@@ -74,7 +74,7 @@ export const snowflakeListDatabasesTool: ToolConfig<
7474
requestBody.role = params.role
7575
}
7676

77-
return JSON.stringify(requestBody)
77+
return requestBody
7878
},
7979
},
8080

apps/sim/tools/snowflake/list_schemas.ts

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import type {
33
SnowflakeListSchemasParams,
44
SnowflakeListSchemasResponse,
55
} from '@/tools/snowflake/types'
6-
import { extractResponseData, parseAccountUrl } from '@/tools/snowflake/utils'
6+
import { extractResponseData, parseAccountUrl, sanitizeIdentifier } from '@/tools/snowflake/utils'
77
import type { ToolConfig } from '@/tools/types'
88

99
const logger = createLogger('SnowflakeListSchemasTool')
@@ -67,9 +67,12 @@ export const snowflakeListSchemasTool: ToolConfig<
6767
'X-Snowflake-Authorization-Token-Type': 'OAUTH',
6868
}),
6969
body: (params: SnowflakeListSchemasParams) => {
70-
const requestBody: any = {
71-
statement: `SHOW SCHEMAS IN DATABASE ${params.database}`,
70+
const sanitizedDatabase = sanitizeIdentifier(params.database)
71+
72+
const requestBody: Record<string, any> = {
73+
statement: `SHOW SCHEMAS IN DATABASE ${sanitizedDatabase}`,
7274
timeout: 60,
75+
database: params.database,
7376
}
7477

7578
if (params.warehouse) {
@@ -80,7 +83,7 @@ export const snowflakeListSchemasTool: ToolConfig<
8083
requestBody.role = params.role
8184
}
8285

83-
return JSON.stringify(requestBody)
86+
return requestBody
8487
},
8588
},
8689

apps/sim/tools/snowflake/list_tables.ts

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import type {
33
SnowflakeListTablesParams,
44
SnowflakeListTablesResponse,
55
} from '@/tools/snowflake/types'
6-
import { extractResponseData, parseAccountUrl } from '@/tools/snowflake/utils'
6+
import { extractResponseData, parseAccountUrl, sanitizeIdentifier } from '@/tools/snowflake/utils'
77
import type { ToolConfig } from '@/tools/types'
88

99
const logger = createLogger('SnowflakeListTablesTool')
@@ -73,9 +73,14 @@ export const snowflakeListTablesTool: ToolConfig<
7373
'X-Snowflake-Authorization-Token-Type': 'OAUTH',
7474
}),
7575
body: (params: SnowflakeListTablesParams) => {
76-
const requestBody: any = {
77-
statement: `SHOW TABLES IN ${params.database}.${params.schema}`,
76+
const sanitizedDatabase = sanitizeIdentifier(params.database)
77+
const sanitizedSchema = sanitizeIdentifier(params.schema)
78+
79+
const requestBody: Record<string, any> = {
80+
statement: `SHOW TABLES IN ${sanitizedDatabase}.${sanitizedSchema}`,
7881
timeout: 60,
82+
database: params.database,
83+
schema: params.schema,
7984
}
8085

8186
if (params.warehouse) {
@@ -86,7 +91,7 @@ export const snowflakeListTablesTool: ToolConfig<
8691
requestBody.role = params.role
8792
}
8893

89-
return JSON.stringify(requestBody)
94+
return requestBody
9095
},
9196
},
9297

0 commit comments

Comments
 (0)