drizzle-kit 0.20.5-1f065b5 → 0.20.5-c7dc2fe

Sign up to get free protection for your applications and to get access to all the features.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "drizzle-kit",
3
- "version": "0.20.5-1f065b5",
3
+ "version": "0.20.5-c7dc2fe",
4
4
  "repository": "https://github.com/drizzle-team/drizzle-kit-mirror",
5
5
  "author": "Drizzle Team",
6
6
  "license": "MIT",
@@ -10,7 +10,7 @@
10
10
  "scripts": {
11
11
  "test:pg:push": "drizzle-kit push:pg",
12
12
  "payload": "tsx ./dev/payload.ts",
13
- "migrate:old": "drizzle-kit generate:pg --out ./dev/migrations-pg --schema ./dev/migrations-pg/schema.ts",
13
+ "migrate:old": "drizzle-kit generate:pg --out ./dev/migrations-pg --schema ./dev/migrations-pg/schema2.ts",
14
14
  "push": "node -r esbuild-register ./src/cli/index.ts push:mysql",
15
15
  "push:sqlite": "node -r ./src/loader.mjs ./src/cli/index.ts push:sqlite",
16
16
  "try1": "tsx ./src/t.ts",
@@ -36,7 +36,7 @@
36
36
  "sim:sqlite": "node -r esbuild-register ./dev/sqlite/index.ts",
37
37
  "test": "ava test --timeout=60s",
38
38
  "build": "rm -rf ./dist && tsc -p tsconfig.cli-types.json && pnpm mts && tsx build.ts",
39
- "mts": "cp dist/index.d.ts dist/index.d.mts && cp dist/utils-studio.d.ts dist/utils-studio.d.mts && cp dist/payload.d.ts dist/payload.d.mts",
39
+ "mts": "cp dist/index.d.ts dist/index.d.mts && cp dist/utils-studio.d.ts dist/utils-studio.d.mts",
40
40
  "build:dev": "rm -rf ./dist && tsx build.dev.ts && tsc -p tsconfig.cli-types.json && chmod +x ./dist/index.cjs",
41
41
  "packit": "pnpm build && cp package.json dist/ && cd dist && pnpm pack",
42
42
  "tsc": "tsc -p tsconfig.build.json",
@@ -61,6 +61,7 @@
61
61
  "camelcase": "^7.0.1",
62
62
  "chalk": "^5.2.0",
63
63
  "commander": "^9.4.1",
64
+ "drizzle-kit": "0.19.13",
64
65
  "esbuild": "^0.18.6",
65
66
  "esbuild-register": "^3.4.2",
66
67
  "glob": "^8.1.0",
@@ -85,7 +86,7 @@
85
86
  "better-sqlite3": "^8.4.0",
86
87
  "dockerode": "^3.3.4",
87
88
  "dotenv": "^16.0.3",
88
- "drizzle-orm": "0.29.0-d3b1c58",
89
+ "drizzle-orm": "0.29.0",
89
90
  "esbuild-node-externals": "^1.9.0",
90
91
  "eslint": "^8.29.0",
91
92
  "eslint-config-prettier": "^8.5.0",
@@ -124,18 +125,6 @@
124
125
  },
125
126
  "types": "./utils-studio.d.mts",
126
127
  "default": "./utils-studio.mjs"
127
- },
128
- "./payload": {
129
- "import": {
130
- "types": "./payload.d.mts",
131
- "default": "./payload.mjs"
132
- },
133
- "require": {
134
- "types": "./payload.d.ts",
135
- "default": "./payload.js"
136
- },
137
- "types": "./payload.d.mts",
138
- "default": "./payload.mjs"
139
128
  }
140
129
  }
141
130
  }
@@ -1,9 +1,4 @@
1
1
  import { AnyMySqlTable, MySqlSchema } from "drizzle-orm/mysql-core";
2
- export declare const prepareFromExports: (exports: Record<string, unknown>) => {
3
- tables: AnyMySqlTable<{}>[];
4
- enums: any[];
5
- schemas: MySqlSchema<string>[];
6
- };
7
2
  export declare const prepareFromMySqlImports: (imports: string[]) => Promise<{
8
3
  tables: AnyMySqlTable<{}>[];
9
4
  enums: any[];
@@ -1,7 +1,7 @@
1
1
  import { AnyMySqlTable, MySqlSchema } from "drizzle-orm/mysql-core";
2
2
  import { MySqlSchemaInternal } from "src/serializer/mysqlSchema";
3
+ import { Connection } from "mysql2/promise";
3
4
  import { IntrospectStage, IntrospectStatus } from "src/cli/views";
4
- import { DrizzleDbClient } from "src/drivers";
5
5
  export declare const indexName: (tableName: string, columns: string[]) => string;
6
6
  export declare const generateMySqlSnapshot: (tables: AnyMySqlTable[], enums: any[], mysqlSchemas: MySqlSchema[]) => MySqlSchemaInternal;
7
- export declare const fromDatabase: (db: DrizzleDbClient, inputSchema: string, tablesFilter?: (table: string) => boolean, progressCallback?: ((stage: IntrospectStage, count: number, status: IntrospectStatus) => void) | undefined) => Promise<MySqlSchemaInternal>;
7
+ export declare const fromDatabase: (db: Connection, inputSchema: string, tablesFilter?: (table: string) => boolean, progressCallback?: ((stage: IntrospectStage, count: number, status: IntrospectStatus) => void) | undefined) => Promise<MySqlSchemaInternal>;
@@ -1,8 +1,4 @@
1
1
  import { AnySQLiteTable } from "drizzle-orm/sqlite-core";
2
- export declare const prepareFromExports: (exports: Record<string, unknown>) => {
3
- tables: AnySQLiteTable<{}>[];
4
- enums: any[];
5
- };
6
2
  export declare const prepareFromSqliteImports: (imports: string[]) => Promise<{
7
3
  tables: AnySQLiteTable<{}>[];
8
4
  enums: any[];
@@ -0,0 +1,53 @@
1
+ import type { Setup } from "@drizzle-team/studio";
2
+ import { Relations } from "drizzle-orm";
3
+ import { AnyMySqlTable } from "drizzle-orm/mysql-core";
4
+ import { AnyPgTable } from "drizzle-orm/pg-core";
5
+ import { AnySQLiteTable } from "drizzle-orm/sqlite-core";
6
+ import { MySQLConnectionConfig } from "src/cli/validations/mysql";
7
+ import { PgConnectionConfig } from "src/cli/validations/pg";
8
+ import { StudioConfigConnections, StudioSqliteConnectionConfig as StudioSQLiteConnectionConfig } from "src/cli/validations/studio";
9
+ export declare const preparePgSchema: (path: string | string[]) => Promise<{
10
+ schema: Record<string, Record<string, AnyPgTable<{}>>>;
11
+ relations: Record<string, Relations<string, Record<string, import("drizzle-orm").Relation<string>>>>;
12
+ }>;
13
+ export declare const prepareMySqlSchema: (path: string | string[]) => Promise<{
14
+ schema: Record<string, Record<string, AnyMySqlTable<{}>>>;
15
+ relations: Record<string, Relations<string, Record<string, import("drizzle-orm").Relation<string>>>>;
16
+ }>;
17
+ export declare const prepareSQLiteSchema: (path: string | string[]) => Promise<{
18
+ schema: Record<string, Record<string, AnySQLiteTable<{}>>>;
19
+ relations: Record<string, Relations<string, Record<string, import("drizzle-orm").Relation<string>>>>;
20
+ }>;
21
+ export declare const prepareModels: (path: string | string[]) => Promise<{
22
+ pgSchema: Record<string, AnyPgTable<{}> | Relations<string, Record<string, import("drizzle-orm").Relation<string>>>>;
23
+ mysqlSchema: Record<string, AnyMySqlTable<{}> | Relations<string, Record<string, import("drizzle-orm").Relation<string>>>>;
24
+ sqliteSchema: Record<string, Relations<string, Record<string, import("drizzle-orm").Relation<string>>> | AnySQLiteTable<{}>>;
25
+ }>;
26
+ export declare const drizzleForPostgres: (connectionConfig: PgConnectionConfig, pgSchema: Record<string, Record<string, AnyPgTable>>, relations: Record<string, Relations>, verbose: boolean) => Promise<Setup>;
27
+ export declare const drizzleForMySQL: (config: MySQLConnectionConfig, mysqlSchema: Record<string, Record<string, AnyMySqlTable>>, relations: Record<string, Relations>, verbose: boolean) => Promise<Setup>;
28
+ export declare const drizzleForSQLite: (config: StudioSQLiteConnectionConfig, sqliteSchema: Record<string, Record<string, AnySQLiteTable>>, relations: Record<string, Relations>, verbose: boolean) => Promise<Setup>;
29
+ export declare const drizzleDb: (drizzleConfig: StudioConfigConnections, models: {
30
+ pgSchema?: Record<string, AnyPgTable | Relations>;
31
+ mysqlSchema?: Record<string, AnyMySqlTable | Relations>;
32
+ sqliteSchema?: Record<string, AnySQLiteTable | Relations>;
33
+ }, logger: boolean) => Promise<{
34
+ db: import("drizzle-orm/node-postgres").NodePgDatabase<Record<string, never>>;
35
+ type: "pg";
36
+ schema: Record<string, AnyPgTable<{}> | Relations<string, Record<string, import("drizzle-orm").Relation<string>>>> | undefined;
37
+ } | {
38
+ db: import("drizzle-orm/mysql2").MySql2Database<Record<string, never>>;
39
+ type: "mysql";
40
+ schema: Record<string, AnyMySqlTable<{}> | Relations<string, Record<string, import("drizzle-orm").Relation<string>>>> | undefined;
41
+ } | {
42
+ db: import("../orm-extenstions/d1-driver/driver").DrizzleD1WranglerDatabase<Record<string, never>>;
43
+ type: "sqlite";
44
+ schema: Record<string, Relations<string, Record<string, import("drizzle-orm").Relation<string>>> | AnySQLiteTable<{}>> | undefined;
45
+ } | {
46
+ db: import("drizzle-orm/better-sqlite3").BetterSQLite3Database<Record<string, never>>;
47
+ type: "sqlite";
48
+ schema: Record<string, Relations<string, Record<string, import("drizzle-orm").Relation<string>>> | AnySQLiteTable<{}>> | undefined;
49
+ } | {
50
+ db: import("drizzle-orm/libsql").LibSQLDatabase<Record<string, never>>;
51
+ type: "sqlite";
52
+ schema: Record<string, Relations<string, Record<string, import("drizzle-orm").Relation<string>>> | AnySQLiteTable<{}>> | undefined;
53
+ }>;
package/utils-studio.js CHANGED
@@ -739,12 +739,13 @@ var init_pgSerializer = __esm({
739
739
  if (cprimaryKey.length > 1) {
740
740
  const tableCompositePkName = await db.query(
741
741
  `SELECT conname AS primary_key
742
- FROM pg_constraint
743
- WHERE contype = 'p'
744
- AND connamespace = '${tableSchema}'::regnamespace
745
- AND (conrelid::regclass::text = '"${tableName}"' OR conrelid::regclass::text = '${tableName}');`
742
+ FROM pg_constraint join pg_class on (pg_class.oid = conrelid)
743
+ WHERE contype = 'p'
744
+ AND connamespace = $1::regnamespace
745
+ AND pg_class.relname = $2;`,
746
+ [tableSchema, tableName]
746
747
  );
747
- primaryKeys[`${tableName}_${cprimaryKey.map((pk) => pk.column_name).join("_")}`] = {
748
+ primaryKeys[tableCompositePkName[0].primary_key] = {
748
749
  name: tableCompositePkName[0].primary_key,
749
750
  columns: cprimaryKey.map((c) => c.column_name)
750
751
  };
package/utils-studio.mjs CHANGED
@@ -771,12 +771,13 @@ var init_pgSerializer = __esm({
771
771
  if (cprimaryKey.length > 1) {
772
772
  const tableCompositePkName = await db.query(
773
773
  `SELECT conname AS primary_key
774
- FROM pg_constraint
775
- WHERE contype = 'p'
776
- AND connamespace = '${tableSchema}'::regnamespace
777
- AND (conrelid::regclass::text = '"${tableName}"' OR conrelid::regclass::text = '${tableName}');`
774
+ FROM pg_constraint join pg_class on (pg_class.oid = conrelid)
775
+ WHERE contype = 'p'
776
+ AND connamespace = $1::regnamespace
777
+ AND pg_class.relname = $2;`,
778
+ [tableSchema, tableName]
778
779
  );
779
- primaryKeys[`${tableName}_${cprimaryKey.map((pk) => pk.column_name).join("_")}`] = {
780
+ primaryKeys[tableCompositePkName[0].primary_key] = {
780
781
  name: tableCompositePkName[0].primary_key,
781
782
  columns: cprimaryKey.map((c) => c.column_name)
782
783
  };
package/utils.d.ts CHANGED
@@ -1,5 +1,8 @@
1
- import type { Dialect } from "./schemaValidator";
1
+ import { Dialect } from "./schemaValidator";
2
2
  import { NamedWithSchema } from "./cli/commands/migrate";
3
+ import { PgDatabase } from "drizzle-orm/pg-core";
4
+ import { PgSchema as PgSchemaKit } from "./serializer/pgSchema";
5
+ import { DbConnection } from ".";
3
6
  export declare const assertV1OutFolder: (out: string, dialect: Dialect | "{dialect}") => void;
4
7
  export type Journal = {
5
8
  version: string;
@@ -19,6 +22,7 @@ export declare const prepareOutFolder: (out: string, dialect: Dialect) => {
19
22
  snapshots: string[];
20
23
  journal: any;
21
24
  };
25
+ export declare const mapValues: <IN, OUT>(obj: Record<string, IN>, map: (input: IN) => OUT) => Record<string, OUT>;
22
26
  export declare const validateWithReport: (snapshots: string[], dialect: Dialect) => {
23
27
  malformed: string[];
24
28
  nonLatest: string[];
@@ -195,3 +199,13 @@ export declare const statementsForDiffs: (in1: any, in2: any) => Promise<{
195
199
  columns: {};
196
200
  } | undefined;
197
201
  }>;
202
+ export type DrizzleSnapshotJSON = PgSchemaKit;
203
+ export declare const generateDrizzleJson: (imports: Record<string, unknown>, prevId?: string) => PgSchemaKit;
204
+ export declare const generateMigration: (prev: DrizzleSnapshotJSON, cur: DrizzleSnapshotJSON) => Promise<string[]>;
205
+ export declare const pushSchema: (imports: Record<string, unknown>, db: PgDatabase<any>) => Promise<{
206
+ hasDataLoss: boolean;
207
+ warnings: string[];
208
+ statementsToExecute: string[];
209
+ apply: () => Promise<void>;
210
+ }>;
211
+ export declare const prepareFrom: (connection: DbConnection) => Promise<Record<string, any>>;