@payloadcms/drizzle 4.0.0-canary.26 → 4.0.0-canary.28

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 (45) hide show
  1. package/dist/exports/postgres.d.ts +2 -0
  2. package/dist/exports/postgres.d.ts.map +1 -1
  3. package/dist/exports/postgres.js +2 -0
  4. package/dist/exports/postgres.js.map +1 -1
  5. package/dist/index.d.ts +3 -2
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +1 -0
  8. package/dist/index.js.map +1 -1
  9. package/dist/postgres/query/assertOperatorHandlerExtensionsInstalled.d.ts +15 -0
  10. package/dist/postgres/query/assertOperatorHandlerExtensionsInstalled.d.ts.map +1 -0
  11. package/dist/postgres/query/assertOperatorHandlerExtensionsInstalled.js +25 -0
  12. package/dist/postgres/query/assertOperatorHandlerExtensionsInstalled.js.map +1 -0
  13. package/dist/postgres/query/assertOperatorHandlerExtensionsInstalled.spec.js +91 -0
  14. package/dist/postgres/query/assertOperatorHandlerExtensionsInstalled.spec.js.map +1 -0
  15. package/dist/postgres/query/postgresUnaccent.d.ts +13 -0
  16. package/dist/postgres/query/postgresUnaccent.d.ts.map +1 -0
  17. package/dist/postgres/query/postgresUnaccent.js +40 -0
  18. package/dist/postgres/query/postgresUnaccent.js.map +1 -0
  19. package/dist/postgres/query/postgresUnaccent.spec.js +71 -0
  20. package/dist/postgres/query/postgresUnaccent.spec.js.map +1 -0
  21. package/dist/postgres/types.d.ts +13 -2
  22. package/dist/postgres/types.d.ts.map +1 -1
  23. package/dist/postgres/types.js.map +1 -1
  24. package/dist/queries/buildOperatorConstraint.d.ts +22 -0
  25. package/dist/queries/buildOperatorConstraint.d.ts.map +1 -0
  26. package/dist/queries/buildOperatorConstraint.js +63 -0
  27. package/dist/queries/buildOperatorConstraint.js.map +1 -0
  28. package/dist/queries/buildOperatorConstraint.spec.js +348 -0
  29. package/dist/queries/buildOperatorConstraint.spec.js.map +1 -0
  30. package/dist/queries/operatorMap.d.ts +7 -3
  31. package/dist/queries/operatorMap.d.ts.map +1 -1
  32. package/dist/queries/operatorMap.js.map +1 -1
  33. package/dist/queries/parseParams.d.ts.map +1 -1
  34. package/dist/queries/parseParams.js +53 -6
  35. package/dist/queries/parseParams.js.map +1 -1
  36. package/dist/queries/validateOperatorHandlers.d.ts +8 -0
  37. package/dist/queries/validateOperatorHandlers.d.ts.map +1 -0
  38. package/dist/queries/validateOperatorHandlers.js +30 -0
  39. package/dist/queries/validateOperatorHandlers.js.map +1 -0
  40. package/dist/queries/validateOperatorHandlers.spec.js +142 -0
  41. package/dist/queries/validateOperatorHandlers.spec.js.map +1 -0
  42. package/dist/types.d.ts +50 -2
  43. package/dist/types.d.ts.map +1 -1
  44. package/dist/types.js.map +1 -1
  45. package/package.json +3 -3
@@ -11,6 +11,8 @@ export { init } from '../postgres/init.js';
11
11
  export { insert } from '../postgres/insert.js';
12
12
  export { migratePostgresLocalizeStatus } from '../postgres/predefinedMigrations/localize-status/index.js';
13
13
  export { migratePostgresV2toV3 } from '../postgres/predefinedMigrations/v2-v3/index.js';
14
+ export { assertOperatorHandlerExtensionsInstalled } from '../postgres/query/assertOperatorHandlerExtensionsInstalled.js';
15
+ export { postgresUnaccent } from '../postgres/query/postgresUnaccent.js';
14
16
  export { requireDrizzleKit } from '../postgres/requireDrizzleKit.js';
15
17
  export { geometryColumn } from '../postgres/schema/geometryColumn.js';
16
18
  export * from '../postgres/types.js';
@@ -1 +1 @@
1
- {"version":3,"file":"postgres.d.ts","sourceRoot":"","sources":["../../src/exports/postgres.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAA;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAA;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAA;AACvE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAE,6BAA6B,EAAE,MAAM,2DAA2D,CAAA;AACzG,OAAO,EAAE,qBAAqB,EAAE,MAAM,iDAAiD,CAAA;AACvF,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAA;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAA;AACrE,cAAc,sBAAsB,CAAA"}
1
+ {"version":3,"file":"postgres.d.ts","sourceRoot":"","sources":["../../src/exports/postgres.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAA;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAA;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAA;AACvE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAE,6BAA6B,EAAE,MAAM,2DAA2D,CAAA;AACzG,OAAO,EAAE,qBAAqB,EAAE,MAAM,iDAAiD,CAAA;AACvF,OAAO,EAAE,wCAAwC,EAAE,MAAM,+DAA+D,CAAA;AACxH,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAA;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAA;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAA;AACrE,cAAc,sBAAsB,CAAA"}
@@ -11,6 +11,8 @@ export { init } from '../postgres/init.js';
11
11
  export { insert } from '../postgres/insert.js';
12
12
  export { migratePostgresLocalizeStatus } from '../postgres/predefinedMigrations/localize-status/index.js';
13
13
  export { migratePostgresV2toV3 } from '../postgres/predefinedMigrations/v2-v3/index.js';
14
+ export { assertOperatorHandlerExtensionsInstalled } from '../postgres/query/assertOperatorHandlerExtensionsInstalled.js';
15
+ export { postgresUnaccent } from '../postgres/query/postgresUnaccent.js';
14
16
  export { requireDrizzleKit } from '../postgres/requireDrizzleKit.js';
15
17
  export { geometryColumn } from '../postgres/schema/geometryColumn.js';
16
18
  export * from '../postgres/types.js';
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/exports/postgres.ts"],"sourcesContent":["export { columnToCodeConverter } from '../postgres/columnToCodeConverter.js'\nexport { countDistinct } from '../postgres/countDistinct.js'\nexport { createDatabase } from '../postgres/createDatabase.js'\nexport { createExtensions } from '../postgres/createExtensions.js'\nexport { createJSONQuery } from '../postgres/createJSONQuery/index.js'\nexport { defaultDrizzleSnapshot } from '../postgres/defaultSnapshot.js'\nexport { deleteWhere } from '../postgres/deleteWhere.js'\nexport { dropDatabase } from '../postgres/dropDatabase.js'\nexport { execute } from '../postgres/execute.js'\nexport { init } from '../postgres/init.js'\nexport { insert } from '../postgres/insert.js'\nexport { migratePostgresLocalizeStatus } from '../postgres/predefinedMigrations/localize-status/index.js'\nexport { migratePostgresV2toV3 } from '../postgres/predefinedMigrations/v2-v3/index.js'\nexport { requireDrizzleKit } from '../postgres/requireDrizzleKit.js'\nexport { geometryColumn } from '../postgres/schema/geometryColumn.js'\nexport * from '../postgres/types.js'\n"],"names":["columnToCodeConverter","countDistinct","createDatabase","createExtensions","createJSONQuery","defaultDrizzleSnapshot","deleteWhere","dropDatabase","execute","init","insert","migratePostgresLocalizeStatus","migratePostgresV2toV3","requireDrizzleKit","geometryColumn"],"mappings":"AAAA,SAASA,qBAAqB,QAAQ,uCAAsC;AAC5E,SAASC,aAAa,QAAQ,+BAA8B;AAC5D,SAASC,cAAc,QAAQ,gCAA+B;AAC9D,SAASC,gBAAgB,QAAQ,kCAAiC;AAClE,SAASC,eAAe,QAAQ,uCAAsC;AACtE,SAASC,sBAAsB,QAAQ,iCAAgC;AACvE,SAASC,WAAW,QAAQ,6BAA4B;AACxD,SAASC,YAAY,QAAQ,8BAA6B;AAC1D,SAASC,OAAO,QAAQ,yBAAwB;AAChD,SAASC,IAAI,QAAQ,sBAAqB;AAC1C,SAASC,MAAM,QAAQ,wBAAuB;AAC9C,SAASC,6BAA6B,QAAQ,4DAA2D;AACzG,SAASC,qBAAqB,QAAQ,kDAAiD;AACvF,SAASC,iBAAiB,QAAQ,mCAAkC;AACpE,SAASC,cAAc,QAAQ,uCAAsC;AACrE,cAAc,uBAAsB"}
1
+ {"version":3,"sources":["../../src/exports/postgres.ts"],"sourcesContent":["export { columnToCodeConverter } from '../postgres/columnToCodeConverter.js'\nexport { countDistinct } from '../postgres/countDistinct.js'\nexport { createDatabase } from '../postgres/createDatabase.js'\nexport { createExtensions } from '../postgres/createExtensions.js'\nexport { createJSONQuery } from '../postgres/createJSONQuery/index.js'\nexport { defaultDrizzleSnapshot } from '../postgres/defaultSnapshot.js'\nexport { deleteWhere } from '../postgres/deleteWhere.js'\nexport { dropDatabase } from '../postgres/dropDatabase.js'\nexport { execute } from '../postgres/execute.js'\nexport { init } from '../postgres/init.js'\nexport { insert } from '../postgres/insert.js'\nexport { migratePostgresLocalizeStatus } from '../postgres/predefinedMigrations/localize-status/index.js'\nexport { migratePostgresV2toV3 } from '../postgres/predefinedMigrations/v2-v3/index.js'\nexport { assertOperatorHandlerExtensionsInstalled } from '../postgres/query/assertOperatorHandlerExtensionsInstalled.js'\nexport { postgresUnaccent } from '../postgres/query/postgresUnaccent.js'\nexport { requireDrizzleKit } from '../postgres/requireDrizzleKit.js'\nexport { geometryColumn } from '../postgres/schema/geometryColumn.js'\nexport * from '../postgres/types.js'\n"],"names":["columnToCodeConverter","countDistinct","createDatabase","createExtensions","createJSONQuery","defaultDrizzleSnapshot","deleteWhere","dropDatabase","execute","init","insert","migratePostgresLocalizeStatus","migratePostgresV2toV3","assertOperatorHandlerExtensionsInstalled","postgresUnaccent","requireDrizzleKit","geometryColumn"],"mappings":"AAAA,SAASA,qBAAqB,QAAQ,uCAAsC;AAC5E,SAASC,aAAa,QAAQ,+BAA8B;AAC5D,SAASC,cAAc,QAAQ,gCAA+B;AAC9D,SAASC,gBAAgB,QAAQ,kCAAiC;AAClE,SAASC,eAAe,QAAQ,uCAAsC;AACtE,SAASC,sBAAsB,QAAQ,iCAAgC;AACvE,SAASC,WAAW,QAAQ,6BAA4B;AACxD,SAASC,YAAY,QAAQ,8BAA6B;AAC1D,SAASC,OAAO,QAAQ,yBAAwB;AAChD,SAASC,IAAI,QAAQ,sBAAqB;AAC1C,SAASC,MAAM,QAAQ,wBAAuB;AAC9C,SAASC,6BAA6B,QAAQ,4DAA2D;AACzG,SAASC,qBAAqB,QAAQ,kDAAiD;AACvF,SAASC,wCAAwC,QAAQ,gEAA+D;AACxH,SAASC,gBAAgB,QAAQ,wCAAuC;AACxE,SAASC,iBAAiB,QAAQ,mCAAkC;AACpE,SAASC,cAAc,QAAQ,uCAAsC;AACrE,cAAc,uBAAsB"}
package/dist/index.d.ts CHANGED
@@ -24,15 +24,16 @@ export { migrateReset } from './migrateReset.js';
24
24
  export { migrateStatus } from './migrateStatus.js';
25
25
  export { buildQuery } from './queries/buildQuery.js';
26
26
  export { operatorMap } from './queries/operatorMap.js';
27
- export type { Operators } from './queries/operatorMap.js';
27
+ export type { DrizzleResolvedOperator, Operators } from './queries/operatorMap.js';
28
28
  export { parseParams } from './queries/parseParams.js';
29
+ export { validateOperatorHandlers } from './queries/validateOperatorHandlers.js';
29
30
  export { queryDrafts } from './queryDrafts.js';
30
31
  export { buildDrizzleRelations } from './schema/buildDrizzleRelations.js';
31
32
  export { buildRawSchema } from './schema/buildRawSchema.js';
32
33
  export { beginTransaction } from './transactions/beginTransaction.js';
33
34
  export { commitTransaction } from './transactions/commitTransaction.js';
34
35
  export { rollbackTransaction } from './transactions/rollbackTransaction.js';
35
- export type { BaseRawColumn, BlocksToJsonMigrator, BuildDrizzleTable, BuildQueryJoinAliases, ColumnToCodeConverter, CountDistinct, CreateJSONQueryArgs, DeleteWhere, DrizzleAdapter, DrizzleTransaction, DropDatabase, EnumRawColumn, Execute, GenericColumn, GenericColumns, GenericPgColumn, GenericRelation, GenericTable, IDType, Insert, IntegerRawColumn, Migration, PostgresDB, RawColumn, RawForeignKey, RawIndex, RawRelation, RawTable, RelationMap, RequireDrizzleKit, SetColumnID, SQLiteDB, TimestampRawColumn, TransactionPg, TransactionSQLite, UUIDRawColumn, VectorRawColumn, } from './types.js';
36
+ export type { BaseRawColumn, BlocksToJsonMigrator, BuildDrizzleTable, BuildQueryJoinAliases, ColumnToCodeConverter, CountDistinct, CreateJSONQueryArgs, DeleteWhere, DrizzleAdapter, DrizzleOperandTransformHandler, DrizzleOperatorHandler, DrizzleOperatorHandlerContext, DrizzleOperatorReplacementHandler, DrizzleQueryConfig, DrizzleTransaction, DropDatabase, EnumRawColumn, Execute, GenericColumn, GenericColumns, GenericPgColumn, GenericRelation, GenericTable, IDType, Insert, IntegerRawColumn, Migration, PostgresDB, RawColumn, RawForeignKey, RawIndex, RawRelation, RawTable, RelationMap, RequireDrizzleKit, SetColumnID, SQLiteDB, TimestampRawColumn, TransactionPg, TransactionSQLite, UUIDRawColumn, VectorRawColumn, } from './types.js';
36
37
  export { updateGlobal } from './updateGlobal.js';
37
38
  export { updateGlobalVersion } from './updateGlobalVersion.js';
38
39
  export { updateJobs } from './updateJobs.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -25,6 +25,7 @@ export { migrateStatus } from './migrateStatus.js';
25
25
  export { buildQuery } from './queries/buildQuery.js';
26
26
  export { operatorMap } from './queries/operatorMap.js';
27
27
  export { parseParams } from './queries/parseParams.js';
28
+ export { validateOperatorHandlers } from './queries/validateOperatorHandlers.js';
28
29
  export { queryDrafts } from './queryDrafts.js';
29
30
  export { buildDrizzleRelations } from './schema/buildDrizzleRelations.js';
30
31
  export { buildRawSchema } from './schema/buildRawSchema.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"sourcesContent":["export { count } from './count.js'\nexport { countGlobalVersions } from './countGlobalVersions.js'\nexport { countVersions } from './countVersions.js'\nexport { create } from './create.js'\nexport { createGlobal } from './createGlobal.js'\nexport { createGlobalVersion } from './createGlobalVersion.js'\nexport { createTableName } from './createTableName.js'\nexport { createVersion } from './createVersion.js'\nexport { deleteMany } from './deleteMany.js'\nexport { deleteOne } from './deleteOne.js'\nexport { deleteVersions } from './deleteVersions.js'\nexport { destroy } from './destroy.js'\nexport { find } from './find.js'\nexport { findDistinct } from './findDistinct.js'\nexport { findGlobal } from './findGlobal.js'\nexport { findGlobalVersions } from './findGlobalVersions.js'\nexport { findOne } from './findOne.js'\nexport { findVersions } from './findVersions.js'\nexport { migrate } from './migrate.js'\nexport { migrateDown } from './migrateDown.js'\nexport { migrateFresh } from './migrateFresh.js'\nexport { migrateRefresh } from './migrateRefresh.js'\nexport { migrateReset } from './migrateReset.js'\nexport { migrateStatus } from './migrateStatus.js'\nexport { buildQuery } from './queries/buildQuery.js'\nexport { operatorMap } from './queries/operatorMap.js'\nexport type { Operators } from './queries/operatorMap.js'\nexport { parseParams } from './queries/parseParams.js'\nexport { queryDrafts } from './queryDrafts.js'\nexport { buildDrizzleRelations } from './schema/buildDrizzleRelations.js'\nexport { buildRawSchema } from './schema/buildRawSchema.js'\nexport { beginTransaction } from './transactions/beginTransaction.js'\nexport { commitTransaction } from './transactions/commitTransaction.js'\nexport { rollbackTransaction } from './transactions/rollbackTransaction.js'\nexport type {\n BaseRawColumn,\n BlocksToJsonMigrator,\n BuildDrizzleTable,\n BuildQueryJoinAliases,\n ColumnToCodeConverter,\n CountDistinct,\n CreateJSONQueryArgs,\n DeleteWhere,\n DrizzleAdapter,\n DrizzleTransaction,\n DropDatabase,\n EnumRawColumn,\n Execute,\n GenericColumn,\n GenericColumns,\n GenericPgColumn,\n GenericRelation,\n GenericTable,\n IDType,\n Insert,\n IntegerRawColumn,\n Migration,\n PostgresDB,\n RawColumn,\n RawForeignKey,\n RawIndex,\n RawRelation,\n RawTable,\n RelationMap,\n RequireDrizzleKit,\n SetColumnID,\n SQLiteDB,\n TimestampRawColumn,\n TransactionPg,\n TransactionSQLite,\n UUIDRawColumn,\n VectorRawColumn,\n} from './types.js'\nexport { updateGlobal } from './updateGlobal.js'\nexport { updateGlobalVersion } from './updateGlobalVersion.js'\nexport { updateJobs } from './updateJobs.js'\nexport { updateMany } from './updateMany.js'\nexport { updateOne } from './updateOne.js'\nexport { updateVersion } from './updateVersion.js'\nexport { upsert } from './upsert.js'\nexport { upsertRow } from './upsertRow/index.js'\nexport {\n buildDynamicPredefinedBlocksToJsonMigration,\n createBlocksToJsonMigrator,\n getBlocksToJsonMigrator,\n} from './utilities/blocksToJsonMigrator.js'\nexport { buildCreateMigration } from './utilities/buildCreateMigration.js'\nexport { buildIndexName } from './utilities/buildIndexName.js'\nexport { createSchemaGenerator } from './utilities/createSchemaGenerator.js'\nexport { executeSchemaHooks } from './utilities/executeSchemaHooks.js'\nexport { extendDrizzleTable } from './utilities/extendDrizzleTable.js'\nexport { hasLocalesTable } from './utilities/hasLocalesTable.js'\nexport { pushDevSchema } from './utilities/pushDevSchema.js'\nexport { validateExistingBlockIsIdentical } from './utilities/validateExistingBlockIsIdentical.js'\nimport { findMigrationDir as payloadFindMigrationDir } from 'payload'\n\n/**\n * @deprecated remove in 4.0\n * use\n * ```ts\n * import { findMigrationDir } from 'payload'\n * ```\n */\nexport const findMigrationDir = payloadFindMigrationDir\n"],"names":["count","countGlobalVersions","countVersions","create","createGlobal","createGlobalVersion","createTableName","createVersion","deleteMany","deleteOne","deleteVersions","destroy","find","findDistinct","findGlobal","findGlobalVersions","findOne","findVersions","migrate","migrateDown","migrateFresh","migrateRefresh","migrateReset","migrateStatus","buildQuery","operatorMap","parseParams","queryDrafts","buildDrizzleRelations","buildRawSchema","beginTransaction","commitTransaction","rollbackTransaction","updateGlobal","updateGlobalVersion","updateJobs","updateMany","updateOne","updateVersion","upsert","upsertRow","buildDynamicPredefinedBlocksToJsonMigration","createBlocksToJsonMigrator","getBlocksToJsonMigrator","buildCreateMigration","buildIndexName","createSchemaGenerator","executeSchemaHooks","extendDrizzleTable","hasLocalesTable","pushDevSchema","validateExistingBlockIsIdentical","findMigrationDir","payloadFindMigrationDir"],"mappings":"AAAA,SAASA,KAAK,QAAQ,aAAY;AAClC,SAASC,mBAAmB,QAAQ,2BAA0B;AAC9D,SAASC,aAAa,QAAQ,qBAAoB;AAClD,SAASC,MAAM,QAAQ,cAAa;AACpC,SAASC,YAAY,QAAQ,oBAAmB;AAChD,SAASC,mBAAmB,QAAQ,2BAA0B;AAC9D,SAASC,eAAe,QAAQ,uBAAsB;AACtD,SAASC,aAAa,QAAQ,qBAAoB;AAClD,SAASC,UAAU,QAAQ,kBAAiB;AAC5C,SAASC,SAAS,QAAQ,iBAAgB;AAC1C,SAASC,cAAc,QAAQ,sBAAqB;AACpD,SAASC,OAAO,QAAQ,eAAc;AACtC,SAASC,IAAI,QAAQ,YAAW;AAChC,SAASC,YAAY,QAAQ,oBAAmB;AAChD,SAASC,UAAU,QAAQ,kBAAiB;AAC5C,SAASC,kBAAkB,QAAQ,0BAAyB;AAC5D,SAASC,OAAO,QAAQ,eAAc;AACtC,SAASC,YAAY,QAAQ,oBAAmB;AAChD,SAASC,OAAO,QAAQ,eAAc;AACtC,SAASC,WAAW,QAAQ,mBAAkB;AAC9C,SAASC,YAAY,QAAQ,oBAAmB;AAChD,SAASC,cAAc,QAAQ,sBAAqB;AACpD,SAASC,YAAY,QAAQ,oBAAmB;AAChD,SAASC,aAAa,QAAQ,qBAAoB;AAClD,SAASC,UAAU,QAAQ,0BAAyB;AACpD,SAASC,WAAW,QAAQ,2BAA0B;AAEtD,SAASC,WAAW,QAAQ,2BAA0B;AACtD,SAASC,WAAW,QAAQ,mBAAkB;AAC9C,SAASC,qBAAqB,QAAQ,oCAAmC;AACzE,SAASC,cAAc,QAAQ,6BAA4B;AAC3D,SAASC,gBAAgB,QAAQ,qCAAoC;AACrE,SAASC,iBAAiB,QAAQ,sCAAqC;AACvE,SAASC,mBAAmB,QAAQ,wCAAuC;AAwC3E,SAASC,YAAY,QAAQ,oBAAmB;AAChD,SAASC,mBAAmB,QAAQ,2BAA0B;AAC9D,SAASC,UAAU,QAAQ,kBAAiB;AAC5C,SAASC,UAAU,QAAQ,kBAAiB;AAC5C,SAASC,SAAS,QAAQ,iBAAgB;AAC1C,SAASC,aAAa,QAAQ,qBAAoB;AAClD,SAASC,MAAM,QAAQ,cAAa;AACpC,SAASC,SAAS,QAAQ,uBAAsB;AAChD,SACEC,2CAA2C,EAC3CC,0BAA0B,EAC1BC,uBAAuB,QAClB,sCAAqC;AAC5C,SAASC,oBAAoB,QAAQ,sCAAqC;AAC1E,SAASC,cAAc,QAAQ,gCAA+B;AAC9D,SAASC,qBAAqB,QAAQ,uCAAsC;AAC5E,SAASC,kBAAkB,QAAQ,oCAAmC;AACtE,SAASC,kBAAkB,QAAQ,oCAAmC;AACtE,SAASC,eAAe,QAAQ,iCAAgC;AAChE,SAASC,aAAa,QAAQ,+BAA8B;AAC5D,SAASC,gCAAgC,QAAQ,kDAAiD;AAClG,SAASC,oBAAoBC,uBAAuB,QAAQ,UAAS;AAErE;;;;;;CAMC,GACD,OAAO,MAAMD,mBAAmBC,wBAAuB"}
1
+ {"version":3,"sources":["../src/index.ts"],"sourcesContent":["export { count } from './count.js'\nexport { countGlobalVersions } from './countGlobalVersions.js'\nexport { countVersions } from './countVersions.js'\nexport { create } from './create.js'\nexport { createGlobal } from './createGlobal.js'\nexport { createGlobalVersion } from './createGlobalVersion.js'\nexport { createTableName } from './createTableName.js'\nexport { createVersion } from './createVersion.js'\nexport { deleteMany } from './deleteMany.js'\nexport { deleteOne } from './deleteOne.js'\nexport { deleteVersions } from './deleteVersions.js'\nexport { destroy } from './destroy.js'\nexport { find } from './find.js'\nexport { findDistinct } from './findDistinct.js'\nexport { findGlobal } from './findGlobal.js'\nexport { findGlobalVersions } from './findGlobalVersions.js'\nexport { findOne } from './findOne.js'\nexport { findVersions } from './findVersions.js'\nexport { migrate } from './migrate.js'\nexport { migrateDown } from './migrateDown.js'\nexport { migrateFresh } from './migrateFresh.js'\nexport { migrateRefresh } from './migrateRefresh.js'\nexport { migrateReset } from './migrateReset.js'\nexport { migrateStatus } from './migrateStatus.js'\nexport { buildQuery } from './queries/buildQuery.js'\nexport { operatorMap } from './queries/operatorMap.js'\nexport type { DrizzleResolvedOperator, Operators } from './queries/operatorMap.js'\nexport { parseParams } from './queries/parseParams.js'\nexport { validateOperatorHandlers } from './queries/validateOperatorHandlers.js'\nexport { queryDrafts } from './queryDrafts.js'\nexport { buildDrizzleRelations } from './schema/buildDrizzleRelations.js'\nexport { buildRawSchema } from './schema/buildRawSchema.js'\nexport { beginTransaction } from './transactions/beginTransaction.js'\nexport { commitTransaction } from './transactions/commitTransaction.js'\nexport { rollbackTransaction } from './transactions/rollbackTransaction.js'\nexport type {\n BaseRawColumn,\n BlocksToJsonMigrator,\n BuildDrizzleTable,\n BuildQueryJoinAliases,\n ColumnToCodeConverter,\n CountDistinct,\n CreateJSONQueryArgs,\n DeleteWhere,\n DrizzleAdapter,\n DrizzleOperandTransformHandler,\n DrizzleOperatorHandler,\n DrizzleOperatorHandlerContext,\n DrizzleOperatorReplacementHandler,\n DrizzleQueryConfig,\n DrizzleTransaction,\n DropDatabase,\n EnumRawColumn,\n Execute,\n GenericColumn,\n GenericColumns,\n GenericPgColumn,\n GenericRelation,\n GenericTable,\n IDType,\n Insert,\n IntegerRawColumn,\n Migration,\n PostgresDB,\n RawColumn,\n RawForeignKey,\n RawIndex,\n RawRelation,\n RawTable,\n RelationMap,\n RequireDrizzleKit,\n SetColumnID,\n SQLiteDB,\n TimestampRawColumn,\n TransactionPg,\n TransactionSQLite,\n UUIDRawColumn,\n VectorRawColumn,\n} from './types.js'\nexport { updateGlobal } from './updateGlobal.js'\nexport { updateGlobalVersion } from './updateGlobalVersion.js'\nexport { updateJobs } from './updateJobs.js'\nexport { updateMany } from './updateMany.js'\nexport { updateOne } from './updateOne.js'\nexport { updateVersion } from './updateVersion.js'\nexport { upsert } from './upsert.js'\nexport { upsertRow } from './upsertRow/index.js'\nexport {\n buildDynamicPredefinedBlocksToJsonMigration,\n createBlocksToJsonMigrator,\n getBlocksToJsonMigrator,\n} from './utilities/blocksToJsonMigrator.js'\nexport { buildCreateMigration } from './utilities/buildCreateMigration.js'\nexport { buildIndexName } from './utilities/buildIndexName.js'\nexport { createSchemaGenerator } from './utilities/createSchemaGenerator.js'\nexport { executeSchemaHooks } from './utilities/executeSchemaHooks.js'\nexport { extendDrizzleTable } from './utilities/extendDrizzleTable.js'\nexport { hasLocalesTable } from './utilities/hasLocalesTable.js'\nexport { pushDevSchema } from './utilities/pushDevSchema.js'\nexport { validateExistingBlockIsIdentical } from './utilities/validateExistingBlockIsIdentical.js'\nimport { findMigrationDir as payloadFindMigrationDir } from 'payload'\n\n/**\n * @deprecated remove in 4.0\n * use\n * ```ts\n * import { findMigrationDir } from 'payload'\n * ```\n */\nexport const findMigrationDir = payloadFindMigrationDir\n"],"names":["count","countGlobalVersions","countVersions","create","createGlobal","createGlobalVersion","createTableName","createVersion","deleteMany","deleteOne","deleteVersions","destroy","find","findDistinct","findGlobal","findGlobalVersions","findOne","findVersions","migrate","migrateDown","migrateFresh","migrateRefresh","migrateReset","migrateStatus","buildQuery","operatorMap","parseParams","validateOperatorHandlers","queryDrafts","buildDrizzleRelations","buildRawSchema","beginTransaction","commitTransaction","rollbackTransaction","updateGlobal","updateGlobalVersion","updateJobs","updateMany","updateOne","updateVersion","upsert","upsertRow","buildDynamicPredefinedBlocksToJsonMigration","createBlocksToJsonMigrator","getBlocksToJsonMigrator","buildCreateMigration","buildIndexName","createSchemaGenerator","executeSchemaHooks","extendDrizzleTable","hasLocalesTable","pushDevSchema","validateExistingBlockIsIdentical","findMigrationDir","payloadFindMigrationDir"],"mappings":"AAAA,SAASA,KAAK,QAAQ,aAAY;AAClC,SAASC,mBAAmB,QAAQ,2BAA0B;AAC9D,SAASC,aAAa,QAAQ,qBAAoB;AAClD,SAASC,MAAM,QAAQ,cAAa;AACpC,SAASC,YAAY,QAAQ,oBAAmB;AAChD,SAASC,mBAAmB,QAAQ,2BAA0B;AAC9D,SAASC,eAAe,QAAQ,uBAAsB;AACtD,SAASC,aAAa,QAAQ,qBAAoB;AAClD,SAASC,UAAU,QAAQ,kBAAiB;AAC5C,SAASC,SAAS,QAAQ,iBAAgB;AAC1C,SAASC,cAAc,QAAQ,sBAAqB;AACpD,SAASC,OAAO,QAAQ,eAAc;AACtC,SAASC,IAAI,QAAQ,YAAW;AAChC,SAASC,YAAY,QAAQ,oBAAmB;AAChD,SAASC,UAAU,QAAQ,kBAAiB;AAC5C,SAASC,kBAAkB,QAAQ,0BAAyB;AAC5D,SAASC,OAAO,QAAQ,eAAc;AACtC,SAASC,YAAY,QAAQ,oBAAmB;AAChD,SAASC,OAAO,QAAQ,eAAc;AACtC,SAASC,WAAW,QAAQ,mBAAkB;AAC9C,SAASC,YAAY,QAAQ,oBAAmB;AAChD,SAASC,cAAc,QAAQ,sBAAqB;AACpD,SAASC,YAAY,QAAQ,oBAAmB;AAChD,SAASC,aAAa,QAAQ,qBAAoB;AAClD,SAASC,UAAU,QAAQ,0BAAyB;AACpD,SAASC,WAAW,QAAQ,2BAA0B;AAEtD,SAASC,WAAW,QAAQ,2BAA0B;AACtD,SAASC,wBAAwB,QAAQ,wCAAuC;AAChF,SAASC,WAAW,QAAQ,mBAAkB;AAC9C,SAASC,qBAAqB,QAAQ,oCAAmC;AACzE,SAASC,cAAc,QAAQ,6BAA4B;AAC3D,SAASC,gBAAgB,QAAQ,qCAAoC;AACrE,SAASC,iBAAiB,QAAQ,sCAAqC;AACvE,SAASC,mBAAmB,QAAQ,wCAAuC;AA6C3E,SAASC,YAAY,QAAQ,oBAAmB;AAChD,SAASC,mBAAmB,QAAQ,2BAA0B;AAC9D,SAASC,UAAU,QAAQ,kBAAiB;AAC5C,SAASC,UAAU,QAAQ,kBAAiB;AAC5C,SAASC,SAAS,QAAQ,iBAAgB;AAC1C,SAASC,aAAa,QAAQ,qBAAoB;AAClD,SAASC,MAAM,QAAQ,cAAa;AACpC,SAASC,SAAS,QAAQ,uBAAsB;AAChD,SACEC,2CAA2C,EAC3CC,0BAA0B,EAC1BC,uBAAuB,QAClB,sCAAqC;AAC5C,SAASC,oBAAoB,QAAQ,sCAAqC;AAC1E,SAASC,cAAc,QAAQ,gCAA+B;AAC9D,SAASC,qBAAqB,QAAQ,uCAAsC;AAC5E,SAASC,kBAAkB,QAAQ,oCAAmC;AACtE,SAASC,kBAAkB,QAAQ,oCAAmC;AACtE,SAASC,eAAe,QAAQ,iCAAgC;AAChE,SAASC,aAAa,QAAQ,+BAA8B;AAC5D,SAASC,gCAAgC,QAAQ,kDAAiD;AAClG,SAASC,oBAAoBC,uBAAuB,QAAQ,UAAS;AAErE;;;;;;CAMC,GACD,OAAO,MAAMD,mBAAmBC,wBAAuB"}
@@ -0,0 +1,15 @@
1
+ import type { PostgresDB } from '../../types.js';
2
+ import type { PostgresOperatorHandler } from '../types.js';
3
+ type Args = {
4
+ drizzle: PostgresDB;
5
+ operatorHandlers: PostgresOperatorHandler[];
6
+ };
7
+ /**
8
+ * Confirms every Postgres extension named in an operator handler's `requiredExtensions` is
9
+ * installed in the connected database. Runs once per connect, after `createExtensions` has had a
10
+ * chance to install any extension declared in the adapter's `extensions` option - an extension
11
+ * that was installed by hand, without ever being declared there, still satisfies this check.
12
+ */
13
+ export declare const assertOperatorHandlerExtensionsInstalled: ({ drizzle, operatorHandlers, }: Args) => Promise<void>;
14
+ export {};
15
+ //# sourceMappingURL=assertOperatorHandlerExtensionsInstalled.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assertOperatorHandlerExtensionsInstalled.d.ts","sourceRoot":"","sources":["../../../src/postgres/query/assertOperatorHandlerExtensionsInstalled.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AAE1D,KAAK,IAAI,GAAG;IACV,OAAO,EAAE,UAAU,CAAA;IACnB,gBAAgB,EAAE,uBAAuB,EAAE,CAAA;CAC5C,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,wCAAwC,mCAGlD,IAAI,KAAG,OAAO,CAAC,IAAI,CAqBrB,CAAA"}
@@ -0,0 +1,25 @@
1
+ import { sql } from 'drizzle-orm';
2
+ import { APIError } from 'payload';
3
+ /**
4
+ * Confirms every Postgres extension named in an operator handler's `requiredExtensions` is
5
+ * installed in the connected database. Runs once per connect, after `createExtensions` has had a
6
+ * chance to install any extension declared in the adapter's `extensions` option - an extension
7
+ * that was installed by hand, without ever being declared there, still satisfies this check.
8
+ */ export const assertOperatorHandlerExtensionsInstalled = async ({ drizzle, operatorHandlers })=>{
9
+ const requiredExtensionsByHandler = operatorHandlers.flatMap((handler)=>(handler.requiredExtensions ?? []).map((extensionName)=>({
10
+ extensionName,
11
+ handler
12
+ })));
13
+ if (!requiredExtensionsByHandler.length) {
14
+ return;
15
+ }
16
+ const { rows: installedExtensionRows } = await drizzle.execute(sql`SELECT extname FROM pg_extension`);
17
+ const installedExtensions = new Set(installedExtensionRows.map((row)=>row.extname));
18
+ for (const { extensionName, handler } of requiredExtensionsByHandler){
19
+ if (!installedExtensions.has(extensionName)) {
20
+ throw new APIError(`Operator handler "${handler.name}" requires the "${extensionName}" Postgres extension, which is not installed on this database. Add it to the adapter's "extensions" option, or install it manually with CREATE EXTENSION.`);
21
+ }
22
+ }
23
+ };
24
+
25
+ //# sourceMappingURL=assertOperatorHandlerExtensionsInstalled.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/postgres/query/assertOperatorHandlerExtensionsInstalled.ts"],"sourcesContent":["import { sql } from 'drizzle-orm'\nimport { APIError } from 'payload'\n\nimport type { PostgresDB } from '../../types.js'\nimport type { PostgresOperatorHandler } from '../types.js'\n\ntype Args = {\n drizzle: PostgresDB\n operatorHandlers: PostgresOperatorHandler[]\n}\n\n/**\n * Confirms every Postgres extension named in an operator handler's `requiredExtensions` is\n * installed in the connected database. Runs once per connect, after `createExtensions` has had a\n * chance to install any extension declared in the adapter's `extensions` option - an extension\n * that was installed by hand, without ever being declared there, still satisfies this check.\n */\nexport const assertOperatorHandlerExtensionsInstalled = async ({\n drizzle,\n operatorHandlers,\n}: Args): Promise<void> => {\n const requiredExtensionsByHandler = operatorHandlers.flatMap((handler) =>\n (handler.requiredExtensions ?? []).map((extensionName) => ({ extensionName, handler })),\n )\n\n if (!requiredExtensionsByHandler.length) {\n return\n }\n\n const { rows: installedExtensionRows } = await drizzle.execute<{ extname: string }>(\n sql`SELECT extname FROM pg_extension`,\n )\n const installedExtensions = new Set(installedExtensionRows.map((row) => row.extname))\n\n for (const { extensionName, handler } of requiredExtensionsByHandler) {\n if (!installedExtensions.has(extensionName)) {\n throw new APIError(\n `Operator handler \"${handler.name}\" requires the \"${extensionName}\" Postgres extension, which is not installed on this database. Add it to the adapter's \"extensions\" option, or install it manually with CREATE EXTENSION.`,\n )\n }\n }\n}\n"],"names":["sql","APIError","assertOperatorHandlerExtensionsInstalled","drizzle","operatorHandlers","requiredExtensionsByHandler","flatMap","handler","requiredExtensions","map","extensionName","length","rows","installedExtensionRows","execute","installedExtensions","Set","row","extname","has","name"],"mappings":"AAAA,SAASA,GAAG,QAAQ,cAAa;AACjC,SAASC,QAAQ,QAAQ,UAAS;AAUlC;;;;;CAKC,GACD,OAAO,MAAMC,2CAA2C,OAAO,EAC7DC,OAAO,EACPC,gBAAgB,EACX;IACL,MAAMC,8BAA8BD,iBAAiBE,OAAO,CAAC,CAACC,UAC5D,AAACA,CAAAA,QAAQC,kBAAkB,IAAI,EAAE,AAAD,EAAGC,GAAG,CAAC,CAACC,gBAAmB,CAAA;gBAAEA;gBAAeH;YAAQ,CAAA;IAGtF,IAAI,CAACF,4BAA4BM,MAAM,EAAE;QACvC;IACF;IAEA,MAAM,EAAEC,MAAMC,sBAAsB,EAAE,GAAG,MAAMV,QAAQW,OAAO,CAC5Dd,GAAG,CAAC,gCAAgC,CAAC;IAEvC,MAAMe,sBAAsB,IAAIC,IAAIH,uBAAuBJ,GAAG,CAAC,CAACQ,MAAQA,IAAIC,OAAO;IAEnF,KAAK,MAAM,EAAER,aAAa,EAAEH,OAAO,EAAE,IAAIF,4BAA6B;QACpE,IAAI,CAACU,oBAAoBI,GAAG,CAACT,gBAAgB;YAC3C,MAAM,IAAIT,SACR,CAAC,kBAAkB,EAAEM,QAAQa,IAAI,CAAC,gBAAgB,EAAEV,cAAc,yJAAyJ,CAAC;QAEhO;IACF;AACF,EAAC"}
@@ -0,0 +1,91 @@
1
+ import { describe, expect, it, vi } from 'vitest';
2
+ import { assertOperatorHandlerExtensionsInstalled } from './assertOperatorHandlerExtensionsInstalled.js';
3
+ const transformHandler = (overrides = {})=>({
4
+ name: 'transform',
5
+ operators: [
6
+ 'contains'
7
+ ],
8
+ transformOperands: ({ column, value })=>({
9
+ column,
10
+ value
11
+ }),
12
+ ...overrides
13
+ });
14
+ const drizzleWithInstalledExtensions = (installedExtensions)=>({
15
+ execute: vi.fn().mockResolvedValue({
16
+ rows: installedExtensions.map((extname)=>({
17
+ extname
18
+ }))
19
+ })
20
+ });
21
+ describe('assertOperatorHandlerExtensionsInstalled', ()=>{
22
+ it('does not query the database when no handler declares requiredExtensions', async ()=>{
23
+ const drizzle = drizzleWithInstalledExtensions([]);
24
+ await expect(assertOperatorHandlerExtensionsInstalled({
25
+ drizzle: drizzle,
26
+ operatorHandlers: [
27
+ transformHandler({
28
+ requiredExtensions: undefined
29
+ })
30
+ ]
31
+ })).resolves.toBeUndefined();
32
+ expect(drizzle.execute).not.toHaveBeenCalled();
33
+ });
34
+ it('does not throw for a handler requiring an extension installed in the database', async ()=>{
35
+ const drizzle = drizzleWithInstalledExtensions([
36
+ 'unaccent'
37
+ ]);
38
+ await expect(assertOperatorHandlerExtensionsInstalled({
39
+ drizzle: drizzle,
40
+ operatorHandlers: [
41
+ transformHandler({
42
+ requiredExtensions: [
43
+ 'unaccent'
44
+ ]
45
+ })
46
+ ]
47
+ })).resolves.toBeUndefined();
48
+ });
49
+ it('throws for a handler requiring an extension absent from the database, naming the handler and the missing extension', async ()=>{
50
+ const drizzle = drizzleWithInstalledExtensions([]);
51
+ await expect(assertOperatorHandlerExtensionsInstalled({
52
+ drizzle: drizzle,
53
+ operatorHandlers: [
54
+ transformHandler({
55
+ name: 'postgres-unaccent',
56
+ requiredExtensions: [
57
+ 'unaccent'
58
+ ]
59
+ })
60
+ ]
61
+ })).rejects.toThrow(/postgres-unaccent/);
62
+ await expect(assertOperatorHandlerExtensionsInstalled({
63
+ drizzle: drizzle,
64
+ operatorHandlers: [
65
+ transformHandler({
66
+ name: 'postgres-unaccent',
67
+ requiredExtensions: [
68
+ 'unaccent'
69
+ ]
70
+ })
71
+ ]
72
+ })).rejects.toThrow(/unaccent/);
73
+ });
74
+ it('does not throw when the extension is installed even though it is not declared in any config option', async ()=>{
75
+ const drizzle = drizzleWithInstalledExtensions([
76
+ 'unaccent'
77
+ ]);
78
+ await expect(assertOperatorHandlerExtensionsInstalled({
79
+ drizzle: drizzle,
80
+ operatorHandlers: [
81
+ transformHandler({
82
+ requiredExtensions: [
83
+ 'unaccent'
84
+ ]
85
+ })
86
+ ]
87
+ })).resolves.toBeUndefined();
88
+ });
89
+ });
90
+
91
+ //# sourceMappingURL=assertOperatorHandlerExtensionsInstalled.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/postgres/query/assertOperatorHandlerExtensionsInstalled.spec.ts"],"sourcesContent":["import { describe, expect, it, vi } from 'vitest'\n\nimport type { PostgresOperatorHandler } from '../types.js'\n\nimport { assertOperatorHandlerExtensionsInstalled } from './assertOperatorHandlerExtensionsInstalled.js'\n\nconst transformHandler = (\n overrides: Partial<PostgresOperatorHandler> = {},\n): PostgresOperatorHandler =>\n ({\n name: 'transform',\n operators: ['contains'],\n transformOperands: ({ column, value }) => ({ column, value }),\n ...overrides,\n }) as PostgresOperatorHandler\n\nconst drizzleWithInstalledExtensions = (installedExtensions: string[]) => ({\n execute: vi.fn().mockResolvedValue({\n rows: installedExtensions.map((extname) => ({ extname })),\n }),\n})\n\ndescribe('assertOperatorHandlerExtensionsInstalled', () => {\n it('does not query the database when no handler declares requiredExtensions', async () => {\n const drizzle = drizzleWithInstalledExtensions([])\n\n await expect(\n assertOperatorHandlerExtensionsInstalled({\n drizzle: drizzle as any,\n operatorHandlers: [transformHandler({ requiredExtensions: undefined })],\n }),\n ).resolves.toBeUndefined()\n\n expect(drizzle.execute).not.toHaveBeenCalled()\n })\n\n it('does not throw for a handler requiring an extension installed in the database', async () => {\n const drizzle = drizzleWithInstalledExtensions(['unaccent'])\n\n await expect(\n assertOperatorHandlerExtensionsInstalled({\n drizzle: drizzle as any,\n operatorHandlers: [transformHandler({ requiredExtensions: ['unaccent'] })],\n }),\n ).resolves.toBeUndefined()\n })\n\n it('throws for a handler requiring an extension absent from the database, naming the handler and the missing extension', async () => {\n const drizzle = drizzleWithInstalledExtensions([])\n\n await expect(\n assertOperatorHandlerExtensionsInstalled({\n drizzle: drizzle as any,\n operatorHandlers: [\n transformHandler({ name: 'postgres-unaccent', requiredExtensions: ['unaccent'] }),\n ],\n }),\n ).rejects.toThrow(/postgres-unaccent/)\n\n await expect(\n assertOperatorHandlerExtensionsInstalled({\n drizzle: drizzle as any,\n operatorHandlers: [\n transformHandler({ name: 'postgres-unaccent', requiredExtensions: ['unaccent'] }),\n ],\n }),\n ).rejects.toThrow(/unaccent/)\n })\n\n it('does not throw when the extension is installed even though it is not declared in any config option', async () => {\n const drizzle = drizzleWithInstalledExtensions(['unaccent'])\n\n await expect(\n assertOperatorHandlerExtensionsInstalled({\n drizzle: drizzle as any,\n operatorHandlers: [transformHandler({ requiredExtensions: ['unaccent'] })],\n }),\n ).resolves.toBeUndefined()\n })\n})\n"],"names":["describe","expect","it","vi","assertOperatorHandlerExtensionsInstalled","transformHandler","overrides","name","operators","transformOperands","column","value","drizzleWithInstalledExtensions","installedExtensions","execute","fn","mockResolvedValue","rows","map","extname","drizzle","operatorHandlers","requiredExtensions","undefined","resolves","toBeUndefined","not","toHaveBeenCalled","rejects","toThrow"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,MAAM,EAAEC,EAAE,EAAEC,EAAE,QAAQ,SAAQ;AAIjD,SAASC,wCAAwC,QAAQ,gDAA+C;AAExG,MAAMC,mBAAmB,CACvBC,YAA8C,CAAC,CAAC,GAE/C,CAAA;QACCC,MAAM;QACNC,WAAW;YAAC;SAAW;QACvBC,mBAAmB,CAAC,EAAEC,MAAM,EAAEC,KAAK,EAAE,GAAM,CAAA;gBAAED;gBAAQC;YAAM,CAAA;QAC3D,GAAGL,SAAS;IACd,CAAA;AAEF,MAAMM,iCAAiC,CAACC,sBAAmC,CAAA;QACzEC,SAASX,GAAGY,EAAE,GAAGC,iBAAiB,CAAC;YACjCC,MAAMJ,oBAAoBK,GAAG,CAAC,CAACC,UAAa,CAAA;oBAAEA;gBAAQ,CAAA;QACxD;IACF,CAAA;AAEAnB,SAAS,4CAA4C;IACnDE,GAAG,2EAA2E;QAC5E,MAAMkB,UAAUR,+BAA+B,EAAE;QAEjD,MAAMX,OACJG,yCAAyC;YACvCgB,SAASA;YACTC,kBAAkB;gBAAChB,iBAAiB;oBAAEiB,oBAAoBC;gBAAU;aAAG;QACzE,IACAC,QAAQ,CAACC,aAAa;QAExBxB,OAAOmB,QAAQN,OAAO,EAAEY,GAAG,CAACC,gBAAgB;IAC9C;IAEAzB,GAAG,iFAAiF;QAClF,MAAMkB,UAAUR,+BAA+B;YAAC;SAAW;QAE3D,MAAMX,OACJG,yCAAyC;YACvCgB,SAASA;YACTC,kBAAkB;gBAAChB,iBAAiB;oBAAEiB,oBAAoB;wBAAC;qBAAW;gBAAC;aAAG;QAC5E,IACAE,QAAQ,CAACC,aAAa;IAC1B;IAEAvB,GAAG,sHAAsH;QACvH,MAAMkB,UAAUR,+BAA+B,EAAE;QAEjD,MAAMX,OACJG,yCAAyC;YACvCgB,SAASA;YACTC,kBAAkB;gBAChBhB,iBAAiB;oBAAEE,MAAM;oBAAqBe,oBAAoB;wBAAC;qBAAW;gBAAC;aAChF;QACH,IACAM,OAAO,CAACC,OAAO,CAAC;QAElB,MAAM5B,OACJG,yCAAyC;YACvCgB,SAASA;YACTC,kBAAkB;gBAChBhB,iBAAiB;oBAAEE,MAAM;oBAAqBe,oBAAoB;wBAAC;qBAAW;gBAAC;aAChF;QACH,IACAM,OAAO,CAACC,OAAO,CAAC;IACpB;IAEA3B,GAAG,sGAAsG;QACvG,MAAMkB,UAAUR,+BAA+B;YAAC;SAAW;QAE3D,MAAMX,OACJG,yCAAyC;YACvCgB,SAASA;YACTC,kBAAkB;gBAAChB,iBAAiB;oBAAEiB,oBAAoB;wBAAC;qBAAW;gBAAC;aAAG;QAC5E,IACAE,QAAQ,CAACC,aAAa;IAC1B;AACF"}
@@ -0,0 +1,13 @@
1
+ import type { PostgresOperatorHandler } from '../types.js';
2
+ /**
3
+ * Makes Postgres `contains`, `like`, and `not_like` text comparisons accent-insensitive by
4
+ * wrapping both operands in `unaccent(...)`. Requires the `unaccent` extension to be installed in
5
+ * the database - list it in the adapter's `extensions` option to have Payload install it for you.
6
+ *
7
+ * Skips native `uuid` columns: a default or custom UUID/UUIDv7 `id` field is reported as a
8
+ * `text`-type field by Payload even though it is stored as a `uuid` column, so `fieldTypes`
9
+ * alone cannot exclude it. A genuine custom `text`/`varchar` `id` column is not a `PgUUID`
10
+ * column and still receives accent-insensitive matching.
11
+ */
12
+ export declare const postgresUnaccent: () => PostgresOperatorHandler;
13
+ //# sourceMappingURL=postgresUnaccent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postgresUnaccent.d.ts","sourceRoot":"","sources":["../../../src/postgres/query/postgresUnaccent.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AAE1D;;;;;;;;;GASG;AACH,eAAO,MAAM,gBAAgB,QAAO,uBAelC,CAAA"}
@@ -0,0 +1,40 @@
1
+ import { sql } from 'drizzle-orm';
2
+ import { PgUUID } from 'drizzle-orm/pg-core';
3
+ /**
4
+ * Makes Postgres `contains`, `like`, and `not_like` text comparisons accent-insensitive by
5
+ * wrapping both operands in `unaccent(...)`. Requires the `unaccent` extension to be installed in
6
+ * the database - list it in the adapter's `extensions` option to have Payload install it for you.
7
+ *
8
+ * Skips native `uuid` columns: a default or custom UUID/UUIDv7 `id` field is reported as a
9
+ * `text`-type field by Payload even though it is stored as a `uuid` column, so `fieldTypes`
10
+ * alone cannot exclude it. A genuine custom `text`/`varchar` `id` column is not a `PgUUID`
11
+ * column and still receives accent-insensitive matching.
12
+ */ export const postgresUnaccent = ()=>({
13
+ name: 'postgres-unaccent',
14
+ fieldTypes: [
15
+ 'text',
16
+ 'textarea'
17
+ ],
18
+ operators: [
19
+ 'contains',
20
+ 'like',
21
+ 'not_like'
22
+ ],
23
+ requiredExtensions: [
24
+ 'unaccent'
25
+ ],
26
+ transformOperands: ({ column, value })=>{
27
+ if (column instanceof PgUUID) {
28
+ return {
29
+ column,
30
+ value
31
+ };
32
+ }
33
+ return {
34
+ column: sql`unaccent(${column})`,
35
+ value: sql`unaccent(${value})`
36
+ };
37
+ }
38
+ });
39
+
40
+ //# sourceMappingURL=postgresUnaccent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/postgres/query/postgresUnaccent.ts"],"sourcesContent":["import { sql } from 'drizzle-orm'\nimport { PgUUID } from 'drizzle-orm/pg-core'\n\nimport type { PostgresOperatorHandler } from '../types.js'\n\n/**\n * Makes Postgres `contains`, `like`, and `not_like` text comparisons accent-insensitive by\n * wrapping both operands in `unaccent(...)`. Requires the `unaccent` extension to be installed in\n * the database - list it in the adapter's `extensions` option to have Payload install it for you.\n *\n * Skips native `uuid` columns: a default or custom UUID/UUIDv7 `id` field is reported as a\n * `text`-type field by Payload even though it is stored as a `uuid` column, so `fieldTypes`\n * alone cannot exclude it. A genuine custom `text`/`varchar` `id` column is not a `PgUUID`\n * column and still receives accent-insensitive matching.\n */\nexport const postgresUnaccent = (): PostgresOperatorHandler => ({\n name: 'postgres-unaccent',\n fieldTypes: ['text', 'textarea'],\n operators: ['contains', 'like', 'not_like'],\n requiredExtensions: ['unaccent'],\n transformOperands: ({ column, value }) => {\n if (column instanceof PgUUID) {\n return { column, value }\n }\n\n return {\n column: sql`unaccent(${column})`,\n value: sql`unaccent(${value})`,\n }\n },\n})\n"],"names":["sql","PgUUID","postgresUnaccent","name","fieldTypes","operators","requiredExtensions","transformOperands","column","value"],"mappings":"AAAA,SAASA,GAAG,QAAQ,cAAa;AACjC,SAASC,MAAM,QAAQ,sBAAqB;AAI5C;;;;;;;;;CASC,GACD,OAAO,MAAMC,mBAAmB,IAAgC,CAAA;QAC9DC,MAAM;QACNC,YAAY;YAAC;YAAQ;SAAW;QAChCC,WAAW;YAAC;YAAY;YAAQ;SAAW;QAC3CC,oBAAoB;YAAC;SAAW;QAChCC,mBAAmB,CAAC,EAAEC,MAAM,EAAEC,KAAK,EAAE;YACnC,IAAID,kBAAkBP,QAAQ;gBAC5B,OAAO;oBAAEO;oBAAQC;gBAAM;YACzB;YAEA,OAAO;gBACLD,QAAQR,GAAG,CAAC,SAAS,EAAEQ,OAAO,CAAC,CAAC;gBAChCC,OAAOT,GAAG,CAAC,SAAS,EAAES,MAAM,CAAC,CAAC;YAChC;QACF;IACF,CAAA,EAAE"}
@@ -0,0 +1,71 @@
1
+ import { is, sql } from 'drizzle-orm';
2
+ import { PgUUID } from 'drizzle-orm/pg-core';
3
+ import { describe, expect, it } from 'vitest';
4
+ import { postgresUnaccent } from './postgresUnaccent.js';
5
+ describe('postgresUnaccent', ()=>{
6
+ it('returns a handler with the expected name and operators', ()=>{
7
+ const handler = postgresUnaccent();
8
+ expect(handler.name).toBe('postgres-unaccent');
9
+ expect(handler.operators).toEqual([
10
+ 'contains',
11
+ 'like',
12
+ 'not_like'
13
+ ]);
14
+ });
15
+ it('declares fieldTypes restricted to text and textarea', ()=>{
16
+ const handler = postgresUnaccent();
17
+ expect(handler.fieldTypes).toEqual([
18
+ 'text',
19
+ 'textarea'
20
+ ]);
21
+ });
22
+ it('declares requiredExtensions of unaccent', ()=>{
23
+ const handler = postgresUnaccent();
24
+ expect(handler.requiredExtensions).toEqual([
25
+ 'unaccent'
26
+ ]);
27
+ });
28
+ it('wraps the column and value in a parameterized unaccent(...) SQL expression', ()=>{
29
+ const handler = postgresUnaccent();
30
+ const column = sql`"title"`;
31
+ const result = handler.transformOperands({
32
+ adapter: {},
33
+ column,
34
+ field: {
35
+ name: 'title',
36
+ type: 'text'
37
+ },
38
+ originalOperator: 'contains',
39
+ path: 'title',
40
+ resolvedOperator: 'contains',
41
+ storage: 'column',
42
+ value: '%acido%'
43
+ });
44
+ expect(is(result.column, Object)).toBe(true);
45
+ expect(result.column.queryChunks[0].value[0]).toBe('unaccent(');
46
+ expect(result.column.queryChunks[1]).toBe(column);
47
+ expect(result.value.queryChunks[0].value[0]).toBe('unaccent(');
48
+ expect(result.value.queryChunks[1]).toBe('%acido%');
49
+ });
50
+ it('returns the operands unchanged when the column is a native PgUUID column', ()=>{
51
+ const handler = postgresUnaccent();
52
+ const uuidColumn = Object.create(PgUUID.prototype);
53
+ const result = handler.transformOperands({
54
+ adapter: {},
55
+ column: uuidColumn,
56
+ field: {
57
+ name: 'id',
58
+ type: 'text'
59
+ },
60
+ originalOperator: 'contains',
61
+ path: 'id',
62
+ resolvedOperator: 'contains',
63
+ storage: 'column',
64
+ value: '%acido%'
65
+ });
66
+ expect(result.column).toBe(uuidColumn);
67
+ expect(result.value).toBe('%acido%');
68
+ });
69
+ });
70
+
71
+ //# sourceMappingURL=postgresUnaccent.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/postgres/query/postgresUnaccent.spec.ts"],"sourcesContent":["import { is, sql } from 'drizzle-orm'\nimport { PgUUID } from 'drizzle-orm/pg-core'\nimport { describe, expect, it } from 'vitest'\n\nimport { postgresUnaccent } from './postgresUnaccent.js'\n\ndescribe('postgresUnaccent', () => {\n it('returns a handler with the expected name and operators', () => {\n const handler = postgresUnaccent()\n\n expect(handler.name).toBe('postgres-unaccent')\n expect(handler.operators).toEqual(['contains', 'like', 'not_like'])\n })\n\n it('declares fieldTypes restricted to text and textarea', () => {\n const handler = postgresUnaccent()\n\n expect(handler.fieldTypes).toEqual(['text', 'textarea'])\n })\n\n it('declares requiredExtensions of unaccent', () => {\n const handler = postgresUnaccent()\n\n expect(handler.requiredExtensions).toEqual(['unaccent'])\n })\n\n it('wraps the column and value in a parameterized unaccent(...) SQL expression', () => {\n const handler = postgresUnaccent()\n const column = sql`\"title\"`\n\n const result = handler.transformOperands({\n adapter: {} as any,\n column,\n field: { name: 'title', type: 'text' } as any,\n originalOperator: 'contains',\n path: 'title',\n resolvedOperator: 'contains',\n storage: 'column',\n value: '%acido%',\n })\n\n expect(is(result.column, Object)).toBe(true)\n expect((result.column as any).queryChunks[0].value[0]).toBe('unaccent(')\n expect((result.column as any).queryChunks[1]).toBe(column)\n\n expect((result.value as any).queryChunks[0].value[0]).toBe('unaccent(')\n expect((result.value as any).queryChunks[1]).toBe('%acido%')\n })\n\n it('returns the operands unchanged when the column is a native PgUUID column', () => {\n const handler = postgresUnaccent()\n const uuidColumn = Object.create(PgUUID.prototype)\n\n const result = handler.transformOperands({\n adapter: {} as any,\n column: uuidColumn,\n field: { name: 'id', type: 'text' } as any,\n originalOperator: 'contains',\n path: 'id',\n resolvedOperator: 'contains',\n storage: 'column',\n value: '%acido%',\n })\n\n expect(result.column).toBe(uuidColumn)\n expect(result.value).toBe('%acido%')\n })\n})\n"],"names":["is","sql","PgUUID","describe","expect","it","postgresUnaccent","handler","name","toBe","operators","toEqual","fieldTypes","requiredExtensions","column","result","transformOperands","adapter","field","type","originalOperator","path","resolvedOperator","storage","value","Object","queryChunks","uuidColumn","create","prototype"],"mappings":"AAAA,SAASA,EAAE,EAAEC,GAAG,QAAQ,cAAa;AACrC,SAASC,MAAM,QAAQ,sBAAqB;AAC5C,SAASC,QAAQ,EAAEC,MAAM,EAAEC,EAAE,QAAQ,SAAQ;AAE7C,SAASC,gBAAgB,QAAQ,wBAAuB;AAExDH,SAAS,oBAAoB;IAC3BE,GAAG,0DAA0D;QAC3D,MAAME,UAAUD;QAEhBF,OAAOG,QAAQC,IAAI,EAAEC,IAAI,CAAC;QAC1BL,OAAOG,QAAQG,SAAS,EAAEC,OAAO,CAAC;YAAC;YAAY;YAAQ;SAAW;IACpE;IAEAN,GAAG,uDAAuD;QACxD,MAAME,UAAUD;QAEhBF,OAAOG,QAAQK,UAAU,EAAED,OAAO,CAAC;YAAC;YAAQ;SAAW;IACzD;IAEAN,GAAG,2CAA2C;QAC5C,MAAME,UAAUD;QAEhBF,OAAOG,QAAQM,kBAAkB,EAAEF,OAAO,CAAC;YAAC;SAAW;IACzD;IAEAN,GAAG,8EAA8E;QAC/E,MAAME,UAAUD;QAChB,MAAMQ,SAASb,GAAG,CAAC,OAAO,CAAC;QAE3B,MAAMc,SAASR,QAAQS,iBAAiB,CAAC;YACvCC,SAAS,CAAC;YACVH;YACAI,OAAO;gBAAEV,MAAM;gBAASW,MAAM;YAAO;YACrCC,kBAAkB;YAClBC,MAAM;YACNC,kBAAkB;YAClBC,SAAS;YACTC,OAAO;QACT;QAEApB,OAAOJ,GAAGe,OAAOD,MAAM,EAAEW,SAAShB,IAAI,CAAC;QACvCL,OAAO,AAACW,OAAOD,MAAM,CAASY,WAAW,CAAC,EAAE,CAACF,KAAK,CAAC,EAAE,EAAEf,IAAI,CAAC;QAC5DL,OAAO,AAACW,OAAOD,MAAM,CAASY,WAAW,CAAC,EAAE,EAAEjB,IAAI,CAACK;QAEnDV,OAAO,AAACW,OAAOS,KAAK,CAASE,WAAW,CAAC,EAAE,CAACF,KAAK,CAAC,EAAE,EAAEf,IAAI,CAAC;QAC3DL,OAAO,AAACW,OAAOS,KAAK,CAASE,WAAW,CAAC,EAAE,EAAEjB,IAAI,CAAC;IACpD;IAEAJ,GAAG,4EAA4E;QAC7E,MAAME,UAAUD;QAChB,MAAMqB,aAAaF,OAAOG,MAAM,CAAC1B,OAAO2B,SAAS;QAEjD,MAAMd,SAASR,QAAQS,iBAAiB,CAAC;YACvCC,SAAS,CAAC;YACVH,QAAQa;YACRT,OAAO;gBAAEV,MAAM;gBAAMW,MAAM;YAAO;YAClCC,kBAAkB;YAClBC,MAAM;YACNC,kBAAkB;YAClBC,SAAS;YACTC,OAAO;QACT;QAEApB,OAAOW,OAAOD,MAAM,EAAEL,IAAI,CAACkB;QAC3BvB,OAAOW,OAAOS,KAAK,EAAEf,IAAI,CAAC;IAC5B;AACF"}
@@ -7,7 +7,7 @@ import type { SQLiteColumn } from 'drizzle-orm/sqlite-core';
7
7
  import type { Payload, PayloadRequest } from 'payload';
8
8
  import type { ClientConfig, QueryResult } from 'pg';
9
9
  import type { extendDrizzleTable, Operators } from '../index.js';
10
- import type { BuildQueryJoinAliases, DrizzleAdapter, TransactionPg } from '../types.js';
10
+ import type { BuildQueryJoinAliases, DrizzleAdapter, DrizzleOperatorHandler, TransactionPg } from '../types.js';
11
11
  export type BaseExtraConfig = Record<string, (cols: GenericColumns) => ForeignKeyBuilder | IndexBuilder | UniqueConstraintBuilder>;
12
12
  export type RelationMap = Map<string, {
13
13
  localized: boolean;
@@ -80,6 +80,16 @@ type PostgresSchemaHookArgs = {
80
80
  schema: PostgresSchema;
81
81
  };
82
82
  export type PostgresSchemaHook = (args: PostgresSchemaHookArgs) => PostgresSchema | Promise<PostgresSchema>;
83
+ export type PostgresOperatorHandler = {
84
+ /**
85
+ * Postgres extensions that must be installed in the database for this handler to be usable.
86
+ * Checked once, against the database, when the adapter connects.
87
+ */
88
+ requiredExtensions?: string[];
89
+ } & DrizzleOperatorHandler;
90
+ export type PostgresQueryConfig = {
91
+ operatorHandlers?: PostgresOperatorHandler[];
92
+ };
83
93
  export type BasePostgresAdapter = {
84
94
  afterSchemaInit: PostgresSchemaHook[];
85
95
  beforeSchemaInit: PostgresSchemaHook[];
@@ -104,6 +114,7 @@ export type BasePostgresAdapter = {
104
114
  insert: Insert;
105
115
  localesSuffix?: string;
106
116
  logger: DrizzleConfig['logger'];
117
+ operatorHandlers: PostgresOperatorHandler[];
107
118
  operators: Operators;
108
119
  pgSchema: Schema;
109
120
  poolOptions?: ClientConfig;
@@ -131,7 +142,7 @@ export type BasePostgresAdapter = {
131
142
  tablesFilter?: string[];
132
143
  versionsSuffix?: string;
133
144
  } & PostgresDrizzleAdapter;
134
- export type PostgresDrizzleAdapter = Omit<DrizzleAdapter, 'countDistinct' | 'deleteWhere' | 'drizzle' | 'dropDatabase' | 'execute' | 'insert' | 'operators' | 'relations'>;
145
+ export type PostgresDrizzleAdapter = Omit<DrizzleAdapter, 'countDistinct' | 'deleteWhere' | 'drizzle' | 'dropDatabase' | 'execute' | 'insert' | 'operatorHandlers' | 'operators' | 'relations'>;
135
146
  export type IDType = 'integer' | 'numeric' | 'uuid' | 'varchar';
136
147
  export type MigrateUpArgs = {
137
148
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/postgres/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/postgres/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/postgres/types.ts"],"sourcesContent":["import type { DrizzleSnapshotJSON } from 'drizzle-kit/api'\nimport type {\n ColumnBaseConfig,\n ColumnDataType,\n DrizzleConfig,\n Relation,\n Relations,\n SQL,\n} from 'drizzle-orm'\nimport type { NodePgDatabase } from 'drizzle-orm/node-postgres'\nimport type {\n ForeignKeyBuilder,\n IndexBuilder,\n PgColumn,\n PgEnum,\n pgEnum,\n PgInsertOnConflictDoUpdateConfig,\n PgSchema,\n PgTableWithColumns,\n UniqueConstraintBuilder,\n} from 'drizzle-orm/pg-core'\nimport type { PgTableFn } from 'drizzle-orm/pg-core/table'\nimport type { SQLiteColumn } from 'drizzle-orm/sqlite-core'\nimport type { Payload, PayloadRequest } from 'payload'\nimport type { ClientConfig, QueryResult } from 'pg'\n\nimport type { extendDrizzleTable, Operators } from '../index.js'\nimport type { BuildQueryJoinAliases, DrizzleAdapter, TransactionPg } from '../types.js'\n\nexport type BaseExtraConfig = Record<\n string,\n (cols: GenericColumns) => ForeignKeyBuilder | IndexBuilder | UniqueConstraintBuilder\n>\n\nexport type RelationMap = Map<\n string,\n {\n localized: boolean\n relationName?: string\n target: string\n type: 'many' | 'one'\n }\n>\n\nexport type GenericColumn = PgColumn<\n ColumnBaseConfig<ColumnDataType, string>,\n Record<string, unknown>\n>\n\nexport type GenericColumns = {\n [x: string]: GenericColumn\n}\n\nexport type GenericTable = PgTableWithColumns<{\n columns: GenericColumns\n dialect: string\n name: string\n schema: string\n}>\n\nexport type GenericEnum = PgEnum<[string, ...string[]]>\n\nexport type GenericRelation = Relations<string, Record<string, Relation<string>>>\n\nexport type PostgresDB = NodePgDatabase<Record<string, unknown>>\n\nexport type CountDistinct = (args: {\n column?: PgColumn<any> | SQLiteColumn<any>\n db: PostgresDB | TransactionPg\n joins: BuildQueryJoinAliases\n tableName: string\n where: SQL\n}) => Promise<number>\n\nexport type DeleteWhere = (args: {\n db: PostgresDB | TransactionPg\n tableName: string\n where: SQL\n}) => Promise<void>\n\nexport type DropDatabase = (args: { adapter: BasePostgresAdapter }) => Promise<void>\n\nexport type Execute<T> = (args: {\n db?: PostgresDB | TransactionPg\n drizzle?: PostgresDB\n raw?: string\n sql?: SQL<unknown>\n}) => Promise<QueryResult<Record<string, T>>>\n\nexport type Insert = (args: {\n db: PostgresDB | TransactionPg\n onConflictDoUpdate?: PgInsertOnConflictDoUpdateConfig<any>\n tableName: string\n values: Record<string, unknown> | Record<string, unknown>[]\n}) => Promise<Record<string, unknown>[]>\n\nexport type CreateDatabase = (args?: {\n /**\n * Name of a database, defaults to the current one\n */\n name?: string\n /**\n * Schema to create in addition to 'public'. Defaults from adapter.schemaName if exists.\n */\n schemaName?: string\n}) => Promise<boolean>\n\ntype Schema =\n | {\n enum: typeof pgEnum\n table: PgTableFn<string>\n }\n | PgSchema\n\ntype PostgresSchema = {\n enums: Record<string, GenericEnum>\n relations: Record<string, GenericRelation>\n tables: Record<string, PgTableWithColumns<any>>\n}\n\ntype PostgresSchemaHookArgs = {\n adapter: PostgresDrizzleAdapter\n extendTable: typeof extendDrizzleTable\n schema: PostgresSchema\n}\n\nexport type PostgresSchemaHook = (\n args: PostgresSchemaHookArgs,\n) => PostgresSchema | Promise<PostgresSchema>\n\nexport type BasePostgresAdapter = {\n afterSchemaInit: PostgresSchemaHook[]\n beforeSchemaInit: PostgresSchemaHook[]\n countDistinct: CountDistinct\n createDatabase: CreateDatabase\n createExtensions: () => Promise<void>\n defaultDrizzleSnapshot: DrizzleSnapshotJSON\n deleteWhere: DeleteWhere\n disableCreateDatabase: boolean\n drizzle: PostgresDB\n dropDatabase: DropDatabase\n enums: Record<string, GenericEnum>\n execute: Execute<unknown>\n extensions: Record<string, boolean>\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: 'serial' | 'uuid' | 'uuidv7'\n initializing: Promise<void>\n insert: Insert\n localesSuffix?: string\n logger: DrizzleConfig['logger']\n operators: Operators\n pgSchema: Schema\n poolOptions?: ClientConfig\n prodMigrations?: {\n down: (args: MigrateDownArgs) => Promise<void>\n name: string\n up: (args: MigrateUpArgs) => Promise<void>\n }[]\n push: boolean\n readReplicaOptions?: string[]\n rejectInitializing: () => void\n relations: Record<string, GenericRelation>\n relationshipsSuffix?: string\n resolveInitializing: () => void\n schemaName?: string\n sessions: {\n [id: string]: {\n db: PostgresDB | TransactionPg\n reject: () => Promise<void>\n resolve: () => Promise<void>\n }\n }\n tableNameMap: Map<string, string>\n tables: Record<string, GenericTable>\n tablesFilter?: string[]\n versionsSuffix?: string\n} & PostgresDrizzleAdapter\n\nexport type PostgresDrizzleAdapter = Omit<\n DrizzleAdapter,\n | 'countDistinct'\n | 'deleteWhere'\n | 'drizzle'\n | 'dropDatabase'\n | 'execute'\n | 'insert'\n | 'operators'\n | 'relations'\n>\n\nexport type IDType = 'integer' | 'numeric' | 'uuid' | 'varchar'\n\nexport type MigrateUpArgs = {\n /**\n * The Postgres 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-postgres'\n *\n * export async function up({ db, payload, req }: MigrateUpArgs): Promise<void> {\n * const { rows: posts } = await db.execute(sql`SELECT * FROM posts`)\n * }\n * ```\n */\n db: PostgresDB\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, sql } from '@payloadcms/db-postgres'\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}\n\nexport type MigrateDownArgs = {\n /**\n * The Postgres 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-postgres'\n *\n * export async function down({ db, payload, req }: MigrateDownArgs): Promise<void> {\n * const { rows: posts } = await db.execute(sql`SELECT * FROM posts`)\n * }\n * ```\n */\n db: PostgresDB\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-postgres'\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"],"names":[],"mappings":"AAoOA,WA8BC"}
1
+ {"version":3,"sources":["../../src/postgres/types.ts"],"sourcesContent":["import type { DrizzleSnapshotJSON } from 'drizzle-kit/api'\nimport type {\n ColumnBaseConfig,\n ColumnDataType,\n DrizzleConfig,\n Relation,\n Relations,\n SQL,\n} from 'drizzle-orm'\nimport type { NodePgDatabase } from 'drizzle-orm/node-postgres'\nimport type {\n ForeignKeyBuilder,\n IndexBuilder,\n PgColumn,\n PgEnum,\n pgEnum,\n PgInsertOnConflictDoUpdateConfig,\n PgSchema,\n PgTableWithColumns,\n UniqueConstraintBuilder,\n} from 'drizzle-orm/pg-core'\nimport type { PgTableFn } from 'drizzle-orm/pg-core/table'\nimport type { SQLiteColumn } from 'drizzle-orm/sqlite-core'\nimport type { Payload, PayloadRequest } from 'payload'\nimport type { ClientConfig, QueryResult } from 'pg'\n\nimport type { extendDrizzleTable, Operators } from '../index.js'\nimport type {\n BuildQueryJoinAliases,\n DrizzleAdapter,\n DrizzleOperatorHandler,\n TransactionPg,\n} from '../types.js'\n\nexport type BaseExtraConfig = Record<\n string,\n (cols: GenericColumns) => ForeignKeyBuilder | IndexBuilder | UniqueConstraintBuilder\n>\n\nexport type RelationMap = Map<\n string,\n {\n localized: boolean\n relationName?: string\n target: string\n type: 'many' | 'one'\n }\n>\n\nexport type GenericColumn = PgColumn<\n ColumnBaseConfig<ColumnDataType, string>,\n Record<string, unknown>\n>\n\nexport type GenericColumns = {\n [x: string]: GenericColumn\n}\n\nexport type GenericTable = PgTableWithColumns<{\n columns: GenericColumns\n dialect: string\n name: string\n schema: string\n}>\n\nexport type GenericEnum = PgEnum<[string, ...string[]]>\n\nexport type GenericRelation = Relations<string, Record<string, Relation<string>>>\n\nexport type PostgresDB = NodePgDatabase<Record<string, unknown>>\n\nexport type CountDistinct = (args: {\n column?: PgColumn<any> | SQLiteColumn<any>\n db: PostgresDB | TransactionPg\n joins: BuildQueryJoinAliases\n tableName: string\n where: SQL\n}) => Promise<number>\n\nexport type DeleteWhere = (args: {\n db: PostgresDB | TransactionPg\n tableName: string\n where: SQL\n}) => Promise<void>\n\nexport type DropDatabase = (args: { adapter: BasePostgresAdapter }) => Promise<void>\n\nexport type Execute<T> = (args: {\n db?: PostgresDB | TransactionPg\n drizzle?: PostgresDB\n raw?: string\n sql?: SQL<unknown>\n}) => Promise<QueryResult<Record<string, T>>>\n\nexport type Insert = (args: {\n db: PostgresDB | TransactionPg\n onConflictDoUpdate?: PgInsertOnConflictDoUpdateConfig<any>\n tableName: string\n values: Record<string, unknown> | Record<string, unknown>[]\n}) => Promise<Record<string, unknown>[]>\n\nexport type CreateDatabase = (args?: {\n /**\n * Name of a database, defaults to the current one\n */\n name?: string\n /**\n * Schema to create in addition to 'public'. Defaults from adapter.schemaName if exists.\n */\n schemaName?: string\n}) => Promise<boolean>\n\ntype Schema =\n | {\n enum: typeof pgEnum\n table: PgTableFn<string>\n }\n | PgSchema\n\ntype PostgresSchema = {\n enums: Record<string, GenericEnum>\n relations: Record<string, GenericRelation>\n tables: Record<string, PgTableWithColumns<any>>\n}\n\ntype PostgresSchemaHookArgs = {\n adapter: PostgresDrizzleAdapter\n extendTable: typeof extendDrizzleTable\n schema: PostgresSchema\n}\n\nexport type PostgresSchemaHook = (\n args: PostgresSchemaHookArgs,\n) => PostgresSchema | Promise<PostgresSchema>\n\nexport type PostgresOperatorHandler = {\n /**\n * Postgres extensions that must be installed in the database for this handler to be usable.\n * Checked once, against the database, when the adapter connects.\n */\n requiredExtensions?: string[]\n} & DrizzleOperatorHandler\n\nexport type PostgresQueryConfig = {\n operatorHandlers?: PostgresOperatorHandler[]\n}\n\nexport type BasePostgresAdapter = {\n afterSchemaInit: PostgresSchemaHook[]\n beforeSchemaInit: PostgresSchemaHook[]\n countDistinct: CountDistinct\n createDatabase: CreateDatabase\n createExtensions: () => Promise<void>\n defaultDrizzleSnapshot: DrizzleSnapshotJSON\n deleteWhere: DeleteWhere\n disableCreateDatabase: boolean\n drizzle: PostgresDB\n dropDatabase: DropDatabase\n enums: Record<string, GenericEnum>\n execute: Execute<unknown>\n extensions: Record<string, boolean>\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: 'serial' | 'uuid' | 'uuidv7'\n initializing: Promise<void>\n insert: Insert\n localesSuffix?: string\n logger: DrizzleConfig['logger']\n operatorHandlers: PostgresOperatorHandler[]\n operators: Operators\n pgSchema: Schema\n poolOptions?: ClientConfig\n prodMigrations?: {\n down: (args: MigrateDownArgs) => Promise<void>\n name: string\n up: (args: MigrateUpArgs) => Promise<void>\n }[]\n push: boolean\n readReplicaOptions?: string[]\n rejectInitializing: () => void\n relations: Record<string, GenericRelation>\n relationshipsSuffix?: string\n resolveInitializing: () => void\n schemaName?: string\n sessions: {\n [id: string]: {\n db: PostgresDB | TransactionPg\n reject: () => Promise<void>\n resolve: () => Promise<void>\n }\n }\n tableNameMap: Map<string, string>\n tables: Record<string, GenericTable>\n tablesFilter?: string[]\n versionsSuffix?: string\n} & PostgresDrizzleAdapter\n\nexport type PostgresDrizzleAdapter = Omit<\n DrizzleAdapter,\n | 'countDistinct'\n | 'deleteWhere'\n | 'drizzle'\n | 'dropDatabase'\n | 'execute'\n | 'insert'\n | 'operatorHandlers'\n | 'operators'\n | 'relations'\n>\n\nexport type IDType = 'integer' | 'numeric' | 'uuid' | 'varchar'\n\nexport type MigrateUpArgs = {\n /**\n * The Postgres 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-postgres'\n *\n * export async function up({ db, payload, req }: MigrateUpArgs): Promise<void> {\n * const { rows: posts } = await db.execute(sql`SELECT * FROM posts`)\n * }\n * ```\n */\n db: PostgresDB\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, sql } from '@payloadcms/db-postgres'\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}\n\nexport type MigrateDownArgs = {\n /**\n * The Postgres 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-postgres'\n *\n * export async function down({ db, payload, req }: MigrateDownArgs): Promise<void> {\n * const { rows: posts } = await db.execute(sql`SELECT * FROM posts`)\n * }\n * ```\n */\n db: PostgresDB\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-postgres'\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"],"names":[],"mappings":"AAuPA,WA8BC"}
@@ -0,0 +1,22 @@
1
+ import type { Column, SQL } from 'drizzle-orm';
2
+ import type { FlattenedField, Operator } from 'payload';
3
+ import type { DrizzleAdapter } from '../types.js';
4
+ import type { DrizzleResolvedOperator } from './operatorMap.js';
5
+ type Args = {
6
+ adapter: DrizzleAdapter;
7
+ column: Column | SQL;
8
+ field: FlattenedField;
9
+ locale?: string;
10
+ originalOperator: Operator;
11
+ path: string;
12
+ resolvedOperator: DrizzleResolvedOperator;
13
+ value: unknown;
14
+ };
15
+ /**
16
+ * Builds the final, user-facing SQL comparison for one query leaf: applies every matching
17
+ * operand-transform handler in configuration order, then either calls the single matching
18
+ * replacement handler or falls back to `adapter.operators[resolvedOperator]`.
19
+ */
20
+ export declare const buildOperatorConstraint: (args: Args) => SQL;
21
+ export {};
22
+ //# sourceMappingURL=buildOperatorConstraint.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildOperatorConstraint.d.ts","sourceRoot":"","sources":["../../src/queries/buildOperatorConstraint.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AAC9C,OAAO,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAIvD,OAAO,KAAK,EACV,cAAc,EAKf,MAAM,aAAa,CAAA;AACpB,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAA;AAE/D,KAAK,IAAI,GAAG;IACV,OAAO,EAAE,cAAc,CAAA;IACvB,MAAM,EAAE,MAAM,GAAG,GAAG,CAAA;IACpB,KAAK,EAAE,cAAc,CAAA;IACrB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,gBAAgB,EAAE,QAAQ,CAAA;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,gBAAgB,EAAE,uBAAuB,CAAA;IACzC,KAAK,EAAE,OAAO,CAAA;CACf,CAAA;AAsBD;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,SAAU,IAAI,KAAG,GAuDpD,CAAA"}