@payloadcms/db-postgres 3.0.0-beta.11 → 3.0.0-beta.111

Sign up to get free protection for your applications and to get access to all the features.
Files changed (366) hide show
  1. package/README.md +1 -1
  2. package/dist/connect.d.ts +1 -1
  3. package/dist/connect.d.ts.map +1 -1
  4. package/dist/connect.js +32 -16
  5. package/dist/connect.js.map +1 -1
  6. package/dist/exports/migration-utils.d.ts +2 -0
  7. package/dist/exports/migration-utils.d.ts.map +1 -0
  8. package/dist/exports/migration-utils.js +3 -0
  9. package/dist/exports/migration-utils.js.map +1 -0
  10. package/dist/index.d.ts +3 -3
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +49 -71
  13. package/dist/index.js.map +1 -1
  14. package/dist/predefinedMigrations/relationships-v2-v3.d.ts +4 -0
  15. package/dist/predefinedMigrations/relationships-v2-v3.d.ts.map +1 -0
  16. package/dist/predefinedMigrations/relationships-v2-v3.js.map +1 -0
  17. package/dist/predefinedMigrations/relationships-v2-v3.mjs +11 -0
  18. package/dist/predefinedMigrations/v2-v3/fetchAndResave/index.d.ts +20 -0
  19. package/dist/predefinedMigrations/v2-v3/fetchAndResave/index.d.ts.map +1 -0
  20. package/dist/predefinedMigrations/v2-v3/fetchAndResave/index.js +169 -0
  21. package/dist/predefinedMigrations/v2-v3/fetchAndResave/index.js.map +1 -0
  22. package/dist/predefinedMigrations/v2-v3/fetchAndResave/traverseFields.d.ts +11 -0
  23. package/dist/predefinedMigrations/v2-v3/fetchAndResave/traverseFields.d.ts.map +1 -0
  24. package/dist/predefinedMigrations/v2-v3/fetchAndResave/traverseFields.js +193 -0
  25. package/dist/predefinedMigrations/v2-v3/fetchAndResave/traverseFields.js.map +1 -0
  26. package/dist/predefinedMigrations/v2-v3/groupUpSQLStatements.d.ts +3 -0
  27. package/dist/predefinedMigrations/v2-v3/groupUpSQLStatements.d.ts.map +1 -0
  28. package/dist/predefinedMigrations/v2-v3/groupUpSQLStatements.js +56 -0
  29. package/dist/predefinedMigrations/v2-v3/groupUpSQLStatements.js.map +1 -0
  30. package/dist/predefinedMigrations/v2-v3/index.d.ts +23 -0
  31. package/dist/predefinedMigrations/v2-v3/index.d.ts.map +1 -0
  32. package/dist/predefinedMigrations/v2-v3/index.js +211 -0
  33. package/dist/predefinedMigrations/v2-v3/index.js.map +1 -0
  34. package/dist/predefinedMigrations/v2-v3/migrateRelationships.d.ts +20 -0
  35. package/dist/predefinedMigrations/v2-v3/migrateRelationships.d.ts.map +1 -0
  36. package/dist/predefinedMigrations/v2-v3/migrateRelationships.js +63 -0
  37. package/dist/predefinedMigrations/v2-v3/migrateRelationships.js.map +1 -0
  38. package/dist/predefinedMigrations/v2-v3/traverseFields.d.ts +23 -0
  39. package/dist/predefinedMigrations/v2-v3/traverseFields.d.ts.map +1 -0
  40. package/dist/predefinedMigrations/v2-v3/traverseFields.js +85 -0
  41. package/dist/predefinedMigrations/v2-v3/traverseFields.js.map +1 -0
  42. package/dist/predefinedMigrations/v2-v3/types.d.ts +9 -0
  43. package/dist/predefinedMigrations/v2-v3/types.d.ts.map +1 -0
  44. package/dist/predefinedMigrations/v2-v3/types.js +6 -0
  45. package/dist/predefinedMigrations/v2-v3/types.js.map +1 -0
  46. package/dist/types.d.ts +56 -80
  47. package/dist/types.d.ts.map +1 -1
  48. package/dist/types.js.map +1 -1
  49. package/package.json +40 -33
  50. package/dist/create.d.ts +0 -3
  51. package/dist/create.d.ts.map +0 -1
  52. package/dist/create.js +0 -21
  53. package/dist/create.js.map +0 -1
  54. package/dist/createGlobal.d.ts +0 -5
  55. package/dist/createGlobal.d.ts.map +0 -1
  56. package/dist/createGlobal.js +0 -21
  57. package/dist/createGlobal.js.map +0 -1
  58. package/dist/createGlobalVersion.d.ts +0 -6
  59. package/dist/createGlobalVersion.d.ts.map +0 -1
  60. package/dist/createGlobalVersion.js +0 -37
  61. package/dist/createGlobalVersion.js.map +0 -1
  62. package/dist/createMigration.d.ts +0 -3
  63. package/dist/createMigration.d.ts.map +0 -1
  64. package/dist/createMigration.js +0 -81
  65. package/dist/createMigration.js.map +0 -1
  66. package/dist/createVersion.d.ts +0 -5
  67. package/dist/createVersion.d.ts.map +0 -1
  68. package/dist/createVersion.js +0 -48
  69. package/dist/createVersion.js.map +0 -1
  70. package/dist/deleteMany.d.ts +0 -3
  71. package/dist/deleteMany.d.ts.map +0 -1
  72. package/dist/deleteMany.js +0 -31
  73. package/dist/deleteMany.js.map +0 -1
  74. package/dist/deleteOne.d.ts +0 -3
  75. package/dist/deleteOne.d.ts.map +0 -1
  76. package/dist/deleteOne.js +0 -62
  77. package/dist/deleteOne.js.map +0 -1
  78. package/dist/deleteVersions.d.ts +0 -3
  79. package/dist/deleteVersions.d.ts.map +0 -1
  80. package/dist/deleteVersions.js +0 -35
  81. package/dist/deleteVersions.js.map +0 -1
  82. package/dist/destroy.d.ts +0 -3
  83. package/dist/destroy.d.ts.map +0 -1
  84. package/dist/destroy.js +0 -11
  85. package/dist/destroy.js.map +0 -1
  86. package/dist/find/buildFindManyArgs.d.ts +0 -13
  87. package/dist/find/buildFindManyArgs.d.ts.map +0 -1
  88. package/dist/find/buildFindManyArgs.js +0 -64
  89. package/dist/find/buildFindManyArgs.js.map +0 -1
  90. package/dist/find/chainMethods.d.ts +0 -16
  91. package/dist/find/chainMethods.d.ts.map +0 -1
  92. package/dist/find/chainMethods.js +0 -12
  93. package/dist/find/chainMethods.js.map +0 -1
  94. package/dist/find/findMany.d.ts +0 -22
  95. package/dist/find/findMany.d.ts.map +0 -1
  96. package/dist/find/findMany.js +0 -163
  97. package/dist/find/findMany.js.map +0 -1
  98. package/dist/find/traverseFields.d.ts +0 -16
  99. package/dist/find/traverseFields.d.ts.map +0 -1
  100. package/dist/find/traverseFields.js +0 -154
  101. package/dist/find/traverseFields.js.map +0 -1
  102. package/dist/find.d.ts +0 -3
  103. package/dist/find.d.ts.map +0 -1
  104. package/dist/find.js +0 -24
  105. package/dist/find.js.map +0 -1
  106. package/dist/findGlobal.d.ts +0 -3
  107. package/dist/findGlobal.d.ts.map +0 -1
  108. package/dist/findGlobal.js +0 -26
  109. package/dist/findGlobal.js.map +0 -1
  110. package/dist/findGlobalVersions.d.ts +0 -3
  111. package/dist/findGlobalVersions.d.ts.map +0 -1
  112. package/dist/findGlobalVersions.js +0 -28
  113. package/dist/findGlobalVersions.js.map +0 -1
  114. package/dist/findOne.d.ts +0 -5
  115. package/dist/findOne.d.ts.map +0 -1
  116. package/dist/findOne.js +0 -24
  117. package/dist/findOne.js.map +0 -1
  118. package/dist/findVersions.d.ts +0 -3
  119. package/dist/findVersions.d.ts.map +0 -1
  120. package/dist/findVersions.js +0 -28
  121. package/dist/findVersions.js.map +0 -1
  122. package/dist/init.d.ts +0 -3
  123. package/dist/init.d.ts.map +0 -1
  124. package/dist/init.js +0 -94
  125. package/dist/init.js.map +0 -1
  126. package/dist/migrate.d.ts +0 -3
  127. package/dist/migrate.d.ts.map +0 -1
  128. package/dist/migrate.js +0 -99
  129. package/dist/migrate.js.map +0 -1
  130. package/dist/migrateDown.d.ts +0 -3
  131. package/dist/migrateDown.d.ts.map +0 -1
  132. package/dist/migrateDown.js +0 -63
  133. package/dist/migrateDown.js.map +0 -1
  134. package/dist/migrateFresh.d.ts +0 -8
  135. package/dist/migrateFresh.d.ts.map +0 -1
  136. package/dist/migrateFresh.js +0 -72
  137. package/dist/migrateFresh.js.map +0 -1
  138. package/dist/migrateRefresh.d.ts +0 -6
  139. package/dist/migrateRefresh.d.ts.map +0 -1
  140. package/dist/migrateRefresh.js +0 -102
  141. package/dist/migrateRefresh.js.map +0 -1
  142. package/dist/migrateReset.d.ts +0 -6
  143. package/dist/migrateReset.d.ts.map +0 -1
  144. package/dist/migrateReset.js +0 -82
  145. package/dist/migrateReset.js.map +0 -1
  146. package/dist/migrateStatus.d.ts +0 -3
  147. package/dist/migrateStatus.d.ts.map +0 -1
  148. package/dist/migrateStatus.js +0 -44
  149. package/dist/migrateStatus.js.map +0 -1
  150. package/dist/queries/buildAndOrConditions.d.ts +0 -17
  151. package/dist/queries/buildAndOrConditions.d.ts.map +0 -1
  152. package/dist/queries/buildAndOrConditions.js +0 -29
  153. package/dist/queries/buildAndOrConditions.js.map +0 -1
  154. package/dist/queries/buildQuery.d.ts +0 -31
  155. package/dist/queries/buildQuery.d.ts.map +0 -1
  156. package/dist/queries/buildQuery.js +0 -76
  157. package/dist/queries/buildQuery.js.map +0 -1
  158. package/dist/queries/createJSONQuery/convertPathToJSONTraversal.d.ts +0 -2
  159. package/dist/queries/createJSONQuery/convertPathToJSONTraversal.d.ts.map +0 -1
  160. package/dist/queries/createJSONQuery/convertPathToJSONTraversal.js +0 -14
  161. package/dist/queries/createJSONQuery/convertPathToJSONTraversal.js.map +0 -1
  162. package/dist/queries/createJSONQuery/formatJSONPathSegment.d.ts +0 -2
  163. package/dist/queries/createJSONQuery/formatJSONPathSegment.d.ts.map +0 -1
  164. package/dist/queries/createJSONQuery/formatJSONPathSegment.js +0 -5
  165. package/dist/queries/createJSONQuery/formatJSONPathSegment.js.map +0 -1
  166. package/dist/queries/createJSONQuery/index.d.ts +0 -10
  167. package/dist/queries/createJSONQuery/index.d.ts.map +0 -1
  168. package/dist/queries/createJSONQuery/index.js +0 -54
  169. package/dist/queries/createJSONQuery/index.js.map +0 -1
  170. package/dist/queries/getTableColumnFromPath.d.ts +0 -51
  171. package/dist/queries/getTableColumnFromPath.d.ts.map +0 -1
  172. package/dist/queries/getTableColumnFromPath.js +0 -412
  173. package/dist/queries/getTableColumnFromPath.js.map +0 -1
  174. package/dist/queries/operatorMap.d.ts +0 -18
  175. package/dist/queries/operatorMap.d.ts.map +0 -1
  176. package/dist/queries/operatorMap.js +0 -24
  177. package/dist/queries/operatorMap.js.map +0 -1
  178. package/dist/queries/parseParams.d.ts +0 -17
  179. package/dist/queries/parseParams.d.ts.map +0 -1
  180. package/dist/queries/parseParams.js +0 -182
  181. package/dist/queries/parseParams.js.map +0 -1
  182. package/dist/queries/sanitizeQueryValue.d.ts +0 -15
  183. package/dist/queries/sanitizeQueryValue.d.ts.map +0 -1
  184. package/dist/queries/sanitizeQueryValue.js +0 -90
  185. package/dist/queries/sanitizeQueryValue.js.map +0 -1
  186. package/dist/queries/selectDistinct.d.ts +0 -23
  187. package/dist/queries/selectDistinct.d.ts.map +0 -1
  188. package/dist/queries/selectDistinct.js +0 -41
  189. package/dist/queries/selectDistinct.js.map +0 -1
  190. package/dist/queryDrafts.d.ts +0 -3
  191. package/dist/queryDrafts.d.ts.map +0 -1
  192. package/dist/queryDrafts.js +0 -45
  193. package/dist/queryDrafts.js.map +0 -1
  194. package/dist/schema/build.d.ts +0 -29
  195. package/dist/schema/build.d.ts.map +0 -1
  196. package/dist/schema/build.js +0 -279
  197. package/dist/schema/build.js.map +0 -1
  198. package/dist/schema/createIndex.d.ts +0 -12
  199. package/dist/schema/createIndex.d.ts.map +0 -1
  200. package/dist/schema/createIndex.js +0 -18
  201. package/dist/schema/createIndex.js.map +0 -1
  202. package/dist/schema/getTableName.d.ts +0 -32
  203. package/dist/schema/getTableName.d.ts.map +0 -1
  204. package/dist/schema/getTableName.js +0 -31
  205. package/dist/schema/getTableName.js.map +0 -1
  206. package/dist/schema/idToUUID.d.ts +0 -3
  207. package/dist/schema/idToUUID.d.ts.map +0 -1
  208. package/dist/schema/idToUUID.js +0 -11
  209. package/dist/schema/idToUUID.js.map +0 -1
  210. package/dist/schema/parentIDColumnMap.d.ts +0 -4
  211. package/dist/schema/parentIDColumnMap.d.ts.map +0 -1
  212. package/dist/schema/parentIDColumnMap.js +0 -9
  213. package/dist/schema/parentIDColumnMap.js.map +0 -1
  214. package/dist/schema/setColumnID.d.ts +0 -11
  215. package/dist/schema/setColumnID.d.ts.map +0 -1
  216. package/dist/schema/setColumnID.js +0 -24
  217. package/dist/schema/setColumnID.js.map +0 -1
  218. package/dist/schema/traverseFields.d.ts +0 -38
  219. package/dist/schema/traverseFields.d.ts.map +0 -1
  220. package/dist/schema/traverseFields.js +0 -530
  221. package/dist/schema/traverseFields.js.map +0 -1
  222. package/dist/schema/validateExistingBlockIsIdentical.d.ts +0 -11
  223. package/dist/schema/validateExistingBlockIsIdentical.d.ts.map +0 -1
  224. package/dist/schema/validateExistingBlockIsIdentical.js +0 -70
  225. package/dist/schema/validateExistingBlockIsIdentical.js.map +0 -1
  226. package/dist/transactions/beginTransaction.d.ts +0 -3
  227. package/dist/transactions/beginTransaction.d.ts.map +0 -1
  228. package/dist/transactions/beginTransaction.js +0 -47
  229. package/dist/transactions/beginTransaction.js.map +0 -1
  230. package/dist/transactions/commitTransaction.d.ts +0 -3
  231. package/dist/transactions/commitTransaction.d.ts.map +0 -1
  232. package/dist/transactions/commitTransaction.js +0 -14
  233. package/dist/transactions/commitTransaction.js.map +0 -1
  234. package/dist/transactions/rollbackTransaction.d.ts +0 -3
  235. package/dist/transactions/rollbackTransaction.d.ts.map +0 -1
  236. package/dist/transactions/rollbackTransaction.js +0 -13
  237. package/dist/transactions/rollbackTransaction.js.map +0 -1
  238. package/dist/transform/read/hasManyNumber.d.ts +0 -10
  239. package/dist/transform/read/hasManyNumber.d.ts.map +0 -1
  240. package/dist/transform/read/hasManyNumber.js +0 -10
  241. package/dist/transform/read/hasManyNumber.js.map +0 -1
  242. package/dist/transform/read/hasManyText.d.ts +0 -10
  243. package/dist/transform/read/hasManyText.d.ts.map +0 -1
  244. package/dist/transform/read/hasManyText.js +0 -10
  245. package/dist/transform/read/hasManyText.js.map +0 -1
  246. package/dist/transform/read/index.d.ts +0 -12
  247. package/dist/transform/read/index.d.ts.map +0 -1
  248. package/dist/transform/read/index.js +0 -43
  249. package/dist/transform/read/index.js.map +0 -1
  250. package/dist/transform/read/relationship.d.ts +0 -10
  251. package/dist/transform/read/relationship.d.ts.map +0 -1
  252. package/dist/transform/read/relationship.js +0 -64
  253. package/dist/transform/read/relationship.js.map +0 -1
  254. package/dist/transform/read/traverseFields.d.ts +0 -52
  255. package/dist/transform/read/traverseFields.d.ts.map +0 -1
  256. package/dist/transform/read/traverseFields.js +0 -421
  257. package/dist/transform/read/traverseFields.js.map +0 -1
  258. package/dist/transform/write/array.d.ts +0 -26
  259. package/dist/transform/write/array.d.ts.map +0 -1
  260. package/dist/transform/write/array.js +0 -58
  261. package/dist/transform/write/array.js.map +0 -1
  262. package/dist/transform/write/blocks.d.ts +0 -25
  263. package/dist/transform/write/blocks.d.ts.map +0 -1
  264. package/dist/transform/write/blocks.js +0 -54
  265. package/dist/transform/write/blocks.js.map +0 -1
  266. package/dist/transform/write/index.d.ts +0 -13
  267. package/dist/transform/write/index.d.ts.map +0 -1
  268. package/dist/transform/write/index.js +0 -41
  269. package/dist/transform/write/index.js.map +0 -1
  270. package/dist/transform/write/numbers.d.ts +0 -8
  271. package/dist/transform/write/numbers.d.ts.map +0 -1
  272. package/dist/transform/write/numbers.js +0 -11
  273. package/dist/transform/write/numbers.js.map +0 -1
  274. package/dist/transform/write/relationships.d.ts +0 -10
  275. package/dist/transform/write/relationships.d.ts.map +0 -1
  276. package/dist/transform/write/relationships.js +0 -23
  277. package/dist/transform/write/relationships.js.map +0 -1
  278. package/dist/transform/write/selects.d.ts +0 -8
  279. package/dist/transform/write/selects.d.ts.map +0 -1
  280. package/dist/transform/write/selects.js +0 -20
  281. package/dist/transform/write/selects.js.map +0 -1
  282. package/dist/transform/write/texts.d.ts +0 -8
  283. package/dist/transform/write/texts.d.ts.map +0 -1
  284. package/dist/transform/write/texts.js +0 -11
  285. package/dist/transform/write/texts.js.map +0 -1
  286. package/dist/transform/write/traverseFields.d.ts +0 -50
  287. package/dist/transform/write/traverseFields.d.ts.map +0 -1
  288. package/dist/transform/write/traverseFields.js +0 -428
  289. package/dist/transform/write/traverseFields.js.map +0 -1
  290. package/dist/transform/write/types.d.ts +0 -43
  291. package/dist/transform/write/types.d.ts.map +0 -1
  292. package/dist/transform/write/types.js +0 -3
  293. package/dist/transform/write/types.js.map +0 -1
  294. package/dist/update.d.ts +0 -3
  295. package/dist/update.d.ts.map +0 -1
  296. package/dist/update.js +0 -58
  297. package/dist/update.js.map +0 -1
  298. package/dist/updateGlobal.d.ts +0 -5
  299. package/dist/updateGlobal.d.ts.map +0 -1
  300. package/dist/updateGlobal.js +0 -28
  301. package/dist/updateGlobal.js.map +0 -1
  302. package/dist/updateGlobalVersion.d.ts +0 -5
  303. package/dist/updateGlobalVersion.d.ts.map +0 -1
  304. package/dist/updateGlobalVersion.js +0 -40
  305. package/dist/updateGlobalVersion.js.map +0 -1
  306. package/dist/updateVersion.d.ts +0 -5
  307. package/dist/updateVersion.d.ts.map +0 -1
  308. package/dist/updateVersion.js +0 -40
  309. package/dist/updateVersion.js.map +0 -1
  310. package/dist/upsertRow/deleteExistingArrayRows.d.ts +0 -10
  311. package/dist/upsertRow/deleteExistingArrayRows.d.ts.map +0 -1
  312. package/dist/upsertRow/deleteExistingArrayRows.js +0 -10
  313. package/dist/upsertRow/deleteExistingArrayRows.js.map +0 -1
  314. package/dist/upsertRow/deleteExistingRowsByPath.d.ts +0 -14
  315. package/dist/upsertRow/deleteExistingRowsByPath.d.ts.map +0 -1
  316. package/dist/upsertRow/deleteExistingRowsByPath.js +0 -33
  317. package/dist/upsertRow/deleteExistingRowsByPath.js.map +0 -1
  318. package/dist/upsertRow/index.d.ts +0 -4
  319. package/dist/upsertRow/index.d.ts.map +0 -1
  320. package/dist/upsertRow/index.js +0 -276
  321. package/dist/upsertRow/index.js.map +0 -1
  322. package/dist/upsertRow/insertArrays.d.ts +0 -13
  323. package/dist/upsertRow/insertArrays.d.ts.map +0 -1
  324. package/dist/upsertRow/insertArrays.js +0 -68
  325. package/dist/upsertRow/insertArrays.js.map +0 -1
  326. package/dist/upsertRow/types.d.ts +0 -27
  327. package/dist/upsertRow/types.d.ts.map +0 -1
  328. package/dist/upsertRow/types.js +0 -3
  329. package/dist/upsertRow/types.js.map +0 -1
  330. package/dist/utilities/appendPrefixToKeys.d.ts +0 -2
  331. package/dist/utilities/appendPrefixToKeys.d.ts.map +0 -1
  332. package/dist/utilities/appendPrefixToKeys.js +0 -6
  333. package/dist/utilities/appendPrefixToKeys.js.map +0 -1
  334. package/dist/utilities/createBlocksMap.d.ts +0 -5
  335. package/dist/utilities/createBlocksMap.d.ts.map +0 -1
  336. package/dist/utilities/createBlocksMap.js +0 -29
  337. package/dist/utilities/createBlocksMap.js.map +0 -1
  338. package/dist/utilities/createMigrationTable.d.ts +0 -3
  339. package/dist/utilities/createMigrationTable.d.ts.map +0 -1
  340. package/dist/utilities/createMigrationTable.js +0 -13
  341. package/dist/utilities/createMigrationTable.js.map +0 -1
  342. package/dist/utilities/createRelationshipMap.d.ts +0 -2
  343. package/dist/utilities/createRelationshipMap.d.ts.map +0 -1
  344. package/dist/utilities/createRelationshipMap.js +0 -19
  345. package/dist/utilities/createRelationshipMap.js.map +0 -1
  346. package/dist/utilities/hasLocalesTable.d.ts +0 -3
  347. package/dist/utilities/hasLocalesTable.d.ts.map +0 -1
  348. package/dist/utilities/hasLocalesTable.js +0 -11
  349. package/dist/utilities/hasLocalesTable.js.map +0 -1
  350. package/dist/utilities/isArrayOfRows.d.ts +0 -2
  351. package/dist/utilities/isArrayOfRows.d.ts.map +0 -1
  352. package/dist/utilities/isArrayOfRows.js +0 -5
  353. package/dist/utilities/isArrayOfRows.js.map +0 -1
  354. package/dist/utilities/migrationTableExists.d.ts +0 -3
  355. package/dist/utilities/migrationTableExists.d.ts.map +0 -1
  356. package/dist/utilities/migrationTableExists.js +0 -9
  357. package/dist/utilities/migrationTableExists.js.map +0 -1
  358. package/dist/utilities/parseError.d.ts +0 -5
  359. package/dist/utilities/parseError.d.ts.map +0 -1
  360. package/dist/utilities/parseError.js +0 -17
  361. package/dist/utilities/parseError.js.map +0 -1
  362. package/dist/utilities/pushDevSchema.d.ts +0 -9
  363. package/dist/utilities/pushDevSchema.d.ts.map +0 -1
  364. package/dist/utilities/pushDevSchema.js +0 -58
  365. package/dist/utilities/pushDevSchema.js.map +0 -1
  366. package/src/index.ts +0 -155
@@ -1,182 +0,0 @@
1
- /* eslint-disable no-await-in-loop */ import { and, ilike, isNotNull, isNull, ne, notInArray, or, sql } from 'drizzle-orm';
2
- import { QueryError } from 'payload/errors';
3
- import { validOperators } from 'payload/types';
4
- import { buildAndOrConditions } from './buildAndOrConditions.js';
5
- import { convertPathToJSONTraversal } from './createJSONQuery/convertPathToJSONTraversal.js';
6
- import { createJSONQuery } from './createJSONQuery/index.js';
7
- import { getTableColumnFromPath } from './getTableColumnFromPath.js';
8
- import { operatorMap } from './operatorMap.js';
9
- import { sanitizeQueryValue } from './sanitizeQueryValue.js';
10
- export async function parseParams({ adapter, fields, joinAliases, joins, locale, selectFields, tableName, where }) {
11
- let result;
12
- const constraints = [];
13
- if (typeof where === 'object' && Object.keys(where).length > 0) {
14
- // We need to determine if the whereKey is an AND, OR, or a schema path
15
- for (const relationOrPath of Object.keys(where)){
16
- if (relationOrPath) {
17
- const condition = where[relationOrPath];
18
- let conditionOperator;
19
- if (relationOrPath.toLowerCase() === 'and') {
20
- conditionOperator = 'and';
21
- } else if (relationOrPath.toLowerCase() === 'or') {
22
- conditionOperator = 'or';
23
- }
24
- if (Array.isArray(condition)) {
25
- const builtConditions = await buildAndOrConditions({
26
- adapter,
27
- fields,
28
- joinAliases,
29
- joins,
30
- locale,
31
- selectFields,
32
- tableName,
33
- where: condition
34
- });
35
- if (builtConditions.length > 0) {
36
- result = operatorMap[conditionOperator](...builtConditions);
37
- }
38
- } else {
39
- // It's a path - and there can be multiple comparisons on a single path.
40
- // For example - title like 'test' and title not equal to 'tester'
41
- // So we need to loop on keys again here to handle each operator independently
42
- const pathOperators = where[relationOrPath];
43
- if (typeof pathOperators === 'object') {
44
- for (const operator of Object.keys(pathOperators)){
45
- if (validOperators.includes(operator)) {
46
- const val = where[relationOrPath][operator];
47
- const { columnName, constraints: queryConstraints, field, getNotNullColumnByValue, pathSegments, rawColumn, table } = getTableColumnFromPath({
48
- adapter,
49
- collectionPath: relationOrPath,
50
- fields,
51
- joinAliases,
52
- joins,
53
- locale,
54
- pathSegments: relationOrPath.replace(/__/g, '.').split('.'),
55
- selectFields,
56
- tableName,
57
- value: val
58
- });
59
- queryConstraints.forEach(({ columnName: col, table: constraintTable, value })=>{
60
- if (typeof value === 'string' && value.indexOf('%') > -1) {
61
- constraints.push(operatorMap.like(constraintTable[col], value));
62
- } else {
63
- constraints.push(operatorMap.equals(constraintTable[col], value));
64
- }
65
- });
66
- if ([
67
- 'json',
68
- 'richText'
69
- ].includes(field.type) && Array.isArray(pathSegments) && pathSegments.length > 1) {
70
- const segments = pathSegments.slice(1);
71
- segments.unshift(table[columnName].name);
72
- if (field.type === 'richText') {
73
- const jsonQuery = createJSONQuery({
74
- operator,
75
- pathSegments: segments,
76
- treatAsArray: [
77
- 'children'
78
- ],
79
- treatRootAsArray: true,
80
- value: val
81
- });
82
- constraints.push(sql.raw(jsonQuery));
83
- break;
84
- }
85
- const jsonQuery = convertPathToJSONTraversal(pathSegments);
86
- const operatorKeys = {
87
- contains: {
88
- operator: 'ilike',
89
- wildcard: '%'
90
- },
91
- equals: {
92
- operator: '=',
93
- wildcard: ''
94
- },
95
- exists: {
96
- operator: val === true ? 'is not null' : 'is null'
97
- },
98
- like: {
99
- operator: 'like',
100
- wildcard: '%'
101
- },
102
- not_equals: {
103
- operator: '<>',
104
- wildcard: ''
105
- }
106
- };
107
- let formattedValue = `'${operatorKeys[operator].wildcard}${val}${operatorKeys[operator].wildcard}'`;
108
- if (operator === 'exists') {
109
- formattedValue = '';
110
- }
111
- constraints.push(sql.raw(`${table[columnName].name}${jsonQuery} ${operatorKeys[operator].operator} ${formattedValue}`));
112
- break;
113
- }
114
- if (getNotNullColumnByValue) {
115
- const columnName = getNotNullColumnByValue(val);
116
- if (columnName) {
117
- constraints.push(isNotNull(table[columnName]));
118
- } else {
119
- throw new QueryError([
120
- {
121
- path: relationOrPath
122
- }
123
- ]);
124
- }
125
- break;
126
- }
127
- if (operator === 'like') {
128
- constraints.push(and(...val.split(' ').map((word)=>ilike(table[columnName], `%${word}%`))));
129
- break;
130
- }
131
- const sanitizedQueryValue = sanitizeQueryValue({
132
- adapter,
133
- field,
134
- operator,
135
- relationOrPath,
136
- val
137
- });
138
- if (sanitizedQueryValue === null) {
139
- break;
140
- }
141
- const { operator: queryOperator, value: queryValue } = sanitizedQueryValue;
142
- if (queryOperator === 'not_equals' && queryValue !== null) {
143
- constraints.push(or(isNull(rawColumn || table[columnName]), /* eslint-disable @typescript-eslint/no-explicit-any */ ne(rawColumn || table[columnName], queryValue)));
144
- break;
145
- }
146
- if ((field.type === 'relationship' || field.type === 'upload') && Array.isArray(queryValue) && operator === 'not_in') {
147
- constraints.push(sql`${notInArray(table[columnName], queryValue)} OR
148
- ${table[columnName]}
149
- IS
150
- NULL`);
151
- break;
152
- }
153
- if (operator === 'equals' && queryValue === null) {
154
- constraints.push(isNull(rawColumn || table[columnName]));
155
- break;
156
- }
157
- if (operator === 'not_equals' && queryValue === null) {
158
- constraints.push(isNotNull(rawColumn || table[columnName]));
159
- break;
160
- }
161
- constraints.push(operatorMap[queryOperator](rawColumn || table[columnName], queryValue));
162
- }
163
- }
164
- }
165
- }
166
- }
167
- }
168
- }
169
- if (constraints.length > 0) {
170
- if (result) {
171
- result = and(result, ...constraints);
172
- } else {
173
- result = and(...constraints);
174
- }
175
- }
176
- if (constraints.length === 1 && !result) {
177
- [result] = constraints;
178
- }
179
- return result;
180
- }
181
-
182
- //# sourceMappingURL=parseParams.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/queries/parseParams.ts"],"sourcesContent":["/* eslint-disable no-await-in-loop */\nimport type { SQL } from 'drizzle-orm'\nimport type { Field, Operator, Where } from 'payload/types'\n\nimport { and, ilike, isNotNull, isNull, ne, notInArray, or, sql } from 'drizzle-orm'\nimport { QueryError } from 'payload/errors'\nimport { validOperators } from 'payload/types'\n\nimport type { GenericColumn, PostgresAdapter } from '../types.js'\nimport type { BuildQueryJoinAliases, BuildQueryJoins } from './buildQuery.js'\n\nimport { buildAndOrConditions } from './buildAndOrConditions.js'\nimport { convertPathToJSONTraversal } from './createJSONQuery/convertPathToJSONTraversal.js'\nimport { createJSONQuery } from './createJSONQuery/index.js'\nimport { getTableColumnFromPath } from './getTableColumnFromPath.js'\nimport { operatorMap } from './operatorMap.js'\nimport { sanitizeQueryValue } from './sanitizeQueryValue.js'\n\ntype Args = {\n adapter: PostgresAdapter\n fields: Field[]\n joinAliases: BuildQueryJoinAliases\n joins: BuildQueryJoins\n locale: string\n selectFields: Record<string, GenericColumn>\n tableName: string\n where: Where\n}\n\nexport async function parseParams({\n adapter,\n fields,\n joinAliases,\n joins,\n locale,\n selectFields,\n tableName,\n where,\n}: Args): Promise<SQL> {\n let result: SQL\n const constraints: SQL[] = []\n\n if (typeof where === 'object' && Object.keys(where).length > 0) {\n // We need to determine if the whereKey is an AND, OR, or a schema path\n for (const relationOrPath of Object.keys(where)) {\n if (relationOrPath) {\n const condition = where[relationOrPath]\n let conditionOperator: 'and' | 'or'\n if (relationOrPath.toLowerCase() === 'and') {\n conditionOperator = 'and'\n } else if (relationOrPath.toLowerCase() === 'or') {\n conditionOperator = 'or'\n }\n if (Array.isArray(condition)) {\n const builtConditions = await buildAndOrConditions({\n adapter,\n fields,\n joinAliases,\n joins,\n locale,\n selectFields,\n tableName,\n where: condition,\n })\n if (builtConditions.length > 0) {\n result = operatorMap[conditionOperator](...builtConditions)\n }\n } else {\n // It's a path - and there can be multiple comparisons on a single path.\n // For example - title like 'test' and title not equal to 'tester'\n // So we need to loop on keys again here to handle each operator independently\n const pathOperators = where[relationOrPath]\n if (typeof pathOperators === 'object') {\n for (const operator of Object.keys(pathOperators)) {\n if (validOperators.includes(operator as Operator)) {\n const val = where[relationOrPath][operator]\n const {\n columnName,\n constraints: queryConstraints,\n field,\n getNotNullColumnByValue,\n pathSegments,\n rawColumn,\n table,\n } = getTableColumnFromPath({\n adapter,\n collectionPath: relationOrPath,\n fields,\n joinAliases,\n joins,\n locale,\n pathSegments: relationOrPath.replace(/__/g, '.').split('.'),\n selectFields,\n tableName,\n value: val,\n })\n\n queryConstraints.forEach(({ columnName: col, table: constraintTable, value }) => {\n if (typeof value === 'string' && value.indexOf('%') > -1) {\n constraints.push(operatorMap.like(constraintTable[col], value))\n } else {\n constraints.push(operatorMap.equals(constraintTable[col], value))\n }\n })\n\n if (\n ['json', 'richText'].includes(field.type) &&\n Array.isArray(pathSegments) &&\n pathSegments.length > 1\n ) {\n const segments = pathSegments.slice(1)\n segments.unshift(table[columnName].name)\n\n if (field.type === 'richText') {\n const jsonQuery = createJSONQuery({\n operator,\n pathSegments: segments,\n treatAsArray: ['children'],\n treatRootAsArray: true,\n value: val,\n })\n\n constraints.push(sql.raw(jsonQuery))\n break\n }\n\n const jsonQuery = convertPathToJSONTraversal(pathSegments)\n const operatorKeys = {\n contains: { operator: 'ilike', wildcard: '%' },\n equals: { operator: '=', wildcard: '' },\n exists: { operator: val === true ? 'is not null' : 'is null' },\n like: { operator: 'like', wildcard: '%' },\n not_equals: { operator: '<>', wildcard: '' },\n }\n let formattedValue = `'${operatorKeys[operator].wildcard}${val}${operatorKeys[operator].wildcard}'`\n\n if (operator === 'exists') {\n formattedValue = ''\n }\n\n constraints.push(\n sql.raw(\n `${table[columnName].name}${jsonQuery} ${operatorKeys[operator].operator} ${formattedValue}`,\n ),\n )\n\n break\n }\n\n if (getNotNullColumnByValue) {\n const columnName = getNotNullColumnByValue(val)\n if (columnName) {\n constraints.push(isNotNull(table[columnName]))\n } else {\n throw new QueryError([{ path: relationOrPath }])\n }\n break\n }\n\n if (operator === 'like') {\n constraints.push(\n and(...val.split(' ').map((word) => ilike(table[columnName], `%${word}%`))),\n )\n break\n }\n\n const sanitizedQueryValue = sanitizeQueryValue({\n adapter,\n field,\n operator,\n relationOrPath,\n val,\n })\n\n if (sanitizedQueryValue === null) {\n break\n }\n\n const { operator: queryOperator, value: queryValue } = sanitizedQueryValue\n\n if (queryOperator === 'not_equals' && queryValue !== null) {\n constraints.push(\n or(\n isNull(rawColumn || table[columnName]),\n /* eslint-disable @typescript-eslint/no-explicit-any */\n ne<any>(rawColumn || table[columnName], queryValue),\n ),\n )\n break\n }\n\n if (\n (field.type === 'relationship' || field.type === 'upload') &&\n Array.isArray(queryValue) &&\n operator === 'not_in'\n ) {\n constraints.push(\n sql`${notInArray(table[columnName], queryValue)} OR\n ${table[columnName]}\n IS\n NULL`,\n )\n\n break\n }\n\n if (operator === 'equals' && queryValue === null) {\n constraints.push(isNull(rawColumn || table[columnName]))\n break\n }\n\n if (operator === 'not_equals' && queryValue === null) {\n constraints.push(isNotNull(rawColumn || table[columnName]))\n break\n }\n\n constraints.push(\n operatorMap[queryOperator](rawColumn || table[columnName], queryValue),\n )\n }\n }\n }\n }\n }\n }\n }\n if (constraints.length > 0) {\n if (result) {\n result = and(result, ...constraints)\n } else {\n result = and(...constraints)\n }\n }\n if (constraints.length === 1 && !result) {\n ;[result] = constraints\n }\n\n return result\n}\n"],"names":["and","ilike","isNotNull","isNull","ne","notInArray","or","sql","QueryError","validOperators","buildAndOrConditions","convertPathToJSONTraversal","createJSONQuery","getTableColumnFromPath","operatorMap","sanitizeQueryValue","parseParams","adapter","fields","joinAliases","joins","locale","selectFields","tableName","where","result","constraints","Object","keys","length","relationOrPath","condition","conditionOperator","toLowerCase","Array","isArray","builtConditions","pathOperators","operator","includes","val","columnName","queryConstraints","field","getNotNullColumnByValue","pathSegments","rawColumn","table","collectionPath","replace","split","value","forEach","col","constraintTable","indexOf","push","like","equals","type","segments","slice","unshift","name","jsonQuery","treatAsArray","treatRootAsArray","raw","operatorKeys","contains","wildcard","exists","not_equals","formattedValue","path","map","word","sanitizedQueryValue","queryOperator","queryValue"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
@@ -1,15 +0,0 @@
1
- import { type Field, type TabAsField } from 'payload/types';
2
- import type { PostgresAdapter } from '../types.js';
3
- type SanitizeQueryValueArgs = {
4
- adapter: PostgresAdapter;
5
- field: Field | TabAsField;
6
- operator: string;
7
- relationOrPath: string;
8
- val: any;
9
- };
10
- export declare const sanitizeQueryValue: ({ adapter, field, operator: operatorArg, relationOrPath, val, }: SanitizeQueryValueArgs) => {
11
- operator: string;
12
- value: unknown;
13
- };
14
- export {};
15
- //# sourceMappingURL=sanitizeQueryValue.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sanitizeQueryValue.d.ts","sourceRoot":"","sources":["../../src/queries/sanitizeQueryValue.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,UAAU,EAAoB,MAAM,eAAe,CAAA;AAG7E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAElD,KAAK,sBAAsB,GAAG;IAC5B,OAAO,EAAE,eAAe,CAAA;IACxB,KAAK,EAAE,KAAK,GAAG,UAAU,CAAA;IACzB,QAAQ,EAAE,MAAM,CAAA;IAChB,cAAc,EAAE,MAAM,CAAA;IACtB,GAAG,EAAE,GAAG,CAAA;CACT,CAAA;AAED,eAAO,MAAM,kBAAkB,oEAM5B,sBAAsB,KAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAyF7D,CAAA"}
@@ -1,90 +0,0 @@
1
- import { APIError } from 'payload/errors';
2
- import { fieldAffectsData } from 'payload/types';
3
- import { createArrayFromCommaDelineated } from 'payload/utilities';
4
- export const sanitizeQueryValue = ({ adapter, field, operator: operatorArg, relationOrPath, val })=>{
5
- let operator = operatorArg;
6
- let formattedValue = val;
7
- if (!fieldAffectsData(field)) return {
8
- operator,
9
- value: formattedValue
10
- };
11
- if ((field.type === 'relationship' || field.type === 'upload') && !relationOrPath.endsWith('relationTo') && Array.isArray(formattedValue)) {
12
- const allPossibleIDTypes = [];
13
- formattedValue.forEach((val)=>{
14
- if (adapter.idType !== 'uuid' && typeof val === 'string') {
15
- allPossibleIDTypes.push(val, parseInt(val));
16
- } else if (typeof val === 'string') {
17
- allPossibleIDTypes.push(val);
18
- } else {
19
- allPossibleIDTypes.push(val, String(val));
20
- }
21
- });
22
- formattedValue = allPossibleIDTypes;
23
- }
24
- // Cast incoming values as proper searchable types
25
- if (field.type === 'checkbox' && typeof val === 'string') {
26
- if (val.toLowerCase() === 'true') formattedValue = true;
27
- if (val.toLowerCase() === 'false') formattedValue = false;
28
- }
29
- if ([
30
- 'all',
31
- 'in',
32
- 'not_in'
33
- ].includes(operator)) {
34
- if (typeof formattedValue === 'string') {
35
- formattedValue = createArrayFromCommaDelineated(formattedValue);
36
- if (field.type === 'number') {
37
- formattedValue = formattedValue.map((arrayVal)=>parseFloat(arrayVal));
38
- }
39
- }
40
- if (!Array.isArray(formattedValue) || formattedValue.length === 0) {
41
- return null;
42
- }
43
- }
44
- if (field.type === 'number' && typeof formattedValue === 'string') {
45
- formattedValue = Number(val);
46
- }
47
- if (field.type === 'date' && operator !== 'exists') {
48
- if (typeof val === 'string') {
49
- formattedValue = new Date(val);
50
- if (Number.isNaN(Date.parse(formattedValue))) {
51
- return {
52
- operator,
53
- value: undefined
54
- };
55
- }
56
- }
57
- if (typeof val === 'number') {
58
- formattedValue = new Date(val);
59
- }
60
- }
61
- if ([
62
- 'relationship',
63
- 'upload'
64
- ].includes(field.type)) {
65
- if (val === 'null') {
66
- formattedValue = null;
67
- }
68
- }
69
- if ('hasMany' in field && field.hasMany && operator === 'contains') {
70
- operator = 'equals';
71
- }
72
- if (operator === 'near' || operator === 'within' || operator === 'intersects') {
73
- throw new APIError(`Querying with '${operator}' is not supported with the postgres database adapter.`);
74
- }
75
- if (operator === 'contains') {
76
- formattedValue = `%${formattedValue}%`;
77
- }
78
- if (operator === 'exists') {
79
- formattedValue = formattedValue === 'true' || formattedValue === true;
80
- if (formattedValue === false) {
81
- operator = 'isNull';
82
- }
83
- }
84
- return {
85
- operator,
86
- value: formattedValue
87
- };
88
- };
89
-
90
- //# sourceMappingURL=sanitizeQueryValue.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/queries/sanitizeQueryValue.ts"],"sourcesContent":["import { APIError } from 'payload/errors'\nimport { type Field, type TabAsField, fieldAffectsData } from 'payload/types'\nimport { createArrayFromCommaDelineated } from 'payload/utilities'\n\nimport type { PostgresAdapter } from '../types.js'\n\ntype SanitizeQueryValueArgs = {\n adapter: PostgresAdapter\n field: Field | TabAsField\n operator: string\n relationOrPath: string\n val: any\n}\n\nexport const sanitizeQueryValue = ({\n adapter,\n field,\n operator: operatorArg,\n relationOrPath,\n val,\n}: SanitizeQueryValueArgs): { operator: string; value: unknown } => {\n let operator = operatorArg\n let formattedValue = val\n\n if (!fieldAffectsData(field)) return { operator, value: formattedValue }\n\n if (\n (field.type === 'relationship' || field.type === 'upload') &&\n !relationOrPath.endsWith('relationTo') &&\n Array.isArray(formattedValue)\n ) {\n const allPossibleIDTypes: (number | string)[] = []\n formattedValue.forEach((val) => {\n if (adapter.idType !== 'uuid' && typeof val === 'string') {\n allPossibleIDTypes.push(val, parseInt(val))\n } else if (typeof val === 'string') {\n allPossibleIDTypes.push(val)\n } else {\n allPossibleIDTypes.push(val, String(val))\n }\n })\n formattedValue = allPossibleIDTypes\n }\n\n // Cast incoming values as proper searchable types\n if (field.type === 'checkbox' && typeof val === 'string') {\n if (val.toLowerCase() === 'true') formattedValue = true\n if (val.toLowerCase() === 'false') formattedValue = false\n }\n\n if (['all', 'in', 'not_in'].includes(operator)) {\n if (typeof formattedValue === 'string') {\n formattedValue = createArrayFromCommaDelineated(formattedValue)\n\n if (field.type === 'number') {\n formattedValue = formattedValue.map((arrayVal) => parseFloat(arrayVal))\n }\n }\n\n if (!Array.isArray(formattedValue) || formattedValue.length === 0) {\n return null\n }\n }\n\n if (field.type === 'number' && typeof formattedValue === 'string') {\n formattedValue = Number(val)\n }\n\n if (field.type === 'date' && operator !== 'exists') {\n if (typeof val === 'string') {\n formattedValue = new Date(val)\n if (Number.isNaN(Date.parse(formattedValue))) {\n return { operator, value: undefined }\n }\n }\n\n if (typeof val === 'number') {\n formattedValue = new Date(val)\n }\n }\n\n if (['relationship', 'upload'].includes(field.type)) {\n if (val === 'null') {\n formattedValue = null\n }\n }\n\n if ('hasMany' in field && field.hasMany && operator === 'contains') {\n operator = 'equals'\n }\n\n if (operator === 'near' || operator === 'within' || operator === 'intersects') {\n throw new APIError(\n `Querying with '${operator}' is not supported with the postgres database adapter.`,\n )\n }\n\n if (operator === 'contains') {\n formattedValue = `%${formattedValue}%`\n }\n\n if (operator === 'exists') {\n formattedValue = formattedValue === 'true' || formattedValue === true\n if (formattedValue === false) {\n operator = 'isNull'\n }\n }\n\n return { operator, value: formattedValue }\n}\n"],"names":["APIError","fieldAffectsData","createArrayFromCommaDelineated","sanitizeQueryValue","adapter","field","operator","operatorArg","relationOrPath","val","formattedValue","value","type","endsWith","Array","isArray","allPossibleIDTypes","forEach","idType","push","parseInt","String","toLowerCase","includes","map","arrayVal","parseFloat","length","Number","Date","isNaN","parse","undefined","hasMany"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,SAASA,QAAQ,QAAQ,iBAAgB;AACzC,SAAsCC,gBAAgB,QAAQ,gBAAe;AAC7E,SAASC,8BAA8B,QAAQ,oBAAmB;AAYlE,OAAO,MAAMC,qBAAqB,CAAC,EACjCC,OAAO,EACPC,KAAK,EACLC,UAAUC,WAAW,EACrBC,cAAc,EACdC,GAAG,EACoB;IACvB,IAAIH,WAAWC;IACf,IAAIG,iBAAiBD;IAErB,IAAI,CAACR,iBAAiBI,QAAQ,OAAO;QAAEC;QAAUK,OAAOD;IAAe;IAEvE,IACE,AAACL,CAAAA,MAAMO,IAAI,KAAK,kBAAkBP,MAAMO,IAAI,KAAK,QAAO,KACxD,CAACJ,eAAeK,QAAQ,CAAC,iBACzBC,MAAMC,OAAO,CAACL,iBACd;QACA,MAAMM,qBAA0C,EAAE;QAClDN,eAAeO,OAAO,CAAC,CAACR;YACtB,IAAIL,QAAQc,MAAM,KAAK,UAAU,OAAOT,QAAQ,UAAU;gBACxDO,mBAAmBG,IAAI,CAACV,KAAKW,SAASX;YACxC,OAAO,IAAI,OAAOA,QAAQ,UAAU;gBAClCO,mBAAmBG,IAAI,CAACV;YAC1B,OAAO;gBACLO,mBAAmBG,IAAI,CAACV,KAAKY,OAAOZ;YACtC;QACF;QACAC,iBAAiBM;IACnB;IAEA,kDAAkD;IAClD,IAAIX,MAAMO,IAAI,KAAK,cAAc,OAAOH,QAAQ,UAAU;QACxD,IAAIA,IAAIa,WAAW,OAAO,QAAQZ,iBAAiB;QACnD,IAAID,IAAIa,WAAW,OAAO,SAASZ,iBAAiB;IACtD;IAEA,IAAI;QAAC;QAAO;QAAM;KAAS,CAACa,QAAQ,CAACjB,WAAW;QAC9C,IAAI,OAAOI,mBAAmB,UAAU;YACtCA,iBAAiBR,+BAA+BQ;YAEhD,IAAIL,MAAMO,IAAI,KAAK,UAAU;gBAC3BF,iBAAiBA,eAAec,GAAG,CAAC,CAACC,WAAaC,WAAWD;YAC/D;QACF;QAEA,IAAI,CAACX,MAAMC,OAAO,CAACL,mBAAmBA,eAAeiB,MAAM,KAAK,GAAG;YACjE,OAAO;QACT;IACF;IAEA,IAAItB,MAAMO,IAAI,KAAK,YAAY,OAAOF,mBAAmB,UAAU;QACjEA,iBAAiBkB,OAAOnB;IAC1B;IAEA,IAAIJ,MAAMO,IAAI,KAAK,UAAUN,aAAa,UAAU;QAClD,IAAI,OAAOG,QAAQ,UAAU;YAC3BC,iBAAiB,IAAImB,KAAKpB;YAC1B,IAAImB,OAAOE,KAAK,CAACD,KAAKE,KAAK,CAACrB,kBAAkB;gBAC5C,OAAO;oBAAEJ;oBAAUK,OAAOqB;gBAAU;YACtC;QACF;QAEA,IAAI,OAAOvB,QAAQ,UAAU;YAC3BC,iBAAiB,IAAImB,KAAKpB;QAC5B;IACF;IAEA,IAAI;QAAC;QAAgB;KAAS,CAACc,QAAQ,CAAClB,MAAMO,IAAI,GAAG;QACnD,IAAIH,QAAQ,QAAQ;YAClBC,iBAAiB;QACnB;IACF;IAEA,IAAI,aAAaL,SAASA,MAAM4B,OAAO,IAAI3B,aAAa,YAAY;QAClEA,WAAW;IACb;IAEA,IAAIA,aAAa,UAAUA,aAAa,YAAYA,aAAa,cAAc;QAC7E,MAAM,IAAIN,SACR,CAAC,eAAe,EAAEM,SAAS,sDAAsD,CAAC;IAEtF;IAEA,IAAIA,aAAa,YAAY;QAC3BI,iBAAiB,CAAC,CAAC,EAAEA,eAAe,CAAC,CAAC;IACxC;IAEA,IAAIJ,aAAa,UAAU;QACzBI,iBAAiBA,mBAAmB,UAAUA,mBAAmB;QACjE,IAAIA,mBAAmB,OAAO;YAC5BJ,WAAW;QACb;IACF;IAEA,OAAO;QAAEA;QAAUK,OAAOD;IAAe;AAC3C,EAAC"}
@@ -1,23 +0,0 @@
1
- import type { QueryPromise, SQL } from 'drizzle-orm';
2
- import type { ChainedMethods } from '../find/chainMethods.js';
3
- import type { DrizzleDB, PostgresAdapter } from '../types.js';
4
- import type { BuildQueryJoinAliases, BuildQueryJoins } from './buildQuery.js';
5
- import { type GenericColumn } from '../types.js';
6
- type Args = {
7
- adapter: PostgresAdapter;
8
- chainedMethods?: ChainedMethods;
9
- db: DrizzleDB;
10
- joinAliases: BuildQueryJoinAliases;
11
- joins: BuildQueryJoins;
12
- selectFields: Record<string, GenericColumn>;
13
- tableName: string;
14
- where: SQL;
15
- };
16
- /**
17
- * Selects distinct records from a table only if there are joins that need to be used, otherwise return null
18
- */
19
- export declare const selectDistinct: ({ adapter, chainedMethods, db, joinAliases, joins, selectFields, tableName, where, }: Args) => QueryPromise<Record<string, GenericColumn> & {
20
- id: number | string;
21
- }[]>;
22
- export {};
23
- //# sourceMappingURL=selectDistinct.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"selectDistinct.d.ts","sourceRoot":"","sources":["../../src/queries/selectDistinct.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AAEpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAC7D,OAAO,KAAK,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAG7E,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,aAAa,CAAA;AAEhD,KAAK,IAAI,GAAG;IACV,OAAO,EAAE,eAAe,CAAA;IACxB,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,EAAE,EAAE,SAAS,CAAA;IACb,WAAW,EAAE,qBAAqB,CAAA;IAClC,KAAK,EAAE,eAAe,CAAA;IACtB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IAC3C,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,GAAG,CAAA;CACX,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,yFASxB,IAAI,KAAG,aAAa,OAAO,MAAM,EAAE,aAAa,CAAC,GAAG;IAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EAAE,CA2B/E,CAAA"}
@@ -1,41 +0,0 @@
1
- import { chainMethods } from '../find/chainMethods.js';
2
- /**
3
- * Selects distinct records from a table only if there are joins that need to be used, otherwise return null
4
- */ export const selectDistinct = ({ adapter, chainedMethods = [], db, joinAliases, joins, selectFields, tableName, where })=>{
5
- if (Object.keys(joins).length > 0 || joinAliases.length > 0) {
6
- if (where) {
7
- chainedMethods.push({
8
- args: [
9
- where
10
- ],
11
- method: 'where'
12
- });
13
- }
14
- joinAliases.forEach(({ condition, table })=>{
15
- chainedMethods.push({
16
- args: [
17
- table,
18
- condition
19
- ],
20
- method: 'leftJoin'
21
- });
22
- });
23
- Object.entries(joins).forEach(([joinTable, condition])=>{
24
- if (joinTable) {
25
- chainedMethods.push({
26
- args: [
27
- adapter.tables[joinTable],
28
- condition
29
- ],
30
- method: 'leftJoin'
31
- });
32
- }
33
- });
34
- return chainMethods({
35
- methods: chainedMethods,
36
- query: db.selectDistinct(selectFields).from(adapter.tables[tableName])
37
- });
38
- }
39
- };
40
-
41
- //# sourceMappingURL=selectDistinct.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/queries/selectDistinct.ts"],"sourcesContent":["import type { QueryPromise, SQL } from 'drizzle-orm'\n\nimport type { ChainedMethods } from '../find/chainMethods.js'\nimport type { DrizzleDB, PostgresAdapter } from '../types.js'\nimport type { BuildQueryJoinAliases, BuildQueryJoins } from './buildQuery.js'\n\nimport { chainMethods } from '../find/chainMethods.js'\nimport { type GenericColumn } from '../types.js'\n\ntype Args = {\n adapter: PostgresAdapter\n chainedMethods?: ChainedMethods\n db: DrizzleDB\n joinAliases: BuildQueryJoinAliases\n joins: BuildQueryJoins\n selectFields: Record<string, GenericColumn>\n tableName: string\n where: SQL\n}\n\n/**\n * Selects distinct records from a table only if there are joins that need to be used, otherwise return null\n */\nexport const selectDistinct = ({\n adapter,\n chainedMethods = [],\n db,\n joinAliases,\n joins,\n selectFields,\n tableName,\n where,\n}: Args): QueryPromise<Record<string, GenericColumn> & { id: number | string }[]> => {\n if (Object.keys(joins).length > 0 || joinAliases.length > 0) {\n if (where) {\n chainedMethods.push({ args: [where], method: 'where' })\n }\n\n joinAliases.forEach(({ condition, table }) => {\n chainedMethods.push({\n args: [table, condition],\n method: 'leftJoin',\n })\n })\n\n Object.entries(joins).forEach(([joinTable, condition]) => {\n if (joinTable) {\n chainedMethods.push({\n args: [adapter.tables[joinTable], condition],\n method: 'leftJoin',\n })\n }\n })\n\n return chainMethods({\n methods: chainedMethods,\n query: db.selectDistinct(selectFields).from(adapter.tables[tableName]),\n })\n }\n}\n"],"names":["chainMethods","selectDistinct","adapter","chainedMethods","db","joinAliases","joins","selectFields","tableName","where","Object","keys","length","push","args","method","forEach","condition","table","entries","joinTable","tables","methods","query","from"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAMA,SAASA,YAAY,QAAQ,0BAAyB;AActD;;CAEC,GACD,OAAO,MAAMC,iBAAiB,CAAC,EAC7BC,OAAO,EACPC,iBAAiB,EAAE,EACnBC,EAAE,EACFC,WAAW,EACXC,KAAK,EACLC,YAAY,EACZC,SAAS,EACTC,KAAK,EACA;IACL,IAAIC,OAAOC,IAAI,CAACL,OAAOM,MAAM,GAAG,KAAKP,YAAYO,MAAM,GAAG,GAAG;QAC3D,IAAIH,OAAO;YACTN,eAAeU,IAAI,CAAC;gBAAEC,MAAM;oBAACL;iBAAM;gBAAEM,QAAQ;YAAQ;QACvD;QAEAV,YAAYW,OAAO,CAAC,CAAC,EAAEC,SAAS,EAAEC,KAAK,EAAE;YACvCf,eAAeU,IAAI,CAAC;gBAClBC,MAAM;oBAACI;oBAAOD;iBAAU;gBACxBF,QAAQ;YACV;QACF;QAEAL,OAAOS,OAAO,CAACb,OAAOU,OAAO,CAAC,CAAC,CAACI,WAAWH,UAAU;YACnD,IAAIG,WAAW;gBACbjB,eAAeU,IAAI,CAAC;oBAClBC,MAAM;wBAACZ,QAAQmB,MAAM,CAACD,UAAU;wBAAEH;qBAAU;oBAC5CF,QAAQ;gBACV;YACF;QACF;QAEA,OAAOf,aAAa;YAClBsB,SAASnB;YACToB,OAAOnB,GAAGH,cAAc,CAACM,cAAciB,IAAI,CAACtB,QAAQmB,MAAM,CAACb,UAAU;QACvE;IACF;AACF,EAAC"}
@@ -1,3 +0,0 @@
1
- import { type QueryDrafts } from 'payload/database';
2
- export declare const queryDrafts: QueryDrafts;
3
- //# sourceMappingURL=queryDrafts.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"queryDrafts.d.ts","sourceRoot":"","sources":["../src/queryDrafts.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,WAAW,EAAkB,MAAM,kBAAkB,CAAA;AAMnE,eAAO,MAAM,WAAW,EAAE,WA+CzB,CAAA"}
@@ -1,45 +0,0 @@
1
- import { combineQueries } from 'payload/database';
2
- import { buildVersionCollectionFields } from 'payload/versions';
3
- import { findMany } from './find/findMany.js';
4
- import { getTableName } from './schema/getTableName.js';
5
- export const queryDrafts = async function queryDrafts({ collection, limit, locale, page = 1, pagination, req = {}, sort, where }) {
6
- const collectionConfig = this.payload.collections[collection].config;
7
- const tableName = getTableName({
8
- adapter: this,
9
- config: collectionConfig,
10
- versions: true
11
- });
12
- const fields = buildVersionCollectionFields(collectionConfig);
13
- const combinedWhere = combineQueries({
14
- latest: {
15
- equals: true
16
- }
17
- }, where);
18
- const result = await findMany({
19
- adapter: this,
20
- fields,
21
- limit,
22
- locale,
23
- page,
24
- pagination,
25
- req,
26
- sort,
27
- tableName,
28
- where: combinedWhere
29
- });
30
- return {
31
- ...result,
32
- docs: result.docs.map((doc)=>{
33
- // eslint-disable-next-line no-param-reassign
34
- doc = {
35
- id: doc.parent,
36
- ...doc.version,
37
- createdAt: doc.createdAt,
38
- updatedAt: doc.updatedAt
39
- };
40
- return doc;
41
- })
42
- };
43
- };
44
-
45
- //# sourceMappingURL=queryDrafts.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/queryDrafts.ts"],"sourcesContent":["import type { PayloadRequest, SanitizedCollectionConfig } from 'payload/types'\n\nimport { type QueryDrafts, combineQueries } from 'payload/database'\nimport { buildVersionCollectionFields } from 'payload/versions'\n\nimport { findMany } from './find/findMany.js'\nimport { getTableName } from './schema/getTableName.js'\n\nexport const queryDrafts: QueryDrafts = async function queryDrafts({\n collection,\n limit,\n locale,\n page = 1,\n pagination,\n req = {} as PayloadRequest,\n sort,\n where,\n}) {\n const collectionConfig: SanitizedCollectionConfig = this.payload.collections[collection].config\n const tableName = getTableName({\n adapter: this,\n config: collectionConfig,\n versions: true,\n })\n const fields = buildVersionCollectionFields(collectionConfig)\n\n const combinedWhere = combineQueries({ latest: { equals: true } }, where)\n\n const result = await findMany({\n adapter: this,\n fields,\n limit,\n locale,\n page,\n pagination,\n req,\n sort,\n tableName,\n where: combinedWhere,\n })\n\n return {\n ...result,\n docs: result.docs.map((doc) => {\n // eslint-disable-next-line no-param-reassign\n doc = {\n id: doc.parent,\n ...doc.version,\n createdAt: doc.createdAt,\n updatedAt: doc.updatedAt,\n }\n\n return doc\n }),\n }\n}\n"],"names":["combineQueries","buildVersionCollectionFields","findMany","getTableName","queryDrafts","collection","limit","locale","page","pagination","req","sort","where","collectionConfig","payload","collections","config","tableName","adapter","versions","fields","combinedWhere","latest","equals","result","docs","map","doc","id","parent","version","createdAt","updatedAt"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAEA,SAA2BA,cAAc,QAAQ,mBAAkB;AACnE,SAASC,4BAA4B,QAAQ,mBAAkB;AAE/D,SAASC,QAAQ,QAAQ,qBAAoB;AAC7C,SAASC,YAAY,QAAQ,2BAA0B;AAEvD,OAAO,MAAMC,cAA2B,eAAeA,YAAY,EACjEC,UAAU,EACVC,KAAK,EACLC,MAAM,EACNC,OAAO,CAAC,EACRC,UAAU,EACVC,MAAM,CAAC,CAAmB,EAC1BC,IAAI,EACJC,KAAK,EACN;IACC,MAAMC,mBAA8C,IAAI,CAACC,OAAO,CAACC,WAAW,CAACV,WAAW,CAACW,MAAM;IAC/F,MAAMC,YAAYd,aAAa;QAC7Be,SAAS,IAAI;QACbF,QAAQH;QACRM,UAAU;IACZ;IACA,MAAMC,SAASnB,6BAA6BY;IAE5C,MAAMQ,gBAAgBrB,eAAe;QAAEsB,QAAQ;YAAEC,QAAQ;QAAK;IAAE,GAAGX;IAEnE,MAAMY,SAAS,MAAMtB,SAAS;QAC5BgB,SAAS,IAAI;QACbE;QACAd;QACAC;QACAC;QACAC;QACAC;QACAC;QACAM;QACAL,OAAOS;IACT;IAEA,OAAO;QACL,GAAGG,MAAM;QACTC,MAAMD,OAAOC,IAAI,CAACC,GAAG,CAAC,CAACC;YACrB,6CAA6C;YAC7CA,MAAM;gBACJC,IAAID,IAAIE,MAAM;gBACd,GAAGF,IAAIG,OAAO;gBACdC,WAAWJ,IAAII,SAAS;gBACxBC,WAAWL,IAAIK,SAAS;YAC1B;YAEA,OAAOL;QACT;IACF;AACF,EAAC"}
@@ -1,29 +0,0 @@
1
- import type { IndexBuilder, PgColumnBuilder, UniqueConstraintBuilder } from 'drizzle-orm/pg-core';
2
- import type { Field } from 'payload/types';
3
- import type { GenericColumns, PostgresAdapter } from '../types.js';
4
- type Args = {
5
- adapter: PostgresAdapter;
6
- baseColumns?: Record<string, PgColumnBuilder>;
7
- baseExtraConfig?: Record<string, (cols: GenericColumns) => IndexBuilder | UniqueConstraintBuilder>;
8
- buildNumbers?: boolean;
9
- buildRelationships?: boolean;
10
- buildTexts?: boolean;
11
- disableNotNull: boolean;
12
- disableUnique: boolean;
13
- fields: Field[];
14
- rootRelationsToBuild?: Map<string, string>;
15
- rootRelationships?: Set<string>;
16
- rootTableIDColType?: string;
17
- rootTableName?: string;
18
- tableName: string;
19
- timestamps?: boolean;
20
- versions: boolean;
21
- };
22
- type Result = {
23
- hasManyNumberField: 'index' | boolean;
24
- hasManyTextField: 'index' | boolean;
25
- relationsToBuild: Map<string, string>;
26
- };
27
- export declare const buildTable: ({ adapter, baseColumns, baseExtraConfig, buildNumbers, buildRelationships, buildTexts, disableNotNull, disableUnique, fields, rootRelationsToBuild, rootRelationships, rootTableIDColType, rootTableName: incomingRootTableName, tableName, timestamps, versions, }: Args) => Result;
28
- export {};
29
- //# sourceMappingURL=build.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../src/schema/build.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,YAAY,EACZ,eAAe,EAEf,uBAAuB,EACxB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AAM1C,OAAO,KAAK,EAAE,cAAc,EAAwB,eAAe,EAAE,MAAM,aAAa,CAAA;AAOxF,KAAK,IAAI,GAAG;IACV,OAAO,EAAE,eAAe,CAAA;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IAC7C,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,YAAY,GAAG,uBAAuB,CAAC,CAAA;IAClG,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,cAAc,EAAE,OAAO,CAAA;IACvB,aAAa,EAAE,OAAO,CAAA;IACtB,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,oBAAoB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC1C,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,QAAQ,EAAE,OAAO,CAAA;CAClB,CAAA;AAED,KAAK,MAAM,GAAG;IACZ,kBAAkB,EAAE,OAAO,GAAG,OAAO,CAAA;IACrC,gBAAgB,EAAE,OAAO,GAAG,OAAO,CAAA;IACnC,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACtC,CAAA;AAED,eAAO,MAAM,UAAU,wQAiBpB,IAAI,KAAG,MAmUT,CAAA"}