MCPcopy
hub / github.com/drizzle-team/drizzle-orm / drizzle

Function drizzle

drizzle-orm/src/tidb-serverless/driver.ts:66–111  ·  view source on GitHub ↗
(
	...params: [
		TClient | string,
	] | [
		TClient | string,
		DrizzleConfig<TSchema>,
	] | [
		& ({
			connection: string | Config;
		} | {
			client: TClient;
		})
		& DrizzleConfig<TSchema>,
	]
)

Source from the content-addressed store, hash-verified

64}
65
66export function drizzle<
67 TSchema extends Record<string, unknown> = Record<string, never>,
68 TClient extends Connection = Connection,
69>(
70 ...params: [
71 TClient | string,
72 ] | [
73 TClient | string,
74 DrizzleConfig<TSchema>,
75 ] | [
76 & ({
77 connection: string | Config;
78 } | {
79 client: TClient;
80 })
81 & DrizzleConfig<TSchema>,
82 ]
83): TiDBServerlessDatabase<TSchema> & {
84 $client: TClient;
85} {
86 if (typeof params[0] === 'string') {
87 const instance = connect({
88 url: params[0],
89 });
90
91 return construct(instance, params[1]) as any;
92 }
93
94 if (isConfig(params[0])) {
95 const { connection, client, ...drizzleConfig } = params[0] as
96 & { connection?: Config | string; client?: TClient }
97 & DrizzleConfig<TSchema>;
98
99 if (client) return construct(client, drizzleConfig) as any;
100
101 const instance = typeof connection === 'string'
102 ? connect({
103 url: connection,
104 })
105 : connect(connection!);
106
107 return construct(instance, drizzleConfig) as any;
108 }
109
110 return construct(params[0] as TClient, params[1] as DrizzleConfig<TSchema> | undefined) as any;
111}
112
113export namespace drizzle {
114 export function mock<TSchema extends Record<string, unknown> = Record<string, never>>(

Callers 2

tidb.test.mjsFile · 0.90

Calls 2

isConfigFunction · 0.90
constructFunction · 0.70

Tested by

no test coverage detected