@payloadcms/db-sqlite 3.58.0-canary.3 → 3.58.0-canary.4

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.
Files changed (59) hide show
  1. package/dist/index.d.ts.map +1 -1
  2. package/dist/index.js +3 -16
  3. package/dist/index.js.map +1 -1
  4. package/dist/types.d.ts +4 -54
  5. package/dist/types.d.ts.map +1 -1
  6. package/dist/types.js.map +1 -1
  7. package/package.json +5 -5
  8. package/dist/columnToCodeConverter.d.ts +0 -3
  9. package/dist/columnToCodeConverter.d.ts.map +0 -1
  10. package/dist/columnToCodeConverter.js +0 -107
  11. package/dist/columnToCodeConverter.js.map +0 -1
  12. package/dist/countDistinct.d.ts +0 -3
  13. package/dist/countDistinct.d.ts.map +0 -1
  14. package/dist/countDistinct.js +0 -24
  15. package/dist/countDistinct.js.map +0 -1
  16. package/dist/createJSONQuery/convertPathToJSONTraversal.d.ts +0 -2
  17. package/dist/createJSONQuery/convertPathToJSONTraversal.d.ts.map +0 -1
  18. package/dist/createJSONQuery/convertPathToJSONTraversal.js +0 -12
  19. package/dist/createJSONQuery/convertPathToJSONTraversal.js.map +0 -1
  20. package/dist/createJSONQuery/index.d.ts +0 -3
  21. package/dist/createJSONQuery/index.d.ts.map +0 -1
  22. package/dist/createJSONQuery/index.js +0 -106
  23. package/dist/createJSONQuery/index.js.map +0 -1
  24. package/dist/defaultSnapshot.d.ts +0 -3
  25. package/dist/defaultSnapshot.d.ts.map +0 -1
  26. package/dist/defaultSnapshot.js +0 -15
  27. package/dist/defaultSnapshot.js.map +0 -1
  28. package/dist/deleteWhere.d.ts +0 -3
  29. package/dist/deleteWhere.d.ts.map +0 -1
  30. package/dist/deleteWhere.js +0 -6
  31. package/dist/deleteWhere.js.map +0 -1
  32. package/dist/dropDatabase.d.ts +0 -3
  33. package/dist/dropDatabase.d.ts.map +0 -1
  34. package/dist/dropDatabase.js +0 -19
  35. package/dist/dropDatabase.js.map +0 -1
  36. package/dist/execute.d.ts +0 -3
  37. package/dist/execute.d.ts.map +0 -1
  38. package/dist/execute.js +0 -13
  39. package/dist/execute.js.map +0 -1
  40. package/dist/init.d.ts +0 -3
  41. package/dist/init.d.ts.map +0 -1
  42. package/dist/init.js +0 -40
  43. package/dist/init.js.map +0 -1
  44. package/dist/insert.d.ts +0 -3
  45. package/dist/insert.d.ts.map +0 -1
  46. package/dist/insert.js +0 -8
  47. package/dist/insert.js.map +0 -1
  48. package/dist/requireDrizzleKit.d.ts +0 -3
  49. package/dist/requireDrizzleKit.d.ts.map +0 -1
  50. package/dist/requireDrizzleKit.js +0 -12
  51. package/dist/requireDrizzleKit.js.map +0 -1
  52. package/dist/schema/buildDrizzleTable.d.ts +0 -3
  53. package/dist/schema/buildDrizzleTable.d.ts.map +0 -1
  54. package/dist/schema/buildDrizzleTable.js +0 -143
  55. package/dist/schema/buildDrizzleTable.js.map +0 -1
  56. package/dist/schema/setColumnID.d.ts +0 -3
  57. package/dist/schema/setColumnID.d.ts.map +0 -1
  58. package/dist/schema/setColumnID.js +0 -39
  59. package/dist/schema/setColumnID.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAW,MAAM,SAAS,CAAA;AA8C1D,OAAO,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAiBrD,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,kBAAkB,CAAC,aAAa,CAAC,CA4I3E;AAED;;GAEG;AACH,YAAY,EACV,IAAI,IAAI,iBAAiB,EACzB,aAAa,EACb,WAAW,EACX,YAAY,EACZ,OAAO,EACP,uBAAuB,EACvB,cAAc,EACd,eAAe,EACf,YAAY,EACZ,MAAM,EACN,MAAM,EACN,eAAe,EACf,aAAa,EACb,aAAa,EACb,gBAAgB,GACjB,MAAM,YAAY,CAAA;AAEnB,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAW,MAAM,SAAS,CAAA;AA2D1D,OAAO,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAMrD,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,kBAAkB,CAAC,aAAa,CAAC,CAwI3E;AAED;;GAEG;AACH,YAAY,EACV,IAAI,IAAI,iBAAiB,EACzB,aAAa,EACb,WAAW,EACX,YAAY,EACZ,OAAO,EACP,uBAAuB,EACvB,cAAc,EACd,eAAe,EACf,YAAY,EACZ,MAAM,EACN,MAAM,EACN,eAAe,EACf,aAAa,EACb,aAAa,EACb,gBAAgB,GACjB,MAAM,YAAY,CAAA;AAEnB,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA"}
package/dist/index.js CHANGED
@@ -1,19 +1,9 @@
1
1
  import { beginTransaction, buildCreateMigration, commitTransaction, count, countGlobalVersions, countVersions, create, createGlobal, createGlobalVersion, createSchemaGenerator, createVersion, deleteMany, deleteOne, deleteVersions, destroy, find, findDistinct, findGlobal, findGlobalVersions, findMigrationDir, findOne, findVersions, migrate, migrateDown, migrateFresh, migrateRefresh, migrateReset, migrateStatus, operatorMap, queryDrafts, rollbackTransaction, updateGlobal, updateGlobalVersion, updateJobs, updateMany, updateOne, updateVersion, upsert } from '@payloadcms/drizzle';
2
+ import { columnToCodeConverter, convertPathToJSONTraversal, countDistinct, createJSONQuery, defaultDrizzleSnapshot, deleteWhere, dropDatabase, execute, init, insert, requireDrizzleKit } from '@payloadcms/drizzle/sqlite';
2
3
  import { like, notLike } from 'drizzle-orm';
3
4
  import { createDatabaseAdapter, defaultBeginTransaction } from 'payload';
4
5
  import { fileURLToPath } from 'url';
5
- import { columnToCodeConverter } from './columnToCodeConverter.js';
6
6
  import { connect } from './connect.js';
7
- import { countDistinct } from './countDistinct.js';
8
- import { convertPathToJSONTraversal } from './createJSONQuery/convertPathToJSONTraversal.js';
9
- import { createJSONQuery } from './createJSONQuery/index.js';
10
- import { defaultDrizzleSnapshot } from './defaultSnapshot.js';
11
- import { deleteWhere } from './deleteWhere.js';
12
- import { dropDatabase } from './dropDatabase.js';
13
- import { execute } from './execute.js';
14
- import { init } from './init.js';
15
- import { insert } from './insert.js';
16
- import { requireDrizzleKit } from './requireDrizzleKit.js';
17
7
  const filename = fileURLToPath(import.meta.url);
18
8
  export function sqliteAdapter(args) {
19
9
  const sqliteIDType = args.idType || 'number';
@@ -21,8 +11,8 @@ export function sqliteAdapter(args) {
21
11
  const allowIDOnCreate = args.allowIDOnCreate ?? false;
22
12
  function adapter({ payload }) {
23
13
  const migrationDir = findMigrationDir(args.migrationDir);
24
- let resolveInitializing;
25
- let rejectInitializing;
14
+ let resolveInitializing = ()=>{};
15
+ let rejectInitializing = ()=>{};
26
16
  const initializing = new Promise((res, rej)=>{
27
17
  resolveInitializing = res;
28
18
  rejectInitializing = rej;
@@ -112,7 +102,6 @@ export function sqliteAdapter(args) {
112
102
  find,
113
103
  findGlobal,
114
104
  findGlobalVersions,
115
- // @ts-expect-error - vestiges of when tsconfig was not strict. Feel free to improve
116
105
  findOne,
117
106
  findVersions,
118
107
  indexes: new Set(),
@@ -128,10 +117,8 @@ export function sqliteAdapter(args) {
128
117
  packageName: '@payloadcms/db-sqlite',
129
118
  payload,
130
119
  queryDrafts,
131
- // @ts-expect-error - vestiges of when tsconfig was not strict. Feel free to improve
132
120
  rejectInitializing,
133
121
  requireDrizzleKit,
134
- // @ts-expect-error - vestiges of when tsconfig was not strict. Feel free to improve
135
122
  resolveInitializing,
136
123
  rollbackTransaction,
137
124
  updateGlobal,
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"sourcesContent":["import type { Operators } from '@payloadcms/drizzle'\nimport type { DatabaseAdapterObj, Payload } from 'payload'\n\nimport {\n beginTransaction,\n buildCreateMigration,\n commitTransaction,\n count,\n countGlobalVersions,\n countVersions,\n create,\n createGlobal,\n createGlobalVersion,\n createSchemaGenerator,\n createVersion,\n deleteMany,\n deleteOne,\n deleteVersions,\n destroy,\n find,\n findDistinct,\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 updateJobs,\n updateMany,\n updateOne,\n updateVersion,\n upsert,\n} from '@payloadcms/drizzle'\nimport { like, notLike } from 'drizzle-orm'\nimport { createDatabaseAdapter, defaultBeginTransaction } from 'payload'\nimport { fileURLToPath } from 'url'\n\nimport type { Args, SQLiteAdapter } from './types.js'\n\nimport { columnToCodeConverter } from './columnToCodeConverter.js'\nimport { connect } from './connect.js'\nimport { countDistinct } from './countDistinct.js'\nimport { convertPathToJSONTraversal } from './createJSONQuery/convertPathToJSONTraversal.js'\nimport { createJSONQuery } from './createJSONQuery/index.js'\nimport { defaultDrizzleSnapshot } from './defaultSnapshot.js'\nimport { deleteWhere } from './deleteWhere.js'\nimport { dropDatabase } from './dropDatabase.js'\nimport { execute } from './execute.js'\nimport { init } from './init.js'\nimport { insert } from './insert.js'\nimport { requireDrizzleKit } from './requireDrizzleKit.js'\n\nconst filename = fileURLToPath(import.meta.url)\n\nexport function sqliteAdapter(args: Args): DatabaseAdapterObj<SQLiteAdapter> {\n const sqliteIDType = args.idType || 'number'\n const payloadIDType = sqliteIDType === 'uuid' ? 'text' : 'number'\n const allowIDOnCreate = args.allowIDOnCreate ?? false\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 not_like: notLike,\n } as unknown as Operators\n\n return createDatabaseAdapter<SQLiteAdapter>({\n name: 'sqlite',\n afterSchemaInit: args.afterSchemaInit ?? [],\n allowIDOnCreate,\n autoIncrement: args.autoIncrement ?? false,\n beforeSchemaInit: args.beforeSchemaInit ?? [],\n blocksAsJSON: args.blocksAsJSON ?? false,\n // @ts-expect-error - vestiges of when tsconfig was not strict. Feel free to improve\n client: undefined,\n clientConfig: args.client,\n defaultDrizzleSnapshot,\n // @ts-expect-error - vestiges of when tsconfig was not strict. Feel free to improve\n drizzle: undefined,\n features: {\n json: true,\n },\n fieldConstraints: {},\n findDistinct,\n generateSchema: createSchemaGenerator({\n columnToCodeConverter,\n corePackageSuffix: 'sqlite-core',\n defaultOutputFile: args.generateSchemaOutputFile,\n tableImport: 'sqliteTable',\n }),\n idType: sqliteIDType,\n initializing,\n localesSuffix: args.localesSuffix || '_locales',\n logger: args.logger,\n operators,\n prodMigrations: args.prodMigrations,\n // @ts-expect-error - vestiges of when tsconfig was not strict. Feel free to improve\n push: args.push,\n rawRelations: {},\n rawTables: {},\n relations: {},\n relationshipsSuffix: args.relationshipsSuffix || '_rels',\n schema: {},\n schemaName: args.schemaName,\n sessions: {},\n tableNameMap: new Map<string, string>(),\n tables: {},\n // @ts-expect-error - vestiges of when tsconfig was not strict. Feel free to improve\n transactionOptions: args.transactionOptions || undefined,\n updateJobs,\n updateMany,\n versionsSuffix: args.versionsSuffix || '_v',\n\n // DatabaseAdapter\n beginTransaction: args.transactionOptions ? beginTransaction : defaultBeginTransaction(),\n commitTransaction,\n connect,\n convertPathToJSONTraversal,\n count,\n countDistinct,\n countGlobalVersions,\n countVersions,\n create,\n createGlobal,\n createGlobalVersion,\n createJSONQuery,\n createMigration: buildCreateMigration({\n executeMethod: 'run',\n filename,\n sanitizeStatements({ sqlExecute, statements }) {\n return statements\n .map((statement) => `${sqlExecute}${statement?.replaceAll('`', '\\\\`')}\\`)`)\n .join('\\n')\n },\n }),\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 // @ts-expect-error - vestiges of when tsconfig was not strict. Feel free to improve\n findOne,\n findVersions,\n indexes: new Set<string>(),\n init,\n insert,\n migrate,\n migrateDown,\n migrateFresh,\n migrateRefresh,\n migrateReset,\n migrateStatus,\n migrationDir,\n packageName: '@payloadcms/db-sqlite',\n payload,\n queryDrafts,\n // @ts-expect-error - vestiges of when tsconfig was not strict. Feel free to improve\n rejectInitializing,\n requireDrizzleKit,\n // @ts-expect-error - vestiges of when tsconfig was not strict. Feel free to improve\n resolveInitializing,\n rollbackTransaction,\n updateGlobal,\n updateGlobalVersion,\n updateOne,\n updateVersion,\n upsert,\n })\n }\n\n return {\n name: 'sqlite',\n allowIDOnCreate,\n defaultIDType: payloadIDType,\n init: adapter,\n }\n}\n\n/**\n * @todo deprecate /types subpath export in 4.0\n */\nexport type {\n Args as SQLiteAdapterArgs,\n CountDistinct,\n DeleteWhere,\n DropDatabase,\n Execute,\n GeneratedDatabaseSchema,\n GenericColumns,\n GenericRelation,\n GenericTable,\n IDType,\n Insert,\n MigrateDownArgs,\n MigrateUpArgs,\n SQLiteAdapter,\n SQLiteSchemaHook,\n} from './types.js'\n\nexport { sql } from 'drizzle-orm'\n"],"names":["beginTransaction","buildCreateMigration","commitTransaction","count","countGlobalVersions","countVersions","create","createGlobal","createGlobalVersion","createSchemaGenerator","createVersion","deleteMany","deleteOne","deleteVersions","destroy","find","findDistinct","findGlobal","findGlobalVersions","findMigrationDir","findOne","findVersions","migrate","migrateDown","migrateFresh","migrateRefresh","migrateReset","migrateStatus","operatorMap","queryDrafts","rollbackTransaction","updateGlobal","updateGlobalVersion","updateJobs","updateMany","updateOne","updateVersion","upsert","like","notLike","createDatabaseAdapter","defaultBeginTransaction","fileURLToPath","columnToCodeConverter","connect","countDistinct","convertPathToJSONTraversal","createJSONQuery","defaultDrizzleSnapshot","deleteWhere","dropDatabase","execute","init","insert","requireDrizzleKit","filename","url","sqliteAdapter","args","sqliteIDType","idType","payloadIDType","allowIDOnCreate","adapter","payload","migrationDir","resolveInitializing","rejectInitializing","initializing","Promise","res","rej","operators","contains","not_like","name","afterSchemaInit","autoIncrement","beforeSchemaInit","blocksAsJSON","client","undefined","clientConfig","drizzle","features","json","fieldConstraints","generateSchema","corePackageSuffix","defaultOutputFile","generateSchemaOutputFile","tableImport","localesSuffix","logger","prodMigrations","push","rawRelations","rawTables","relations","relationshipsSuffix","schema","schemaName","sessions","tableNameMap","Map","tables","transactionOptions","versionsSuffix","createMigration","executeMethod","sanitizeStatements","sqlExecute","statements","map","statement","replaceAll","join","defaultIDType","indexes","Set","packageName","sql"],"mappings":"AAGA,SACEA,gBAAgB,EAChBC,oBAAoB,EACpBC,iBAAiB,EACjBC,KAAK,EACLC,mBAAmB,EACnBC,aAAa,EACbC,MAAM,EACNC,YAAY,EACZC,mBAAmB,EACnBC,qBAAqB,EACrBC,aAAa,EACbC,UAAU,EACVC,SAAS,EACTC,cAAc,EACdC,OAAO,EACPC,IAAI,EACJC,YAAY,EACZC,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,UAAU,EACVC,UAAU,EACVC,SAAS,EACTC,aAAa,EACbC,MAAM,QACD,sBAAqB;AAC5B,SAASC,IAAI,EAAEC,OAAO,QAAQ,cAAa;AAC3C,SAASC,qBAAqB,EAAEC,uBAAuB,QAAQ,UAAS;AACxE,SAASC,aAAa,QAAQ,MAAK;AAInC,SAASC,qBAAqB,QAAQ,6BAA4B;AAClE,SAASC,OAAO,QAAQ,eAAc;AACtC,SAASC,aAAa,QAAQ,qBAAoB;AAClD,SAASC,0BAA0B,QAAQ,kDAAiD;AAC5F,SAASC,eAAe,QAAQ,6BAA4B;AAC5D,SAASC,sBAAsB,QAAQ,uBAAsB;AAC7D,SAASC,WAAW,QAAQ,mBAAkB;AAC9C,SAASC,YAAY,QAAQ,oBAAmB;AAChD,SAASC,OAAO,QAAQ,eAAc;AACtC,SAASC,IAAI,QAAQ,YAAW;AAChC,SAASC,MAAM,QAAQ,cAAa;AACpC,SAASC,iBAAiB,QAAQ,yBAAwB;AAE1D,MAAMC,WAAWb,cAAc,YAAYc,GAAG;AAE9C,OAAO,SAASC,cAAcC,IAAU;IACtC,MAAMC,eAAeD,KAAKE,MAAM,IAAI;IACpC,MAAMC,gBAAgBF,iBAAiB,SAAS,SAAS;IACzD,MAAMG,kBAAkBJ,KAAKI,eAAe,IAAI;IAEhD,SAASC,QAAQ,EAAEC,OAAO,EAAwB;QAChD,MAAMC,eAAe9C,iBAAiBuC,KAAKO,YAAY;QACvD,IAAIC;QACJ,IAAIC;QAEJ,MAAMC,eAAe,IAAIC,QAAc,CAACC,KAAKC;YAC3CL,sBAAsBI;YACtBH,qBAAqBI;QACvB;QAEA,4GAA4G;QAC5G,MAAMC,YAAY;YAChB,GAAG5C,WAAW;YACd6C,UAAUnC;YACVA;YACAoC,UAAUnC;QACZ;QAEA,OAAOC,sBAAqC;YAC1CmC,MAAM;YACNC,iBAAiBlB,KAAKkB,eAAe,IAAI,EAAE;YAC3Cd;YACAe,eAAenB,KAAKmB,aAAa,IAAI;YACrCC,kBAAkBpB,KAAKoB,gBAAgB,IAAI,EAAE;YAC7CC,cAAcrB,KAAKqB,YAAY,IAAI;YACnC,oFAAoF;YACpFC,QAAQC;YACRC,cAAcxB,KAAKsB,MAAM;YACzBhC;YACA,oFAAoF;YACpFmC,SAASF;YACTG,UAAU;gBACRC,MAAM;YACR;YACAC,kBAAkB,CAAC;YACnBtE;YACAuE,gBAAgB9E,sBAAsB;gBACpCkC;gBACA6C,mBAAmB;gBACnBC,mBAAmB/B,KAAKgC,wBAAwB;gBAChDC,aAAa;YACf;YACA/B,QAAQD;YACRS;YACAwB,eAAelC,KAAKkC,aAAa,IAAI;YACrCC,QAAQnC,KAAKmC,MAAM;YACnBrB;YACAsB,gBAAgBpC,KAAKoC,cAAc;YACnC,oFAAoF;YACpFC,MAAMrC,KAAKqC,IAAI;YACfC,cAAc,CAAC;YACfC,WAAW,CAAC;YACZC,WAAW,CAAC;YACZC,qBAAqBzC,KAAKyC,mBAAmB,IAAI;YACjDC,QAAQ,CAAC;YACTC,YAAY3C,KAAK2C,UAAU;YAC3BC,UAAU,CAAC;YACXC,cAAc,IAAIC;YAClBC,QAAQ,CAAC;YACT,oFAAoF;YACpFC,oBAAoBhD,KAAKgD,kBAAkB,IAAIzB;YAC/ChD;YACAC;YACAyE,gBAAgBjD,KAAKiD,cAAc,IAAI;YAEvC,kBAAkB;YAClB3G,kBAAkB0D,KAAKgD,kBAAkB,GAAG1G,mBAAmByC;YAC/DvC;YACA0C;YACAE;YACA3C;YACA0C;YACAzC;YACAC;YACAC;YACAC;YACAC;YACAuC;YACA6D,iBAAiB3G,qBAAqB;gBACpC4G,eAAe;gBACftD;gBACAuD,oBAAmB,EAAEC,UAAU,EAAEC,UAAU,EAAE;oBAC3C,OAAOA,WACJC,GAAG,CAAC,CAACC,YAAc,GAAGH,aAAaG,WAAWC,WAAW,KAAK,OAAO,GAAG,CAAC,EACzEC,IAAI,CAAC;gBACV;YACF;YACA1G;YACA2G,eAAexD;YACflD;YACAC;YACAC;YACAoC;YACAnC;YACAoC;YACAC;YACApC;YACAE;YACAC;YACA,oFAAoF;YACpFE;YACAC;YACAiG,SAAS,IAAIC;YACbnE;YACAC;YACA/B;YACAC;YACAC;YACAC;YACAC;YACAC;YACAsC;YACAuD,aAAa;YACbxD;YACAnC;YACA,oFAAoF;YACpFsC;YACAb;YACA,oFAAoF;YACpFY;YACApC;YACAC;YACAC;YACAG;YACAC;YACAC;QACF;IACF;IAEA,OAAO;QACLsC,MAAM;QACNb;QACAuD,eAAexD;QACfT,MAAMW;IACR;AACF;AAuBA,SAAS0D,GAAG,QAAQ,cAAa"}
1
+ {"version":3,"sources":["../src/index.ts"],"sourcesContent":["import type { Operators } from '@payloadcms/drizzle'\nimport type { DatabaseAdapterObj, Payload } from 'payload'\n\nimport {\n beginTransaction,\n buildCreateMigration,\n commitTransaction,\n count,\n countGlobalVersions,\n countVersions,\n create,\n createGlobal,\n createGlobalVersion,\n createSchemaGenerator,\n createVersion,\n deleteMany,\n deleteOne,\n deleteVersions,\n destroy,\n find,\n findDistinct,\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 updateJobs,\n updateMany,\n updateOne,\n updateVersion,\n upsert,\n} from '@payloadcms/drizzle'\nimport {\n columnToCodeConverter,\n convertPathToJSONTraversal,\n countDistinct,\n createJSONQuery,\n defaultDrizzleSnapshot,\n deleteWhere,\n dropDatabase,\n execute,\n init,\n insert,\n requireDrizzleKit,\n} from '@payloadcms/drizzle/sqlite'\nimport { like, notLike } from 'drizzle-orm'\nimport { createDatabaseAdapter, defaultBeginTransaction } from 'payload'\nimport { fileURLToPath } from 'url'\n\nimport type { Args, SQLiteAdapter } from './types.js'\n\nimport { connect } from './connect.js'\n\nconst filename = fileURLToPath(import.meta.url)\n\nexport function sqliteAdapter(args: Args): DatabaseAdapterObj<SQLiteAdapter> {\n const sqliteIDType = args.idType || 'number'\n const payloadIDType = sqliteIDType === 'uuid' ? 'text' : 'number'\n const allowIDOnCreate = args.allowIDOnCreate ?? false\n\n function adapter({ payload }: { payload: Payload }) {\n const migrationDir = findMigrationDir(args.migrationDir)\n let resolveInitializing: () => void = () => {}\n let rejectInitializing: () => void = () => {}\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 not_like: notLike,\n } as unknown as Operators\n\n return createDatabaseAdapter<SQLiteAdapter>({\n name: 'sqlite',\n afterSchemaInit: args.afterSchemaInit ?? [],\n allowIDOnCreate,\n autoIncrement: args.autoIncrement ?? false,\n beforeSchemaInit: args.beforeSchemaInit ?? [],\n blocksAsJSON: args.blocksAsJSON ?? false,\n // @ts-expect-error - vestiges of when tsconfig was not strict. Feel free to improve\n client: undefined,\n clientConfig: args.client,\n defaultDrizzleSnapshot,\n // @ts-expect-error - vestiges of when tsconfig was not strict. Feel free to improve\n drizzle: undefined,\n features: {\n json: true,\n },\n fieldConstraints: {},\n findDistinct,\n generateSchema: createSchemaGenerator({\n columnToCodeConverter,\n corePackageSuffix: 'sqlite-core',\n defaultOutputFile: args.generateSchemaOutputFile,\n tableImport: 'sqliteTable',\n }),\n idType: sqliteIDType,\n initializing,\n localesSuffix: args.localesSuffix || '_locales',\n logger: args.logger,\n operators,\n prodMigrations: args.prodMigrations,\n // @ts-expect-error - vestiges of when tsconfig was not strict. Feel free to improve\n push: args.push,\n rawRelations: {},\n rawTables: {},\n relations: {},\n relationshipsSuffix: args.relationshipsSuffix || '_rels',\n schema: {},\n schemaName: args.schemaName,\n sessions: {},\n tableNameMap: new Map<string, string>(),\n tables: {},\n // @ts-expect-error - vestiges of when tsconfig was not strict. Feel free to improve\n transactionOptions: args.transactionOptions || undefined,\n updateJobs,\n updateMany,\n versionsSuffix: args.versionsSuffix || '_v',\n // DatabaseAdapter\n beginTransaction: args.transactionOptions ? beginTransaction : defaultBeginTransaction(),\n commitTransaction,\n connect,\n convertPathToJSONTraversal,\n count,\n countDistinct,\n countGlobalVersions,\n countVersions,\n create,\n createGlobal,\n createGlobalVersion,\n createJSONQuery,\n createMigration: buildCreateMigration({\n executeMethod: 'run',\n filename,\n sanitizeStatements({ sqlExecute, statements }) {\n return statements\n .map((statement) => `${sqlExecute}${statement?.replaceAll('`', '\\\\`')}\\`)`)\n .join('\\n')\n },\n }),\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 indexes: new Set<string>(),\n init,\n insert,\n migrate,\n migrateDown,\n migrateFresh,\n migrateRefresh,\n migrateReset,\n migrateStatus,\n migrationDir,\n packageName: '@payloadcms/db-sqlite',\n payload,\n queryDrafts,\n rejectInitializing,\n requireDrizzleKit,\n resolveInitializing,\n rollbackTransaction,\n updateGlobal,\n updateGlobalVersion,\n updateOne,\n updateVersion,\n upsert,\n })\n }\n\n return {\n name: 'sqlite',\n allowIDOnCreate,\n defaultIDType: payloadIDType,\n init: adapter,\n }\n}\n\n/**\n * @todo deprecate /types subpath export in 4.0\n */\nexport type {\n Args as SQLiteAdapterArgs,\n CountDistinct,\n DeleteWhere,\n DropDatabase,\n Execute,\n GeneratedDatabaseSchema,\n GenericColumns,\n GenericRelation,\n GenericTable,\n IDType,\n Insert,\n MigrateDownArgs,\n MigrateUpArgs,\n SQLiteAdapter,\n SQLiteSchemaHook,\n} from './types.js'\n\nexport { sql } from 'drizzle-orm'\n"],"names":["beginTransaction","buildCreateMigration","commitTransaction","count","countGlobalVersions","countVersions","create","createGlobal","createGlobalVersion","createSchemaGenerator","createVersion","deleteMany","deleteOne","deleteVersions","destroy","find","findDistinct","findGlobal","findGlobalVersions","findMigrationDir","findOne","findVersions","migrate","migrateDown","migrateFresh","migrateRefresh","migrateReset","migrateStatus","operatorMap","queryDrafts","rollbackTransaction","updateGlobal","updateGlobalVersion","updateJobs","updateMany","updateOne","updateVersion","upsert","columnToCodeConverter","convertPathToJSONTraversal","countDistinct","createJSONQuery","defaultDrizzleSnapshot","deleteWhere","dropDatabase","execute","init","insert","requireDrizzleKit","like","notLike","createDatabaseAdapter","defaultBeginTransaction","fileURLToPath","connect","filename","url","sqliteAdapter","args","sqliteIDType","idType","payloadIDType","allowIDOnCreate","adapter","payload","migrationDir","resolveInitializing","rejectInitializing","initializing","Promise","res","rej","operators","contains","not_like","name","afterSchemaInit","autoIncrement","beforeSchemaInit","blocksAsJSON","client","undefined","clientConfig","drizzle","features","json","fieldConstraints","generateSchema","corePackageSuffix","defaultOutputFile","generateSchemaOutputFile","tableImport","localesSuffix","logger","prodMigrations","push","rawRelations","rawTables","relations","relationshipsSuffix","schema","schemaName","sessions","tableNameMap","Map","tables","transactionOptions","versionsSuffix","createMigration","executeMethod","sanitizeStatements","sqlExecute","statements","map","statement","replaceAll","join","defaultIDType","indexes","Set","packageName","sql"],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import type { Client, Config, ResultSet } from '@libsql/client';
2
- import type { extendDrizzleTable, Operators } from '@payloadcms/drizzle';
2
+ import type { extendDrizzleTable } from '@payloadcms/drizzle';
3
+ import type { BaseSQLiteAdapter, BaseSQLiteArgs } from '@payloadcms/drizzle/sqlite';
3
4
  import type { BuildQueryJoinAliases, DrizzleAdapter } from '@payloadcms/drizzle/types';
4
5
  import type { DrizzleConfig, Relation, Relations, SQL } from 'drizzle-orm';
5
6
  import type { LibSQLDatabase } from 'drizzle-orm/libsql';
@@ -46,23 +47,7 @@ export type Args = {
46
47
  */
47
48
  blocksAsJSON?: boolean;
48
49
  client: Config;
49
- /** Generated schema from payload generate:db-schema file path */
50
- generateSchemaOutputFile?: string;
51
- idType?: 'number' | 'uuid';
52
- localesSuffix?: string;
53
- logger?: DrizzleConfig['logger'];
54
- migrationDir?: string;
55
- prodMigrations?: {
56
- down: (args: MigrateDownArgs) => Promise<void>;
57
- name: string;
58
- up: (args: MigrateUpArgs) => Promise<void>;
59
- }[];
60
- push?: boolean;
61
- relationshipsSuffix?: string;
62
- schemaName?: string;
63
- transactionOptions?: false | SQLiteTransactionConfig;
64
- versionsSuffix?: string;
65
- };
50
+ } & BaseSQLiteArgs;
66
51
  export type GenericColumns = {
67
52
  [x: string]: AnySQLiteColumn;
68
53
  };
@@ -109,45 +94,10 @@ type Drizzle = {
109
94
  $client: Client;
110
95
  } & LibSQLDatabase<ResolveSchemaType<GeneratedDatabaseSchema>>;
111
96
  export type SQLiteAdapter = {
112
- afterSchemaInit: SQLiteSchemaHook[];
113
- autoIncrement: boolean;
114
- beforeSchemaInit: SQLiteSchemaHook[];
115
97
  client: Client;
116
98
  clientConfig: Args['client'];
117
- countDistinct: CountDistinct;
118
- defaultDrizzleSnapshot: any;
119
- deleteWhere: DeleteWhere;
120
99
  drizzle: Drizzle;
121
- dropDatabase: DropDatabase;
122
- execute: Execute<unknown>;
123
- /**
124
- * An object keyed on each table, with a key value pair where the constraint name is the key, followed by the dot-notation field name
125
- * Used for returning properly formed errors from unique fields
126
- */
127
- fieldConstraints: Record<string, Record<string, string>>;
128
- idType: Args['idType'];
129
- initializing: Promise<void>;
130
- insert: Insert;
131
- localesSuffix?: string;
132
- logger: DrizzleConfig['logger'];
133
- operators: Operators;
134
- prodMigrations?: {
135
- down: (args: MigrateDownArgs) => Promise<void>;
136
- name: string;
137
- up: (args: MigrateUpArgs) => Promise<void>;
138
- }[];
139
- push: boolean;
140
- rejectInitializing: () => void;
141
- relations: Record<string, GenericRelation>;
142
- relationshipsSuffix?: string;
143
- resolveInitializing: () => void;
144
- schema: Record<string, GenericRelation | GenericTable>;
145
- schemaName?: Args['schemaName'];
146
- tableNameMap: Map<string, string>;
147
- tables: Record<string, GenericTable>;
148
- transactionOptions: SQLiteTransactionConfig;
149
- versionsSuffix?: string;
150
- } & SQLiteDrizzleAdapter;
100
+ } & BaseSQLiteAdapter & SQLiteDrizzleAdapter;
151
101
  export type IDType = 'integer' | 'numeric' | 'text';
152
102
  export type MigrateUpArgs = {
153
103
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/types.ts"],"sourcesContent":["import type { Client, Config, ResultSet } from '@libsql/client'\nimport type { extendDrizzleTable, Operators } from '@payloadcms/drizzle'\nimport type { BuildQueryJoinAliases, DrizzleAdapter } from '@payloadcms/drizzle/types'\nimport type { DrizzleConfig, Relation, Relations, SQL } from 'drizzle-orm'\nimport type { LibSQLDatabase } from 'drizzle-orm/libsql'\nimport type {\n AnySQLiteColumn,\n SQLiteColumn,\n SQLiteInsertOnConflictDoUpdateConfig,\n SQLiteTableWithColumns,\n SQLiteTransactionConfig,\n} from 'drizzle-orm/sqlite-core'\nimport type { SQLiteRaw } from 'drizzle-orm/sqlite-core/query-builders/raw'\nimport type { Payload, PayloadRequest } from 'payload'\n\ntype SQLiteSchema = {\n relations: Record<string, GenericRelation>\n tables: Record<string, SQLiteTableWithColumns<any>>\n}\n\ntype SQLiteSchemaHookArgs = {\n extendTable: typeof extendDrizzleTable\n schema: SQLiteSchema\n}\n\nexport type SQLiteSchemaHook = (args: SQLiteSchemaHookArgs) => Promise<SQLiteSchema> | SQLiteSchema\n\nexport type Args = {\n /**\n * Transform the schema after it's built.\n * You can use it to customize the schema with features that aren't supported by Payload.\n * Examples may include: composite indices, generated columns, vectors\n */\n afterSchemaInit?: SQLiteSchemaHook[]\n /**\n * Enable this flag if you want to thread your own ID to create operation data, for example:\n * ```ts\n * // doc created with id 1\n * const doc = await payload.create({ collection: 'posts', data: {id: 1, title: \"my title\"}})\n * ```\n */\n allowIDOnCreate?: boolean\n /**\n * Enable [AUTOINCREMENT](https://www.sqlite.org/autoinc.html) for Primary Keys.\n * This ensures that the same ID cannot be reused from previously deleted rows.\n */\n autoIncrement?: boolean\n /**\n * Transform the schema before it's built.\n * You can use it to preserve an existing database schema and if there are any collissions Payload will override them.\n * To generate Drizzle schema from the database, see [Drizzle Kit introspection](https://orm.drizzle.team/kit-docs/commands#introspect--pull)\n */\n beforeSchemaInit?: SQLiteSchemaHook[]\n /**\n * Store blocks as JSON column instead of storing them in relational structure.\n */\n blocksAsJSON?: boolean\n client: Config\n /** Generated schema from payload generate:db-schema file path */\n generateSchemaOutputFile?: string\n idType?: 'number' | 'uuid'\n localesSuffix?: string\n logger?: DrizzleConfig['logger']\n migrationDir?: string\n prodMigrations?: {\n down: (args: MigrateDownArgs) => Promise<void>\n name: string\n up: (args: MigrateUpArgs) => Promise<void>\n }[]\n push?: boolean\n relationshipsSuffix?: string\n schemaName?: string\n transactionOptions?: false | SQLiteTransactionConfig\n versionsSuffix?: string\n}\n\nexport type GenericColumns = {\n [x: string]: AnySQLiteColumn\n}\n\nexport type GenericTable = SQLiteTableWithColumns<{\n columns: GenericColumns\n dialect: string\n name: string\n schema: string\n}>\n\nexport type GenericRelation = Relations<string, Record<string, Relation<string>>>\n\nexport type CountDistinct = (args: {\n column?: SQLiteColumn<any>\n db: LibSQLDatabase\n joins: BuildQueryJoinAliases\n tableName: string\n where: SQL\n}) => Promise<number>\n\nexport type DeleteWhere = (args: {\n db: LibSQLDatabase\n tableName: string\n where: SQL\n}) => Promise<void>\n\nexport type DropDatabase = (args: { adapter: SQLiteAdapter }) => Promise<void>\n\nexport type Execute<T> = (args: {\n db?: LibSQLDatabase\n drizzle?: LibSQLDatabase\n raw?: string\n sql?: SQL<unknown>\n}) => SQLiteRaw<Promise<T>> | SQLiteRaw<ResultSet>\n\nexport type Insert = (args: {\n db: LibSQLDatabase\n onConflictDoUpdate?: SQLiteInsertOnConflictDoUpdateConfig<any>\n tableName: string\n values: Record<string, unknown> | Record<string, unknown>[]\n}) => Promise<Record<string, unknown>[]>\n\n// Explicitly omit drizzle property for complete override in SQLiteAdapter, required in ts 5.5\ntype SQLiteDrizzleAdapter = Omit<\n DrizzleAdapter,\n | 'countDistinct'\n | 'deleteWhere'\n | 'drizzle'\n | 'dropDatabase'\n | 'execute'\n | 'idType'\n | 'insert'\n | 'operators'\n | 'relations'\n>\n\nexport interface GeneratedDatabaseSchema {\n schemaUntyped: Record<string, unknown>\n}\n\ntype ResolveSchemaType<T> = 'schema' extends keyof T\n ? T['schema']\n : GeneratedDatabaseSchema['schemaUntyped']\n\ntype Drizzle = { $client: Client } & LibSQLDatabase<ResolveSchemaType<GeneratedDatabaseSchema>>\n\nexport type SQLiteAdapter = {\n afterSchemaInit: SQLiteSchemaHook[]\n autoIncrement: boolean\n beforeSchemaInit: SQLiteSchemaHook[]\n client: Client\n clientConfig: Args['client']\n countDistinct: CountDistinct\n defaultDrizzleSnapshot: any\n deleteWhere: DeleteWhere\n drizzle: Drizzle\n dropDatabase: DropDatabase\n execute: Execute<unknown>\n /**\n * An object keyed on each table, with a key value pair where the constraint name is the key, followed by the dot-notation field name\n * Used for returning properly formed errors from unique fields\n */\n fieldConstraints: Record<string, Record<string, string>>\n idType: Args['idType']\n initializing: Promise<void>\n insert: Insert\n localesSuffix?: string\n logger: DrizzleConfig['logger']\n operators: Operators\n prodMigrations?: {\n down: (args: MigrateDownArgs) => Promise<void>\n name: string\n up: (args: MigrateUpArgs) => Promise<void>\n }[]\n push: boolean\n rejectInitializing: () => void\n relations: Record<string, GenericRelation>\n relationshipsSuffix?: string\n resolveInitializing: () => void\n schema: Record<string, GenericRelation | GenericTable>\n schemaName?: Args['schemaName']\n tableNameMap: Map<string, string>\n tables: Record<string, GenericTable>\n transactionOptions: SQLiteTransactionConfig\n versionsSuffix?: string\n} & SQLiteDrizzleAdapter\n\nexport type IDType = 'integer' | 'numeric' | 'text'\n\nexport type MigrateUpArgs = {\n /**\n * The SQLite Drizzle instance that you can use to execute SQL directly within the current transaction.\n * @example\n * ```ts\n * import { type MigrateUpArgs, sql } from '@payloadcms/db-sqlite'\n *\n * export async function up({ db, payload, req }: MigrateUpArgs): Promise<void> {\n * const { rows: posts } = await db.run(sql`SELECT * FROM posts`)\n * }\n * ```\n */\n db: Drizzle\n /**\n * The Payload instance that you can use to execute Local API methods\n * To use the current transaction you must pass `req` to arguments\n * @example\n * ```ts\n * import { type MigrateUpArgs } from '@payloadcms/db-sqlite'\n *\n * export async function up({ db, payload, req }: MigrateUpArgs): Promise<void> {\n * const posts = await payload.find({ collection: 'posts', req })\n * }\n * ```\n */\n payload: Payload\n /**\n * The `PayloadRequest` object that contains the current transaction\n */\n req: PayloadRequest\n}\nexport type MigrateDownArgs = {\n /**\n * The SQLite Drizzle instance that you can use to execute SQL directly within the current transaction.\n * @example\n * ```ts\n * import { type MigrateDownArgs, sql } from '@payloadcms/db-sqlite'\n *\n * export async function down({ db, payload, req }: MigrateDownArgs): Promise<void> {\n * const { rows: posts } = await db.run(sql`SELECT * FROM posts`)\n * }\n * ```\n */\n db: Drizzle\n /**\n * The Payload instance that you can use to execute Local API methods\n * To use the current transaction you must pass `req` to arguments\n * @example\n * ```ts\n * import { type MigrateDownArgs } from '@payloadcms/db-sqlite'\n *\n * export async function down({ db, payload, req }: MigrateDownArgs): Promise<void> {\n * const posts = await payload.find({ collection: 'posts', req })\n * }\n * ```\n */\n payload: Payload\n /**\n * The `PayloadRequest` object that contains the current transaction\n */\n req: PayloadRequest\n}\n\ndeclare module 'payload' {\n export interface DatabaseAdapter\n extends Omit<Args, 'idType' | 'logger' | 'migrationDir' | 'pool'>,\n DrizzleAdapter {\n beginTransaction: (options?: SQLiteTransactionConfig) => Promise<null | number | string>\n drizzle: Drizzle\n /**\n * An object keyed on each table, with a key value pair where the constraint name is the key, followed by the dot-notation field name\n * Used for returning properly formed errors from unique fields\n */\n fieldConstraints: Record<string, Record<string, string>>\n idType: Args['idType']\n initializing: Promise<void>\n localesSuffix?: string\n logger: DrizzleConfig['logger']\n prodMigrations?: {\n down: (args: MigrateDownArgs) => Promise<void>\n name: string\n up: (args: MigrateUpArgs) => Promise<void>\n }[]\n push: boolean\n rejectInitializing: () => void\n relationshipsSuffix?: string\n resolveInitializing: () => void\n schema: Record<string, GenericRelation | GenericTable>\n tableNameMap: Map<string, string>\n transactionOptions: SQLiteTransactionConfig\n versionsSuffix?: string\n }\n}\n"],"names":[],"mappings":"AAyNA,WA8BC"}
1
+ {"version":3,"sources":["../src/types.ts"],"sourcesContent":["import type { Client, Config, ResultSet } from '@libsql/client'\nimport type { extendDrizzleTable, Operators } from '@payloadcms/drizzle'\nimport type { BaseSQLiteAdapter, BaseSQLiteArgs } from '@payloadcms/drizzle/sqlite'\nimport type { BuildQueryJoinAliases, DrizzleAdapter } from '@payloadcms/drizzle/types'\nimport type { DrizzleConfig, Relation, Relations, SQL } from 'drizzle-orm'\nimport type { LibSQLDatabase } from 'drizzle-orm/libsql'\nimport type {\n AnySQLiteColumn,\n SQLiteColumn,\n SQLiteInsertOnConflictDoUpdateConfig,\n SQLiteTableWithColumns,\n SQLiteTransactionConfig,\n} from 'drizzle-orm/sqlite-core'\nimport type { SQLiteRaw } from 'drizzle-orm/sqlite-core/query-builders/raw'\nimport type { Payload, PayloadRequest } from 'payload'\n\ntype SQLiteSchema = {\n relations: Record<string, GenericRelation>\n tables: Record<string, SQLiteTableWithColumns<any>>\n}\n\ntype SQLiteSchemaHookArgs = {\n extendTable: typeof extendDrizzleTable\n schema: SQLiteSchema\n}\n\nexport type SQLiteSchemaHook = (args: SQLiteSchemaHookArgs) => Promise<SQLiteSchema> | SQLiteSchema\n\nexport type Args = {\n /**\n * Transform the schema after it's built.\n * You can use it to customize the schema with features that aren't supported by Payload.\n * Examples may include: composite indices, generated columns, vectors\n */\n afterSchemaInit?: SQLiteSchemaHook[]\n /**\n * Enable this flag if you want to thread your own ID to create operation data, for example:\n * ```ts\n * // doc created with id 1\n * const doc = await payload.create({ collection: 'posts', data: {id: 1, title: \"my title\"}})\n * ```\n */\n allowIDOnCreate?: boolean\n /**\n * Enable [AUTOINCREMENT](https://www.sqlite.org/autoinc.html) for Primary Keys.\n * This ensures that the same ID cannot be reused from previously deleted rows.\n */\n autoIncrement?: boolean\n /**\n * Transform the schema before it's built.\n * You can use it to preserve an existing database schema and if there are any collissions Payload will override them.\n * To generate Drizzle schema from the database, see [Drizzle Kit introspection](https://orm.drizzle.team/kit-docs/commands#introspect--pull)\n */\n beforeSchemaInit?: SQLiteSchemaHook[]\n /**\n * Store blocks as JSON column instead of storing them in relational structure.\n */\n blocksAsJSON?: boolean\n client: Config\n} & BaseSQLiteArgs\n\nexport type GenericColumns = {\n [x: string]: AnySQLiteColumn\n}\n\nexport type GenericTable = SQLiteTableWithColumns<{\n columns: GenericColumns\n dialect: string\n name: string\n schema: string\n}>\n\nexport type GenericRelation = Relations<string, Record<string, Relation<string>>>\n\nexport type CountDistinct = (args: {\n column?: SQLiteColumn<any>\n db: LibSQLDatabase\n joins: BuildQueryJoinAliases\n tableName: string\n where: SQL\n}) => Promise<number>\n\nexport type DeleteWhere = (args: {\n db: LibSQLDatabase\n tableName: string\n where: SQL\n}) => Promise<void>\n\nexport type DropDatabase = (args: { adapter: SQLiteAdapter }) => Promise<void>\n\nexport type Execute<T> = (args: {\n db?: LibSQLDatabase\n drizzle?: LibSQLDatabase\n raw?: string\n sql?: SQL<unknown>\n}) => SQLiteRaw<Promise<T>> | SQLiteRaw<ResultSet>\n\nexport type Insert = (args: {\n db: LibSQLDatabase\n onConflictDoUpdate?: SQLiteInsertOnConflictDoUpdateConfig<any>\n tableName: string\n values: Record<string, unknown> | Record<string, unknown>[]\n}) => Promise<Record<string, unknown>[]>\n\n// Explicitly omit drizzle property for complete override in SQLiteAdapter, required in ts 5.5\ntype SQLiteDrizzleAdapter = Omit<\n DrizzleAdapter,\n | 'countDistinct'\n | 'deleteWhere'\n | 'drizzle'\n | 'dropDatabase'\n | 'execute'\n | 'idType'\n | 'insert'\n | 'operators'\n | 'relations'\n>\n\nexport interface GeneratedDatabaseSchema {\n schemaUntyped: Record<string, unknown>\n}\n\ntype ResolveSchemaType<T> = 'schema' extends keyof T\n ? T['schema']\n : GeneratedDatabaseSchema['schemaUntyped']\n\ntype Drizzle = { $client: Client } & LibSQLDatabase<ResolveSchemaType<GeneratedDatabaseSchema>>\n\nexport type SQLiteAdapter = {\n client: Client\n clientConfig: Args['client']\n drizzle: Drizzle\n} & BaseSQLiteAdapter &\n SQLiteDrizzleAdapter\n\nexport type IDType = 'integer' | 'numeric' | 'text'\n\nexport type MigrateUpArgs = {\n /**\n * The SQLite Drizzle instance that you can use to execute SQL directly within the current transaction.\n * @example\n * ```ts\n * import { type MigrateUpArgs, sql } from '@payloadcms/db-sqlite'\n *\n * export async function up({ db, payload, req }: MigrateUpArgs): Promise<void> {\n * const { rows: posts } = await db.run(sql`SELECT * FROM posts`)\n * }\n * ```\n */\n db: Drizzle\n /**\n * The Payload instance that you can use to execute Local API methods\n * To use the current transaction you must pass `req` to arguments\n * @example\n * ```ts\n * import { type MigrateUpArgs } from '@payloadcms/db-sqlite'\n *\n * export async function up({ db, payload, req }: MigrateUpArgs): Promise<void> {\n * const posts = await payload.find({ collection: 'posts', req })\n * }\n * ```\n */\n payload: Payload\n /**\n * The `PayloadRequest` object that contains the current transaction\n */\n req: PayloadRequest\n}\nexport type MigrateDownArgs = {\n /**\n * The SQLite Drizzle instance that you can use to execute SQL directly within the current transaction.\n * @example\n * ```ts\n * import { type MigrateDownArgs, sql } from '@payloadcms/db-sqlite'\n *\n * export async function down({ db, payload, req }: MigrateDownArgs): Promise<void> {\n * const { rows: posts } = await db.run(sql`SELECT * FROM posts`)\n * }\n * ```\n */\n db: Drizzle\n /**\n * The Payload instance that you can use to execute Local API methods\n * To use the current transaction you must pass `req` to arguments\n * @example\n * ```ts\n * import { type MigrateDownArgs } from '@payloadcms/db-sqlite'\n *\n * export async function down({ db, payload, req }: MigrateDownArgs): Promise<void> {\n * const posts = await payload.find({ collection: 'posts', req })\n * }\n * ```\n */\n payload: Payload\n /**\n * The `PayloadRequest` object that contains the current transaction\n */\n req: PayloadRequest\n}\n\ndeclare module 'payload' {\n export interface DatabaseAdapter\n extends Omit<Args, 'idType' | 'logger' | 'migrationDir' | 'pool'>,\n DrizzleAdapter {\n beginTransaction: (options?: SQLiteTransactionConfig) => Promise<null | number | string>\n drizzle: Drizzle\n /**\n * An object keyed on each table, with a key value pair where the constraint name is the key, followed by the dot-notation field name\n * Used for returning properly formed errors from unique fields\n */\n fieldConstraints: Record<string, Record<string, string>>\n idType: Args['idType']\n initializing: Promise<void>\n localesSuffix?: string\n logger: DrizzleConfig['logger']\n prodMigrations?: {\n down: (args: MigrateDownArgs) => Promise<void>\n name: string\n up: (args: MigrateUpArgs) => Promise<void>\n }[]\n push: boolean\n rejectInitializing: () => void\n relationshipsSuffix?: string\n resolveInitializing: () => void\n schema: Record<string, GenericRelation | GenericTable>\n tableNameMap: Map<string, string>\n transactionOptions: SQLiteTransactionConfig\n versionsSuffix?: string\n }\n}\n"],"names":[],"mappings":"AAwKA,WA8BC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@payloadcms/db-sqlite",
3
- "version": "3.58.0-canary.3",
3
+ "version": "3.58.0-canary.4",
4
4
  "description": "The officially supported SQLite database adapter for Payload",
5
5
  "homepage": "https://payloadcms.com",
6
6
  "repository": {
@@ -70,17 +70,17 @@
70
70
  "prompts": "2.4.2",
71
71
  "to-snake-case": "1.0.0",
72
72
  "uuid": "9.0.0",
73
- "@payloadcms/drizzle": "3.58.0-canary.3"
73
+ "@payloadcms/drizzle": "3.58.0-canary.4"
74
74
  },
75
75
  "devDependencies": {
76
76
  "@types/pg": "8.10.2",
77
77
  "@types/to-snake-case": "1.0.0",
78
78
  "@types/uuid": "10.0.0",
79
- "payload": "3.58.0-canary.3",
80
- "@payloadcms/eslint-config": "3.28.0"
79
+ "@payloadcms/eslint-config": "3.28.0",
80
+ "payload": "3.58.0-canary.4"
81
81
  },
82
82
  "peerDependencies": {
83
- "payload": "3.58.0-canary.3"
83
+ "payload": "3.58.0-canary.4"
84
84
  },
85
85
  "scripts": {
86
86
  "build": "pnpm build:swc && pnpm build:types",
@@ -1,3 +0,0 @@
1
- import type { ColumnToCodeConverter } from '@payloadcms/drizzle/types';
2
- export declare const columnToCodeConverter: ColumnToCodeConverter;
3
- //# sourceMappingURL=columnToCodeConverter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"columnToCodeConverter.d.ts","sourceRoot":"","sources":["../src/columnToCodeConverter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAA;AAEtE,eAAO,MAAM,qBAAqB,EAAE,qBAoInC,CAAA"}
@@ -1,107 +0,0 @@
1
- export const columnToCodeConverter = ({ adapter, addImport, column, locales, tableKey })=>{
2
- let columnBuilderFn = column.type;
3
- const columnBuilderArgsArray = [];
4
- let defaultStatement = null;
5
- switch(column.type){
6
- case 'boolean':
7
- {
8
- columnBuilderFn = 'integer';
9
- columnBuilderArgsArray.push("mode: 'boolean'");
10
- break;
11
- }
12
- case 'enum':
13
- {
14
- let options;
15
- if ('locale' in column) {
16
- if (!locales?.length) {
17
- throw new Error('Locales must be defined for locale columns');
18
- }
19
- options = locales;
20
- } else {
21
- options = column.options;
22
- }
23
- columnBuilderFn = 'text';
24
- columnBuilderArgsArray.push(`enum: [${options.map((locale)=>`'${locale}'`).join(', ')}]`);
25
- break;
26
- }
27
- case 'geometry':
28
- case 'jsonb':
29
- {
30
- columnBuilderFn = 'text';
31
- columnBuilderArgsArray.push("mode: 'json'");
32
- break;
33
- }
34
- case 'serial':
35
- {
36
- columnBuilderFn = 'integer';
37
- break;
38
- }
39
- case 'timestamp':
40
- {
41
- columnBuilderFn = 'text';
42
- defaultStatement = `default(sql\`(strftime('%Y-%m-%dT%H:%M:%fZ', 'now'))\`)`;
43
- break;
44
- }
45
- case 'uuid':
46
- {
47
- columnBuilderFn = 'text';
48
- if (column.defaultRandom) {
49
- addImport('crypto', 'randomUUID');
50
- defaultStatement = `$defaultFn(() => randomUUID())`;
51
- }
52
- break;
53
- }
54
- case 'varchar':
55
- {
56
- columnBuilderFn = 'text';
57
- break;
58
- }
59
- default:
60
- {
61
- columnBuilderFn = column.type;
62
- }
63
- }
64
- addImport(`${adapter.packageName}/drizzle/sqlite-core`, columnBuilderFn);
65
- let columnBuilderArgs = '';
66
- if (columnBuilderArgsArray.length) {
67
- columnBuilderArgs = `, {${columnBuilderArgsArray.join(',')}}`;
68
- }
69
- let code = `${columnBuilderFn}('${column.name}'${columnBuilderArgs})`;
70
- if (column.notNull) {
71
- code = `${code}.notNull()`;
72
- }
73
- if (column.primaryKey) {
74
- let arg = '';
75
- if (column.type === 'integer' && column.autoIncrement) {
76
- arg = `{ autoIncrement: true }`;
77
- }
78
- code = `${code}.primaryKey(${arg})`;
79
- }
80
- if (defaultStatement) {
81
- code = `${code}.${defaultStatement}`;
82
- } else if (typeof column.default !== 'undefined') {
83
- let sanitizedDefault = column.default;
84
- if (column.type === 'jsonb' || column.type === 'geometry') {
85
- sanitizedDefault = `'${JSON.stringify(column.default)}'`;
86
- } else if (typeof column.default === 'string') {
87
- sanitizedDefault = JSON.stringify(column.default);
88
- } else if (column.type === 'numeric') {
89
- sanitizedDefault = `'${column.default}'`;
90
- }
91
- code = `${code}.default(${sanitizedDefault})`;
92
- }
93
- if (column.reference) {
94
- let callback = `()`;
95
- if (column.reference.table === tableKey) {
96
- addImport(`${adapter.packageName}/drizzle/sqlite-core`, 'type AnySQLiteColumn');
97
- callback = `${callback}: AnySQLiteColumn`;
98
- }
99
- callback = `${callback} => ${column.reference.table}.${column.reference.name}`;
100
- code = `${code}.references(${callback}, {
101
- ${column.reference.onDelete ? `onDelete: '${column.reference.onDelete}'` : ''}
102
- })`;
103
- }
104
- return code;
105
- };
106
-
107
- //# sourceMappingURL=columnToCodeConverter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/columnToCodeConverter.ts"],"sourcesContent":["import type { ColumnToCodeConverter } from '@payloadcms/drizzle/types'\n\nexport const columnToCodeConverter: ColumnToCodeConverter = ({\n adapter,\n addImport,\n column,\n locales,\n tableKey,\n}) => {\n let columnBuilderFn: string = column.type\n\n const columnBuilderArgsArray: string[] = []\n\n let defaultStatement: null | string = null\n\n switch (column.type) {\n case 'boolean': {\n columnBuilderFn = 'integer'\n columnBuilderArgsArray.push(\"mode: 'boolean'\")\n break\n }\n\n case 'enum': {\n let options: string[]\n if ('locale' in column) {\n if (!locales?.length) {\n throw new Error('Locales must be defined for locale columns')\n }\n options = locales\n } else {\n options = column.options\n }\n\n columnBuilderFn = 'text'\n columnBuilderArgsArray.push(`enum: [${options.map((locale) => `'${locale}'`).join(', ')}]`)\n\n break\n }\n\n case 'geometry':\n case 'jsonb': {\n columnBuilderFn = 'text'\n columnBuilderArgsArray.push(\"mode: 'json'\")\n break\n }\n\n case 'serial': {\n columnBuilderFn = 'integer'\n break\n }\n\n case 'timestamp': {\n columnBuilderFn = 'text'\n defaultStatement = `default(sql\\`(strftime('%Y-%m-%dT%H:%M:%fZ', 'now'))\\`)`\n break\n }\n\n case 'uuid': {\n columnBuilderFn = 'text'\n\n if (column.defaultRandom) {\n addImport('crypto', 'randomUUID')\n defaultStatement = `$defaultFn(() => randomUUID())`\n }\n\n break\n }\n\n case 'varchar': {\n columnBuilderFn = 'text'\n break\n }\n\n default: {\n columnBuilderFn = column.type\n }\n }\n\n addImport(`${adapter.packageName}/drizzle/sqlite-core`, columnBuilderFn)\n\n let columnBuilderArgs = ''\n\n if (columnBuilderArgsArray.length) {\n columnBuilderArgs = `, {${columnBuilderArgsArray.join(',')}}`\n }\n\n let code = `${columnBuilderFn}('${column.name}'${columnBuilderArgs})`\n\n if (column.notNull) {\n code = `${code}.notNull()`\n }\n\n if (column.primaryKey) {\n let arg = ''\n\n if (column.type === 'integer' && column.autoIncrement) {\n arg = `{ autoIncrement: true }`\n }\n\n code = `${code}.primaryKey(${arg})`\n }\n\n if (defaultStatement) {\n code = `${code}.${defaultStatement}`\n } else if (typeof column.default !== 'undefined') {\n let sanitizedDefault = column.default\n\n if (column.type === 'jsonb' || column.type === 'geometry') {\n sanitizedDefault = `'${JSON.stringify(column.default)}'`\n } else if (typeof column.default === 'string') {\n sanitizedDefault = JSON.stringify(column.default)\n } else if (column.type === 'numeric') {\n sanitizedDefault = `'${column.default}'`\n }\n\n code = `${code}.default(${sanitizedDefault})`\n }\n\n if (column.reference) {\n let callback = `()`\n\n if (column.reference.table === tableKey) {\n addImport(`${adapter.packageName}/drizzle/sqlite-core`, 'type AnySQLiteColumn')\n callback = `${callback}: AnySQLiteColumn`\n }\n\n callback = `${callback} => ${column.reference.table}.${column.reference.name}`\n\n code = `${code}.references(${callback}, {\n ${column.reference.onDelete ? `onDelete: '${column.reference.onDelete}'` : ''}\n })`\n }\n\n return code\n}\n"],"names":["columnToCodeConverter","adapter","addImport","column","locales","tableKey","columnBuilderFn","type","columnBuilderArgsArray","defaultStatement","push","options","length","Error","map","locale","join","defaultRandom","packageName","columnBuilderArgs","code","name","notNull","primaryKey","arg","autoIncrement","default","sanitizedDefault","JSON","stringify","reference","callback","table","onDelete"],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import type { CountDistinct } from './types.js';
2
- export declare const countDistinct: CountDistinct;
3
- //# sourceMappingURL=countDistinct.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"countDistinct.d.ts","sourceRoot":"","sources":["../src/countDistinct.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAiB,MAAM,YAAY,CAAA;AAE9D,eAAO,MAAM,aAAa,EAAE,aAoC3B,CAAA"}
@@ -1,24 +0,0 @@
1
- import { count, sql } from 'drizzle-orm';
2
- export const countDistinct = async function countDistinct({ column, db, joins, tableName, where }) {
3
- // When we don't have any joins - use a simple COUNT(*) query.
4
- if (joins.length === 0) {
5
- const countResult = await db.select({
6
- count: column ? count(sql`DISTINCT ${column}`) : count()
7
- }).from(this.tables[tableName]).where(where);
8
- return Number(countResult?.[0]?.count ?? 0);
9
- }
10
- let query = db.select({
11
- count: sql`COUNT(1) OVER()`
12
- }).from(this.tables[tableName]).where(where).groupBy(column ?? this.tables[tableName].id).limit(1).$dynamic();
13
- joins.forEach(({ type, condition, table })=>{
14
- query = query[type ?? 'leftJoin'](table, condition);
15
- });
16
- // When we have any joins, we need to count each individual ID only once.
17
- // COUNT(*) doesn't work for this well in this case, as it also counts joined tables.
18
- // SELECT (COUNT DISTINCT id) has a very slow performance on large tables.
19
- // Instead, COUNT (GROUP BY id) can be used which is still slower than COUNT(*) but acceptable.
20
- const countResult = await query;
21
- return Number(countResult?.[0]?.count ?? 0);
22
- };
23
-
24
- //# sourceMappingURL=countDistinct.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/countDistinct.ts"],"sourcesContent":["import type { SQLiteSelect } from 'drizzle-orm/sqlite-core'\n\nimport { count, sql } from 'drizzle-orm'\n\nimport type { CountDistinct, SQLiteAdapter } from './types.js'\n\nexport const countDistinct: CountDistinct = async function countDistinct(\n this: SQLiteAdapter,\n { column, db, joins, tableName, where },\n) {\n // When we don't have any joins - use a simple COUNT(*) query.\n if (joins.length === 0) {\n const countResult = await db\n .select({\n count: column ? count(sql`DISTINCT ${column}`) : count(),\n })\n .from(this.tables[tableName])\n .where(where)\n return Number(countResult?.[0]?.count ?? 0)\n }\n\n let query: SQLiteSelect = db\n .select({\n count: sql`COUNT(1) OVER()`,\n })\n .from(this.tables[tableName])\n .where(where)\n .groupBy(column ?? this.tables[tableName].id)\n .limit(1)\n .$dynamic()\n\n joins.forEach(({ type, condition, table }) => {\n query = query[type ?? 'leftJoin'](table, condition)\n })\n\n // When we have any joins, we need to count each individual ID only once.\n // COUNT(*) doesn't work for this well in this case, as it also counts joined tables.\n // SELECT (COUNT DISTINCT id) has a very slow performance on large tables.\n // Instead, COUNT (GROUP BY id) can be used which is still slower than COUNT(*) but acceptable.\n const countResult = await query\n\n return Number(countResult?.[0]?.count ?? 0)\n}\n"],"names":["count","sql","countDistinct","column","db","joins","tableName","where","length","countResult","select","from","tables","Number","query","groupBy","id","limit","$dynamic","forEach","type","condition","table"],"mappings":"AAEA,SAASA,KAAK,EAAEC,GAAG,QAAQ,cAAa;AAIxC,OAAO,MAAMC,gBAA+B,eAAeA,cAEzD,EAAEC,MAAM,EAAEC,EAAE,EAAEC,KAAK,EAAEC,SAAS,EAAEC,KAAK,EAAE;IAEvC,8DAA8D;IAC9D,IAAIF,MAAMG,MAAM,KAAK,GAAG;QACtB,MAAMC,cAAc,MAAML,GACvBM,MAAM,CAAC;YACNV,OAAOG,SAASH,MAAMC,GAAG,CAAC,SAAS,EAAEE,OAAO,CAAC,IAAIH;QACnD,GACCW,IAAI,CAAC,IAAI,CAACC,MAAM,CAACN,UAAU,EAC3BC,KAAK,CAACA;QACT,OAAOM,OAAOJ,aAAa,CAAC,EAAE,EAAET,SAAS;IAC3C;IAEA,IAAIc,QAAsBV,GACvBM,MAAM,CAAC;QACNV,OAAOC,GAAG,CAAC,eAAe,CAAC;IAC7B,GACCU,IAAI,CAAC,IAAI,CAACC,MAAM,CAACN,UAAU,EAC3BC,KAAK,CAACA,OACNQ,OAAO,CAACZ,UAAU,IAAI,CAACS,MAAM,CAACN,UAAU,CAACU,EAAE,EAC3CC,KAAK,CAAC,GACNC,QAAQ;IAEXb,MAAMc,OAAO,CAAC,CAAC,EAAEC,IAAI,EAAEC,SAAS,EAAEC,KAAK,EAAE;QACvCR,QAAQA,KAAK,CAACM,QAAQ,WAAW,CAACE,OAAOD;IAC3C;IAEA,yEAAyE;IACzE,qFAAqF;IACrF,0EAA0E;IAC1E,+FAA+F;IAC/F,MAAMZ,cAAc,MAAMK;IAE1B,OAAOD,OAAOJ,aAAa,CAAC,EAAE,EAAET,SAAS;AAC3C,EAAC"}
@@ -1,2 +0,0 @@
1
- export declare const convertPathToJSONTraversal: (incomingSegments: string[]) => string;
2
- //# sourceMappingURL=convertPathToJSONTraversal.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"convertPathToJSONTraversal.d.ts","sourceRoot":"","sources":["../../src/createJSONQuery/convertPathToJSONTraversal.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,0BAA0B,qBAAsB,MAAM,EAAE,KAAG,MAQvE,CAAA"}
@@ -1,12 +0,0 @@
1
- export const convertPathToJSONTraversal = (incomingSegments)=>{
2
- const segments = [
3
- ...incomingSegments
4
- ];
5
- segments.shift();
6
- return segments.reduce((res, segment)=>{
7
- const formattedSegment = Number.isNaN(parseInt(segment)) ? `'${segment}'` : segment;
8
- return `${res}->>${formattedSegment}`;
9
- }, '');
10
- };
11
-
12
- //# sourceMappingURL=convertPathToJSONTraversal.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/createJSONQuery/convertPathToJSONTraversal.ts"],"sourcesContent":["export const convertPathToJSONTraversal = (incomingSegments: string[]): string => {\n const segments = [...incomingSegments]\n segments.shift()\n\n return segments.reduce((res, segment) => {\n const formattedSegment = Number.isNaN(parseInt(segment)) ? `'${segment}'` : segment\n return `${res}->>${formattedSegment}`\n }, '')\n}\n"],"names":["convertPathToJSONTraversal","incomingSegments","segments","shift","reduce","res","segment","formattedSegment","Number","isNaN","parseInt"],"mappings":"AAAA,OAAO,MAAMA,6BAA6B,CAACC;IACzC,MAAMC,WAAW;WAAID;KAAiB;IACtCC,SAASC,KAAK;IAEd,OAAOD,SAASE,MAAM,CAAC,CAACC,KAAKC;QAC3B,MAAMC,mBAAmBC,OAAOC,KAAK,CAACC,SAASJ,YAAY,CAAC,CAAC,EAAEA,QAAQ,CAAC,CAAC,GAAGA;QAC5E,OAAO,GAAGD,IAAI,GAAG,EAAEE,kBAAkB;IACvC,GAAG;AACL,EAAC"}
@@ -1,3 +0,0 @@
1
- import type { CreateJSONQueryArgs } from '@payloadcms/drizzle/types';
2
- export declare const createJSONQuery: ({ column, operator, pathSegments, rawColumn, table, treatAsArray, treatRootAsArray, value, }: CreateJSONQueryArgs) => string;
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/createJSONQuery/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAA;AA0GpE,eAAO,MAAM,eAAe,iGASzB,mBAAmB,KAAG,MA0BxB,CAAA"}
@@ -1,106 +0,0 @@
1
- const fromArray = ({ isRoot, operator, pathSegments, table, treatAsArray, value })=>{
2
- const newPathSegments = pathSegments.slice(1);
3
- const alias = `${pathSegments[isRoot ? 0 : 1]}_alias_${newPathSegments.length}`;
4
- return `EXISTS (
5
- SELECT 1
6
- FROM json_each(${table}.${pathSegments[0]}) AS ${alias}
7
- WHERE ${createJSONQuery({
8
- operator,
9
- pathSegments: newPathSegments,
10
- table: alias,
11
- treatAsArray,
12
- value
13
- })}
14
- )`;
15
- };
16
- const createConstraint = ({ alias, operator, pathSegments, value })=>{
17
- const newAlias = `${pathSegments[0]}_alias_${pathSegments.length - 1}`;
18
- if (operator === 'exists' && value === false) {
19
- operator = 'not_exists';
20
- value = true;
21
- } else if (operator === 'not_exists' && value === false) {
22
- operator = 'exists';
23
- value = true;
24
- }
25
- if (operator === 'exists') {
26
- if (pathSegments.length === 1) {
27
- return `EXISTS (SELECT 1 FROM json_each("${pathSegments[0]}") AS ${newAlias})`;
28
- }
29
- return `EXISTS (
30
- SELECT 1
31
- FROM json_each(${alias}.value -> '${pathSegments[0]}') AS ${newAlias}
32
- WHERE ${newAlias}.key = '${pathSegments[1]}'
33
- )`;
34
- }
35
- if (operator === 'not_exists') {
36
- if (pathSegments.length === 1) {
37
- return `NOT EXISTS (SELECT 1 FROM json_each("${pathSegments[0]}") AS ${newAlias})`;
38
- }
39
- return `NOT EXISTS (
40
- SELECT 1
41
- FROM json_each(${alias}.value -> '${pathSegments[0]}') AS ${newAlias}
42
- WHERE ${newAlias}.key = '${pathSegments[1]}'
43
- )`;
44
- }
45
- let formattedValue = value;
46
- let formattedOperator = operator;
47
- if ([
48
- 'contains',
49
- 'like'
50
- ].includes(operator)) {
51
- formattedOperator = 'like';
52
- formattedValue = `%${value}%`;
53
- } else if ([
54
- 'not_like',
55
- 'notlike'
56
- ].includes(operator)) {
57
- formattedOperator = 'not like';
58
- formattedValue = `%${value}%`;
59
- } else if (operator === 'equals') {
60
- formattedOperator = '=';
61
- }
62
- if (pathSegments.length === 1) {
63
- return `EXISTS (SELECT 1 FROM json_each("${pathSegments[0]}") AS ${newAlias} WHERE ${newAlias}.value ${formattedOperator} '${formattedValue}')`;
64
- }
65
- return `EXISTS (
66
- SELECT 1
67
- FROM json_each(${alias}.value -> '${pathSegments[0]}') AS ${newAlias}
68
- WHERE COALESCE(${newAlias}.value ->> '${pathSegments[1]}', '') ${formattedOperator} '${formattedValue}'
69
- )`;
70
- };
71
- export const createJSONQuery = ({ column, operator, pathSegments, rawColumn, table, treatAsArray, treatRootAsArray, value })=>{
72
- if ((operator === 'in' || operator === 'not_in') && Array.isArray(value)) {
73
- let sql = '';
74
- for (const [i, v] of value.entries()){
75
- sql = `${sql}${createJSONQuery({
76
- column,
77
- operator: operator === 'in' ? 'equals' : 'not_equals',
78
- pathSegments,
79
- rawColumn,
80
- table,
81
- treatAsArray,
82
- treatRootAsArray,
83
- value: v
84
- })} ${i === value.length - 1 ? '' : ` ${operator === 'in' ? 'OR' : 'AND'} `}`;
85
- }
86
- return sql;
87
- }
88
- if (treatAsArray?.includes(pathSegments[1]) && table) {
89
- return fromArray({
90
- operator,
91
- pathSegments,
92
- table,
93
- treatAsArray,
94
- value: value
95
- });
96
- }
97
- return createConstraint({
98
- alias: table,
99
- operator,
100
- pathSegments,
101
- treatAsArray,
102
- value: value
103
- });
104
- };
105
-
106
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/createJSONQuery/index.ts"],"sourcesContent":["import type { CreateJSONQueryArgs } from '@payloadcms/drizzle/types'\n\ntype FromArrayArgs = {\n isRoot?: true\n operator: string\n pathSegments: string[]\n table: string\n treatAsArray?: string[]\n value: boolean | number | string\n}\n\nconst fromArray = ({\n isRoot,\n operator,\n pathSegments,\n table,\n treatAsArray,\n value,\n}: FromArrayArgs) => {\n const newPathSegments = pathSegments.slice(1)\n const alias = `${pathSegments[isRoot ? 0 : 1]}_alias_${newPathSegments.length}`\n\n return `EXISTS (\n SELECT 1\n FROM json_each(${table}.${pathSegments[0]}) AS ${alias}\n WHERE ${createJSONQuery({\n operator,\n pathSegments: newPathSegments,\n table: alias,\n treatAsArray,\n value,\n })}\n )`\n}\n\ntype CreateConstraintArgs = {\n alias?: string\n operator: string\n pathSegments: string[]\n treatAsArray?: string[]\n value: boolean | number | string\n}\n\nconst createConstraint = ({\n alias,\n operator,\n pathSegments,\n value,\n}: CreateConstraintArgs): string => {\n const newAlias = `${pathSegments[0]}_alias_${pathSegments.length - 1}`\n\n if (operator === 'exists' && value === false) {\n operator = 'not_exists'\n value = true\n } else if (operator === 'not_exists' && value === false) {\n operator = 'exists'\n value = true\n }\n\n if (operator === 'exists') {\n if (pathSegments.length === 1) {\n return `EXISTS (SELECT 1 FROM json_each(\"${pathSegments[0]}\") AS ${newAlias})`\n }\n\n return `EXISTS (\n SELECT 1\n FROM json_each(${alias}.value -> '${pathSegments[0]}') AS ${newAlias}\n WHERE ${newAlias}.key = '${pathSegments[1]}'\n )`\n }\n\n if (operator === 'not_exists') {\n if (pathSegments.length === 1) {\n return `NOT EXISTS (SELECT 1 FROM json_each(\"${pathSegments[0]}\") AS ${newAlias})`\n }\n\n return `NOT EXISTS (\n SELECT 1\n FROM json_each(${alias}.value -> '${pathSegments[0]}') AS ${newAlias}\n WHERE ${newAlias}.key = '${pathSegments[1]}'\n )`\n }\n\n let formattedValue = value\n let formattedOperator = operator\n if (['contains', 'like'].includes(operator)) {\n formattedOperator = 'like'\n formattedValue = `%${value}%`\n } else if (['not_like', 'notlike'].includes(operator)) {\n formattedOperator = 'not like'\n formattedValue = `%${value}%`\n } else if (operator === 'equals') {\n formattedOperator = '='\n }\n\n if (pathSegments.length === 1) {\n return `EXISTS (SELECT 1 FROM json_each(\"${pathSegments[0]}\") AS ${newAlias} WHERE ${newAlias}.value ${formattedOperator} '${formattedValue}')`\n }\n\n return `EXISTS (\n SELECT 1\n FROM json_each(${alias}.value -> '${pathSegments[0]}') AS ${newAlias}\n WHERE COALESCE(${newAlias}.value ->> '${pathSegments[1]}', '') ${formattedOperator} '${formattedValue}'\n )`\n}\n\nexport const createJSONQuery = ({\n column,\n operator,\n pathSegments,\n rawColumn,\n table,\n treatAsArray,\n treatRootAsArray,\n value,\n}: CreateJSONQueryArgs): string => {\n if ((operator === 'in' || operator === 'not_in') && Array.isArray(value)) {\n let sql = ''\n for (const [i, v] of value.entries()) {\n sql = `${sql}${createJSONQuery({ column, operator: operator === 'in' ? 'equals' : 'not_equals', pathSegments, rawColumn, table, treatAsArray, treatRootAsArray, value: v })} ${i === value.length - 1 ? '' : ` ${operator === 'in' ? 'OR' : 'AND'} `}`\n }\n return sql\n }\n\n if (treatAsArray?.includes(pathSegments[1]!) && table) {\n return fromArray({\n operator,\n pathSegments,\n table,\n treatAsArray,\n value: value as CreateConstraintArgs['value'],\n })\n }\n\n return createConstraint({\n alias: table,\n operator,\n pathSegments,\n treatAsArray,\n value: value as CreateConstraintArgs['value'],\n })\n}\n"],"names":["fromArray","isRoot","operator","pathSegments","table","treatAsArray","value","newPathSegments","slice","alias","length","createJSONQuery","createConstraint","newAlias","formattedValue","formattedOperator","includes","column","rawColumn","treatRootAsArray","Array","isArray","sql","i","v","entries"],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import type { DrizzleSQLiteSnapshotJSON } from 'drizzle-kit/api';
2
- export declare const defaultDrizzleSnapshot: DrizzleSQLiteSnapshotJSON;
3
- //# sourceMappingURL=defaultSnapshot.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"defaultSnapshot.d.ts","sourceRoot":"","sources":["../src/defaultSnapshot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAA;AAEhE,eAAO,MAAM,sBAAsB,EAAE,yBAYpC,CAAA"}
@@ -1,15 +0,0 @@
1
- export const defaultDrizzleSnapshot = {
2
- id: '00000000-0000-0000-0000-000000000000',
3
- _meta: {
4
- columns: {},
5
- tables: {}
6
- },
7
- dialect: 'sqlite',
8
- enums: {},
9
- prevId: '00000000-0000-0000-0000-00000000000',
10
- tables: {},
11
- version: '6',
12
- views: {}
13
- };
14
-
15
- //# sourceMappingURL=defaultSnapshot.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/defaultSnapshot.ts"],"sourcesContent":["import type { DrizzleSQLiteSnapshotJSON } from 'drizzle-kit/api'\n\nexport const defaultDrizzleSnapshot: DrizzleSQLiteSnapshotJSON = {\n id: '00000000-0000-0000-0000-000000000000',\n _meta: {\n columns: {},\n tables: {},\n },\n dialect: 'sqlite',\n enums: {},\n prevId: '00000000-0000-0000-0000-00000000000',\n tables: {},\n version: '6',\n views: {},\n}\n"],"names":["defaultDrizzleSnapshot","id","_meta","columns","tables","dialect","enums","prevId","version","views"],"mappings":"AAEA,OAAO,MAAMA,yBAAoD;IAC/DC,IAAI;IACJC,OAAO;QACLC,SAAS,CAAC;QACVC,QAAQ,CAAC;IACX;IACAC,SAAS;IACTC,OAAO,CAAC;IACRC,QAAQ;IACRH,QAAQ,CAAC;IACTI,SAAS;IACTC,OAAO,CAAC;AACV,EAAC"}
@@ -1,3 +0,0 @@
1
- import type { DeleteWhere } from './types.js';
2
- export declare const deleteWhere: DeleteWhere;
3
- //# sourceMappingURL=deleteWhere.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"deleteWhere.d.ts","sourceRoot":"","sources":["../src/deleteWhere.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAiB,MAAM,YAAY,CAAA;AAE5D,eAAO,MAAM,WAAW,EAAE,WAQzB,CAAA"}
@@ -1,6 +0,0 @@
1
- export const deleteWhere = async function({ db, tableName, where }) {
2
- const table = this.tables[tableName];
3
- await db.delete(table).where(where);
4
- };
5
-
6
- //# sourceMappingURL=deleteWhere.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/deleteWhere.ts"],"sourcesContent":["import type { DeleteWhere, SQLiteAdapter } from './types.js'\n\nexport const deleteWhere: DeleteWhere = async function (\n // Here 'this' is not a parameter. See:\n // https://www.typescriptlang.org/docs/handbook/2/classes.html#this-parameters\n this: SQLiteAdapter,\n { db, tableName, where },\n) {\n const table = this.tables[tableName]\n await db.delete(table).where(where)\n}\n"],"names":["deleteWhere","db","tableName","where","table","tables","delete"],"mappings":"AAEA,OAAO,MAAMA,cAA2B,eAItC,EAAEC,EAAE,EAAEC,SAAS,EAAEC,KAAK,EAAE;IAExB,MAAMC,QAAQ,IAAI,CAACC,MAAM,CAACH,UAAU;IACpC,MAAMD,GAAGK,MAAM,CAACF,OAAOD,KAAK,CAACA;AAC/B,EAAC"}
@@ -1,3 +0,0 @@
1
- import type { DropDatabase } from './types.js';
2
- export declare const dropDatabase: DropDatabase;
3
- //# sourceMappingURL=dropDatabase.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dropDatabase.d.ts","sourceRoot":"","sources":["../src/dropDatabase.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAiB,MAAM,YAAY,CAAA;AAiB7D,eAAO,MAAM,YAAY,EAAE,YAG1B,CAAA"}
@@ -1,19 +0,0 @@
1
- const getTables = (adapter)=>{
2
- return adapter.client.execute(`SELECT name
3
- FROM sqlite_master
4
- WHERE type = 'table'
5
- AND name NOT LIKE 'sqlite_%';`);
6
- };
7
- const dropTables = (adapter, rows)=>{
8
- const multi = `
9
- PRAGMA foreign_keys = OFF;\n
10
- ${rows.map(({ name })=>`DROP TABLE IF EXISTS ${name}`).join(';\n ')};\n
11
- PRAGMA foreign_keys = ON;`;
12
- return adapter.client.executeMultiple(multi);
13
- };
14
- export const dropDatabase = async function({ adapter }) {
15
- const result = await getTables(adapter);
16
- await dropTables(adapter, result.rows);
17
- };
18
-
19
- //# sourceMappingURL=dropDatabase.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/dropDatabase.ts"],"sourcesContent":["import type { Row } from '@libsql/client'\n\nimport type { DropDatabase, SQLiteAdapter } from './types.js'\n\nconst getTables = (adapter: SQLiteAdapter) => {\n return adapter.client.execute(`SELECT name\n FROM sqlite_master\n WHERE type = 'table'\n AND name NOT LIKE 'sqlite_%';`)\n}\n\nconst dropTables = (adapter: SQLiteAdapter, rows: Row[]) => {\n const multi = `\n PRAGMA foreign_keys = OFF;\\n\n ${rows.map(({ name }) => `DROP TABLE IF EXISTS ${name as string}`).join(';\\n ')};\\n\n PRAGMA foreign_keys = ON;`\n return adapter.client.executeMultiple(multi)\n}\n\nexport const dropDatabase: DropDatabase = async function ({ adapter }) {\n const result = await getTables(adapter)\n await dropTables(adapter, result.rows)\n}\n"],"names":["getTables","adapter","client","execute","dropTables","rows","multi","map","name","join","executeMultiple","dropDatabase","result"],"mappings":"AAIA,MAAMA,YAAY,CAACC;IACjB,OAAOA,QAAQC,MAAM,CAACC,OAAO,CAAC,CAAC;;;gEAG+B,CAAC;AACjE;AAEA,MAAMC,aAAa,CAACH,SAAwBI;IAC1C,MAAMC,QAAQ,CAAC;;EAEf,EAAED,KAAKE,GAAG,CAAC,CAAC,EAAEC,IAAI,EAAE,GAAK,CAAC,qBAAqB,EAAEA,MAAgB,EAAEC,IAAI,CAAC,QAAQ;2BACvD,CAAC;IAC1B,OAAOR,QAAQC,MAAM,CAACQ,eAAe,CAACJ;AACxC;AAEA,OAAO,MAAMK,eAA6B,eAAgB,EAAEV,OAAO,EAAE;IACnE,MAAMW,SAAS,MAAMZ,UAAUC;IAC/B,MAAMG,WAAWH,SAASW,OAAOP,IAAI;AACvC,EAAC"}
package/dist/execute.d.ts DELETED
@@ -1,3 +0,0 @@
1
- import type { Execute } from './types.js';
2
- export declare const execute: Execute<any>;
3
- //# sourceMappingURL=execute.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../src/execute.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAEzC,eAAO,MAAM,OAAO,EAAE,OAAO,CAAC,GAAG,CAUhC,CAAA"}
package/dist/execute.js DELETED
@@ -1,13 +0,0 @@
1
- import { sql } from 'drizzle-orm';
2
- export const execute = function execute({ db, drizzle, raw, sql: statement }) {
3
- const executeFrom = db ?? drizzle;
4
- if (raw) {
5
- const result = executeFrom.run(sql.raw(raw));
6
- return result;
7
- } else {
8
- const result = executeFrom.run(statement);
9
- return result;
10
- }
11
- };
12
-
13
- //# sourceMappingURL=execute.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/execute.ts"],"sourcesContent":["import { sql } from 'drizzle-orm'\n\nimport type { Execute } from './types.js'\n\nexport const execute: Execute<any> = function execute({ db, drizzle, raw, sql: statement }) {\n const executeFrom = (db ?? drizzle)!\n\n if (raw) {\n const result = executeFrom.run(sql.raw(raw))\n return result\n } else {\n const result = executeFrom.run(statement!)\n return result\n }\n}\n"],"names":["sql","execute","db","drizzle","raw","statement","executeFrom","result","run"],"mappings":"AAAA,SAASA,GAAG,QAAQ,cAAa;AAIjC,OAAO,MAAMC,UAAwB,SAASA,QAAQ,EAAEC,EAAE,EAAEC,OAAO,EAAEC,GAAG,EAAEJ,KAAKK,SAAS,EAAE;IACxF,MAAMC,cAAeJ,MAAMC;IAE3B,IAAIC,KAAK;QACP,MAAMG,SAASD,YAAYE,GAAG,CAACR,IAAII,GAAG,CAACA;QACvC,OAAOG;IACT,OAAO;QACL,MAAMA,SAASD,YAAYE,GAAG,CAACH;QAC/B,OAAOE;IACT;AACF,EAAC"}
package/dist/init.d.ts DELETED
@@ -1,3 +0,0 @@
1
- import type { Init } from 'payload';
2
- export declare const init: Init;
3
- //# sourceMappingURL=init.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AASnC,eAAO,MAAM,IAAI,EAAE,IAiClB,CAAA"}
package/dist/init.js DELETED
@@ -1,40 +0,0 @@
1
- import { buildDrizzleRelations, buildRawSchema, executeSchemaHooks } from '@payloadcms/drizzle';
2
- import { buildDrizzleTable } from './schema/buildDrizzleTable.js';
3
- import { setColumnID } from './schema/setColumnID.js';
4
- export const init = async function init() {
5
- let locales;
6
- this.rawRelations = {};
7
- this.rawTables = {};
8
- if (this.payload.config.localization) {
9
- locales = this.payload.config.localization.locales.map(({ code })=>code);
10
- }
11
- const adapter = this;
12
- buildRawSchema({
13
- adapter,
14
- setColumnID
15
- });
16
- await executeSchemaHooks({
17
- type: 'beforeSchemaInit',
18
- adapter: this
19
- });
20
- for(const tableName in this.rawTables){
21
- buildDrizzleTable({
22
- adapter,
23
- locales: locales,
24
- rawTable: this.rawTables[tableName]
25
- });
26
- }
27
- buildDrizzleRelations({
28
- adapter
29
- });
30
- await executeSchemaHooks({
31
- type: 'afterSchemaInit',
32
- adapter: this
33
- });
34
- this.schema = {
35
- ...this.tables,
36
- ...this.relations
37
- };
38
- };
39
-
40
- //# sourceMappingURL=init.js.map
package/dist/init.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/init.ts"],"sourcesContent":["import type { DrizzleAdapter } from '@payloadcms/drizzle/types'\nimport type { Init } from 'payload'\n\nimport { buildDrizzleRelations, buildRawSchema, executeSchemaHooks } from '@payloadcms/drizzle'\n\nimport type { SQLiteAdapter } from './types.js'\n\nimport { buildDrizzleTable } from './schema/buildDrizzleTable.js'\nimport { setColumnID } from './schema/setColumnID.js'\n\nexport const init: Init = async function init(this: SQLiteAdapter) {\n let locales: string[] | undefined\n\n this.rawRelations = {}\n this.rawTables = {}\n\n if (this.payload.config.localization) {\n locales = this.payload.config.localization.locales.map(({ code }) => code)\n }\n\n const adapter = this as unknown as DrizzleAdapter\n\n buildRawSchema({\n adapter,\n setColumnID,\n })\n\n await executeSchemaHooks({ type: 'beforeSchemaInit', adapter: this })\n\n for (const tableName in this.rawTables) {\n buildDrizzleTable({ adapter, locales: locales!, rawTable: this.rawTables[tableName]! })\n }\n\n buildDrizzleRelations({\n adapter,\n })\n\n await executeSchemaHooks({ type: 'afterSchemaInit', adapter: this })\n\n this.schema = {\n ...this.tables,\n ...this.relations,\n }\n}\n"],"names":["buildDrizzleRelations","buildRawSchema","executeSchemaHooks","buildDrizzleTable","setColumnID","init","locales","rawRelations","rawTables","payload","config","localization","map","code","adapter","type","tableName","rawTable","schema","tables","relations"],"mappings":"AAGA,SAASA,qBAAqB,EAAEC,cAAc,EAAEC,kBAAkB,QAAQ,sBAAqB;AAI/F,SAASC,iBAAiB,QAAQ,gCAA+B;AACjE,SAASC,WAAW,QAAQ,0BAAyB;AAErD,OAAO,MAAMC,OAAa,eAAeA;IACvC,IAAIC;IAEJ,IAAI,CAACC,YAAY,GAAG,CAAC;IACrB,IAAI,CAACC,SAAS,GAAG,CAAC;IAElB,IAAI,IAAI,CAACC,OAAO,CAACC,MAAM,CAACC,YAAY,EAAE;QACpCL,UAAU,IAAI,CAACG,OAAO,CAACC,MAAM,CAACC,YAAY,CAACL,OAAO,CAACM,GAAG,CAAC,CAAC,EAAEC,IAAI,EAAE,GAAKA;IACvE;IAEA,MAAMC,UAAU,IAAI;IAEpBb,eAAe;QACba;QACAV;IACF;IAEA,MAAMF,mBAAmB;QAAEa,MAAM;QAAoBD,SAAS,IAAI;IAAC;IAEnE,IAAK,MAAME,aAAa,IAAI,CAACR,SAAS,CAAE;QACtCL,kBAAkB;YAAEW;YAASR,SAASA;YAAUW,UAAU,IAAI,CAACT,SAAS,CAACQ,UAAU;QAAE;IACvF;IAEAhB,sBAAsB;QACpBc;IACF;IAEA,MAAMZ,mBAAmB;QAAEa,MAAM;QAAmBD,SAAS,IAAI;IAAC;IAElE,IAAI,CAACI,MAAM,GAAG;QACZ,GAAG,IAAI,CAACC,MAAM;QACd,GAAG,IAAI,CAACC,SAAS;IACnB;AACF,EAAC"}
package/dist/insert.d.ts DELETED
@@ -1,3 +0,0 @@
1
- import type { Insert } from './types.js';
2
- export declare const insert: Insert;
3
- //# sourceMappingURL=insert.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"insert.d.ts","sourceRoot":"","sources":["../src/insert.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAiB,MAAM,YAAY,CAAA;AAEvD,eAAO,MAAM,MAAM,EAAE,MAcpB,CAAA"}
package/dist/insert.js DELETED
@@ -1,8 +0,0 @@
1
- export const insert = async function({ db, onConflictDoUpdate, tableName, values }) {
2
- const table = this.tables[tableName];
3
- const result = onConflictDoUpdate ? await db.insert(table).values(values).onConflictDoUpdate(onConflictDoUpdate).returning() : await db.insert(table).values(values).returning();
4
- // See https://github.com/payloadcms/payload/pull/11831#discussion_r2010431908
5
- return result;
6
- };
7
-
8
- //# sourceMappingURL=insert.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/insert.ts"],"sourcesContent":["import type { Insert, SQLiteAdapter } from './types.js'\n\nexport const insert: Insert = async function (\n // Here 'this' is not a parameter. See:\n // https://www.typescriptlang.org/docs/handbook/2/classes.html#this-parameters\n this: SQLiteAdapter,\n { db, onConflictDoUpdate, tableName, values },\n): Promise<Record<string, unknown>[]> {\n const table = this.tables[tableName]\n\n const result = onConflictDoUpdate\n ? await db.insert(table).values(values).onConflictDoUpdate(onConflictDoUpdate).returning()\n : await db.insert(table).values(values).returning()\n\n // See https://github.com/payloadcms/payload/pull/11831#discussion_r2010431908\n return result as Record<string, unknown>[]\n}\n"],"names":["insert","db","onConflictDoUpdate","tableName","values","table","tables","result","returning"],"mappings":"AAEA,OAAO,MAAMA,SAAiB,eAI5B,EAAEC,EAAE,EAAEC,kBAAkB,EAAEC,SAAS,EAAEC,MAAM,EAAE;IAE7C,MAAMC,QAAQ,IAAI,CAACC,MAAM,CAACH,UAAU;IAEpC,MAAMI,SAASL,qBACX,MAAMD,GAAGD,MAAM,CAACK,OAAOD,MAAM,CAACA,QAAQF,kBAAkB,CAACA,oBAAoBM,SAAS,KACtF,MAAMP,GAAGD,MAAM,CAACK,OAAOD,MAAM,CAACA,QAAQI,SAAS;IAEnD,8EAA8E;IAC9E,OAAOD;AACT,EAAC"}
@@ -1,3 +0,0 @@
1
- import type { RequireDrizzleKit } from '@payloadcms/drizzle/types';
2
- export declare const requireDrizzleKit: RequireDrizzleKit;
3
- //# sourceMappingURL=requireDrizzleKit.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"requireDrizzleKit.d.ts","sourceRoot":"","sources":["../src/requireDrizzleKit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAMlE,eAAO,MAAM,iBAAiB,EAAE,iBAY/B,CAAA"}
@@ -1,12 +0,0 @@
1
- import { createRequire } from 'module';
2
- const require = createRequire(import.meta.url);
3
- export const requireDrizzleKit = ()=>{
4
- const { generateSQLiteDrizzleJson, generateSQLiteMigration, pushSQLiteSchema } = require('drizzle-kit/api');
5
- return {
6
- generateDrizzleJson: generateSQLiteDrizzleJson,
7
- generateMigration: generateSQLiteMigration,
8
- pushSchema: pushSQLiteSchema
9
- };
10
- };
11
-
12
- //# sourceMappingURL=requireDrizzleKit.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/requireDrizzleKit.ts"],"sourcesContent":["import type { RequireDrizzleKit } from '@payloadcms/drizzle/types'\n\nimport { createRequire } from 'module'\n\nconst require = createRequire(import.meta.url)\n\nexport const requireDrizzleKit: RequireDrizzleKit = () => {\n const {\n generateSQLiteDrizzleJson,\n generateSQLiteMigration,\n pushSQLiteSchema,\n } = require('drizzle-kit/api')\n\n return {\n generateDrizzleJson: generateSQLiteDrizzleJson,\n generateMigration: generateSQLiteMigration,\n pushSchema: pushSQLiteSchema,\n }\n}\n"],"names":["createRequire","require","url","requireDrizzleKit","generateSQLiteDrizzleJson","generateSQLiteMigration","pushSQLiteSchema","generateDrizzleJson","generateMigration","pushSchema"],"mappings":"AAEA,SAASA,aAAa,QAAQ,SAAQ;AAEtC,MAAMC,UAAUD,cAAc,YAAYE,GAAG;AAE7C,OAAO,MAAMC,oBAAuC;IAClD,MAAM,EACJC,yBAAyB,EACzBC,uBAAuB,EACvBC,gBAAgB,EACjB,GAAGL,QAAQ;IAEZ,OAAO;QACLM,qBAAqBH;QACrBI,mBAAmBH;QACnBI,YAAYH;IACd;AACF,EAAC"}
@@ -1,3 +0,0 @@
1
- import type { BuildDrizzleTable } from '@payloadcms/drizzle/types';
2
- export declare const buildDrizzleTable: BuildDrizzleTable;
3
- //# sourceMappingURL=buildDrizzleTable.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"buildDrizzleTable.d.ts","sourceRoot":"","sources":["../../src/schema/buildDrizzleTable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAa,MAAM,2BAA2B,CAAA;AAqB7E,eAAO,MAAM,iBAAiB,EAAE,iBA8I/B,CAAA"}
@@ -1,143 +0,0 @@
1
- import { sql } from 'drizzle-orm';
2
- import { foreignKey, index, integer, numeric, sqliteTable, text, uniqueIndex } from 'drizzle-orm/sqlite-core';
3
- import { v4 as uuidv4 } from 'uuid';
4
- const rawColumnBuilderMap = {
5
- integer,
6
- numeric,
7
- text
8
- };
9
- export const buildDrizzleTable = ({ adapter, locales, rawTable })=>{
10
- const columns = {};
11
- for (const [key, column] of Object.entries(rawTable.columns)){
12
- switch(column.type){
13
- case 'boolean':
14
- {
15
- columns[key] = integer(column.name, {
16
- mode: 'boolean'
17
- });
18
- break;
19
- }
20
- case 'enum':
21
- if ('locale' in column) {
22
- columns[key] = text(column.name, {
23
- enum: locales
24
- });
25
- } else {
26
- columns[key] = text(column.name, {
27
- enum: column.options
28
- });
29
- }
30
- break;
31
- case 'geometry':
32
- case 'jsonb':
33
- {
34
- columns[key] = text(column.name, {
35
- mode: 'json'
36
- });
37
- break;
38
- }
39
- case 'serial':
40
- {
41
- columns[key] = integer(column.name);
42
- break;
43
- }
44
- case 'timestamp':
45
- {
46
- let builder = text(column.name);
47
- if (column.defaultNow) {
48
- builder = builder.default(sql`(strftime('%Y-%m-%dT%H:%M:%fZ', 'now'))`);
49
- }
50
- columns[key] = builder;
51
- break;
52
- }
53
- case 'uuid':
54
- {
55
- let builder = text(column.name, {
56
- length: 36
57
- });
58
- if (column.defaultRandom) {
59
- builder = builder.$defaultFn(()=>uuidv4());
60
- }
61
- columns[key] = builder;
62
- break;
63
- }
64
- case 'varchar':
65
- {
66
- columns[key] = text(column.name);
67
- break;
68
- }
69
- default:
70
- columns[key] = rawColumnBuilderMap[column.type](column.name);
71
- break;
72
- }
73
- if (column.reference) {
74
- const ref = column.reference;
75
- columns[key].references(()=>adapter.tables[ref.table][ref.name], {
76
- onDelete: ref.onDelete
77
- });
78
- }
79
- if (column.primaryKey) {
80
- let args = undefined;
81
- if (column.type === 'integer' && column.autoIncrement) {
82
- args = {
83
- autoIncrement: true
84
- };
85
- }
86
- columns[key].primaryKey(args);
87
- }
88
- if (column.notNull) {
89
- columns[key].notNull();
90
- }
91
- if (typeof column.default !== 'undefined') {
92
- let sanitizedDefault = column.default;
93
- if (column.type === 'geometry' && Array.isArray(column.default)) {
94
- sanitizedDefault = JSON.stringify({
95
- type: 'Point',
96
- coordinates: [
97
- column.default[0],
98
- column.default[1]
99
- ]
100
- });
101
- }
102
- columns[key].default(sanitizedDefault);
103
- }
104
- }
105
- const extraConfig = (cols)=>{
106
- const config = {};
107
- if (rawTable.indexes) {
108
- for (const [key, rawIndex] of Object.entries(rawTable.indexes)){
109
- let fn = index;
110
- if (rawIndex.unique) {
111
- fn = uniqueIndex;
112
- }
113
- if (Array.isArray(rawIndex.on)) {
114
- if (rawIndex.on.length) {
115
- config[key] = fn(rawIndex.name).on(...rawIndex.on.map((colName)=>cols[colName]));
116
- }
117
- } else {
118
- config[key] = fn(rawIndex.name).on(cols[rawIndex.on]);
119
- }
120
- }
121
- }
122
- if (rawTable.foreignKeys) {
123
- for (const [key, rawForeignKey] of Object.entries(rawTable.foreignKeys)){
124
- let builder = foreignKey({
125
- name: rawForeignKey.name,
126
- columns: rawForeignKey.columns.map((colName)=>cols[colName]),
127
- foreignColumns: rawForeignKey.foreignColumns.map((column)=>adapter.tables[column.table][column.name])
128
- });
129
- if (rawForeignKey.onDelete) {
130
- builder = builder.onDelete(rawForeignKey.onDelete);
131
- }
132
- if (rawForeignKey.onUpdate) {
133
- builder = builder.onDelete(rawForeignKey.onUpdate);
134
- }
135
- config[key] = builder;
136
- }
137
- }
138
- return config;
139
- };
140
- adapter.tables[rawTable.name] = sqliteTable(rawTable.name, columns, extraConfig);
141
- };
142
-
143
- //# sourceMappingURL=buildDrizzleTable.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/schema/buildDrizzleTable.ts"],"sourcesContent":["import type { BuildDrizzleTable, RawColumn } from '@payloadcms/drizzle/types'\nimport type { ForeignKeyBuilder, IndexBuilder } from 'drizzle-orm/sqlite-core'\n\nimport { sql } from 'drizzle-orm'\nimport {\n foreignKey,\n index,\n integer,\n numeric,\n sqliteTable,\n text,\n uniqueIndex,\n} from 'drizzle-orm/sqlite-core'\nimport { v4 as uuidv4 } from 'uuid'\n\nconst rawColumnBuilderMap: Partial<Record<RawColumn['type'], any>> = {\n integer,\n numeric,\n text,\n}\n\nexport const buildDrizzleTable: BuildDrizzleTable = ({ adapter, locales, rawTable }) => {\n const columns: Record<string, any> = {}\n\n for (const [key, column] of Object.entries(rawTable.columns)) {\n switch (column.type) {\n case 'boolean': {\n columns[key] = integer(column.name, { mode: 'boolean' })\n break\n }\n\n case 'enum':\n if ('locale' in column) {\n columns[key] = text(column.name, { enum: locales as [string, ...string[]] })\n } else {\n columns[key] = text(column.name, { enum: column.options as [string, ...string[]] })\n }\n break\n\n case 'geometry':\n case 'jsonb': {\n columns[key] = text(column.name, { mode: 'json' })\n break\n }\n\n case 'serial': {\n columns[key] = integer(column.name)\n break\n }\n\n case 'timestamp': {\n let builder = text(column.name)\n\n if (column.defaultNow) {\n builder = builder.default(sql`(strftime('%Y-%m-%dT%H:%M:%fZ', 'now'))`)\n }\n\n columns[key] = builder\n break\n }\n\n case 'uuid': {\n let builder = text(column.name, { length: 36 })\n\n if (column.defaultRandom) {\n builder = builder.$defaultFn(() => uuidv4())\n }\n\n columns[key] = builder\n break\n }\n\n case 'varchar': {\n columns[key] = text(column.name)\n break\n }\n\n default:\n columns[key] = rawColumnBuilderMap[column.type](column.name)\n break\n }\n\n if (column.reference) {\n const ref = column.reference\n columns[key].references(() => adapter.tables[ref.table][ref.name], {\n onDelete: ref.onDelete,\n })\n }\n\n if (column.primaryKey) {\n let args: Record<string, unknown> | undefined = undefined\n\n if (column.type === 'integer' && column.autoIncrement) {\n args = { autoIncrement: true }\n }\n\n columns[key].primaryKey(args)\n }\n\n if (column.notNull) {\n columns[key].notNull()\n }\n\n if (typeof column.default !== 'undefined') {\n let sanitizedDefault = column.default\n\n if (column.type === 'geometry' && Array.isArray(column.default)) {\n sanitizedDefault = JSON.stringify({\n type: 'Point',\n coordinates: [column.default[0], column.default[1]],\n })\n }\n\n columns[key].default(sanitizedDefault)\n }\n }\n\n const extraConfig = (cols: any) => {\n const config: Record<string, ForeignKeyBuilder | IndexBuilder> = {}\n\n if (rawTable.indexes) {\n for (const [key, rawIndex] of Object.entries(rawTable.indexes)) {\n let fn: any = index\n if (rawIndex.unique) {\n fn = uniqueIndex\n }\n\n if (Array.isArray(rawIndex.on)) {\n if (rawIndex.on.length) {\n config[key] = fn(rawIndex.name).on(...rawIndex.on.map((colName) => cols[colName]))\n }\n } else {\n config[key] = fn(rawIndex.name).on(cols[rawIndex.on])\n }\n }\n }\n\n if (rawTable.foreignKeys) {\n for (const [key, rawForeignKey] of Object.entries(rawTable.foreignKeys)) {\n let builder = foreignKey({\n name: rawForeignKey.name,\n columns: rawForeignKey.columns.map((colName) => cols[colName]) as any,\n foreignColumns: rawForeignKey.foreignColumns.map(\n (column) => adapter.tables[column.table][column.name],\n ),\n })\n\n if (rawForeignKey.onDelete) {\n builder = builder.onDelete(rawForeignKey.onDelete)\n }\n\n if (rawForeignKey.onUpdate) {\n builder = builder.onDelete(rawForeignKey.onUpdate)\n }\n\n config[key] = builder\n }\n }\n\n return config\n }\n\n adapter.tables[rawTable.name] = sqliteTable(rawTable.name, columns as any, extraConfig as any)\n}\n"],"names":["sql","foreignKey","index","integer","numeric","sqliteTable","text","uniqueIndex","v4","uuidv4","rawColumnBuilderMap","buildDrizzleTable","adapter","locales","rawTable","columns","key","column","Object","entries","type","name","mode","enum","options","builder","defaultNow","default","length","defaultRandom","$defaultFn","reference","ref","references","tables","table","onDelete","primaryKey","args","undefined","autoIncrement","notNull","sanitizedDefault","Array","isArray","JSON","stringify","coordinates","extraConfig","cols","config","indexes","rawIndex","fn","unique","on","map","colName","foreignKeys","rawForeignKey","foreignColumns","onUpdate"],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import type { SetColumnID } from '@payloadcms/drizzle/types';
2
- export declare const setColumnID: SetColumnID;
3
- //# sourceMappingURL=setColumnID.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"setColumnID.d.ts","sourceRoot":"","sources":["../../src/schema/setColumnID.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AAI5D,eAAO,MAAM,WAAW,EAAE,WAyCzB,CAAA"}
@@ -1,39 +0,0 @@
1
- export const setColumnID = ({ adapter, columns, fields })=>{
2
- const idField = fields.find((field)=>field.name === 'id');
3
- if (idField) {
4
- if (idField.type === 'number') {
5
- columns.id = {
6
- name: 'id',
7
- type: 'numeric',
8
- primaryKey: true
9
- };
10
- return 'numeric';
11
- }
12
- if (idField.type === 'text') {
13
- columns.id = {
14
- name: 'id',
15
- type: 'text',
16
- primaryKey: true
17
- };
18
- return 'text';
19
- }
20
- }
21
- if (adapter.idType === 'uuid') {
22
- columns.id = {
23
- name: 'id',
24
- type: 'uuid',
25
- defaultRandom: true,
26
- primaryKey: true
27
- };
28
- return 'uuid';
29
- }
30
- columns.id = {
31
- name: 'id',
32
- type: 'integer',
33
- autoIncrement: adapter.autoIncrement,
34
- primaryKey: true
35
- };
36
- return 'integer';
37
- };
38
-
39
- //# sourceMappingURL=setColumnID.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/schema/setColumnID.ts"],"sourcesContent":["import type { SetColumnID } from '@payloadcms/drizzle/types'\n\nimport type { SQLiteAdapter } from '../types.js'\n\nexport const setColumnID: SetColumnID = ({ adapter, columns, fields }) => {\n const idField = fields.find((field) => field.name === 'id')\n if (idField) {\n if (idField.type === 'number') {\n columns.id = {\n name: 'id',\n type: 'numeric',\n primaryKey: true,\n }\n return 'numeric'\n }\n\n if (idField.type === 'text') {\n columns.id = {\n name: 'id',\n type: 'text',\n primaryKey: true,\n }\n return 'text'\n }\n }\n\n if (adapter.idType === 'uuid') {\n columns.id = {\n name: 'id',\n type: 'uuid',\n defaultRandom: true,\n primaryKey: true,\n }\n\n return 'uuid'\n }\n\n columns.id = {\n name: 'id',\n type: 'integer',\n autoIncrement: (adapter as unknown as SQLiteAdapter).autoIncrement,\n primaryKey: true,\n }\n\n return 'integer'\n}\n"],"names":["setColumnID","adapter","columns","fields","idField","find","field","name","type","id","primaryKey","idType","defaultRandom","autoIncrement"],"mappings":"AAIA,OAAO,MAAMA,cAA2B,CAAC,EAAEC,OAAO,EAAEC,OAAO,EAAEC,MAAM,EAAE;IACnE,MAAMC,UAAUD,OAAOE,IAAI,CAAC,CAACC,QAAUA,MAAMC,IAAI,KAAK;IACtD,IAAIH,SAAS;QACX,IAAIA,QAAQI,IAAI,KAAK,UAAU;YAC7BN,QAAQO,EAAE,GAAG;gBACXF,MAAM;gBACNC,MAAM;gBACNE,YAAY;YACd;YACA,OAAO;QACT;QAEA,IAAIN,QAAQI,IAAI,KAAK,QAAQ;YAC3BN,QAAQO,EAAE,GAAG;gBACXF,MAAM;gBACNC,MAAM;gBACNE,YAAY;YACd;YACA,OAAO;QACT;IACF;IAEA,IAAIT,QAAQU,MAAM,KAAK,QAAQ;QAC7BT,QAAQO,EAAE,GAAG;YACXF,MAAM;YACNC,MAAM;YACNI,eAAe;YACfF,YAAY;QACd;QAEA,OAAO;IACT;IAEAR,QAAQO,EAAE,GAAG;QACXF,MAAM;QACNC,MAAM;QACNK,eAAe,AAACZ,QAAqCY,aAAa;QAClEH,YAAY;IACd;IAEA,OAAO;AACT,EAAC"}