@payloadcms/drizzle 3.0.0-canary.b922438 → 3.0.0-canary.bb00d64

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 (337) hide show
  1. package/dist/count.d.ts.map +1 -1
  2. package/dist/count.js +1 -1
  3. package/dist/count.js.map +1 -1
  4. package/dist/countGlobalVersions.d.ts +3 -0
  5. package/dist/countGlobalVersions.d.ts.map +1 -0
  6. package/dist/countGlobalVersions.js +27 -0
  7. package/dist/countGlobalVersions.js.map +1 -0
  8. package/dist/countVersions.d.ts +3 -0
  9. package/dist/countVersions.d.ts.map +1 -0
  10. package/dist/countVersions.js +27 -0
  11. package/dist/countVersions.js.map +1 -0
  12. package/dist/create.d.ts.map +1 -1
  13. package/dist/create.js +2 -1
  14. package/dist/create.js.map +1 -1
  15. package/dist/createGlobalVersion.d.ts +1 -1
  16. package/dist/createGlobalVersion.d.ts.map +1 -1
  17. package/dist/createGlobalVersion.js +7 -2
  18. package/dist/createGlobalVersion.js.map +1 -1
  19. package/dist/createTableName.d.ts.map +1 -1
  20. package/dist/createTableName.js +6 -2
  21. package/dist/createTableName.js.map +1 -1
  22. package/dist/createVersion.d.ts +1 -1
  23. package/dist/createVersion.d.ts.map +1 -1
  24. package/dist/createVersion.js +22 -14
  25. package/dist/createVersion.js.map +1 -1
  26. package/dist/deleteOne.d.ts.map +1 -1
  27. package/dist/deleteOne.js +6 -3
  28. package/dist/deleteOne.js.map +1 -1
  29. package/dist/deleteVersions.js +1 -1
  30. package/dist/deleteVersions.js.map +1 -1
  31. package/dist/destroy.d.ts.map +1 -1
  32. package/dist/destroy.js +3 -1
  33. package/dist/destroy.js.map +1 -1
  34. package/dist/exports/postgres.d.ts +16 -0
  35. package/dist/exports/postgres.d.ts.map +1 -0
  36. package/dist/exports/postgres.js +17 -0
  37. package/dist/exports/postgres.js.map +1 -0
  38. package/dist/find/buildFindManyArgs.d.ts +15 -7
  39. package/dist/find/buildFindManyArgs.d.ts.map +1 -1
  40. package/dist/find/buildFindManyArgs.js +40 -17
  41. package/dist/find/buildFindManyArgs.js.map +1 -1
  42. package/dist/find/findMany.d.ts +2 -1
  43. package/dist/find/findMany.d.ts.map +1 -1
  44. package/dist/find/findMany.js +12 -7
  45. package/dist/find/findMany.js.map +1 -1
  46. package/dist/find/traverseFields.d.ts +18 -4
  47. package/dist/find/traverseFields.d.ts.map +1 -1
  48. package/dist/find/traverseFields.js +353 -63
  49. package/dist/find/traverseFields.js.map +1 -1
  50. package/dist/find.d.ts.map +1 -1
  51. package/dist/find.js +4 -2
  52. package/dist/find.js.map +1 -1
  53. package/dist/findGlobal.d.ts.map +1 -1
  54. package/dist/findGlobal.js +2 -1
  55. package/dist/findGlobal.js.map +1 -1
  56. package/dist/findGlobalVersions.d.ts.map +1 -1
  57. package/dist/findGlobalVersions.js +4 -3
  58. package/dist/findGlobalVersions.js.map +1 -1
  59. package/dist/findMigrationDir.d.ts.map +1 -1
  60. package/dist/findMigrationDir.js +3 -1
  61. package/dist/findMigrationDir.js.map +1 -1
  62. package/dist/findOne.d.ts +1 -1
  63. package/dist/findOne.d.ts.map +1 -1
  64. package/dist/findOne.js +3 -1
  65. package/dist/findOne.js.map +1 -1
  66. package/dist/findVersions.d.ts.map +1 -1
  67. package/dist/findVersions.js +4 -3
  68. package/dist/findVersions.js.map +1 -1
  69. package/dist/index.d.ts +5 -0
  70. package/dist/index.d.ts.map +1 -1
  71. package/dist/index.js +5 -0
  72. package/dist/index.js.map +1 -1
  73. package/dist/migrate.d.ts.map +1 -1
  74. package/dist/migrate.js +4 -0
  75. package/dist/migrate.js.map +1 -1
  76. package/dist/migrateDown.d.ts.map +1 -1
  77. package/dist/migrateDown.js +1 -1
  78. package/dist/migrateDown.js.map +1 -1
  79. package/dist/migrateFresh.d.ts.map +1 -1
  80. package/dist/migrateFresh.js +4 -0
  81. package/dist/migrateFresh.js.map +1 -1
  82. package/dist/migrateRefresh.d.ts.map +1 -1
  83. package/dist/migrateRefresh.js +2 -1
  84. package/dist/migrateRefresh.js.map +1 -1
  85. package/dist/migrateReset.d.ts.map +1 -1
  86. package/dist/migrateReset.js +5 -3
  87. package/dist/migrateReset.js.map +1 -1
  88. package/dist/migrateStatus.js +0 -1
  89. package/dist/migrateStatus.js.map +1 -1
  90. package/dist/postgres/countDistinct.d.ts +3 -0
  91. package/dist/postgres/countDistinct.d.ts.map +1 -0
  92. package/dist/postgres/countDistinct.js +23 -0
  93. package/dist/postgres/countDistinct.js.map +1 -0
  94. package/dist/postgres/createDatabase.d.ts +14 -0
  95. package/dist/postgres/createDatabase.d.ts.map +1 -0
  96. package/dist/postgres/createDatabase.js +76 -0
  97. package/dist/postgres/createDatabase.js.map +1 -0
  98. package/dist/postgres/createExtensions.d.ts +3 -0
  99. package/dist/postgres/createExtensions.d.ts.map +1 -0
  100. package/dist/postgres/createExtensions.js +16 -0
  101. package/dist/postgres/createExtensions.js.map +1 -0
  102. package/dist/postgres/createJSONQuery/convertPathToJSONTraversal.d.ts +2 -0
  103. package/dist/postgres/createJSONQuery/convertPathToJSONTraversal.d.ts.map +1 -0
  104. package/dist/postgres/createJSONQuery/convertPathToJSONTraversal.js +16 -0
  105. package/dist/postgres/createJSONQuery/convertPathToJSONTraversal.js.map +1 -0
  106. package/dist/postgres/createJSONQuery/formatJSONPathSegment.d.ts +2 -0
  107. package/dist/postgres/createJSONQuery/formatJSONPathSegment.d.ts.map +1 -0
  108. package/dist/postgres/createJSONQuery/formatJSONPathSegment.js +5 -0
  109. package/dist/postgres/createJSONQuery/formatJSONPathSegment.js.map +1 -0
  110. package/dist/postgres/createJSONQuery/index.d.ts +10 -0
  111. package/dist/postgres/createJSONQuery/index.d.ts.map +1 -0
  112. package/dist/postgres/createJSONQuery/index.js +54 -0
  113. package/dist/postgres/createJSONQuery/index.js.map +1 -0
  114. package/dist/postgres/createMigration.d.ts +3 -0
  115. package/dist/postgres/createMigration.d.ts.map +1 -0
  116. package/dist/postgres/createMigration.js +92 -0
  117. package/dist/postgres/createMigration.js.map +1 -0
  118. package/dist/postgres/defaultSnapshot.d.ts +3 -0
  119. package/dist/postgres/defaultSnapshot.d.ts.map +1 -0
  120. package/dist/postgres/defaultSnapshot.js +20 -0
  121. package/dist/postgres/defaultSnapshot.js.map +1 -0
  122. package/dist/postgres/deleteWhere.d.ts +3 -0
  123. package/dist/postgres/deleteWhere.d.ts.map +1 -0
  124. package/dist/postgres/deleteWhere.js +6 -0
  125. package/dist/postgres/deleteWhere.js.map +1 -0
  126. package/dist/postgres/dropDatabase.d.ts +3 -0
  127. package/dist/postgres/dropDatabase.d.ts.map +1 -0
  128. package/dist/postgres/dropDatabase.js +9 -0
  129. package/dist/postgres/dropDatabase.js.map +1 -0
  130. package/dist/postgres/execute.d.ts +3 -0
  131. package/dist/postgres/execute.d.ts.map +1 -0
  132. package/dist/postgres/execute.js +11 -0
  133. package/dist/postgres/execute.js.map +1 -0
  134. package/dist/postgres/getMigrationTemplate.d.ts +4 -0
  135. package/dist/postgres/getMigrationTemplate.d.ts.map +1 -0
  136. package/dist/postgres/getMigrationTemplate.js +13 -0
  137. package/dist/postgres/getMigrationTemplate.js.map +1 -0
  138. package/dist/postgres/init.d.ts +3 -0
  139. package/dist/postgres/init.d.ts.map +1 -0
  140. package/dist/postgres/init.js +104 -0
  141. package/dist/postgres/init.js.map +1 -0
  142. package/dist/postgres/insert.d.ts +3 -0
  143. package/dist/postgres/insert.d.ts.map +1 -0
  144. package/dist/postgres/insert.js +12 -0
  145. package/dist/postgres/insert.js.map +1 -0
  146. package/dist/postgres/requireDrizzleKit.d.ts +3 -0
  147. package/dist/postgres/requireDrizzleKit.d.ts.map +1 -0
  148. package/dist/postgres/requireDrizzleKit.js +5 -0
  149. package/dist/postgres/requireDrizzleKit.js.map +1 -0
  150. package/dist/postgres/schema/build.d.ts +42 -0
  151. package/dist/postgres/schema/build.d.ts.map +1 -0
  152. package/dist/postgres/schema/build.js +404 -0
  153. package/dist/postgres/schema/build.js.map +1 -0
  154. package/dist/postgres/schema/createIndex.d.ts +11 -0
  155. package/dist/postgres/schema/createIndex.d.ts.map +1 -0
  156. package/dist/postgres/schema/createIndex.js +20 -0
  157. package/dist/postgres/schema/createIndex.js.map +1 -0
  158. package/dist/postgres/schema/geometryColumn.d.ts +12 -0
  159. package/dist/postgres/schema/geometryColumn.d.ts.map +1 -0
  160. package/dist/postgres/schema/geometryColumn.js +18 -0
  161. package/dist/postgres/schema/geometryColumn.js.map +1 -0
  162. package/dist/postgres/schema/idToUUID.d.ts +3 -0
  163. package/dist/postgres/schema/idToUUID.d.ts.map +1 -0
  164. package/dist/postgres/schema/idToUUID.js +11 -0
  165. package/dist/postgres/schema/idToUUID.js.map +1 -0
  166. package/dist/postgres/schema/parentIDColumnMap.d.ts +4 -0
  167. package/dist/postgres/schema/parentIDColumnMap.d.ts.map +1 -0
  168. package/dist/postgres/schema/parentIDColumnMap.js +9 -0
  169. package/dist/postgres/schema/parentIDColumnMap.js.map +1 -0
  170. package/dist/postgres/schema/setColumnID.d.ts +11 -0
  171. package/dist/postgres/schema/setColumnID.d.ts.map +1 -0
  172. package/dist/postgres/schema/setColumnID.js +24 -0
  173. package/dist/postgres/schema/setColumnID.js.map +1 -0
  174. package/dist/postgres/schema/traverseFields.d.ts +42 -0
  175. package/dist/postgres/schema/traverseFields.d.ts.map +1 -0
  176. package/dist/postgres/schema/traverseFields.js +743 -0
  177. package/dist/postgres/schema/traverseFields.js.map +1 -0
  178. package/dist/postgres/schema/withDefault.d.ts +4 -0
  179. package/dist/postgres/schema/withDefault.d.ts.map +1 -0
  180. package/dist/postgres/schema/withDefault.js +15 -0
  181. package/dist/postgres/schema/withDefault.js.map +1 -0
  182. package/dist/postgres/types.d.ts +142 -0
  183. package/dist/postgres/types.d.ts.map +1 -0
  184. package/dist/postgres/types.js +3 -0
  185. package/dist/postgres/types.js.map +1 -0
  186. package/dist/queries/addJoinTable.d.ts +11 -0
  187. package/dist/queries/addJoinTable.d.ts.map +1 -0
  188. package/dist/queries/addJoinTable.js +13 -0
  189. package/dist/queries/addJoinTable.js.map +1 -0
  190. package/dist/queries/buildAndOrConditions.d.ts +1 -1
  191. package/dist/queries/buildAndOrConditions.d.ts.map +1 -1
  192. package/dist/queries/buildAndOrConditions.js +2 -4
  193. package/dist/queries/buildAndOrConditions.js.map +1 -1
  194. package/dist/queries/buildOrderBy.d.ts +18 -0
  195. package/dist/queries/buildOrderBy.d.ts.map +1 -0
  196. package/dist/queries/buildOrderBy.js +56 -0
  197. package/dist/queries/buildOrderBy.js.map +1 -0
  198. package/dist/queries/buildQuery.d.ts +8 -7
  199. package/dist/queries/buildQuery.d.ts.map +1 -1
  200. package/dist/queries/buildQuery.js +12 -47
  201. package/dist/queries/buildQuery.js.map +1 -1
  202. package/dist/queries/getTableColumnFromPath.d.ts +6 -2
  203. package/dist/queries/getTableColumnFromPath.d.ts.map +1 -1
  204. package/dist/queries/getTableColumnFromPath.js +134 -87
  205. package/dist/queries/getTableColumnFromPath.js.map +1 -1
  206. package/dist/queries/operatorMap.d.ts.map +1 -1
  207. package/dist/queries/operatorMap.js +0 -4
  208. package/dist/queries/operatorMap.js.map +1 -1
  209. package/dist/queries/parseParams.d.ts +1 -1
  210. package/dist/queries/parseParams.d.ts.map +1 -1
  211. package/dist/queries/parseParams.js +79 -6
  212. package/dist/queries/parseParams.js.map +1 -1
  213. package/dist/queries/sanitizeQueryValue.d.ts +12 -1
  214. package/dist/queries/sanitizeQueryValue.d.ts.map +1 -1
  215. package/dist/queries/sanitizeQueryValue.js +89 -25
  216. package/dist/queries/sanitizeQueryValue.js.map +1 -1
  217. package/dist/queries/selectDistinct.d.ts +3 -4
  218. package/dist/queries/selectDistinct.d.ts.map +1 -1
  219. package/dist/queries/selectDistinct.js.map +1 -1
  220. package/dist/queryDrafts.d.ts.map +1 -1
  221. package/dist/queryDrafts.js +6 -6
  222. package/dist/queryDrafts.js.map +1 -1
  223. package/dist/transactions/beginTransaction.d.ts.map +1 -1
  224. package/dist/transactions/beginTransaction.js +5 -1
  225. package/dist/transactions/beginTransaction.js.map +1 -1
  226. package/dist/transactions/commitTransaction.d.ts.map +1 -1
  227. package/dist/transactions/commitTransaction.js +3 -1
  228. package/dist/transactions/commitTransaction.js.map +1 -1
  229. package/dist/transform/read/hasManyNumber.d.ts +2 -1
  230. package/dist/transform/read/hasManyNumber.d.ts.map +1 -1
  231. package/dist/transform/read/hasManyNumber.js +12 -2
  232. package/dist/transform/read/hasManyNumber.js.map +1 -1
  233. package/dist/transform/read/hasManyText.d.ts +2 -1
  234. package/dist/transform/read/hasManyText.d.ts.map +1 -1
  235. package/dist/transform/read/hasManyText.js +12 -2
  236. package/dist/transform/read/hasManyText.js.map +1 -1
  237. package/dist/transform/read/index.d.ts +3 -2
  238. package/dist/transform/read/index.d.ts.map +1 -1
  239. package/dist/transform/read/index.js +3 -2
  240. package/dist/transform/read/index.js.map +1 -1
  241. package/dist/transform/read/relationship.d.ts +2 -1
  242. package/dist/transform/read/relationship.d.ts.map +1 -1
  243. package/dist/transform/read/relationship.js +15 -6
  244. package/dist/transform/read/relationship.js.map +1 -1
  245. package/dist/transform/read/traverseFields.d.ts +10 -2
  246. package/dist/transform/read/traverseFields.d.ts.map +1 -1
  247. package/dist/transform/read/traverseFields.js +170 -56
  248. package/dist/transform/read/traverseFields.js.map +1 -1
  249. package/dist/transform/write/array.d.ts +6 -1
  250. package/dist/transform/write/array.d.ts.map +1 -1
  251. package/dist/transform/write/array.js +7 -3
  252. package/dist/transform/write/array.js.map +1 -1
  253. package/dist/transform/write/blocks.d.ts +8 -3
  254. package/dist/transform/write/blocks.d.ts.map +1 -1
  255. package/dist/transform/write/blocks.js +19 -7
  256. package/dist/transform/write/blocks.js.map +1 -1
  257. package/dist/transform/write/index.d.ts.map +1 -1
  258. package/dist/transform/write/index.js +1 -1
  259. package/dist/transform/write/index.js.map +1 -1
  260. package/dist/transform/write/relationships.d.ts.map +1 -1
  261. package/dist/transform/write/relationships.js +6 -2
  262. package/dist/transform/write/relationships.js.map +1 -1
  263. package/dist/transform/write/selects.d.ts.map +1 -1
  264. package/dist/transform/write/selects.js +1 -1
  265. package/dist/transform/write/selects.js.map +1 -1
  266. package/dist/transform/write/traverseFields.d.ts +6 -1
  267. package/dist/transform/write/traverseFields.d.ts.map +1 -1
  268. package/dist/transform/write/traverseFields.js +62 -19
  269. package/dist/transform/write/traverseFields.js.map +1 -1
  270. package/dist/types.d.ts +3 -2
  271. package/dist/types.d.ts.map +1 -1
  272. package/dist/types.js.map +1 -1
  273. package/dist/update.d.ts.map +1 -1
  274. package/dist/update.js +4 -2
  275. package/dist/update.js.map +1 -1
  276. package/dist/updateGlobal.d.ts +1 -1
  277. package/dist/updateGlobal.d.ts.map +1 -1
  278. package/dist/updateGlobal.js +2 -1
  279. package/dist/updateGlobal.js.map +1 -1
  280. package/dist/updateGlobalVersion.d.ts +1 -1
  281. package/dist/updateGlobalVersion.d.ts.map +1 -1
  282. package/dist/updateGlobalVersion.js +4 -3
  283. package/dist/updateGlobalVersion.js.map +1 -1
  284. package/dist/updateVersion.d.ts +1 -1
  285. package/dist/updateVersion.d.ts.map +1 -1
  286. package/dist/updateVersion.js +4 -3
  287. package/dist/updateVersion.js.map +1 -1
  288. package/dist/upsertRow/deleteExistingRowsByPath.d.ts.map +1 -1
  289. package/dist/upsertRow/deleteExistingRowsByPath.js +6 -2
  290. package/dist/upsertRow/deleteExistingRowsByPath.js.map +1 -1
  291. package/dist/upsertRow/index.d.ts +1 -1
  292. package/dist/upsertRow/index.d.ts.map +1 -1
  293. package/dist/upsertRow/index.js +51 -12
  294. package/dist/upsertRow/index.js.map +1 -1
  295. package/dist/upsertRow/insertArrays.d.ts.map +1 -1
  296. package/dist/upsertRow/insertArrays.js +5 -2
  297. package/dist/upsertRow/insertArrays.js.map +1 -1
  298. package/dist/upsertRow/types.d.ts +10 -5
  299. package/dist/upsertRow/types.d.ts.map +1 -1
  300. package/dist/upsertRow/types.js.map +1 -1
  301. package/dist/utilities/buildIndexName.d.ts +7 -0
  302. package/dist/utilities/buildIndexName.d.ts.map +1 -0
  303. package/dist/utilities/buildIndexName.js +14 -0
  304. package/dist/utilities/buildIndexName.js.map +1 -0
  305. package/dist/utilities/createBlocksMap.d.ts.map +1 -1
  306. package/dist/utilities/createBlocksMap.js +4 -2
  307. package/dist/utilities/createBlocksMap.js.map +1 -1
  308. package/dist/utilities/createRelationshipMap.d.ts.map +1 -1
  309. package/dist/utilities/createRelationshipMap.js +3 -1
  310. package/dist/utilities/createRelationshipMap.js.map +1 -1
  311. package/dist/utilities/executeSchemaHooks.d.ts +24 -0
  312. package/dist/utilities/executeSchemaHooks.d.ts.map +1 -0
  313. package/dist/utilities/executeSchemaHooks.js +21 -0
  314. package/dist/utilities/executeSchemaHooks.js.map +1 -0
  315. package/dist/utilities/extendDrizzleTable.d.ts +19 -0
  316. package/dist/utilities/extendDrizzleTable.d.ts.map +1 -0
  317. package/dist/utilities/extendDrizzleTable.js +38 -0
  318. package/dist/utilities/extendDrizzleTable.js.map +1 -0
  319. package/dist/utilities/getCollectionIdType.d.ts +7 -0
  320. package/dist/utilities/getCollectionIdType.d.ts.map +1 -0
  321. package/dist/utilities/getCollectionIdType.js +11 -0
  322. package/dist/utilities/getCollectionIdType.js.map +1 -0
  323. package/dist/utilities/getNameFromDrizzleTable.d.ts +3 -0
  324. package/dist/utilities/getNameFromDrizzleTable.d.ts.map +1 -0
  325. package/dist/utilities/getNameFromDrizzleTable.js +6 -0
  326. package/dist/utilities/getNameFromDrizzleTable.js.map +1 -0
  327. package/dist/utilities/hasLocalesTable.d.ts.map +1 -1
  328. package/dist/utilities/hasLocalesTable.js +12 -4
  329. package/dist/utilities/hasLocalesTable.js.map +1 -1
  330. package/dist/utilities/isPolymorphicRelationship.d.ts +6 -0
  331. package/dist/utilities/isPolymorphicRelationship.d.ts.map +1 -0
  332. package/dist/utilities/isPolymorphicRelationship.js +5 -0
  333. package/dist/utilities/isPolymorphicRelationship.js.map +1 -0
  334. package/dist/utilities/pushDevSchema.d.ts.map +1 -1
  335. package/dist/utilities/pushDevSchema.js +5 -0
  336. package/dist/utilities/pushDevSchema.js.map +1 -1
  337. package/package.json +19 -10
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/postgres/countDistinct.ts"],"sourcesContent":["import { count } from 'drizzle-orm'\n\nimport type { ChainedMethods, TransactionPg } from '../types.js'\nimport type { BasePostgresAdapter, CountDistinct } from './types.js'\n\nimport { chainMethods } from '../find/chainMethods.js'\n\nexport const countDistinct: CountDistinct = async function countDistinct(\n this: BasePostgresAdapter,\n { db, joins, tableName, where },\n) {\n const chainedMethods: ChainedMethods = []\n\n joins.forEach(({ condition, table }) => {\n chainedMethods.push({\n args: [table, condition],\n method: 'leftJoin',\n })\n })\n\n const countResult = await chainMethods({\n methods: chainedMethods,\n query: (db as TransactionPg)\n .select({\n count: count(),\n })\n .from(this.tables[tableName])\n .where(where),\n })\n\n return Number(countResult[0].count)\n}\n"],"names":["count","chainMethods","countDistinct","db","joins","tableName","where","chainedMethods","forEach","condition","table","push","args","method","countResult","methods","query","select","from","tables","Number"],"mappings":"AAAA,SAASA,KAAK,QAAQ,cAAa;AAKnC,SAASC,YAAY,QAAQ,0BAAyB;AAEtD,OAAO,MAAMC,gBAA+B,eAAeA,cAEzD,EAAEC,EAAE,EAAEC,KAAK,EAAEC,SAAS,EAAEC,KAAK,EAAE;IAE/B,MAAMC,iBAAiC,EAAE;IAEzCH,MAAMI,OAAO,CAAC,CAAC,EAAEC,SAAS,EAAEC,KAAK,EAAE;QACjCH,eAAeI,IAAI,CAAC;YAClBC,MAAM;gBAACF;gBAAOD;aAAU;YACxBI,QAAQ;QACV;IACF;IAEA,MAAMC,cAAc,MAAMb,aAAa;QACrCc,SAASR;QACTS,OAAO,AAACb,GACLc,MAAM,CAAC;YACNjB,OAAOA;QACT,GACCkB,IAAI,CAAC,IAAI,CAACC,MAAM,CAACd,UAAU,EAC3BC,KAAK,CAACA;IACX;IAEA,OAAOc,OAAON,WAAW,CAAC,EAAE,CAACd,KAAK;AACpC,EAAC"}
@@ -0,0 +1,14 @@
1
+ import type { BasePostgresAdapter } from './types.js';
2
+ type Args = {
3
+ /**
4
+ * Name of a database, defaults to the current one
5
+ */
6
+ name?: string;
7
+ /**
8
+ * Schema to create in addition to 'public'. Defaults to adapter.schemaName if exists.
9
+ */
10
+ schemaName?: string;
11
+ };
12
+ export declare const createDatabase: (this: BasePostgresAdapter, args?: Args) => Promise<boolean>;
13
+ export {};
14
+ //# sourceMappingURL=createDatabase.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createDatabase.d.ts","sourceRoot":"","sources":["../../src/postgres/createDatabase.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAgBrD,KAAK,IAAI,GAAG;IACV;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,CAAA;AACD,eAAO,MAAM,cAAc,SAAyB,mBAAmB,SAAQ,IAAI,qBAkFlF,CAAA"}
@@ -0,0 +1,76 @@
1
+ const setConnectionStringDatabase = ({ connectionString, database })=>{
2
+ const connectionURL = new URL(connectionString);
3
+ const newConnectionURL = new URL(connectionURL);
4
+ newConnectionURL.pathname = `/${database}`;
5
+ return newConnectionURL.toString();
6
+ };
7
+ export const createDatabase = async function(args = {}) {
8
+ // POSTGRES_URL - default Vercel env
9
+ const connectionString = this.poolOptions?.connectionString ?? process.env.POSTGRES_URL ?? process.env.DATABASE_URL;
10
+ let managementClientConfig = {};
11
+ let dbName = args.name;
12
+ const schemaName = this.schemaName || 'public';
13
+ if (connectionString) {
14
+ if (!dbName) {
15
+ dbName = new URL(connectionString).pathname.slice(1);
16
+ }
17
+ managementClientConfig.connectionString = setConnectionStringDatabase({
18
+ connectionString,
19
+ database: 'postgres'
20
+ });
21
+ } else {
22
+ if (!dbName) {
23
+ dbName = this.poolOptions.database;
24
+ }
25
+ managementClientConfig = {
26
+ ...this.poolOptions,
27
+ database: 'postgres'
28
+ };
29
+ }
30
+ // import pg only when createDatabase is used
31
+ const pg = await import('pg').then((mod)=>mod.default);
32
+ const managementClient = new pg.Client(managementClientConfig);
33
+ try {
34
+ await managementClient.connect();
35
+ await managementClient.query(`CREATE DATABASE "${dbName}"`);
36
+ this.payload.logger.info(`Created database "${dbName}"`);
37
+ if (schemaName !== 'public') {
38
+ let createdDatabaseConfig = {};
39
+ if (connectionString) {
40
+ createdDatabaseConfig.connectionString = setConnectionStringDatabase({
41
+ connectionString,
42
+ database: dbName
43
+ });
44
+ } else {
45
+ createdDatabaseConfig = {
46
+ ...this.poolOptions,
47
+ database: dbName
48
+ };
49
+ }
50
+ const createdDatabaseClient = new pg.Client(createdDatabaseConfig);
51
+ try {
52
+ await createdDatabaseClient.connect();
53
+ await createdDatabaseClient.query(`CREATE SCHEMA ${schemaName}`);
54
+ this.payload.logger.info(`Created schema "${dbName}.${schemaName}"`);
55
+ } catch (err) {
56
+ this.payload.logger.error({
57
+ err,
58
+ msg: `Error: failed to create schema "${dbName}.${schemaName}". Details: ${err.message}`
59
+ });
60
+ } finally{
61
+ await createdDatabaseClient.end();
62
+ }
63
+ }
64
+ return true;
65
+ } catch (err) {
66
+ this.payload.logger.error({
67
+ err,
68
+ msg: `Error: failed to create database ${dbName}. Details: ${err.message}`
69
+ });
70
+ return false;
71
+ } finally{
72
+ await managementClient.end();
73
+ }
74
+ };
75
+
76
+ //# sourceMappingURL=createDatabase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/postgres/createDatabase.ts"],"sourcesContent":["import type { ClientConfig } from 'pg'\n\nimport type { BasePostgresAdapter } from './types.js'\n\nconst setConnectionStringDatabase = ({\n connectionString,\n database,\n}: {\n connectionString: string\n database: string\n}): string => {\n const connectionURL = new URL(connectionString)\n const newConnectionURL = new URL(connectionURL)\n newConnectionURL.pathname = `/${database}`\n\n return newConnectionURL.toString()\n}\n\ntype 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 to adapter.schemaName if exists.\n */\n schemaName?: string\n}\nexport const createDatabase = async function (this: BasePostgresAdapter, args: Args = {}) {\n // POSTGRES_URL - default Vercel env\n const connectionString =\n this.poolOptions?.connectionString ?? process.env.POSTGRES_URL ?? process.env.DATABASE_URL\n let managementClientConfig: ClientConfig = {}\n let dbName = args.name\n const schemaName = this.schemaName || 'public'\n\n if (connectionString) {\n if (!dbName) {\n dbName = new URL(connectionString).pathname.slice(1)\n }\n\n managementClientConfig.connectionString = setConnectionStringDatabase({\n connectionString,\n database: 'postgres',\n })\n } else {\n if (!dbName) {\n dbName = this.poolOptions.database\n }\n\n managementClientConfig = {\n ...this.poolOptions,\n database: 'postgres',\n }\n }\n\n // import pg only when createDatabase is used\n const pg = await import('pg').then((mod) => mod.default)\n\n const managementClient = new pg.Client(managementClientConfig)\n\n try {\n await managementClient.connect()\n await managementClient.query(`CREATE DATABASE \"${dbName}\"`)\n\n this.payload.logger.info(`Created database \"${dbName}\"`)\n\n if (schemaName !== 'public') {\n let createdDatabaseConfig: ClientConfig = {}\n\n if (connectionString) {\n createdDatabaseConfig.connectionString = setConnectionStringDatabase({\n connectionString,\n database: dbName,\n })\n } else {\n createdDatabaseConfig = {\n ...this.poolOptions,\n database: dbName,\n }\n }\n\n const createdDatabaseClient = new pg.Client(createdDatabaseConfig)\n\n try {\n await createdDatabaseClient.connect()\n\n await createdDatabaseClient.query(`CREATE SCHEMA ${schemaName}`)\n this.payload.logger.info(`Created schema \"${dbName}.${schemaName}\"`)\n } catch (err) {\n this.payload.logger.error({\n err,\n msg: `Error: failed to create schema \"${dbName}.${schemaName}\". Details: ${err.message}`,\n })\n } finally {\n await createdDatabaseClient.end()\n }\n }\n\n return true\n } catch (err) {\n this.payload.logger.error({\n err,\n msg: `Error: failed to create database ${dbName}. Details: ${err.message}`,\n })\n\n return false\n } finally {\n await managementClient.end()\n }\n}\n"],"names":["setConnectionStringDatabase","connectionString","database","connectionURL","URL","newConnectionURL","pathname","toString","createDatabase","args","poolOptions","process","env","POSTGRES_URL","DATABASE_URL","managementClientConfig","dbName","name","schemaName","slice","pg","then","mod","default","managementClient","Client","connect","query","payload","logger","info","createdDatabaseConfig","createdDatabaseClient","err","error","msg","message","end"],"mappings":"AAIA,MAAMA,8BAA8B,CAAC,EACnCC,gBAAgB,EAChBC,QAAQ,EAIT;IACC,MAAMC,gBAAgB,IAAIC,IAAIH;IAC9B,MAAMI,mBAAmB,IAAID,IAAID;IACjCE,iBAAiBC,QAAQ,GAAG,CAAC,CAAC,EAAEJ,SAAS,CAAC;IAE1C,OAAOG,iBAAiBE,QAAQ;AAClC;AAYA,OAAO,MAAMC,iBAAiB,eAA2CC,OAAa,CAAC,CAAC;IACtF,oCAAoC;IACpC,MAAMR,mBACJ,IAAI,CAACS,WAAW,EAAET,oBAAoBU,QAAQC,GAAG,CAACC,YAAY,IAAIF,QAAQC,GAAG,CAACE,YAAY;IAC5F,IAAIC,yBAAuC,CAAC;IAC5C,IAAIC,SAASP,KAAKQ,IAAI;IACtB,MAAMC,aAAa,IAAI,CAACA,UAAU,IAAI;IAEtC,IAAIjB,kBAAkB;QACpB,IAAI,CAACe,QAAQ;YACXA,SAAS,IAAIZ,IAAIH,kBAAkBK,QAAQ,CAACa,KAAK,CAAC;QACpD;QAEAJ,uBAAuBd,gBAAgB,GAAGD,4BAA4B;YACpEC;YACAC,UAAU;QACZ;IACF,OAAO;QACL,IAAI,CAACc,QAAQ;YACXA,SAAS,IAAI,CAACN,WAAW,CAACR,QAAQ;QACpC;QAEAa,yBAAyB;YACvB,GAAG,IAAI,CAACL,WAAW;YACnBR,UAAU;QACZ;IACF;IAEA,6CAA6C;IAC7C,MAAMkB,KAAK,MAAM,MAAM,CAAC,MAAMC,IAAI,CAAC,CAACC,MAAQA,IAAIC,OAAO;IAEvD,MAAMC,mBAAmB,IAAIJ,GAAGK,MAAM,CAACV;IAEvC,IAAI;QACF,MAAMS,iBAAiBE,OAAO;QAC9B,MAAMF,iBAAiBG,KAAK,CAAC,CAAC,iBAAiB,EAAEX,OAAO,CAAC,CAAC;QAE1D,IAAI,CAACY,OAAO,CAACC,MAAM,CAACC,IAAI,CAAC,CAAC,kBAAkB,EAAEd,OAAO,CAAC,CAAC;QAEvD,IAAIE,eAAe,UAAU;YAC3B,IAAIa,wBAAsC,CAAC;YAE3C,IAAI9B,kBAAkB;gBACpB8B,sBAAsB9B,gBAAgB,GAAGD,4BAA4B;oBACnEC;oBACAC,UAAUc;gBACZ;YACF,OAAO;gBACLe,wBAAwB;oBACtB,GAAG,IAAI,CAACrB,WAAW;oBACnBR,UAAUc;gBACZ;YACF;YAEA,MAAMgB,wBAAwB,IAAIZ,GAAGK,MAAM,CAACM;YAE5C,IAAI;gBACF,MAAMC,sBAAsBN,OAAO;gBAEnC,MAAMM,sBAAsBL,KAAK,CAAC,CAAC,cAAc,EAAET,WAAW,CAAC;gBAC/D,IAAI,CAACU,OAAO,CAACC,MAAM,CAACC,IAAI,CAAC,CAAC,gBAAgB,EAAEd,OAAO,CAAC,EAAEE,WAAW,CAAC,CAAC;YACrE,EAAE,OAAOe,KAAK;gBACZ,IAAI,CAACL,OAAO,CAACC,MAAM,CAACK,KAAK,CAAC;oBACxBD;oBACAE,KAAK,CAAC,gCAAgC,EAAEnB,OAAO,CAAC,EAAEE,WAAW,YAAY,EAAEe,IAAIG,OAAO,CAAC,CAAC;gBAC1F;YACF,SAAU;gBACR,MAAMJ,sBAAsBK,GAAG;YACjC;QACF;QAEA,OAAO;IACT,EAAE,OAAOJ,KAAK;QACZ,IAAI,CAACL,OAAO,CAACC,MAAM,CAACK,KAAK,CAAC;YACxBD;YACAE,KAAK,CAAC,iCAAiC,EAAEnB,OAAO,WAAW,EAAEiB,IAAIG,OAAO,CAAC,CAAC;QAC5E;QAEA,OAAO;IACT,SAAU;QACR,MAAMZ,iBAAiBa,GAAG;IAC5B;AACF,EAAC"}
@@ -0,0 +1,3 @@
1
+ import type { BasePostgresAdapter } from './types.js';
2
+ export declare const createExtensions: (this: BasePostgresAdapter) => Promise<void>;
3
+ //# sourceMappingURL=createExtensions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createExtensions.d.ts","sourceRoot":"","sources":["../../src/postgres/createExtensions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAErD,eAAO,MAAM,gBAAgB,SAAyB,mBAAmB,KAAG,OAAO,CAAC,IAAI,CAUvF,CAAA"}
@@ -0,0 +1,16 @@
1
+ export const createExtensions = async function() {
2
+ for(const extension in this.extensions){
3
+ if (this.extensions[extension]) {
4
+ try {
5
+ await this.drizzle.execute(`CREATE EXTENSION IF NOT EXISTS "${extension}"`);
6
+ } catch (err) {
7
+ this.payload.logger.error({
8
+ err,
9
+ msg: `Failed to create extension ${extension}`
10
+ });
11
+ }
12
+ }
13
+ }
14
+ };
15
+
16
+ //# sourceMappingURL=createExtensions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/postgres/createExtensions.ts"],"sourcesContent":["import type { BasePostgresAdapter } from './types.js'\n\nexport const createExtensions = async function (this: BasePostgresAdapter): Promise<void> {\n for (const extension in this.extensions) {\n if (this.extensions[extension]) {\n try {\n await this.drizzle.execute(`CREATE EXTENSION IF NOT EXISTS \"${extension}\"`)\n } catch (err) {\n this.payload.logger.error({ err, msg: `Failed to create extension ${extension}` })\n }\n }\n }\n}\n"],"names":["createExtensions","extension","extensions","drizzle","execute","err","payload","logger","error","msg"],"mappings":"AAEA,OAAO,MAAMA,mBAAmB;IAC9B,IAAK,MAAMC,aAAa,IAAI,CAACC,UAAU,CAAE;QACvC,IAAI,IAAI,CAACA,UAAU,CAACD,UAAU,EAAE;YAC9B,IAAI;gBACF,MAAM,IAAI,CAACE,OAAO,CAACC,OAAO,CAAC,CAAC,gCAAgC,EAAEH,UAAU,CAAC,CAAC;YAC5E,EAAE,OAAOI,KAAK;gBACZ,IAAI,CAACC,OAAO,CAACC,MAAM,CAACC,KAAK,CAAC;oBAAEH;oBAAKI,KAAK,CAAC,2BAA2B,EAAER,UAAU,CAAC;gBAAC;YAClF;QACF;IACF;AACF,EAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const convertPathToJSONTraversal: (incomingSegments: string[]) => string;
2
+ //# sourceMappingURL=convertPathToJSONTraversal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convertPathToJSONTraversal.d.ts","sourceRoot":"","sources":["../../../src/postgres/createJSONQuery/convertPathToJSONTraversal.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,0BAA0B,qBAAsB,MAAM,EAAE,WAYpE,CAAA"}
@@ -0,0 +1,16 @@
1
+ import { formatJSONPathSegment } from './formatJSONPathSegment.js';
2
+ export const convertPathToJSONTraversal = (incomingSegments)=>{
3
+ const segments = [
4
+ ...incomingSegments
5
+ ];
6
+ segments.shift();
7
+ return segments.reduce((res, segment, i)=>{
8
+ const formattedSegment = formatJSONPathSegment(segment);
9
+ if (i + 1 === segments.length) {
10
+ return `${res}->>${formattedSegment}`;
11
+ }
12
+ return `${res}->${formattedSegment}`;
13
+ }, '');
14
+ };
15
+
16
+ //# sourceMappingURL=convertPathToJSONTraversal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/postgres/createJSONQuery/convertPathToJSONTraversal.ts"],"sourcesContent":["import { formatJSONPathSegment } from './formatJSONPathSegment.js'\n\nexport const convertPathToJSONTraversal = (incomingSegments: string[]) => {\n const segments = [...incomingSegments]\n segments.shift()\n\n return segments.reduce((res, segment, i) => {\n const formattedSegment = formatJSONPathSegment(segment)\n\n if (i + 1 === segments.length) {\n return `${res}->>${formattedSegment}`\n }\n return `${res}->${formattedSegment}`\n }, '')\n}\n"],"names":["formatJSONPathSegment","convertPathToJSONTraversal","incomingSegments","segments","shift","reduce","res","segment","i","formattedSegment","length"],"mappings":"AAAA,SAASA,qBAAqB,QAAQ,6BAA4B;AAElE,OAAO,MAAMC,6BAA6B,CAACC;IACzC,MAAMC,WAAW;WAAID;KAAiB;IACtCC,SAASC,KAAK;IAEd,OAAOD,SAASE,MAAM,CAAC,CAACC,KAAKC,SAASC;QACpC,MAAMC,mBAAmBT,sBAAsBO;QAE/C,IAAIC,IAAI,MAAML,SAASO,MAAM,EAAE;YAC7B,OAAO,CAAC,EAAEJ,IAAI,GAAG,EAAEG,iBAAiB,CAAC;QACvC;QACA,OAAO,CAAC,EAAEH,IAAI,EAAE,EAAEG,iBAAiB,CAAC;IACtC,GAAG;AACL,EAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const formatJSONPathSegment: (segment: string) => string;
2
+ //# sourceMappingURL=formatJSONPathSegment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatJSONPathSegment.d.ts","sourceRoot":"","sources":["../../../src/postgres/createJSONQuery/formatJSONPathSegment.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qBAAqB,YAAa,MAAM,WAEpD,CAAA"}
@@ -0,0 +1,5 @@
1
+ export const formatJSONPathSegment = (segment)=>{
2
+ return Number.isNaN(parseInt(segment)) ? `'${segment}'` : segment;
3
+ };
4
+
5
+ //# sourceMappingURL=formatJSONPathSegment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/postgres/createJSONQuery/formatJSONPathSegment.ts"],"sourcesContent":["export const formatJSONPathSegment = (segment: string) => {\n return Number.isNaN(parseInt(segment)) ? `'${segment}'` : segment\n}\n"],"names":["formatJSONPathSegment","segment","Number","isNaN","parseInt"],"mappings":"AAAA,OAAO,MAAMA,wBAAwB,CAACC;IACpC,OAAOC,OAAOC,KAAK,CAACC,SAASH,YAAY,CAAC,CAAC,EAAEA,QAAQ,CAAC,CAAC,GAAGA;AAC5D,EAAC"}
@@ -0,0 +1,10 @@
1
+ type Args = {
2
+ operator: string;
3
+ pathSegments: string[];
4
+ treatAsArray?: string[];
5
+ treatRootAsArray?: boolean;
6
+ value: unknown;
7
+ };
8
+ export declare const createJSONQuery: ({ operator, pathSegments, treatAsArray, treatRootAsArray, value, }: Args) => string;
9
+ export {};
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/postgres/createJSONQuery/index.ts"],"names":[],"mappings":"AAmDA,KAAK,IAAI,GAAG;IACV,QAAQ,EAAE,MAAM,CAAA;IAChB,YAAY,EAAE,MAAM,EAAE,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;IACvB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,KAAK,EAAE,OAAO,CAAA;CACf,CAAA;AAED,eAAO,MAAM,eAAe,uEAMzB,IAAI,KAAG,MAqBT,CAAA"}
@@ -0,0 +1,54 @@
1
+ import { convertPathToJSONTraversal } from './convertPathToJSONTraversal.js';
2
+ import { formatJSONPathSegment } from './formatJSONPathSegment.js';
3
+ const operatorMap = {
4
+ contains: '~*',
5
+ equals: '=',
6
+ like: '~*'
7
+ };
8
+ const fromArray = ({ isRoot, operator, pathSegments, treatAsArray, value })=>{
9
+ const newPathSegments = pathSegments.slice(isRoot ? 1 : 2);
10
+ const alias = `${pathSegments[isRoot ? 0 : 1]}_alias_${newPathSegments.length}`;
11
+ newPathSegments.unshift(alias);
12
+ const arrayElements = isRoot ? pathSegments[0] : `${pathSegments[0]} -> ${formatJSONPathSegment(pathSegments[1])}`;
13
+ return `EXISTS (
14
+ SELECT 1
15
+ FROM jsonb_array_elements(${arrayElements}) AS ${alias}
16
+ WHERE ${createJSONQuery({
17
+ operator,
18
+ pathSegments: newPathSegments,
19
+ treatAsArray,
20
+ value
21
+ })}
22
+ )`;
23
+ };
24
+ const createConstraint = ({ operator, pathSegments, value })=>{
25
+ const jsonQuery = convertPathToJSONTraversal(pathSegments);
26
+ return `${pathSegments[0]}${jsonQuery} ${operatorMap[operator]} '${value}'`;
27
+ };
28
+ export const createJSONQuery = ({ operator, pathSegments, treatAsArray, treatRootAsArray, value })=>{
29
+ if (treatRootAsArray) {
30
+ return fromArray({
31
+ isRoot: true,
32
+ operator,
33
+ pathSegments,
34
+ treatAsArray,
35
+ value
36
+ });
37
+ }
38
+ if (treatAsArray.includes(pathSegments[1])) {
39
+ return fromArray({
40
+ operator,
41
+ pathSegments,
42
+ treatAsArray,
43
+ value
44
+ });
45
+ }
46
+ return createConstraint({
47
+ operator,
48
+ pathSegments,
49
+ treatAsArray,
50
+ value
51
+ });
52
+ };
53
+
54
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/postgres/createJSONQuery/index.ts"],"sourcesContent":["import { convertPathToJSONTraversal } from './convertPathToJSONTraversal.js'\nimport { formatJSONPathSegment } from './formatJSONPathSegment.js'\n\nconst operatorMap = {\n contains: '~*',\n equals: '=',\n like: '~*',\n}\n\ntype FromArrayArgs = {\n isRoot?: true\n operator: string\n pathSegments: string[]\n treatAsArray?: string[]\n value: unknown\n}\n\nconst fromArray = ({ isRoot, operator, pathSegments, treatAsArray, value }: FromArrayArgs) => {\n const newPathSegments = pathSegments.slice(isRoot ? 1 : 2)\n const alias = `${pathSegments[isRoot ? 0 : 1]}_alias_${newPathSegments.length}`\n\n newPathSegments.unshift(alias)\n\n const arrayElements = isRoot\n ? pathSegments[0]\n : `${pathSegments[0]} -> ${formatJSONPathSegment(pathSegments[1])}`\n\n return `EXISTS (\n SELECT 1\n FROM jsonb_array_elements(${arrayElements}) AS ${alias}\n WHERE ${createJSONQuery({\n operator,\n pathSegments: newPathSegments,\n treatAsArray,\n value,\n })}\n )`\n}\n\ntype CreateConstraintArgs = {\n operator: string\n pathSegments: string[]\n treatAsArray?: string[]\n value: unknown\n}\n\nconst createConstraint = ({ operator, pathSegments, value }: CreateConstraintArgs): string => {\n const jsonQuery = convertPathToJSONTraversal(pathSegments)\n return `${pathSegments[0]}${jsonQuery} ${operatorMap[operator]} '${value}'`\n}\n\ntype Args = {\n operator: string\n pathSegments: string[]\n treatAsArray?: string[]\n treatRootAsArray?: boolean\n value: unknown\n}\n\nexport const createJSONQuery = ({\n operator,\n pathSegments,\n treatAsArray,\n treatRootAsArray,\n value,\n}: Args): string => {\n if (treatRootAsArray) {\n return fromArray({\n isRoot: true,\n operator,\n pathSegments,\n treatAsArray,\n value,\n })\n }\n\n if (treatAsArray.includes(pathSegments[1])) {\n return fromArray({\n operator,\n pathSegments,\n treatAsArray,\n value,\n })\n }\n\n return createConstraint({ operator, pathSegments, treatAsArray, value })\n}\n"],"names":["convertPathToJSONTraversal","formatJSONPathSegment","operatorMap","contains","equals","like","fromArray","isRoot","operator","pathSegments","treatAsArray","value","newPathSegments","slice","alias","length","unshift","arrayElements","createJSONQuery","createConstraint","jsonQuery","treatRootAsArray","includes"],"mappings":"AAAA,SAASA,0BAA0B,QAAQ,kCAAiC;AAC5E,SAASC,qBAAqB,QAAQ,6BAA4B;AAElE,MAAMC,cAAc;IAClBC,UAAU;IACVC,QAAQ;IACRC,MAAM;AACR;AAUA,MAAMC,YAAY,CAAC,EAAEC,MAAM,EAAEC,QAAQ,EAAEC,YAAY,EAAEC,YAAY,EAAEC,KAAK,EAAiB;IACvF,MAAMC,kBAAkBH,aAAaI,KAAK,CAACN,SAAS,IAAI;IACxD,MAAMO,QAAQ,CAAC,EAAEL,YAAY,CAACF,SAAS,IAAI,EAAE,CAAC,OAAO,EAAEK,gBAAgBG,MAAM,CAAC,CAAC;IAE/EH,gBAAgBI,OAAO,CAACF;IAExB,MAAMG,gBAAgBV,SAClBE,YAAY,CAAC,EAAE,GACf,CAAC,EAAEA,YAAY,CAAC,EAAE,CAAC,IAAI,EAAER,sBAAsBQ,YAAY,CAAC,EAAE,EAAE,CAAC;IAErE,OAAO,CAAC;;8BAEoB,EAAEQ,cAAc,KAAK,EAAEH,MAAM;UACjD,EAAEI,gBAAgB;QACtBV;QACAC,cAAcG;QACdF;QACAC;IACF,GAAG;GACJ,CAAC;AACJ;AASA,MAAMQ,mBAAmB,CAAC,EAAEX,QAAQ,EAAEC,YAAY,EAAEE,KAAK,EAAwB;IAC/E,MAAMS,YAAYpB,2BAA2BS;IAC7C,OAAO,CAAC,EAAEA,YAAY,CAAC,EAAE,CAAC,EAAEW,UAAU,CAAC,EAAElB,WAAW,CAACM,SAAS,CAAC,EAAE,EAAEG,MAAM,CAAC,CAAC;AAC7E;AAUA,OAAO,MAAMO,kBAAkB,CAAC,EAC9BV,QAAQ,EACRC,YAAY,EACZC,YAAY,EACZW,gBAAgB,EAChBV,KAAK,EACA;IACL,IAAIU,kBAAkB;QACpB,OAAOf,UAAU;YACfC,QAAQ;YACRC;YACAC;YACAC;YACAC;QACF;IACF;IAEA,IAAID,aAAaY,QAAQ,CAACb,YAAY,CAAC,EAAE,GAAG;QAC1C,OAAOH,UAAU;YACfE;YACAC;YACAC;YACAC;QACF;IACF;IAEA,OAAOQ,iBAAiB;QAAEX;QAAUC;QAAcC;QAAcC;IAAM;AACxE,EAAC"}
@@ -0,0 +1,3 @@
1
+ import type { CreateMigration } from 'payload';
2
+ export declare const createMigration: CreateMigration;
3
+ //# sourceMappingURL=createMigration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createMigration.d.ts","sourceRoot":"","sources":["../../src/postgres/createMigration.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAgB9C,eAAO,MAAM,eAAe,EAAE,eAyG7B,CAAA"}
@@ -0,0 +1,92 @@
1
+ import fs from 'fs';
2
+ import { createRequire } from 'module';
3
+ import path from 'path';
4
+ import { getPredefinedMigration, writeMigrationIndex } from 'payload';
5
+ import prompts from 'prompts';
6
+ import { fileURLToPath } from 'url';
7
+ import { defaultDrizzleSnapshot } from './defaultSnapshot.js';
8
+ import { getMigrationTemplate } from './getMigrationTemplate.js';
9
+ const require = createRequire(import.meta.url);
10
+ export const createMigration = async function createMigration({ file, forceAcceptWarning, migrationName, payload }) {
11
+ const filename = fileURLToPath(import.meta.url);
12
+ const dirname = path.dirname(filename);
13
+ const dir = payload.db.migrationDir;
14
+ if (!fs.existsSync(dir)) {
15
+ fs.mkdirSync(dir);
16
+ }
17
+ const { generateDrizzleJson, generateMigration, upPgSnapshot } = require('drizzle-kit/api');
18
+ const drizzleJsonAfter = generateDrizzleJson(this.schema);
19
+ const [yyymmdd, hhmmss] = new Date().toISOString().split('T');
20
+ const formattedDate = yyymmdd.replace(/\D/g, '');
21
+ const formattedTime = hhmmss.split('.')[0].replace(/\D/g, '');
22
+ let imports = '';
23
+ let downSQL;
24
+ let upSQL;
25
+ ({ downSQL, imports, upSQL } = await getPredefinedMigration({
26
+ dirname,
27
+ file,
28
+ migrationName,
29
+ payload
30
+ }));
31
+ const timestamp = `${formattedDate}_${formattedTime}`;
32
+ const name = migrationName || file?.split('/').slice(2).join('/');
33
+ const fileName = `${timestamp}${name ? `_${name.replace(/\W/g, '_')}` : ''}`;
34
+ const filePath = `${dir}/${fileName}`;
35
+ let drizzleJsonBefore = defaultDrizzleSnapshot;
36
+ if (this.schemaName) {
37
+ drizzleJsonBefore.schemas = {
38
+ [this.schemaName]: this.schemaName
39
+ };
40
+ }
41
+ if (!upSQL) {
42
+ // Get latest migration snapshot
43
+ const latestSnapshot = fs.readdirSync(dir).filter((file)=>file.endsWith('.json')).sort().reverse()?.[0];
44
+ if (latestSnapshot) {
45
+ drizzleJsonBefore = JSON.parse(fs.readFileSync(`${dir}/${latestSnapshot}`, 'utf8'));
46
+ if (drizzleJsonBefore.version < drizzleJsonAfter.version) {
47
+ drizzleJsonBefore = upPgSnapshot(drizzleJsonBefore);
48
+ }
49
+ }
50
+ const sqlStatementsUp = await generateMigration(drizzleJsonBefore, drizzleJsonAfter);
51
+ const sqlStatementsDown = await generateMigration(drizzleJsonAfter, drizzleJsonBefore);
52
+ const sqlExecute = 'await payload.db.drizzle.execute(sql`';
53
+ if (sqlStatementsUp?.length) {
54
+ upSQL = `${sqlExecute}\n ${sqlStatementsUp?.join('\n')}\`)`;
55
+ }
56
+ if (sqlStatementsDown?.length) {
57
+ downSQL = `${sqlExecute}\n ${sqlStatementsDown?.join('\n')}\`)`;
58
+ }
59
+ if (!upSQL?.length && !downSQL?.length && !forceAcceptWarning) {
60
+ const { confirm: shouldCreateBlankMigration } = await prompts({
61
+ name: 'confirm',
62
+ type: 'confirm',
63
+ initial: false,
64
+ message: 'No schema changes detected. Would you like to create a blank migration file?'
65
+ }, {
66
+ onCancel: ()=>{
67
+ process.exit(0);
68
+ }
69
+ });
70
+ if (!shouldCreateBlankMigration) {
71
+ process.exit(0);
72
+ }
73
+ }
74
+ // write schema
75
+ fs.writeFileSync(`${filePath}.json`, JSON.stringify(drizzleJsonAfter, null, 2));
76
+ }
77
+ // write migration
78
+ fs.writeFileSync(`${filePath}.ts`, getMigrationTemplate({
79
+ downSQL: downSQL || ` // Migration code`,
80
+ imports,
81
+ packageName: payload.db.packageName,
82
+ upSQL: upSQL || ` // Migration code`
83
+ }));
84
+ writeMigrationIndex({
85
+ migrationsDir: payload.db.migrationDir
86
+ });
87
+ payload.logger.info({
88
+ msg: `Migration created at ${filePath}.ts`
89
+ });
90
+ };
91
+
92
+ //# sourceMappingURL=createMigration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/postgres/createMigration.ts"],"sourcesContent":["import type { CreateMigration } from 'payload'\n\nimport fs from 'fs'\nimport { createRequire } from 'module'\nimport path from 'path'\nimport { getPredefinedMigration, writeMigrationIndex } from 'payload'\nimport prompts from 'prompts'\nimport { fileURLToPath } from 'url'\n\nimport type { BasePostgresAdapter } from './types.js'\n\nimport { defaultDrizzleSnapshot } from './defaultSnapshot.js'\nimport { getMigrationTemplate } from './getMigrationTemplate.js'\n\nconst require = createRequire(import.meta.url)\n\nexport const createMigration: CreateMigration = async function createMigration(\n this: BasePostgresAdapter,\n { file, forceAcceptWarning, migrationName, payload },\n) {\n const filename = fileURLToPath(import.meta.url)\n const dirname = path.dirname(filename)\n const dir = payload.db.migrationDir\n if (!fs.existsSync(dir)) {\n fs.mkdirSync(dir)\n }\n const { generateDrizzleJson, generateMigration, upPgSnapshot } = require('drizzle-kit/api')\n const drizzleJsonAfter = generateDrizzleJson(this.schema)\n const [yyymmdd, hhmmss] = new Date().toISOString().split('T')\n const formattedDate = yyymmdd.replace(/\\D/g, '')\n const formattedTime = hhmmss.split('.')[0].replace(/\\D/g, '')\n let imports: string = ''\n let downSQL: string\n let upSQL: string\n ;({ downSQL, imports, upSQL } = await getPredefinedMigration({\n dirname,\n file,\n migrationName,\n payload,\n }))\n\n const timestamp = `${formattedDate}_${formattedTime}`\n\n const name = migrationName || file?.split('/').slice(2).join('/')\n const fileName = `${timestamp}${name ? `_${name.replace(/\\W/g, '_')}` : ''}`\n\n const filePath = `${dir}/${fileName}`\n\n let drizzleJsonBefore = defaultDrizzleSnapshot\n\n if (this.schemaName) {\n drizzleJsonBefore.schemas = {\n [this.schemaName]: this.schemaName,\n }\n }\n\n if (!upSQL) {\n // Get latest migration snapshot\n const latestSnapshot = fs\n .readdirSync(dir)\n .filter((file) => file.endsWith('.json'))\n .sort()\n .reverse()?.[0]\n\n if (latestSnapshot) {\n drizzleJsonBefore = JSON.parse(fs.readFileSync(`${dir}/${latestSnapshot}`, 'utf8'))\n\n if (drizzleJsonBefore.version < drizzleJsonAfter.version) {\n drizzleJsonBefore = upPgSnapshot(drizzleJsonBefore)\n }\n }\n\n const sqlStatementsUp = await generateMigration(drizzleJsonBefore, drizzleJsonAfter)\n const sqlStatementsDown = await generateMigration(drizzleJsonAfter, drizzleJsonBefore)\n const sqlExecute = 'await payload.db.drizzle.execute(sql`'\n\n if (sqlStatementsUp?.length) {\n upSQL = `${sqlExecute}\\n ${sqlStatementsUp?.join('\\n')}\\`)`\n }\n if (sqlStatementsDown?.length) {\n downSQL = `${sqlExecute}\\n ${sqlStatementsDown?.join('\\n')}\\`)`\n }\n\n if (!upSQL?.length && !downSQL?.length && !forceAcceptWarning) {\n const { confirm: shouldCreateBlankMigration } = await prompts(\n {\n name: 'confirm',\n type: 'confirm',\n initial: false,\n message: 'No schema changes detected. Would you like to create a blank migration file?',\n },\n {\n onCancel: () => {\n process.exit(0)\n },\n },\n )\n\n if (!shouldCreateBlankMigration) {\n process.exit(0)\n }\n }\n\n // write schema\n fs.writeFileSync(`${filePath}.json`, JSON.stringify(drizzleJsonAfter, null, 2))\n }\n\n // write migration\n fs.writeFileSync(\n `${filePath}.ts`,\n getMigrationTemplate({\n downSQL: downSQL || ` // Migration code`,\n imports,\n packageName: payload.db.packageName,\n upSQL: upSQL || ` // Migration code`,\n }),\n )\n\n writeMigrationIndex({ migrationsDir: payload.db.migrationDir })\n\n payload.logger.info({ msg: `Migration created at ${filePath}.ts` })\n}\n"],"names":["fs","createRequire","path","getPredefinedMigration","writeMigrationIndex","prompts","fileURLToPath","defaultDrizzleSnapshot","getMigrationTemplate","require","url","createMigration","file","forceAcceptWarning","migrationName","payload","filename","dirname","dir","db","migrationDir","existsSync","mkdirSync","generateDrizzleJson","generateMigration","upPgSnapshot","drizzleJsonAfter","schema","yyymmdd","hhmmss","Date","toISOString","split","formattedDate","replace","formattedTime","imports","downSQL","upSQL","timestamp","name","slice","join","fileName","filePath","drizzleJsonBefore","schemaName","schemas","latestSnapshot","readdirSync","filter","endsWith","sort","reverse","JSON","parse","readFileSync","version","sqlStatementsUp","sqlStatementsDown","sqlExecute","length","confirm","shouldCreateBlankMigration","type","initial","message","onCancel","process","exit","writeFileSync","stringify","packageName","migrationsDir","logger","info","msg"],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { DrizzleSnapshotJSON } from 'drizzle-kit/api';
2
+ export declare const defaultDrizzleSnapshot: DrizzleSnapshotJSON;
3
+ //# sourceMappingURL=defaultSnapshot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaultSnapshot.d.ts","sourceRoot":"","sources":["../../src/postgres/defaultSnapshot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAE1D,eAAO,MAAM,sBAAsB,EAAE,mBAiBpC,CAAA"}
@@ -0,0 +1,20 @@
1
+ export const defaultDrizzleSnapshot = {
2
+ id: '00000000-0000-0000-0000-000000000000',
3
+ _meta: {
4
+ columns: {},
5
+ schemas: {},
6
+ tables: {}
7
+ },
8
+ dialect: 'postgresql',
9
+ enums: {},
10
+ policies: {},
11
+ prevId: '00000000-0000-0000-0000-00000000000',
12
+ roles: {},
13
+ schemas: {},
14
+ sequences: {},
15
+ tables: {},
16
+ version: '7',
17
+ views: {}
18
+ };
19
+
20
+ //# sourceMappingURL=defaultSnapshot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/postgres/defaultSnapshot.ts"],"sourcesContent":["import type { DrizzleSnapshotJSON } from 'drizzle-kit/api'\n\nexport const defaultDrizzleSnapshot: DrizzleSnapshotJSON = {\n id: '00000000-0000-0000-0000-000000000000',\n _meta: {\n columns: {},\n schemas: {},\n tables: {},\n },\n dialect: 'postgresql',\n enums: {},\n policies: {},\n prevId: '00000000-0000-0000-0000-00000000000',\n roles: {},\n schemas: {},\n sequences: {},\n tables: {},\n version: '7',\n views: {},\n}\n"],"names":["defaultDrizzleSnapshot","id","_meta","columns","schemas","tables","dialect","enums","policies","prevId","roles","sequences","version","views"],"mappings":"AAEA,OAAO,MAAMA,yBAA8C;IACzDC,IAAI;IACJC,OAAO;QACLC,SAAS,CAAC;QACVC,SAAS,CAAC;QACVC,QAAQ,CAAC;IACX;IACAC,SAAS;IACTC,OAAO,CAAC;IACRC,UAAU,CAAC;IACXC,QAAQ;IACRC,OAAO,CAAC;IACRN,SAAS,CAAC;IACVO,WAAW,CAAC;IACZN,QAAQ,CAAC;IACTO,SAAS;IACTC,OAAO,CAAC;AACV,EAAC"}
@@ -0,0 +1,3 @@
1
+ import type { DeleteWhere } from './types.js';
2
+ export declare const deleteWhere: DeleteWhere;
3
+ //# sourceMappingURL=deleteWhere.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deleteWhere.d.ts","sourceRoot":"","sources":["../../src/postgres/deleteWhere.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAE7C,eAAO,MAAM,WAAW,EAAE,WAGzB,CAAA"}
@@ -0,0 +1,6 @@
1
+ export const deleteWhere = async function deleteWhere({ db, tableName, where }) {
2
+ const table = this.tables[tableName];
3
+ await db.delete(table).where(where);
4
+ };
5
+
6
+ //# sourceMappingURL=deleteWhere.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/postgres/deleteWhere.ts"],"sourcesContent":["import type { TransactionPg } from '../types.js'\nimport type { DeleteWhere } from './types.js'\n\nexport const deleteWhere: DeleteWhere = async function deleteWhere({ db, tableName, where }) {\n const table = this.tables[tableName]\n await (db as TransactionPg).delete(table).where(where)\n}\n"],"names":["deleteWhere","db","tableName","where","table","tables","delete"],"mappings":"AAGA,OAAO,MAAMA,cAA2B,eAAeA,YAAY,EAAEC,EAAE,EAAEC,SAAS,EAAEC,KAAK,EAAE;IACzF,MAAMC,QAAQ,IAAI,CAACC,MAAM,CAACH,UAAU;IACpC,MAAM,AAACD,GAAqBK,MAAM,CAACF,OAAOD,KAAK,CAACA;AAClD,EAAC"}
@@ -0,0 +1,3 @@
1
+ import type { DropDatabase } from './types.js';
2
+ export declare const dropDatabase: DropDatabase;
3
+ //# sourceMappingURL=dropDatabase.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dropDatabase.d.ts","sourceRoot":"","sources":["../../src/postgres/dropDatabase.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAE9C,eAAO,MAAM,YAAY,EAAE,YAM1B,CAAA"}
@@ -0,0 +1,9 @@
1
+ export const dropDatabase = async function dropDatabase({ adapter }) {
2
+ await adapter.execute({
3
+ drizzle: adapter.drizzle,
4
+ raw: `drop schema if exists ${this.schemaName || 'public'} cascade;
5
+ create schema ${this.schemaName || 'public'};`
6
+ });
7
+ };
8
+
9
+ //# sourceMappingURL=dropDatabase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/postgres/dropDatabase.ts"],"sourcesContent":["import type { DropDatabase } from './types.js'\n\nexport const dropDatabase: DropDatabase = async function dropDatabase({ adapter }) {\n await adapter.execute({\n drizzle: adapter.drizzle,\n raw: `drop schema if exists ${this.schemaName || 'public'} cascade;\n create schema ${this.schemaName || 'public'};`,\n })\n}\n"],"names":["dropDatabase","adapter","execute","drizzle","raw","schemaName"],"mappings":"AAEA,OAAO,MAAMA,eAA6B,eAAeA,aAAa,EAAEC,OAAO,EAAE;IAC/E,MAAMA,QAAQC,OAAO,CAAC;QACpBC,SAASF,QAAQE,OAAO;QACxBC,KAAK,CAAC,sBAAsB,EAAE,IAAI,CAACC,UAAU,IAAI,SAAS;kBAC5C,EAAE,IAAI,CAACA,UAAU,IAAI,SAAS,CAAC,CAAC;IAChD;AACF,EAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Execute } from './types.js';
2
+ export declare const execute: Execute<any>;
3
+ //# sourceMappingURL=execute.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../src/postgres/execute.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAEzC,eAAO,MAAM,OAAO,EAAE,OAAO,CAAC,GAAG,CAQhC,CAAA"}
@@ -0,0 +1,11 @@
1
+ import { sql } from 'drizzle-orm';
2
+ export const execute = function execute({ db, drizzle, raw, sql: statement }) {
3
+ const executeFrom = db ?? drizzle;
4
+ if (raw) {
5
+ return executeFrom.execute(sql.raw(raw));
6
+ } else {
7
+ return executeFrom.execute(sql`${statement}`);
8
+ }
9
+ };
10
+
11
+ //# sourceMappingURL=execute.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/postgres/execute.ts"],"sourcesContent":["import { sql } from 'drizzle-orm'\n\nimport type { Execute } from './types.js'\n\nexport const execute: Execute<any> = function execute({ db, drizzle, raw, sql: statement }) {\n const executeFrom = db ?? drizzle\n\n if (raw) {\n return executeFrom.execute(sql.raw(raw))\n } else {\n return executeFrom.execute(sql`${statement}`)\n }\n}\n"],"names":["sql","execute","db","drizzle","raw","statement","executeFrom"],"mappings":"AAAA,SAASA,GAAG,QAAQ,cAAa;AAIjC,OAAO,MAAMC,UAAwB,SAASA,QAAQ,EAAEC,EAAE,EAAEC,OAAO,EAAEC,GAAG,EAAEJ,KAAKK,SAAS,EAAE;IACxF,MAAMC,cAAcJ,MAAMC;IAE1B,IAAIC,KAAK;QACP,OAAOE,YAAYL,OAAO,CAACD,IAAII,GAAG,CAACA;IACrC,OAAO;QACL,OAAOE,YAAYL,OAAO,CAACD,GAAG,CAAC,EAAEK,UAAU,CAAC;IAC9C;AACF,EAAC"}
@@ -0,0 +1,4 @@
1
+ import type { MigrationTemplateArgs } from 'payload';
2
+ export declare const indent: (text: string) => string;
3
+ export declare const getMigrationTemplate: ({ downSQL, imports, packageName, upSQL, }: MigrationTemplateArgs) => string;
4
+ //# sourceMappingURL=getMigrationTemplate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getMigrationTemplate.d.ts","sourceRoot":"","sources":["../../src/postgres/getMigrationTemplate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAEpD,eAAO,MAAM,MAAM,SAAU,MAAM,WAIpB,CAAA;AAEf,eAAO,MAAM,oBAAoB,8CAK9B,qBAAqB,KAAG,MAS1B,CAAA"}
@@ -0,0 +1,13 @@
1
+ export const indent = (text)=>text.split('\n').map((line)=>` ${line}`).join('\n');
2
+ export const getMigrationTemplate = ({ downSQL, imports, packageName, upSQL })=>`import { MigrateUpArgs, MigrateDownArgs, sql } from '${packageName}'
3
+ ${imports ? `${imports}\n` : ''}
4
+ export async function up({ payload, req }: MigrateUpArgs): Promise<void> {
5
+ ${indent(upSQL)}
6
+ }
7
+
8
+ export async function down({ payload, req }: MigrateDownArgs): Promise<void> {
9
+ ${indent(downSQL)}
10
+ }
11
+ `;
12
+
13
+ //# sourceMappingURL=getMigrationTemplate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/postgres/getMigrationTemplate.ts"],"sourcesContent":["import type { MigrationTemplateArgs } from 'payload'\n\nexport const indent = (text: string) =>\n text\n .split('\\n')\n .map((line) => ` ${line}`)\n .join('\\n')\n\nexport const getMigrationTemplate = ({\n downSQL,\n imports,\n packageName,\n upSQL,\n}: MigrationTemplateArgs): string => `import { MigrateUpArgs, MigrateDownArgs, sql } from '${packageName}'\n${imports ? `${imports}\\n` : ''}\nexport async function up({ payload, req }: MigrateUpArgs): Promise<void> {\n${indent(upSQL)}\n}\n\nexport async function down({ payload, req }: MigrateDownArgs): Promise<void> {\n${indent(downSQL)}\n}\n`\n"],"names":["indent","text","split","map","line","join","getMigrationTemplate","downSQL","imports","packageName","upSQL"],"mappings":"AAEA,OAAO,MAAMA,SAAS,CAACC,OACrBA,KACGC,KAAK,CAAC,MACNC,GAAG,CAAC,CAACC,OAAS,CAAC,EAAE,EAAEA,KAAK,CAAC,EACzBC,IAAI,CAAC,MAAK;AAEf,OAAO,MAAMC,uBAAuB,CAAC,EACnCC,OAAO,EACPC,OAAO,EACPC,WAAW,EACXC,KAAK,EACiB,GAAa,CAAC,qDAAqD,EAAED,YAAY;AACzG,EAAED,UAAU,CAAC,EAAEA,QAAQ,EAAE,CAAC,GAAG,GAAG;;AAEhC,EAAER,OAAOU,OAAO;;;;AAIhB,EAAEV,OAAOO,SAAS;;AAElB,CAAC,CAAA"}
@@ -0,0 +1,3 @@
1
+ import type { Init } from 'payload';
2
+ export declare const init: Init;
3
+ //# sourceMappingURL=init.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/postgres/init.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAA6B,MAAM,SAAS,CAAA;AAY9D,eAAO,MAAM,IAAI,EAAE,IAyGlB,CAAA"}