@payloadcms/db-sqlite 3.0.0-canary.2c2c95f
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/README.md +30 -0
- package/dist/connect.d.ts +3 -0
- package/dist/connect.d.ts.map +1 -0
- package/dist/connect.js +42 -0
- package/dist/connect.js.map +1 -0
- package/dist/countDistinct.d.ts +3 -0
- package/dist/countDistinct.d.ts.map +1 -0
- package/dist/countDistinct.js +24 -0
- package/dist/countDistinct.js.map +1 -0
- package/dist/createJSONQuery/convertPathToJSONTraversal.d.ts +2 -0
- package/dist/createJSONQuery/convertPathToJSONTraversal.d.ts.map +1 -0
- package/dist/createJSONQuery/convertPathToJSONTraversal.js +12 -0
- package/dist/createJSONQuery/convertPathToJSONTraversal.js.map +1 -0
- package/dist/createJSONQuery/index.d.ts +3 -0
- package/dist/createJSONQuery/index.d.ts.map +1 -0
- package/dist/createJSONQuery/index.js +54 -0
- package/dist/createJSONQuery/index.js.map +1 -0
- package/dist/createMigration.d.ts +3 -0
- package/dist/createMigration.d.ts.map +1 -0
- package/dist/createMigration.js +81 -0
- package/dist/createMigration.js.map +1 -0
- package/dist/defaultSnapshot.d.ts +3 -0
- package/dist/defaultSnapshot.d.ts.map +1 -0
- package/dist/defaultSnapshot.js +14 -0
- package/dist/defaultSnapshot.js.map +1 -0
- package/dist/deleteWhere.d.ts +3 -0
- package/dist/deleteWhere.d.ts.map +1 -0
- package/dist/deleteWhere.js +6 -0
- package/dist/deleteWhere.js.map +1 -0
- package/dist/dropDatabase.d.ts +3 -0
- package/dist/dropDatabase.d.ts.map +1 -0
- package/dist/dropDatabase.js +19 -0
- package/dist/dropDatabase.js.map +1 -0
- package/dist/execute.d.ts +3 -0
- package/dist/execute.d.ts.map +1 -0
- package/dist/execute.js +13 -0
- package/dist/execute.js.map +1 -0
- package/dist/generateDrizzleJSON.d.ts +3 -0
- package/dist/generateDrizzleJSON.d.ts.map +1 -0
- package/dist/generateDrizzleJSON.js +8 -0
- package/dist/generateDrizzleJSON.js.map +1 -0
- package/dist/getMigrationTemplate.d.ts +3 -0
- package/dist/getMigrationTemplate.d.ts.map +1 -0
- package/dist/getMigrationTemplate.js +12 -0
- package/dist/getMigrationTemplate.js.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +116 -0
- package/dist/index.js.map +1 -0
- package/dist/init.d.ts +3 -0
- package/dist/init.d.ts.map +1 -0
- package/dist/init.js +88 -0
- package/dist/init.js.map +1 -0
- package/dist/insert.d.ts +3 -0
- package/dist/insert.d.ts.map +1 -0
- package/dist/insert.js +13 -0
- package/dist/insert.js.map +1 -0
- package/dist/requireDrizzleKit.d.ts +3 -0
- package/dist/requireDrizzleKit.d.ts.map +1 -0
- package/dist/requireDrizzleKit.js +10 -0
- package/dist/requireDrizzleKit.js.map +1 -0
- package/dist/schema/build.d.ts +49 -0
- package/dist/schema/build.d.ts.map +1 -0
- package/dist/schema/build.js +407 -0
- package/dist/schema/build.js.map +1 -0
- package/dist/schema/createIndex.d.ts +12 -0
- package/dist/schema/createIndex.d.ts.map +1 -0
- package/dist/schema/createIndex.js +18 -0
- package/dist/schema/createIndex.js.map +1 -0
- package/dist/schema/getIDColumn.d.ts +8 -0
- package/dist/schema/getIDColumn.d.ts.map +1 -0
- package/dist/schema/getIDColumn.js +24 -0
- package/dist/schema/getIDColumn.js.map +1 -0
- package/dist/schema/idToUUID.d.ts +3 -0
- package/dist/schema/idToUUID.d.ts.map +1 -0
- package/dist/schema/idToUUID.js +11 -0
- package/dist/schema/idToUUID.js.map +1 -0
- package/dist/schema/setColumnID.d.ts +10 -0
- package/dist/schema/setColumnID.d.ts.map +1 -0
- package/dist/schema/setColumnID.js +20 -0
- package/dist/schema/setColumnID.js.map +1 -0
- package/dist/schema/traverseFields.d.ts +37 -0
- package/dist/schema/traverseFields.d.ts.map +1 -0
- package/dist/schema/traverseFields.js +633 -0
- package/dist/schema/traverseFields.js.map +1 -0
- package/dist/types.d.ts +136 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -0
- package/package.json +62 -0
package/dist/index.js
ADDED
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import { count, create, createGlobal, createGlobalVersion, createVersion, deleteMany, deleteOne, deleteVersions, destroy, find, findGlobal, findGlobalVersions, findMigrationDir, findOne, findVersions, migrate, migrateDown, migrateFresh, migrateRefresh, migrateReset, migrateStatus, operatorMap, queryDrafts, rollbackTransaction, updateGlobal, updateGlobalVersion, updateOne, updateVersion } from '@payloadcms/drizzle';
|
|
2
|
+
import { like } from 'drizzle-orm';
|
|
3
|
+
import { createDatabaseAdapter } from 'payload';
|
|
4
|
+
import { connect } from './connect.js';
|
|
5
|
+
import { countDistinct } from './countDistinct.js';
|
|
6
|
+
import { convertPathToJSONTraversal } from './createJSONQuery/convertPathToJSONTraversal.js';
|
|
7
|
+
import { createJSONQuery } from './createJSONQuery/index.js';
|
|
8
|
+
import { createMigration } from './createMigration.js';
|
|
9
|
+
import { defaultDrizzleSnapshot } from './defaultSnapshot.js';
|
|
10
|
+
import { deleteWhere } from './deleteWhere.js';
|
|
11
|
+
import { dropDatabase } from './dropDatabase.js';
|
|
12
|
+
import { execute } from './execute.js';
|
|
13
|
+
import { generateDrizzleJSON } from './generateDrizzleJSON.js';
|
|
14
|
+
import { getMigrationTemplate } from './getMigrationTemplate.js';
|
|
15
|
+
import { init } from './init.js';
|
|
16
|
+
import { insert } from './insert.js';
|
|
17
|
+
import { requireDrizzleKit } from './requireDrizzleKit.js';
|
|
18
|
+
export { sql } from 'drizzle-orm';
|
|
19
|
+
export function sqliteAdapter(args) {
|
|
20
|
+
const postgresIDType = args.idType || 'serial';
|
|
21
|
+
const payloadIDType = postgresIDType === 'serial' ? 'number' : 'text';
|
|
22
|
+
function adapter({ payload }) {
|
|
23
|
+
const migrationDir = findMigrationDir(args.migrationDir);
|
|
24
|
+
let resolveInitializing;
|
|
25
|
+
let rejectInitializing;
|
|
26
|
+
const initializing = new Promise((res, rej)=>{
|
|
27
|
+
resolveInitializing = res;
|
|
28
|
+
rejectInitializing = rej;
|
|
29
|
+
});
|
|
30
|
+
// sqlite's like operator is case-insensitive, so we overwrite the DrizzleAdapter operators to not use ilike
|
|
31
|
+
const operators = {
|
|
32
|
+
...operatorMap,
|
|
33
|
+
contains: like,
|
|
34
|
+
like
|
|
35
|
+
};
|
|
36
|
+
return createDatabaseAdapter({
|
|
37
|
+
name: 'sqlite',
|
|
38
|
+
client: undefined,
|
|
39
|
+
clientConfig: args.client,
|
|
40
|
+
defaultDrizzleSnapshot,
|
|
41
|
+
drizzle: undefined,
|
|
42
|
+
features: {
|
|
43
|
+
json: true
|
|
44
|
+
},
|
|
45
|
+
fieldConstraints: {},
|
|
46
|
+
getMigrationTemplate,
|
|
47
|
+
idType: postgresIDType,
|
|
48
|
+
initializing,
|
|
49
|
+
localesSuffix: args.localesSuffix || '_locales',
|
|
50
|
+
logger: args.logger,
|
|
51
|
+
operators,
|
|
52
|
+
push: args.push,
|
|
53
|
+
relations: {},
|
|
54
|
+
relationshipsSuffix: args.relationshipsSuffix || '_rels',
|
|
55
|
+
schema: {},
|
|
56
|
+
schemaName: args.schemaName,
|
|
57
|
+
sessions: {},
|
|
58
|
+
tableNameMap: new Map(),
|
|
59
|
+
tables: {},
|
|
60
|
+
versionsSuffix: args.versionsSuffix || '_v',
|
|
61
|
+
// DatabaseAdapter
|
|
62
|
+
// TODO: revisit if we can use transactions
|
|
63
|
+
// beginTransaction,
|
|
64
|
+
// commitTransaction,
|
|
65
|
+
connect,
|
|
66
|
+
convertPathToJSONTraversal,
|
|
67
|
+
count,
|
|
68
|
+
countDistinct,
|
|
69
|
+
create,
|
|
70
|
+
createGlobal,
|
|
71
|
+
createGlobalVersion,
|
|
72
|
+
createJSONQuery,
|
|
73
|
+
createMigration,
|
|
74
|
+
createVersion,
|
|
75
|
+
defaultIDType: payloadIDType,
|
|
76
|
+
deleteMany,
|
|
77
|
+
deleteOne,
|
|
78
|
+
deleteVersions,
|
|
79
|
+
deleteWhere,
|
|
80
|
+
destroy,
|
|
81
|
+
dropDatabase,
|
|
82
|
+
execute,
|
|
83
|
+
find,
|
|
84
|
+
findGlobal,
|
|
85
|
+
findGlobalVersions,
|
|
86
|
+
findOne,
|
|
87
|
+
findVersions,
|
|
88
|
+
generateDrizzleJSON,
|
|
89
|
+
init,
|
|
90
|
+
insert,
|
|
91
|
+
migrate,
|
|
92
|
+
migrateDown,
|
|
93
|
+
migrateFresh,
|
|
94
|
+
migrateRefresh,
|
|
95
|
+
migrateReset,
|
|
96
|
+
migrateStatus,
|
|
97
|
+
migrationDir,
|
|
98
|
+
payload,
|
|
99
|
+
queryDrafts,
|
|
100
|
+
rejectInitializing,
|
|
101
|
+
requireDrizzleKit,
|
|
102
|
+
resolveInitializing,
|
|
103
|
+
rollbackTransaction,
|
|
104
|
+
updateGlobal,
|
|
105
|
+
updateGlobalVersion,
|
|
106
|
+
updateOne,
|
|
107
|
+
updateVersion
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
return {
|
|
111
|
+
defaultIDType: payloadIDType,
|
|
112
|
+
init: adapter
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["import type { Operators } from '@payloadcms/drizzle'\nimport type { DatabaseAdapterObj, Payload } from 'payload'\n\nimport {\n count,\n create,\n createGlobal,\n createGlobalVersion,\n createVersion,\n deleteMany,\n deleteOne,\n deleteVersions,\n destroy,\n find,\n findGlobal,\n findGlobalVersions,\n findMigrationDir,\n findOne,\n findVersions,\n migrate,\n migrateDown,\n migrateFresh,\n migrateRefresh,\n migrateReset,\n migrateStatus,\n operatorMap,\n queryDrafts,\n rollbackTransaction,\n updateGlobal,\n updateGlobalVersion,\n updateOne,\n updateVersion,\n} from '@payloadcms/drizzle'\nimport { ilike, like } from 'drizzle-orm'\nimport { createDatabaseAdapter } from 'payload'\n\nimport type { Args, SQLiteAdapter } from './types.js'\n\nimport { connect } from './connect.js'\nimport { countDistinct } from './countDistinct.js'\nimport { convertPathToJSONTraversal } from './createJSONQuery/convertPathToJSONTraversal.js'\nimport { createJSONQuery } from './createJSONQuery/index.js'\nimport { createMigration } from './createMigration.js'\nimport { defaultDrizzleSnapshot } from './defaultSnapshot.js'\nimport { deleteWhere } from './deleteWhere.js'\nimport { dropDatabase } from './dropDatabase.js'\nimport { execute } from './execute.js'\nimport { generateDrizzleJSON } from './generateDrizzleJSON.js'\nimport { getMigrationTemplate } from './getMigrationTemplate.js'\nimport { init } from './init.js'\nimport { insert } from './insert.js'\nimport { requireDrizzleKit } from './requireDrizzleKit.js'\n\nexport type { MigrateDownArgs, MigrateUpArgs } from './types.js'\n\nexport { sql } from 'drizzle-orm'\n\nexport function sqliteAdapter(args: Args): DatabaseAdapterObj<SQLiteAdapter> {\n const postgresIDType = args.idType || 'serial'\n const payloadIDType = postgresIDType === 'serial' ? 'number' : 'text'\n\n function adapter({ payload }: { payload: Payload }) {\n const migrationDir = findMigrationDir(args.migrationDir)\n let resolveInitializing\n let rejectInitializing\n\n const initializing = new Promise<void>((res, rej) => {\n resolveInitializing = res\n rejectInitializing = rej\n })\n\n // sqlite's like operator is case-insensitive, so we overwrite the DrizzleAdapter operators to not use ilike\n const operators = {\n ...operatorMap,\n contains: like,\n like,\n } as unknown as Operators\n\n return createDatabaseAdapter<SQLiteAdapter>({\n name: 'sqlite',\n client: undefined,\n clientConfig: args.client,\n defaultDrizzleSnapshot,\n drizzle: undefined,\n features: {\n json: true,\n },\n fieldConstraints: {},\n getMigrationTemplate,\n idType: postgresIDType,\n initializing,\n localesSuffix: args.localesSuffix || '_locales',\n logger: args.logger,\n operators,\n push: args.push,\n relations: {},\n relationshipsSuffix: args.relationshipsSuffix || '_rels',\n schema: {},\n schemaName: args.schemaName,\n sessions: {},\n tableNameMap: new Map<string, string>(),\n tables: {},\n versionsSuffix: args.versionsSuffix || '_v',\n\n // DatabaseAdapter\n // TODO: revisit if we can use transactions\n // beginTransaction,\n // commitTransaction,\n connect,\n convertPathToJSONTraversal,\n count,\n countDistinct,\n create,\n createGlobal,\n createGlobalVersion,\n createJSONQuery,\n createMigration,\n createVersion,\n defaultIDType: payloadIDType,\n deleteMany,\n deleteOne,\n deleteVersions,\n deleteWhere,\n destroy,\n dropDatabase,\n execute,\n find,\n findGlobal,\n findGlobalVersions,\n findOne,\n findVersions,\n generateDrizzleJSON,\n init,\n insert,\n migrate,\n migrateDown,\n migrateFresh,\n migrateRefresh,\n migrateReset,\n migrateStatus,\n migrationDir,\n payload,\n queryDrafts,\n rejectInitializing,\n requireDrizzleKit,\n resolveInitializing,\n rollbackTransaction,\n updateGlobal,\n updateGlobalVersion,\n updateOne,\n updateVersion,\n })\n }\n\n return {\n defaultIDType: payloadIDType,\n init: adapter,\n }\n}\n"],"names":["count","create","createGlobal","createGlobalVersion","createVersion","deleteMany","deleteOne","deleteVersions","destroy","find","findGlobal","findGlobalVersions","findMigrationDir","findOne","findVersions","migrate","migrateDown","migrateFresh","migrateRefresh","migrateReset","migrateStatus","operatorMap","queryDrafts","rollbackTransaction","updateGlobal","updateGlobalVersion","updateOne","updateVersion","like","createDatabaseAdapter","connect","countDistinct","convertPathToJSONTraversal","createJSONQuery","createMigration","defaultDrizzleSnapshot","deleteWhere","dropDatabase","execute","generateDrizzleJSON","getMigrationTemplate","init","insert","requireDrizzleKit","sql","sqliteAdapter","args","postgresIDType","idType","payloadIDType","adapter","payload","migrationDir","resolveInitializing","rejectInitializing","initializing","Promise","res","rej","operators","contains","name","client","undefined","clientConfig","drizzle","features","json","fieldConstraints","localesSuffix","logger","push","relations","relationshipsSuffix","schema","schemaName","sessions","tableNameMap","Map","tables","versionsSuffix","defaultIDType"],"mappings":"AAGA,SACEA,KAAK,EACLC,MAAM,EACNC,YAAY,EACZC,mBAAmB,EACnBC,aAAa,EACbC,UAAU,EACVC,SAAS,EACTC,cAAc,EACdC,OAAO,EACPC,IAAI,EACJC,UAAU,EACVC,kBAAkB,EAClBC,gBAAgB,EAChBC,OAAO,EACPC,YAAY,EACZC,OAAO,EACPC,WAAW,EACXC,YAAY,EACZC,cAAc,EACdC,YAAY,EACZC,aAAa,EACbC,WAAW,EACXC,WAAW,EACXC,mBAAmB,EACnBC,YAAY,EACZC,mBAAmB,EACnBC,SAAS,EACTC,aAAa,QACR,sBAAqB;AAC5B,SAAgBC,IAAI,QAAQ,cAAa;AACzC,SAASC,qBAAqB,QAAQ,UAAS;AAI/C,SAASC,OAAO,QAAQ,eAAc;AACtC,SAASC,aAAa,QAAQ,qBAAoB;AAClD,SAASC,0BAA0B,QAAQ,kDAAiD;AAC5F,SAASC,eAAe,QAAQ,6BAA4B;AAC5D,SAASC,eAAe,QAAQ,uBAAsB;AACtD,SAASC,sBAAsB,QAAQ,uBAAsB;AAC7D,SAASC,WAAW,QAAQ,mBAAkB;AAC9C,SAASC,YAAY,QAAQ,oBAAmB;AAChD,SAASC,OAAO,QAAQ,eAAc;AACtC,SAASC,mBAAmB,QAAQ,2BAA0B;AAC9D,SAASC,oBAAoB,QAAQ,4BAA2B;AAChE,SAASC,IAAI,QAAQ,YAAW;AAChC,SAASC,MAAM,QAAQ,cAAa;AACpC,SAASC,iBAAiB,QAAQ,yBAAwB;AAI1D,SAASC,GAAG,QAAQ,cAAa;AAEjC,OAAO,SAASC,cAAcC,IAAU;IACtC,MAAMC,iBAAiBD,KAAKE,MAAM,IAAI;IACtC,MAAMC,gBAAgBF,mBAAmB,WAAW,WAAW;IAE/D,SAASG,QAAQ,EAAEC,OAAO,EAAwB;QAChD,MAAMC,eAAexC,iBAAiBkC,KAAKM,YAAY;QACvD,IAAIC;QACJ,IAAIC;QAEJ,MAAMC,eAAe,IAAIC,QAAc,CAACC,KAAKC;YAC3CL,sBAAsBI;YACtBH,qBAAqBI;QACvB;QAEA,4GAA4G;QAC5G,MAAMC,YAAY;YAChB,GAAGtC,WAAW;YACduC,UAAUhC;YACVA;QACF;QAEA,OAAOC,sBAAqC;YAC1CgC,MAAM;YACNC,QAAQC;YACRC,cAAclB,KAAKgB,MAAM;YACzB3B;YACA8B,SAASF;YACTG,UAAU;gBACRC,MAAM;YACR;YACAC,kBAAkB,CAAC;YACnB5B;YACAQ,QAAQD;YACRQ;YACAc,eAAevB,KAAKuB,aAAa,IAAI;YACrCC,QAAQxB,KAAKwB,MAAM;YACnBX;YACAY,MAAMzB,KAAKyB,IAAI;YACfC,WAAW,CAAC;YACZC,qBAAqB3B,KAAK2B,mBAAmB,IAAI;YACjDC,QAAQ,CAAC;YACTC,YAAY7B,KAAK6B,UAAU;YAC3BC,UAAU,CAAC;YACXC,cAAc,IAAIC;YAClBC,QAAQ,CAAC;YACTC,gBAAgBlC,KAAKkC,cAAc,IAAI;YAEvC,kBAAkB;YAClB,2CAA2C;YAC3C,oBAAoB;YACpB,qBAAqB;YACrBlD;YACAE;YACAhC;YACA+B;YACA9B;YACAC;YACAC;YACA8B;YACAC;YACA9B;YACA6E,eAAehC;YACf5C;YACAC;YACAC;YACA6B;YACA5B;YACA6B;YACAC;YACA7B;YACAC;YACAC;YACAE;YACAC;YACAyB;YACAE;YACAC;YACA3B;YACAC;YACAC;YACAC;YACAC;YACAC;YACAgC;YACAD;YACA7B;YACAgC;YACAX;YACAU;YACA9B;YACAC;YACAC;YACAC;YACAC;QACF;IACF;IAEA,OAAO;QACLsD,eAAehC;QACfR,MAAMS;IACR;AACF"}
|
package/dist/init.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAA6B,MAAM,SAAS,CAAA;AAU9D,eAAO,MAAM,IAAI,EAAE,IA+FlB,CAAA"}
|
package/dist/init.js
ADDED
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
/* eslint-disable no-param-reassign */ import { createTableName } from '@payloadcms/drizzle';
|
|
2
|
+
import { buildVersionCollectionFields, buildVersionGlobalFields } from 'payload';
|
|
3
|
+
import toSnakeCase from 'to-snake-case';
|
|
4
|
+
import { buildTable } from './schema/build.js';
|
|
5
|
+
export const init = function init() {
|
|
6
|
+
let locales;
|
|
7
|
+
if (this.payload.config.localization) {
|
|
8
|
+
locales = this.payload.config.localization.locales.map(({ code })=>code);
|
|
9
|
+
}
|
|
10
|
+
this.payload.config.collections.forEach((collection)=>{
|
|
11
|
+
createTableName({
|
|
12
|
+
adapter: this,
|
|
13
|
+
config: collection
|
|
14
|
+
});
|
|
15
|
+
if (collection.versions) {
|
|
16
|
+
createTableName({
|
|
17
|
+
adapter: this,
|
|
18
|
+
config: collection,
|
|
19
|
+
versions: true,
|
|
20
|
+
versionsCustomName: true
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
this.payload.config.collections.forEach((collection)=>{
|
|
25
|
+
const tableName = this.tableNameMap.get(toSnakeCase(collection.slug));
|
|
26
|
+
buildTable({
|
|
27
|
+
adapter: this,
|
|
28
|
+
disableNotNull: !!collection?.versions?.drafts,
|
|
29
|
+
disableUnique: false,
|
|
30
|
+
fields: collection.fields,
|
|
31
|
+
locales,
|
|
32
|
+
tableName,
|
|
33
|
+
timestamps: collection.timestamps,
|
|
34
|
+
versions: false
|
|
35
|
+
});
|
|
36
|
+
if (collection.versions) {
|
|
37
|
+
const versionsTableName = this.tableNameMap.get(`_${toSnakeCase(collection.slug)}${this.versionsSuffix}`);
|
|
38
|
+
const versionFields = buildVersionCollectionFields(collection);
|
|
39
|
+
buildTable({
|
|
40
|
+
adapter: this,
|
|
41
|
+
disableNotNull: !!collection.versions?.drafts,
|
|
42
|
+
disableUnique: true,
|
|
43
|
+
fields: versionFields,
|
|
44
|
+
locales,
|
|
45
|
+
tableName: versionsTableName,
|
|
46
|
+
timestamps: true,
|
|
47
|
+
versions: true
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
this.payload.config.globals.forEach((global)=>{
|
|
52
|
+
const tableName = createTableName({
|
|
53
|
+
adapter: this,
|
|
54
|
+
config: global
|
|
55
|
+
});
|
|
56
|
+
buildTable({
|
|
57
|
+
adapter: this,
|
|
58
|
+
disableNotNull: !!global?.versions?.drafts,
|
|
59
|
+
disableUnique: false,
|
|
60
|
+
fields: global.fields,
|
|
61
|
+
locales,
|
|
62
|
+
tableName,
|
|
63
|
+
timestamps: false,
|
|
64
|
+
versions: false
|
|
65
|
+
});
|
|
66
|
+
if (global.versions) {
|
|
67
|
+
const versionsTableName = createTableName({
|
|
68
|
+
adapter: this,
|
|
69
|
+
config: global,
|
|
70
|
+
versions: true,
|
|
71
|
+
versionsCustomName: true
|
|
72
|
+
});
|
|
73
|
+
const versionFields = buildVersionGlobalFields(global);
|
|
74
|
+
buildTable({
|
|
75
|
+
adapter: this,
|
|
76
|
+
disableNotNull: !!global.versions?.drafts,
|
|
77
|
+
disableUnique: true,
|
|
78
|
+
fields: versionFields,
|
|
79
|
+
locales,
|
|
80
|
+
tableName: versionsTableName,
|
|
81
|
+
timestamps: true,
|
|
82
|
+
versions: true
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
//# sourceMappingURL=init.js.map
|
package/dist/init.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/init.ts"],"sourcesContent":["/* eslint-disable no-param-reassign */\nimport type { DrizzleAdapter } from '@payloadcms/drizzle/types'\nimport type { Init, SanitizedCollectionConfig } from 'payload'\n\nimport { createTableName } from '@payloadcms/drizzle'\nimport { buildVersionCollectionFields, buildVersionGlobalFields } from 'payload'\nimport toSnakeCase from 'to-snake-case'\n\nimport type { SQLiteAdapter } from './types.js'\n\nimport { buildTable } from './schema/build.js'\n\nexport const init: Init = function init(this: SQLiteAdapter) {\n let locales: [string, ...string[]] | undefined\n if (this.payload.config.localization) {\n locales = this.payload.config.localization.locales.map(({ code }) => code) as [\n string,\n ...string[],\n ]\n }\n\n this.payload.config.collections.forEach((collection: SanitizedCollectionConfig) => {\n createTableName({\n adapter: this as unknown as DrizzleAdapter,\n config: collection,\n })\n\n if (collection.versions) {\n createTableName({\n adapter: this as unknown as DrizzleAdapter,\n config: collection,\n versions: true,\n versionsCustomName: true,\n })\n }\n })\n this.payload.config.collections.forEach((collection: SanitizedCollectionConfig) => {\n const tableName = this.tableNameMap.get(toSnakeCase(collection.slug))\n\n buildTable({\n adapter: this,\n disableNotNull: !!collection?.versions?.drafts,\n disableUnique: false,\n fields: collection.fields,\n locales,\n tableName,\n timestamps: collection.timestamps,\n versions: false,\n })\n\n if (collection.versions) {\n const versionsTableName = this.tableNameMap.get(\n `_${toSnakeCase(collection.slug)}${this.versionsSuffix}`,\n )\n const versionFields = buildVersionCollectionFields(collection)\n\n buildTable({\n adapter: this,\n disableNotNull: !!collection.versions?.drafts,\n disableUnique: true,\n fields: versionFields,\n locales,\n tableName: versionsTableName,\n timestamps: true,\n versions: true,\n })\n }\n })\n\n this.payload.config.globals.forEach((global) => {\n const tableName = createTableName({\n adapter: this as unknown as DrizzleAdapter,\n config: global,\n })\n\n buildTable({\n adapter: this,\n disableNotNull: !!global?.versions?.drafts,\n disableUnique: false,\n fields: global.fields,\n locales,\n tableName,\n timestamps: false,\n versions: false,\n })\n\n if (global.versions) {\n const versionsTableName = createTableName({\n adapter: this as unknown as DrizzleAdapter,\n config: global,\n versions: true,\n versionsCustomName: true,\n })\n const versionFields = buildVersionGlobalFields(global)\n\n buildTable({\n adapter: this,\n disableNotNull: !!global.versions?.drafts,\n disableUnique: true,\n fields: versionFields,\n locales,\n tableName: versionsTableName,\n timestamps: true,\n versions: true,\n })\n }\n })\n}\n"],"names":["createTableName","buildVersionCollectionFields","buildVersionGlobalFields","toSnakeCase","buildTable","init","locales","payload","config","localization","map","code","collections","forEach","collection","adapter","versions","versionsCustomName","tableName","tableNameMap","get","slug","disableNotNull","drafts","disableUnique","fields","timestamps","versionsTableName","versionsSuffix","versionFields","globals","global"],"mappings":"AAAA,oCAAoC,GAIpC,SAASA,eAAe,QAAQ,sBAAqB;AACrD,SAASC,4BAA4B,EAAEC,wBAAwB,QAAQ,UAAS;AAChF,OAAOC,iBAAiB,gBAAe;AAIvC,SAASC,UAAU,QAAQ,oBAAmB;AAE9C,OAAO,MAAMC,OAAa,SAASA;IACjC,IAAIC;IACJ,IAAI,IAAI,CAACC,OAAO,CAACC,MAAM,CAACC,YAAY,EAAE;QACpCH,UAAU,IAAI,CAACC,OAAO,CAACC,MAAM,CAACC,YAAY,CAACH,OAAO,CAACI,GAAG,CAAC,CAAC,EAAEC,IAAI,EAAE,GAAKA;IAIvE;IAEA,IAAI,CAACJ,OAAO,CAACC,MAAM,CAACI,WAAW,CAACC,OAAO,CAAC,CAACC;QACvCd,gBAAgB;YACde,SAAS,IAAI;YACbP,QAAQM;QACV;QAEA,IAAIA,WAAWE,QAAQ,EAAE;YACvBhB,gBAAgB;gBACde,SAAS,IAAI;gBACbP,QAAQM;gBACRE,UAAU;gBACVC,oBAAoB;YACtB;QACF;IACF;IACA,IAAI,CAACV,OAAO,CAACC,MAAM,CAACI,WAAW,CAACC,OAAO,CAAC,CAACC;QACvC,MAAMI,YAAY,IAAI,CAACC,YAAY,CAACC,GAAG,CAACjB,YAAYW,WAAWO,IAAI;QAEnEjB,WAAW;YACTW,SAAS,IAAI;YACbO,gBAAgB,CAAC,CAACR,YAAYE,UAAUO;YACxCC,eAAe;YACfC,QAAQX,WAAWW,MAAM;YACzBnB;YACAY;YACAQ,YAAYZ,WAAWY,UAAU;YACjCV,UAAU;QACZ;QAEA,IAAIF,WAAWE,QAAQ,EAAE;YACvB,MAAMW,oBAAoB,IAAI,CAACR,YAAY,CAACC,GAAG,CAC7C,CAAC,CAAC,EAAEjB,YAAYW,WAAWO,IAAI,EAAE,EAAE,IAAI,CAACO,cAAc,CAAC,CAAC;YAE1D,MAAMC,gBAAgB5B,6BAA6Ba;YAEnDV,WAAW;gBACTW,SAAS,IAAI;gBACbO,gBAAgB,CAAC,CAACR,WAAWE,QAAQ,EAAEO;gBACvCC,eAAe;gBACfC,QAAQI;gBACRvB;gBACAY,WAAWS;gBACXD,YAAY;gBACZV,UAAU;YACZ;QACF;IACF;IAEA,IAAI,CAACT,OAAO,CAACC,MAAM,CAACsB,OAAO,CAACjB,OAAO,CAAC,CAACkB;QACnC,MAAMb,YAAYlB,gBAAgB;YAChCe,SAAS,IAAI;YACbP,QAAQuB;QACV;QAEA3B,WAAW;YACTW,SAAS,IAAI;YACbO,gBAAgB,CAAC,CAACS,QAAQf,UAAUO;YACpCC,eAAe;YACfC,QAAQM,OAAON,MAAM;YACrBnB;YACAY;YACAQ,YAAY;YACZV,UAAU;QACZ;QAEA,IAAIe,OAAOf,QAAQ,EAAE;YACnB,MAAMW,oBAAoB3B,gBAAgB;gBACxCe,SAAS,IAAI;gBACbP,QAAQuB;gBACRf,UAAU;gBACVC,oBAAoB;YACtB;YACA,MAAMY,gBAAgB3B,yBAAyB6B;YAE/C3B,WAAW;gBACTW,SAAS,IAAI;gBACbO,gBAAgB,CAAC,CAACS,OAAOf,QAAQ,EAAEO;gBACnCC,eAAe;gBACfC,QAAQI;gBACRvB;gBACAY,WAAWS;gBACXD,YAAY;gBACZV,UAAU;YACZ;QACF;IACF;AACF,EAAC"}
|
package/dist/insert.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"insert.d.ts","sourceRoot":"","sources":["../src/insert.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAExC,eAAO,MAAM,MAAM,EAAE,MAgBpB,CAAA"}
|
package/dist/insert.js
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export const insert = async function insert({ db, onConflictDoUpdate, tableName, values }) {
|
|
2
|
+
const table = this.tables[tableName];
|
|
3
|
+
let result;
|
|
4
|
+
if (onConflictDoUpdate) {
|
|
5
|
+
result = db.insert(table).values(values).onConflictDoUpdate(onConflictDoUpdate).returning();
|
|
6
|
+
} else {
|
|
7
|
+
result = db.insert(table).values(values).returning();
|
|
8
|
+
}
|
|
9
|
+
result = await result;
|
|
10
|
+
return result;
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
//# sourceMappingURL=insert.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/insert.ts"],"sourcesContent":["import type { Insert } from './types.js'\n\nexport const insert: Insert = async function insert({\n db,\n onConflictDoUpdate,\n tableName,\n values,\n}): Promise<Record<string, unknown>[]> {\n const table = this.tables[tableName]\n let result\n\n if (onConflictDoUpdate) {\n result = db.insert(table).values(values).onConflictDoUpdate(onConflictDoUpdate).returning()\n } else {\n result = db.insert(table).values(values).returning()\n }\n result = await result\n return result\n}\n"],"names":["insert","db","onConflictDoUpdate","tableName","values","table","tables","result","returning"],"mappings":"AAEA,OAAO,MAAMA,SAAiB,eAAeA,OAAO,EAClDC,EAAE,EACFC,kBAAkB,EAClBC,SAAS,EACTC,MAAM,EACP;IACC,MAAMC,QAAQ,IAAI,CAACC,MAAM,CAACH,UAAU;IACpC,IAAII;IAEJ,IAAIL,oBAAoB;QACtBK,SAASN,GAAGD,MAAM,CAACK,OAAOD,MAAM,CAACA,QAAQF,kBAAkB,CAACA,oBAAoBM,SAAS;IAC3F,OAAO;QACLD,SAASN,GAAGD,MAAM,CAACK,OAAOD,MAAM,CAACA,QAAQI,SAAS;IACpD;IACAD,SAAS,MAAMA;IACf,OAAOA;AACT,EAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"requireDrizzleKit.d.ts","sourceRoot":"","sources":["../src/requireDrizzleKit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAIlE,eAAO,MAAM,iBAAiB,EAAE,iBAG/B,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { createRequire } from 'module';
|
|
2
|
+
const require = createRequire(import.meta.url);
|
|
3
|
+
export const requireDrizzleKit = ()=>{
|
|
4
|
+
const { pushSQLiteSchema: pushSchema } = require('drizzle-kit/payload');
|
|
5
|
+
return {
|
|
6
|
+
pushSchema
|
|
7
|
+
};
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
//# sourceMappingURL=requireDrizzleKit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/requireDrizzleKit.ts"],"sourcesContent":["import type { RequireDrizzleKit } from '@payloadcms/drizzle/types'\n\nimport { createRequire } from 'module'\nconst require = createRequire(import.meta.url)\nexport const requireDrizzleKit: RequireDrizzleKit = () => {\n const { pushSQLiteSchema: pushSchema } = require('drizzle-kit/payload')\n return { pushSchema }\n}\n"],"names":["createRequire","require","url","requireDrizzleKit","pushSQLiteSchema","pushSchema"],"mappings":"AAEA,SAASA,aAAa,QAAQ,SAAQ;AACtC,MAAMC,UAAUD,cAAc,YAAYE,GAAG;AAC7C,OAAO,MAAMC,oBAAuC;IAClD,MAAM,EAAEC,kBAAkBC,UAAU,EAAE,GAAGJ,QAAQ;IACjD,OAAO;QAAEI;IAAW;AACtB,EAAC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { ColumnDataType } from 'drizzle-orm';
|
|
2
|
+
import type { ForeignKeyBuilder, IndexBuilder, SQLiteColumn, SQLiteColumnBuilder, UniqueConstraintBuilder } from 'drizzle-orm/sqlite-core';
|
|
3
|
+
import type { Field } from 'payload';
|
|
4
|
+
import type { IDType, SQLiteAdapter } from '../types.js';
|
|
5
|
+
export type BaseExtraConfig = Record<string, (cols: {
|
|
6
|
+
[x: string]: SQLiteColumn<{
|
|
7
|
+
baseColumn: never;
|
|
8
|
+
columnType: string;
|
|
9
|
+
data: unknown;
|
|
10
|
+
dataType: ColumnDataType;
|
|
11
|
+
driverParam: unknown;
|
|
12
|
+
enumValues: string[];
|
|
13
|
+
hasDefault: false;
|
|
14
|
+
name: string;
|
|
15
|
+
notNull: false;
|
|
16
|
+
tableName: string;
|
|
17
|
+
}>;
|
|
18
|
+
}) => ForeignKeyBuilder | IndexBuilder | UniqueConstraintBuilder>;
|
|
19
|
+
export type RelationMap = Map<string, {
|
|
20
|
+
localized: boolean;
|
|
21
|
+
target: string;
|
|
22
|
+
type: 'many' | 'one';
|
|
23
|
+
}>;
|
|
24
|
+
type Args = {
|
|
25
|
+
adapter: SQLiteAdapter;
|
|
26
|
+
baseColumns?: Record<string, SQLiteColumnBuilder>;
|
|
27
|
+
baseExtraConfig?: BaseExtraConfig;
|
|
28
|
+
buildNumbers?: boolean;
|
|
29
|
+
buildRelationships?: boolean;
|
|
30
|
+
disableNotNull: boolean;
|
|
31
|
+
disableUnique: boolean;
|
|
32
|
+
fields: Field[];
|
|
33
|
+
locales?: [string, ...string[]];
|
|
34
|
+
rootRelationsToBuild?: RelationMap;
|
|
35
|
+
rootRelationships?: Set<string>;
|
|
36
|
+
rootTableIDColType?: IDType;
|
|
37
|
+
rootTableName?: string;
|
|
38
|
+
tableName: string;
|
|
39
|
+
timestamps?: boolean;
|
|
40
|
+
versions: boolean;
|
|
41
|
+
};
|
|
42
|
+
type Result = {
|
|
43
|
+
hasManyNumberField: 'index' | boolean;
|
|
44
|
+
hasManyTextField: 'index' | boolean;
|
|
45
|
+
relationsToBuild: RelationMap;
|
|
46
|
+
};
|
|
47
|
+
export declare const buildTable: ({ adapter, baseColumns, baseExtraConfig, disableNotNull, disableUnique, fields, locales, rootRelationsToBuild, rootRelationships, rootTableIDColType, rootTableName: incomingRootTableName, tableName, timestamps, versions, }: Args) => Result;
|
|
48
|
+
export {};
|
|
49
|
+
//# sourceMappingURL=build.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../src/schema/build.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAY,MAAM,aAAa,CAAA;AAC3D,OAAO,KAAK,EACV,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,mBAAmB,EAEnB,uBAAuB,EACxB,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAepC,OAAO,KAAK,EAAgC,MAAM,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAMtF,MAAM,MAAM,eAAe,GAAG,MAAM,CAClC,MAAM,EACN,CAAC,IAAI,EAAE;IACL,CAAC,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC;QACxB,UAAU,EAAE,KAAK,CAAA;QACjB,UAAU,EAAE,MAAM,CAAA;QAClB,IAAI,EAAE,OAAO,CAAA;QACb,QAAQ,EAAE,cAAc,CAAA;QACxB,WAAW,EAAE,OAAO,CAAA;QACpB,UAAU,EAAE,MAAM,EAAE,CAAA;QACpB,UAAU,EAAE,KAAK,CAAA;QACjB,IAAI,EAAE,MAAM,CAAA;QACZ,OAAO,EAAE,KAAK,CAAA;QACd,SAAS,EAAE,MAAM,CAAA;KAClB,CAAC,CAAA;CACH,KAAK,iBAAiB,GAAG,YAAY,GAAG,uBAAuB,CACjE,CAAA;AAED,MAAM,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,EAAE;IAAE,SAAS,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,GAAG,KAAK,CAAA;CAAE,CAAC,CAAA;AAEnG,KAAK,IAAI,GAAG;IACV,OAAO,EAAE,aAAa,CAAA;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAA;IACjD,eAAe,CAAC,EAAE,eAAe,CAAA;IACjC,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,cAAc,EAAE,OAAO,CAAA;IACvB,aAAa,EAAE,OAAO,CAAA;IACtB,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,CAAA;IAC/B,oBAAoB,CAAC,EAAE,WAAW,CAAA;IAClC,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,QAAQ,EAAE,OAAO,CAAA;CAClB,CAAA;AAED,KAAK,MAAM,GAAG;IACZ,kBAAkB,EAAE,OAAO,GAAG,OAAO,CAAA;IACrC,gBAAgB,EAAE,OAAO,GAAG,OAAO,CAAA;IACnC,gBAAgB,EAAE,WAAW,CAAA;CAC9B,CAAA;AAED,eAAO,MAAM,UAAU,mOAepB,IAAI,KAAG,MA8YT,CAAA"}
|