@hot-updater/server 0.33.1 → 0.34.0

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 (198) hide show
  1. package/dist/_virtual/_rolldown/runtime.cjs +0 -2
  2. package/dist/adapters/drizzle.cjs +195 -2
  3. package/dist/adapters/drizzle.d.cts +7 -4
  4. package/dist/adapters/drizzle.d.mts +7 -4
  5. package/dist/adapters/drizzle.mjs +194 -2
  6. package/dist/adapters/drizzleLazyDB.cjs +53 -0
  7. package/dist/adapters/drizzleLazyDB.mjs +53 -0
  8. package/dist/adapters/kysely.cjs +154 -3
  9. package/dist/adapters/kysely.d.cts +18 -10
  10. package/dist/adapters/kysely.d.mts +18 -10
  11. package/dist/adapters/kysely.mjs +153 -3
  12. package/dist/adapters/mongodb.cjs +183 -2
  13. package/dist/adapters/mongodb.d.cts +5 -4
  14. package/dist/adapters/mongodb.d.mts +5 -4
  15. package/dist/adapters/mongodb.mjs +183 -2
  16. package/dist/adapters/prisma.cjs +200 -2
  17. package/dist/adapters/prisma.d.cts +9 -4
  18. package/dist/adapters/prisma.d.mts +9 -4
  19. package/dist/adapters/prisma.mjs +199 -2
  20. package/dist/db/bundleRows.cjs +82 -0
  21. package/dist/db/bundleRows.d.cts +33 -0
  22. package/dist/db/bundleRows.d.mts +33 -0
  23. package/dist/db/bundleRows.mjs +79 -0
  24. package/dist/db/fixedMigrator.cjs +136 -0
  25. package/dist/db/fixedMigrator.mjs +135 -0
  26. package/dist/db/index.cjs +17 -15
  27. package/dist/db/index.d.cts +3 -3
  28. package/dist/db/index.d.mts +3 -3
  29. package/dist/db/index.mjs +17 -15
  30. package/dist/db/pluginCore.cjs +13 -5
  31. package/dist/db/pluginCore.mjs +13 -5
  32. package/dist/db/schema/mongodb.cjs +17 -0
  33. package/dist/db/schema/mongodb.mjs +17 -0
  34. package/dist/db/schema/registry.cjs +23 -0
  35. package/dist/db/schema/registry.mjs +18 -0
  36. package/dist/db/schema/sql.cjs +84 -0
  37. package/dist/db/schema/sql.mjs +78 -0
  38. package/dist/db/schema/sqlMigrations.cjs +74 -0
  39. package/dist/db/schema/sqlMigrations.mjs +73 -0
  40. package/dist/db/schema/sqlOperations.cjs +27 -0
  41. package/dist/db/schema/sqlOperations.mjs +26 -0
  42. package/dist/db/schemaEnhancements.cjs +1 -152
  43. package/dist/db/schemaEnhancements.mjs +1 -149
  44. package/dist/db/schemaGenerators.cjs +222 -0
  45. package/dist/db/schemaGenerators.mjs +220 -0
  46. package/dist/db/schemaReadiness.cjs +23 -0
  47. package/dist/db/schemaReadiness.d.cts +8 -0
  48. package/dist/db/schemaReadiness.d.mts +8 -0
  49. package/dist/db/schemaReadiness.mjs +22 -0
  50. package/dist/db/types.cjs +10 -2
  51. package/dist/db/types.d.cts +58 -14
  52. package/dist/db/types.d.mts +58 -14
  53. package/dist/db/types.mjs +9 -1
  54. package/dist/index.cjs +2 -2
  55. package/dist/index.d.cts +3 -2
  56. package/dist/index.d.mts +3 -2
  57. package/dist/index.mjs +2 -2
  58. package/dist/{packages/server/package.cjs → package.cjs} +1 -1
  59. package/dist/{packages/server/package.mjs → package.mjs} +1 -1
  60. package/dist/runtime.cjs +9 -2
  61. package/dist/runtime.mjs +9 -2
  62. package/dist/schema/dsl.cjs +86 -0
  63. package/dist/schema/dsl.mjs +73 -0
  64. package/dist/schema/index.cjs +13 -0
  65. package/dist/schema/index.mjs +13 -0
  66. package/dist/schema/settings.cjs +9 -0
  67. package/dist/schema/settings.mjs +9 -0
  68. package/dist/schema/types.cjs +6 -0
  69. package/dist/schema/types.mjs +5 -0
  70. package/dist/schema/v0_21_0.cjs +33 -18
  71. package/dist/schema/v0_21_0.mjs +32 -18
  72. package/dist/schema/v0_29_0.cjs +40 -20
  73. package/dist/schema/v0_29_0.mjs +39 -20
  74. package/dist/schema/v0_31_0.cjs +77 -43
  75. package/dist/schema/v0_31_0.mjs +75 -43
  76. package/dist/version.cjs +1 -1
  77. package/dist/version.mjs +1 -1
  78. package/package.json +30 -16
  79. package/src/adapters/drizzle.spec.ts +75 -0
  80. package/src/adapters/drizzle.ts +328 -12
  81. package/src/adapters/drizzleLazyDB.ts +151 -0
  82. package/src/adapters/kysely.spec.ts +107 -0
  83. package/src/adapters/kysely.ts +349 -14
  84. package/src/adapters/mongodb.ts +298 -15
  85. package/src/adapters/prisma.ts +337 -12
  86. package/src/db/bundleRows.ts +140 -0
  87. package/src/db/fixedMigrator.spec.ts +89 -0
  88. package/src/db/fixedMigrator.ts +288 -0
  89. package/src/db/hotUpdaterSchema.ts +6 -0
  90. package/src/db/index.spec.ts +976 -13
  91. package/src/db/index.ts +37 -36
  92. package/src/db/pluginCore.spec.ts +17 -11
  93. package/src/db/pluginCore.ts +15 -6
  94. package/src/db/schema/definitions.ts +1 -0
  95. package/src/db/schema/mongodb.ts +26 -0
  96. package/src/db/schema/registry.ts +55 -0
  97. package/src/db/schema/sql.ts +200 -0
  98. package/src/db/schema/sqlMigrations.ts +219 -0
  99. package/src/db/schema/sqlOperations.ts +62 -0
  100. package/src/db/schema/types.ts +1 -0
  101. package/src/db/schemaEnhancements.ts +0 -405
  102. package/src/db/schemaGenerators.ts +382 -0
  103. package/src/db/schemaReadiness.ts +33 -0
  104. package/src/db/types.ts +69 -25
  105. package/src/runtime.spec.ts +70 -0
  106. package/src/runtime.ts +14 -2
  107. package/src/schema/dsl-all-versions.spec.ts +26 -0
  108. package/src/schema/dsl.ts +148 -0
  109. package/src/schema/index.ts +16 -0
  110. package/src/schema/settings.ts +15 -0
  111. package/src/schema/types.ts +73 -0
  112. package/src/schema/v0_21_0.ts +48 -18
  113. package/src/schema/v0_29_0.ts +58 -22
  114. package/src/schema/v0_31_0.spec.ts +73 -0
  115. package/src/schema/v0_31_0.ts +116 -54
  116. package/dist/_virtual/_rolldown/runtime.mjs +0 -6
  117. package/dist/calculatePagination.cjs +0 -25
  118. package/dist/calculatePagination.mjs +0 -25
  119. package/dist/db/ormCore.cjs +0 -577
  120. package/dist/db/ormCore.d.cts +0 -110
  121. package/dist/db/ormCore.d.mts +0 -110
  122. package/dist/db/ormCore.mjs +0 -575
  123. package/dist/node_modules/.pnpm/@noble_hashes@1.8.0/node_modules/@noble/hashes/_u64.cjs +0 -112
  124. package/dist/node_modules/.pnpm/@noble_hashes@1.8.0/node_modules/@noble/hashes/_u64.mjs +0 -108
  125. package/dist/node_modules/.pnpm/@noble_hashes@1.8.0/node_modules/@noble/hashes/cryptoNode.cjs +0 -22
  126. package/dist/node_modules/.pnpm/@noble_hashes@1.8.0/node_modules/@noble/hashes/cryptoNode.mjs +0 -18
  127. package/dist/node_modules/.pnpm/@noble_hashes@1.8.0/node_modules/@noble/hashes/sha3.cjs +0 -219
  128. package/dist/node_modules/.pnpm/@noble_hashes@1.8.0/node_modules/@noble/hashes/sha3.mjs +0 -214
  129. package/dist/node_modules/.pnpm/@noble_hashes@1.8.0/node_modules/@noble/hashes/utils.cjs +0 -275
  130. package/dist/node_modules/.pnpm/@noble_hashes@1.8.0/node_modules/@noble/hashes/utils.mjs +0 -270
  131. package/dist/node_modules/.pnpm/@paralleldrive_cuid2@2.3.1/node_modules/@paralleldrive/cuid2/index.cjs +0 -17
  132. package/dist/node_modules/.pnpm/@paralleldrive_cuid2@2.3.1/node_modules/@paralleldrive/cuid2/index.mjs +0 -13
  133. package/dist/node_modules/.pnpm/@paralleldrive_cuid2@2.3.1/node_modules/@paralleldrive/cuid2/src/index.cjs +0 -69
  134. package/dist/node_modules/.pnpm/@paralleldrive_cuid2@2.3.1/node_modules/@paralleldrive/cuid2/src/index.mjs +0 -65
  135. package/dist/node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare_workers-types@4.20260611.1_@electric-sql_pglite@0.4.1_@l_601a3995dfc55b0b7fac93cbe1e76579/node_modules/drizzle-orm/column.cjs +0 -52
  136. package/dist/node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare_workers-types@4.20260611.1_@electric-sql_pglite@0.4.1_@l_601a3995dfc55b0b7fac93cbe1e76579/node_modules/drizzle-orm/column.mjs +0 -52
  137. package/dist/node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare_workers-types@4.20260611.1_@electric-sql_pglite@0.4.1_@l_601a3995dfc55b0b7fac93cbe1e76579/node_modules/drizzle-orm/entity.cjs +0 -16
  138. package/dist/node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare_workers-types@4.20260611.1_@electric-sql_pglite@0.4.1_@l_601a3995dfc55b0b7fac93cbe1e76579/node_modules/drizzle-orm/entity.mjs +0 -15
  139. package/dist/node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare_workers-types@4.20260611.1_@electric-sql_pglite@0.4.1_@l_601a3995dfc55b0b7fac93cbe1e76579/node_modules/drizzle-orm/pg-core/columns/enum.cjs +0 -7
  140. package/dist/node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare_workers-types@4.20260611.1_@electric-sql_pglite@0.4.1_@l_601a3995dfc55b0b7fac93cbe1e76579/node_modules/drizzle-orm/pg-core/columns/enum.mjs +0 -7
  141. package/dist/node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare_workers-types@4.20260611.1_@electric-sql_pglite@0.4.1_@l_601a3995dfc55b0b7fac93cbe1e76579/node_modules/drizzle-orm/sql/expressions/conditions.cjs +0 -92
  142. package/dist/node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare_workers-types@4.20260611.1_@electric-sql_pglite@0.4.1_@l_601a3995dfc55b0b7fac93cbe1e76579/node_modules/drizzle-orm/sql/expressions/conditions.mjs +0 -78
  143. package/dist/node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare_workers-types@4.20260611.1_@electric-sql_pglite@0.4.1_@l_601a3995dfc55b0b7fac93cbe1e76579/node_modules/drizzle-orm/sql/expressions/select.cjs +0 -11
  144. package/dist/node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare_workers-types@4.20260611.1_@electric-sql_pglite@0.4.1_@l_601a3995dfc55b0b7fac93cbe1e76579/node_modules/drizzle-orm/sql/expressions/select.mjs +0 -10
  145. package/dist/node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare_workers-types@4.20260611.1_@electric-sql_pglite@0.4.1_@l_601a3995dfc55b0b7fac93cbe1e76579/node_modules/drizzle-orm/sql/sql.cjs +0 -383
  146. package/dist/node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare_workers-types@4.20260611.1_@electric-sql_pglite@0.4.1_@l_601a3995dfc55b0b7fac93cbe1e76579/node_modules/drizzle-orm/sql/sql.mjs +0 -366
  147. package/dist/node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare_workers-types@4.20260611.1_@electric-sql_pglite@0.4.1_@l_601a3995dfc55b0b7fac93cbe1e76579/node_modules/drizzle-orm/subquery.cjs +0 -17
  148. package/dist/node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare_workers-types@4.20260611.1_@electric-sql_pglite@0.4.1_@l_601a3995dfc55b0b7fac93cbe1e76579/node_modules/drizzle-orm/subquery.mjs +0 -17
  149. package/dist/node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare_workers-types@4.20260611.1_@electric-sql_pglite@0.4.1_@l_601a3995dfc55b0b7fac93cbe1e76579/node_modules/drizzle-orm/table.cjs +0 -60
  150. package/dist/node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare_workers-types@4.20260611.1_@electric-sql_pglite@0.4.1_@l_601a3995dfc55b0b7fac93cbe1e76579/node_modules/drizzle-orm/table.mjs +0 -59
  151. package/dist/node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare_workers-types@4.20260611.1_@electric-sql_pglite@0.4.1_@l_601a3995dfc55b0b7fac93cbe1e76579/node_modules/drizzle-orm/table.utils.cjs +0 -4
  152. package/dist/node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare_workers-types@4.20260611.1_@electric-sql_pglite@0.4.1_@l_601a3995dfc55b0b7fac93cbe1e76579/node_modules/drizzle-orm/table.utils.mjs +0 -4
  153. package/dist/node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare_workers-types@4.20260611.1_@electric-sql_pglite@0.4.1_@l_601a3995dfc55b0b7fac93cbe1e76579/node_modules/drizzle-orm/tracing.cjs +0 -6
  154. package/dist/node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare_workers-types@4.20260611.1_@electric-sql_pglite@0.4.1_@l_601a3995dfc55b0b7fac93cbe1e76579/node_modules/drizzle-orm/tracing.mjs +0 -6
  155. package/dist/node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare_workers-types@4.20260611.1_@electric-sql_pglite@0.4.1_@l_601a3995dfc55b0b7fac93cbe1e76579/node_modules/drizzle-orm/view-common.cjs +0 -4
  156. package/dist/node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare_workers-types@4.20260611.1_@electric-sql_pglite@0.4.1_@l_601a3995dfc55b0b7fac93cbe1e76579/node_modules/drizzle-orm/view-common.mjs +0 -4
  157. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/adapters/drizzle/index.cjs +0 -383
  158. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/adapters/drizzle/index.d.cts +0 -12
  159. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/adapters/drizzle/index.d.mts +0 -12
  160. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/adapters/drizzle/index.mjs +0 -383
  161. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/adapters/kysely/index.cjs +0 -4
  162. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/adapters/kysely/index.mjs +0 -5
  163. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/adapters/prisma/index.cjs +0 -339
  164. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/adapters/prisma/index.d.cts +0 -70
  165. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/adapters/prisma/index.d.mts +0 -70
  166. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/adapters/prisma/index.mjs +0 -339
  167. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/chunk-7PZK4ONR.cjs +0 -57
  168. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/chunk-7PZK4ONR.mjs +0 -56
  169. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/chunk-C6OTUURW.cjs +0 -330
  170. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/chunk-C6OTUURW.mjs +0 -326
  171. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/chunk-CHTIKPQU.cjs +0 -166
  172. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/chunk-CHTIKPQU.mjs +0 -163
  173. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/chunk-GUE4GMNC.cjs +0 -14
  174. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/chunk-GUE4GMNC.mjs +0 -13
  175. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/chunk-LHHP6UVP.cjs +0 -24
  176. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/chunk-LHHP6UVP.mjs +0 -24
  177. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/chunk-LVCPMTAT.cjs +0 -1190
  178. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/chunk-LVCPMTAT.mjs +0 -1189
  179. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/chunk-PK2W2SQ7.cjs +0 -197
  180. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/chunk-PK2W2SQ7.mjs +0 -197
  181. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/chunk-ZEQMAIFI.cjs +0 -410
  182. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/chunk-ZEQMAIFI.mjs +0 -400
  183. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/chunk-ZOCGSAWS.cjs +0 -213
  184. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/chunk-ZOCGSAWS.mjs +0 -212
  185. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/create-tg0451Y_.d.cts +0 -285
  186. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/create-tg0451Y_.d.mts +0 -285
  187. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/index-CMqePMTF.d.cts +0 -45
  188. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/index-CMqePMTF.d.mts +0 -45
  189. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/index.cjs +0 -69
  190. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/index.d.cts +0 -49
  191. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/index.d.mts +0 -49
  192. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/index.mjs +0 -67
  193. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/query/index.d.cts +0 -156
  194. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/query/index.d.mts +0 -156
  195. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/schema/index.cjs +0 -1
  196. package/dist/node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk_credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/schema/index.mjs +0 -2
  197. package/src/db/ormCore.ts +0 -1059
  198. package/src/db/ormUpdateCheck.bench.ts +0 -262
@@ -1,212 +0,0 @@
1
- //#region ../../node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk+credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/chunk-ZOCGSAWS.js
2
- async function checkForeignKeyOnInsert(orm, key, inserts) {
3
- const ifMatchEntry = [];
4
- function shouldSkipChecking(insert) {
5
- for (const priorInsert of inserts) {
6
- if (priorInsert === insert) break;
7
- if (key.columns.every((col) => insert[col.ormName] === priorInsert[col.ormName])) return true;
8
- if (key.table === key.referencedTable && key.columns.every((col, i) => insert[col.ormName] === priorInsert[key.referencedColumns[i].ormName])) return true;
9
- }
10
- return false;
11
- }
12
- for (const insert of inserts) {
13
- if (shouldSkipChecking(insert)) continue;
14
- const ifMatchColumn = [];
15
- let containsNull = false;
16
- for (let i = 0; i < key.columns.length; i++) {
17
- const col = key.columns[i];
18
- const referencedCol = key.referencedColumns[i];
19
- if (insert[col.ormName] == null) {
20
- containsNull = true;
21
- break;
22
- }
23
- ifMatchColumn.push({
24
- type: 2,
25
- a: referencedCol,
26
- operator: "=",
27
- b: insert[col.ormName]
28
- });
29
- }
30
- if (!containsNull) ifMatchEntry.push({
31
- type: 0,
32
- items: ifMatchColumn
33
- });
34
- }
35
- if (ifMatchEntry.length === 0) return;
36
- if (await orm.count(key.referencedTable, { where: {
37
- type: 1,
38
- items: ifMatchEntry
39
- } }) < ifMatchEntry.length) errorForeignKey(key);
40
- }
41
- async function exists(orm, table, where) {
42
- return await orm.findFirst(table, {
43
- select: [table.getIdColumn().ormName],
44
- where
45
- }) !== null;
46
- }
47
- async function foreignKeyOnUpdate(orm, key, set, targets) {
48
- const isAffected = {
49
- type: 1,
50
- items: []
51
- };
52
- if (!key.referencedColumns.some((col) => set[col.ormName] !== void 0)) return;
53
- for (const target of targets) {
54
- const condition = {
55
- type: 0,
56
- items: []
57
- };
58
- let containsNull = false;
59
- for (let i = 0; i < key.columns.length; i++) {
60
- const col = key.columns[i];
61
- const referencedCol = key.referencedColumns[i];
62
- if (target[referencedCol.ormName] === null) {
63
- containsNull = true;
64
- break;
65
- }
66
- condition.items.push({
67
- type: 2,
68
- a: col,
69
- operator: "=",
70
- b: target[referencedCol.ormName]
71
- });
72
- }
73
- if (!containsNull) isAffected.items.push(condition);
74
- }
75
- if (isAffected.items.length === 0) return;
76
- if (key.onUpdate === "RESTRICT") {
77
- if (await exists(orm, key.table, isAffected)) errorForeignKey(key);
78
- return;
79
- }
80
- const mappedSet = {};
81
- for (let i = 0; i < key.columns.length; i++) {
82
- const col = key.columns[i].ormName;
83
- const referencedCol = key.referencedColumns[i].ormName;
84
- mappedSet[col] = key.onUpdate === "CASCADE" ? set[referencedCol] : null;
85
- }
86
- await orm.updateMany(key.table, {
87
- where: isAffected,
88
- set: mappedSet
89
- });
90
- }
91
- function createSoftForeignKey(schema, { generateInsertValuesDefault, ...orm }) {
92
- const childForeignKeys = /* @__PURE__ */ new Map();
93
- for (const table of Object.values(schema.tables)) for (const key of table.foreignKeys) {
94
- const name = key.referencedTable.ormName;
95
- const list = childForeignKeys.get(name) ?? [];
96
- list.push(key);
97
- childForeignKeys.set(name, list);
98
- }
99
- if (!orm.transaction) throw new Error("native `transaction` required for soft foreign key.");
100
- return {
101
- ...orm,
102
- async updateMany(table, { set, where }) {
103
- const foreignKeys = childForeignKeys.get(table.ormName);
104
- if (!foreignKeys) return orm.updateMany(table, {
105
- set,
106
- where
107
- });
108
- const idColumnName = table.getIdColumn().ormName;
109
- const targets = await orm.findMany(table, {
110
- select: true,
111
- where
112
- });
113
- await orm.transaction?.(async (tx) => {
114
- for (const key of foreignKeys) await foreignKeyOnUpdate(tx.internal, key, set, targets);
115
- await orm.updateMany(table, {
116
- set,
117
- where: {
118
- type: 2,
119
- a: table.columns[idColumnName],
120
- operator: "in",
121
- b: targets.map((target) => target[idColumnName])
122
- }
123
- });
124
- });
125
- },
126
- async upsert(table, v) {
127
- const target = await orm.findFirst(table, {
128
- select: true,
129
- where: v.where
130
- });
131
- if (target === null) await this.createMany(table, [v.create]);
132
- else {
133
- const idColumn = table.getIdColumn();
134
- await this.updateMany(table, {
135
- set: v.update,
136
- where: {
137
- type: 2,
138
- a: table.columns[idColumn.ormName],
139
- operator: "=",
140
- b: target[idColumn.ormName]
141
- }
142
- });
143
- }
144
- },
145
- async create(table, values) {
146
- values = generateInsertValuesDefault(table, values);
147
- await Promise.all(table.foreignKeys.map((key) => checkForeignKeyOnInsert(this, key, [values])));
148
- return orm.create(table, values);
149
- },
150
- async createMany(table, values) {
151
- values = values.map((value) => generateInsertValuesDefault(table, value));
152
- await Promise.all(table.foreignKeys.map((key) => checkForeignKeyOnInsert(this, key, values)));
153
- return orm.createMany(table, values);
154
- },
155
- async deleteMany(table, v) {
156
- const foreignKeys = childForeignKeys.get(table.ormName);
157
- if (!foreignKeys) return orm.deleteMany(table, v);
158
- const targets = await orm.findMany(table, {
159
- select: true,
160
- where: v.where
161
- });
162
- for (const key of foreignKeys) {
163
- const isAffected = {
164
- type: 1,
165
- items: []
166
- };
167
- for (const target of targets) {
168
- const isReferencingTarget = {
169
- type: 0,
170
- items: []
171
- };
172
- let containsNull = false;
173
- for (let i = 0; i < key.columns.length; i++) {
174
- const targetValue = target[key.referencedColumns[i].ormName];
175
- if (targetValue === null) {
176
- containsNull = true;
177
- break;
178
- }
179
- isReferencingTarget.items.push({
180
- type: 2,
181
- a: key.columns[i],
182
- operator: "=",
183
- b: targetValue
184
- });
185
- }
186
- if (!containsNull) isAffected.items.push(isReferencingTarget);
187
- }
188
- if (key.onDelete === "CASCADE") await orm.deleteMany(key.table, { where: isAffected });
189
- else if (key.onDelete === "SET NULL") {
190
- const set = {};
191
- for (const col of key.columns) set[col.ormName] = null;
192
- await orm.updateMany(key.table, {
193
- set,
194
- where: isAffected
195
- });
196
- } else if (await exists(this, key.table, isAffected)) errorForeignKey(key);
197
- }
198
- const idColumnName = table.getIdColumn().ormName;
199
- return orm.deleteMany(table, { where: {
200
- type: 2,
201
- a: table.columns[idColumnName],
202
- operator: "in",
203
- b: targets.map((target) => target[idColumnName])
204
- } });
205
- }
206
- };
207
- }
208
- function errorForeignKey(key) {
209
- throw new Error(`foreign constraint failed ${key.name}`);
210
- }
211
- //#endregion
212
- export { checkForeignKeyOnInsert, createSoftForeignKey };
@@ -1,285 +0,0 @@
1
- //#region ../../node_modules/.pnpm/fumadb@0.2.2_mongodb@6.20.0_@aws-sdk+credential-providers@3.1066.0_socks@2.8.9__prisma@_ee79457f0e32f18f0beb5c2db02e4f73/node_modules/fumadb/dist/create-tg0451Y_.d.ts
2
- type AnySchema = Schema<string, Record<string, AnyTable>>;
3
- type AnyRelation = Relation;
4
- type AnyTable = Table;
5
- type AnyColumn = Column<keyof TypeMap, unknown, unknown> | IdColumn<IdColumnType, unknown, unknown>;
6
- type ForeignKeyAction = "RESTRICT" | "CASCADE" | "SET NULL";
7
- interface NameVariants {
8
- sql: string;
9
- drizzle: string;
10
- prisma: string;
11
- convex: string;
12
- mongodb: string;
13
- }
14
- interface ForeignKey {
15
- name: string;
16
- table: AnyTable;
17
- columns: AnyColumn[];
18
- referencedTable: AnyTable;
19
- referencedColumns: AnyColumn[];
20
- onUpdate: ForeignKeyAction;
21
- onDelete: ForeignKeyAction;
22
- }
23
- interface UniqueConstraint {
24
- name: string;
25
- columns: AnyColumn[];
26
- }
27
- interface BaseRelation<Type extends RelationType = RelationType, T extends AnyTable = AnyTable> {
28
- /**
29
- * The relation id shared between implied/implying relation
30
- */
31
- id: string;
32
- name: string;
33
- type: Type;
34
- table: T;
35
- referencer: AnyTable;
36
- on: [string, string][];
37
- }
38
- interface ImplicitRelation<Type extends RelationType = RelationType, T extends AnyTable = AnyTable> extends BaseRelation<Type, T> {
39
- implied: true;
40
- readonly impliedBy: ExplicitRelation;
41
- }
42
- interface ExplicitRelation<Type extends RelationType = RelationType, T extends AnyTable = AnyTable> extends BaseRelation<Type, T> {
43
- implied: false;
44
- implying: ImplicitRelation | undefined;
45
- foreignKey?: ForeignKey;
46
- }
47
- type Relation<Type extends RelationType = RelationType, T extends AnyTable = AnyTable> = ImplicitRelation<Type, T> | ExplicitRelation<Type, T>;
48
- interface Table<Columns extends Record<string, AnyColumn> = Record<string, AnyColumn>, Relations extends Record<string, AnyRelation> = Record<string, AnyRelation>> {
49
- names: NameVariants;
50
- ormName: string;
51
- columns: Columns;
52
- relations: Relations;
53
- foreignKeys: ForeignKey[];
54
- /**
55
- * @param level default to 'all'
56
- */
57
- getUniqueConstraints: (level?: "table" | "column" | "all") => UniqueConstraint[];
58
- /**
59
- * @param name - name
60
- * @param type - default to "sql"
61
- */
62
- getColumnByName: (name: string, type?: keyof NameVariants) => AnyColumn | undefined;
63
- getIdColumn: () => AnyColumn;
64
- /**
65
- * Add unique constraint to the fields, for consistency, duplicated null values are allowed.
66
- */
67
- unique: (name: string, columns: (keyof Columns)[]) => Table<Columns, Relations>;
68
- clone: () => Table<Columns, Relations>;
69
- }
70
- type DefaultFunctionMap = {
71
- date: "now";
72
- timestamp: "now";
73
- string: "auto";
74
- } & Record<`varchar(${number})`, "auto">;
75
- type DefaultFunction<Type extends keyof TypeMap> = (Type extends keyof DefaultFunctionMap ? DefaultFunctionMap[Type] : never) | (() => TypeMap[Type]);
76
- type IdColumnType = `varchar(${number})` | "uuid";
77
- type TypeMap = {
78
- string: string;
79
- bigint: bigint;
80
- integer: number;
81
- decimal: number;
82
- bool: boolean;
83
- json: unknown;
84
- /**
85
- * this follows the same specs as Prisma `Bytes` for consistency.
86
- */
87
- binary: Uint8Array;
88
- date: Date;
89
- timestamp: Date;
90
- uuid: string;
91
- } & Record<`varchar(${number})`, string>;
92
- declare class Column<Type extends keyof TypeMap, In = unknown, Out = unknown> {
93
- type: Type;
94
- ormName: string;
95
- isNullable: boolean;
96
- isUnique: boolean;
97
- default?: {
98
- value: TypeMap[Type];
99
- } | {
100
- runtime: DefaultFunction<Type>;
101
- };
102
- table: AnyTable;
103
- private initNames;
104
- get names(): NameVariants;
105
- set names(v: NameVariants);
106
- constructor(type: Type, onInitNames: (ormName: string) => NameVariants);
107
- nullable<T extends boolean = true>(nullable?: T): Column<Type, T extends true ? In | null : Exclude<In, null>, T extends true ? Out | null : Exclude<Out, null>>;
108
- /**
109
- * Add unique constraint to the field, for consistency, duplicated null values are allowed.
110
- */
111
- unique(unique?: boolean): this;
112
- /**
113
- * Generate default value on runtime
114
- */
115
- defaultTo$(fn: DefaultFunction<Type>): Column<Type, In | null, Out>;
116
- /**
117
- * Set a database-level default value
118
- *
119
- * For schemaless database, it's still generated on runtime
120
- */
121
- defaultTo(value: TypeMap[Type]): Column<Type, In | null, Out>;
122
- clone(): Column<Type, unknown, unknown>;
123
- getUniqueConstraintName(): string;
124
- /**
125
- * Generate default value for the column on runtime.
126
- */
127
- generateDefaultValue(): TypeMap[Type] | undefined;
128
- get $in(): In;
129
- get $out(): Out;
130
- }
131
- declare class IdColumn<Type extends IdColumnType = IdColumnType, In = unknown, Out = unknown> extends Column<Type, In, Out> {
132
- id: boolean;
133
- constructor(type: Type, onInitNames: (ormName: string) => NameVariants);
134
- clone(): IdColumn<Type, unknown, unknown>;
135
- defaultTo$(fn: DefaultFunction<Type>): IdColumn<Type, In | null, Out>;
136
- defaultTo(value: TypeMap[Type]): IdColumn<Type, In | null, Out>;
137
- }
138
- type RelationType = "many" | "one";
139
- interface Schema<Version extends string = string, Tables extends Record<string, AnyTable> = Record<string, AnyTable>> {
140
- /**
141
- * @description The version of the schema, it should be a semantic version string.
142
- */
143
- version: Version;
144
- tables: Tables;
145
- up?: CustomMigrationFn;
146
- down?: CustomMigrationFn;
147
- clone: () => Schema<Version, Tables>;
148
- }
149
- type NameVariantsConfig = Record<string, Partial<NameVariants>>;
150
- type BuildNameVariants<Tables extends Record<string, AnyTable>> = { [K in keyof Tables as K extends string ? keyof Tables[K]["columns"] extends string ? `${K}.${keyof Tables[K]["columns"]}` : never : never]?: Partial<NameVariants> } & { [k in keyof Tables]?: Partial<NameVariants> };
151
- type NameVariantsBuilder<Schemas extends AnySchema[], Out> = {
152
- (variants: BuildNameVariants<Schemas[number]["tables"]>): Out;
153
- <Version extends Schemas[number]["version"]>(versions: Version[], variants: BuildNameVariants<Extract<Schemas[number], {
154
- version: Version;
155
- }>["tables"]>): Out;
156
- /**
157
- * Add prefix to table names.
158
- *
159
- * If true, use package's `namespace` as prefix.
160
- */
161
- prefix: (prefix: true | string) => Out;
162
- };
163
- interface ForeignKeyInfo {
164
- name: string;
165
- columns: string[];
166
- referencedTable: string;
167
- referencedColumns: string[];
168
- onUpdate: "RESTRICT" | "CASCADE" | "SET NULL";
169
- onDelete: "RESTRICT" | "CASCADE" | "SET NULL";
170
- }
171
- type MigrationOperation = TableOperation | {
172
- type: "add-foreign-key";
173
- table: string;
174
- value: ForeignKeyInfo;
175
- } | {
176
- type: "drop-foreign-key";
177
- table: string;
178
- name: string;
179
- } | {
180
- type: "drop-unique-constraint";
181
- table: string;
182
- name: string;
183
- } | {
184
- type: "add-unique-constraint";
185
- table: string;
186
- columns: string[];
187
- name: string;
188
- } | CustomOperation;
189
- type CustomOperation = {
190
- type: "custom";
191
- } & Record<string, unknown>;
192
- type TableOperation = {
193
- type: "create-table";
194
- value: AnyTable;
195
- } | {
196
- type: "drop-table";
197
- name: string;
198
- } | {
199
- /**
200
- * Not supported by FumaDB
201
- * - update table's primary key
202
- */
203
- type: "update-table";
204
- name: string;
205
- value: ColumnOperation[];
206
- } | {
207
- type: "rename-table";
208
- from: string;
209
- to: string;
210
- };
211
- type ColumnOperation = {
212
- type: "rename-column";
213
- from: string;
214
- to: string;
215
- } | {
216
- type: "drop-column";
217
- name: string;
218
- } | {
219
- /**
220
- * Note: unique constraints are not created, please use dedicated operations like `add-unique-constraint` instead
221
- */
222
- type: "create-column";
223
- value: AnyColumn;
224
- } | {
225
- /**
226
- * warning: Not supported by SQLite
227
- */
228
- type: "update-column";
229
- name: string;
230
- /**
231
- * For databases like MySQL, it requires the full definition for any modify column statement.
232
- * Hence, you need to specify the full information of your column here.
233
- *
234
- * Then, opt-in for in-detail modification for other databases that supports changing data type/nullable/default separately, such as PostgreSQL.
235
- *
236
- * Note: unique constraints are not updated, please use dedicated operations like `add-unique-constraint` instead
237
- */
238
- value: AnyColumn;
239
- updateNullable: boolean;
240
- updateDefault: boolean;
241
- updateDataType: boolean;
242
- };
243
- type Awaitable<T> = T | Promise<T>;
244
- interface MigrationContext {
245
- auto: () => Promise<MigrationOperation[]>;
246
- }
247
- type CustomMigrationFn = (context: MigrationContext) => Awaitable<MigrationOperation[]>;
248
- interface MigrateOptions {
249
- /**
250
- * Manage how migrations are generated.
251
- *
252
- * - `from-schema` (default): compare fumadb schemas
253
- * - `from-database`: introspect & compare the database with schema
254
- */
255
- mode?: "from-schema" | "from-database";
256
- /**
257
- * Update internal settings, it's true by default.
258
- * We don't recommend to disable it other than testing purposes.
259
- */
260
- updateSettings?: boolean;
261
- /**
262
- * Enable unsafe operations when auto-generating migration.
263
- */
264
- unsafe?: boolean;
265
- }
266
- interface MigrationResult {
267
- operations: MigrationOperation[];
268
- getSQL?: () => string;
269
- execute: () => Promise<void>;
270
- }
271
- interface Migrator {
272
- /**
273
- * Get current version, undefined if not initialized
274
- */
275
- getVersion: () => Promise<string | undefined>;
276
- getNameVariants: () => Promise<NameVariantsConfig | undefined>;
277
- next: () => Promise<AnySchema | undefined>;
278
- previous: () => Promise<AnySchema | undefined>;
279
- up: (options?: MigrateOptions) => Promise<MigrationResult>;
280
- down: (options?: MigrateOptions) => Promise<MigrationResult>;
281
- migrateTo: (version: string, options?: MigrateOptions) => Promise<MigrationResult>;
282
- migrateToLatest: (options?: MigrateOptions) => Promise<MigrationResult>;
283
- }
284
- //#endregion
285
- export { AnyColumn, AnyRelation, AnySchema, AnyTable, Column, ExplicitRelation, IdColumn, Migrator, NameVariantsBuilder, Relation, Schema, Table };