sqlew 5.0.8 → 5.2.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 (499) hide show
  1. package/CHANGELOG.md +56 -0
  2. package/README.md +19 -10
  3. package/dist/adapters/auth/auth-factory.d.ts +2 -81
  4. package/dist/adapters/auth/auth-factory.d.ts.map +1 -1
  5. package/dist/adapters/auth/auth-factory.js +2 -82
  6. package/dist/adapters/auth/auth-factory.js.map +1 -1
  7. package/dist/adapters/auth/base-auth-provider.d.ts +18 -303
  8. package/dist/adapters/auth/base-auth-provider.d.ts.map +1 -1
  9. package/dist/adapters/auth/base-auth-provider.js +2 -104
  10. package/dist/adapters/auth/base-auth-provider.js.map +1 -1
  11. package/dist/adapters/auth/direct-auth-provider.d.ts +4 -348
  12. package/dist/adapters/auth/direct-auth-provider.d.ts.map +1 -1
  13. package/dist/adapters/auth/direct-auth-provider.js +6 -356
  14. package/dist/adapters/auth/direct-auth-provider.js.map +1 -1
  15. package/dist/adapters/base-adapter.d.ts +31 -598
  16. package/dist/adapters/base-adapter.d.ts.map +1 -1
  17. package/dist/adapters/base-adapter.js +10 -458
  18. package/dist/adapters/base-adapter.js.map +1 -1
  19. package/dist/adapters/index.d.ts +1 -11
  20. package/dist/adapters/index.d.ts.map +1 -1
  21. package/dist/adapters/index.js +1 -11
  22. package/dist/adapters/index.js.map +1 -1
  23. package/dist/adapters/mysql-adapter.d.ts +15 -541
  24. package/dist/adapters/mysql-adapter.d.ts.map +1 -1
  25. package/dist/adapters/mysql-adapter.js +24 -561
  26. package/dist/adapters/mysql-adapter.js.map +1 -1
  27. package/dist/adapters/postgresql-adapter.d.ts +15 -203
  28. package/dist/adapters/postgresql-adapter.d.ts.map +1 -1
  29. package/dist/adapters/postgresql-adapter.js +24 -223
  30. package/dist/adapters/postgresql-adapter.js.map +1 -1
  31. package/dist/adapters/sqlite-adapter.d.ts +4 -28
  32. package/dist/adapters/sqlite-adapter.d.ts.map +1 -1
  33. package/dist/adapters/sqlite-adapter.js +4 -32
  34. package/dist/adapters/sqlite-adapter.js.map +1 -1
  35. package/dist/adapters/types.d.ts +1 -4
  36. package/dist/adapters/types.d.ts.map +1 -1
  37. package/dist/backend/backend-factory.d.ts +3 -3
  38. package/dist/backend/backend-factory.js +3 -3
  39. package/dist/backend/local-backend.d.ts.map +1 -1
  40. package/dist/backend/local-backend.js +0 -5
  41. package/dist/backend/local-backend.js.map +1 -1
  42. package/dist/cli/db-export.d.ts.map +1 -1
  43. package/dist/cli/db-export.js +54 -32
  44. package/dist/cli/db-export.js.map +1 -1
  45. package/dist/cli/db-import.d.ts.map +1 -1
  46. package/dist/cli/db-import.js +32 -31
  47. package/dist/cli/db-import.js.map +1 -1
  48. package/dist/cli/hooks/on-exit-plan.d.ts.map +1 -1
  49. package/dist/cli/hooks/on-exit-plan.js +42 -1
  50. package/dist/cli/hooks/on-exit-plan.js.map +1 -1
  51. package/dist/cli/hooks/on-prompt.d.ts.map +1 -1
  52. package/dist/cli/hooks/on-prompt.js +5 -0
  53. package/dist/cli/hooks/on-prompt.js.map +1 -1
  54. package/dist/cli/hooks/plan-processor.d.ts.map +1 -1
  55. package/dist/cli/hooks/plan-processor.js +16 -2
  56. package/dist/cli/hooks/plan-processor.js.map +1 -1
  57. package/dist/cli/hooks/stdin-parser.d.ts +41 -0
  58. package/dist/cli/hooks/stdin-parser.d.ts.map +1 -1
  59. package/dist/cli/hooks/stdin-parser.js +140 -4
  60. package/dist/cli/hooks/stdin-parser.js.map +1 -1
  61. package/dist/cli/hooks/track-plan.d.ts +13 -0
  62. package/dist/cli/hooks/track-plan.d.ts.map +1 -1
  63. package/dist/cli/hooks/track-plan.js +58 -3
  64. package/dist/cli/hooks/track-plan.js.map +1 -1
  65. package/dist/cli.d.ts.map +1 -1
  66. package/dist/cli.js +1 -12
  67. package/dist/cli.js.map +1 -1
  68. package/dist/config/cloud-config-loader.d.ts +8 -8
  69. package/dist/config/cloud-config-loader.d.ts.map +1 -1
  70. package/dist/config/cloud-config-loader.js +12 -12
  71. package/dist/config/cloud-config-loader.js.map +1 -1
  72. package/dist/config/global-config.d.ts +24 -46
  73. package/dist/config/global-config.d.ts.map +1 -1
  74. package/dist/config/global-config.js +174 -56
  75. package/dist/config/global-config.js.map +1 -1
  76. package/dist/config/loader.d.ts +1 -18
  77. package/dist/config/loader.d.ts.map +1 -1
  78. package/dist/config/loader.js +1 -89
  79. package/dist/config/loader.js.map +1 -1
  80. package/dist/config/types.d.ts +2 -64
  81. package/dist/config/types.d.ts.map +1 -1
  82. package/dist/config/types.js +0 -18
  83. package/dist/config/types.js.map +1 -1
  84. package/dist/database/index.d.ts +1 -2
  85. package/dist/database/index.d.ts.map +1 -1
  86. package/dist/database/index.js +1 -3
  87. package/dist/database/index.js.map +1 -1
  88. package/dist/database/migrations/v4/20251126000001_v4_migrate_data.d.ts.map +1 -1
  89. package/dist/database/migrations/v4/20251126000001_v4_migrate_data.js +2 -1
  90. package/dist/database/migrations/v4/20251126000001_v4_migrate_data.js.map +1 -1
  91. package/dist/database/operations/queries.d.ts +0 -4
  92. package/dist/database/operations/queries.d.ts.map +1 -1
  93. package/dist/database/operations/queries.js +0 -8
  94. package/dist/database/operations/queries.js.map +1 -1
  95. package/dist/index.d.ts +1 -1
  96. package/dist/index.js +2 -2
  97. package/dist/index.js.map +1 -1
  98. package/dist/init-rules.d.ts.map +1 -1
  99. package/dist/init-rules.js +0 -1
  100. package/dist/init-rules.js.map +1 -1
  101. package/dist/knexfile.d.ts.map +1 -1
  102. package/dist/knexfile.js +2 -1
  103. package/dist/knexfile.js.map +1 -1
  104. package/dist/migration/local-to-global.d.ts +19 -0
  105. package/dist/migration/local-to-global.d.ts.map +1 -0
  106. package/dist/migration/local-to-global.js +133 -0
  107. package/dist/migration/local-to-global.js.map +1 -0
  108. package/dist/saas-connector/client/types.d.ts +1 -1
  109. package/dist/saas-connector/client/types.d.ts.map +1 -1
  110. package/dist/schema.js +1 -1
  111. package/dist/server/setup.d.ts.map +1 -1
  112. package/dist/server/setup.js +15 -7
  113. package/dist/server/setup.js.map +1 -1
  114. package/dist/tests/backend/backend-factory.test.js +2 -2
  115. package/dist/tests/backend/backend-factory.test.js.map +1 -1
  116. package/dist/tests/docker/native/constraint-operations.test.d.ts +2 -17
  117. package/dist/tests/docker/native/constraint-operations.test.d.ts.map +1 -1
  118. package/dist/tests/docker/native/constraint-operations.test.js +3 -82
  119. package/dist/tests/docker/native/constraint-operations.test.js.map +1 -1
  120. package/dist/tests/docker/native/db-init.d.ts +3 -34
  121. package/dist/tests/docker/native/db-init.d.ts.map +1 -1
  122. package/dist/tests/docker/native/db-init.js +15 -77
  123. package/dist/tests/docker/native/db-init.js.map +1 -1
  124. package/dist/tests/docker/native/decision-operations.test.d.ts +2 -10
  125. package/dist/tests/docker/native/decision-operations.test.d.ts.map +1 -1
  126. package/dist/tests/docker/native/decision-operations.test.js +2 -84
  127. package/dist/tests/docker/native/decision-operations.test.js.map +1 -1
  128. package/dist/tests/docker/native/help-system.test.d.ts +2 -5
  129. package/dist/tests/docker/native/help-system.test.d.ts.map +1 -1
  130. package/dist/tests/docker/native/help-system.test.js +2 -47
  131. package/dist/tests/docker/native/help-system.test.js.map +1 -1
  132. package/dist/tests/docker/native/suggest-tool.test.d.ts +3 -11
  133. package/dist/tests/docker/native/suggest-tool.test.d.ts.map +1 -1
  134. package/dist/tests/docker/native/suggest-tool.test.js +3 -60
  135. package/dist/tests/docker/native/suggest-tool.test.js.map +1 -1
  136. package/dist/tests/docker/native/test-harness.d.ts +2 -23
  137. package/dist/tests/docker/native/test-harness.d.ts.map +1 -1
  138. package/dist/tests/docker/native/test-harness.js +5 -59
  139. package/dist/tests/docker/native/test-harness.js.map +1 -1
  140. package/dist/tests/feature/decision/analytics.test.js +2 -1
  141. package/dist/tests/feature/decision/analytics.test.js.map +1 -1
  142. package/dist/tests/feature/decision/batch-validation-comprehensive.test.js +2 -7
  143. package/dist/tests/feature/decision/batch-validation-comprehensive.test.js.map +1 -1
  144. package/dist/tests/feature/decision/batch-validation.test.js +2 -1
  145. package/dist/tests/feature/decision/batch-validation.test.js.map +1 -1
  146. package/dist/tests/integration/auto-trigger-suggestions.test.js +4 -37
  147. package/dist/tests/integration/auto-trigger-suggestions.test.js.map +1 -1
  148. package/dist/tests/integration/hybrid-similarity-detection.test.js +2 -1
  149. package/dist/tests/integration/hybrid-similarity-detection.test.js.map +1 -1
  150. package/dist/tests/integration/json-export-import.test.d.ts.map +1 -0
  151. package/dist/tests/integration/json-export-import.test.js.map +1 -0
  152. package/dist/tests/unit/case-insensitive-validator.test.d.ts +0 -7
  153. package/dist/tests/unit/case-insensitive-validator.test.d.ts.map +1 -1
  154. package/dist/tests/unit/case-insensitive-validator.test.js +0 -22
  155. package/dist/tests/unit/case-insensitive-validator.test.js.map +1 -1
  156. package/dist/tests/unit/config/cloud-config-loader.test.js +4 -2
  157. package/dist/tests/unit/config/cloud-config-loader.test.js.map +1 -1
  158. package/dist/tests/unit/config/global-db-migration.test.d.ts +12 -0
  159. package/dist/tests/unit/config/global-db-migration.test.d.ts.map +1 -0
  160. package/dist/tests/unit/config/global-db-migration.test.js +117 -0
  161. package/dist/tests/unit/config/global-db-migration.test.js.map +1 -0
  162. package/dist/tests/unit/constraint-scorer.test.d.ts +2 -7
  163. package/dist/tests/unit/constraint-scorer.test.d.ts.map +1 -1
  164. package/dist/tests/unit/constraint-scorer.test.js +2 -28
  165. package/dist/tests/unit/constraint-scorer.test.js.map +1 -1
  166. package/dist/tests/unit/hooks/grok-hook-normalization.test.d.ts +9 -0
  167. package/dist/tests/unit/hooks/grok-hook-normalization.test.d.ts.map +1 -0
  168. package/dist/tests/unit/hooks/grok-hook-normalization.test.js +98 -0
  169. package/dist/tests/unit/hooks/grok-hook-normalization.test.js.map +1 -0
  170. package/dist/tests/unit/hooks/grok-plan-template-injection.test.d.ts +7 -0
  171. package/dist/tests/unit/hooks/grok-plan-template-injection.test.d.ts.map +1 -0
  172. package/dist/tests/unit/hooks/grok-plan-template-injection.test.js +55 -0
  173. package/dist/tests/unit/hooks/grok-plan-template-injection.test.js.map +1 -0
  174. package/dist/tests/unit/universal-knex.test.js +9 -0
  175. package/dist/tests/unit/universal-knex.test.js.map +1 -1
  176. package/dist/tests/unit/validation/parameter-validation.test.js +0 -24
  177. package/dist/tests/unit/validation/parameter-validation.test.js.map +1 -1
  178. package/dist/tests/utils/db-config.d.ts.map +1 -1
  179. package/dist/tests/utils/db-config.js +0 -9
  180. package/dist/tests/utils/db-config.js.map +1 -1
  181. package/dist/tests/utils/db-import.d.ts.map +1 -1
  182. package/dist/tests/utils/db-import.js +0 -3
  183. package/dist/tests/utils/db-import.js.map +1 -1
  184. package/dist/tests/utils/db-schema.d.ts.map +1 -1
  185. package/dist/tests/utils/db-schema.js +48 -51
  186. package/dist/tests/utils/db-schema.js.map +1 -1
  187. package/dist/tests/utils/db-seeding.d.ts.map +1 -1
  188. package/dist/tests/utils/db-seeding.js +0 -3
  189. package/dist/tests/utils/db-seeding.js.map +1 -1
  190. package/dist/tests/utils/index.d.ts +0 -1
  191. package/dist/tests/utils/index.d.ts.map +1 -1
  192. package/dist/tests/utils/index.js +0 -2
  193. package/dist/tests/utils/index.js.map +1 -1
  194. package/dist/tests/utils/test-helpers.d.ts +6 -76
  195. package/dist/tests/utils/test-helpers.d.ts.map +1 -1
  196. package/dist/tests/utils/test-helpers.js +56 -162
  197. package/dist/tests/utils/test-helpers.js.map +1 -1
  198. package/dist/tests/utils/test-lifecycle.d.ts +2 -28
  199. package/dist/tests/utils/test-lifecycle.d.ts.map +1 -1
  200. package/dist/tests/utils/test-lifecycle.js +2 -31
  201. package/dist/tests/utils/test-lifecycle.js.map +1 -1
  202. package/dist/tools/context/index.d.ts +0 -1
  203. package/dist/tools/context/index.d.ts.map +1 -1
  204. package/dist/tools/context/index.js +0 -2
  205. package/dist/tools/context/index.js.map +1 -1
  206. package/dist/tools/context/types.d.ts +1 -1
  207. package/dist/tools/context/types.d.ts.map +1 -1
  208. package/dist/types/actions.d.ts +6 -29
  209. package/dist/types/actions.d.ts.map +1 -1
  210. package/dist/types/actions.js +1 -2
  211. package/dist/types/actions.js.map +1 -1
  212. package/dist/types/constraint/params.d.ts +24 -1
  213. package/dist/types/constraint/params.d.ts.map +1 -1
  214. package/dist/types/constraint/params.js +3 -0
  215. package/dist/types/constraint/params.js.map +1 -1
  216. package/dist/types/constraint/responses.d.ts +18 -1
  217. package/dist/types/constraint/responses.d.ts.map +1 -1
  218. package/dist/types/constraint/responses.js +3 -0
  219. package/dist/types/constraint/responses.js.map +1 -1
  220. package/dist/types/decision/batch.d.ts +2 -5
  221. package/dist/types/decision/batch.d.ts.map +1 -1
  222. package/dist/types/decision/batch.js +3 -3
  223. package/dist/types/decision/batch.js.map +1 -1
  224. package/dist/types/decision/params.d.ts +7 -4
  225. package/dist/types/decision/params.d.ts.map +1 -1
  226. package/dist/types/decision/responses.d.ts +49 -35
  227. package/dist/types/decision/responses.d.ts.map +1 -1
  228. package/dist/types/decision/templates.d.ts +2 -18
  229. package/dist/types/decision/templates.d.ts.map +1 -1
  230. package/dist/types/decision/templates.js +3 -3
  231. package/dist/types/decision/templates.js.map +1 -1
  232. package/dist/types/enums.d.ts +11 -13
  233. package/dist/types/enums.d.ts.map +1 -1
  234. package/dist/types/enums.js +5 -13
  235. package/dist/types/enums.js.map +1 -1
  236. package/dist/types/import-export.d.ts +7 -30
  237. package/dist/types/import-export.d.ts.map +1 -1
  238. package/dist/types/import-export.js +1 -2
  239. package/dist/types/import-export.js.map +1 -1
  240. package/dist/types/index.d.ts +18 -22
  241. package/dist/types/index.d.ts.map +1 -1
  242. package/dist/types/index.js +4 -32
  243. package/dist/types/index.js.map +1 -1
  244. package/dist/types/master-entities.d.ts +1 -10
  245. package/dist/types/master-entities.d.ts.map +1 -1
  246. package/dist/types/master-entities.js +1 -2
  247. package/dist/types/master-entities.js.map +1 -1
  248. package/dist/types/transaction-entities.d.ts +2 -21
  249. package/dist/types/transaction-entities.d.ts.map +1 -1
  250. package/dist/types/transaction-entities.js +1 -1
  251. package/dist/types/validation.d.ts +1 -16
  252. package/dist/types/validation.d.ts.map +1 -1
  253. package/dist/types/validation.js +1 -2
  254. package/dist/types/validation.js.map +1 -1
  255. package/dist/types/view-entities.d.ts +3 -12
  256. package/dist/types/view-entities.d.ts.map +1 -1
  257. package/dist/types/view-entities.js +1 -1
  258. package/dist/types.d.ts +4 -718
  259. package/dist/types.d.ts.map +1 -1
  260. package/dist/types.js +5 -39
  261. package/dist/types.js.map +1 -1
  262. package/dist/utils/parameter-validator.d.ts +2 -2
  263. package/dist/utils/parameter-validator.d.ts.map +1 -1
  264. package/dist/utils/parameter-validator.js.map +1 -1
  265. package/dist/utils/path-normalize.d.ts +23 -0
  266. package/dist/utils/path-normalize.d.ts.map +1 -0
  267. package/dist/utils/path-normalize.js +38 -0
  268. package/dist/utils/path-normalize.js.map +1 -0
  269. package/dist/utils/project-root.d.ts +6 -3
  270. package/dist/utils/project-root.d.ts.map +1 -1
  271. package/dist/utils/project-root.js +11 -3
  272. package/dist/utils/project-root.js.map +1 -1
  273. package/dist/watcher/base-watcher.d.ts +0 -4
  274. package/dist/watcher/base-watcher.d.ts.map +1 -1
  275. package/dist/watcher/base-watcher.js +11 -22
  276. package/dist/watcher/base-watcher.js.map +1 -1
  277. package/docs/CLI_USAGE.md +27 -107
  278. package/docs/CONFIGURATION.md +10 -5
  279. package/docs/DATABASE_AUTH.md +3 -3
  280. package/docs/HOOKS_GUIDE.md +40 -6
  281. package/docs/MIGRATION_TO_SAAS.md +2 -2
  282. package/docs/SHARED_DATABASE.md +108 -0
  283. package/package.json +4 -3
  284. package/dist/adapters/auth/auth-types.d.ts +0 -30
  285. package/dist/adapters/auth/auth-types.d.ts.map +0 -1
  286. package/dist/adapters/auth/auth-types.js +0 -30
  287. package/dist/adapters/auth/auth-types.js.map +0 -1
  288. package/dist/cli/db-dump.d.ts +0 -36
  289. package/dist/cli/db-dump.d.ts.map +0 -1
  290. package/dist/cli/db-dump.js +0 -384
  291. package/dist/cli/db-dump.js.map +0 -1
  292. package/dist/database/config/config-ops.d.ts +0 -42
  293. package/dist/database/config/config-ops.d.ts.map +0 -1
  294. package/dist/database/config/config-ops.js +0 -102
  295. package/dist/database/config/config-ops.js.map +0 -1
  296. package/dist/formatters/adr-formatter.d.ts +0 -22
  297. package/dist/formatters/adr-formatter.d.ts.map +0 -1
  298. package/dist/formatters/adr-formatter.js +0 -127
  299. package/dist/formatters/adr-formatter.js.map +0 -1
  300. package/dist/formatters/confluence-formatter.d.ts +0 -26
  301. package/dist/formatters/confluence-formatter.d.ts.map +0 -1
  302. package/dist/formatters/confluence-formatter.js +0 -129
  303. package/dist/formatters/confluence-formatter.js.map +0 -1
  304. package/dist/formatters/index.d.ts +0 -34
  305. package/dist/formatters/index.d.ts.map +0 -1
  306. package/dist/formatters/index.js +0 -57
  307. package/dist/formatters/index.js.map +0 -1
  308. package/dist/formatters/markdown-formatter.d.ts +0 -16
  309. package/dist/formatters/markdown-formatter.d.ts.map +0 -1
  310. package/dist/formatters/markdown-formatter.js +0 -110
  311. package/dist/formatters/markdown-formatter.js.map +0 -1
  312. package/dist/formatters/notion-formatter.d.ts +0 -29
  313. package/dist/formatters/notion-formatter.d.ts.map +0 -1
  314. package/dist/formatters/notion-formatter.js +0 -177
  315. package/dist/formatters/notion-formatter.js.map +0 -1
  316. package/dist/formatters/types.d.ts +0 -31
  317. package/dist/formatters/types.d.ts.map +0 -1
  318. package/dist/formatters/types.js +0 -6
  319. package/dist/formatters/types.js.map +0 -1
  320. package/dist/tests/database/sql-dump/converters.test.d.ts +0 -7
  321. package/dist/tests/database/sql-dump/converters.test.d.ts.map +0 -1
  322. package/dist/tests/database/sql-dump/converters.test.js +0 -314
  323. package/dist/tests/database/sql-dump/converters.test.js.map +0 -1
  324. package/dist/tests/database/sql-dump/default-conversions.test.d.ts +0 -8
  325. package/dist/tests/database/sql-dump/default-conversions.test.d.ts.map +0 -1
  326. package/dist/tests/database/sql-dump/default-conversions.test.js +0 -141
  327. package/dist/tests/database/sql-dump/default-conversions.test.js.map +0 -1
  328. package/dist/tests/database/sql-dump/table-ordering.test.d.ts +0 -27
  329. package/dist/tests/database/sql-dump/table-ordering.test.d.ts.map +0 -1
  330. package/dist/tests/database/sql-dump/table-ordering.test.js +0 -284
  331. package/dist/tests/database/sql-dump/table-ordering.test.js.map +0 -1
  332. package/dist/tests/database/sql-dump/type-conversion.test.d.ts +0 -8
  333. package/dist/tests/database/sql-dump/type-conversion.test.d.ts.map +0 -1
  334. package/dist/tests/database/sql-dump/type-conversion.test.js +0 -361
  335. package/dist/tests/database/sql-dump/type-conversion.test.js.map +0 -1
  336. package/dist/tests/docker/cross-database.test.d.ts +0 -21
  337. package/dist/tests/docker/cross-database.test.d.ts.map +0 -1
  338. package/dist/tests/docker/cross-database.test.js +0 -308
  339. package/dist/tests/docker/cross-database.test.js.map +0 -1
  340. package/dist/tests/docker/dump-import.test.d.ts +0 -15
  341. package/dist/tests/docker/dump-import.test.d.ts.map +0 -1
  342. package/dist/tests/docker/dump-import.test.js +0 -424
  343. package/dist/tests/docker/dump-import.test.js.map +0 -1
  344. package/dist/tests/docker/fk-constraints.test.d.ts +0 -13
  345. package/dist/tests/docker/fk-constraints.test.d.ts.map +0 -1
  346. package/dist/tests/docker/fk-constraints.test.js +0 -381
  347. package/dist/tests/docker/fk-constraints.test.js.map +0 -1
  348. package/dist/tests/docker/indexes.test.d.ts +0 -12
  349. package/dist/tests/docker/indexes.test.d.ts.map +0 -1
  350. package/dist/tests/docker/indexes.test.js +0 -250
  351. package/dist/tests/docker/indexes.test.js.map +0 -1
  352. package/dist/tests/docker/integration.test.d.ts +0 -16
  353. package/dist/tests/docker/integration.test.d.ts.map +0 -1
  354. package/dist/tests/docker/integration.test.js +0 -323
  355. package/dist/tests/docker/integration.test.js.map +0 -1
  356. package/dist/tests/docker/multi-project-migration.test.d.ts +0 -17
  357. package/dist/tests/docker/multi-project-migration.test.d.ts.map +0 -1
  358. package/dist/tests/docker/multi-project-migration.test.js +0 -394
  359. package/dist/tests/docker/multi-project-migration.test.js.map +0 -1
  360. package/dist/tests/docker/schema-migration.test.d.ts +0 -8
  361. package/dist/tests/docker/schema-migration.test.d.ts.map +0 -1
  362. package/dist/tests/docker/schema-migration.test.js +0 -98
  363. package/dist/tests/docker/schema-migration.test.js.map +0 -1
  364. package/dist/tests/integration/e2e-workflow1-debug.test.d.ts +0 -5
  365. package/dist/tests/integration/e2e-workflow1-debug.test.d.ts.map +0 -1
  366. package/dist/tests/integration/e2e-workflow1-debug.test.js +0 -85
  367. package/dist/tests/integration/e2e-workflow1-debug.test.js.map +0 -1
  368. package/dist/tests/integration/suggest-simple.test.d.ts +0 -5
  369. package/dist/tests/integration/suggest-simple.test.d.ts.map +0 -1
  370. package/dist/tests/integration/suggest-simple.test.js +0 -90
  371. package/dist/tests/integration/suggest-simple.test.js.map +0 -1
  372. package/dist/tests/migrations/test-all-versions-real.d.ts +0 -8
  373. package/dist/tests/migrations/test-all-versions-real.d.ts.map +0 -1
  374. package/dist/tests/migrations/test-all-versions-real.js +0 -236
  375. package/dist/tests/migrations/test-all-versions-real.js.map +0 -1
  376. package/dist/tests/migrations/test-all-versions.d.ts +0 -14
  377. package/dist/tests/migrations/test-all-versions.d.ts.map +0 -1
  378. package/dist/tests/migrations/test-all-versions.js +0 -519
  379. package/dist/tests/migrations/test-all-versions.js.map +0 -1
  380. package/dist/tests/migrations/v4/v4-fresh-install.test.d.ts +0 -7
  381. package/dist/tests/migrations/v4/v4-fresh-install.test.d.ts.map +0 -1
  382. package/dist/tests/migrations/v4/v4-fresh-install.test.js +0 -168
  383. package/dist/tests/migrations/v4/v4-fresh-install.test.js.map +0 -1
  384. package/dist/tests/migrations/v4/v4-migrate-data.test.d.ts +0 -13
  385. package/dist/tests/migrations/v4/v4-migrate-data.test.d.ts.map +0 -1
  386. package/dist/tests/migrations/v4/v4-migrate-data.test.js +0 -264
  387. package/dist/tests/migrations/v4/v4-migrate-data.test.js.map +0 -1
  388. package/dist/tests/unit/utils/case-insensitive-validator.test.d.ts +0 -2
  389. package/dist/tests/unit/utils/case-insensitive-validator.test.d.ts.map +0 -1
  390. package/dist/tests/unit/utils/case-insensitive-validator.test.js +0 -97
  391. package/dist/tests/unit/utils/case-insensitive-validator.test.js.map +0 -1
  392. package/dist/tests/utils/json-export-import.test.d.ts.map +0 -1
  393. package/dist/tests/utils/json-export-import.test.js.map +0 -1
  394. package/dist/tests/utils/task-helpers.d.ts +0 -67
  395. package/dist/tests/utils/task-helpers.d.ts.map +0 -1
  396. package/dist/tests/utils/task-helpers.js +0 -134
  397. package/dist/tests/utils/task-helpers.js.map +0 -1
  398. package/dist/tools/context/actions/export.d.ts +0 -35
  399. package/dist/tools/context/actions/export.d.ts.map +0 -1
  400. package/dist/tools/context/actions/export.js +0 -93
  401. package/dist/tools/context/actions/export.js.map +0 -1
  402. package/dist/types/file/params.d.ts +0 -40
  403. package/dist/types/file/params.d.ts.map +0 -1
  404. package/dist/types/file/params.js +0 -6
  405. package/dist/types/file/params.js.map +0 -1
  406. package/dist/types/file/responses.d.ts +0 -2
  407. package/dist/types/file/responses.d.ts.map +0 -1
  408. package/dist/types/file/responses.js +0 -2
  409. package/dist/types/file/responses.js.map +0 -1
  410. package/dist/types/task/params.d.ts +0 -173
  411. package/dist/types/task/params.d.ts.map +0 -1
  412. package/dist/types/task/params.js +0 -8
  413. package/dist/types/task/params.js.map +0 -1
  414. package/dist/types/task/responses.d.ts +0 -334
  415. package/dist/types/task/responses.d.ts.map +0 -1
  416. package/dist/types/task/responses.js +0 -8
  417. package/dist/types/task/responses.js.map +0 -1
  418. package/dist/utils/sql-dump/core/dependency-sort.d.ts +0 -16
  419. package/dist/utils/sql-dump/core/dependency-sort.d.ts.map +0 -1
  420. package/dist/utils/sql-dump/core/dependency-sort.js +0 -105
  421. package/dist/utils/sql-dump/core/dependency-sort.js.map +0 -1
  422. package/dist/utils/sql-dump/core/generate-dump.d.ts +0 -13
  423. package/dist/utils/sql-dump/core/generate-dump.d.ts.map +0 -1
  424. package/dist/utils/sql-dump/core/generate-dump.js +0 -201
  425. package/dist/utils/sql-dump/core/generate-dump.js.map +0 -1
  426. package/dist/utils/sql-dump/core/index-export.d.ts +0 -10
  427. package/dist/utils/sql-dump/core/index-export.d.ts.map +0 -1
  428. package/dist/utils/sql-dump/core/index-export.js +0 -173
  429. package/dist/utils/sql-dump/core/index-export.js.map +0 -1
  430. package/dist/utils/sql-dump/core/sequence-reset.d.ts +0 -6
  431. package/dist/utils/sql-dump/core/sequence-reset.d.ts.map +0 -1
  432. package/dist/utils/sql-dump/core/sequence-reset.js +0 -28
  433. package/dist/utils/sql-dump/core/sequence-reset.js.map +0 -1
  434. package/dist/utils/sql-dump/core/table-export.d.ts +0 -2
  435. package/dist/utils/sql-dump/core/table-export.d.ts.map +0 -1
  436. package/dist/utils/sql-dump/core/table-export.js +0 -4
  437. package/dist/utils/sql-dump/core/table-export.js.map +0 -1
  438. package/dist/utils/sql-dump/core/view-export.d.ts +0 -2
  439. package/dist/utils/sql-dump/core/view-export.d.ts.map +0 -1
  440. package/dist/utils/sql-dump/core/view-export.js +0 -4
  441. package/dist/utils/sql-dump/core/view-export.js.map +0 -1
  442. package/dist/utils/sql-dump/formatters/bulk-insert.d.ts +0 -14
  443. package/dist/utils/sql-dump/formatters/bulk-insert.d.ts.map +0 -1
  444. package/dist/utils/sql-dump/formatters/bulk-insert.js +0 -177
  445. package/dist/utils/sql-dump/formatters/bulk-insert.js.map +0 -1
  446. package/dist/utils/sql-dump/formatters/identifiers.d.ts +0 -6
  447. package/dist/utils/sql-dump/formatters/identifiers.d.ts.map +0 -1
  448. package/dist/utils/sql-dump/formatters/identifiers.js +0 -16
  449. package/dist/utils/sql-dump/formatters/identifiers.js.map +0 -1
  450. package/dist/utils/sql-dump/formatters/value-formatter.d.ts +0 -14
  451. package/dist/utils/sql-dump/formatters/value-formatter.d.ts.map +0 -1
  452. package/dist/utils/sql-dump/formatters/value-formatter.js +0 -281
  453. package/dist/utils/sql-dump/formatters/value-formatter.js.map +0 -1
  454. package/dist/utils/sql-dump/generators/controls.d.ts +0 -10
  455. package/dist/utils/sql-dump/generators/controls.d.ts.map +0 -1
  456. package/dist/utils/sql-dump/generators/controls.js +0 -36
  457. package/dist/utils/sql-dump/generators/controls.js.map +0 -1
  458. package/dist/utils/sql-dump/generators/headers.d.ts +0 -6
  459. package/dist/utils/sql-dump/generators/headers.d.ts.map +0 -1
  460. package/dist/utils/sql-dump/generators/headers.js +0 -19
  461. package/dist/utils/sql-dump/generators/headers.js.map +0 -1
  462. package/dist/utils/sql-dump/index.d.ts +0 -14
  463. package/dist/utils/sql-dump/index.d.ts.map +0 -1
  464. package/dist/utils/sql-dump/index.js +0 -16
  465. package/dist/utils/sql-dump/index.js.map +0 -1
  466. package/dist/utils/sql-dump/schema/indexes.d.ts +0 -20
  467. package/dist/utils/sql-dump/schema/indexes.d.ts.map +0 -1
  468. package/dist/utils/sql-dump/schema/indexes.js +0 -108
  469. package/dist/utils/sql-dump/schema/indexes.js.map +0 -1
  470. package/dist/utils/sql-dump/schema/primary-keys.d.ts +0 -6
  471. package/dist/utils/sql-dump/schema/primary-keys.d.ts.map +0 -1
  472. package/dist/utils/sql-dump/schema/primary-keys.js +0 -41
  473. package/dist/utils/sql-dump/schema/primary-keys.js.map +0 -1
  474. package/dist/utils/sql-dump/schema/tables.d.ts +0 -15
  475. package/dist/utils/sql-dump/schema/tables.d.ts.map +0 -1
  476. package/dist/utils/sql-dump/schema/tables.js +0 -518
  477. package/dist/utils/sql-dump/schema/tables.js.map +0 -1
  478. package/dist/utils/sql-dump/schema/views.d.ts +0 -11
  479. package/dist/utils/sql-dump/schema/views.d.ts.map +0 -1
  480. package/dist/utils/sql-dump/schema/views.js +0 -116
  481. package/dist/utils/sql-dump/schema/views.js.map +0 -1
  482. package/dist/utils/sql-dump/types.d.ts +0 -10
  483. package/dist/utils/sql-dump/types.d.ts.map +0 -1
  484. package/dist/utils/sql-dump/types.js +0 -3
  485. package/dist/utils/sql-dump/types.js.map +0 -1
  486. package/dist/utils/sql-dump-converters.d.ts +0 -188
  487. package/dist/utils/sql-dump-converters.d.ts.map +0 -1
  488. package/dist/utils/sql-dump-converters.js +0 -315
  489. package/dist/utils/sql-dump-converters.js.map +0 -1
  490. package/dist/watcher/gitignore-parser.d.ts +0 -70
  491. package/dist/watcher/gitignore-parser.d.ts.map +0 -1
  492. package/dist/watcher/gitignore-parser.js +0 -195
  493. package/dist/watcher/gitignore-parser.js.map +0 -1
  494. package/dist/watcher/index.d.ts +0 -9
  495. package/dist/watcher/index.d.ts.map +0 -1
  496. package/dist/watcher/index.js +0 -8
  497. package/dist/watcher/index.js.map +0 -1
  498. /package/dist/tests/{utils → integration}/json-export-import.test.d.ts +0 -0
  499. /package/dist/tests/{utils → integration}/json-export-import.test.js +0 -0
@@ -1,201 +0,0 @@
1
- // core/generate-dump.ts - Main SQL dump generation function
2
- import { generateHeader } from '../generators/headers.js';
3
- import { generateForeignKeyControls, generateTransactionControl } from '../generators/controls.js';
4
- import { getAllTables, getCreateTableStatement } from './table-export.js';
5
- import { getAllViews, getCreateViewStatement } from './view-export.js';
6
- import { getAllIndexes, getCreateIndexStatement, getIndexMetadata } from './index-export.js';
7
- import { generateSequenceResets } from './sequence-reset.js';
8
- import { getTableDependencies, topologicalSort } from './dependency-sort.js';
9
- import { getPrimaryKeyColumns } from '../schema/primary-keys.js';
10
- import { generateBulkInsert } from '../formatters/bulk-insert.js';
11
- /**
12
- * Main function to generate complete SQL dump
13
- */
14
- export async function generateSqlDump(knex, format, options = {}) {
15
- const { tables: requestedTables, includeHeader = true, includeSchema = true, // Default to TRUE - include schema
16
- chunkSize = 100, conflictMode = 'error' } = options;
17
- const statements = [];
18
- // Add header
19
- if (includeHeader) {
20
- statements.push(generateHeader(format));
21
- }
22
- // Disable foreign key checks
23
- statements.push(generateForeignKeyControls(format, false));
24
- statements.push('');
25
- // Start transaction
26
- statements.push(generateTransactionControl(format, true));
27
- statements.push('');
28
- // Get tables to dump
29
- // Include knex_migrations table when schema is included for complete migration state
30
- let tablesToDump;
31
- if (requestedTables && requestedTables.length > 0) {
32
- // When specific tables are requested, use them directly (no prefix filtering)
33
- // This allows dumping tables with any prefix for testing and flexibility
34
- tablesToDump = requestedTables;
35
- }
36
- else {
37
- // No specific tables requested: get all tables with default v4_ prefix filter
38
- const allTables = await getAllTables(knex, includeSchema);
39
- tablesToDump = allTables;
40
- }
41
- // Sort tables by foreign key dependencies for PostgreSQL compatibility
42
- // Parent tables must be created before child tables
43
- const dependencies = await getTableDependencies(knex, tablesToDump);
44
- const sortedTables = topologicalSort(tablesToDump, dependencies);
45
- // Generate CREATE TABLE statements if schema is included
46
- if (includeSchema) {
47
- statements.push('-- ============================================');
48
- statements.push('-- Schema (CREATE TABLE statements)');
49
- statements.push('-- ============================================');
50
- statements.push('');
51
- for (const table of sortedTables) {
52
- try {
53
- const createSql = await getCreateTableStatement(knex, table, format);
54
- statements.push(`-- Table: ${table}`);
55
- statements.push(createSql);
56
- statements.push('');
57
- }
58
- catch (err) {
59
- console.warn(`Warning: Could not get CREATE TABLE for ${table}:`, err);
60
- statements.push(`-- Warning: Could not create table ${table}`);
61
- statements.push('');
62
- }
63
- }
64
- // Generate CREATE VIEW statements
65
- try {
66
- const views = await getAllViews(knex);
67
- if (views.length > 0) {
68
- statements.push('-- ============================================');
69
- statements.push('-- Views');
70
- statements.push('-- ============================================');
71
- statements.push('');
72
- for (const view of views) {
73
- try {
74
- const createViewSql = await getCreateViewStatement(knex, view, format);
75
- statements.push(`-- View: ${view}`);
76
- statements.push(createViewSql);
77
- statements.push('');
78
- }
79
- catch (err) {
80
- console.warn(`Warning: Could not get CREATE VIEW for ${view}:`, err);
81
- statements.push(`-- Warning: Could not create view ${view}`);
82
- statements.push('');
83
- }
84
- }
85
- }
86
- }
87
- catch (err) {
88
- console.warn('Warning: Could not retrieve views:', err);
89
- }
90
- // Generate CREATE INDEX statements
91
- // Skip single-column UNIQUE indexes (already output as UNIQUE constraint in CREATE TABLE)
92
- try {
93
- const indexStatements = [];
94
- for (const table of sortedTables) {
95
- const indexes = await getAllIndexes(knex, table);
96
- if (indexes.length > 0) {
97
- for (const indexName of indexes) {
98
- try {
99
- // Skip foreign key indexes - MySQL auto-creates these with FK constraints
100
- // They typically have names ending with '_foreign' or '_fkey'
101
- if (indexName.endsWith('_foreign') || indexName.endsWith('_fkey')) {
102
- continue;
103
- }
104
- // Check if this is a single-column UNIQUE index
105
- // These are already included in CREATE TABLE as column-level UNIQUE constraints
106
- const metadata = await getIndexMetadata(knex, indexName, table);
107
- if (metadata && metadata.isUnique && metadata.columns.length === 1) {
108
- // Skip - already output as UNIQUE constraint in CREATE TABLE
109
- continue;
110
- }
111
- const createIndexSql = await getCreateIndexStatement(knex, indexName, format);
112
- indexStatements.push(`-- Index: ${indexName} on ${table}`);
113
- indexStatements.push(createIndexSql);
114
- indexStatements.push('');
115
- }
116
- catch (err) {
117
- console.warn(`Warning: Could not get CREATE INDEX for ${indexName}:`, err);
118
- }
119
- }
120
- }
121
- }
122
- if (indexStatements.length > 0) {
123
- statements.push('-- ============================================');
124
- statements.push('-- Indexes');
125
- statements.push('-- ============================================');
126
- statements.push('');
127
- statements.push(...indexStatements);
128
- }
129
- }
130
- catch (err) {
131
- console.warn('Warning: Could not retrieve indexes:', err);
132
- }
133
- statements.push('-- ============================================');
134
- statements.push('-- Data (INSERT statements)');
135
- statements.push('-- ============================================');
136
- statements.push('');
137
- }
138
- // Generate INSERT statements for each table (in dependency order)
139
- // Skip data insertion if chunkSize is 0 (schema-only mode)
140
- if (chunkSize > 0) {
141
- for (const table of sortedTables) {
142
- statements.push(`-- Data for table: ${table}`);
143
- const rows = await knex(table).select('*');
144
- if (rows.length === 0) {
145
- statements.push(`-- No data in table ${table}`);
146
- statements.push('');
147
- continue;
148
- }
149
- // Get column types for cross-database type conversion
150
- // Query from source database to understand original types (e.g., INTEGER for booleans in SQLite)
151
- let columnTypes = new Map();
152
- let columnInfoMap = new Map();
153
- try {
154
- const columnInfo = await knex(table).columnInfo();
155
- for (const [col, info] of Object.entries(columnInfo)) {
156
- columnTypes.set(col, info.type);
157
- columnInfoMap.set(col, info); // Store full column metadata
158
- }
159
- }
160
- catch (err) {
161
- console.warn(`Warning: Could not get column types for table ${table}:`, err);
162
- }
163
- // Get primary keys if using replace mode
164
- let primaryKeys = [];
165
- if (conflictMode === 'replace') {
166
- try {
167
- primaryKeys = await getPrimaryKeyColumns(knex, table);
168
- if (primaryKeys.length > 0) {
169
- statements.push(`-- Primary key(s): ${primaryKeys.join(', ')}`);
170
- }
171
- }
172
- catch (err) {
173
- console.warn(`Warning: Could not detect primary key for table ${table}:`, err);
174
- }
175
- }
176
- const inserts = generateBulkInsert(table, rows, format, {
177
- chunkSize,
178
- conflictMode,
179
- primaryKeys,
180
- columnTypes,
181
- columnInfo: columnInfoMap // Pass full columnInfo for type-aware conversion
182
- });
183
- statements.push(...inserts);
184
- statements.push('');
185
- }
186
- } // End of if (chunkSize > 0)
187
- // Reset sequences for PostgreSQL
188
- if (format === 'postgresql') {
189
- statements.push('-- Reset sequences');
190
- const sequenceResets = await generateSequenceResets(knex, tablesToDump);
191
- statements.push(...sequenceResets);
192
- statements.push('');
193
- }
194
- // Commit transaction
195
- statements.push(generateTransactionControl(format, false));
196
- statements.push('');
197
- // Re-enable foreign key checks
198
- statements.push(generateForeignKeyControls(format, true));
199
- return statements.join('\n');
200
- }
201
- //# sourceMappingURL=generate-dump.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-dump.js","sourceRoot":"","sources":["../../../../src/utils/sql-dump/core/generate-dump.ts"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- import type { Knex } from 'knex';
2
- import type { DatabaseFormat } from '../types.js';
3
- import { getAllIndexes, getIndexMetadata } from '../schema/indexes.js';
4
- export type { IndexMetadata } from '../schema/indexes.js';
5
- export { getAllIndexes, getIndexMetadata };
6
- /**
7
- * Get CREATE INDEX statement for an index
8
- */
9
- export declare function getCreateIndexStatement(knex: Knex, indexName: string, targetFormat: DatabaseFormat): Promise<string>;
10
- //# sourceMappingURL=index-export.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-export.d.ts","sourceRoot":"","sources":["../../../../src/utils/sql-dump/core/index-export.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AACjC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAIlD,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACvE,YAAY,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,CAAC;AAE3C;;GAEG;AACH,wBAAsB,uBAAuB,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CA8L1H"}
@@ -1,173 +0,0 @@
1
- // core/index-export.ts - Index export utilities
2
- import { convertIdentifierQuotes, } from '../../sql-dump-converters.js';
3
- import { getAllIndexes, getIndexMetadata } from '../schema/indexes.js';
4
- export { getAllIndexes, getIndexMetadata };
5
- /**
6
- * Get CREATE INDEX statement for an index
7
- */
8
- export async function getCreateIndexStatement(knex, indexName, targetFormat) {
9
- const client = knex.client.config.client;
10
- if (client === 'better-sqlite3' || client === 'sqlite3') {
11
- const result = await knex.raw(`
12
- SELECT sql, tbl_name FROM sqlite_master
13
- WHERE type='index' AND name=?
14
- `, [indexName]);
15
- if (result.length === 0 || !result[0].sql) {
16
- throw new Error(`Index ${indexName} not found`);
17
- }
18
- let createSql = result[0].sql;
19
- const tableName = result[0].tbl_name;
20
- // Convert to target format if needed
21
- if (targetFormat === 'mysql') {
22
- createSql = convertIdentifierQuotes(createSql, 'mysql');
23
- // MySQL has a 3072 byte limit for index keys (with utf8mb4, that's ~768 chars)
24
- // Add prefix length (191 chars) to VARCHAR columns longer than 191 to stay under limit
25
- // Match: CREATE [UNIQUE] INDEX name ON table (col1, col2, ...)
26
- const match = createSql.match(/\((.*?)\)(?:\s|$)/);
27
- if (match) {
28
- const columns = match[1];
29
- // Get column info for the table
30
- const columnInfo = await knex(tableName).columnInfo();
31
- // Process each column in the index
32
- const processedColumns = columns.split(',').map((col) => {
33
- // Remove quotes/backticks and DESC/ASC keywords
34
- let colSpec = col.trim().replace(/[`"]/g, '');
35
- const colName = colSpec.replace(/\s+(DESC|ASC)$/i, '').trim();
36
- const info = columnInfo[colName];
37
- // If VARCHAR/TEXT longer than 191 chars, add prefix length
38
- if (info && info.type) {
39
- const type = info.type.toLowerCase();
40
- if (type.includes('varchar') || type.includes('text')) {
41
- // Check maxLength property first (SQLite returns this separately)
42
- const maxLength = info.maxLength;
43
- if (maxLength && parseInt(maxLength) > 191) {
44
- return `\`${colName}\`(191)`;
45
- }
46
- // Also try extracting length from VARCHAR(n) in type string
47
- const lengthMatch = type.match(/varchar\((\d+)\)/);
48
- if (lengthMatch && parseInt(lengthMatch[1]) > 191) {
49
- return `\`${colName}\`(191)`;
50
- }
51
- else if (type.includes('text')) {
52
- // TEXT columns have no fixed length, always add prefix
53
- return `\`${colName}\`(191)`;
54
- }
55
- }
56
- }
57
- return `\`${colName}\``;
58
- }).join(', ');
59
- createSql = createSql.replace(/\((.*?)\)(?:\s|$)/, `(${processedColumns})`);
60
- }
61
- }
62
- else if (targetFormat === 'postgresql') {
63
- createSql = convertIdentifierQuotes(createSql, 'postgresql');
64
- }
65
- return createSql + ';';
66
- }
67
- else if (client === 'mysql' || client === 'mysql2') {
68
- // For MySQL, we need to find which table the index belongs to
69
- // First, get all tables and search for the index
70
- const tablesResult = await knex.raw('SHOW TABLES');
71
- const tableKey = Object.keys(tablesResult[0][0])[0];
72
- const tables = tablesResult[0].map((row) => row[tableKey]);
73
- let indexInfo = null;
74
- let tableName = '';
75
- // Search for the index in all tables
76
- for (const table of tables) {
77
- const result = await knex.raw(`SHOW INDEXES FROM ?? WHERE Key_name = ?`, [table, indexName]);
78
- if (result[0].length > 0) {
79
- indexInfo = result[0];
80
- tableName = table;
81
- break;
82
- }
83
- }
84
- if (!indexInfo || indexInfo.length === 0) {
85
- throw new Error(`Index ${indexName} not found`);
86
- }
87
- const isUnique = indexInfo[0].Non_unique === 0;
88
- // Get column info for prefix length handling
89
- const columnInfo = await knex(tableName).columnInfo();
90
- // Build column list with proper prefix lengths
91
- const columns = indexInfo.map((row) => {
92
- const colName = row.Column_name;
93
- const colMeta = columnInfo[colName];
94
- // Handle prefix length for long VARCHAR/TEXT columns
95
- if (colMeta && colMeta.type) {
96
- const type = colMeta.type.toLowerCase();
97
- if (type.includes('varchar') || type.includes('text')) {
98
- const maxLength = colMeta.maxLength;
99
- // Extract length from type string like "varchar(255)"
100
- const lengthMatch = type.match(/varchar\((\d+)\)/);
101
- const typeLength = lengthMatch ? parseInt(lengthMatch[1]) : null;
102
- if ((maxLength && parseInt(maxLength) > 191) || (typeLength && typeLength > 191) || type.includes('text')) {
103
- return `\`${colName}\`(191)`;
104
- }
105
- }
106
- }
107
- return `\`${colName}\``;
108
- }).join(', ');
109
- const uniqueStr = isUnique ? 'UNIQUE ' : '';
110
- let createSql = `CREATE ${uniqueStr}INDEX \`${indexName}\` ON \`${tableName}\` (${columns})`;
111
- // Apply cross-database conversion
112
- if (targetFormat === 'postgresql') {
113
- createSql = convertIdentifierQuotes(createSql, 'postgresql');
114
- }
115
- else if (targetFormat === 'sqlite') {
116
- createSql = convertIdentifierQuotes(createSql, 'sqlite');
117
- // Remove prefix lengths for SQLite (not supported)
118
- createSql = createSql.replace(/\(191\)/g, '');
119
- }
120
- return createSql + ';';
121
- }
122
- else if (client === 'pg') {
123
- // Get index definition from PostgreSQL
124
- const result = await knex.raw(`
125
- SELECT indexdef
126
- FROM pg_indexes
127
- WHERE schemaname = 'public' AND indexname = ?
128
- `, [indexName]);
129
- if (result.rows.length === 0) {
130
- throw new Error(`Index ${indexName} not found`);
131
- }
132
- let createSql = result.rows[0].indexdef;
133
- // Apply cross-database conversion
134
- if (targetFormat === 'mysql') {
135
- createSql = convertIdentifierQuotes(createSql, 'mysql');
136
- // Handle prefix length for MySQL
137
- // Extract table name from the CREATE INDEX statement
138
- const tableMatch = createSql.match(/ON\s+(["`]?\w+["`]?)/i);
139
- if (tableMatch) {
140
- const tableName = tableMatch[1].replace(/["`]/g, '');
141
- const columnInfo = await knex(tableName).columnInfo();
142
- // Find column list in the index definition
143
- const colMatch = createSql.match(/\((.*?)\)(?:\s|$)/);
144
- if (colMatch) {
145
- const columns = colMatch[1];
146
- const processedColumns = columns.split(',').map((col) => {
147
- const colName = col.trim().replace(/["`]/g, '').replace(/\s+(DESC|ASC)$/i, '').trim();
148
- const info = columnInfo[colName];
149
- if (info && info.type) {
150
- const type = info.type.toLowerCase();
151
- if (type.includes('varchar') || type.includes('text')) {
152
- const maxLength = info.maxLength;
153
- const lengthMatch = type.match(/varchar\((\d+)\)/);
154
- const typeLength = lengthMatch ? parseInt(lengthMatch[1]) : null;
155
- if ((maxLength && parseInt(maxLength) > 191) || (typeLength && typeLength > 191) || type.includes('text')) {
156
- return `\`${colName}\`(191)`;
157
- }
158
- }
159
- }
160
- return `\`${colName}\``;
161
- }).join(', ');
162
- createSql = createSql.replace(/\((.*?)\)(?:\s|$)/, `(${processedColumns})`);
163
- }
164
- }
165
- }
166
- else if (targetFormat === 'sqlite') {
167
- createSql = convertIdentifierQuotes(createSql, 'sqlite');
168
- }
169
- return createSql + ';';
170
- }
171
- throw new Error(`Unsupported database client: ${client}`);
172
- }
173
- //# sourceMappingURL=index-export.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-export.js","sourceRoot":"","sources":["../../../../src/utils/sql-dump/core/index-export.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- import type { Knex } from 'knex';
2
- /**
3
- * Generate sequence reset statements for PostgreSQL
4
- */
5
- export declare function generateSequenceResets(knex: Knex, tables: string[]): Promise<string[]>;
6
- //# sourceMappingURL=sequence-reset.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sequence-reset.d.ts","sourceRoot":"","sources":["../../../../src/utils/sql-dump/core/sequence-reset.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAEjC;;GAEG;AACH,wBAAsB,sBAAsB,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CA0B5F"}
@@ -1,28 +0,0 @@
1
- // core/sequence-reset.ts - PostgreSQL sequence reset utilities
2
- /**
3
- * Generate sequence reset statements for PostgreSQL
4
- */
5
- export async function generateSequenceResets(knex, tables) {
6
- const statements = [];
7
- for (const table of tables) {
8
- try {
9
- // Check if table has an id column with a sequence
10
- const result = await knex.raw(`
11
- SELECT column_name, column_default
12
- FROM information_schema.columns
13
- WHERE table_name = ?
14
- AND column_default LIKE 'nextval%'
15
- `, [table]);
16
- if (result.rows.length > 0) {
17
- const columnName = result.rows[0].column_name;
18
- const sequenceName = `${table}_${columnName}_seq`;
19
- statements.push(`SELECT setval('${sequenceName}', COALESCE((SELECT MAX(${columnName}) FROM "${table}"), 1), true);`);
20
- }
21
- }
22
- catch (err) {
23
- // Ignore errors for tables without sequences
24
- }
25
- }
26
- return statements;
27
- }
28
- //# sourceMappingURL=sequence-reset.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sequence-reset.js","sourceRoot":"","sources":["../../../../src/utils/sql-dump/core/sequence-reset.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAI/D;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,IAAU,EAAE,MAAgB;IACvE,MAAM,UAAU,GAAa,EAAE,CAAC;IAEhC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC;YACH,kDAAkD;YAClD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC;;;;;OAK7B,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;YAEZ,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3B,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;gBAC9C,MAAM,YAAY,GAAG,GAAG,KAAK,IAAI,UAAU,MAAM,CAAC;gBAClD,UAAU,CAAC,IAAI,CACb,kBAAkB,YAAY,2BAA2B,UAAU,WAAW,KAAK,gBAAgB,CACpG,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,6CAA6C;QAC/C,CAAC;IACH,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC"}
@@ -1,2 +0,0 @@
1
- export { getAllTables, getCreateTableStatement } from '../schema/tables.js';
2
- //# sourceMappingURL=table-export.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"table-export.d.ts","sourceRoot":"","sources":["../../../../src/utils/sql-dump/core/table-export.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC"}
@@ -1,4 +0,0 @@
1
- // core/table-export.ts - Table export utilities
2
- // Re-export from schema/tables.ts
3
- export { getAllTables, getCreateTableStatement } from '../schema/tables.js';
4
- //# sourceMappingURL=table-export.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"table-export.js","sourceRoot":"","sources":["../../../../src/utils/sql-dump/core/table-export.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAEhD,kCAAkC;AAClC,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC"}
@@ -1,2 +0,0 @@
1
- export { getAllViews, getCreateViewStatement } from '../schema/views.js';
2
- //# sourceMappingURL=view-export.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"view-export.d.ts","sourceRoot":"","sources":["../../../../src/utils/sql-dump/core/view-export.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC"}
@@ -1,4 +0,0 @@
1
- // core/view-export.ts - View export utilities
2
- // Re-export from schema/views.ts
3
- export { getAllViews, getCreateViewStatement } from '../schema/views.js';
4
- //# sourceMappingURL=view-export.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"view-export.js","sourceRoot":"","sources":["../../../../src/utils/sql-dump/core/view-export.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAE9C,iCAAiC;AACjC,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC"}
@@ -1,14 +0,0 @@
1
- import type { DatabaseFormat, ConflictMode } from '../types.js';
2
- /**
3
- * Generate a bulk INSERT statement for a table with conflict resolution
4
- *
5
- * REFACTORED: Uses Knex query builder instead of manual string construction
6
- */
7
- export declare function generateBulkInsert(table: string, rows: any[], format: DatabaseFormat, options?: {
8
- chunkSize?: number;
9
- conflictMode?: ConflictMode;
10
- primaryKeys?: string[];
11
- columnTypes?: Map<string, string>;
12
- columnInfo?: Map<string, any>;
13
- }): string[];
14
- //# sourceMappingURL=bulk-insert.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bulk-insert.d.ts","sourceRoot":"","sources":["../../../../src/utils/sql-dump/formatters/bulk-insert.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAgGhE;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,GAAG,EAAE,EACX,MAAM,EAAE,cAAc,EACtB,OAAO,GAAE;IACP,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,UAAU,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC1B,GACL,MAAM,EAAE,CAmGV"}