sqlew 5.0.7 → 5.1.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 (471) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/README.md +100 -242
  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/pr-adr.d.ts +22 -0
  49. package/dist/cli/hooks/pr-adr.d.ts.map +1 -0
  50. package/dist/cli/hooks/pr-adr.js +72 -0
  51. package/dist/cli/hooks/pr-adr.js.map +1 -0
  52. package/dist/cli.d.ts.map +1 -1
  53. package/dist/cli.js +9 -13
  54. package/dist/cli.js.map +1 -1
  55. package/dist/config/cloud-config-loader.d.ts +8 -8
  56. package/dist/config/cloud-config-loader.d.ts.map +1 -1
  57. package/dist/config/cloud-config-loader.js +12 -12
  58. package/dist/config/cloud-config-loader.js.map +1 -1
  59. package/dist/config/global-config.d.ts +17 -45
  60. package/dist/config/global-config.d.ts.map +1 -1
  61. package/dist/config/global-config.js +169 -30
  62. package/dist/config/global-config.js.map +1 -1
  63. package/dist/config/loader.d.ts +1 -18
  64. package/dist/config/loader.d.ts.map +1 -1
  65. package/dist/config/loader.js +1 -89
  66. package/dist/config/loader.js.map +1 -1
  67. package/dist/config/types.d.ts +2 -64
  68. package/dist/config/types.d.ts.map +1 -1
  69. package/dist/config/types.js +0 -18
  70. package/dist/config/types.js.map +1 -1
  71. package/dist/database/index.d.ts +1 -2
  72. package/dist/database/index.d.ts.map +1 -1
  73. package/dist/database/index.js +1 -3
  74. package/dist/database/index.js.map +1 -1
  75. package/dist/database/operations/queries.d.ts +0 -4
  76. package/dist/database/operations/queries.d.ts.map +1 -1
  77. package/dist/database/operations/queries.js +0 -8
  78. package/dist/database/operations/queries.js.map +1 -1
  79. package/dist/index.d.ts +1 -1
  80. package/dist/index.js +4 -4
  81. package/dist/index.js.map +1 -1
  82. package/dist/init-rules.d.ts.map +1 -1
  83. package/dist/init-rules.js +0 -1
  84. package/dist/init-rules.js.map +1 -1
  85. package/dist/knexfile.d.ts.map +1 -1
  86. package/dist/knexfile.js +2 -1
  87. package/dist/knexfile.js.map +1 -1
  88. package/dist/migration/local-to-global.d.ts +19 -0
  89. package/dist/migration/local-to-global.d.ts.map +1 -0
  90. package/dist/migration/local-to-global.js +133 -0
  91. package/dist/migration/local-to-global.js.map +1 -0
  92. package/dist/saas-connector/client/types.d.ts +1 -1
  93. package/dist/saas-connector/client/types.d.ts.map +1 -1
  94. package/dist/schema.js +1 -1
  95. package/dist/server/setup.d.ts.map +1 -1
  96. package/dist/server/setup.js +15 -7
  97. package/dist/server/setup.js.map +1 -1
  98. package/dist/tests/backend/backend-factory.test.js +2 -2
  99. package/dist/tests/backend/backend-factory.test.js.map +1 -1
  100. package/dist/tests/docker/native/constraint-operations.test.d.ts +2 -17
  101. package/dist/tests/docker/native/constraint-operations.test.d.ts.map +1 -1
  102. package/dist/tests/docker/native/constraint-operations.test.js +3 -82
  103. package/dist/tests/docker/native/constraint-operations.test.js.map +1 -1
  104. package/dist/tests/docker/native/db-init.d.ts +3 -34
  105. package/dist/tests/docker/native/db-init.d.ts.map +1 -1
  106. package/dist/tests/docker/native/db-init.js +15 -77
  107. package/dist/tests/docker/native/db-init.js.map +1 -1
  108. package/dist/tests/docker/native/decision-operations.test.d.ts +2 -10
  109. package/dist/tests/docker/native/decision-operations.test.d.ts.map +1 -1
  110. package/dist/tests/docker/native/decision-operations.test.js +2 -84
  111. package/dist/tests/docker/native/decision-operations.test.js.map +1 -1
  112. package/dist/tests/docker/native/help-system.test.d.ts +2 -5
  113. package/dist/tests/docker/native/help-system.test.d.ts.map +1 -1
  114. package/dist/tests/docker/native/help-system.test.js +2 -47
  115. package/dist/tests/docker/native/help-system.test.js.map +1 -1
  116. package/dist/tests/docker/native/suggest-tool.test.d.ts +3 -11
  117. package/dist/tests/docker/native/suggest-tool.test.d.ts.map +1 -1
  118. package/dist/tests/docker/native/suggest-tool.test.js +3 -60
  119. package/dist/tests/docker/native/suggest-tool.test.js.map +1 -1
  120. package/dist/tests/docker/native/test-harness.d.ts +2 -23
  121. package/dist/tests/docker/native/test-harness.d.ts.map +1 -1
  122. package/dist/tests/docker/native/test-harness.js +5 -59
  123. package/dist/tests/docker/native/test-harness.js.map +1 -1
  124. package/dist/tests/feature/decision/analytics.test.js +2 -1
  125. package/dist/tests/feature/decision/analytics.test.js.map +1 -1
  126. package/dist/tests/feature/decision/batch-validation-comprehensive.test.js +2 -7
  127. package/dist/tests/feature/decision/batch-validation-comprehensive.test.js.map +1 -1
  128. package/dist/tests/feature/decision/batch-validation.test.js +2 -1
  129. package/dist/tests/feature/decision/batch-validation.test.js.map +1 -1
  130. package/dist/tests/integration/auto-trigger-suggestions.test.js +4 -37
  131. package/dist/tests/integration/auto-trigger-suggestions.test.js.map +1 -1
  132. package/dist/tests/integration/hybrid-similarity-detection.test.js +2 -1
  133. package/dist/tests/integration/hybrid-similarity-detection.test.js.map +1 -1
  134. package/dist/tests/integration/json-export-import.test.d.ts.map +1 -0
  135. package/dist/tests/integration/json-export-import.test.js.map +1 -0
  136. package/dist/tests/unit/case-insensitive-validator.test.d.ts +0 -7
  137. package/dist/tests/unit/case-insensitive-validator.test.d.ts.map +1 -1
  138. package/dist/tests/unit/case-insensitive-validator.test.js +0 -22
  139. package/dist/tests/unit/case-insensitive-validator.test.js.map +1 -1
  140. package/dist/tests/unit/config/cloud-config-loader.test.js +4 -2
  141. package/dist/tests/unit/config/cloud-config-loader.test.js.map +1 -1
  142. package/dist/tests/unit/config/global-db-migration.test.d.ts +12 -0
  143. package/dist/tests/unit/config/global-db-migration.test.d.ts.map +1 -0
  144. package/dist/tests/unit/config/global-db-migration.test.js +117 -0
  145. package/dist/tests/unit/config/global-db-migration.test.js.map +1 -0
  146. package/dist/tests/unit/constraint-scorer.test.d.ts +2 -7
  147. package/dist/tests/unit/constraint-scorer.test.d.ts.map +1 -1
  148. package/dist/tests/unit/constraint-scorer.test.js +2 -28
  149. package/dist/tests/unit/constraint-scorer.test.js.map +1 -1
  150. package/dist/tests/unit/universal-knex.test.js +9 -0
  151. package/dist/tests/unit/universal-knex.test.js.map +1 -1
  152. package/dist/tests/unit/validation/parameter-validation.test.js +0 -24
  153. package/dist/tests/unit/validation/parameter-validation.test.js.map +1 -1
  154. package/dist/tests/utils/db-config.d.ts.map +1 -1
  155. package/dist/tests/utils/db-config.js +0 -9
  156. package/dist/tests/utils/db-config.js.map +1 -1
  157. package/dist/tests/utils/db-import.d.ts.map +1 -1
  158. package/dist/tests/utils/db-import.js +0 -3
  159. package/dist/tests/utils/db-import.js.map +1 -1
  160. package/dist/tests/utils/db-schema.d.ts.map +1 -1
  161. package/dist/tests/utils/db-schema.js +48 -51
  162. package/dist/tests/utils/db-schema.js.map +1 -1
  163. package/dist/tests/utils/db-seeding.d.ts.map +1 -1
  164. package/dist/tests/utils/db-seeding.js +0 -3
  165. package/dist/tests/utils/db-seeding.js.map +1 -1
  166. package/dist/tests/utils/index.d.ts +0 -1
  167. package/dist/tests/utils/index.d.ts.map +1 -1
  168. package/dist/tests/utils/index.js +0 -2
  169. package/dist/tests/utils/index.js.map +1 -1
  170. package/dist/tests/utils/test-helpers.d.ts +6 -76
  171. package/dist/tests/utils/test-helpers.d.ts.map +1 -1
  172. package/dist/tests/utils/test-helpers.js +56 -162
  173. package/dist/tests/utils/test-helpers.js.map +1 -1
  174. package/dist/tests/utils/test-lifecycle.d.ts +2 -28
  175. package/dist/tests/utils/test-lifecycle.d.ts.map +1 -1
  176. package/dist/tests/utils/test-lifecycle.js +2 -31
  177. package/dist/tests/utils/test-lifecycle.js.map +1 -1
  178. package/dist/tools/context/index.d.ts +0 -1
  179. package/dist/tools/context/index.d.ts.map +1 -1
  180. package/dist/tools/context/index.js +0 -2
  181. package/dist/tools/context/index.js.map +1 -1
  182. package/dist/tools/context/types.d.ts +1 -1
  183. package/dist/tools/context/types.d.ts.map +1 -1
  184. package/dist/types/actions.d.ts +6 -29
  185. package/dist/types/actions.d.ts.map +1 -1
  186. package/dist/types/actions.js +1 -2
  187. package/dist/types/actions.js.map +1 -1
  188. package/dist/types/constraint/params.d.ts +24 -1
  189. package/dist/types/constraint/params.d.ts.map +1 -1
  190. package/dist/types/constraint/params.js +3 -0
  191. package/dist/types/constraint/params.js.map +1 -1
  192. package/dist/types/constraint/responses.d.ts +18 -1
  193. package/dist/types/constraint/responses.d.ts.map +1 -1
  194. package/dist/types/constraint/responses.js +3 -0
  195. package/dist/types/constraint/responses.js.map +1 -1
  196. package/dist/types/decision/batch.d.ts +2 -5
  197. package/dist/types/decision/batch.d.ts.map +1 -1
  198. package/dist/types/decision/batch.js +3 -3
  199. package/dist/types/decision/batch.js.map +1 -1
  200. package/dist/types/decision/params.d.ts +7 -4
  201. package/dist/types/decision/params.d.ts.map +1 -1
  202. package/dist/types/decision/responses.d.ts +49 -35
  203. package/dist/types/decision/responses.d.ts.map +1 -1
  204. package/dist/types/decision/templates.d.ts +2 -18
  205. package/dist/types/decision/templates.d.ts.map +1 -1
  206. package/dist/types/decision/templates.js +3 -3
  207. package/dist/types/decision/templates.js.map +1 -1
  208. package/dist/types/enums.d.ts +11 -13
  209. package/dist/types/enums.d.ts.map +1 -1
  210. package/dist/types/enums.js +5 -13
  211. package/dist/types/enums.js.map +1 -1
  212. package/dist/types/import-export.d.ts +7 -30
  213. package/dist/types/import-export.d.ts.map +1 -1
  214. package/dist/types/import-export.js +1 -2
  215. package/dist/types/import-export.js.map +1 -1
  216. package/dist/types/index.d.ts +18 -22
  217. package/dist/types/index.d.ts.map +1 -1
  218. package/dist/types/index.js +4 -32
  219. package/dist/types/index.js.map +1 -1
  220. package/dist/types/master-entities.d.ts +1 -10
  221. package/dist/types/master-entities.d.ts.map +1 -1
  222. package/dist/types/master-entities.js +1 -2
  223. package/dist/types/master-entities.js.map +1 -1
  224. package/dist/types/transaction-entities.d.ts +2 -21
  225. package/dist/types/transaction-entities.d.ts.map +1 -1
  226. package/dist/types/transaction-entities.js +1 -1
  227. package/dist/types/validation.d.ts +1 -16
  228. package/dist/types/validation.d.ts.map +1 -1
  229. package/dist/types/validation.js +1 -2
  230. package/dist/types/validation.js.map +1 -1
  231. package/dist/types/view-entities.d.ts +3 -12
  232. package/dist/types/view-entities.d.ts.map +1 -1
  233. package/dist/types/view-entities.js +1 -1
  234. package/dist/types.d.ts +4 -718
  235. package/dist/types.d.ts.map +1 -1
  236. package/dist/types.js +5 -39
  237. package/dist/types.js.map +1 -1
  238. package/dist/utils/parameter-validator.d.ts +2 -2
  239. package/dist/utils/parameter-validator.d.ts.map +1 -1
  240. package/dist/utils/parameter-validator.js.map +1 -1
  241. package/docs/ADR_CONCEPTS.md +66 -58
  242. package/docs/CLI_USAGE.md +392 -0
  243. package/docs/CONFIGURATION.md +157 -922
  244. package/docs/CROSS_DATABASE.md +1 -88
  245. package/docs/DATABASE_AUTH.md +24 -47
  246. package/docs/HOOKS_GUIDE.md +40 -112
  247. package/docs/MIGRATION_TO_SAAS.md +3 -3
  248. package/docs/SHARED_DATABASE.md +108 -0
  249. package/package.json +4 -3
  250. package/dist/adapters/auth/auth-types.d.ts +0 -30
  251. package/dist/adapters/auth/auth-types.d.ts.map +0 -1
  252. package/dist/adapters/auth/auth-types.js +0 -30
  253. package/dist/adapters/auth/auth-types.js.map +0 -1
  254. package/dist/cli/db-dump.d.ts +0 -36
  255. package/dist/cli/db-dump.d.ts.map +0 -1
  256. package/dist/cli/db-dump.js +0 -384
  257. package/dist/cli/db-dump.js.map +0 -1
  258. package/dist/database/config/config-ops.d.ts +0 -42
  259. package/dist/database/config/config-ops.d.ts.map +0 -1
  260. package/dist/database/config/config-ops.js +0 -102
  261. package/dist/database/config/config-ops.js.map +0 -1
  262. package/dist/formatters/adr-formatter.d.ts +0 -22
  263. package/dist/formatters/adr-formatter.d.ts.map +0 -1
  264. package/dist/formatters/adr-formatter.js +0 -127
  265. package/dist/formatters/adr-formatter.js.map +0 -1
  266. package/dist/formatters/confluence-formatter.d.ts +0 -26
  267. package/dist/formatters/confluence-formatter.d.ts.map +0 -1
  268. package/dist/formatters/confluence-formatter.js +0 -129
  269. package/dist/formatters/confluence-formatter.js.map +0 -1
  270. package/dist/formatters/index.d.ts +0 -34
  271. package/dist/formatters/index.d.ts.map +0 -1
  272. package/dist/formatters/index.js +0 -57
  273. package/dist/formatters/index.js.map +0 -1
  274. package/dist/formatters/markdown-formatter.d.ts +0 -16
  275. package/dist/formatters/markdown-formatter.d.ts.map +0 -1
  276. package/dist/formatters/markdown-formatter.js +0 -110
  277. package/dist/formatters/markdown-formatter.js.map +0 -1
  278. package/dist/formatters/notion-formatter.d.ts +0 -29
  279. package/dist/formatters/notion-formatter.d.ts.map +0 -1
  280. package/dist/formatters/notion-formatter.js +0 -177
  281. package/dist/formatters/notion-formatter.js.map +0 -1
  282. package/dist/formatters/types.d.ts +0 -31
  283. package/dist/formatters/types.d.ts.map +0 -1
  284. package/dist/formatters/types.js +0 -6
  285. package/dist/formatters/types.js.map +0 -1
  286. package/dist/tests/database/sql-dump/converters.test.d.ts +0 -7
  287. package/dist/tests/database/sql-dump/converters.test.d.ts.map +0 -1
  288. package/dist/tests/database/sql-dump/converters.test.js +0 -314
  289. package/dist/tests/database/sql-dump/converters.test.js.map +0 -1
  290. package/dist/tests/database/sql-dump/default-conversions.test.d.ts +0 -8
  291. package/dist/tests/database/sql-dump/default-conversions.test.d.ts.map +0 -1
  292. package/dist/tests/database/sql-dump/default-conversions.test.js +0 -141
  293. package/dist/tests/database/sql-dump/default-conversions.test.js.map +0 -1
  294. package/dist/tests/database/sql-dump/table-ordering.test.d.ts +0 -27
  295. package/dist/tests/database/sql-dump/table-ordering.test.d.ts.map +0 -1
  296. package/dist/tests/database/sql-dump/table-ordering.test.js +0 -284
  297. package/dist/tests/database/sql-dump/table-ordering.test.js.map +0 -1
  298. package/dist/tests/database/sql-dump/type-conversion.test.d.ts +0 -8
  299. package/dist/tests/database/sql-dump/type-conversion.test.d.ts.map +0 -1
  300. package/dist/tests/database/sql-dump/type-conversion.test.js +0 -361
  301. package/dist/tests/database/sql-dump/type-conversion.test.js.map +0 -1
  302. package/dist/tests/docker/cross-database.test.d.ts +0 -21
  303. package/dist/tests/docker/cross-database.test.d.ts.map +0 -1
  304. package/dist/tests/docker/cross-database.test.js +0 -308
  305. package/dist/tests/docker/cross-database.test.js.map +0 -1
  306. package/dist/tests/docker/dump-import.test.d.ts +0 -15
  307. package/dist/tests/docker/dump-import.test.d.ts.map +0 -1
  308. package/dist/tests/docker/dump-import.test.js +0 -424
  309. package/dist/tests/docker/dump-import.test.js.map +0 -1
  310. package/dist/tests/docker/fk-constraints.test.d.ts +0 -13
  311. package/dist/tests/docker/fk-constraints.test.d.ts.map +0 -1
  312. package/dist/tests/docker/fk-constraints.test.js +0 -381
  313. package/dist/tests/docker/fk-constraints.test.js.map +0 -1
  314. package/dist/tests/docker/indexes.test.d.ts +0 -12
  315. package/dist/tests/docker/indexes.test.d.ts.map +0 -1
  316. package/dist/tests/docker/indexes.test.js +0 -250
  317. package/dist/tests/docker/indexes.test.js.map +0 -1
  318. package/dist/tests/docker/integration.test.d.ts +0 -16
  319. package/dist/tests/docker/integration.test.d.ts.map +0 -1
  320. package/dist/tests/docker/integration.test.js +0 -323
  321. package/dist/tests/docker/integration.test.js.map +0 -1
  322. package/dist/tests/docker/multi-project-migration.test.d.ts +0 -17
  323. package/dist/tests/docker/multi-project-migration.test.d.ts.map +0 -1
  324. package/dist/tests/docker/multi-project-migration.test.js +0 -394
  325. package/dist/tests/docker/multi-project-migration.test.js.map +0 -1
  326. package/dist/tests/docker/schema-migration.test.d.ts +0 -8
  327. package/dist/tests/docker/schema-migration.test.d.ts.map +0 -1
  328. package/dist/tests/docker/schema-migration.test.js +0 -98
  329. package/dist/tests/docker/schema-migration.test.js.map +0 -1
  330. package/dist/tests/integration/e2e-workflow1-debug.test.d.ts +0 -5
  331. package/dist/tests/integration/e2e-workflow1-debug.test.d.ts.map +0 -1
  332. package/dist/tests/integration/e2e-workflow1-debug.test.js +0 -85
  333. package/dist/tests/integration/e2e-workflow1-debug.test.js.map +0 -1
  334. package/dist/tests/integration/suggest-simple.test.d.ts +0 -5
  335. package/dist/tests/integration/suggest-simple.test.d.ts.map +0 -1
  336. package/dist/tests/integration/suggest-simple.test.js +0 -90
  337. package/dist/tests/integration/suggest-simple.test.js.map +0 -1
  338. package/dist/tests/migrations/test-all-versions-real.d.ts +0 -8
  339. package/dist/tests/migrations/test-all-versions-real.d.ts.map +0 -1
  340. package/dist/tests/migrations/test-all-versions-real.js +0 -236
  341. package/dist/tests/migrations/test-all-versions-real.js.map +0 -1
  342. package/dist/tests/migrations/test-all-versions.d.ts +0 -14
  343. package/dist/tests/migrations/test-all-versions.d.ts.map +0 -1
  344. package/dist/tests/migrations/test-all-versions.js +0 -519
  345. package/dist/tests/migrations/test-all-versions.js.map +0 -1
  346. package/dist/tests/migrations/v4/v4-fresh-install.test.d.ts +0 -7
  347. package/dist/tests/migrations/v4/v4-fresh-install.test.d.ts.map +0 -1
  348. package/dist/tests/migrations/v4/v4-fresh-install.test.js +0 -168
  349. package/dist/tests/migrations/v4/v4-fresh-install.test.js.map +0 -1
  350. package/dist/tests/migrations/v4/v4-migrate-data.test.d.ts +0 -13
  351. package/dist/tests/migrations/v4/v4-migrate-data.test.d.ts.map +0 -1
  352. package/dist/tests/migrations/v4/v4-migrate-data.test.js +0 -264
  353. package/dist/tests/migrations/v4/v4-migrate-data.test.js.map +0 -1
  354. package/dist/tests/unit/utils/case-insensitive-validator.test.d.ts +0 -2
  355. package/dist/tests/unit/utils/case-insensitive-validator.test.d.ts.map +0 -1
  356. package/dist/tests/unit/utils/case-insensitive-validator.test.js +0 -97
  357. package/dist/tests/unit/utils/case-insensitive-validator.test.js.map +0 -1
  358. package/dist/tests/utils/json-export-import.test.d.ts.map +0 -1
  359. package/dist/tests/utils/json-export-import.test.js.map +0 -1
  360. package/dist/tests/utils/task-helpers.d.ts +0 -67
  361. package/dist/tests/utils/task-helpers.d.ts.map +0 -1
  362. package/dist/tests/utils/task-helpers.js +0 -134
  363. package/dist/tests/utils/task-helpers.js.map +0 -1
  364. package/dist/tools/context/actions/export.d.ts +0 -35
  365. package/dist/tools/context/actions/export.d.ts.map +0 -1
  366. package/dist/tools/context/actions/export.js +0 -93
  367. package/dist/tools/context/actions/export.js.map +0 -1
  368. package/dist/types/file/params.d.ts +0 -40
  369. package/dist/types/file/params.d.ts.map +0 -1
  370. package/dist/types/file/params.js +0 -6
  371. package/dist/types/file/params.js.map +0 -1
  372. package/dist/types/file/responses.d.ts +0 -2
  373. package/dist/types/file/responses.d.ts.map +0 -1
  374. package/dist/types/file/responses.js +0 -2
  375. package/dist/types/file/responses.js.map +0 -1
  376. package/dist/types/task/params.d.ts +0 -173
  377. package/dist/types/task/params.d.ts.map +0 -1
  378. package/dist/types/task/params.js +0 -8
  379. package/dist/types/task/params.js.map +0 -1
  380. package/dist/types/task/responses.d.ts +0 -334
  381. package/dist/types/task/responses.d.ts.map +0 -1
  382. package/dist/types/task/responses.js +0 -8
  383. package/dist/types/task/responses.js.map +0 -1
  384. package/dist/utils/sql-dump/core/dependency-sort.d.ts +0 -16
  385. package/dist/utils/sql-dump/core/dependency-sort.d.ts.map +0 -1
  386. package/dist/utils/sql-dump/core/dependency-sort.js +0 -105
  387. package/dist/utils/sql-dump/core/dependency-sort.js.map +0 -1
  388. package/dist/utils/sql-dump/core/generate-dump.d.ts +0 -13
  389. package/dist/utils/sql-dump/core/generate-dump.d.ts.map +0 -1
  390. package/dist/utils/sql-dump/core/generate-dump.js +0 -201
  391. package/dist/utils/sql-dump/core/generate-dump.js.map +0 -1
  392. package/dist/utils/sql-dump/core/index-export.d.ts +0 -10
  393. package/dist/utils/sql-dump/core/index-export.d.ts.map +0 -1
  394. package/dist/utils/sql-dump/core/index-export.js +0 -173
  395. package/dist/utils/sql-dump/core/index-export.js.map +0 -1
  396. package/dist/utils/sql-dump/core/sequence-reset.d.ts +0 -6
  397. package/dist/utils/sql-dump/core/sequence-reset.d.ts.map +0 -1
  398. package/dist/utils/sql-dump/core/sequence-reset.js +0 -28
  399. package/dist/utils/sql-dump/core/sequence-reset.js.map +0 -1
  400. package/dist/utils/sql-dump/core/table-export.d.ts +0 -2
  401. package/dist/utils/sql-dump/core/table-export.d.ts.map +0 -1
  402. package/dist/utils/sql-dump/core/table-export.js +0 -4
  403. package/dist/utils/sql-dump/core/table-export.js.map +0 -1
  404. package/dist/utils/sql-dump/core/view-export.d.ts +0 -2
  405. package/dist/utils/sql-dump/core/view-export.d.ts.map +0 -1
  406. package/dist/utils/sql-dump/core/view-export.js +0 -4
  407. package/dist/utils/sql-dump/core/view-export.js.map +0 -1
  408. package/dist/utils/sql-dump/formatters/bulk-insert.d.ts +0 -14
  409. package/dist/utils/sql-dump/formatters/bulk-insert.d.ts.map +0 -1
  410. package/dist/utils/sql-dump/formatters/bulk-insert.js +0 -177
  411. package/dist/utils/sql-dump/formatters/bulk-insert.js.map +0 -1
  412. package/dist/utils/sql-dump/formatters/identifiers.d.ts +0 -6
  413. package/dist/utils/sql-dump/formatters/identifiers.d.ts.map +0 -1
  414. package/dist/utils/sql-dump/formatters/identifiers.js +0 -16
  415. package/dist/utils/sql-dump/formatters/identifiers.js.map +0 -1
  416. package/dist/utils/sql-dump/formatters/value-formatter.d.ts +0 -14
  417. package/dist/utils/sql-dump/formatters/value-formatter.d.ts.map +0 -1
  418. package/dist/utils/sql-dump/formatters/value-formatter.js +0 -281
  419. package/dist/utils/sql-dump/formatters/value-formatter.js.map +0 -1
  420. package/dist/utils/sql-dump/generators/controls.d.ts +0 -10
  421. package/dist/utils/sql-dump/generators/controls.d.ts.map +0 -1
  422. package/dist/utils/sql-dump/generators/controls.js +0 -36
  423. package/dist/utils/sql-dump/generators/controls.js.map +0 -1
  424. package/dist/utils/sql-dump/generators/headers.d.ts +0 -6
  425. package/dist/utils/sql-dump/generators/headers.d.ts.map +0 -1
  426. package/dist/utils/sql-dump/generators/headers.js +0 -19
  427. package/dist/utils/sql-dump/generators/headers.js.map +0 -1
  428. package/dist/utils/sql-dump/index.d.ts +0 -14
  429. package/dist/utils/sql-dump/index.d.ts.map +0 -1
  430. package/dist/utils/sql-dump/index.js +0 -16
  431. package/dist/utils/sql-dump/index.js.map +0 -1
  432. package/dist/utils/sql-dump/schema/indexes.d.ts +0 -20
  433. package/dist/utils/sql-dump/schema/indexes.d.ts.map +0 -1
  434. package/dist/utils/sql-dump/schema/indexes.js +0 -108
  435. package/dist/utils/sql-dump/schema/indexes.js.map +0 -1
  436. package/dist/utils/sql-dump/schema/primary-keys.d.ts +0 -6
  437. package/dist/utils/sql-dump/schema/primary-keys.d.ts.map +0 -1
  438. package/dist/utils/sql-dump/schema/primary-keys.js +0 -41
  439. package/dist/utils/sql-dump/schema/primary-keys.js.map +0 -1
  440. package/dist/utils/sql-dump/schema/tables.d.ts +0 -15
  441. package/dist/utils/sql-dump/schema/tables.d.ts.map +0 -1
  442. package/dist/utils/sql-dump/schema/tables.js +0 -518
  443. package/dist/utils/sql-dump/schema/tables.js.map +0 -1
  444. package/dist/utils/sql-dump/schema/views.d.ts +0 -11
  445. package/dist/utils/sql-dump/schema/views.d.ts.map +0 -1
  446. package/dist/utils/sql-dump/schema/views.js +0 -116
  447. package/dist/utils/sql-dump/schema/views.js.map +0 -1
  448. package/dist/utils/sql-dump/types.d.ts +0 -10
  449. package/dist/utils/sql-dump/types.d.ts.map +0 -1
  450. package/dist/utils/sql-dump/types.js +0 -3
  451. package/dist/utils/sql-dump/types.js.map +0 -1
  452. package/dist/utils/sql-dump-converters.d.ts +0 -188
  453. package/dist/utils/sql-dump-converters.d.ts.map +0 -1
  454. package/dist/utils/sql-dump-converters.js +0 -315
  455. package/dist/utils/sql-dump-converters.js.map +0 -1
  456. package/dist/watcher/gitignore-parser.d.ts +0 -70
  457. package/dist/watcher/gitignore-parser.d.ts.map +0 -1
  458. package/dist/watcher/gitignore-parser.js +0 -195
  459. package/dist/watcher/gitignore-parser.js.map +0 -1
  460. package/dist/watcher/index.d.ts +0 -9
  461. package/dist/watcher/index.d.ts.map +0 -1
  462. package/dist/watcher/index.js +0 -8
  463. package/dist/watcher/index.js.map +0 -1
  464. package/docs/HOW_TO_UNINSTALL.md +0 -199
  465. package/docs/MIGRATION_CLEANUP_GUIDE.md +0 -212
  466. package/docs/SLASH_COMMANDS.md +0 -329
  467. package/docs/cli/DATABASE_MIGRATION.md +0 -290
  468. package/docs/cli/DATA_EXPORT_IMPORT.md +0 -701
  469. package/docs/cli/README.md +0 -276
  470. /package/dist/tests/{utils → integration}/json-export-import.test.d.ts +0 -0
  471. /package/dist/tests/{utils → integration}/json-export-import.test.js +0 -0
@@ -1,127 +0,0 @@
1
- /**
2
- * ADR (Architecture Decision Records) formatter
3
- * Converts export blocks to ADR standard format
4
- *
5
- * ADR format follows the standard structure:
6
- * - Title with ADR number
7
- * - Status
8
- * - Context (rationale)
9
- * - Decision
10
- * - Consequences (tradeoffs)
11
- */
12
- /**
13
- * ADR formatter implementation
14
- * Generates Architecture Decision Records in standard format
15
- */
16
- export class AdrFormatter {
17
- format(blocks, options = {}) {
18
- const lines = [];
19
- const { include_metadata = true, include_toc = false } = options;
20
- // Title
21
- lines.push('# Architecture Decision Records');
22
- lines.push('');
23
- // Metadata
24
- if (include_metadata) {
25
- lines.push(`*Generated on ${blocks.metadata.exported_at}*`);
26
- lines.push(`*Total: ${blocks.metadata.total_decisions} decisions*`);
27
- lines.push('');
28
- }
29
- // Table of contents
30
- if (include_toc) {
31
- lines.push('## Index');
32
- lines.push('');
33
- let adrNumber = 1;
34
- for (const section of blocks.blocks) {
35
- for (const item of section.items) {
36
- const paddedNum = String(adrNumber).padStart(3, '0');
37
- lines.push(`- [ADR-${paddedNum}](#adr-${paddedNum}-${this.toAnchor(item.key)}): ${item.key}`);
38
- adrNumber++;
39
- }
40
- }
41
- lines.push('');
42
- lines.push('---');
43
- lines.push('');
44
- }
45
- // Generate ADRs
46
- let adrNumber = 1;
47
- for (const section of blocks.blocks) {
48
- for (const item of section.items) {
49
- lines.push(...this.formatAdr(item, adrNumber, section.title));
50
- adrNumber++;
51
- }
52
- }
53
- return lines.join('\n');
54
- }
55
- formatAdr(item, number, sectionTitle) {
56
- const lines = [];
57
- const paddedNum = String(number).padStart(3, '0');
58
- // ADR Header
59
- lines.push(`## ADR-${paddedNum}: ${item.key}`);
60
- lines.push('');
61
- // Status and metadata
62
- lines.push('| Field | Value |');
63
- lines.push('|-------|-------|');
64
- lines.push(`| **Status** | Active |`);
65
- if (item.updated) {
66
- lines.push(`| **Date** | ${item.updated.split('T')[0]} |`);
67
- }
68
- if (item.layer) {
69
- lines.push(`| **Layer** | ${item.layer} |`);
70
- }
71
- else {
72
- lines.push(`| **Layer** | ${sectionTitle} |`);
73
- }
74
- if (item.version) {
75
- lines.push(`| **Version** | ${item.version} |`);
76
- }
77
- if (item.tags && item.tags.length > 0) {
78
- lines.push(`| **Tags** | ${item.tags.join(', ')} |`);
79
- }
80
- lines.push('');
81
- // Context section
82
- lines.push('### Context');
83
- lines.push('');
84
- if (item.rationale) {
85
- lines.push(item.rationale);
86
- }
87
- else {
88
- lines.push('*No context provided.*');
89
- }
90
- lines.push('');
91
- // Decision section
92
- lines.push('### Decision');
93
- lines.push('');
94
- lines.push(item.value);
95
- lines.push('');
96
- // Alternatives considered
97
- if (item.alternatives && item.alternatives.length > 0) {
98
- lines.push('### Alternatives Considered');
99
- lines.push('');
100
- for (const alt of item.alternatives) {
101
- lines.push(`- ${alt}`);
102
- }
103
- lines.push('');
104
- }
105
- // Consequences section
106
- lines.push('### Consequences');
107
- lines.push('');
108
- if (item.tradeoffs) {
109
- lines.push(item.tradeoffs);
110
- }
111
- else {
112
- lines.push('*No consequences documented.*');
113
- }
114
- lines.push('');
115
- // Separator
116
- lines.push('---');
117
- lines.push('');
118
- return lines;
119
- }
120
- toAnchor(title) {
121
- return title
122
- .toLowerCase()
123
- .replace(/[^a-z0-9\s-]/g, '')
124
- .replace(/[\s/]+/g, '-');
125
- }
126
- }
127
- //# sourceMappingURL=adr-formatter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"adr-formatter.js","sourceRoot":"","sources":["../../src/formatters/adr-formatter.ts"],"names":[],"mappings":"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"}
@@ -1,26 +0,0 @@
1
- /**
2
- * Confluence Storage Format formatter
3
- * Converts export blocks to Confluence Storage Format (XHTML)
4
- *
5
- * Output can be:
6
- * - Posted via Confluence REST API
7
- * - Pasted into Confluence page source
8
- *
9
- * @see https://confluence.atlassian.com/doc/confluence-storage-format-790796544.html
10
- */
11
- import type { DocumentFormatter, FormatterOptions, ExportBlocks } from './types.js';
12
- /**
13
- * Confluence formatter implementation
14
- * Generates Confluence Storage Format (XHTML subset)
15
- */
16
- export declare class ConfluenceFormatter implements DocumentFormatter {
17
- format(blocks: ExportBlocks, options?: FormatterOptions): string;
18
- private formatItem;
19
- private formatConstraint;
20
- private infoMacro;
21
- private panelMacro;
22
- private tocMacro;
23
- private tableRow;
24
- private escape;
25
- }
26
- //# sourceMappingURL=confluence-formatter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"confluence-formatter.d.ts","sourceRoot":"","sources":["../../src/formatters/confluence-formatter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,YAAY,EAA0C,MAAM,YAAY,CAAC;AAE5H;;;GAGG;AACH,qBAAa,mBAAoB,YAAW,iBAAiB;IAC3D,MAAM,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,GAAE,gBAAqB,GAAG,MAAM;IAiCpE,OAAO,CAAC,UAAU;IAqDlB,OAAO,CAAC,gBAAgB;IAmBxB,OAAO,CAAC,SAAS;IASjB,OAAO,CAAC,UAAU;IASlB,OAAO,CAAC,QAAQ;IAShB,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,MAAM;CAQf"}
@@ -1,129 +0,0 @@
1
- /**
2
- * Confluence Storage Format formatter
3
- * Converts export blocks to Confluence Storage Format (XHTML)
4
- *
5
- * Output can be:
6
- * - Posted via Confluence REST API
7
- * - Pasted into Confluence page source
8
- *
9
- * @see https://confluence.atlassian.com/doc/confluence-storage-format-790796544.html
10
- */
11
- /**
12
- * Confluence formatter implementation
13
- * Generates Confluence Storage Format (XHTML subset)
14
- */
15
- export class ConfluenceFormatter {
16
- format(blocks, options = {}) {
17
- const { include_metadata = true, include_context = false, include_toc = false } = options;
18
- const parts = [];
19
- // Info macro with title
20
- parts.push(this.infoMacro('Decisions Export', `Exported on ${blocks.metadata.exported_at}`));
21
- // Table of contents macro
22
- if (include_toc) {
23
- parts.push(this.tocMacro());
24
- }
25
- // Decision sections
26
- for (const section of blocks.blocks) {
27
- parts.push(`<h2>${this.escape(section.title)}</h2>`);
28
- for (const item of section.items) {
29
- parts.push(this.formatItem(item, include_metadata, include_context));
30
- }
31
- }
32
- // Constraints section
33
- if (blocks.constraints && blocks.constraints.length > 0) {
34
- parts.push('<h2>Constraints</h2>');
35
- for (const constraint of blocks.constraints) {
36
- parts.push(this.formatConstraint(constraint));
37
- }
38
- }
39
- return parts.join('\n\n');
40
- }
41
- formatItem(item, includeMetadata, includeContext) {
42
- const parts = [];
43
- // Item heading
44
- parts.push(`<h3>${this.escape(item.key)}</h3>`);
45
- // Metadata table
46
- const rows = [];
47
- rows.push(this.tableRow('Value', item.value));
48
- if (includeMetadata) {
49
- if (item.version) {
50
- rows.push(this.tableRow('Version', item.version));
51
- }
52
- if (item.updated) {
53
- rows.push(this.tableRow('Updated', item.updated));
54
- }
55
- if (item.layer) {
56
- rows.push(this.tableRow('Layer', item.layer));
57
- }
58
- if (item.tags && item.tags.length > 0) {
59
- rows.push(this.tableRow('Tags', item.tags.join(', ')));
60
- }
61
- }
62
- parts.push(`<table><tbody>${rows.join('')}</tbody></table>`);
63
- // Context sections
64
- if (includeContext) {
65
- if (item.rationale) {
66
- parts.push(this.panelMacro('Rationale', item.rationale));
67
- }
68
- if (item.alternatives && item.alternatives.length > 0) {
69
- const altList = item.alternatives.map(alt => `<li>${this.escape(alt)}</li>`).join('');
70
- parts.push(`<p><strong>Alternatives Considered:</strong></p><ul>${altList}</ul>`);
71
- }
72
- if (item.tradeoffs) {
73
- parts.push(this.panelMacro('Tradeoffs', item.tradeoffs));
74
- }
75
- }
76
- // Horizontal rule
77
- parts.push('<hr />');
78
- return parts.join('\n');
79
- }
80
- formatConstraint(constraint) {
81
- const parts = [];
82
- const title = `[${constraint.category}] ${constraint.rule}`;
83
- parts.push(`<h3>${this.escape(title)}</h3>`);
84
- const rows = [];
85
- rows.push(this.tableRow('Priority', constraint.priority));
86
- if (constraint.tags && constraint.tags.length > 0) {
87
- rows.push(this.tableRow('Tags', constraint.tags.join(', ')));
88
- }
89
- parts.push(`<table><tbody>${rows.join('')}</tbody></table>`);
90
- return parts.join('\n');
91
- }
92
- // ========== Confluence Macro Helpers ==========
93
- infoMacro(title, body) {
94
- return `<ac:structured-macro ac:name="info">
95
- <ac:parameter ac:name="title">${this.escape(title)}</ac:parameter>
96
- <ac:rich-text-body>
97
- <p><em>${this.escape(body)}</em></p>
98
- </ac:rich-text-body>
99
- </ac:structured-macro>`;
100
- }
101
- panelMacro(title, body) {
102
- return `<ac:structured-macro ac:name="panel">
103
- <ac:parameter ac:name="title">${this.escape(title)}</ac:parameter>
104
- <ac:rich-text-body>
105
- <p>${this.escape(body)}</p>
106
- </ac:rich-text-body>
107
- </ac:structured-macro>`;
108
- }
109
- tocMacro() {
110
- return `<ac:structured-macro ac:name="toc">
111
- <ac:parameter ac:name="printable">true</ac:parameter>
112
- <ac:parameter ac:name="style">disc</ac:parameter>
113
- <ac:parameter ac:name="maxLevel">3</ac:parameter>
114
- <ac:parameter ac:name="minLevel">2</ac:parameter>
115
- </ac:structured-macro>`;
116
- }
117
- tableRow(label, value) {
118
- return `<tr><th>${this.escape(label)}</th><td>${this.escape(value)}</td></tr>`;
119
- }
120
- escape(text) {
121
- return text
122
- .replace(/&/g, '&amp;')
123
- .replace(/</g, '&lt;')
124
- .replace(/>/g, '&gt;')
125
- .replace(/"/g, '&quot;')
126
- .replace(/'/g, '&#39;');
127
- }
128
- }
129
- //# sourceMappingURL=confluence-formatter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"confluence-formatter.js","sourceRoot":"","sources":["../../src/formatters/confluence-formatter.ts"],"names":[],"mappings":"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"}
@@ -1,34 +0,0 @@
1
- /**
2
- * Document Formatters (v5.0.0)
3
- *
4
- * Converts SaaS export blocks to various document formats:
5
- * - Markdown: Standard markdown for README, Wiki
6
- * - ADR: Architecture Decision Records format
7
- * - Notion: Notion Blocks API JSON
8
- * - Confluence: Confluence Storage Format (XHTML)
9
- */
10
- export type { DocumentFormatter, FormatterOptions, ExportBlocks } from './types.js';
11
- export { MarkdownFormatter } from './markdown-formatter.js';
12
- export { AdrFormatter } from './adr-formatter.js';
13
- export { NotionFormatter } from './notion-formatter.js';
14
- export { ConfluenceFormatter } from './confluence-formatter.js';
15
- import type { ExportFormat } from '../types.js';
16
- import type { DocumentFormatter, FormatterOptions, ExportBlocks } from './types.js';
17
- /**
18
- * Create a formatter instance for the given format
19
- * @param format - Output format type
20
- * @returns DocumentFormatter instance
21
- * @throws Error if format is 'blocks' (no transformation needed) or unknown
22
- */
23
- export declare function createFormatter(format: ExportFormat): DocumentFormatter;
24
- /**
25
- * Format export blocks using the specified format
26
- * Convenience function that creates formatter and applies it
27
- *
28
- * @param blocks - Export blocks from SaaS
29
- * @param format - Output format
30
- * @param options - Formatter options
31
- * @returns Formatted string (or ExportBlocks JSON string for 'blocks' format)
32
- */
33
- export declare function formatBlocks(blocks: ExportBlocks, format: ExportFormat, options?: FormatterOptions): string;
34
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/formatters/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAGpF,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAGhE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAMpF;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,iBAAiB,CAevE;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,YAAY,EACpB,OAAO,CAAC,EAAE,gBAAgB,GACzB,MAAM,CAOR"}
@@ -1,57 +0,0 @@
1
- /**
2
- * Document Formatters (v5.0.0)
3
- *
4
- * Converts SaaS export blocks to various document formats:
5
- * - Markdown: Standard markdown for README, Wiki
6
- * - ADR: Architecture Decision Records format
7
- * - Notion: Notion Blocks API JSON
8
- * - Confluence: Confluence Storage Format (XHTML)
9
- */
10
- // Formatters
11
- export { MarkdownFormatter } from './markdown-formatter.js';
12
- export { AdrFormatter } from './adr-formatter.js';
13
- export { NotionFormatter } from './notion-formatter.js';
14
- export { ConfluenceFormatter } from './confluence-formatter.js';
15
- import { MarkdownFormatter } from './markdown-formatter.js';
16
- import { AdrFormatter } from './adr-formatter.js';
17
- import { NotionFormatter } from './notion-formatter.js';
18
- import { ConfluenceFormatter } from './confluence-formatter.js';
19
- /**
20
- * Create a formatter instance for the given format
21
- * @param format - Output format type
22
- * @returns DocumentFormatter instance
23
- * @throws Error if format is 'blocks' (no transformation needed) or unknown
24
- */
25
- export function createFormatter(format) {
26
- switch (format) {
27
- case 'markdown':
28
- return new MarkdownFormatter();
29
- case 'adr':
30
- return new AdrFormatter();
31
- case 'notion':
32
- return new NotionFormatter();
33
- case 'confluence':
34
- return new ConfluenceFormatter();
35
- case 'blocks':
36
- throw new Error('blocks format does not require a formatter - return raw ExportBlocks');
37
- default:
38
- throw new Error(`Unknown format: ${format}`);
39
- }
40
- }
41
- /**
42
- * Format export blocks using the specified format
43
- * Convenience function that creates formatter and applies it
44
- *
45
- * @param blocks - Export blocks from SaaS
46
- * @param format - Output format
47
- * @param options - Formatter options
48
- * @returns Formatted string (or ExportBlocks JSON string for 'blocks' format)
49
- */
50
- export function formatBlocks(blocks, format, options) {
51
- if (format === 'blocks') {
52
- return JSON.stringify(blocks, null, 2);
53
- }
54
- const formatter = createFormatter(format);
55
- return formatter.format(blocks, options);
56
- }
57
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/formatters/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAKH,aAAa;AACb,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAKhE,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,MAAoB;IAClD,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,UAAU;YACb,OAAO,IAAI,iBAAiB,EAAE,CAAC;QACjC,KAAK,KAAK;YACR,OAAO,IAAI,YAAY,EAAE,CAAC;QAC5B,KAAK,QAAQ;YACX,OAAO,IAAI,eAAe,EAAE,CAAC;QAC/B,KAAK,YAAY;YACf,OAAO,IAAI,mBAAmB,EAAE,CAAC;QACnC,KAAK,QAAQ;YACX,MAAM,IAAI,KAAK,CAAC,sEAAsE,CAAC,CAAC;QAC1F;YACE,MAAM,IAAI,KAAK,CAAC,mBAAmB,MAAM,EAAE,CAAC,CAAC;IACjD,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,YAAY,CAC1B,MAAoB,EACpB,MAAoB,EACpB,OAA0B;IAE1B,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACzC,CAAC;IAED,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IAC1C,OAAO,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAC3C,CAAC"}
@@ -1,16 +0,0 @@
1
- /**
2
- * Markdown document formatter
3
- * Converts export blocks to Markdown format
4
- */
5
- import type { DocumentFormatter, FormatterOptions, ExportBlocks } from './types.js';
6
- /**
7
- * Markdown formatter implementation
8
- * Generates standard Markdown that can be used in README, Wiki, etc.
9
- */
10
- export declare class MarkdownFormatter implements DocumentFormatter {
11
- format(blocks: ExportBlocks, options?: FormatterOptions): string;
12
- private formatSection;
13
- private formatConstraint;
14
- private toAnchor;
15
- }
16
- //# sourceMappingURL=markdown-formatter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"markdown-formatter.d.ts","sourceRoot":"","sources":["../../src/formatters/markdown-formatter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,YAAY,EAA6C,MAAM,YAAY,CAAC;AAE/H;;;GAGG;AACH,qBAAa,iBAAkB,YAAW,iBAAiB;IACzD,MAAM,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,GAAE,gBAAqB,GAAG,MAAM;IA6CpE,OAAO,CAAC,aAAa;IAuDrB,OAAO,CAAC,gBAAgB;IAcxB,OAAO,CAAC,QAAQ;CAMjB"}
@@ -1,110 +0,0 @@
1
- /**
2
- * Markdown document formatter
3
- * Converts export blocks to Markdown format
4
- */
5
- /**
6
- * Markdown formatter implementation
7
- * Generates standard Markdown that can be used in README, Wiki, etc.
8
- */
9
- export class MarkdownFormatter {
10
- format(blocks, options = {}) {
11
- const lines = [];
12
- const { include_metadata = true, include_context = false, include_toc = false } = options;
13
- // Title
14
- lines.push('# Decisions Export');
15
- lines.push('');
16
- // Metadata
17
- if (include_metadata) {
18
- lines.push(`*Exported on ${blocks.metadata.exported_at}*`);
19
- lines.push('');
20
- }
21
- // Table of contents
22
- if (include_toc && blocks.blocks.length > 0) {
23
- lines.push('## Table of Contents');
24
- lines.push('');
25
- for (const section of blocks.blocks) {
26
- const anchor = this.toAnchor(section.title);
27
- lines.push(`- [${section.title}](#${anchor})`);
28
- }
29
- if (blocks.constraints && blocks.constraints.length > 0) {
30
- lines.push('- [Constraints](#constraints)');
31
- }
32
- lines.push('');
33
- }
34
- // Decision sections
35
- for (const section of blocks.blocks) {
36
- lines.push(...this.formatSection(section, include_metadata, include_context));
37
- }
38
- // Constraints section
39
- if (blocks.constraints && blocks.constraints.length > 0) {
40
- lines.push('## Constraints');
41
- lines.push('');
42
- for (const constraint of blocks.constraints) {
43
- lines.push(...this.formatConstraint(constraint));
44
- }
45
- }
46
- return lines.join('\n');
47
- }
48
- formatSection(section, includeMetadata, includeContext) {
49
- const lines = [];
50
- lines.push(`## ${section.title}`);
51
- lines.push('');
52
- for (const item of section.items) {
53
- lines.push(`### ${item.key}`);
54
- lines.push('');
55
- lines.push(`**Value:** ${item.value}`);
56
- if (includeMetadata) {
57
- if (item.version) {
58
- lines.push(`**Version:** ${item.version}`);
59
- }
60
- if (item.updated) {
61
- lines.push(`**Updated:** ${item.updated}`);
62
- }
63
- if (item.tags && item.tags.length > 0) {
64
- lines.push(`**Tags:** ${item.tags.join(', ')}`);
65
- }
66
- }
67
- if (includeContext) {
68
- if (item.rationale) {
69
- lines.push('');
70
- lines.push('**Rationale:**');
71
- lines.push(item.rationale);
72
- }
73
- if (item.alternatives && item.alternatives.length > 0) {
74
- lines.push('');
75
- lines.push('**Alternatives Considered:**');
76
- for (const alt of item.alternatives) {
77
- lines.push(`- ${alt}`);
78
- }
79
- }
80
- if (item.tradeoffs) {
81
- lines.push('');
82
- lines.push('**Tradeoffs:**');
83
- lines.push(item.tradeoffs);
84
- }
85
- }
86
- lines.push('');
87
- lines.push('---');
88
- lines.push('');
89
- }
90
- return lines;
91
- }
92
- formatConstraint(constraint) {
93
- const lines = [];
94
- lines.push(`### [${constraint.category}] ${constraint.rule}`);
95
- lines.push('');
96
- lines.push(`**Priority:** ${constraint.priority}`);
97
- if (constraint.tags && constraint.tags.length > 0) {
98
- lines.push(`**Tags:** ${constraint.tags.join(', ')}`);
99
- }
100
- lines.push('');
101
- return lines;
102
- }
103
- toAnchor(title) {
104
- return title
105
- .toLowerCase()
106
- .replace(/[^a-z0-9\s-]/g, '')
107
- .replace(/\s+/g, '-');
108
- }
109
- }
110
- //# sourceMappingURL=markdown-formatter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"markdown-formatter.js","sourceRoot":"","sources":["../../src/formatters/markdown-formatter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;;GAGG;AACH,MAAM,OAAO,iBAAiB;IAC5B,MAAM,CAAC,MAAoB,EAAE,UAA4B,EAAE;QACzD,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,MAAM,EAAE,gBAAgB,GAAG,IAAI,EAAE,eAAe,GAAG,KAAK,EAAE,WAAW,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;QAE1F,QAAQ;QACR,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAEf,WAAW;QACX,IAAI,gBAAgB,EAAE,CAAC;YACrB,KAAK,CAAC,IAAI,CAAC,gBAAgB,MAAM,CAAC,QAAQ,CAAC,WAAW,GAAG,CAAC,CAAC;YAC3D,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjB,CAAC;QAED,oBAAoB;QACpB,IAAI,WAAW,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5C,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;YACnC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACf,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBACpC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC5C,KAAK,CAAC,IAAI,CAAC,MAAM,OAAO,CAAC,KAAK,MAAM,MAAM,GAAG,CAAC,CAAC;YACjD,CAAC;YACD,IAAI,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxD,KAAK,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;YAC9C,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjB,CAAC;QAED,oBAAoB;QACpB,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YACpC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAAC,CAAC;QAChF,CAAC;QAED,sBAAsB;QACtB,IAAI,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxD,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAC7B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACf,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;gBAC5C,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAEO,aAAa,CACnB,OAA2B,EAC3B,eAAwB,EACxB,cAAuB;QAEvB,MAAM,KAAK,GAAa,EAAE,CAAC;QAE3B,KAAK,CAAC,IAAI,CAAC,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QAClC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAEf,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YACjC,KAAK,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YAC9B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACf,KAAK,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;YAEvC,IAAI,eAAe,EAAE,CAAC;gBACpB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBACjB,KAAK,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC7C,CAAC;gBACD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBACjB,KAAK,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC7C,CAAC;gBACD,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACtC,KAAK,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAClD,CAAC;YACH,CAAC;YAED,IAAI,cAAc,EAAE,CAAC;gBACnB,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;oBACnB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACf,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;oBAC7B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC7B,CAAC;gBACD,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACtD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACf,KAAK,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;oBAC3C,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;wBACpC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;oBACzB,CAAC;gBACH,CAAC;gBACD,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;oBACnB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACf,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;oBAC7B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC7B,CAAC;YACH,CAAC;YAED,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACf,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAClB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjB,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,gBAAgB,CAAC,UAAiC;QACxD,MAAM,KAAK,GAAa,EAAE,CAAC;QAE3B,KAAK,CAAC,IAAI,CAAC,QAAQ,UAAU,CAAC,QAAQ,KAAK,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9D,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,iBAAiB,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;QACnD,IAAI,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClD,KAAK,CAAC,IAAI,CAAC,aAAa,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxD,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAEf,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,QAAQ,CAAC,KAAa;QAC5B,OAAO,KAAK;aACT,WAAW,EAAE;aACb,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC;aAC5B,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC1B,CAAC;CACF"}
@@ -1,29 +0,0 @@
1
- /**
2
- * Notion blocks formatter
3
- * Converts export blocks to Notion Blocks API format
4
- *
5
- * Output can be:
6
- * - Copied and pasted directly into Notion
7
- * - Posted via Notion API
8
- *
9
- * @see https://developers.notion.com/reference/block
10
- */
11
- import type { DocumentFormatter, FormatterOptions, ExportBlocks } from './types.js';
12
- /**
13
- * Notion formatter implementation
14
- * Generates Notion Blocks API compatible JSON
15
- */
16
- export declare class NotionFormatter implements DocumentFormatter {
17
- format(blocks: ExportBlocks, options?: FormatterOptions): string;
18
- private formatItem;
19
- private formatConstraint;
20
- private richText;
21
- private heading1;
22
- private heading2;
23
- private heading3;
24
- private paragraph;
25
- private bulletedListItem;
26
- private callout;
27
- private divider;
28
- }
29
- //# sourceMappingURL=notion-formatter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"notion-formatter.d.ts","sourceRoot":"","sources":["../../src/formatters/notion-formatter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,YAAY,EAA0C,MAAM,YAAY,CAAC;AAsB5H;;;GAGG;AACH,qBAAa,eAAgB,YAAW,iBAAiB;IACvD,MAAM,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,GAAE,gBAAqB,GAAG,MAAM;IAoCpE,OAAO,CAAC,UAAU;IAkElB,OAAO,CAAC,gBAAgB;IAqBxB,OAAO,CAAC,QAAQ;IAWhB,OAAO,CAAC,QAAQ;IAShB,OAAO,CAAC,QAAQ;IAShB,OAAO,CAAC,QAAQ;IAShB,OAAO,CAAC,SAAS;IASjB,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,OAAO;IAUf,OAAO,CAAC,OAAO;CAMhB"}