@prisma-next/sql-lane-query-builder 0.11.0-dev.2 → 0.11.0-dev.20

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/index.d.mts CHANGED
@@ -261,7 +261,7 @@ type TableAsterisk<TTableName extends string = string, THash extends StorageHash
261
261
  * through a union of leaves where each leaf carries a literal kind, so
262
262
  * requiring `kind` at the base would be unearned. Future leaves that
263
263
  * earn polymorphic dispatch override with a required literal at that
264
- * leaf (e.g. `override readonly kind = 'postgres-enum' as const`).
264
+ * leaf (e.g. `override readonly kind = 'pack-contributed-kind' as const`).
265
265
  *
266
266
  * `IRNodeBase` carries no methods: the freeze-and-assign affordance
267
267
  * lives in the free `freezeNode` helper below. Keeping `freezeNode` out
@@ -378,7 +378,7 @@ interface Storage extends IRNode {
378
378
  * The slot is polymorphic at the framework level: a family or target can
379
379
  * persist either a JSON-clean codec-triple object literal (carrying
380
380
  * `kind: 'codec-instance'`) or a class-instance IR node with a narrower
381
- * kind discriminator (e.g. `'postgres-enum'`). Hydration walkers,
381
+ * kind discriminator (e.g. `'<kind>'`). Hydration walkers,
382
382
  * verifiers, and planners dispatch on the `kind` literal to recover the
383
383
  * precise variant.
384
384
  *
@@ -394,7 +394,7 @@ interface StorageType extends IRNode {
394
394
  readonly kind: string;
395
395
  } //#endregion
396
396
  //#endregion
397
- //#region ../../1-core/contract/dist/types-DZpIXwK4.d.mts
397
+ //#region ../../1-core/contract/dist/types-m5NX52zE.d.mts
398
398
  //#region src/ir/sql-node.d.ts
399
399
  /**
400
400
  * SQL family IR node base. Carries the family-level `kind` discriminator
@@ -696,13 +696,13 @@ interface StorageTypeInstanceInput {
696
696
  * Polymorphic value type for document-scoped `SqlStorage.types` entries
697
697
  * (codec aliases / parameterised native type registrations). Postgres
698
698
  * native enum registrations live under
699
- * `storage.namespaces[namespaceId].types` instead.
699
+ * `storage.namespaces[namespaceId].enum` instead.
700
700
  */
701
701
  type SqlStorageTypeEntry = StorageTypeInstance | StorageTypeInstanceInput | PostgresEnumStorageEntry;
702
702
  interface SqlNamespaceTablesInput {
703
703
  readonly id: string;
704
704
  readonly tables?: Record<string, StorageTable | StorageTableInput>;
705
- readonly types?: Record<string, PostgresEnumStorageEntry>;
705
+ readonly enum?: Record<string, PostgresEnumStorageEntry>;
706
706
  }
707
707
  interface SqlStorageInput<THash extends string = string> {
708
708
  readonly storageHash: StorageHashBase<THash>;
@@ -739,7 +739,7 @@ interface SqlStorageInput<THash extends string = string> {
739
739
  */
740
740
  type SqlNamespace = Namespace & {
741
741
  readonly tables: Readonly<Record<string, StorageTable>>;
742
- readonly types?: Readonly<Record<string, PostgresEnumStorageEntry>>;
742
+ readonly enum?: Readonly<Record<string, PostgresEnumStorageEntry>>;
743
743
  };
744
744
  declare class SqlStorage<THash extends string = string> extends SqlNode implements Storage {
745
745
  readonly storageHash: StorageHashBase<THash>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":["ScalarFieldType","Record","kind","codecId","typeParams","ValueObjectFieldType","name","UnionFieldType","ReadonlyArray","members","ContractFieldType","ContractField","nullable","type","many","dict","ContractRelationOn","localFields","targetFields","ContractReferenceRelation","to","cardinality","on","ContractEmbedRelation","ContractRelation","ContractDiscriminator","field","ContractVariantEntry","value","ContractValueObject","fields","ModelStorageBase","Readonly","ContractModelBase","TModelStorage","relations","storage","discriminator","variants","base","owner","ContractModel","HasModelsWithRelations","models","ReferenceRelationKeys","TContract","ModelName","K","EmbedRelationKeys","$","Brand","TKey","TValue","StorageHashBase","THash","ExecutionHashBase","executionHash","T","coreHash","ProfileHashBase","profileHash","StorageBase","storageHash","FieldType","items","properties","GeneratedValueSpec","id","params","JsonPrimitive","JsonValue","key","ColumnDefaultLiteralValue","ColumnDefaultLiteralInputValue","Date","isColumnDefaultLiteralInputValue","ColumnDefault","expression","isColumnDefault","ExecutionMutationDefaultValue","isExecutionMutationDefaultValue","ExecutionMutationDefault","ref","table","column","onCreate","onUpdate","ExecutionMutationDefaultPhases","Omit","ExecutionSection","mutations","defaults","Source","readOnly","projection","origin","capabilities","DocIndex","Expr","keys","unique","where","path","DocCollection","strategy","indexes","PlanMeta","target","targetFamily","lane","annotations","ContractMarkerRecord","contractJson","canonicalVersion","updatedAt","appTag","meta","invariants","ContractExecutionSection","Contract","TStorage","TModels","roots","valueObjects","domain","extensionPacks","execution","A","B","C","D","E","F","G","H","I","J","L","M","N","O","P","R","S","U","V","W","_","a","b","c","d","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","IRNode","kind","IRNodeBase","freezeNode","T","node","UNBOUND_NAMESPACE_ID","Namespace","id","NamespaceBase","EntityCoordinate","plane","namespaceId","entityKind","entityName","elementCoordinates","Storage","Generator","storage","Record","Readonly","namespaces","StorageType","IRNodeBase","Namespace","NamespaceBase","Storage","StorageType","ColumnDefault","StorageHashBase","CodecTrait","SqlNode","kind","constructor","ForeignKeyReferenceInput","namespaceId","tableName","columns","ForeignKeyReference","input","ReferentialAction","ForeignKeyInput","source","target","name","onDelete","onUpdate","constraint","index","ForeignKey","POSTGRES_ENUM_KIND","PostgresEnumStorageEntry","nativeType","values","codecId","isPostgresEnumStorageEntry","value","PrimaryKeyInput","PrimaryKey","IndexInput","Record","type","options","Index","StorageColumnInput","nullable","typeParams","typeRef","default","StorageColumn","UniqueConstraintInput","UniqueConstraint","StorageTableInput","ReadonlyArray","primaryKey","uniques","indexes","foreignKeys","StorageTable","Readonly","CODEC_INSTANCE_KIND","StorageTypeInstance","StorageTypeInstanceInput","toStorageTypeInstance","isStorageTypeInstance","SqlStorageTypeEntry","SqlNamespaceTablesInput","id","tables","types","SqlStorageInput","THash","storageHash","namespaces","SqlNamespace","SqlStorage","__unbound__","SqlUnboundNamespace","instance","ForeignKeyOptions","SqlModelFieldStorage","column","SqlModelStorage","table","fields","DEFAULT_FK_CONSTRAINT","DEFAULT_FK_INDEX","applyFkDefaults","fk","overrideDefaults","TypeMaps","TCodecTypes","TQueryOperationTypes","TFieldOutputTypes","TFieldInputTypes","output","codecTypes","queryOperationTypes","fieldOutputTypes","fieldInputTypes","CodecTypesOf","T","C","QueryOperationSelfSpec","traits","QueryOperationReturn","returnType","QueryOperationTypeEntry","self","impl","args","SqlQueryOperationTypes","_CT","QueryOperationTypesBase","QueryOperationTypesOf","Q","TypeMapsPhantomKey","ContractWithTypeMaps","TContract","TTypeMaps","K","ExtractTypeMapsFromContract","NonNullable","FieldOutputTypesOf","F","FieldInputTypesOf","ExtractCodecTypes","ExtractQueryOperationTypes","ExtractFieldOutputTypes","ExtractFieldInputTypes","ResolveCodecTypes","$","A","B","D","E","G","H","I","J","L","M","N","O","P","R","S","U","V","W","X","Y","Z","_","a","b","c","d","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"],"sources":["../../../../1-framework/0-foundation/contract/dist/contract-types-Bt2uyqs3.d.mts","../src/type-errors.ts","../src/column-reference.ts","../../../../1-framework/1-core/framework-components/dist/ir.d.mts","../../../1-core/contract/dist/types-DZpIXwK4.d.mts","../src/type-atoms.ts","../src/selection.ts","../src/table-reference.ts","../src/ref.ts","../src/select-builder.ts","../src/root.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.mts","names":["ScalarFieldType","Record","kind","codecId","typeParams","ValueObjectFieldType","name","UnionFieldType","ReadonlyArray","members","ContractFieldType","ContractField","nullable","type","many","dict","ContractRelationOn","localFields","targetFields","ContractReferenceRelation","to","cardinality","on","ContractEmbedRelation","ContractRelation","ContractDiscriminator","field","ContractVariantEntry","value","ContractValueObject","fields","ModelStorageBase","Readonly","ContractModelBase","TModelStorage","relations","storage","discriminator","variants","base","owner","ContractModel","HasModelsWithRelations","models","ReferenceRelationKeys","TContract","ModelName","K","EmbedRelationKeys","$","Brand","TKey","TValue","StorageHashBase","THash","ExecutionHashBase","executionHash","T","coreHash","ProfileHashBase","profileHash","StorageBase","storageHash","FieldType","items","properties","GeneratedValueSpec","id","params","JsonPrimitive","JsonValue","key","ColumnDefaultLiteralValue","ColumnDefaultLiteralInputValue","Date","isColumnDefaultLiteralInputValue","ColumnDefault","expression","isColumnDefault","ExecutionMutationDefaultValue","isExecutionMutationDefaultValue","ExecutionMutationDefault","ref","table","column","onCreate","onUpdate","ExecutionMutationDefaultPhases","Omit","ExecutionSection","mutations","defaults","Source","readOnly","projection","origin","capabilities","DocIndex","Expr","keys","unique","where","path","DocCollection","strategy","indexes","PlanMeta","target","targetFamily","lane","annotations","ContractMarkerRecord","contractJson","canonicalVersion","updatedAt","appTag","meta","invariants","ContractExecutionSection","Contract","TStorage","TModels","roots","valueObjects","domain","extensionPacks","execution","A","B","C","D","E","F","G","H","I","J","L","M","N","O","P","R","S","U","V","W","_","a","b","c","d","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","IRNode","kind","IRNodeBase","freezeNode","T","node","UNBOUND_NAMESPACE_ID","Namespace","id","NamespaceBase","EntityCoordinate","plane","namespaceId","entityKind","entityName","elementCoordinates","Storage","Generator","storage","Record","Readonly","namespaces","StorageType","IRNodeBase","Namespace","NamespaceBase","Storage","StorageType","ColumnDefault","StorageHashBase","CodecTrait","SqlNode","kind","constructor","ForeignKeyReferenceInput","namespaceId","tableName","columns","ForeignKeyReference","input","ReferentialAction","ForeignKeyInput","source","target","name","onDelete","onUpdate","constraint","index","ForeignKey","POSTGRES_ENUM_KIND","PostgresEnumStorageEntry","nativeType","values","codecId","isPostgresEnumStorageEntry","value","PrimaryKeyInput","PrimaryKey","IndexInput","Record","type","options","Index","StorageColumnInput","nullable","typeParams","typeRef","default","StorageColumn","UniqueConstraintInput","UniqueConstraint","StorageTableInput","ReadonlyArray","primaryKey","uniques","indexes","foreignKeys","StorageTable","Readonly","CODEC_INSTANCE_KIND","StorageTypeInstance","StorageTypeInstanceInput","toStorageTypeInstance","isStorageTypeInstance","SqlStorageTypeEntry","SqlNamespaceTablesInput","id","tables","enum","SqlStorageInput","THash","storageHash","types","namespaces","SqlNamespace","SqlStorage","__unbound__","SqlUnboundNamespace","instance","ForeignKeyOptions","SqlModelFieldStorage","column","SqlModelStorage","table","fields","DEFAULT_FK_CONSTRAINT","DEFAULT_FK_INDEX","applyFkDefaults","fk","overrideDefaults","TypeMaps","TCodecTypes","TQueryOperationTypes","TFieldOutputTypes","TFieldInputTypes","output","codecTypes","queryOperationTypes","fieldOutputTypes","fieldInputTypes","CodecTypesOf","T","C","QueryOperationSelfSpec","traits","QueryOperationReturn","returnType","QueryOperationTypeEntry","self","impl","args","SqlQueryOperationTypes","_CT","QueryOperationTypesBase","QueryOperationTypesOf","Q","TypeMapsPhantomKey","ContractWithTypeMaps","TContract","TTypeMaps","K","ExtractTypeMapsFromContract","NonNullable","FieldOutputTypesOf","F","FieldInputTypesOf","ExtractCodecTypes","ExtractQueryOperationTypes","ExtractFieldOutputTypes","ExtractFieldInputTypes","ResolveCodecTypes","$","A","B","D","E","G","H","I","J","L","M","N","O","P","R","S","U","V","W","X","Y","Z","_","a","b","c","d","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"],"sources":["../../../../1-framework/0-foundation/contract/dist/contract-types-Bt2uyqs3.d.mts","../src/type-errors.ts","../src/column-reference.ts","../../../../1-framework/1-core/framework-components/dist/ir.d.mts","../../../1-core/contract/dist/types-m5NX52zE.d.mts","../src/type-atoms.ts","../src/selection.ts","../src/table-reference.ts","../src/ref.ts","../src/select-builder.ts","../src/root.ts"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","names":["#contract","#contract"],"sources":["../src/ref.ts","../src/select-builder.ts","../src/root.ts"],"sourcesContent":["import type { Contract } from '@prisma-next/contract/types';\nimport type { SqlStorage } from '@prisma-next/sql-contract/types';\nimport type {\n Asterisk,\n ColumnReference,\n ColumnReferenceOutOfContractError,\n TableAsterisk,\n} from './column-reference';\nimport type { UnboundTables } from './selection';\nimport type { TableReference, TableReferenceOutOfContractError } from './table-reference';\n\n/**\n * A fluent API representing references to tables and columns in a SQL contract.\n *\n * @template TContract The contract that describes the database.\n */\nexport type Ref<TContract extends Contract<SqlStorage>> = {\n readonly [TableName in keyof UnboundTables<TContract> & string]: TableReference<\n TableName,\n TContract['storage']['storageHash']\n > & {\n readonly [ColumnName in Exclude<\n keyof UnboundTables<TContract>[TableName]['columns'],\n keyof TableReference\n > &\n string]: ColumnReference<ColumnName, TableName, TContract['storage']['storageHash']>;\n } & {\n readonly ['*']: TableAsterisk<TableName, TContract['storage']['storageHash']>;\n } & Record<\n PropertyKey,\n ColumnReferenceOutOfContractError<`[error] reference to a non-existing column in the '${TableName}' table`>\n >;\n} & {\n readonly ['*']: Asterisk;\n} & Record<\n PropertyKey,\n TableReferenceOutOfContractError<`[error] reference to a non-existing table in the contract`>\n >;\n\n/**\n * Creates a reference object for the given SQL contract.\n *\n * @template TContract The contract that describes the database.\n */\nexport function createRef<TContract extends Contract<SqlStorage>>(\n _contract: TContract,\n): Ref<TContract> {\n return new Proxy({} as Ref<TContract>, {\n get(_target, tableName) {\n if (tableName === '*') {\n return Object.freeze({\n '~name': tableName,\n '~table': null,\n });\n }\n\n return new Proxy(\n {},\n {\n get(_target, columnName) {\n if (columnName === '~name') {\n return tableName;\n }\n\n return Object.freeze({\n '~name': columnName,\n '~table': tableName,\n });\n },\n },\n );\n },\n });\n}\n","import type { Contract } from '@prisma-next/contract/types';\nimport type { SqlStorage } from '@prisma-next/sql-contract/types';\nimport type { Asterisk, TableAsterisk } from './column-reference';\nimport type { Selection, TableToSelection, UnboundTables } from './selection';\nimport type { ExactlyOneProperty, IsNever, MergeObjects, Simplify } from './type-atoms';\nimport type { PreviousFunctionReceivedBadInputError } from './type-errors';\n\n/**\n * A builder for SQL `select` queries.\n *\n * @template TContract The contract that describes the database.\n * @template TTables The tables involved in the current `select` query.\n * @template TSelection The current selection of the `select` query.\n */\nexport class SelectBuilder<\n TContract extends Contract<SqlStorage>,\n TTables extends UnboundTables<Contract<SqlStorage>>,\n TSelection extends Selection = never,\n> {\n // @ts-expect-error\n // biome-ignore lint/correctness/noUnusedPrivateClassMembers: will be used soon.\n readonly #contract: TContract;\n\n constructor(contract: TContract) {\n this.#contract = contract;\n }\n\n select(\n asterisk: Asterisk,\n ): ExactlyOneProperty<TTables> extends true\n ? SelectBuilder<\n TContract,\n TTables,\n MergeObjects<TSelection, TableToSelection<TContract, keyof TTables & string>>\n >\n : PreviousFunctionReceivedBadInputError<'[error] selecting all columns via `*` results in ambiguity when multiple tables are involved in the query'>;\n select<TTableName extends keyof TTables & string>(\n asterisk: TableAsterisk<TTableName, TContract['storage']['storageHash']>,\n ): SelectBuilder<\n TContract,\n TTables,\n MergeObjects<TSelection, TableToSelection<TContract, TTableName>>\n >;\n select(\n arg: never,\n ): PreviousFunctionReceivedBadInputError<'[error] invalid input in previous `select()` call'>;\n select(..._args: unknown[]): unknown {\n // TODO: do runtime stuff.\n return this;\n }\n\n // TODO: the return type here is not the real one we'll use eventually.\n // I'm using something to test the selection stuff.\n build(): IsNever<TSelection> extends true\n ? // TODO: either split to two builders or provide a type-level error here.\n never\n : Simplify<TSelection> {\n // TODO: do runtime stuff.\n return {} as never;\n }\n}\n","import type { Contract } from '@prisma-next/contract/types';\nimport type { SqlStorage } from '@prisma-next/sql-contract/types';\nimport { SelectBuilder } from './select-builder';\nimport type { UnboundTables } from './selection';\nimport type { TableReference, TableReferenceTooWideError } from './table-reference';\nimport type { PreviousFunctionReceivedBadInputError } from './type-errors';\n\n/**\n * The root of all builder.\n *\n * @template TContract The contract that describes the database.\n */\nexport class Root<TContract extends Contract<SqlStorage>> {\n readonly #contract: TContract;\n\n constructor(contract: TContract) {\n this.#contract = contract;\n }\n\n /**\n * SQL's `from` clause, where all `select` queries actually start from.\n *\n * @param table The table to select from.\n */\n from(\n table: TableReference<never>,\n ): PreviousFunctionReceivedBadInputError<'[error] invalid table reference in previous `root.from()` call will probably cause runtime errors'>;\n /**\n * @template TName The name of the table to select from.\n */\n from<TName extends string>(\n table: string extends TName\n ? TableReferenceTooWideError<'[error] `root.from()` call received a table reference without a specific table name'>\n : TableReference<TName, TContract['storage']['storageHash']>,\n ): TName extends string\n ? SelectBuilder<TContract, Pick<UnboundTables<TContract>, TName>>\n : PreviousFunctionReceivedBadInputError<'[error] invalid table reference in previous `root.from()` call will probably cause runtime errors'>;\n from(\n table: TableReferenceTooWideError<'[error] `root.from()` call received a table reference without a specific table name'>,\n ): PreviousFunctionReceivedBadInputError<'[error] invalid table reference in previous `root.from()` call will probably cause runtime errors'>;\n /**\n * @internal\n */\n from(_table: unknown): unknown {\n // TODO: use runtime table reference value to do something \"AST\"-related.\n return new SelectBuilder(this.#contract);\n }\n}\n\n/**\n * Creates a new `Root` instance.\n */\nexport function createRoot(\n contract: never,\n): PreviousFunctionReceivedBadInputError<'[error] root creation will likely fail at runtime given the passed contract is not valid or verified'>;\n/**\n * @template TContract The contract that describes the database.\n */\nexport function createRoot<TContract extends Contract<SqlStorage>>(\n contract: TContract,\n): Root<TContract>;\n/**\n * @internal\n */\nexport function createRoot(contract: unknown): unknown {\n // Blind cast: the public overloads above (`createRoot(TContract)`)\n // statically constrain `contract` to `Contract<SqlStorage>` —\n // this internal `unknown` overload exists only to give the\n // implementation a single body. Any caller that reaches the\n // `unknown` form has already been narrowed by the matching\n // overload at compile time.\n return new Root(contract as unknown as Contract<SqlStorage>);\n}\n"],"mappings":";;;;;;AA4CA,SAAgB,UACd,WACgB;CAChB,OAAO,IAAI,MAAM,EAAE,EAAoB,EACrC,IAAI,SAAS,WAAW;EACtB,IAAI,cAAc,KAChB,OAAO,OAAO,OAAO;GACnB,SAAS;GACT,UAAU;GACX,CAAC;EAGJ,OAAO,IAAI,MACT,EAAE,EACF,EACE,IAAI,SAAS,YAAY;GACvB,IAAI,eAAe,SACjB,OAAO;GAGT,OAAO,OAAO,OAAO;IACnB,SAAS;IACT,UAAU;IACX,CAAC;KAEL,CACF;IAEJ,CAAC;;;;;;;;;;;AC1DJ,IAAa,gBAAb,MAIE;CAGA;CAEA,YAAY,UAAqB;EAC/B,KAAKA,YAAY;;CAsBnB,OAAO,GAAG,OAA2B;EAEnC,OAAO;;CAKT,QAGyB;EAEvB,OAAO,EAAE;;;;;;;;;;AC9Cb,IAAa,OAAb,MAA0D;CACxD;CAEA,YAAY,UAAqB;EAC/B,KAAKC,YAAY;;;;;CA2BnB,KAAK,QAA0B;EAE7B,OAAO,IAAI,cAAc,KAAKA,UAAU;;;;;;AAmB5C,SAAgB,WAAW,UAA4B;CAOrD,OAAO,IAAI,KAAK,SAA4C"}
1
+ {"version":3,"file":"index.mjs","names":["#contract","#contract"],"sources":["../src/ref.ts","../src/select-builder.ts","../src/root.ts"],"sourcesContent":["import type { Contract } from '@prisma-next/contract/types';\nimport type { SqlStorage } from '@prisma-next/sql-contract/types';\nimport type {\n Asterisk,\n ColumnReference,\n ColumnReferenceOutOfContractError,\n TableAsterisk,\n} from './column-reference';\nimport type { UnboundTables } from './selection';\nimport type { TableReference, TableReferenceOutOfContractError } from './table-reference';\n\n/**\n * A fluent API representing references to tables and columns in a SQL contract.\n *\n * @template TContract The contract that describes the database.\n */\nexport type Ref<TContract extends Contract<SqlStorage>> = {\n readonly [TableName in keyof UnboundTables<TContract> & string]: TableReference<\n TableName,\n TContract['storage']['storageHash']\n > & {\n readonly [ColumnName in Exclude<\n keyof UnboundTables<TContract>[TableName]['columns'],\n keyof TableReference\n > &\n string]: ColumnReference<ColumnName, TableName, TContract['storage']['storageHash']>;\n } & {\n readonly ['*']: TableAsterisk<TableName, TContract['storage']['storageHash']>;\n } & Record<\n PropertyKey,\n ColumnReferenceOutOfContractError<`[error] reference to a non-existing column in the '${TableName}' table`>\n >;\n} & {\n readonly ['*']: Asterisk;\n} & Record<\n PropertyKey,\n TableReferenceOutOfContractError<`[error] reference to a non-existing table in the contract`>\n >;\n\n/**\n * Creates a reference object for the given SQL contract.\n *\n * @template TContract The contract that describes the database.\n */\nexport function createRef<TContract extends Contract<SqlStorage>>(\n _contract: TContract,\n): Ref<TContract> {\n return new Proxy({} as Ref<TContract>, {\n get(_target, tableName) {\n if (tableName === '*') {\n return Object.freeze({\n '~name': tableName,\n '~table': null,\n });\n }\n\n return new Proxy(\n {},\n {\n get(_target, columnName) {\n if (columnName === '~name') {\n return tableName;\n }\n\n return Object.freeze({\n '~name': columnName,\n '~table': tableName,\n });\n },\n },\n );\n },\n });\n}\n","import type { Contract } from '@prisma-next/contract/types';\nimport type { SqlStorage } from '@prisma-next/sql-contract/types';\nimport type { Asterisk, TableAsterisk } from './column-reference';\nimport type { Selection, TableToSelection, UnboundTables } from './selection';\nimport type { ExactlyOneProperty, IsNever, MergeObjects, Simplify } from './type-atoms';\nimport type { PreviousFunctionReceivedBadInputError } from './type-errors';\n\n/**\n * A builder for SQL `select` queries.\n *\n * @template TContract The contract that describes the database.\n * @template TTables The tables involved in the current `select` query.\n * @template TSelection The current selection of the `select` query.\n */\nexport class SelectBuilder<\n TContract extends Contract<SqlStorage>,\n TTables extends UnboundTables<Contract<SqlStorage>>,\n TSelection extends Selection = never,\n> {\n // @ts-expect-error\n // biome-ignore lint/correctness/noUnusedPrivateClassMembers: will be used soon.\n readonly #contract: TContract;\n\n constructor(contract: TContract) {\n this.#contract = contract;\n }\n\n select(\n asterisk: Asterisk,\n ): ExactlyOneProperty<TTables> extends true\n ? SelectBuilder<\n TContract,\n TTables,\n MergeObjects<TSelection, TableToSelection<TContract, keyof TTables & string>>\n >\n : PreviousFunctionReceivedBadInputError<'[error] selecting all columns via `*` results in ambiguity when multiple tables are involved in the query'>;\n select<TTableName extends keyof TTables & string>(\n asterisk: TableAsterisk<TTableName, TContract['storage']['storageHash']>,\n ): SelectBuilder<\n TContract,\n TTables,\n MergeObjects<TSelection, TableToSelection<TContract, TTableName>>\n >;\n select(\n arg: never,\n ): PreviousFunctionReceivedBadInputError<'[error] invalid input in previous `select()` call'>;\n select(..._args: unknown[]): unknown {\n // TODO: do runtime stuff.\n return this;\n }\n\n // TODO: the return type here is not the real one we'll use eventually.\n // I'm using something to test the selection stuff.\n build(): IsNever<TSelection> extends true\n ? // TODO: either split to two builders or provide a type-level error here.\n never\n : Simplify<TSelection> {\n // TODO: do runtime stuff.\n return {} as never;\n }\n}\n","import type { Contract } from '@prisma-next/contract/types';\nimport type { SqlStorage } from '@prisma-next/sql-contract/types';\nimport { SelectBuilder } from './select-builder';\nimport type { UnboundTables } from './selection';\nimport type { TableReference, TableReferenceTooWideError } from './table-reference';\nimport type { PreviousFunctionReceivedBadInputError } from './type-errors';\n\n/**\n * The root of all builder.\n *\n * @template TContract The contract that describes the database.\n */\nexport class Root<TContract extends Contract<SqlStorage>> {\n readonly #contract: TContract;\n\n constructor(contract: TContract) {\n this.#contract = contract;\n }\n\n /**\n * SQL's `from` clause, where all `select` queries actually start from.\n *\n * @param table The table to select from.\n */\n from(\n table: TableReference<never>,\n ): PreviousFunctionReceivedBadInputError<'[error] invalid table reference in previous `root.from()` call will probably cause runtime errors'>;\n /**\n * @template TName The name of the table to select from.\n */\n from<TName extends string>(\n table: string extends TName\n ? TableReferenceTooWideError<'[error] `root.from()` call received a table reference without a specific table name'>\n : TableReference<TName, TContract['storage']['storageHash']>,\n ): TName extends string\n ? SelectBuilder<TContract, Pick<UnboundTables<TContract>, TName>>\n : PreviousFunctionReceivedBadInputError<'[error] invalid table reference in previous `root.from()` call will probably cause runtime errors'>;\n from(\n table: TableReferenceTooWideError<'[error] `root.from()` call received a table reference without a specific table name'>,\n ): PreviousFunctionReceivedBadInputError<'[error] invalid table reference in previous `root.from()` call will probably cause runtime errors'>;\n /**\n * @internal\n */\n from(_table: unknown): unknown {\n // TODO: use runtime table reference value to do something \"AST\"-related.\n return new SelectBuilder(this.#contract);\n }\n}\n\n/**\n * Creates a new `Root` instance.\n */\nexport function createRoot(\n contract: never,\n): PreviousFunctionReceivedBadInputError<'[error] root creation will likely fail at runtime given the passed contract is not valid or verified'>;\n/**\n * @template TContract The contract that describes the database.\n */\nexport function createRoot<TContract extends Contract<SqlStorage>>(\n contract: TContract,\n): Root<TContract>;\n/**\n * @internal\n */\nexport function createRoot(contract: unknown): unknown {\n // Blind cast: the public overloads above (`createRoot(TContract)`)\n // statically constrain `contract` to `Contract<SqlStorage>` —\n // this internal `unknown` overload exists only to give the\n // implementation a single body. Any caller that reaches the\n // `unknown` form has already been narrowed by the matching\n // overload at compile time.\n return new Root(contract as unknown as Contract<SqlStorage>);\n}\n"],"mappings":";;;;;;AA4CA,SAAgB,UACd,WACgB;CAChB,OAAO,IAAI,MAAM,CAAC,GAAqB,EACrC,IAAI,SAAS,WAAW;EACtB,IAAI,cAAc,KAChB,OAAO,OAAO,OAAO;GACnB,SAAS;GACT,UAAU;EACZ,CAAC;EAGH,OAAO,IAAI,MACT,CAAC,GACD,EACE,IAAI,SAAS,YAAY;GACvB,IAAI,eAAe,SACjB,OAAO;GAGT,OAAO,OAAO,OAAO;IACnB,SAAS;IACT,UAAU;GACZ,CAAC;EACH,EACF,CACF;CACF,EACF,CAAC;AACH;;;;;;;;;;AC3DA,IAAa,gBAAb,MAIE;CAGA;CAEA,YAAY,UAAqB;EAC/B,KAAKA,YAAY;CACnB;CAqBA,OAAO,GAAG,OAA2B;EAEnC,OAAO;CACT;CAIA,QAGyB;EAEvB,OAAO,CAAC;CACV;AACF;;;;;;;;AChDA,IAAa,OAAb,MAA0D;CACxD;CAEA,YAAY,UAAqB;EAC/B,KAAKC,YAAY;CACnB;;;;CA0BA,KAAK,QAA0B;EAE7B,OAAO,IAAI,cAAc,KAAKA,SAAS;CACzC;AACF;;;;AAiBA,SAAgB,WAAW,UAA4B;CAOrD,OAAO,IAAI,KAAK,QAA2C;AAC7D"}
package/package.json CHANGED
@@ -1,15 +1,15 @@
1
1
  {
2
2
  "name": "@prisma-next/sql-lane-query-builder",
3
- "version": "0.11.0-dev.2",
3
+ "version": "0.11.0-dev.20",
4
4
  "license": "Apache-2.0",
5
5
  "type": "module",
6
6
  "sideEffects": false,
7
7
  "description": "SQL query builder lane for Prisma Next",
8
8
  "devDependencies": {
9
- "@prisma-next/contract": "0.11.0-dev.2",
10
- "@prisma-next/sql-contract": "0.11.0-dev.2",
11
- "@prisma-next/tsconfig": "0.11.0-dev.2",
12
- "@prisma-next/tsdown": "0.11.0-dev.2",
9
+ "@prisma-next/contract": "0.11.0-dev.20",
10
+ "@prisma-next/sql-contract": "0.11.0-dev.20",
11
+ "@prisma-next/tsconfig": "0.11.0-dev.20",
12
+ "@prisma-next/tsdown": "0.11.0-dev.20",
13
13
  "tsdown": "0.22.0",
14
14
  "typescript": "5.9.3",
15
15
  "vitest": "4.1.6"