drizzle-orm 0.27.0 → 0.27.1

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.
@@ -0,0 +1,144 @@
1
+ 'use strict';
2
+
3
+ var serverless = require('@neondatabase/serverless');
4
+ var alias = require('../alias-5f56ec1f.cjs');
5
+ var index = require('../index.cjs');
6
+
7
+ var _a$1, _b, _c;
8
+ class NeonHttpPreparedQuery extends alias.PreparedQuery {
9
+ constructor(client, queryString, params, logger, fields, name, customResultMapper) {
10
+ super();
11
+ this.client = client;
12
+ this.queryString = queryString;
13
+ this.params = params;
14
+ this.logger = logger;
15
+ this.fields = fields;
16
+ this.name = name;
17
+ this.customResultMapper = customResultMapper;
18
+ this.rawQuery = {
19
+ arrayMode: false,
20
+ fullResults: true,
21
+ };
22
+ this.query = { arrayMode: true, fullResults: true };
23
+ }
24
+ async execute(placeholderValues = {}) {
25
+ const params = alias.fillPlaceholders(this.params, placeholderValues);
26
+ this.logger.logQuery(this.queryString, params);
27
+ const { fields, client, queryString, query, rawQuery, joinsNotNullableMap, customResultMapper } = this;
28
+ if (!fields && !customResultMapper) {
29
+ return client(queryString, params, rawQuery);
30
+ }
31
+ const result = await client(queryString, params, query);
32
+ return customResultMapper
33
+ ? customResultMapper(result.rows)
34
+ : result.rows.map((row) => alias.mapResultRow(fields, row, joinsNotNullableMap));
35
+ }
36
+ all(placeholderValues = {}) {
37
+ const params = alias.fillPlaceholders(this.params, placeholderValues);
38
+ this.logger.logQuery(this.queryString, params);
39
+ return this.client(this.queryString, params, this.rawQuery).then((result) => result.rows);
40
+ }
41
+ values(placeholderValues = {}) {
42
+ const params = alias.fillPlaceholders(this.params, placeholderValues);
43
+ this.logger.logQuery(this.queryString, params);
44
+ return this.client(this.queryString, params).then((result) => result.rows);
45
+ }
46
+ }
47
+ _a$1 = alias.entityKind;
48
+ NeonHttpPreparedQuery[_a$1] = 'NeonHttpPreparedQuery';
49
+ class NeonHttpSession extends alias.PgSession {
50
+ constructor(client, dialect, schema, options = {}) {
51
+ super(dialect);
52
+ this.client = client;
53
+ this.schema = schema;
54
+ this.options = options;
55
+ this.logger = options.logger ?? new index.NoopLogger();
56
+ }
57
+ prepareQuery(query, fields, name, customResultMapper) {
58
+ return new NeonHttpPreparedQuery(this.client, query.sql, query.params, this.logger, fields, name, customResultMapper);
59
+ }
60
+ // change return type to QueryRows<true>
61
+ async query(query, params) {
62
+ this.logger.logQuery(query, params);
63
+ const result = await this.client(query, params, { arrayMode: true });
64
+ return result;
65
+ }
66
+ // change return type to QueryRows<false>
67
+ async queryObjects(query, params) {
68
+ return this.client(query, params);
69
+ }
70
+ async transaction(_transaction,
71
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
72
+ _config = {}) {
73
+ throw new Error('No transactions support in neon-http driver');
74
+ }
75
+ }
76
+ _b = alias.entityKind;
77
+ NeonHttpSession[_b] = 'NeonHttpSession';
78
+ class NeonTransaction extends alias.PgTransaction {
79
+ async transaction(_transaction) {
80
+ throw new Error('No transactions support in neon-http driver');
81
+ // const savepointName = `sp${this.nestedIndex + 1}`;
82
+ // const tx = new NeonTransaction(this.dialect, this.session, this.schema, this.nestedIndex + 1);
83
+ // await tx.execute(sql.raw(`savepoint ${savepointName}`));
84
+ // try {
85
+ // const result = await transaction(tx);
86
+ // await tx.execute(sql.raw(`release savepoint ${savepointName}`));
87
+ // return result;
88
+ // } catch (e) {
89
+ // await tx.execute(sql.raw(`rollback to savepoint ${savepointName}`));
90
+ // throw e;
91
+ // }
92
+ }
93
+ }
94
+ _c = alias.entityKind;
95
+ NeonTransaction[_c] = 'NeonHttpTransaction';
96
+
97
+ var _a;
98
+ class NeonHttpDriver {
99
+ constructor(client, dialect, options = {}) {
100
+ this.client = client;
101
+ this.dialect = dialect;
102
+ this.options = options;
103
+ this.initMappers();
104
+ }
105
+ createSession(schema) {
106
+ return new NeonHttpSession(this.client, this.dialect, schema, { logger: this.options.logger });
107
+ }
108
+ initMappers() {
109
+ serverless.types.setTypeParser(serverless.types.builtins.TIMESTAMPTZ, (val) => val);
110
+ serverless.types.setTypeParser(serverless.types.builtins.TIMESTAMP, (val) => val);
111
+ serverless.types.setTypeParser(serverless.types.builtins.DATE, (val) => val);
112
+ }
113
+ }
114
+ _a = alias.entityKind;
115
+ NeonHttpDriver[_a] = 'NeonDriver';
116
+ function drizzle(client, config = {}) {
117
+ const dialect = new alias.PgDialect();
118
+ let logger;
119
+ if (config.logger === true) {
120
+ logger = new index.DefaultLogger();
121
+ }
122
+ else if (config.logger !== false) {
123
+ logger = config.logger;
124
+ }
125
+ let schema;
126
+ if (config.schema) {
127
+ const tablesConfig = alias.extractTablesRelationalConfig(config.schema, alias.createTableRelationsHelpers);
128
+ schema = {
129
+ fullSchema: config.schema,
130
+ schema: tablesConfig.tables,
131
+ tableNamesMap: tablesConfig.tableNamesMap,
132
+ };
133
+ }
134
+ const driver = new NeonHttpDriver(client, dialect, { logger });
135
+ const session = driver.createSession(schema);
136
+ return new alias.PgDatabase(dialect, session, schema);
137
+ }
138
+
139
+ exports.NeonHttpDriver = NeonHttpDriver;
140
+ exports.NeonHttpPreparedQuery = NeonHttpPreparedQuery;
141
+ exports.NeonHttpSession = NeonHttpSession;
142
+ exports.NeonTransaction = NeonTransaction;
143
+ exports.drizzle = drizzle;
144
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","sources":["../../src/neon-http/session.ts","../../src/neon-http/driver.ts"],"sourcesContent":[null,null],"names":["PreparedQuery","fillPlaceholders","mapResultRow","entityKind","_a","PgSession","NoopLogger","PgTransaction","types","PgDialect","DefaultLogger","extractTablesRelationalConfig","createTableRelationsHelpers","PgDatabase"],"mappings":"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"}
@@ -0,0 +1,68 @@
1
+ import { e as entityKind, L as Logger, Q as Query, aD as Assume, D as DrizzleConfig } from '../column.d-b7dc3bdb.js';
2
+ import { ah as PreparedQueryConfig, ai as PreparedQuery, a6 as SelectedFieldsOrdered, ak as PgSession, u as PgDialect, aj as PgTransactionConfig, al as PgTransaction, am as QueryResultHKT, t as PgDatabase } from '../db.d-cf0abe10.js';
3
+ import { T as TablesRelationalConfig, R as RelationalSchemaConfig } from '../query-promise.d-2e42fbc9.js';
4
+ import { FullQueryResults, QueryRows } from '@neondatabase/serverless';
5
+ import '../migrator.js';
6
+ import '../select.types.d-6991e56d.js';
7
+
8
+ type NeonHttpClient = {
9
+ <A extends boolean = false, F extends boolean = true>(strings: string, params?: any[], mode?: {
10
+ arrayMode?: A;
11
+ fullResults?: F;
12
+ }): Promise<F extends true ? FullQueryResults<A> : QueryRows<A>>;
13
+ };
14
+ declare class NeonHttpPreparedQuery<T extends PreparedQueryConfig> extends PreparedQuery<T> {
15
+ private client;
16
+ private queryString;
17
+ private params;
18
+ private logger;
19
+ private fields;
20
+ private name;
21
+ private customResultMapper?;
22
+ static readonly [entityKind]: string;
23
+ private rawQuery;
24
+ private query;
25
+ constructor(client: NeonHttpClient, queryString: string, params: unknown[], logger: Logger, fields: SelectedFieldsOrdered | undefined, name: string | undefined, customResultMapper?: ((rows: unknown[][]) => T['execute']) | undefined);
26
+ execute(placeholderValues?: Record<string, unknown> | undefined): Promise<T['execute']>;
27
+ all(placeholderValues?: Record<string, unknown> | undefined): Promise<T['all']>;
28
+ values(placeholderValues?: Record<string, unknown> | undefined): Promise<T['values']>;
29
+ }
30
+ interface NeonHttpSessionOptions {
31
+ logger?: Logger;
32
+ }
33
+ declare class NeonHttpSession<TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> extends PgSession<NeonHttpQueryResultHKT, TFullSchema, TSchema> {
34
+ private client;
35
+ private schema;
36
+ private options;
37
+ static readonly [entityKind]: string;
38
+ private logger;
39
+ constructor(client: NeonHttpClient, dialect: PgDialect, schema: RelationalSchemaConfig<TSchema> | undefined, options?: NeonHttpSessionOptions);
40
+ prepareQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(query: Query, fields: SelectedFieldsOrdered | undefined, name: string | undefined, customResultMapper?: (rows: unknown[][]) => T['execute']): PreparedQuery<T>;
41
+ query(query: string, params: unknown[]): Promise<FullQueryResults<true>>;
42
+ queryObjects(query: string, params: unknown[]): Promise<FullQueryResults<false>>;
43
+ transaction<T>(_transaction: (tx: NeonTransaction<TFullSchema, TSchema>) => Promise<T>, _config?: PgTransactionConfig): Promise<T>;
44
+ }
45
+ declare class NeonTransaction<TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> extends PgTransaction<NeonHttpQueryResultHKT, TFullSchema, TSchema> {
46
+ static readonly [entityKind]: string;
47
+ transaction<T>(_transaction: (tx: NeonTransaction<TFullSchema, TSchema>) => Promise<T>): Promise<T>;
48
+ }
49
+ interface NeonHttpQueryResultHKT extends QueryResultHKT {
50
+ type: FullQueryResults<Assume<this['row'], boolean>>;
51
+ }
52
+
53
+ interface NeonDriverOptions {
54
+ logger?: Logger;
55
+ }
56
+ declare class NeonHttpDriver {
57
+ private client;
58
+ private dialect;
59
+ private options;
60
+ static readonly [entityKind]: string;
61
+ constructor(client: NeonHttpClient, dialect: PgDialect, options?: NeonDriverOptions);
62
+ createSession(schema: RelationalSchemaConfig<TablesRelationalConfig> | undefined): NeonHttpSession<Record<string, unknown>, TablesRelationalConfig>;
63
+ initMappers(): void;
64
+ }
65
+ type NeonHttpDatabase<TSchema extends Record<string, unknown> = Record<string, never>> = PgDatabase<NeonHttpQueryResultHKT, TSchema>;
66
+ declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>>(client: NeonHttpClient, config?: DrizzleConfig<TSchema>): NeonHttpDatabase<TSchema>;
67
+
68
+ export { NeonDriverOptions, NeonHttpClient, NeonHttpDatabase, NeonHttpDriver, NeonHttpPreparedQuery, NeonHttpQueryResultHKT, NeonHttpSession, NeonHttpSessionOptions, NeonTransaction, drizzle };
@@ -0,0 +1,150 @@
1
+ import { types } from '@neondatabase/serverless';
2
+ import { e as entityKind, f as fillPlaceholders, m as mapResultRow, a as extractTablesRelationalConfig, c as createTableRelationsHelpers, P as PgDialect } from '../alias-3edfcde9.mjs';
3
+ import { NoopLogger, DefaultLogger } from '../index.mjs';
4
+ import { P as PreparedQuery, a as PgSession, b as PgTransaction, c as PgDatabase } from '../session-67db0282.mjs';
5
+ import '../errors-83565b05.mjs';
6
+
7
+ class NeonHttpPreparedQuery extends PreparedQuery {
8
+ client;
9
+ queryString;
10
+ params;
11
+ logger;
12
+ fields;
13
+ name;
14
+ customResultMapper;
15
+ static [entityKind] = 'NeonHttpPreparedQuery';
16
+ rawQuery;
17
+ query;
18
+ constructor(client, queryString, params, logger, fields, name, customResultMapper) {
19
+ super();
20
+ this.client = client;
21
+ this.queryString = queryString;
22
+ this.params = params;
23
+ this.logger = logger;
24
+ this.fields = fields;
25
+ this.name = name;
26
+ this.customResultMapper = customResultMapper;
27
+ this.rawQuery = {
28
+ arrayMode: false,
29
+ fullResults: true,
30
+ };
31
+ this.query = { arrayMode: true, fullResults: true };
32
+ }
33
+ async execute(placeholderValues = {}) {
34
+ const params = fillPlaceholders(this.params, placeholderValues);
35
+ this.logger.logQuery(this.queryString, params);
36
+ const { fields, client, queryString, query, rawQuery, joinsNotNullableMap, customResultMapper } = this;
37
+ if (!fields && !customResultMapper) {
38
+ return client(queryString, params, rawQuery);
39
+ }
40
+ const result = await client(queryString, params, query);
41
+ return customResultMapper
42
+ ? customResultMapper(result.rows)
43
+ : result.rows.map((row) => mapResultRow(fields, row, joinsNotNullableMap));
44
+ }
45
+ all(placeholderValues = {}) {
46
+ const params = fillPlaceholders(this.params, placeholderValues);
47
+ this.logger.logQuery(this.queryString, params);
48
+ return this.client(this.queryString, params, this.rawQuery).then((result) => result.rows);
49
+ }
50
+ values(placeholderValues = {}) {
51
+ const params = fillPlaceholders(this.params, placeholderValues);
52
+ this.logger.logQuery(this.queryString, params);
53
+ return this.client(this.queryString, params).then((result) => result.rows);
54
+ }
55
+ }
56
+ class NeonHttpSession extends PgSession {
57
+ client;
58
+ schema;
59
+ options;
60
+ static [entityKind] = 'NeonHttpSession';
61
+ logger;
62
+ constructor(client, dialect, schema, options = {}) {
63
+ super(dialect);
64
+ this.client = client;
65
+ this.schema = schema;
66
+ this.options = options;
67
+ this.logger = options.logger ?? new NoopLogger();
68
+ }
69
+ prepareQuery(query, fields, name, customResultMapper) {
70
+ return new NeonHttpPreparedQuery(this.client, query.sql, query.params, this.logger, fields, name, customResultMapper);
71
+ }
72
+ // change return type to QueryRows<true>
73
+ async query(query, params) {
74
+ this.logger.logQuery(query, params);
75
+ const result = await this.client(query, params, { arrayMode: true });
76
+ return result;
77
+ }
78
+ // change return type to QueryRows<false>
79
+ async queryObjects(query, params) {
80
+ return this.client(query, params);
81
+ }
82
+ async transaction(_transaction,
83
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
84
+ _config = {}) {
85
+ throw new Error('No transactions support in neon-http driver');
86
+ }
87
+ }
88
+ class NeonTransaction extends PgTransaction {
89
+ static [entityKind] = 'NeonHttpTransaction';
90
+ async transaction(_transaction) {
91
+ throw new Error('No transactions support in neon-http driver');
92
+ // const savepointName = `sp${this.nestedIndex + 1}`;
93
+ // const tx = new NeonTransaction(this.dialect, this.session, this.schema, this.nestedIndex + 1);
94
+ // await tx.execute(sql.raw(`savepoint ${savepointName}`));
95
+ // try {
96
+ // const result = await transaction(tx);
97
+ // await tx.execute(sql.raw(`release savepoint ${savepointName}`));
98
+ // return result;
99
+ // } catch (e) {
100
+ // await tx.execute(sql.raw(`rollback to savepoint ${savepointName}`));
101
+ // throw e;
102
+ // }
103
+ }
104
+ }
105
+
106
+ class NeonHttpDriver {
107
+ client;
108
+ dialect;
109
+ options;
110
+ static [entityKind] = 'NeonDriver';
111
+ constructor(client, dialect, options = {}) {
112
+ this.client = client;
113
+ this.dialect = dialect;
114
+ this.options = options;
115
+ this.initMappers();
116
+ }
117
+ createSession(schema) {
118
+ return new NeonHttpSession(this.client, this.dialect, schema, { logger: this.options.logger });
119
+ }
120
+ initMappers() {
121
+ types.setTypeParser(types.builtins.TIMESTAMPTZ, (val) => val);
122
+ types.setTypeParser(types.builtins.TIMESTAMP, (val) => val);
123
+ types.setTypeParser(types.builtins.DATE, (val) => val);
124
+ }
125
+ }
126
+ function drizzle(client, config = {}) {
127
+ const dialect = new PgDialect();
128
+ let logger;
129
+ if (config.logger === true) {
130
+ logger = new DefaultLogger();
131
+ }
132
+ else if (config.logger !== false) {
133
+ logger = config.logger;
134
+ }
135
+ let schema;
136
+ if (config.schema) {
137
+ const tablesConfig = extractTablesRelationalConfig(config.schema, createTableRelationsHelpers);
138
+ schema = {
139
+ fullSchema: config.schema,
140
+ schema: tablesConfig.tables,
141
+ tableNamesMap: tablesConfig.tableNamesMap,
142
+ };
143
+ }
144
+ const driver = new NeonHttpDriver(client, dialect, { logger });
145
+ const session = driver.createSession(schema);
146
+ return new PgDatabase(dialect, session, schema);
147
+ }
148
+
149
+ export { NeonHttpDriver, NeonHttpPreparedQuery, NeonHttpSession, NeonTransaction, drizzle };
150
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../../src/neon-http/session.ts","../../src/neon-http/driver.ts"],"sourcesContent":[null,null],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ 'use strict';
2
+
3
+ var migrator = require('../migrator.cjs');
4
+ var alias = require('../alias-5f56ec1f.cjs');
5
+ require('node:crypto');
6
+ require('node:fs');
7
+ require('node:path');
8
+
9
+ /**
10
+ * This function reads migrationFolder and execute each unapplied migration and mark it as executed in database
11
+ *
12
+ * NOTE: The Neon HTTP driver does not support transactions. This means that if any part of a migration fails,
13
+ * no rollback will be executed. Currently, you will need to handle unsuccessful migration yourself.
14
+ * @param db - drizzle db instance
15
+ * @param config - path to migration folder generated by drizzle-kit
16
+ */
17
+ async function migrate(db, config) {
18
+ const migrations = migrator.readMigrationFiles(config);
19
+ const migrationTableCreate = alias.sql `
20
+ CREATE TABLE IF NOT EXISTS "drizzle"."__drizzle_migrations" (
21
+ id SERIAL PRIMARY KEY,
22
+ hash text NOT NULL,
23
+ created_at bigint
24
+ )
25
+ `;
26
+ await db.session.execute(alias.sql `CREATE SCHEMA IF NOT EXISTS "drizzle"`);
27
+ await db.session.execute(migrationTableCreate);
28
+ const dbMigrations = await db.session.all(alias.sql `select id, hash, created_at from "drizzle"."__drizzle_migrations" order by created_at desc limit 1`);
29
+ const lastDbMigration = dbMigrations[0];
30
+ const rowsToInsert = [];
31
+ for await (const migration of migrations) {
32
+ if (!lastDbMigration
33
+ || Number(lastDbMigration.created_at) < migration.folderMillis) {
34
+ for (const stmt of migration.sql) {
35
+ await db.session.execute(alias.sql.raw(stmt));
36
+ }
37
+ rowsToInsert.push(alias.sql `insert into "drizzle"."__drizzle_migrations" ("hash", "created_at") values(${migration.hash}, ${migration.folderMillis})`);
38
+ }
39
+ }
40
+ for await (const rowToInsert of rowsToInsert) {
41
+ await db.session.execute(rowToInsert);
42
+ }
43
+ }
44
+
45
+ exports.migrate = migrate;
46
+ //# sourceMappingURL=migrator.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migrator.cjs","sources":["../../src/neon-http/migrator.ts"],"sourcesContent":[null],"names":["readMigrationFiles","sql"],"mappings":";;;;;;;;AAKA;;;;;;;AAOG;AACI,eAAe,OAAO,CAC5B,EAA6B,EAC7B,MAAgC,EAAA;AAEhC,IAAA,MAAM,UAAU,GAAGA,2BAAkB,CAAC,MAAM,CAAC,CAAC;IAC9C,MAAM,oBAAoB,GAAGC,SAAG,CAAA,CAAA;;;;;;EAM/B,CAAC;IACF,MAAM,EAAE,CAAC,OAAO,CAAC,OAAO,CAACA,SAAG,CAAA,CAAuC,qCAAA,CAAA,CAAC,CAAC;IACrE,MAAM,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAE/C,IAAA,MAAM,YAAY,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CACxCA,SAAG,CAAA,CAAA,kGAAA,CAAoG,CACvG,CAAC;AAEF,IAAA,MAAM,eAAe,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;IACxC,MAAM,YAAY,GAAU,EAAE,CAAC;AAC/B,IAAA,WAAW,MAAM,SAAS,IAAI,UAAU,EAAE;AACzC,QAAA,IACC,CAAC,eAAe;eACb,MAAM,CAAC,eAAe,CAAC,UAAU,CAAC,GAAG,SAAS,CAAC,YAAY,EAC7D;AACD,YAAA,KAAK,MAAM,IAAI,IAAI,SAAS,CAAC,GAAG,EAAE;AACjC,gBAAA,MAAM,EAAE,CAAC,OAAO,CAAC,OAAO,CAACA,SAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;AACxC,aAAA;AAED,YAAA,YAAY,CAAC,IAAI,CAChBA,SAAG,CAAA,CAA8E,2EAAA,EAAA,SAAS,CAAC,IAAI,KAAK,SAAS,CAAC,YAAY,CAAA,CAAA,CAAG,CAC7H,CAAA;AACD,SAAA;AACD,KAAA;AAED,IAAA,WAAW,MAAM,WAAW,IAAI,YAAY,EAAE;QAC7C,MAAM,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;AACtC,KAAA;AACF;;;;"}
@@ -0,0 +1,19 @@
1
+ import { MigrationConfig } from '../migrator.js';
2
+ import { NeonHttpDatabase } from './index.js';
3
+ import '../column.d-b7dc3bdb.js';
4
+ import '../db.d-cf0abe10.js';
5
+ import '../query-promise.d-2e42fbc9.js';
6
+ import '../select.types.d-6991e56d.js';
7
+ import '@neondatabase/serverless';
8
+
9
+ /**
10
+ * This function reads migrationFolder and execute each unapplied migration and mark it as executed in database
11
+ *
12
+ * NOTE: The Neon HTTP driver does not support transactions. This means that if any part of a migration fails,
13
+ * no rollback will be executed. Currently, you will need to handle unsuccessful migration yourself.
14
+ * @param db - drizzle db instance
15
+ * @param config - path to migration folder generated by drizzle-kit
16
+ */
17
+ declare function migrate<TSchema extends Record<string, unknown>>(db: NeonHttpDatabase<TSchema>, config: string | MigrationConfig): Promise<void>;
18
+
19
+ export { migrate };
@@ -0,0 +1,44 @@
1
+ import { readMigrationFiles } from '../migrator.mjs';
2
+ import { s as sql } from '../alias-3edfcde9.mjs';
3
+ import 'node:crypto';
4
+ import 'node:fs';
5
+ import 'node:path';
6
+
7
+ /**
8
+ * This function reads migrationFolder and execute each unapplied migration and mark it as executed in database
9
+ *
10
+ * NOTE: The Neon HTTP driver does not support transactions. This means that if any part of a migration fails,
11
+ * no rollback will be executed. Currently, you will need to handle unsuccessful migration yourself.
12
+ * @param db - drizzle db instance
13
+ * @param config - path to migration folder generated by drizzle-kit
14
+ */
15
+ async function migrate(db, config) {
16
+ const migrations = readMigrationFiles(config);
17
+ const migrationTableCreate = sql `
18
+ CREATE TABLE IF NOT EXISTS "drizzle"."__drizzle_migrations" (
19
+ id SERIAL PRIMARY KEY,
20
+ hash text NOT NULL,
21
+ created_at bigint
22
+ )
23
+ `;
24
+ await db.session.execute(sql `CREATE SCHEMA IF NOT EXISTS "drizzle"`);
25
+ await db.session.execute(migrationTableCreate);
26
+ const dbMigrations = await db.session.all(sql `select id, hash, created_at from "drizzle"."__drizzle_migrations" order by created_at desc limit 1`);
27
+ const lastDbMigration = dbMigrations[0];
28
+ const rowsToInsert = [];
29
+ for await (const migration of migrations) {
30
+ if (!lastDbMigration
31
+ || Number(lastDbMigration.created_at) < migration.folderMillis) {
32
+ for (const stmt of migration.sql) {
33
+ await db.session.execute(sql.raw(stmt));
34
+ }
35
+ rowsToInsert.push(sql `insert into "drizzle"."__drizzle_migrations" ("hash", "created_at") values(${migration.hash}, ${migration.folderMillis})`);
36
+ }
37
+ }
38
+ for await (const rowToInsert of rowsToInsert) {
39
+ await db.session.execute(rowToInsert);
40
+ }
41
+ }
42
+
43
+ export { migrate };
44
+ //# sourceMappingURL=migrator.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migrator.mjs","sources":["../../src/neon-http/migrator.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;AAKA;;;;;;;AAOG;AACI,eAAe,OAAO,CAC5B,EAA6B,EAC7B,MAAgC,EAAA;AAEhC,IAAA,MAAM,UAAU,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAC9C,MAAM,oBAAoB,GAAG,GAAG,CAAA,CAAA;;;;;;EAM/B,CAAC;IACF,MAAM,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAA,CAAuC,qCAAA,CAAA,CAAC,CAAC;IACrE,MAAM,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAE/C,IAAA,MAAM,YAAY,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CACxC,GAAG,CAAA,CAAA,kGAAA,CAAoG,CACvG,CAAC;AAEF,IAAA,MAAM,eAAe,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;IACxC,MAAM,YAAY,GAAU,EAAE,CAAC;AAC/B,IAAA,WAAW,MAAM,SAAS,IAAI,UAAU,EAAE;AACzC,QAAA,IACC,CAAC,eAAe;eACb,MAAM,CAAC,eAAe,CAAC,UAAU,CAAC,GAAG,SAAS,CAAC,YAAY,EAC7D;AACD,YAAA,KAAK,MAAM,IAAI,IAAI,SAAS,CAAC,GAAG,EAAE;AACjC,gBAAA,MAAM,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;AACxC,aAAA;AAED,YAAA,YAAY,CAAC,IAAI,CAChB,GAAG,CAAA,CAA8E,2EAAA,EAAA,SAAS,CAAC,IAAI,KAAK,SAAS,CAAC,YAAY,CAAA,CAAA,CAAG,CAC7H,CAAA;AACD,SAAA;AACD,KAAA;AAED,IAAA,WAAW,MAAM,WAAW,IAAI,YAAY,EAAE;QAC7C,MAAM,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;AACtC,KAAA;AACF;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "drizzle-orm",
3
- "version": "0.27.0",
3
+ "version": "0.27.1",
4
4
  "description": "Drizzle ORM package for SQL databases",
5
5
  "type": "module",
6
6
  "scripts": {
@@ -126,7 +126,7 @@
126
126
  "@aws-sdk/client-rds-data": "^3.344.0",
127
127
  "@cloudflare/workers-types": "^4.20230518.0",
128
128
  "@libsql/client": "^0.1.6",
129
- "@neondatabase/serverless": "^0.4.9",
129
+ "@neondatabase/serverless": "^0.4.24",
130
130
  "@opentelemetry/api": "^1.4.1",
131
131
  "@originjs/vite-plugin-commonjs": "^1.0.3",
132
132
  "@planetscale/database": "^1.7.0",
@@ -278,6 +278,18 @@
278
278
  "require": "./neon-serverless/migrator.cjs",
279
279
  "default": "./neon-serverless/migrator.mjs"
280
280
  },
281
+ "./neon-http": {
282
+ "types": "./neon-http/index.d.ts",
283
+ "import": "./neon-http/index.mjs",
284
+ "require": "./neon-http/index.cjs",
285
+ "default": "./neon-http/index.mjs"
286
+ },
287
+ "./neon-http/migrator": {
288
+ "types": "./neon-http/migrator.d.ts",
289
+ "import": "./neon-http/migrator.mjs",
290
+ "require": "./neon-http/migrator.cjs",
291
+ "default": "./neon-http/migrator.mjs"
292
+ },
281
293
  "./node-postgres": {
282
294
  "types": "./node-postgres/index.d.ts",
283
295
  "import": "./node-postgres/index.mjs",
package/version.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- const version = "0.27.0";
3
+ const version = "0.27.1";
4
4
 
5
5
  // @ts-expect-error - imported using Rollup json plugin
6
6
  const compatibilityVersion = 5;
package/version.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- const version = "0.27.0";
1
+ const version = "0.27.1";
2
2
 
3
3
  declare const compatibilityVersion = 5;
4
4
 
package/version.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const version = "0.27.0";
1
+ const version = "0.27.1";
2
2
 
3
3
  // @ts-expect-error - imported using Rollup json plugin
4
4
  const compatibilityVersion = 5;