@neverinfamous/postgres-mcp 1.3.0 → 2.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 (548) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +244 -129
  3. package/dist/__tests__/benchmarks/codemode.bench.d.ts +10 -0
  4. package/dist/__tests__/benchmarks/codemode.bench.d.ts.map +1 -0
  5. package/dist/__tests__/benchmarks/codemode.bench.js +159 -0
  6. package/dist/__tests__/benchmarks/codemode.bench.js.map +1 -0
  7. package/dist/__tests__/benchmarks/connection-pool.bench.d.ts +10 -0
  8. package/dist/__tests__/benchmarks/connection-pool.bench.d.ts.map +1 -0
  9. package/dist/__tests__/benchmarks/connection-pool.bench.js +123 -0
  10. package/dist/__tests__/benchmarks/connection-pool.bench.js.map +1 -0
  11. package/dist/__tests__/benchmarks/handler-dispatch.bench.d.ts +11 -0
  12. package/dist/__tests__/benchmarks/handler-dispatch.bench.d.ts.map +1 -0
  13. package/dist/__tests__/benchmarks/handler-dispatch.bench.js +199 -0
  14. package/dist/__tests__/benchmarks/handler-dispatch.bench.js.map +1 -0
  15. package/dist/__tests__/benchmarks/logger-sanitization.bench.d.ts +15 -0
  16. package/dist/__tests__/benchmarks/logger-sanitization.bench.d.ts.map +1 -0
  17. package/dist/__tests__/benchmarks/logger-sanitization.bench.js +155 -0
  18. package/dist/__tests__/benchmarks/logger-sanitization.bench.js.map +1 -0
  19. package/dist/__tests__/benchmarks/resource-prompts.bench.d.ts +10 -0
  20. package/dist/__tests__/benchmarks/resource-prompts.bench.d.ts.map +1 -0
  21. package/dist/__tests__/benchmarks/resource-prompts.bench.js +181 -0
  22. package/dist/__tests__/benchmarks/resource-prompts.bench.js.map +1 -0
  23. package/dist/__tests__/benchmarks/schema-parsing.bench.d.ts +11 -0
  24. package/dist/__tests__/benchmarks/schema-parsing.bench.d.ts.map +1 -0
  25. package/dist/__tests__/benchmarks/schema-parsing.bench.js +209 -0
  26. package/dist/__tests__/benchmarks/schema-parsing.bench.js.map +1 -0
  27. package/dist/__tests__/benchmarks/tool-filtering.bench.d.ts +9 -0
  28. package/dist/__tests__/benchmarks/tool-filtering.bench.d.ts.map +1 -0
  29. package/dist/__tests__/benchmarks/tool-filtering.bench.js +83 -0
  30. package/dist/__tests__/benchmarks/tool-filtering.bench.js.map +1 -0
  31. package/dist/__tests__/benchmarks/transport-auth.bench.d.ts +10 -0
  32. package/dist/__tests__/benchmarks/transport-auth.bench.d.ts.map +1 -0
  33. package/dist/__tests__/benchmarks/transport-auth.bench.js +128 -0
  34. package/dist/__tests__/benchmarks/transport-auth.bench.js.map +1 -0
  35. package/dist/__tests__/benchmarks/utilities.bench.d.ts +10 -0
  36. package/dist/__tests__/benchmarks/utilities.bench.d.ts.map +1 -0
  37. package/dist/__tests__/benchmarks/utilities.bench.js +164 -0
  38. package/dist/__tests__/benchmarks/utilities.bench.js.map +1 -0
  39. package/dist/__tests__/mocks/adapter.d.ts.map +1 -1
  40. package/dist/__tests__/mocks/adapter.js +2 -1
  41. package/dist/__tests__/mocks/adapter.js.map +1 -1
  42. package/dist/adapters/DatabaseAdapter.d.ts +6 -1
  43. package/dist/adapters/DatabaseAdapter.d.ts.map +1 -1
  44. package/dist/adapters/DatabaseAdapter.js +23 -7
  45. package/dist/adapters/DatabaseAdapter.js.map +1 -1
  46. package/dist/adapters/postgresql/PostgresAdapter.d.ts +5 -22
  47. package/dist/adapters/postgresql/PostgresAdapter.d.ts.map +1 -1
  48. package/dist/adapters/postgresql/PostgresAdapter.js +30 -519
  49. package/dist/adapters/postgresql/PostgresAdapter.js.map +1 -1
  50. package/dist/adapters/postgresql/prompts/index.js +1 -1
  51. package/dist/adapters/postgresql/prompts/index.js.map +1 -1
  52. package/dist/adapters/postgresql/resources/index.d.ts +1 -1
  53. package/dist/adapters/postgresql/resources/index.js +3 -3
  54. package/dist/adapters/postgresql/resources/index.js.map +1 -1
  55. package/dist/adapters/postgresql/schema-operations.d.ts +71 -0
  56. package/dist/adapters/postgresql/schema-operations.d.ts.map +1 -0
  57. package/dist/adapters/postgresql/schema-operations.js +561 -0
  58. package/dist/adapters/postgresql/schema-operations.js.map +1 -0
  59. package/dist/adapters/postgresql/schemas/admin.d.ts +4 -4
  60. package/dist/adapters/postgresql/schemas/admin.js +4 -4
  61. package/dist/adapters/postgresql/schemas/admin.js.map +1 -1
  62. package/dist/adapters/postgresql/schemas/backup.d.ts +39 -25
  63. package/dist/adapters/postgresql/schemas/backup.d.ts.map +1 -1
  64. package/dist/adapters/postgresql/schemas/backup.js +54 -25
  65. package/dist/adapters/postgresql/schemas/backup.js.map +1 -1
  66. package/dist/adapters/postgresql/schemas/core/index.d.ts +6 -0
  67. package/dist/adapters/postgresql/schemas/core/index.d.ts.map +1 -0
  68. package/dist/adapters/postgresql/schemas/core/index.js +6 -0
  69. package/dist/adapters/postgresql/schemas/core/index.js.map +1 -0
  70. package/dist/adapters/postgresql/schemas/{core.d.ts → core/queries.d.ts} +12 -167
  71. package/dist/adapters/postgresql/schemas/core/queries.d.ts.map +1 -0
  72. package/dist/adapters/postgresql/schemas/{core.js → core/queries.js} +5 -213
  73. package/dist/adapters/postgresql/schemas/core/queries.js.map +1 -0
  74. package/dist/adapters/postgresql/schemas/core/transactions.d.ts +149 -0
  75. package/dist/adapters/postgresql/schemas/core/transactions.d.ts.map +1 -0
  76. package/dist/adapters/postgresql/schemas/core/transactions.js +239 -0
  77. package/dist/adapters/postgresql/schemas/core/transactions.js.map +1 -0
  78. package/dist/adapters/postgresql/schemas/cron.d.ts +12 -12
  79. package/dist/adapters/postgresql/schemas/cron.d.ts.map +1 -1
  80. package/dist/adapters/postgresql/schemas/cron.js +38 -10
  81. package/dist/adapters/postgresql/schemas/cron.js.map +1 -1
  82. package/dist/adapters/postgresql/schemas/extensions/citext.d.ts +222 -0
  83. package/dist/adapters/postgresql/schemas/extensions/citext.d.ts.map +1 -0
  84. package/dist/adapters/postgresql/schemas/extensions/citext.js +306 -0
  85. package/dist/adapters/postgresql/schemas/extensions/citext.js.map +1 -0
  86. package/dist/adapters/postgresql/schemas/extensions/index.d.ts +15 -0
  87. package/dist/adapters/postgresql/schemas/extensions/index.d.ts.map +1 -0
  88. package/dist/adapters/postgresql/schemas/extensions/index.js +20 -0
  89. package/dist/adapters/postgresql/schemas/extensions/index.js.map +1 -0
  90. package/dist/adapters/postgresql/schemas/extensions/kcache.d.ts +164 -0
  91. package/dist/adapters/postgresql/schemas/extensions/kcache.d.ts.map +1 -0
  92. package/dist/adapters/postgresql/schemas/extensions/kcache.js +225 -0
  93. package/dist/adapters/postgresql/schemas/extensions/kcache.js.map +1 -0
  94. package/dist/adapters/postgresql/schemas/extensions/ltree.d.ts +253 -0
  95. package/dist/adapters/postgresql/schemas/extensions/ltree.d.ts.map +1 -0
  96. package/dist/adapters/postgresql/schemas/extensions/ltree.js +430 -0
  97. package/dist/adapters/postgresql/schemas/extensions/ltree.js.map +1 -0
  98. package/dist/adapters/postgresql/schemas/extensions/pgcrypto.d.ts +251 -0
  99. package/dist/adapters/postgresql/schemas/extensions/pgcrypto.d.ts.map +1 -0
  100. package/dist/adapters/postgresql/schemas/extensions/pgcrypto.js +294 -0
  101. package/dist/adapters/postgresql/schemas/extensions/pgcrypto.js.map +1 -0
  102. package/dist/adapters/postgresql/schemas/extensions/shared.d.ts +10 -0
  103. package/dist/adapters/postgresql/schemas/extensions/shared.d.ts.map +1 -0
  104. package/dist/adapters/postgresql/schemas/extensions/shared.js +15 -0
  105. package/dist/adapters/postgresql/schemas/extensions/shared.js.map +1 -0
  106. package/dist/adapters/postgresql/schemas/index.d.ts +8 -7
  107. package/dist/adapters/postgresql/schemas/index.d.ts.map +1 -1
  108. package/dist/adapters/postgresql/schemas/index.js +16 -10
  109. package/dist/adapters/postgresql/schemas/index.js.map +1 -1
  110. package/dist/adapters/postgresql/schemas/introspection.d.ts +445 -0
  111. package/dist/adapters/postgresql/schemas/introspection.d.ts.map +1 -0
  112. package/dist/adapters/postgresql/schemas/introspection.js +481 -0
  113. package/dist/adapters/postgresql/schemas/introspection.js.map +1 -0
  114. package/dist/adapters/postgresql/schemas/jsonb/advanced.d.ts +270 -0
  115. package/dist/adapters/postgresql/schemas/jsonb/advanced.d.ts.map +1 -0
  116. package/dist/adapters/postgresql/schemas/jsonb/advanced.js +371 -0
  117. package/dist/adapters/postgresql/schemas/jsonb/advanced.js.map +1 -0
  118. package/dist/adapters/postgresql/schemas/jsonb/basic.d.ts +283 -0
  119. package/dist/adapters/postgresql/schemas/jsonb/basic.d.ts.map +1 -0
  120. package/dist/adapters/postgresql/schemas/jsonb/basic.js +456 -0
  121. package/dist/adapters/postgresql/schemas/jsonb/basic.js.map +1 -0
  122. package/dist/adapters/postgresql/schemas/jsonb/index.d.ts +6 -0
  123. package/dist/adapters/postgresql/schemas/jsonb/index.d.ts.map +1 -0
  124. package/dist/adapters/postgresql/schemas/jsonb/index.js +6 -0
  125. package/dist/adapters/postgresql/schemas/jsonb/index.js.map +1 -0
  126. package/dist/adapters/postgresql/schemas/monitoring.d.ts +45 -29
  127. package/dist/adapters/postgresql/schemas/monitoring.d.ts.map +1 -1
  128. package/dist/adapters/postgresql/schemas/monitoring.js +51 -18
  129. package/dist/adapters/postgresql/schemas/monitoring.js.map +1 -1
  130. package/dist/adapters/postgresql/schemas/partitioning.d.ts +28 -32
  131. package/dist/adapters/postgresql/schemas/partitioning.d.ts.map +1 -1
  132. package/dist/adapters/postgresql/schemas/partitioning.js +82 -53
  133. package/dist/adapters/postgresql/schemas/partitioning.js.map +1 -1
  134. package/dist/adapters/postgresql/schemas/partman.d.ts +78 -7
  135. package/dist/adapters/postgresql/schemas/partman.d.ts.map +1 -1
  136. package/dist/adapters/postgresql/schemas/partman.js +54 -41
  137. package/dist/adapters/postgresql/schemas/partman.js.map +1 -1
  138. package/dist/adapters/postgresql/schemas/performance.d.ts +37 -19
  139. package/dist/adapters/postgresql/schemas/performance.d.ts.map +1 -1
  140. package/dist/adapters/postgresql/schemas/performance.js +54 -12
  141. package/dist/adapters/postgresql/schemas/performance.js.map +1 -1
  142. package/dist/adapters/postgresql/schemas/postgis/advanced.d.ts +429 -0
  143. package/dist/adapters/postgresql/schemas/postgis/advanced.d.ts.map +1 -0
  144. package/dist/adapters/postgresql/schemas/{postgis.js → postgis/advanced.js} +4 -467
  145. package/dist/adapters/postgresql/schemas/postgis/advanced.js.map +1 -0
  146. package/dist/adapters/postgresql/schemas/{postgis.d.ts → postgis/basic.d.ts} +1 -423
  147. package/dist/adapters/postgresql/schemas/postgis/basic.d.ts.map +1 -0
  148. package/dist/adapters/postgresql/schemas/postgis/basic.js +493 -0
  149. package/dist/adapters/postgresql/schemas/postgis/basic.js.map +1 -0
  150. package/dist/adapters/postgresql/schemas/postgis/index.d.ts +6 -0
  151. package/dist/adapters/postgresql/schemas/postgis/index.d.ts.map +1 -0
  152. package/dist/adapters/postgresql/schemas/postgis/index.js +6 -0
  153. package/dist/adapters/postgresql/schemas/postgis/index.js.map +1 -0
  154. package/dist/adapters/postgresql/schemas/schema-mgmt.d.ts +50 -32
  155. package/dist/adapters/postgresql/schemas/schema-mgmt.d.ts.map +1 -1
  156. package/dist/adapters/postgresql/schemas/schema-mgmt.js +93 -26
  157. package/dist/adapters/postgresql/schemas/schema-mgmt.js.map +1 -1
  158. package/dist/adapters/postgresql/schemas/stats/index.d.ts +6 -0
  159. package/dist/adapters/postgresql/schemas/stats/index.d.ts.map +1 -0
  160. package/dist/adapters/postgresql/schemas/stats/index.js +6 -0
  161. package/dist/adapters/postgresql/schemas/stats/index.js.map +1 -0
  162. package/dist/adapters/postgresql/schemas/stats/input.d.ts +260 -0
  163. package/dist/adapters/postgresql/schemas/stats/input.d.ts.map +1 -0
  164. package/dist/adapters/postgresql/schemas/{stats.js → stats/input.js} +2 -331
  165. package/dist/adapters/postgresql/schemas/stats/input.js.map +1 -0
  166. package/dist/adapters/postgresql/schemas/{stats.d.ts → stats/output.d.ts} +3 -246
  167. package/dist/adapters/postgresql/schemas/stats/output.d.ts.map +1 -0
  168. package/dist/adapters/postgresql/schemas/stats/output.js +334 -0
  169. package/dist/adapters/postgresql/schemas/stats/output.js.map +1 -0
  170. package/dist/adapters/postgresql/schemas/text-search.d.ts +44 -32
  171. package/dist/adapters/postgresql/schemas/text-search.d.ts.map +1 -1
  172. package/dist/adapters/postgresql/schemas/text-search.js +53 -36
  173. package/dist/adapters/postgresql/schemas/text-search.js.map +1 -1
  174. package/dist/adapters/postgresql/schemas/vector.d.ts +10 -10
  175. package/dist/adapters/postgresql/schemas/vector.d.ts.map +1 -1
  176. package/dist/adapters/postgresql/schemas/vector.js +12 -16
  177. package/dist/adapters/postgresql/schemas/vector.js.map +1 -1
  178. package/dist/adapters/postgresql/tools/admin.d.ts.map +1 -1
  179. package/dist/adapters/postgresql/tools/admin.js +82 -67
  180. package/dist/adapters/postgresql/tools/admin.js.map +1 -1
  181. package/dist/adapters/postgresql/tools/backup/dump.d.ts.map +1 -1
  182. package/dist/adapters/postgresql/tools/backup/dump.js +119 -97
  183. package/dist/adapters/postgresql/tools/backup/dump.js.map +1 -1
  184. package/dist/adapters/postgresql/tools/backup/planning.d.ts.map +1 -1
  185. package/dist/adapters/postgresql/tools/backup/planning.js +345 -287
  186. package/dist/adapters/postgresql/tools/backup/planning.js.map +1 -1
  187. package/dist/adapters/postgresql/tools/citext/analysis.d.ts +24 -0
  188. package/dist/adapters/postgresql/tools/citext/analysis.d.ts.map +1 -0
  189. package/dist/adapters/postgresql/tools/{citext.js → citext/analysis.js} +131 -281
  190. package/dist/adapters/postgresql/tools/citext/analysis.js.map +1 -0
  191. package/dist/adapters/postgresql/tools/citext/index.d.ts +15 -0
  192. package/dist/adapters/postgresql/tools/citext/index.d.ts.map +1 -0
  193. package/dist/adapters/postgresql/tools/citext/index.js +23 -0
  194. package/dist/adapters/postgresql/tools/citext/index.js.map +1 -0
  195. package/dist/adapters/postgresql/tools/citext/setup.d.ts +16 -0
  196. package/dist/adapters/postgresql/tools/citext/setup.d.ts.map +1 -0
  197. package/dist/adapters/postgresql/tools/citext/setup.js +193 -0
  198. package/dist/adapters/postgresql/tools/citext/setup.js.map +1 -0
  199. package/dist/adapters/postgresql/tools/codemode/index.d.ts.map +1 -1
  200. package/dist/adapters/postgresql/tools/codemode/index.js +3 -12
  201. package/dist/adapters/postgresql/tools/codemode/index.js.map +1 -1
  202. package/dist/adapters/postgresql/tools/core/convenience.d.ts +12 -22
  203. package/dist/adapters/postgresql/tools/core/convenience.d.ts.map +1 -1
  204. package/dist/adapters/postgresql/tools/core/convenience.js +116 -211
  205. package/dist/adapters/postgresql/tools/core/convenience.js.map +1 -1
  206. package/dist/adapters/postgresql/tools/core/error-helpers.d.ts +1 -0
  207. package/dist/adapters/postgresql/tools/core/error-helpers.d.ts.map +1 -1
  208. package/dist/adapters/postgresql/tools/core/error-helpers.js +8 -1
  209. package/dist/adapters/postgresql/tools/core/error-helpers.js.map +1 -1
  210. package/dist/adapters/postgresql/tools/core/health.d.ts.map +1 -1
  211. package/dist/adapters/postgresql/tools/core/health.js +124 -114
  212. package/dist/adapters/postgresql/tools/core/health.js.map +1 -1
  213. package/dist/adapters/postgresql/tools/core/index.d.ts +2 -1
  214. package/dist/adapters/postgresql/tools/core/index.d.ts.map +1 -1
  215. package/dist/adapters/postgresql/tools/core/index.js +3 -2
  216. package/dist/adapters/postgresql/tools/core/index.js.map +1 -1
  217. package/dist/adapters/postgresql/tools/core/indexes.d.ts.map +1 -1
  218. package/dist/adapters/postgresql/tools/core/indexes.js +153 -128
  219. package/dist/adapters/postgresql/tools/core/indexes.js.map +1 -1
  220. package/dist/adapters/postgresql/tools/core/objects.d.ts.map +1 -1
  221. package/dist/adapters/postgresql/tools/core/objects.js +186 -161
  222. package/dist/adapters/postgresql/tools/core/objects.js.map +1 -1
  223. package/dist/adapters/postgresql/tools/core/query.d.ts.map +1 -1
  224. package/dist/adapters/postgresql/tools/core/query.js +37 -25
  225. package/dist/adapters/postgresql/tools/core/query.js.map +1 -1
  226. package/dist/adapters/postgresql/tools/core/schemas.d.ts +6 -3
  227. package/dist/adapters/postgresql/tools/core/schemas.d.ts.map +1 -1
  228. package/dist/adapters/postgresql/tools/core/schemas.js +11 -2
  229. package/dist/adapters/postgresql/tools/core/schemas.js.map +1 -1
  230. package/dist/adapters/postgresql/tools/core/tables.d.ts.map +1 -1
  231. package/dist/adapters/postgresql/tools/core/tables.js +156 -129
  232. package/dist/adapters/postgresql/tools/core/tables.js.map +1 -1
  233. package/dist/adapters/postgresql/tools/core/utility.d.ts +26 -0
  234. package/dist/adapters/postgresql/tools/core/utility.d.ts.map +1 -0
  235. package/dist/adapters/postgresql/tools/core/utility.js +174 -0
  236. package/dist/adapters/postgresql/tools/core/utility.js.map +1 -0
  237. package/dist/adapters/postgresql/tools/cron.js +149 -70
  238. package/dist/adapters/postgresql/tools/cron.js.map +1 -1
  239. package/dist/adapters/postgresql/tools/introspection/analysis.d.ts +12 -0
  240. package/dist/adapters/postgresql/tools/introspection/analysis.d.ts.map +1 -0
  241. package/dist/adapters/postgresql/tools/introspection/analysis.js +574 -0
  242. package/dist/adapters/postgresql/tools/introspection/analysis.js.map +1 -0
  243. package/dist/adapters/postgresql/tools/introspection/graph.d.ts +55 -0
  244. package/dist/adapters/postgresql/tools/introspection/graph.d.ts.map +1 -0
  245. package/dist/adapters/postgresql/tools/introspection/graph.js +638 -0
  246. package/dist/adapters/postgresql/tools/introspection/graph.js.map +1 -0
  247. package/dist/adapters/postgresql/tools/introspection/index.d.ts +19 -0
  248. package/dist/adapters/postgresql/tools/introspection/index.d.ts.map +1 -0
  249. package/dist/adapters/postgresql/tools/introspection/index.js +36 -0
  250. package/dist/adapters/postgresql/tools/introspection/index.js.map +1 -0
  251. package/dist/adapters/postgresql/tools/introspection/migration.d.ts +15 -0
  252. package/dist/adapters/postgresql/tools/introspection/migration.d.ts.map +1 -0
  253. package/dist/adapters/postgresql/tools/introspection/migration.js +599 -0
  254. package/dist/adapters/postgresql/tools/introspection/migration.js.map +1 -0
  255. package/dist/adapters/postgresql/tools/jsonb/analytics.d.ts +20 -0
  256. package/dist/adapters/postgresql/tools/jsonb/analytics.d.ts.map +1 -0
  257. package/dist/adapters/postgresql/tools/jsonb/analytics.js +367 -0
  258. package/dist/adapters/postgresql/tools/jsonb/analytics.js.map +1 -0
  259. package/dist/adapters/postgresql/tools/jsonb/index.d.ts +4 -2
  260. package/dist/adapters/postgresql/tools/jsonb/index.d.ts.map +1 -1
  261. package/dist/adapters/postgresql/tools/jsonb/index.js +8 -4
  262. package/dist/adapters/postgresql/tools/jsonb/index.js.map +1 -1
  263. package/dist/adapters/postgresql/tools/jsonb/read.d.ts +38 -0
  264. package/dist/adapters/postgresql/tools/jsonb/read.d.ts.map +1 -0
  265. package/dist/adapters/postgresql/tools/jsonb/read.js +543 -0
  266. package/dist/adapters/postgresql/tools/jsonb/read.js.map +1 -0
  267. package/dist/adapters/postgresql/tools/jsonb/{advanced.d.ts → transform.d.ts} +1 -13
  268. package/dist/adapters/postgresql/tools/jsonb/transform.d.ts.map +1 -0
  269. package/dist/adapters/postgresql/tools/jsonb/{advanced.js → transform.js} +39 -361
  270. package/dist/adapters/postgresql/tools/jsonb/transform.js.map +1 -0
  271. package/dist/adapters/postgresql/tools/jsonb/write.d.ts +14 -0
  272. package/dist/adapters/postgresql/tools/jsonb/write.d.ts.map +1 -0
  273. package/dist/adapters/postgresql/tools/jsonb/write.js +468 -0
  274. package/dist/adapters/postgresql/tools/jsonb/write.js.map +1 -0
  275. package/dist/adapters/postgresql/tools/kcache.d.ts.map +1 -1
  276. package/dist/adapters/postgresql/tools/kcache.js +116 -51
  277. package/dist/adapters/postgresql/tools/kcache.js.map +1 -1
  278. package/dist/adapters/postgresql/tools/ltree.d.ts.map +1 -1
  279. package/dist/adapters/postgresql/tools/ltree.js +358 -259
  280. package/dist/adapters/postgresql/tools/ltree.js.map +1 -1
  281. package/dist/adapters/postgresql/tools/monitoring/analysis.d.ts +15 -0
  282. package/dist/adapters/postgresql/tools/monitoring/analysis.d.ts.map +1 -0
  283. package/dist/adapters/postgresql/tools/{monitoring.js → monitoring/analysis.js} +37 -361
  284. package/dist/adapters/postgresql/tools/monitoring/analysis.js.map +1 -0
  285. package/dist/adapters/postgresql/tools/monitoring/basic.d.ts +17 -0
  286. package/dist/adapters/postgresql/tools/monitoring/basic.d.ts.map +1 -0
  287. package/dist/adapters/postgresql/tools/monitoring/basic.js +432 -0
  288. package/dist/adapters/postgresql/tools/monitoring/basic.js.map +1 -0
  289. package/dist/adapters/postgresql/tools/monitoring/index.d.ts +16 -0
  290. package/dist/adapters/postgresql/tools/monitoring/index.d.ts.map +1 -0
  291. package/dist/adapters/postgresql/tools/monitoring/index.js +31 -0
  292. package/dist/adapters/postgresql/tools/monitoring/index.js.map +1 -0
  293. package/dist/adapters/postgresql/tools/partitioning/index.d.ts +15 -0
  294. package/dist/adapters/postgresql/tools/partitioning/index.d.ts.map +1 -0
  295. package/dist/adapters/postgresql/tools/partitioning/index.js +23 -0
  296. package/dist/adapters/postgresql/tools/partitioning/index.js.map +1 -0
  297. package/dist/adapters/postgresql/tools/partitioning/info.d.ts +11 -0
  298. package/dist/adapters/postgresql/tools/partitioning/info.d.ts.map +1 -0
  299. package/dist/adapters/postgresql/tools/partitioning/info.js +302 -0
  300. package/dist/adapters/postgresql/tools/partitioning/info.js.map +1 -0
  301. package/dist/adapters/postgresql/tools/partitioning/management.d.ts +28 -0
  302. package/dist/adapters/postgresql/tools/partitioning/management.d.ts.map +1 -0
  303. package/dist/adapters/postgresql/tools/{partitioning.js → partitioning/management.js} +48 -307
  304. package/dist/adapters/postgresql/tools/partitioning/management.js.map +1 -0
  305. package/dist/adapters/postgresql/tools/partman/helpers.d.ts +29 -0
  306. package/dist/adapters/postgresql/tools/partman/helpers.d.ts.map +1 -0
  307. package/dist/adapters/postgresql/tools/partman/helpers.js +59 -0
  308. package/dist/adapters/postgresql/tools/partman/helpers.js.map +1 -0
  309. package/dist/adapters/postgresql/tools/partman/index.d.ts +2 -1
  310. package/dist/adapters/postgresql/tools/partman/index.d.ts.map +1 -1
  311. package/dist/adapters/postgresql/tools/partman/index.js +4 -2
  312. package/dist/adapters/postgresql/tools/partman/index.js.map +1 -1
  313. package/dist/adapters/postgresql/tools/partman/maintenance.d.ts +20 -0
  314. package/dist/adapters/postgresql/tools/partman/maintenance.d.ts.map +1 -0
  315. package/dist/adapters/postgresql/tools/partman/maintenance.js +496 -0
  316. package/dist/adapters/postgresql/tools/partman/maintenance.js.map +1 -0
  317. package/dist/adapters/postgresql/tools/partman/management.d.ts.map +1 -1
  318. package/dist/adapters/postgresql/tools/partman/management.js +452 -417
  319. package/dist/adapters/postgresql/tools/partman/management.js.map +1 -1
  320. package/dist/adapters/postgresql/tools/partman/operations.d.ts +1 -13
  321. package/dist/adapters/postgresql/tools/partman/operations.d.ts.map +1 -1
  322. package/dist/adapters/postgresql/tools/partman/operations.js +173 -654
  323. package/dist/adapters/postgresql/tools/partman/operations.js.map +1 -1
  324. package/dist/adapters/postgresql/tools/performance/analysis.d.ts.map +1 -1
  325. package/dist/adapters/postgresql/tools/performance/analysis.js +79 -45
  326. package/dist/adapters/postgresql/tools/performance/analysis.js.map +1 -1
  327. package/dist/adapters/postgresql/tools/performance/monitoring.d.ts.map +1 -1
  328. package/dist/adapters/postgresql/tools/performance/monitoring.js +83 -55
  329. package/dist/adapters/postgresql/tools/performance/monitoring.js.map +1 -1
  330. package/dist/adapters/postgresql/tools/performance/optimization.d.ts.map +1 -1
  331. package/dist/adapters/postgresql/tools/performance/optimization.js +18 -11
  332. package/dist/adapters/postgresql/tools/performance/optimization.js.map +1 -1
  333. package/dist/adapters/postgresql/tools/performance/stats.d.ts.map +1 -1
  334. package/dist/adapters/postgresql/tools/performance/stats.js +441 -286
  335. package/dist/adapters/postgresql/tools/performance/stats.js.map +1 -1
  336. package/dist/adapters/postgresql/tools/pgcrypto.d.ts.map +1 -1
  337. package/dist/adapters/postgresql/tools/pgcrypto.js +67 -79
  338. package/dist/adapters/postgresql/tools/pgcrypto.js.map +1 -1
  339. package/dist/adapters/postgresql/tools/postgis/advanced.d.ts.map +1 -1
  340. package/dist/adapters/postgresql/tools/postgis/advanced.js +30 -25
  341. package/dist/adapters/postgresql/tools/postgis/advanced.js.map +1 -1
  342. package/dist/adapters/postgresql/tools/postgis/basic.d.ts.map +1 -1
  343. package/dist/adapters/postgresql/tools/postgis/basic.js +137 -100
  344. package/dist/adapters/postgresql/tools/postgis/basic.js.map +1 -1
  345. package/dist/adapters/postgresql/tools/schema/index.d.ts +16 -0
  346. package/dist/adapters/postgresql/tools/schema/index.d.ts.map +1 -0
  347. package/dist/adapters/postgresql/tools/schema/index.js +32 -0
  348. package/dist/adapters/postgresql/tools/schema/index.js.map +1 -0
  349. package/dist/adapters/postgresql/tools/schema/objects.d.ts +15 -0
  350. package/dist/adapters/postgresql/tools/schema/objects.d.ts.map +1 -0
  351. package/dist/adapters/postgresql/tools/schema/objects.js +378 -0
  352. package/dist/adapters/postgresql/tools/schema/objects.js.map +1 -0
  353. package/dist/adapters/postgresql/tools/schema/views.d.ts +15 -0
  354. package/dist/adapters/postgresql/tools/schema/views.d.ts.map +1 -0
  355. package/dist/adapters/postgresql/tools/{schema.js → schema/views.js} +91 -339
  356. package/dist/adapters/postgresql/tools/schema/views.js.map +1 -0
  357. package/dist/adapters/postgresql/tools/stats/advanced.d.ts.map +1 -1
  358. package/dist/adapters/postgresql/tools/stats/advanced.js +40 -235
  359. package/dist/adapters/postgresql/tools/stats/advanced.js.map +1 -1
  360. package/dist/adapters/postgresql/tools/stats/basic.d.ts.map +1 -1
  361. package/dist/adapters/postgresql/tools/stats/basic.js +45 -30
  362. package/dist/adapters/postgresql/tools/stats/basic.js.map +1 -1
  363. package/dist/adapters/postgresql/tools/stats/math-utils.d.ts +33 -0
  364. package/dist/adapters/postgresql/tools/stats/math-utils.d.ts.map +1 -0
  365. package/dist/adapters/postgresql/tools/stats/math-utils.js +225 -0
  366. package/dist/adapters/postgresql/tools/stats/math-utils.js.map +1 -0
  367. package/dist/adapters/postgresql/tools/text/index.d.ts +16 -0
  368. package/dist/adapters/postgresql/tools/text/index.d.ts.map +1 -0
  369. package/dist/adapters/postgresql/tools/text/index.js +33 -0
  370. package/dist/adapters/postgresql/tools/text/index.js.map +1 -0
  371. package/dist/adapters/postgresql/tools/text/matching.d.ts +17 -0
  372. package/dist/adapters/postgresql/tools/text/matching.d.ts.map +1 -0
  373. package/dist/adapters/postgresql/tools/text/matching.js +565 -0
  374. package/dist/adapters/postgresql/tools/text/matching.js.map +1 -0
  375. package/dist/adapters/postgresql/tools/text/search.d.ts +17 -0
  376. package/dist/adapters/postgresql/tools/text/search.d.ts.map +1 -0
  377. package/dist/adapters/postgresql/tools/text/search.js +653 -0
  378. package/dist/adapters/postgresql/tools/text/search.js.map +1 -0
  379. package/dist/adapters/postgresql/tools/transactions.d.ts.map +1 -1
  380. package/dist/adapters/postgresql/tools/transactions.js +11 -27
  381. package/dist/adapters/postgresql/tools/transactions.js.map +1 -1
  382. package/dist/adapters/postgresql/tools/vector/{basic.d.ts → data.d.ts} +10 -8
  383. package/dist/adapters/postgresql/tools/vector/data.d.ts.map +1 -0
  384. package/dist/adapters/postgresql/tools/vector/data.js +540 -0
  385. package/dist/adapters/postgresql/tools/vector/data.js.map +1 -0
  386. package/dist/adapters/postgresql/tools/vector/index.d.ts.map +1 -1
  387. package/dist/adapters/postgresql/tools/vector/index.js +6 -2
  388. package/dist/adapters/postgresql/tools/vector/index.js.map +1 -1
  389. package/dist/adapters/postgresql/tools/vector/management.d.ts +11 -0
  390. package/dist/adapters/postgresql/tools/vector/management.d.ts.map +1 -0
  391. package/dist/adapters/postgresql/tools/vector/management.js +425 -0
  392. package/dist/adapters/postgresql/tools/vector/management.js.map +1 -0
  393. package/dist/adapters/postgresql/tools/vector/query.d.ts +14 -0
  394. package/dist/adapters/postgresql/tools/vector/query.d.ts.map +1 -0
  395. package/dist/adapters/postgresql/tools/vector/query.js +767 -0
  396. package/dist/adapters/postgresql/tools/vector/query.js.map +1 -0
  397. package/dist/adapters/postgresql/tools/vector/{advanced.d.ts → search-advanced.d.ts} +4 -5
  398. package/dist/adapters/postgresql/tools/vector/search-advanced.d.ts.map +1 -0
  399. package/dist/adapters/postgresql/tools/vector/search-advanced.js +626 -0
  400. package/dist/adapters/postgresql/tools/vector/search-advanced.js.map +1 -0
  401. package/dist/auth/auth-context.d.ts +28 -0
  402. package/dist/auth/auth-context.d.ts.map +1 -0
  403. package/dist/auth/auth-context.js +37 -0
  404. package/dist/auth/auth-context.js.map +1 -0
  405. package/dist/auth/scope-map.d.ts +20 -0
  406. package/dist/auth/scope-map.d.ts.map +1 -0
  407. package/dist/auth/scope-map.js +40 -0
  408. package/dist/auth/scope-map.js.map +1 -0
  409. package/dist/auth/scopes.d.ts.map +1 -1
  410. package/dist/auth/scopes.js +2 -0
  411. package/dist/auth/scopes.js.map +1 -1
  412. package/dist/cli/args.d.ts +3 -2
  413. package/dist/cli/args.d.ts.map +1 -1
  414. package/dist/cli/args.js +4 -3
  415. package/dist/cli/args.js.map +1 -1
  416. package/dist/cli.js +11 -5
  417. package/dist/cli.js.map +1 -1
  418. package/dist/codemode/api/aliases.d.ts +14 -0
  419. package/dist/codemode/api/aliases.d.ts.map +1 -0
  420. package/dist/codemode/api/aliases.js +503 -0
  421. package/dist/codemode/api/aliases.js.map +1 -0
  422. package/dist/codemode/api/group-api.d.ts +23 -0
  423. package/dist/codemode/api/group-api.d.ts.map +1 -0
  424. package/dist/codemode/api/group-api.js +179 -0
  425. package/dist/codemode/api/group-api.js.map +1 -0
  426. package/dist/codemode/{api.d.ts → api/index.d.ts} +5 -4
  427. package/dist/codemode/api/index.d.ts.map +1 -0
  428. package/dist/codemode/api/index.js +192 -0
  429. package/dist/codemode/api/index.js.map +1 -0
  430. package/dist/codemode/api/maps.d.ts +47 -0
  431. package/dist/codemode/api/maps.d.ts.map +1 -0
  432. package/dist/codemode/api/maps.js +523 -0
  433. package/dist/codemode/api/maps.js.map +1 -0
  434. package/dist/codemode/api/normalize.d.ts +13 -0
  435. package/dist/codemode/api/normalize.d.ts.map +1 -0
  436. package/dist/codemode/api/normalize.js +120 -0
  437. package/dist/codemode/api/normalize.js.map +1 -0
  438. package/dist/codemode/index.d.ts +1 -3
  439. package/dist/codemode/index.d.ts.map +1 -1
  440. package/dist/codemode/index.js +1 -5
  441. package/dist/codemode/index.js.map +1 -1
  442. package/dist/codemode/sandbox.d.ts +14 -1
  443. package/dist/codemode/sandbox.d.ts.map +1 -1
  444. package/dist/codemode/sandbox.js +66 -44
  445. package/dist/codemode/sandbox.js.map +1 -1
  446. package/dist/codemode/types.d.ts.map +1 -1
  447. package/dist/codemode/types.js +3 -0
  448. package/dist/codemode/types.js.map +1 -1
  449. package/dist/constants/ServerInstructions.d.ts +5 -1
  450. package/dist/constants/ServerInstructions.d.ts.map +1 -1
  451. package/dist/constants/ServerInstructions.js +91 -43
  452. package/dist/constants/ServerInstructions.js.map +1 -1
  453. package/dist/filtering/ToolConstants.d.ts +22 -19
  454. package/dist/filtering/ToolConstants.d.ts.map +1 -1
  455. package/dist/filtering/ToolConstants.js +48 -37
  456. package/dist/filtering/ToolConstants.js.map +1 -1
  457. package/dist/filtering/ToolFilter.d.ts.map +1 -1
  458. package/dist/filtering/ToolFilter.js +10 -13
  459. package/dist/filtering/ToolFilter.js.map +1 -1
  460. package/dist/pool/ConnectionPool.js +1 -1
  461. package/dist/pool/ConnectionPool.js.map +1 -1
  462. package/dist/server/McpServer.d.ts +1 -1
  463. package/dist/server/McpServer.d.ts.map +1 -1
  464. package/dist/server/McpServer.js +1 -2
  465. package/dist/server/McpServer.js.map +1 -1
  466. package/dist/transports/http.d.ts +44 -10
  467. package/dist/transports/http.d.ts.map +1 -1
  468. package/dist/transports/http.js +327 -40
  469. package/dist/transports/http.js.map +1 -1
  470. package/dist/types/filtering.d.ts +2 -2
  471. package/dist/types/filtering.d.ts.map +1 -1
  472. package/dist/utils/icons.d.ts.map +1 -1
  473. package/dist/utils/icons.js +5 -0
  474. package/dist/utils/icons.js.map +1 -1
  475. package/dist/utils/logger.d.ts +6 -6
  476. package/dist/utils/logger.d.ts.map +1 -1
  477. package/dist/utils/logger.js +18 -15
  478. package/dist/utils/logger.js.map +1 -1
  479. package/dist/utils/progress-utils.d.ts +2 -2
  480. package/dist/utils/progress-utils.d.ts.map +1 -1
  481. package/dist/utils/progress-utils.js +2 -3
  482. package/dist/utils/progress-utils.js.map +1 -1
  483. package/dist/utils/version.d.ts +9 -0
  484. package/dist/utils/version.d.ts.map +1 -0
  485. package/dist/utils/version.js +12 -0
  486. package/dist/utils/version.js.map +1 -0
  487. package/dist/utils/where-clause.d.ts +4 -0
  488. package/dist/utils/where-clause.d.ts.map +1 -1
  489. package/dist/utils/where-clause.js +40 -0
  490. package/dist/utils/where-clause.js.map +1 -1
  491. package/package.json +19 -14
  492. package/dist/adapters/postgresql/schemas/core.d.ts.map +0 -1
  493. package/dist/adapters/postgresql/schemas/core.js.map +0 -1
  494. package/dist/adapters/postgresql/schemas/extensions.d.ts +0 -833
  495. package/dist/adapters/postgresql/schemas/extensions.d.ts.map +0 -1
  496. package/dist/adapters/postgresql/schemas/extensions.js +0 -1170
  497. package/dist/adapters/postgresql/schemas/extensions.js.map +0 -1
  498. package/dist/adapters/postgresql/schemas/jsonb.d.ts +0 -533
  499. package/dist/adapters/postgresql/schemas/jsonb.d.ts.map +0 -1
  500. package/dist/adapters/postgresql/schemas/jsonb.js +0 -790
  501. package/dist/adapters/postgresql/schemas/jsonb.js.map +0 -1
  502. package/dist/adapters/postgresql/schemas/postgis.d.ts.map +0 -1
  503. package/dist/adapters/postgresql/schemas/postgis.js.map +0 -1
  504. package/dist/adapters/postgresql/schemas/stats.d.ts.map +0 -1
  505. package/dist/adapters/postgresql/schemas/stats.js.map +0 -1
  506. package/dist/adapters/postgresql/tools/citext.d.ts +0 -18
  507. package/dist/adapters/postgresql/tools/citext.d.ts.map +0 -1
  508. package/dist/adapters/postgresql/tools/citext.js.map +0 -1
  509. package/dist/adapters/postgresql/tools/jsonb/advanced.d.ts.map +0 -1
  510. package/dist/adapters/postgresql/tools/jsonb/advanced.js.map +0 -1
  511. package/dist/adapters/postgresql/tools/jsonb/basic.d.ts +0 -20
  512. package/dist/adapters/postgresql/tools/jsonb/basic.d.ts.map +0 -1
  513. package/dist/adapters/postgresql/tools/jsonb/basic.js +0 -915
  514. package/dist/adapters/postgresql/tools/jsonb/basic.js.map +0 -1
  515. package/dist/adapters/postgresql/tools/monitoring.d.ts +0 -13
  516. package/dist/adapters/postgresql/tools/monitoring.d.ts.map +0 -1
  517. package/dist/adapters/postgresql/tools/monitoring.js.map +0 -1
  518. package/dist/adapters/postgresql/tools/partitioning.d.ts +0 -13
  519. package/dist/adapters/postgresql/tools/partitioning.d.ts.map +0 -1
  520. package/dist/adapters/postgresql/tools/partitioning.js.map +0 -1
  521. package/dist/adapters/postgresql/tools/schema.d.ts +0 -13
  522. package/dist/adapters/postgresql/tools/schema.d.ts.map +0 -1
  523. package/dist/adapters/postgresql/tools/schema.js.map +0 -1
  524. package/dist/adapters/postgresql/tools/text.d.ts +0 -13
  525. package/dist/adapters/postgresql/tools/text.d.ts.map +0 -1
  526. package/dist/adapters/postgresql/tools/text.js +0 -903
  527. package/dist/adapters/postgresql/tools/text.js.map +0 -1
  528. package/dist/adapters/postgresql/tools/vector/advanced.d.ts.map +0 -1
  529. package/dist/adapters/postgresql/tools/vector/advanced.js +0 -958
  530. package/dist/adapters/postgresql/tools/vector/advanced.js.map +0 -1
  531. package/dist/adapters/postgresql/tools/vector/basic.d.ts.map +0 -1
  532. package/dist/adapters/postgresql/tools/vector/basic.js +0 -1165
  533. package/dist/adapters/postgresql/tools/vector/basic.js.map +0 -1
  534. package/dist/codemode/api.d.ts.map +0 -1
  535. package/dist/codemode/api.js +0 -1510
  536. package/dist/codemode/api.js.map +0 -1
  537. package/dist/codemode/sandbox-factory.d.ts +0 -72
  538. package/dist/codemode/sandbox-factory.d.ts.map +0 -1
  539. package/dist/codemode/sandbox-factory.js +0 -88
  540. package/dist/codemode/sandbox-factory.js.map +0 -1
  541. package/dist/codemode/worker-sandbox.d.ts +0 -82
  542. package/dist/codemode/worker-sandbox.d.ts.map +0 -1
  543. package/dist/codemode/worker-sandbox.js +0 -244
  544. package/dist/codemode/worker-sandbox.js.map +0 -1
  545. package/dist/codemode/worker-script.d.ts +0 -8
  546. package/dist/codemode/worker-script.d.ts.map +0 -1
  547. package/dist/codemode/worker-script.js +0 -113
  548. package/dist/codemode/worker-script.js.map +0 -1
@@ -0,0 +1,496 @@
1
+ /**
2
+ * PostgreSQL pg_partman Extension Tools - Maintenance
3
+ *
4
+ * Maintenance and lifecycle tools: set_retention, undo_partition, analyze_health.
5
+ */
6
+ import { z } from "zod";
7
+ import { write, destructive, readOnly } from "../../../../utils/annotations.js";
8
+ import { getToolIcons } from "../../../../utils/icons.js";
9
+ import { formatPostgresError } from "../core/error-helpers.js";
10
+ import { PartmanRetentionSchema, PartmanRetentionSchemaBase, PartmanUndoPartitionSchema, PartmanUndoPartitionSchemaBase, PartmanSetRetentionOutputSchema, PartmanUndoPartitionOutputSchema, PartmanAnalyzeHealthOutputSchema, } from "../../schemas/index.js";
11
+ import { getPartmanSchema, callPartmanProcedure } from "./helpers.js";
12
+ /**
13
+ * Configure retention policies
14
+ */
15
+ export function createPartmanSetRetentionTool(adapter) {
16
+ return {
17
+ name: "pg_partman_set_retention",
18
+ description: `Configure retention policy for a partition set.
19
+ Partitions older than the retention period will be dropped or detached during maintenance.`,
20
+ group: "partman",
21
+ inputSchema: PartmanRetentionSchemaBase,
22
+ outputSchema: PartmanSetRetentionOutputSchema,
23
+ annotations: write("Set Partition Retention"),
24
+ icons: getToolIcons("partman", write("Set Partition Retention")),
25
+ handler: async (params, _context) => {
26
+ try {
27
+ const { parentTable, retention, retentionKeepTable } = PartmanRetentionSchema.parse(params);
28
+ // Validate required parentTable
29
+ if (!parentTable) {
30
+ return {
31
+ success: false,
32
+ error: "Missing required parameter: parentTable.",
33
+ hint: 'Example: pg_partman_set_retention({ parentTable: "public.events", retention: "30 days" })',
34
+ };
35
+ }
36
+ const validatedParentTable = parentTable;
37
+ const partmanSchema = await getPartmanSchema(adapter);
38
+ // If retention is omitted (undefined), it's required
39
+ if (retention === undefined) {
40
+ return {
41
+ success: false,
42
+ error: "Missing required parameter: retention.",
43
+ hint: 'Provide a retention period (e.g., "30 days") or pass null to explicitly disable retention. ' +
44
+ 'Example: pg_partman_set_retention({ parentTable: "public.events", retention: "30 days" })',
45
+ };
46
+ }
47
+ // Special case: explicit null or empty string means disable/clear retention
48
+ if (retention === null || retention === "") {
49
+ const sql = `
50
+ UPDATE ${partmanSchema}.part_config
51
+ SET retention = NULL
52
+ WHERE parent_table = $1
53
+ `;
54
+ const result = await adapter.executeQuery(sql, [
55
+ validatedParentTable,
56
+ ]);
57
+ if ((result.rowsAffected ?? 0) === 0) {
58
+ return {
59
+ success: false,
60
+ error: `No pg_partman configuration found for ${validatedParentTable}.`,
61
+ hint: "Use pg_partman_show_config to list existing partition sets.",
62
+ };
63
+ }
64
+ return {
65
+ success: true,
66
+ parentTable: validatedParentTable,
67
+ retention: null,
68
+ message: "Retention policy disabled - partitions will no longer be automatically dropped or detached",
69
+ };
70
+ }
71
+ const validatedRetention = retention;
72
+ // Validate retention format - must be valid PostgreSQL interval
73
+ // Try to parse it to catch obvious errors before storing garbage
74
+ const validIntervalPattern = /^\d+\s*(second|minute|hour|day|week|month|year)s?$/i;
75
+ const validNumericPattern = /^\d+$/; // Allow pure numeric for integer-based partitions
76
+ if (!validIntervalPattern.test(validatedRetention) &&
77
+ !validNumericPattern.test(validatedRetention)) {
78
+ return {
79
+ success: false,
80
+ error: `Invalid retention format '${validatedRetention}'.`,
81
+ hint: "Use PostgreSQL interval syntax (e.g., '30 days', '6 months', '1 year') " +
82
+ "or integer value for integer-based partitions.",
83
+ };
84
+ }
85
+ const updates = [`retention = '${validatedRetention}'`];
86
+ if (retentionKeepTable !== undefined) {
87
+ updates.push(`retention_keep_table = ${String(retentionKeepTable)}`);
88
+ }
89
+ const sql = `
90
+ UPDATE ${partmanSchema}.part_config
91
+ SET ${updates.join(", ")}
92
+ WHERE parent_table = $1
93
+ `;
94
+ const result = await adapter.executeQuery(sql, [validatedParentTable]);
95
+ if ((result.rowsAffected ?? 0) === 0) {
96
+ return {
97
+ success: false,
98
+ error: `No pg_partman configuration found for ${validatedParentTable}.`,
99
+ hint: "Use pg_partman_show_config to list existing partition sets.",
100
+ };
101
+ }
102
+ // Check partition type to use appropriate terminology in message
103
+ const configResult = await adapter.executeQuery(`SELECT partition_type FROM ${partmanSchema}.part_config WHERE parent_table = $1`, [validatedParentTable]);
104
+ const partitionTypeRaw = configResult.rows?.[0]?.["partition_type"];
105
+ const partitionType = typeof partitionTypeRaw === "string" ? partitionTypeRaw : "range";
106
+ const isIntegerBased = validNumericPattern.test(validatedRetention) ||
107
+ partitionType.toLowerCase() === "native" ||
108
+ partitionType.toLowerCase().includes("id");
109
+ // Use "below" for integer-based, "older than" for time-based partitions
110
+ const retentionPhrase = isIntegerBased
111
+ ? `partitions with values below ${validatedRetention}`
112
+ : `partitions older than ${validatedRetention}`;
113
+ return {
114
+ success: true,
115
+ parentTable: validatedParentTable,
116
+ retention: validatedRetention,
117
+ retentionKeepTable: retentionKeepTable ?? false,
118
+ message: `Retention policy set: ${retentionPhrase} will be ${retentionKeepTable === true ? "detached" : "dropped"}`,
119
+ };
120
+ }
121
+ catch (error) {
122
+ return {
123
+ success: false,
124
+ error: formatPostgresError(error, {
125
+ tool: "pg_partman_set_retention",
126
+ }),
127
+ };
128
+ }
129
+ },
130
+ };
131
+ }
132
+ /**
133
+ * Undo partitioning - convert back to regular table
134
+ */
135
+ export function createPartmanUndoPartitionTool(adapter) {
136
+ return {
137
+ name: "pg_partman_undo_partition",
138
+ description: `Convert a partitioned table back to a regular table by moving all data from child partitions to a TARGET table.
139
+
140
+ IMPORTANT: The targetTable parameter is REQUIRED. pg_partman does not consolidate data back to the parent table directly.
141
+ You must first create an empty table with the same structure as the parent, then specify it as targetTable.
142
+
143
+ Example: undoPartition({ parentTable: "public.events", targetTable: "public.events_consolidated" })`,
144
+ group: "partman",
145
+ inputSchema: PartmanUndoPartitionSchemaBase,
146
+ outputSchema: PartmanUndoPartitionOutputSchema,
147
+ annotations: destructive("Undo Partitioning"),
148
+ icons: getToolIcons("partman", destructive("Undo Partitioning")),
149
+ handler: async (params, _context) => {
150
+ try {
151
+ const { parentTable, targetTable, batchSize, keepTable } = PartmanUndoPartitionSchema.parse(params);
152
+ // Validate required parameters with clear error messages
153
+ if (!parentTable || !targetTable) {
154
+ const missing = [];
155
+ if (!parentTable)
156
+ missing.push("parentTable");
157
+ if (!targetTable)
158
+ missing.push("targetTable (or target)");
159
+ return {
160
+ success: false,
161
+ error: `Missing required parameters: ${missing.join(", ")}.`,
162
+ hint: 'Example: pg_partman_undo_partition({ parentTable: "public.events", targetTable: "public.events_archive" }). Target table must exist first.',
163
+ aliases: { target: "targetTable" },
164
+ };
165
+ }
166
+ // At this point, parentTable and targetTable are guaranteed to be defined
167
+ // Auto-prefix 'public.' schema when not specified (consistent with parentTable behavior)
168
+ const validatedParentTable = parentTable.includes(".")
169
+ ? parentTable
170
+ : `public.${parentTable}`;
171
+ const validatedTargetTable = targetTable.includes(".")
172
+ ? targetTable
173
+ : `public.${targetTable}`;
174
+ // Pre-validate: Check that target table exists before calling pg_partman
175
+ const partmanSchema = await getPartmanSchema(adapter);
176
+ // Parse target table name to check existence
177
+ const [targetSchema, targetTableName] = [
178
+ validatedTargetTable.split(".")[0],
179
+ validatedTargetTable.split(".")[1],
180
+ ];
181
+ const tableExistsResult = await adapter.executeQuery(`
182
+ SELECT 1 FROM information_schema.tables
183
+ WHERE table_schema = $1 AND table_name = $2
184
+ `, [targetSchema, targetTableName]);
185
+ if ((tableExistsResult.rows?.length ?? 0) === 0) {
186
+ return {
187
+ success: false,
188
+ error: `Target table '${validatedTargetTable}' does not exist.`,
189
+ hint: "pg_partman's undo_partition requires the target table to exist before consolidating data. " +
190
+ "Create the target table first with the same structure as the parent table.",
191
+ };
192
+ }
193
+ const args = [
194
+ `p_parent_table := '${validatedParentTable}'`,
195
+ `p_target_table := '${validatedTargetTable}'`,
196
+ ];
197
+ if (batchSize !== undefined && !isNaN(batchSize)) {
198
+ args.push(`p_loop_count := ${String(batchSize)}`);
199
+ }
200
+ if (keepTable !== undefined) {
201
+ args.push(`p_keep_table := ${String(keepTable)}`);
202
+ }
203
+ // undo_partition_proc is a PROCEDURE, not a function - use CALL syntax
204
+ // Uses callPartmanProcedure to set search_path, resolving hardcoded
205
+ // 'partman.*' references inside pg_partman's internal functions
206
+ const sql = `CALL ${partmanSchema}.undo_partition_proc(${args.join(", ")})`;
207
+ try {
208
+ await callPartmanProcedure(adapter, partmanSchema, sql);
209
+ }
210
+ catch (error) {
211
+ const errorMsg = error instanceof Error ? error.message : String(error);
212
+ const firstLine = errorMsg.split("\n")[0] ?? errorMsg;
213
+ return {
214
+ success: false,
215
+ parentTable: validatedParentTable,
216
+ targetTable: validatedTargetTable,
217
+ error: firstLine.includes("No entry in part_config")
218
+ ? `No pg_partman configuration found for '${validatedParentTable}'.`
219
+ : `Failed to undo partition: ${firstLine}`,
220
+ hint: "Use pg_partman_show_config to verify the partition set exists and is properly configured.",
221
+ };
222
+ }
223
+ // Note: pg_partman's undo_partition detaches child partitions but leaves them as standalone tables
224
+ // This allows data recovery if needed, but users should clean up manually
225
+ const keepTableValue = keepTable ?? true;
226
+ return {
227
+ success: true,
228
+ parentTable: validatedParentTable,
229
+ targetTable: validatedTargetTable,
230
+ message: `Partition set removed for ${validatedParentTable}. Data consolidated to ${validatedTargetTable}.`,
231
+ note: keepTableValue
232
+ ? "The parent table and detached child partitions still exist. " +
233
+ `To clean up: DROP TABLE ${validatedParentTable} CASCADE;`
234
+ : `The parent table still exists. To clean up: DROP TABLE ${validatedParentTable} CASCADE;`,
235
+ };
236
+ }
237
+ catch (error) {
238
+ return {
239
+ success: false,
240
+ error: formatPostgresError(error, {
241
+ tool: "pg_partman_undo_partition",
242
+ }),
243
+ };
244
+ }
245
+ },
246
+ };
247
+ }
248
+ /**
249
+ * Analyze partition health and provide recommendations
250
+ */
251
+ export function createPartmanAnalyzeHealthTool(adapter) {
252
+ return {
253
+ name: "pg_partman_analyze_partition_health",
254
+ description: `Analyze the health of partition sets managed by pg_partman.
255
+ Checks for issues like data in default partitions, missing premake partitions,
256
+ stale maintenance, and retention configuration.`,
257
+ group: "partman",
258
+ inputSchema: z
259
+ .preprocess((input) => {
260
+ if (typeof input !== "object" || input === null)
261
+ return input;
262
+ const raw = input;
263
+ const result = { ...raw };
264
+ // Alias: table → parentTable
265
+ if (result.table && !result.parentTable) {
266
+ result.parentTable = result.table;
267
+ }
268
+ // Auto-prefix public. for parentTable when no schema specified
269
+ if (result.parentTable && !result.parentTable.includes(".")) {
270
+ result.parentTable = `public.${result.parentTable}`;
271
+ }
272
+ return result;
273
+ }, z.object({
274
+ parentTable: z
275
+ .string()
276
+ .optional()
277
+ .describe("Specific parent table to analyze (all if omitted)"),
278
+ limit: z
279
+ .any()
280
+ .optional()
281
+ .describe("Maximum number of partition sets to analyze (default: 50, use 0 for all)"),
282
+ }))
283
+ .default({}),
284
+ outputSchema: PartmanAnalyzeHealthOutputSchema,
285
+ annotations: readOnly("Analyze Partition Health"),
286
+ icons: getToolIcons("partman", readOnly("Analyze Partition Health")),
287
+ handler: async (params, _context) => {
288
+ try {
289
+ const AnalyzeHealthSchema = z
290
+ .preprocess((input) => {
291
+ if (typeof input !== "object" || input === null)
292
+ return input;
293
+ const raw = input;
294
+ const result = { ...raw };
295
+ // Alias: table → parentTable
296
+ if (result.table && !result.parentTable) {
297
+ result.parentTable = result.table;
298
+ }
299
+ // Auto-prefix public. for parentTable when no schema specified
300
+ if (result.parentTable && !result.parentTable.includes(".")) {
301
+ result.parentTable = `public.${result.parentTable}`;
302
+ }
303
+ return result;
304
+ }, z.object({
305
+ parentTable: z.string().optional(),
306
+ limit: z.coerce.number().optional(),
307
+ }))
308
+ .default({});
309
+ const parsed = AnalyzeHealthSchema.parse(params ?? {});
310
+ const queryParams = [];
311
+ const partmanSchema = await getPartmanSchema(adapter);
312
+ // Get total count first for pagination
313
+ let countSql = `SELECT COUNT(*) as total FROM ${partmanSchema}.part_config`;
314
+ const countParams = [];
315
+ if (parsed.parentTable !== undefined) {
316
+ countSql += " WHERE parent_table = $1";
317
+ countParams.push(parsed.parentTable);
318
+ }
319
+ const countResult = await adapter.executeQuery(countSql, countParams);
320
+ const totalCount = Number(countResult.rows?.[0]?.["total"] ?? 0);
321
+ // Apply limit (default 50, 0 means no limit)
322
+ const rawLimit = parsed.limit ?? 50;
323
+ const limit = isNaN(rawLimit) ? 50 : rawLimit;
324
+ const applyLimit = limit > 0;
325
+ let configSql = `
326
+ SELECT
327
+ parent_table,
328
+ control,
329
+ partition_interval,
330
+ premake,
331
+ retention,
332
+ retention_keep_table,
333
+ automatic_maintenance,
334
+ template_table
335
+ FROM ${partmanSchema}.part_config
336
+ `;
337
+ if (parsed.parentTable !== undefined) {
338
+ configSql += " WHERE parent_table = $1";
339
+ queryParams.push(parsed.parentTable);
340
+ }
341
+ configSql += " ORDER BY parent_table";
342
+ if (applyLimit) {
343
+ configSql += ` LIMIT ${String(limit)}`;
344
+ }
345
+ const configResult = await adapter.executeQuery(configSql, queryParams);
346
+ const configs = configResult.rows ?? [];
347
+ // If a specific table was requested but not found, indicate that clearly
348
+ if (parsed.parentTable !== undefined && configs.length === 0) {
349
+ return {
350
+ overallHealth: "not_found",
351
+ partitionSets: [],
352
+ message: `No pg_partman configuration found for table '${parsed.parentTable}'. ` +
353
+ `Use pg_partman_show_config to list configured partition sets, or ` +
354
+ `pg_partman_create_parent to configure partitioning for this table.`,
355
+ };
356
+ }
357
+ const healthChecks = [];
358
+ for (const config of configs) {
359
+ const parentTable = config["parent_table"];
360
+ const issues = [];
361
+ const warnings = [];
362
+ const recommendations = [];
363
+ // Check if parent table still exists (handle orphaned configs)
364
+ const [tableSchema, tableName] = parentTable.includes(".")
365
+ ? [parentTable.split(".")[0], parentTable.split(".")[1]]
366
+ : ["public", parentTable];
367
+ const tableExistsResult = await adapter.executeQuery(`
368
+ SELECT 1 FROM information_schema.tables
369
+ WHERE table_schema = $1 AND table_name = $2
370
+ `, [tableSchema, tableName]);
371
+ if ((tableExistsResult.rows?.length ?? 0) === 0) {
372
+ // Orphaned config - table no longer exists
373
+ healthChecks.push({
374
+ parentTable,
375
+ issues: [
376
+ "Orphaned configuration - parent table no longer exists",
377
+ ],
378
+ warnings: [],
379
+ recommendations: [
380
+ "Remove orphaned config from part_config table or recreate the table",
381
+ ],
382
+ partitionCount: 0,
383
+ hasDefaultPartition: false,
384
+ hasDataInDefault: false,
385
+ });
386
+ continue;
387
+ }
388
+ let partitionCount;
389
+ try {
390
+ const partCountResult = await adapter.executeQuery(`
391
+ SELECT COUNT(*) as count
392
+ FROM ${partmanSchema}.show_partitions(p_parent_table := $1)
393
+ `, [parentTable]);
394
+ partitionCount = Number(partCountResult.rows?.[0]?.["count"] ?? 0);
395
+ }
396
+ catch (e) {
397
+ // If show_partitions fails, provide detailed error info
398
+ const errorMsg = e instanceof Error ? e.message : "Unknown error";
399
+ healthChecks.push({
400
+ parentTable,
401
+ issues: [`Failed to query partitions: ${errorMsg}`],
402
+ warnings: [],
403
+ recommendations: [
404
+ "Check that the table exists and is partitioned",
405
+ "Verify pg_partman configuration with pg_partman_show_config",
406
+ "If table was dropped, remove orphaned config from part_config",
407
+ ],
408
+ partitionCount: 0,
409
+ hasDefaultPartition: false,
410
+ hasDataInDefault: false,
411
+ });
412
+ continue;
413
+ }
414
+ const premake = config["premake"] ?? 4;
415
+ if (partitionCount < premake) {
416
+ warnings.push(`Only ${String(partitionCount)} partitions exist, premake is set to ${String(premake)}`);
417
+ recommendations.push("Run pg_partman_run_maintenance to create premake partitions");
418
+ }
419
+ // Check if default partition exists
420
+ const defaultCheckResult = await adapter.executeQuery(`
421
+ SELECT c.relname as default_partition, pn.nspname as default_schema
422
+ FROM pg_inherits i
423
+ JOIN pg_class c ON c.oid = i.inhrelid
424
+ JOIN pg_class p ON p.oid = i.inhparent
425
+ JOIN pg_namespace pn ON pn.oid = p.relnamespace
426
+ WHERE (pn.nspname || '.' || p.relname) = $1
427
+ AND c.relname LIKE '%_default'
428
+ `, [parentTable]);
429
+ const hasDefaultPartition = (defaultCheckResult.rows?.length ?? 0) > 0;
430
+ let hasDataInDefault = false;
431
+ // Use actual COUNT(*) instead of reltuples estimate — reltuples
432
+ // returns 0 or -1 for recently-inserted data before ANALYZE runs
433
+ if (hasDefaultPartition) {
434
+ const defSchema = defaultCheckResult.rows?.[0]?.["default_schema"];
435
+ const defTable = defaultCheckResult.rows?.[0]?.["default_partition"];
436
+ try {
437
+ const countResult = await adapter.executeQuery(`SELECT COUNT(*) as count FROM (SELECT 1 FROM ${defSchema}.${defTable} LIMIT 1) t`);
438
+ hasDataInDefault =
439
+ Number(countResult.rows?.[0]?.["count"] ?? 0) > 0;
440
+ }
441
+ catch {
442
+ // Default partition might not be accessible
443
+ }
444
+ }
445
+ if (hasDataInDefault) {
446
+ issues.push("Data found in default partition");
447
+ recommendations.push("Run pg_partman_partition_data to move data to child partitions");
448
+ }
449
+ // Note: Not having retention configured is often intentional (audit tables, etc.)
450
+ // Don't flag as warning to reduce noise; users can check config directly if needed
451
+ const autoMaint = config["automatic_maintenance"];
452
+ if (autoMaint !== "on") {
453
+ warnings.push("Automatic maintenance is not enabled");
454
+ recommendations.push("Schedule regular maintenance with pg_cron or enable automatic_maintenance");
455
+ }
456
+ healthChecks.push({
457
+ parentTable,
458
+ issues,
459
+ warnings,
460
+ recommendations,
461
+ partitionCount,
462
+ hasDefaultPartition,
463
+ hasDataInDefault,
464
+ });
465
+ }
466
+ const totalIssues = healthChecks.reduce((sum, h) => sum + h.issues.length, 0);
467
+ const totalWarnings = healthChecks.reduce((sum, h) => sum + h.warnings.length, 0);
468
+ const truncated = applyLimit && totalCount > limit;
469
+ return {
470
+ partitionSets: healthChecks,
471
+ truncated,
472
+ totalCount,
473
+ summary: {
474
+ totalPartitionSets: truncated ? totalCount : healthChecks.length,
475
+ totalIssues,
476
+ totalWarnings,
477
+ overallHealth: totalIssues === 0
478
+ ? totalWarnings === 0
479
+ ? "healthy"
480
+ : "warnings"
481
+ : "issues_found",
482
+ },
483
+ };
484
+ }
485
+ catch (error) {
486
+ return {
487
+ success: false,
488
+ error: formatPostgresError(error, {
489
+ tool: "pg_partman_analyze_partition_health",
490
+ }),
491
+ };
492
+ }
493
+ },
494
+ };
495
+ }
496
+ //# sourceMappingURL=maintenance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"maintenance.js","sourceRoot":"","sources":["../../../../../src/adapters/postgresql/tools/partman/maintenance.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EACL,sBAAsB,EACtB,0BAA0B,EAC1B,0BAA0B,EAC1B,8BAA8B,EAC9B,+BAA+B,EAC/B,gCAAgC,EAChC,gCAAgC,GACjC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACtE;;GAEG;AACH,MAAM,UAAU,6BAA6B,CAC3C,OAAwB;IAExB,OAAO;QACL,IAAI,EAAE,0BAA0B;QAChC,WAAW,EAAE;2FAC0E;QACvF,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,0BAA0B;QACvC,YAAY,EAAE,+BAA+B;QAC7C,WAAW,EAAE,KAAK,CAAC,yBAAyB,CAAC;QAC7C,KAAK,EAAE,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAChE,OAAO,EAAE,KAAK,EAAE,MAAe,EAAE,QAAwB,EAAE,EAAE;YAC3D,IAAI,CAAC;gBACH,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,kBAAkB,EAAE,GAClD,sBAAsB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBAEvC,gCAAgC;gBAChC,IAAI,CAAC,WAAW,EAAE,CAAC;oBACjB,OAAO;wBACL,OAAO,EAAE,KAAK;wBACd,KAAK,EAAE,0CAA0C;wBACjD,IAAI,EAAE,2FAA2F;qBAClG,CAAC;gBACJ,CAAC;gBAED,MAAM,oBAAoB,GAAG,WAAW,CAAC;gBACzC,MAAM,aAAa,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBAEtD,qDAAqD;gBACrD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;oBAC5B,OAAO;wBACL,OAAO,EAAE,KAAK;wBACd,KAAK,EAAE,wCAAwC;wBAC/C,IAAI,EACF,6FAA6F;4BAC7F,2FAA2F;qBAC9F,CAAC;gBACJ,CAAC;gBAED,4EAA4E;gBAC5E,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,EAAE,EAAE,CAAC;oBAC3C,MAAM,GAAG,GAAG;6BACO,aAAa;;;iBAGzB,CAAC;oBACR,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,GAAG,EAAE;wBAC7C,oBAAoB;qBACrB,CAAC,CAAC;oBAEH,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;wBACrC,OAAO;4BACL,OAAO,EAAE,KAAK;4BACd,KAAK,EAAE,yCAAyC,oBAAoB,GAAG;4BACvE,IAAI,EAAE,6DAA6D;yBACpE,CAAC;oBACJ,CAAC;oBAED,OAAO;wBACL,OAAO,EAAE,IAAI;wBACb,WAAW,EAAE,oBAAoB;wBACjC,SAAS,EAAE,IAAI;wBACf,OAAO,EACL,4FAA4F;qBAC/F,CAAC;gBACJ,CAAC;gBAED,MAAM,kBAAkB,GAAG,SAAS,CAAC;gBAErC,gEAAgE;gBAChE,iEAAiE;gBACjE,MAAM,oBAAoB,GACxB,qDAAqD,CAAC;gBACxD,MAAM,mBAAmB,GAAG,OAAO,CAAC,CAAC,kDAAkD;gBAEvF,IACE,CAAC,oBAAoB,CAAC,IAAI,CAAC,kBAAkB,CAAC;oBAC9C,CAAC,mBAAmB,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAC7C,CAAC;oBACD,OAAO;wBACL,OAAO,EAAE,KAAK;wBACd,KAAK,EAAE,6BAA6B,kBAAkB,IAAI;wBAC1D,IAAI,EACF,yEAAyE;4BACzE,gDAAgD;qBACnD,CAAC;gBACJ,CAAC;gBAED,MAAM,OAAO,GAAa,CAAC,gBAAgB,kBAAkB,GAAG,CAAC,CAAC;gBAClE,IAAI,kBAAkB,KAAK,SAAS,EAAE,CAAC;oBACrC,OAAO,CAAC,IAAI,CAAC,0BAA0B,MAAM,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;gBACvE,CAAC;gBAED,MAAM,GAAG,GAAG;yBACK,aAAa;sBAChB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;;aAE3B,CAAC;gBAEN,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAC;gBAEvE,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;oBACrC,OAAO;wBACL,OAAO,EAAE,KAAK;wBACd,KAAK,EAAE,yCAAyC,oBAAoB,GAAG;wBACvE,IAAI,EAAE,6DAA6D;qBACpE,CAAC;gBACJ,CAAC;gBAED,iEAAiE;gBACjE,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,YAAY,CAC7C,8BAA8B,aAAa,sCAAsC,EACjF,CAAC,oBAAoB,CAAC,CACvB,CAAC;gBACF,MAAM,gBAAgB,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC;gBACpE,MAAM,aAAa,GACjB,OAAO,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC;gBACpE,MAAM,cAAc,GAClB,mBAAmB,CAAC,IAAI,CAAC,kBAAkB,CAAC;oBAC5C,aAAa,CAAC,WAAW,EAAE,KAAK,QAAQ;oBACxC,aAAa,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAE7C,wEAAwE;gBACxE,MAAM,eAAe,GAAG,cAAc;oBACpC,CAAC,CAAC,gCAAgC,kBAAkB,EAAE;oBACtD,CAAC,CAAC,yBAAyB,kBAAkB,EAAE,CAAC;gBAElD,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,WAAW,EAAE,oBAAoB;oBACjC,SAAS,EAAE,kBAAkB;oBAC7B,kBAAkB,EAAE,kBAAkB,IAAI,KAAK;oBAC/C,OAAO,EAAE,yBAAyB,eAAe,YAAY,kBAAkB,KAAK,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,EAAE;iBACpH,CAAC;YACJ,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,OAAO;oBACL,OAAO,EAAE,KAAc;oBACvB,KAAK,EAAE,mBAAmB,CAAC,KAAK,EAAE;wBAChC,IAAI,EAAE,0BAA0B;qBACjC,CAAC;iBACH,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,8BAA8B,CAC5C,OAAwB;IAExB,OAAO;QACL,IAAI,EAAE,2BAA2B;QACjC,WAAW,EAAE;;;;;oGAKmF;QAChG,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,8BAA8B;QAC3C,YAAY,EAAE,gCAAgC;QAC9C,WAAW,EAAE,WAAW,CAAC,mBAAmB,CAAC;QAC7C,KAAK,EAAE,YAAY,CAAC,SAAS,EAAE,WAAW,CAAC,mBAAmB,CAAC,CAAC;QAChE,OAAO,EAAE,KAAK,EAAE,MAAe,EAAE,QAAwB,EAAE,EAAE;YAC3D,IAAI,CAAC;gBACH,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,GACtD,0BAA0B,CAAC,KAAK,CAAC,MAAM,CAKtC,CAAC;gBAEJ,yDAAyD;gBACzD,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,EAAE,CAAC;oBACjC,MAAM,OAAO,GAAa,EAAE,CAAC;oBAC7B,IAAI,CAAC,WAAW;wBAAE,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;oBAC9C,IAAI,CAAC,WAAW;wBAAE,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;oBAC1D,OAAO;wBACL,OAAO,EAAE,KAAK;wBACd,KAAK,EAAE,gCAAgC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;wBAC5D,IAAI,EAAE,4IAA4I;wBAClJ,OAAO,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE;qBACnC,CAAC;gBACJ,CAAC;gBAED,0EAA0E;gBAC1E,yFAAyF;gBACzF,MAAM,oBAAoB,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC;oBACpD,CAAC,CAAC,WAAW;oBACb,CAAC,CAAC,UAAU,WAAW,EAAE,CAAC;gBAC5B,MAAM,oBAAoB,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC;oBACpD,CAAC,CAAC,WAAW;oBACb,CAAC,CAAC,UAAU,WAAW,EAAE,CAAC;gBAE5B,yEAAyE;gBACzE,MAAM,aAAa,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBAEtD,6CAA6C;gBAC7C,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG;oBACtC,oBAAoB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;oBAClC,oBAAoB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;iBACnC,CAAC;gBAEF,MAAM,iBAAiB,GAAG,MAAM,OAAO,CAAC,YAAY,CAClD;;;aAGG,EACH,CAAC,YAAY,EAAE,eAAe,CAAC,CAChC,CAAC;gBAEF,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;oBAChD,OAAO;wBACL,OAAO,EAAE,KAAK;wBACd,KAAK,EAAE,iBAAiB,oBAAoB,mBAAmB;wBAC/D,IAAI,EACF,4FAA4F;4BAC5F,4EAA4E;qBAC/E,CAAC;gBACJ,CAAC;gBAED,MAAM,IAAI,GAAa;oBACrB,sBAAsB,oBAAoB,GAAG;oBAC7C,sBAAsB,oBAAoB,GAAG;iBAC9C,CAAC;gBAEF,IAAI,SAAS,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;oBACjD,IAAI,CAAC,IAAI,CAAC,mBAAmB,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;gBACpD,CAAC;gBACD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;oBAC5B,IAAI,CAAC,IAAI,CAAC,mBAAmB,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;gBACpD,CAAC;gBAED,uEAAuE;gBACvE,oEAAoE;gBACpE,gEAAgE;gBAChE,MAAM,GAAG,GAAG,QAAQ,aAAa,wBAAwB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;gBAC5E,IAAI,CAAC;oBACH,MAAM,oBAAoB,CAAC,OAAO,EAAE,aAAa,EAAE,GAAG,CAAC,CAAC;gBAC1D,CAAC;gBAAC,OAAO,KAAc,EAAE,CAAC;oBACxB,MAAM,QAAQ,GACZ,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBACzD,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC;oBACtD,OAAO;wBACL,OAAO,EAAE,KAAK;wBACd,WAAW,EAAE,oBAAoB;wBACjC,WAAW,EAAE,oBAAoB;wBACjC,KAAK,EAAE,SAAS,CAAC,QAAQ,CAAC,yBAAyB,CAAC;4BAClD,CAAC,CAAC,0CAA0C,oBAAoB,IAAI;4BACpE,CAAC,CAAC,6BAA6B,SAAS,EAAE;wBAC5C,IAAI,EAAE,2FAA2F;qBAClG,CAAC;gBACJ,CAAC;gBAED,mGAAmG;gBACnG,0EAA0E;gBAC1E,MAAM,cAAc,GAAG,SAAS,IAAI,IAAI,CAAC;gBAEzC,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,WAAW,EAAE,oBAAoB;oBACjC,WAAW,EAAE,oBAAoB;oBACjC,OAAO,EAAE,6BAA6B,oBAAoB,0BAA0B,oBAAoB,GAAG;oBAC3G,IAAI,EAAE,cAAc;wBAClB,CAAC,CAAC,8DAA8D;4BAC9D,2BAA2B,oBAAoB,WAAW;wBAC5D,CAAC,CAAC,0DAA0D,oBAAoB,WAAW;iBAC9F,CAAC;YACJ,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,OAAO;oBACL,OAAO,EAAE,KAAc;oBACvB,KAAK,EAAE,mBAAmB,CAAC,KAAK,EAAE;wBAChC,IAAI,EAAE,2BAA2B;qBAClC,CAAC;iBACH,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,8BAA8B,CAC5C,OAAwB;IAExB,OAAO;QACL,IAAI,EAAE,qCAAqC;QAC3C,WAAW,EAAE;;gDAE+B;QAC5C,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,CAAC;aACX,UAAU,CACT,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;gBAAE,OAAO,KAAK,CAAC;YAC9D,MAAM,GAAG,GAAG,KAIX,CAAC;YACF,MAAM,MAAM,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC;YAE1B,6BAA6B;YAC7B,IAAI,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;gBACxC,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC;YACpC,CAAC;YAED,+DAA+D;YAC/D,IAAI,MAAM,CAAC,WAAW,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC5D,MAAM,CAAC,WAAW,GAAG,UAAU,MAAM,CAAC,WAAW,EAAE,CAAC;YACtD,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC,EACD,CAAC,CAAC,MAAM,CAAC;YACP,WAAW,EAAE,CAAC;iBACX,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,mDAAmD,CAAC;YAChE,KAAK,EAAE,CAAC;iBACL,GAAG,EAAE;iBACL,QAAQ,EAAE;iBACV,QAAQ,CACP,0EAA0E,CAC3E;SACJ,CAAC,CACH;aACA,OAAO,CAAC,EAAE,CAAC;QACd,YAAY,EAAE,gCAAgC;QAC9C,WAAW,EAAE,QAAQ,CAAC,0BAA0B,CAAC;QACjD,KAAK,EAAE,YAAY,CAAC,SAAS,EAAE,QAAQ,CAAC,0BAA0B,CAAC,CAAC;QACpE,OAAO,EAAE,KAAK,EAAE,MAAe,EAAE,QAAwB,EAAE,EAAE;YAC3D,IAAI,CAAC;gBACH,MAAM,mBAAmB,GAAG,CAAC;qBAC1B,UAAU,CACT,CAAC,KAAK,EAAE,EAAE;oBACR,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;wBAAE,OAAO,KAAK,CAAC;oBAC9D,MAAM,GAAG,GAAG,KAIX,CAAC;oBACF,MAAM,MAAM,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC;oBAE1B,6BAA6B;oBAC7B,IAAI,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;wBACxC,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC;oBACpC,CAAC;oBAED,+DAA+D;oBAC/D,IAAI,MAAM,CAAC,WAAW,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;wBAC5D,MAAM,CAAC,WAAW,GAAG,UAAU,MAAM,CAAC,WAAW,EAAE,CAAC;oBACtD,CAAC;oBAED,OAAO,MAAM,CAAC;gBAChB,CAAC,EACD,CAAC,CAAC,MAAM,CAAC;oBACP,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;oBAClC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;iBACpC,CAAC,CACH;qBACA,OAAO,CAAC,EAAE,CAAC,CAAC;gBACf,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;gBACvD,MAAM,WAAW,GAAc,EAAE,CAAC;gBAClC,MAAM,aAAa,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBAEtD,uCAAuC;gBACvC,IAAI,QAAQ,GAAG,iCAAiC,aAAa,cAAc,CAAC;gBAC5E,MAAM,WAAW,GAAc,EAAE,CAAC;gBAClC,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;oBACrC,QAAQ,IAAI,0BAA0B,CAAC;oBACvC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;gBACvC,CAAC;gBACD,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;gBACtE,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;gBAEjE,6CAA6C;gBAC7C,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;gBACpC,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;gBAC9C,MAAM,UAAU,GAAG,KAAK,GAAG,CAAC,CAAC;gBAE7B,IAAI,SAAS,GAAG;;;;;;;;;;uBAUD,aAAa;aACvB,CAAC;gBACN,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;oBACrC,SAAS,IAAI,0BAA0B,CAAC;oBACxC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;gBACvC,CAAC;gBACD,SAAS,IAAI,wBAAwB,CAAC;gBACtC,IAAI,UAAU,EAAE,CAAC;oBACf,SAAS,IAAI,UAAU,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzC,CAAC;gBAED,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;gBACxE,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,IAAI,EAAE,CAAC;gBAExC,yEAAyE;gBACzE,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC7D,OAAO;wBACL,aAAa,EAAE,WAAW;wBAC1B,aAAa,EAAE,EAAE;wBACjB,OAAO,EACL,gDAAgD,MAAM,CAAC,WAAW,KAAK;4BACvE,mEAAmE;4BACnE,oEAAoE;qBACvE,CAAC;gBACJ,CAAC;gBAED,MAAM,YAAY,GAQZ,EAAE,CAAC;gBAET,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;oBAC7B,MAAM,WAAW,GAAG,MAAM,CAAC,cAAc,CAAW,CAAC;oBACrD,MAAM,MAAM,GAAa,EAAE,CAAC;oBAC5B,MAAM,QAAQ,GAAa,EAAE,CAAC;oBAC9B,MAAM,eAAe,GAAa,EAAE,CAAC;oBAErC,+DAA+D;oBAC/D,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC;wBACxD,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;wBACxD,CAAC,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;oBAE5B,MAAM,iBAAiB,GAAG,MAAM,OAAO,CAAC,YAAY,CAClD;;;iBAGK,EACL,CAAC,WAAW,EAAE,SAAS,CAAC,CACzB,CAAC;oBAEF,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;wBAChD,2CAA2C;wBAC3C,YAAY,CAAC,IAAI,CAAC;4BAChB,WAAW;4BACX,MAAM,EAAE;gCACN,wDAAwD;6BACzD;4BACD,QAAQ,EAAE,EAAE;4BACZ,eAAe,EAAE;gCACf,qEAAqE;6BACtE;4BACD,cAAc,EAAE,CAAC;4BACjB,mBAAmB,EAAE,KAAK;4BAC1B,gBAAgB,EAAE,KAAK;yBACxB,CAAC,CAAC;wBACH,SAAS;oBACX,CAAC;oBAED,IAAI,cAAsB,CAAC;oBAC3B,IAAI,CAAC;wBACH,MAAM,eAAe,GAAG,MAAM,OAAO,CAAC,YAAY,CAChD;;+BAEiB,aAAa;qBACvB,EACP,CAAC,WAAW,CAAC,CACd,CAAC;wBACF,cAAc,GAAG,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;oBACrE,CAAC;oBAAC,OAAO,CAAC,EAAE,CAAC;wBACX,wDAAwD;wBACxD,MAAM,QAAQ,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;wBAClE,YAAY,CAAC,IAAI,CAAC;4BAChB,WAAW;4BACX,MAAM,EAAE,CAAC,+BAA+B,QAAQ,EAAE,CAAC;4BACnD,QAAQ,EAAE,EAAE;4BACZ,eAAe,EAAE;gCACf,gDAAgD;gCAChD,6DAA6D;gCAC7D,+DAA+D;6BAChE;4BACD,cAAc,EAAE,CAAC;4BACjB,mBAAmB,EAAE,KAAK;4BAC1B,gBAAgB,EAAE,KAAK;yBACxB,CAAC,CAAC;wBACH,SAAS;oBACX,CAAC;oBAED,MAAM,OAAO,GAAI,MAAM,CAAC,SAAS,CAAY,IAAI,CAAC,CAAC;oBACnD,IAAI,cAAc,GAAG,OAAO,EAAE,CAAC;wBAC7B,QAAQ,CAAC,IAAI,CACX,QAAQ,MAAM,CAAC,cAAc,CAAC,wCAAwC,MAAM,CAAC,OAAO,CAAC,EAAE,CACxF,CAAC;wBACF,eAAe,CAAC,IAAI,CAClB,6DAA6D,CAC9D,CAAC;oBACJ,CAAC;oBAED,oCAAoC;oBACpC,MAAM,kBAAkB,GAAG,MAAM,OAAO,CAAC,YAAY,CACnD;;;;;;;;iBAQK,EACL,CAAC,WAAW,CAAC,CACd,CAAC;oBAEF,MAAM,mBAAmB,GACvB,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;oBAC7C,IAAI,gBAAgB,GAAG,KAAK,CAAC;oBAE7B,gEAAgE;oBAChE,iEAAiE;oBACjE,IAAI,mBAAmB,EAAE,CAAC;wBACxB,MAAM,SAAS,GAAG,kBAAkB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAC9C,gBAAgB,CACP,CAAC;wBACZ,MAAM,QAAQ,GAAG,kBAAkB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAC7C,mBAAmB,CACV,CAAC;wBACZ,IAAI,CAAC;4BACH,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,YAAY,CAC5C,gDAAgD,SAAS,IAAI,QAAQ,aAAa,CACnF,CAAC;4BACF,gBAAgB;gCACd,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;wBACtD,CAAC;wBAAC,MAAM,CAAC;4BACP,4CAA4C;wBAC9C,CAAC;oBACH,CAAC;oBAED,IAAI,gBAAgB,EAAE,CAAC;wBACrB,MAAM,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;wBAC/C,eAAe,CAAC,IAAI,CAClB,gEAAgE,CACjE,CAAC;oBACJ,CAAC;oBAED,kFAAkF;oBAClF,mFAAmF;oBAEnF,MAAM,SAAS,GAAG,MAAM,CAAC,uBAAuB,CAAW,CAAC;oBAC5D,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;wBACvB,QAAQ,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;wBACtD,eAAe,CAAC,IAAI,CAClB,2EAA2E,CAC5E,CAAC;oBACJ,CAAC;oBAED,YAAY,CAAC,IAAI,CAAC;wBAChB,WAAW;wBACX,MAAM;wBACN,QAAQ;wBACR,eAAe;wBACf,cAAc;wBACd,mBAAmB;wBACnB,gBAAgB;qBACjB,CAAC,CAAC;gBACL,CAAC;gBAED,MAAM,WAAW,GAAG,YAAY,CAAC,MAAM,CACrC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,EACjC,CAAC,CACF,CAAC;gBACF,MAAM,aAAa,GAAG,YAAY,CAAC,MAAM,CACvC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,EACnC,CAAC,CACF,CAAC;gBAEF,MAAM,SAAS,GAAG,UAAU,IAAI,UAAU,GAAG,KAAK,CAAC;gBAEnD,OAAO;oBACL,aAAa,EAAE,YAAY;oBAC3B,SAAS;oBACT,UAAU;oBACV,OAAO,EAAE;wBACP,kBAAkB,EAAE,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM;wBAChE,WAAW;wBACX,aAAa;wBACb,aAAa,EACX,WAAW,KAAK,CAAC;4BACf,CAAC,CAAC,aAAa,KAAK,CAAC;gCACnB,CAAC,CAAC,SAAS;gCACX,CAAC,CAAC,UAAU;4BACd,CAAC,CAAC,cAAc;qBACrB;iBACF,CAAC;YACJ,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,OAAO;oBACL,OAAO,EAAE,KAAc;oBACvB,KAAK,EAAE,mBAAmB,CAAC,KAAK,EAAE;wBAChC,IAAI,EAAE,qCAAqC;qBAC5C,CAAC;iBACH,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"management.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/postgresql/tools/partman/management.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EACV,cAAc,EAEf,MAAM,4BAA4B,CAAC;AA8BpC;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,eAAe,GACvB,cAAc,CAehB;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,eAAe,GACvB,cAAc,CAuMhB;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,eAAe,GACvB,cAAc,CA8KhB;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,eAAe,GACvB,cAAc,CAsFhB;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,eAAe,GACvB,cAAc,CAiLhB"}
1
+ {"version":3,"file":"management.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/postgresql/tools/partman/management.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EACV,cAAc,EAEf,MAAM,4BAA4B,CAAC;AAqCpC;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,eAAe,GACvB,cAAc,CAwBhB;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,eAAe,GACvB,cAAc,CA6OhB;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,eAAe,GACvB,cAAc,CAwLhB;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,eAAe,GACvB,cAAc,CAoGhB;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,eAAe,GACvB,cAAc,CA0IhB"}