🚀 Socket Launch Week Day 5:Introducing Repository Access Permissions and Custom Roles.Learn more
Sign In

@kuindji/sql-type-parser

Package Overview
Dependencies
Maintainers
1
Versions
53
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@kuindji/sql-type-parser - npm Package Compare versions

Comparing version
0.4.16
to
0.4.17
+56
-5
dist/select/builder-types/validation.d.ts
import type { DatabaseSchema } from "../../common/schema.js";
import type { Trim } from "../../common/utils.js";
import type { SelectQueryBuilder } from "./builder.js";
import type { BuilderSqlTag, BuilderStateTag, ClauseList, ClauseListToString, DefaultSchemaName, IsLiteralString, JoinClauseString, SchemaTables } from "./helpers.js";
import type { AnyBuilderSqlTag, BuilderSqlTag, BuilderStateTag, ClauseList, ClauseListToString, DefaultSchemaName, IsLiteralString, JoinClauseString, SchemaTables, SqlClausePart } from "./helpers.js";
/**

@@ -39,8 +39,59 @@ * Extract the internal lightweight builder state tag from a builder type.

/**
* Validate a builder by assembling its SQL string and running the existing
* ValidateSQL helper over it. This runs once per builder (when the type is
* referenced), not per method, to keep type instantiation depth manageable.
* Extract base expression from a column (strips AS alias).
* Handles function calls with spaces inside correctly.
*/
export type ValidateBuilder<B> = B extends SelectQueryBuilder<infer Schema extends DatabaseSchema, any, infer Sql extends BuilderSqlTag<any, any, any, any, any, any, any, any, any, any>> ? BuilderTablesValid<Schema, Sql> : never;
type ColumnBaseExpr<S extends string> = Lowercase<S> extends `${string} as ${string}` ? S extends `${infer Base} AS ${string}` ? Base : S extends `${infer Base} As ${string}` ? Base : S extends `${infer Base} aS ${string}` ? Base : S extends `${infer Base} as ${string}` ? Base : S : S extends `${infer Base} "${string}"` ? Base : S;
/**
* Extract the table name from a FROM clause (strips alias).
* "users u" → "users", "users AS u" → "users", "users" → "users"
*/
type ExtractFromTableName<S extends string> = Lowercase<S> extends `${string} as ${string}` ? S extends `${infer Table} AS ${string}` ? Trim<Table> : S extends `${infer Table} As ${string}` ? Trim<Table> : S extends `${infer Table} aS ${string}` ? Trim<Table> : S extends `${infer Table} as ${string}` ? Trim<Table> : S : S extends `${infer Table} ${string}` ? Trim<Table> : S;
/**
* Extract the alias from a FROM clause.
* "users u" → "u", "users AS u" → "u", "users" → ""
*/
type ExtractFromAlias<S extends string> = Lowercase<S> extends `${string} as ${string}` ? S extends `${string} AS ${infer Alias}` ? Trim<Alias> : S extends `${string} As ${infer Alias}` ? Trim<Alias> : S extends `${string} aS ${infer Alias}` ? Trim<Alias> : S extends `${string} as ${infer Alias}` ? Trim<Alias> : "" : S extends `${string} ${infer Alias}` ? Trim<Alias> : "";
/**
* Validate a single column expression against the schema and from table.
* Handles:
* - Unqualified columns: "id", `"id"`
* - Table-qualified: "users.id", `users."id"`
* - Schema-qualified: "public.users.id", `public.users."id"`
* - Table aliases: "u.id" where FROM users u
* - Wildcards: "*", "users.*"
* - Expressions with casts, functions: treated as valid (skip validation)
*/
type ValidateColumnExpr<Schema extends DatabaseSchema, FromTable extends string, Expr extends string, ActualTable extends string = ExtractFromTableName<FromTable>, TableAlias extends string = ExtractFromAlias<FromTable>> = Expr extends "*" ? true : Expr extends `${infer Table}.*` ? Table extends ActualTable ? true : Table extends TableAlias ? true : Table extends keyof SchemaTables<Schema> ? true : `Column '${Expr}' references unknown table '${Table}'` : Expr extends `${string}::${string}` ? true : Expr extends `${string}(${string})${string}` ? true : Expr extends `${infer SchemaName}.${infer TableName}."${infer QuotedCol}"` ? SchemaName extends keyof Schema["schemas"] ? TableName extends keyof Schema["schemas"][SchemaName] ? QuotedCol extends keyof Schema["schemas"][SchemaName][TableName] ? true : `Column '${QuotedCol}' not found in '${SchemaName}.${TableName}'` : `Table '${TableName}' not found in schema '${SchemaName}'` : `Schema '${SchemaName}' not found` : Expr extends `${infer SchemaName}.${infer TableName}.${infer ColName}` ? SchemaName extends keyof Schema["schemas"] ? TableName extends keyof Schema["schemas"][SchemaName] ? ColName extends keyof Schema["schemas"][SchemaName][TableName] ? true : `Column '${ColName}' not found in '${SchemaName}.${TableName}'` : `Table '${TableName}' not found in schema '${SchemaName}'` : `Schema '${SchemaName}' not found` : Expr extends `${infer Qualifier}."${infer QuotedCol}"` ? Qualifier extends TableAlias ? ActualTable extends keyof SchemaTables<Schema> ? QuotedCol extends keyof SchemaTables<Schema>[ActualTable] ? true : `Column '${QuotedCol}' not found in table '${ActualTable}'` : true : Qualifier extends ActualTable ? ActualTable extends keyof SchemaTables<Schema> ? QuotedCol extends keyof SchemaTables<Schema>[ActualTable] ? true : `Column '${QuotedCol}' not found in table '${ActualTable}'` : true : Qualifier extends keyof SchemaTables<Schema> ? QuotedCol extends keyof SchemaTables<Schema>[Qualifier] ? true : `Column '${QuotedCol}' not found in table '${Qualifier}'` : true : Expr extends `${infer Qualifier}.${infer ColName}` ? Qualifier extends TableAlias ? ActualTable extends keyof SchemaTables<Schema> ? ColName extends keyof SchemaTables<Schema>[ActualTable] ? true : `Column '${ColName}' not found in table '${ActualTable}'` : true : Qualifier extends ActualTable ? ActualTable extends keyof SchemaTables<Schema> ? ColName extends keyof SchemaTables<Schema>[ActualTable] ? true : `Column '${ColName}' not found in table '${ActualTable}'` : true : Qualifier extends keyof SchemaTables<Schema> ? ColName extends keyof SchemaTables<Schema>[Qualifier] ? true : `Column '${ColName}' not found in table '${Qualifier}'` : true : Expr extends `"${infer QuotedCol}"` ? ActualTable extends keyof SchemaTables<Schema> ? QuotedCol extends keyof SchemaTables<Schema>[ActualTable] ? true : `Column '${QuotedCol}' not found in table '${ActualTable}'` : true : ActualTable extends keyof SchemaTables<Schema> ? Expr extends keyof SchemaTables<Schema>[ActualTable] ? true : `Column '${Expr}' not found in table '${ActualTable}'` : true;
/**
* Check if a string contains an unmatched opening parenthesis.
* Used to detect if we're in the middle of a function call.
*/
type HasUnmatchedParen<S extends string, Depth extends unknown[] = []> = S extends `${infer _}(${infer Rest}` ? HasUnmatchedParen<Rest, [...Depth, 1]> : S extends `${infer _})${infer Rest}` ? Depth extends [unknown, ...infer RestDepth] ? HasUnmatchedParen<Rest, RestDepth> : false : Depth["length"] extends 0 ? false : true;
/**
* Split columns by comma, but skip commas inside function calls.
* Returns the first complete column expression and the rest.
*/
type SplitColumnSafe<S extends string, Acc extends string = ""> = S extends `${infer Char}${infer Rest}` ? Char extends "," ? HasUnmatchedParen<Acc> extends true ? SplitColumnSafe<Rest, `${Acc},`> : Rest extends ` ${infer Trimmed}` ? [Acc, Trimmed] : [Acc, Rest] : SplitColumnSafe<Rest, `${Acc}${Char}`> : [Acc, ""];
/**
* Validate a single column from a ClauseList part.
* Splits comma-separated columns and validates each.
* Handles commas inside function calls correctly.
*/
type ValidateClausePartColumns<Schema extends DatabaseSchema, FromTable extends string, Sql extends string> = SplitColumnSafe<Sql> extends [infer Col extends string, infer Rest extends string] ? Rest extends "" ? ValidateColumnExpr<Schema, FromTable, ColumnBaseExpr<Trim<Col>>> : ValidateColumnExpr<Schema, FromTable, ColumnBaseExpr<Trim<Col>>> extends infer R ? R extends true ? ValidateClausePartColumns<Schema, FromTable, Rest> : R : true : ValidateColumnExpr<Schema, FromTable, ColumnBaseExpr<Trim<Sql>>>;
/**
* Iterate over ClauseList and validate all columns.
*/
type ValidateClauseListColumns<Schema extends DatabaseSchema, FromTable extends string, List extends ClauseList> = List extends readonly [infer First extends SqlClausePart, ...infer Rest] ? ValidateClausePartColumns<Schema, FromTable, First["sql"]> extends infer R ? R extends true ? Rest extends ClauseList ? ValidateClauseListColumns<Schema, FromTable, Rest> : true : R : true : true;
/**
* Validate all columns in the SELECT clause against the schema.
* Passes the full FROM clause (including alias) to enable alias resolution.
*/
type BuilderColumnsValid<Schema extends DatabaseSchema, Sql extends AnyBuilderSqlTag> = Sql["from"] extends infer F extends string ? Sql["select"] extends ClauseList ? ValidateClauseListColumns<Schema, F, Sql["select"]> : Sql["select"] extends string ? ValidateClausePartColumns<Schema, F, Sql["select"]> : true : true;
/**
* Validate a builder by checking both tables and columns.
* This runs once per builder (when the type is referenced), not per method,
* to keep type instantiation depth manageable.
*/
export type ValidateBuilder<B> = B extends SelectQueryBuilder<infer Schema extends DatabaseSchema, any, infer Sql extends BuilderSqlTag<any, any, any, any, any, any, any, any, any, any>> ? BuilderTablesValid<Schema, Sql> extends infer TableResult ? TableResult extends true ? BuilderColumnsValid<Schema, Sql> : TableResult : true : never;
export {};
//# sourceMappingURL=validation.d.ts.map
+1
-1

@@ -1,1 +0,1 @@

{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../../src/select/builder-types/validation.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../../src/select/builder-types/validation.ts"],"names":[],"mappings":"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"}
{
"name": "@kuindji/sql-type-parser",
"version": "0.4.16",
"version": "0.4.17",
"description": "Type-level SQL parser for TypeScript",

@@ -5,0 +5,0 @@ "author": "Ivan Kuindzhi",