pipework 0.212.0 → 0.243.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 (318) hide show
  1. package/CHANGELOG.md +140 -0
  2. package/REFERENCE.md +94 -2
  3. package/dist/REFERENCE.md +472 -16
  4. package/dist/cli/commands/openapi.d.ts +8 -0
  5. package/dist/cli/commands/openapi.d.ts.map +1 -0
  6. package/dist/cli/commands/openapi.js +49 -0
  7. package/dist/cli/commands/openapi.js.map +1 -0
  8. package/dist/cli/commands/serve.d.ts +8 -0
  9. package/dist/cli/commands/serve.d.ts.map +1 -1
  10. package/dist/cli/commands/serve.js +22 -3
  11. package/dist/cli/commands/serve.js.map +1 -1
  12. package/dist/cli/dev-bootstrap.js +6 -1
  13. package/dist/cli/dev-bootstrap.js.map +1 -1
  14. package/dist/cli/index.d.ts.map +1 -1
  15. package/dist/cli/index.js +15 -1
  16. package/dist/cli/index.js.map +1 -1
  17. package/dist/cli/surface-kinds.d.ts +5 -0
  18. package/dist/cli/surface-kinds.d.ts.map +1 -0
  19. package/dist/cli/surface-kinds.js +15 -0
  20. package/dist/cli/surface-kinds.js.map +1 -0
  21. package/dist/core/config/load.d.ts +1 -0
  22. package/dist/core/config/load.d.ts.map +1 -1
  23. package/dist/core/config/load.js +1 -0
  24. package/dist/core/config/load.js.map +1 -1
  25. package/dist/core/config/namespace.d.ts +6 -0
  26. package/dist/core/config/namespace.d.ts.map +1 -1
  27. package/dist/core/config/schema.d.ts +15 -0
  28. package/dist/core/config/schema.d.ts.map +1 -1
  29. package/dist/core/config/schema.js +11 -2
  30. package/dist/core/config/schema.js.map +1 -1
  31. package/dist/core/lifecycle/health.js +2 -2
  32. package/dist/core/lifecycle/health.js.map +1 -1
  33. package/dist/core/lifecycle/types.d.ts +2 -0
  34. package/dist/core/lifecycle/types.d.ts.map +1 -1
  35. package/dist/core/pipework.d.ts +14 -1
  36. package/dist/core/pipework.d.ts.map +1 -1
  37. package/dist/core/pipework.js +18 -2
  38. package/dist/core/pipework.js.map +1 -1
  39. package/dist/core/surface/http.d.ts +3 -0
  40. package/dist/core/surface/http.d.ts.map +1 -1
  41. package/dist/core/surface/http.js +27 -8
  42. package/dist/core/surface/http.js.map +1 -1
  43. package/dist/core/surface/start.d.ts.map +1 -1
  44. package/dist/core/surface/start.js +19 -3
  45. package/dist/core/surface/start.js.map +1 -1
  46. package/dist/core/surface/types.d.ts +8 -0
  47. package/dist/core/surface/types.d.ts.map +1 -1
  48. package/dist/data/db/filter.d.ts +3 -0
  49. package/dist/data/db/filter.d.ts.map +1 -1
  50. package/dist/data/db/filter.js +3 -0
  51. package/dist/data/db/filter.js.map +1 -1
  52. package/dist/data/db/in-list.d.ts +15 -0
  53. package/dist/data/db/in-list.d.ts.map +1 -0
  54. package/dist/data/db/in-list.js +51 -0
  55. package/dist/data/db/in-list.js.map +1 -0
  56. package/dist/data/db/namespace.d.ts +2 -0
  57. package/dist/data/db/namespace.d.ts.map +1 -1
  58. package/dist/data/db/pool.d.ts +1 -1
  59. package/dist/data/db/pool.d.ts.map +1 -1
  60. package/dist/data/db/pool.js +4 -2
  61. package/dist/data/db/pool.js.map +1 -1
  62. package/dist/data/db/reservation.d.ts +40 -0
  63. package/dist/data/db/reservation.d.ts.map +1 -0
  64. package/dist/data/db/reservation.js +108 -0
  65. package/dist/data/db/reservation.js.map +1 -0
  66. package/dist/data/domain/build-table.js +32 -1
  67. package/dist/data/domain/build-table.js.map +1 -1
  68. package/dist/data/domain/index.d.ts +2 -1
  69. package/dist/data/domain/index.d.ts.map +1 -1
  70. package/dist/data/domain/types.d.ts +9 -1
  71. package/dist/data/domain/types.d.ts.map +1 -1
  72. package/dist/data/domain/types.js.map +1 -1
  73. package/dist/data/migrate/apply.d.ts +14 -0
  74. package/dist/data/migrate/apply.d.ts.map +1 -1
  75. package/dist/data/migrate/apply.js +13 -13
  76. package/dist/data/migrate/apply.js.map +1 -1
  77. package/dist/data/migrate/check.d.ts.map +1 -1
  78. package/dist/data/migrate/check.js +3 -6
  79. package/dist/data/migrate/check.js.map +1 -1
  80. package/dist/data/migrate/diff.d.ts +16 -0
  81. package/dist/data/migrate/diff.d.ts.map +1 -1
  82. package/dist/data/migrate/diff.js +44 -4
  83. package/dist/data/migrate/diff.js.map +1 -1
  84. package/dist/data/migrate/generate.d.ts +1 -1
  85. package/dist/data/migrate/generate.d.ts.map +1 -1
  86. package/dist/data/migrate/generate.js +19 -51
  87. package/dist/data/migrate/generate.js.map +1 -1
  88. package/dist/data/migrate/history.d.ts +36 -0
  89. package/dist/data/migrate/history.d.ts.map +1 -0
  90. package/dist/data/migrate/history.js +185 -0
  91. package/dist/data/migrate/history.js.map +1 -0
  92. package/dist/data/migrate/internal-definitions.d.ts.map +1 -1
  93. package/dist/data/migrate/internal-definitions.js +22 -1
  94. package/dist/data/migrate/internal-definitions.js.map +1 -1
  95. package/dist/data/migrate/provision-framework.d.ts +2 -0
  96. package/dist/data/migrate/provision-framework.d.ts.map +1 -1
  97. package/dist/data/migrate/provision-framework.js +17 -5
  98. package/dist/data/migrate/provision-framework.js.map +1 -1
  99. package/dist/data/migrate/snapshot.d.ts +4 -0
  100. package/dist/data/migrate/snapshot.d.ts.map +1 -1
  101. package/dist/data/migrate/snapshot.js +2 -0
  102. package/dist/data/migrate/snapshot.js.map +1 -1
  103. package/dist/data/migrate/sql-emit.js +66 -12
  104. package/dist/data/migrate/sql-emit.js.map +1 -1
  105. package/dist/data/query/pg-core/foreign-keys.d.ts +5 -0
  106. package/dist/data/query/pg-core/foreign-keys.d.ts.map +1 -1
  107. package/dist/data/query/pg-core/foreign-keys.js +9 -0
  108. package/dist/data/query/pg-core/foreign-keys.js.map +1 -1
  109. package/dist/data/query/pg-core/indexes.d.ts +5 -0
  110. package/dist/data/query/pg-core/indexes.d.ts.map +1 -1
  111. package/dist/data/query/pg-core/indexes.js +7 -0
  112. package/dist/data/query/pg-core/indexes.js.map +1 -1
  113. package/dist/data/schema/json-schema.js +29 -1
  114. package/dist/data/schema/json-schema.js.map +1 -1
  115. package/dist/data/schema/types.d.ts +2 -2
  116. package/dist/data/schema/types.d.ts.map +1 -1
  117. package/dist/index.d.ts +18 -9
  118. package/dist/index.d.ts.map +1 -1
  119. package/dist/index.js +5 -1
  120. package/dist/index.js.map +1 -1
  121. package/dist/infra/alerts/handle.d.ts +33 -5
  122. package/dist/infra/alerts/handle.d.ts.map +1 -1
  123. package/dist/infra/alerts/handle.js +56 -12
  124. package/dist/infra/alerts/handle.js.map +1 -1
  125. package/dist/infra/alerts/http.d.ts +2 -2
  126. package/dist/infra/alerts/http.d.ts.map +1 -1
  127. package/dist/infra/alerts/http.js +21 -3
  128. package/dist/infra/alerts/http.js.map +1 -1
  129. package/dist/infra/alerts/index.d.ts +1 -1
  130. package/dist/infra/alerts/index.d.ts.map +1 -1
  131. package/dist/infra/alerts/schema.d.ts +5 -0
  132. package/dist/infra/alerts/schema.d.ts.map +1 -1
  133. package/dist/infra/alerts/schema.js +1 -0
  134. package/dist/infra/alerts/schema.js.map +1 -1
  135. package/dist/infra/crawl/audit.d.ts +6 -0
  136. package/dist/infra/crawl/audit.d.ts.map +1 -0
  137. package/dist/infra/crawl/audit.js +38 -0
  138. package/dist/infra/crawl/audit.js.map +1 -0
  139. package/dist/infra/crawl/errors.d.ts +14 -0
  140. package/dist/infra/crawl/errors.d.ts.map +1 -0
  141. package/dist/infra/crawl/errors.js +22 -0
  142. package/dist/infra/crawl/errors.js.map +1 -0
  143. package/dist/infra/crawl/handle.d.ts +149 -0
  144. package/dist/infra/crawl/handle.d.ts.map +1 -0
  145. package/dist/infra/crawl/handle.js +550 -0
  146. package/dist/infra/crawl/handle.js.map +1 -0
  147. package/dist/infra/crawl/index.d.ts +7 -0
  148. package/dist/infra/crawl/index.d.ts.map +1 -0
  149. package/dist/infra/crawl/index.js +5 -0
  150. package/dist/infra/crawl/index.js.map +1 -0
  151. package/dist/infra/crawl/links.d.ts +9 -0
  152. package/dist/infra/crawl/links.d.ts.map +1 -0
  153. package/dist/infra/crawl/links.js +194 -0
  154. package/dist/infra/crawl/links.js.map +1 -0
  155. package/dist/infra/crawl/namespace.d.ts +36 -0
  156. package/dist/infra/crawl/namespace.d.ts.map +1 -0
  157. package/dist/infra/crawl/namespace.js +36 -0
  158. package/dist/infra/crawl/namespace.js.map +1 -0
  159. package/dist/infra/crawl/robots.d.ts +16 -0
  160. package/dist/infra/crawl/robots.d.ts.map +1 -0
  161. package/dist/infra/crawl/robots.js +98 -0
  162. package/dist/infra/crawl/robots.js.map +1 -0
  163. package/dist/infra/crawl/schema.d.ts +222 -0
  164. package/dist/infra/crawl/schema.d.ts.map +1 -0
  165. package/dist/infra/crawl/schema.js +84 -0
  166. package/dist/infra/crawl/schema.js.map +1 -0
  167. package/dist/infra/credit-line/handle.d.ts +250 -0
  168. package/dist/infra/credit-line/handle.d.ts.map +1 -0
  169. package/dist/infra/credit-line/handle.js +618 -0
  170. package/dist/infra/credit-line/handle.js.map +1 -0
  171. package/dist/infra/credit-line/index.d.ts +3 -0
  172. package/dist/infra/credit-line/index.d.ts.map +1 -0
  173. package/dist/infra/credit-line/index.js +2 -0
  174. package/dist/infra/credit-line/index.js.map +1 -0
  175. package/dist/infra/credit-line/namespace.d.ts +7 -0
  176. package/dist/infra/credit-line/namespace.d.ts.map +1 -0
  177. package/dist/infra/credit-line/namespace.js +7 -0
  178. package/dist/infra/credit-line/namespace.js.map +1 -0
  179. package/dist/infra/credit-line/schema.d.ts +194 -0
  180. package/dist/infra/credit-line/schema.d.ts.map +1 -0
  181. package/dist/infra/credit-line/schema.js +89 -0
  182. package/dist/infra/credit-line/schema.js.map +1 -0
  183. package/dist/infra/email/inbound.d.ts +14 -2
  184. package/dist/infra/email/inbound.d.ts.map +1 -1
  185. package/dist/infra/email/inbound.js +5 -1
  186. package/dist/infra/email/inbound.js.map +1 -1
  187. package/dist/infra/email/index.d.ts +2 -2
  188. package/dist/infra/email/index.d.ts.map +1 -1
  189. package/dist/infra/email/index.js.map +1 -1
  190. package/dist/infra/email/mail.d.ts +43 -5
  191. package/dist/infra/email/mail.d.ts.map +1 -1
  192. package/dist/infra/email/mail.js +124 -9
  193. package/dist/infra/email/mail.js.map +1 -1
  194. package/dist/infra/email/mime.d.ts +6 -0
  195. package/dist/infra/email/mime.d.ts.map +1 -1
  196. package/dist/infra/email/mime.js +10 -2
  197. package/dist/infra/email/mime.js.map +1 -1
  198. package/dist/infra/email/schema.d.ts +17 -3
  199. package/dist/infra/email/schema.d.ts.map +1 -1
  200. package/dist/infra/email/schema.js +15 -4
  201. package/dist/infra/email/schema.js.map +1 -1
  202. package/dist/infra/email/sns.js +2 -2
  203. package/dist/infra/email/sns.js.map +1 -1
  204. package/dist/infra/email/unsubscribe.d.ts +13 -0
  205. package/dist/infra/email/unsubscribe.d.ts.map +1 -0
  206. package/dist/infra/email/unsubscribe.js +43 -0
  207. package/dist/infra/email/unsubscribe.js.map +1 -0
  208. package/dist/infra/fetch/handle.d.ts +20 -1
  209. package/dist/infra/fetch/handle.d.ts.map +1 -1
  210. package/dist/infra/fetch/handle.js +60 -28
  211. package/dist/infra/fetch/handle.js.map +1 -1
  212. package/dist/infra/fetch/index.d.ts +2 -2
  213. package/dist/infra/fetch/index.d.ts.map +1 -1
  214. package/dist/infra/fetch/index.js +1 -1
  215. package/dist/infra/fetch/index.js.map +1 -1
  216. package/dist/infra/fetch/namespace.d.ts +20 -2
  217. package/dist/infra/fetch/namespace.d.ts.map +1 -1
  218. package/dist/infra/fetch/namespace.js +20 -2
  219. package/dist/infra/fetch/namespace.js.map +1 -1
  220. package/dist/infra/join-requests/handle.d.ts +86 -0
  221. package/dist/infra/join-requests/handle.d.ts.map +1 -0
  222. package/dist/infra/join-requests/handle.js +233 -0
  223. package/dist/infra/join-requests/handle.js.map +1 -0
  224. package/dist/infra/join-requests/index.d.ts +3 -0
  225. package/dist/infra/join-requests/index.d.ts.map +1 -0
  226. package/dist/infra/join-requests/index.js +2 -0
  227. package/dist/infra/join-requests/index.js.map +1 -0
  228. package/dist/infra/join-requests/namespace.d.ts +7 -0
  229. package/dist/infra/join-requests/namespace.d.ts.map +1 -0
  230. package/dist/infra/join-requests/namespace.js +7 -0
  231. package/dist/infra/join-requests/namespace.js.map +1 -0
  232. package/dist/infra/join-requests/schema.d.ts +58 -0
  233. package/dist/infra/join-requests/schema.d.ts.map +1 -0
  234. package/dist/infra/join-requests/schema.js +31 -0
  235. package/dist/infra/join-requests/schema.js.map +1 -0
  236. package/dist/infra/outbox/core.d.ts +9 -0
  237. package/dist/infra/outbox/core.d.ts.map +1 -1
  238. package/dist/infra/outbox/core.js +14 -0
  239. package/dist/infra/outbox/core.js.map +1 -1
  240. package/dist/infra/support/handle.d.ts +43 -0
  241. package/dist/infra/support/handle.d.ts.map +1 -1
  242. package/dist/infra/support/handle.js +35 -7
  243. package/dist/infra/support/handle.js.map +1 -1
  244. package/dist/infra/support/http.d.ts +28 -0
  245. package/dist/infra/support/http.d.ts.map +1 -0
  246. package/dist/infra/support/http.js +217 -0
  247. package/dist/infra/support/http.js.map +1 -0
  248. package/dist/infra/support/index.d.ts +2 -0
  249. package/dist/infra/support/index.d.ts.map +1 -1
  250. package/dist/infra/support/index.js +1 -0
  251. package/dist/infra/support/index.js.map +1 -1
  252. package/dist/infra/support/namespace.d.ts +3 -0
  253. package/dist/infra/support/namespace.d.ts.map +1 -1
  254. package/dist/infra/support/namespace.js +3 -0
  255. package/dist/infra/support/namespace.js.map +1 -1
  256. package/dist/infra/support/schema.d.ts +4 -4
  257. package/dist/infra/webhook/outbound.d.ts +16 -0
  258. package/dist/infra/webhook/outbound.d.ts.map +1 -1
  259. package/dist/infra/webhook/outbound.js +78 -27
  260. package/dist/infra/webhook/outbound.js.map +1 -1
  261. package/dist/request/di/builder.d.ts +24 -1
  262. package/dist/request/di/builder.d.ts.map +1 -1
  263. package/dist/request/di/builder.js +35 -0
  264. package/dist/request/di/builder.js.map +1 -1
  265. package/dist/request/di/types.d.ts +30 -0
  266. package/dist/request/di/types.d.ts.map +1 -1
  267. package/dist/request/http/server.d.ts.map +1 -1
  268. package/dist/request/http/server.js +111 -20
  269. package/dist/request/http/server.js.map +1 -1
  270. package/dist/test/auto-setup.js +2 -2
  271. package/dist/test/auto-setup.js.map +1 -1
  272. package/dist/test/crawl-fixture.d.ts +53 -0
  273. package/dist/test/crawl-fixture.d.ts.map +1 -0
  274. package/dist/test/crawl-fixture.js +130 -0
  275. package/dist/test/crawl-fixture.js.map +1 -0
  276. package/dist/test/index.d.ts +2 -1
  277. package/dist/test/index.d.ts.map +1 -1
  278. package/dist/test/index.js +2 -1
  279. package/dist/test/index.js.map +1 -1
  280. package/dist/test/progress.d.ts +7 -1
  281. package/dist/test/progress.d.ts.map +1 -1
  282. package/dist/test/progress.js +6 -0
  283. package/dist/test/progress.js.map +1 -1
  284. package/dist/test/reap-after-run.d.ts +3 -0
  285. package/dist/test/reap-after-run.d.ts.map +1 -0
  286. package/dist/test/reap-after-run.js +29 -0
  287. package/dist/test/reap-after-run.js.map +1 -0
  288. package/dist/test/reap.d.ts +11 -2
  289. package/dist/test/reap.d.ts.map +1 -1
  290. package/dist/test/reap.js +19 -12
  291. package/dist/test/reap.js.map +1 -1
  292. package/dist/test/setup.d.ts +2 -0
  293. package/dist/test/setup.d.ts.map +1 -1
  294. package/dist/test/setup.js +97 -31
  295. package/dist/test/setup.js.map +1 -1
  296. package/dist/test/vitest-plugin.d.ts.map +1 -1
  297. package/dist/test/vitest-plugin.js +8 -1
  298. package/dist/test/vitest-plugin.js.map +1 -1
  299. package/dist/test/vitest-workspace.d.ts +1 -0
  300. package/dist/test/vitest-workspace.d.ts.map +1 -1
  301. package/dist/test/vitest-workspace.js +1 -1
  302. package/dist/test/vitest-workspace.js.map +1 -1
  303. package/dist/test/vitest.d.ts +20 -0
  304. package/dist/test/vitest.d.ts.map +1 -1
  305. package/dist/test/vitest.js +41 -1
  306. package/dist/test/vitest.js.map +1 -1
  307. package/dist/trace/partition/sync.d.ts +8 -2
  308. package/dist/trace/partition/sync.d.ts.map +1 -1
  309. package/dist/trace/partition/sync.js +6 -3
  310. package/dist/trace/partition/sync.js.map +1 -1
  311. package/dist/workspace/generate.d.ts.map +1 -1
  312. package/dist/workspace/generate.js +1 -0
  313. package/dist/workspace/generate.js.map +1 -1
  314. package/package.json +1 -1
  315. package/dist/infra/email/sigv4.d.ts +0 -24
  316. package/dist/infra/email/sigv4.d.ts.map +0 -1
  317. package/dist/infra/email/sigv4.js +0 -55
  318. package/dist/infra/email/sigv4.js.map +0 -1
@@ -5,6 +5,7 @@ import { increment, decrement, add, subtract, coalesce, now, scalar, cast, colla
5
5
  import { ago, castUuid, castJsonb, castTimestamp, castBoolean, castNumeric, castInteger, castText, nextSequence } from './composed.js';
6
6
  import { json as jsonbExtract, pathText as jsonbExtractText, contains as jsonbContains, merge as jsonbMerge, remove as jsonbRemove } from '../jsonb/query.js';
7
7
  import { arrayAny, arrayAll, jsonbElements } from './array-elements.js';
8
+ import { inList, notInList } from './in-list.js';
8
9
  export const filter = {
9
10
  and, arrayContained, arrayContains, arrayOverlaps, asc, between, desc, eq, exists, gt, gte,
10
11
  ilike, inArray, is, isNotNull, isNull, like, lt, lte, ne, not, notBetween, notExists, notIlike,
@@ -79,5 +80,7 @@ export const filter = {
79
80
  arrayAny,
80
81
  arrayAll,
81
82
  jsonbElements,
83
+ inList,
84
+ notInList,
82
85
  };
83
86
  //# sourceMappingURL=filter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"filter.js","sourceRoot":"","sources":["../../../src/data/db/filter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"filter.js","sourceRoot":"","sources":["../../../src/data/db/filter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { SQL, Column } from './types.js';
2
+ /**
3
+ * Membership of a JS list: `<expr> = ANY($1::text[])`, the list bound as one array parameter
4
+ * whatever its length and hashed by Postgres. An empty list is `false` (no parameter).
5
+ * Strings bind as `text`, integers as `bigint`, other numbers as `numeric`; pass `cast` for
6
+ * other columns, e.g. `inList(t.id, ids, 'uuid')`. Lifts `inArray`'s 65,535-parameter limit.
7
+ */
8
+ export declare function inList(expr: Column | SQL, values: readonly string[] | readonly number[], cast?: string): SQL<boolean>;
9
+ /**
10
+ * Non-membership of a JS list: `<expr> <> ALL($1::text[])`, the list bound as one array
11
+ * parameter. An empty list is `true` (no parameter). Types and `cast` as for `inList`
12
+ * (`notInList(t.id, ids, 'uuid')`); lifts `notInArray`'s 65,535-parameter limit.
13
+ */
14
+ export declare function notInList(expr: Column | SQL, values: readonly string[] | readonly number[], cast?: string): SQL<boolean>;
15
+ //# sourceMappingURL=in-list.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"in-list.d.ts","sourceRoot":"","sources":["../../../src/data/db/in-list.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AA4B7C;;;;;GAKG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,EAAE,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,CAGrH;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,EAAE,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,CAGxH"}
@@ -0,0 +1,51 @@
1
+ import { sql } from './sql.js';
2
+ const CAST = /^[a-z_][a-z0-9_]*(\([0-9, ]+\))?$/i;
3
+ function fail(problem, fix) {
4
+ throw new Error(`[pipework] filter.inList: ${problem}\n\n Fix: ${fix}\n`);
5
+ }
6
+ function elementType(values, cast) {
7
+ if (cast !== undefined && !CAST.test(cast))
8
+ fail(`cast "${cast}" is not a plain type name.`, "pass a type name such as 'uuid' or 'int'.");
9
+ const numeric = typeof values[0] === 'number';
10
+ for (const v of values) {
11
+ if (v === null || v === undefined)
12
+ fail('the list holds a null or undefined value.', 'drop nulls before passing the list.');
13
+ if (typeof v !== (numeric ? 'number' : 'string')) {
14
+ fail('the list must hold only strings or only numbers.', 'pass a list of one type, or convert the values first.');
15
+ }
16
+ if (numeric && !Number.isFinite(v))
17
+ fail('the list holds NaN or a non-finite number.', 'pass finite numbers only.');
18
+ }
19
+ if (cast !== undefined)
20
+ return cast;
21
+ if (!numeric)
22
+ return 'text';
23
+ return values.every(v => Number.isInteger(v)) ? 'bigint' : 'numeric';
24
+ }
25
+ function bind(values, cast) {
26
+ if (!Array.isArray(values))
27
+ fail('the values are not an array.', 'pass a string[] or number[].');
28
+ return sql `${sql.param(values)}::${sql.raw(elementType(values, cast))}[]`;
29
+ }
30
+ /**
31
+ * Membership of a JS list: `<expr> = ANY($1::text[])`, the list bound as one array parameter
32
+ * whatever its length and hashed by Postgres. An empty list is `false` (no parameter).
33
+ * Strings bind as `text`, integers as `bigint`, other numbers as `numeric`; pass `cast` for
34
+ * other columns, e.g. `inList(t.id, ids, 'uuid')`. Lifts `inArray`'s 65,535-parameter limit.
35
+ */
36
+ export function inList(expr, values, cast) {
37
+ if (values.length === 0 && cast !== undefined)
38
+ bind(values, cast);
39
+ return values.length === 0 ? sql `false` : sql `${expr} = ANY(${bind(values, cast)})`;
40
+ }
41
+ /**
42
+ * Non-membership of a JS list: `<expr> <> ALL($1::text[])`, the list bound as one array
43
+ * parameter. An empty list is `true` (no parameter). Types and `cast` as for `inList`
44
+ * (`notInList(t.id, ids, 'uuid')`); lifts `notInArray`'s 65,535-parameter limit.
45
+ */
46
+ export function notInList(expr, values, cast) {
47
+ if (values.length === 0 && cast !== undefined)
48
+ bind(values, cast);
49
+ return values.length === 0 ? sql `true` : sql `${expr} <> ALL(${bind(values, cast)})`;
50
+ }
51
+ //# sourceMappingURL=in-list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"in-list.js","sourceRoot":"","sources":["../../../src/data/db/in-list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAG9B,MAAM,IAAI,GAAG,oCAAoC,CAAA;AAEjD,SAAS,IAAI,CAAC,OAAe,EAAE,GAAW;IACxC,MAAM,IAAI,KAAK,CAAC,6BAA6B,OAAO,cAAc,GAAG,IAAI,CAAC,CAAA;AAC5E,CAAC;AAED,SAAS,WAAW,CAAC,MAAoC,EAAE,IAAwB;IACjF,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,IAAI,CAAC,SAAS,IAAI,6BAA6B,EAAE,2CAA2C,CAAC,CAAA;IACzI,MAAM,OAAO,GAAG,OAAO,MAAM,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAA;IAC7C,KAAK,MAAM,CAAC,IAAI,MAA4B,EAAE,CAAC;QAC7C,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS;YAAE,IAAI,CAAC,2CAA2C,EAAE,qCAAqC,CAAC,CAAA;QAC3H,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;YACjD,IAAI,CAAC,kDAAkD,EAAE,uDAAuD,CAAC,CAAA;QACnH,CAAC;QACD,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAW,CAAC;YAAE,IAAI,CAAC,4CAA4C,EAAE,2BAA2B,CAAC,CAAA;IAC/H,CAAC;IACD,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,IAAI,CAAA;IACnC,IAAI,CAAC,OAAO;QAAE,OAAO,MAAM,CAAA;IAC3B,OAAQ,MAA4B,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAA;AAC7F,CAAC;AAED,SAAS,IAAI,CAAC,MAA6C,EAAE,IAAwB;IACnF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,IAAI,CAAC,8BAA8B,EAAE,8BAA8B,CAAC,CAAA;IAChG,OAAO,GAAG,CAAA,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,IAAI,CAAA;AAC3E,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,MAAM,CAAC,IAAkB,EAAE,MAA6C,EAAE,IAAa;IACrG,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,KAAK,SAAS;QAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IACjE,OAAO,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAS,OAAO,CAAC,CAAC,CAAC,GAAG,CAAS,GAAG,IAAI,UAAU,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAA;AACvG,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,SAAS,CAAC,IAAkB,EAAE,MAA6C,EAAE,IAAa;IACxG,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,KAAK,SAAS;QAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IACjE,OAAO,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAS,MAAM,CAAC,CAAC,CAAC,GAAG,CAAS,GAAG,IAAI,WAAW,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAA;AACvG,CAAC"}
@@ -139,6 +139,8 @@ export declare const pipe: typeof getDb & {
139
139
  readonly arrayAny: typeof import("./array-elements.js").arrayAny;
140
140
  readonly arrayAll: typeof import("./array-elements.js").arrayAll;
141
141
  readonly jsonbElements: typeof import("./array-elements.js").jsonbElements;
142
+ readonly inList: typeof import("./in-list.js").inList;
143
+ readonly notInList: typeof import("./in-list.js").notInList;
142
144
  };
143
145
  /** Raw statement tag — for a statement pipework does not model. Interpolated values are parameters; `sql.raw` is not. Runs on the caller's connection, so inside a request it is the request transaction. Writes still go through pipe.update / insert / delete, which is what audit hooks. */
144
146
  sql: typeof sql;
@@ -1 +1 @@
1
- {"version":3,"file":"namespace.d.ts","sourceRoot":"","sources":["../../../src/data/db/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,IAAI,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAC7D,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAC9B,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAE5D,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,EAAE,EAAE,MAAM,sBAAsB,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAElE,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,kBAAkB,EAAE,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,qBAAqB,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAGnM,OAAO,EAAS,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAGzE,YAAY,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAE3E,6EAA6E;AAC7E,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,6EAA6E;AAC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,mJAAmJ;AACnJ,eAAO,MAAM,IAAI;IACf,iQAAiQ;;IAGjQ,6QAA6Q;;IAG7Q,6EAA6E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAG7E,+RAA+R;;;;;;;;;;;;;IAkB/R,oDAAoD;;IAEpD,mDAAmD;;IAGnD,6EAA6E;;IAG7E,gFAAgF;;IAGhF,qHAAqH;;IAGrH,kHAAkH;;IAGlH,oMAAoM;;IAGpM,2GAA2G;;IAG3G,0GAA0G;;IAG1G,uNAAuN;;IAGvN,8EAA8E;;;;;;;;;;;;;;;;;;;;;;;IAE9E,qMAAqM;;IAErM,6DAA6D;;IAE7D,+LAA+L;;IAG/L,2GAA2G;;IAE3G,kNAAkN;;IAElN,gHAAgH;;IAEhH,kQAAkQ;;CAElQ,CAAA"}
1
+ {"version":3,"file":"namespace.d.ts","sourceRoot":"","sources":["../../../src/data/db/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,IAAI,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAC7D,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAC9B,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAE5D,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,EAAE,EAAE,MAAM,sBAAsB,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAElE,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,kBAAkB,EAAE,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,qBAAqB,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAGnM,OAAO,EAAS,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAGzE,YAAY,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAE3E,6EAA6E;AAC7E,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,6EAA6E;AAC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,mJAAmJ;AACnJ,eAAO,MAAM,IAAI;IACf,iQAAiQ;;IAGjQ,6QAA6Q;;IAG7Q,6EAA6E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAG7E,+RAA+R;;;;;;;;;;;;;IAkB/R,oDAAoD;;IAEpD,mDAAmD;;IAGnD,6EAA6E;;IAG7E,gFAAgF;;IAGhF,qHAAqH;;IAGrH,kHAAkH;;IAGlH,oMAAoM;;IAGpM,2GAA2G;;IAG3G,0GAA0G;;IAG1G,uNAAuN;;IAGvN,8EAA8E;;;;;;;;;;;;;;;;;;;;;;;IAE9E,qMAAqM;;IAErM,6DAA6D;;IAE7D,+LAA+L;;IAG/L,2GAA2G;;IAE3G,kNAAkN;;IAElN,gHAAgH;;IAEhH,kQAAkQ;;CAElQ,CAAA"}
@@ -57,5 +57,5 @@ export interface ConnectOptions {
57
57
  */
58
58
  export declare function tap(url: string, options?: ConnectOptions): ManagedConnection;
59
59
  /** Builds the pooled connection for one resolved database — used by the manifold's pool manager; consumers outside a managed context use `tap()` or `pool.getOrCreate()`. */
60
- export declare function createManagedConnection(config: ResolvedDatabase, onClose: () => void, observability?: ResolvedObservability): ManagedConnection;
60
+ export declare function createManagedConnection(config: ResolvedDatabase, onClose: () => void, observability?: ResolvedObservability, applicationName?: string): ManagedConnection;
61
61
  //# sourceMappingURL=pool.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pool.d.ts","sourceRoot":"","sources":["../../../src/data/db/pool.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAA;AAC/B,OAAO,EAAW,KAAK,kBAAkB,EAAE,MAAM,+BAA+B,CAAA;AAChF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AACjE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAA;AAMtE,wVAAwV;AACxV,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,CAAA;AAEvD,0HAA0H;AAC1H,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB;;;;;;OAMG;IACH,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAA;IAC7B,QAAQ,CAAC,OAAO,EAAE,kBAAkB,CAAA;IACpC,yHAAyH;IACzH,QAAQ,CAAC,MAAM,CAAC,EAAE,kBAAkB,CAAA;IACpC,mIAAmI;IACnI,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,kBAAkB,CAAA;IACpD;;;;;;;;;;;;;;OAcG;IACH,aAAa,IAAI,OAAO,CAAC,aAAa,CAAC;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAA;IACrF,KAAK,CAAC,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CAC5D;AAED,mJAAmJ;AACnJ,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,CAAA;CACxE;AAuDD;;;;;GAKG;AACH,wBAAgB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,iBAAiB,CAmB5E;AAED,6KAA6K;AAC7K,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,MAAM,IAAI,EACnB,aAAa,CAAC,EAAE,qBAAqB,GACpC,iBAAiB,CAmCnB"}
1
+ {"version":3,"file":"pool.d.ts","sourceRoot":"","sources":["../../../src/data/db/pool.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAA;AAC/B,OAAO,EAAW,KAAK,kBAAkB,EAAE,MAAM,+BAA+B,CAAA;AAChF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AACjE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAA;AAMtE,wVAAwV;AACxV,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,CAAA;AAEvD,0HAA0H;AAC1H,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB;;;;;;OAMG;IACH,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAA;IAC7B,QAAQ,CAAC,OAAO,EAAE,kBAAkB,CAAA;IACpC,yHAAyH;IACzH,QAAQ,CAAC,MAAM,CAAC,EAAE,kBAAkB,CAAA;IACpC,mIAAmI;IACnI,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,kBAAkB,CAAA;IACpD;;;;;;;;;;;;;;OAcG;IACH,aAAa,IAAI,OAAO,CAAC,aAAa,CAAC;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAA;IACrF,KAAK,CAAC,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CAC5D;AAED,mJAAmJ;AACnJ,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,CAAA;CACxE;AAuDD;;;;;GAKG;AACH,wBAAgB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,iBAAiB,CAmB5E;AAED,6KAA6K;AAC7K,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,MAAM,IAAI,EACnB,aAAa,CAAC,EAAE,qBAAqB,EACrC,eAAe,CAAC,EAAE,MAAM,GACvB,iBAAiB,CAqCnB"}
@@ -76,7 +76,7 @@ export function tap(url, options) {
76
76
  };
77
77
  }
78
78
  /** Builds the pooled connection for one resolved database — used by the manifold's pool manager; consumers outside a managed context use `tap()` or `pool.getOrCreate()`. */
79
- export function createManagedConnection(config, onClose, observability) {
79
+ export function createManagedConnection(config, onClose, observability, applicationName) {
80
80
  const baseDebug = observability ? createDebugFn(observability) : undefined;
81
81
  const slot = baseDebug ? { current: null } : undefined;
82
82
  const debug = baseDebug && slot
@@ -90,7 +90,9 @@ export function createManagedConnection(config, onClose, observability) {
90
90
  max: config.pool.max,
91
91
  idle_timeout: config.pool.idleTimeout,
92
92
  onnotice: () => { },
93
- ...(config.pool.settings !== undefined ? { connection: { ...config.pool.settings } } : {}),
93
+ ...(config.pool.settings !== undefined || applicationName !== undefined
94
+ ? { connection: { ...(applicationName !== undefined ? { application_name: applicationName } : {}), ...config.pool.settings } }
95
+ : {}),
94
96
  ...(debug ? { debug } : {}),
95
97
  });
96
98
  const observerOnly = observability !== undefined && isObserverOnly(observability);
@@ -1 +1 @@
1
- {"version":3,"file":"pool.js","sourceRoot":"","sources":["../../../src/data/db/pool.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAA;AAC/B,OAAO,EAAE,OAAO,EAA2B,MAAM,+BAA+B,CAAA;AAGhF,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+CAA+C,CAAA;AACtF,OAAO,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAA;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AA+CrD,SAAS,eAAe,CAAC,QAA6D;IACpF,MAAM,GAAG,GAA2B,EAAE,CAAA;IACtC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;QAAE,GAAG,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;IAC/G,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,MAAM,WAAW,GAAG,gCAAgC,CAAA;AAKpD,KAAK,UAAU,kBAAkB,CAC/B,MAAoB,EACpB,IAA2B;IAE3B,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CACb,oHAAoH;YACpH,wIAAwI,CACzI,CAAA;IACH,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAA;IAC9B,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;IAC7F,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAClF,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAA8B,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC,CAAA;QACvF,IAAI,MAAM;YAAE,MAAM,MAAM,CAAC,MAAM,CAAA;QAC/B,MAAM,GAAG,GAAwD,EAAE,CAAA;QACnE,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;YAC5B,IAAI,YAAgC,CAAA;YACpC,IAAI,CAAC,OAAO,GAAG,CAAC,EAAU,EAAE,EAAE,GAAG,YAAY,KAAK,EAAE,CAAA,CAAC,CAAC,CAAA;YACtD,IAAI,IAA4B,CAAA;YAChC,IAAI,CAAC;gBACH,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAyB,WAAW,CAAC,CAAA;YAC/D,CAAC;oBAAS,CAAC;gBACT,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;YACrB,CAAC;YACD,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,CAAA;YACxB,IAAI,YAAY,KAAK,SAAS,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;gBACpD,MAAM,IAAI,KAAK,CAAC,uKAAuK,CAAC,CAAA;YAC1L,CAAC;YACD,GAAG,CAAC,IAAI,CAAC,EAAE,YAAY,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAA;QAC7C,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,YAAY,CAAC,CAAA;QACnD,IAAI,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,MAAM,EAAE,CAAC;YAC9D,MAAM,IAAI,KAAK,CAAC,gIAAgI,CAAC,CAAA;QACnJ,CAAC;QACD,OAAO,GAAG,CAAA;IACZ,CAAC;YAAS,CAAC;QACT,KAAK,MAAM,IAAI,IAAI,QAAQ;YAAE,IAAI,CAAC,OAAO,EAAE,CAAA;IAC7C,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,OAAwB;IACvD,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,EAAE;QAC3B,GAAG,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;QACtB,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC;QAClB,GAAG,CAAC,OAAO,EAAE,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpF,GAAG,CAAC,OAAO,EAAE,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,eAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC9F,CAAC,CAAA;IAEF,MAAM,EAAE,GAAG,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;IAE7C,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,MAAM;QACN,OAAO,EAAE,EAAE;QACX,aAAa,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,MAAM,EAAE,SAAS,CAAC;QAC1D,KAAK,CAAC,KAAK,CAAC,OAAO;YACjB,MAAM,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAA;QACvC,CAAC;KACF,CAAA;AACH,CAAC;AAED,6KAA6K;AAC7K,MAAM,UAAU,uBAAuB,CACrC,MAAwB,EACxB,OAAmB,EACnB,aAAqC;IAErC,MAAM,SAAS,GAAG,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAC1E,MAAM,IAAI,GAA0B,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;IAC7E,MAAM,KAAK,GAAG,SAAS,IAAI,IAAI;QAC7B,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE;YACjC,IAAI,IAAI,CAAC,OAAO,IAAI,KAAK,KAAK,WAAW;gBAAE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;YACnE,SAAS,CAAC,UAAU,EAAE,KAAK,EAAE,UAAU,CAAC,CAAA;QAC1C,CAAC,CAAqB;QACxB,CAAC,CAAC,SAAS,CAAA;IACb,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE;QAClC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG;QACpB,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW;QACrC,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC;QAClB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1F,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5B,CAAC,CAAA;IAEF,MAAM,YAAY,GAAG,aAAa,KAAK,SAAS,IAAI,cAAc,CAAC,aAAa,CAAC,CAAA;IACjF,IAAI,YAAY;QAAE,sBAAsB,CAAC,MAAM,CAAC,CAAA;IAEhD,MAAM,EAAE,GAAG,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;IAE7C,OAAO;QACL,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,IAAI,MAAM;YACR,IAAI,YAAY;gBAAE,0BAA0B,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YACzD,OAAO,MAAM,CAAA;QACf,CAAC;QACD,OAAO,EAAE,EAAE;QACX,aAAa,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC;QACrD,KAAK,CAAC,KAAK,CAAC,OAAO;YACjB,OAAO,EAAE,CAAA;YACT,MAAM,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAA;QACvC,CAAC;KACF,CAAA;AACH,CAAC;AAED,SAAS,UAAU,CAAC,OAAgD;IAClE,OAAO,OAAO,EAAE,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,cAAc,EAAE,CAAA;AACzF,CAAC"}
1
+ {"version":3,"file":"pool.js","sourceRoot":"","sources":["../../../src/data/db/pool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * What this process has reserved on each Postgres server, published to the
3
+ * server itself: one presence connection per server whose `application_name`
4
+ * is `pipework:<id>:<reservation>`, plus pool connections tagged
5
+ * `pipework:<id>`. The session is the liveness signal: a dead process's
6
+ * presence row leaves pg_stat_activity with its connection.
7
+ */
8
+ export interface ReservationPublisher {
9
+ readonly id: string;
10
+ /** application_name for a publishing pool's connections. */
11
+ readonly poolTag: string;
12
+ /** Adds `max` to the reservation on the URL's server; the returned function subtracts it (once). */
13
+ reserve(url: string, max: number): () => void;
14
+ /** Settles when every publication started so far has landed. */
15
+ settled(): Promise<void>;
16
+ /** Ends every presence connection. */
17
+ closeAll(): Promise<void>;
18
+ }
19
+ export declare function serverKey(url: string): string;
20
+ export declare function createReservationPublisher(): ReservationPublisher;
21
+ export interface ConnectionBudget {
22
+ /** The server's `max_connections`. */
23
+ readonly maxConnections: number;
24
+ /** `superuser_reserved_connections` plus `reserved_connections` (PG16+; 0 before). */
25
+ readonly reserved: number;
26
+ /** Client backends open now, across the whole server, plus other roles' background workers that the reading role cannot tell apart. */
27
+ readonly held: number;
28
+ /** For every other live publishing pipework process on this server: its reservation minus the connections it holds (never below 0), summed. */
29
+ readonly othersUnopened: number;
30
+ /** `maxConnections - reserved - held - othersUnopened`. */
31
+ readonly free: number;
32
+ }
33
+ export declare const BUDGET_QUERY = "\nSELECT current_setting('max_connections')::int AS max_connections,\n current_setting('superuser_reserved_connections')::int + coalesce(current_setting('reserved_connections', true)::int, 0) AS reserved,\n (SELECT count(*)::int FROM pg_stat_activity WHERE datid IS NOT NULL AND (backend_type = 'client backend' OR backend_type IS NULL)) AS held,\n coalesce((SELECT array_agg(application_name::text) FROM pg_stat_activity WHERE application_name LIKE 'pipework:%'), '{}') AS names";
34
+ export declare function computeBudget(row: {
35
+ max_connections: number;
36
+ reserved: number;
37
+ held: number;
38
+ names: readonly string[];
39
+ }, ownId: string): ConnectionBudget;
40
+ //# sourceMappingURL=reservation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reservation.d.ts","sourceRoot":"","sources":["../../../src/data/db/reservation.ts"],"names":[],"mappings":"AAIA;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,4DAA4D;IAC5D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,oGAAoG;IACpG,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,IAAI,CAAA;IAC7C,gEAAgE;IAChE,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IACxB,sCAAsC;IACtC,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CAC1B;AASD,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAG7C;AAED,wBAAgB,0BAA0B,IAAI,oBAAoB,CAgEjE;AAED,MAAM,WAAW,gBAAgB;IAC/B,sCAAsC;IACtC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,sFAAsF;IACtF,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,uIAAuI;IACvI,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,+IAA+I;IAC/I,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,2DAA2D;IAC3D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACtB;AAKD,eAAO,MAAM,YAAY,ueAI4G,CAAA;AAErI,wBAAgB,aAAa,CAC3B,GAAG,EAAE;IAAE,eAAe,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,EAC1F,KAAK,EAAE,MAAM,GACZ,gBAAgB,CAwBlB"}
@@ -0,0 +1,108 @@
1
+ import { randomUUID } from 'node:crypto';
2
+ import postgres from 'postgres';
3
+ import { getBaseLogger } from '../../core/logging/index.js';
4
+ export function serverKey(url) {
5
+ const parsed = new URL(url);
6
+ return `${parsed.hostname}:${parsed.port === '' ? '5432' : parsed.port}`;
7
+ }
8
+ export function createReservationPublisher() {
9
+ const id = randomUUID();
10
+ const servers = new Map();
11
+ const name = (reservation) => `pipework:${id}:${String(reservation)}`;
12
+ const publish = (entry) => {
13
+ entry.chain = entry.chain.then(async () => {
14
+ try {
15
+ if (entry.reservation <= 0) {
16
+ const client = entry.client;
17
+ entry.client = undefined;
18
+ if (client)
19
+ await client.end({ timeout: 5 });
20
+ return;
21
+ }
22
+ const value = name(entry.reservation);
23
+ if (!entry.client) {
24
+ entry.client = postgres(entry.url, {
25
+ max: 1,
26
+ idle_timeout: 0,
27
+ onnotice: () => { },
28
+ connection: { application_name: value },
29
+ });
30
+ }
31
+ // A reconnect re-sends the startup packet; keep it current.
32
+ entry.client.options.connection['application_name'] = value;
33
+ await entry.client.unsafe('SELECT set_config(\'application_name\', $1, false)', [value]);
34
+ }
35
+ catch (err) {
36
+ getBaseLogger().warn({ err }, 'Could not publish the connection reservation');
37
+ }
38
+ });
39
+ };
40
+ return {
41
+ id,
42
+ poolTag: `pipework:${id}`,
43
+ reserve(url, max) {
44
+ const key = serverKey(url);
45
+ let entry = servers.get(key);
46
+ if (!entry) {
47
+ entry = { url, reservation: 0, client: undefined, chain: Promise.resolve() };
48
+ servers.set(key, entry);
49
+ }
50
+ const target = entry;
51
+ target.reservation += max;
52
+ publish(target);
53
+ let released = false;
54
+ return () => {
55
+ if (released)
56
+ return;
57
+ released = true;
58
+ target.reservation -= max;
59
+ publish(target);
60
+ };
61
+ },
62
+ async settled() {
63
+ await Promise.all([...servers.values()].map(e => e.chain));
64
+ },
65
+ async closeAll() {
66
+ for (const entry of servers.values()) {
67
+ entry.reservation = 0;
68
+ publish(entry);
69
+ }
70
+ await this.settled();
71
+ },
72
+ };
73
+ }
74
+ const PRESENCE = /^pipework:([0-9a-f-]{36}):(\d+)$/;
75
+ const POOL_TAG = /^pipework:([0-9a-f-]{36})$/;
76
+ export const BUDGET_QUERY = `
77
+ SELECT current_setting('max_connections')::int AS max_connections,
78
+ current_setting('superuser_reserved_connections')::int + coalesce(current_setting('reserved_connections', true)::int, 0) AS reserved,
79
+ (SELECT count(*)::int FROM pg_stat_activity WHERE datid IS NOT NULL AND (backend_type = 'client backend' OR backend_type IS NULL)) AS held,
80
+ coalesce((SELECT array_agg(application_name::text) FROM pg_stat_activity WHERE application_name LIKE 'pipework:%'), '{}') AS names`;
81
+ export function computeBudget(row, ownId) {
82
+ const reservation = new Map();
83
+ const holding = new Map();
84
+ for (const n of row.names) {
85
+ const presence = PRESENCE.exec(n);
86
+ if (presence) {
87
+ reservation.set(presence[1], Number(presence[2]));
88
+ continue;
89
+ }
90
+ const pool = POOL_TAG.exec(n);
91
+ if (pool)
92
+ holding.set(pool[1], (holding.get(pool[1]) ?? 0) + 1);
93
+ }
94
+ let othersUnopened = 0;
95
+ for (const [pid, reserved] of reservation) {
96
+ if (pid === ownId)
97
+ continue;
98
+ othersUnopened += Math.max(0, reserved - (holding.get(pid) ?? 0));
99
+ }
100
+ return {
101
+ maxConnections: row.max_connections,
102
+ reserved: row.reserved,
103
+ held: row.held,
104
+ othersUnopened,
105
+ free: row.max_connections - row.reserved - row.held - othersUnopened,
106
+ };
107
+ }
108
+ //# sourceMappingURL=reservation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reservation.js","sourceRoot":"","sources":["../../../src/data/db/reservation.ts"],"names":[],"mappings":"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"}
@@ -111,8 +111,16 @@ function buildForeignKey(cfk, table) {
111
111
  columns: cfk.columns.map(k => table[k]),
112
112
  foreignColumns: cfk.references.columns.map(k => refTable[k]),
113
113
  });
114
- if (cfk.onDelete !== undefined)
114
+ if (typeof cfk.onDelete === 'object') {
115
+ const setNull = 'setNull' in cfk.onDelete;
116
+ const list = 'setNull' in cfk.onDelete ? cfk.onDelete.setNull : cfk.onDelete.setDefault;
117
+ builder = builder
118
+ .onDelete(setNull ? 'set null' : 'set default')
119
+ .onDeleteColumns(list.map(k => table[k].name));
120
+ }
121
+ else if (cfk.onDelete !== undefined) {
115
122
  builder = builder.onDelete(cfk.onDelete);
123
+ }
116
124
  if (cfk.onUpdate !== undefined)
117
125
  builder = builder.onUpdate(cfk.onUpdate);
118
126
  return builder;
@@ -162,6 +170,29 @@ function validateKeyOptions(tableName, fields, options) {
162
170
  ' A composite foreign key maps local columns positionally to foreign columns.\n' +
163
171
  ' Give the same number of columns on both sides.\n');
164
172
  }
173
+ if (typeof cfk.onDelete === 'object') {
174
+ const action = 'setNull' in cfk.onDelete ? 'setNull' : 'setDefault';
175
+ const list = 'setNull' in cfk.onDelete ? cfk.onDelete.setNull : cfk.onDelete.setDefault;
176
+ const fkName = `(${cfk.columns.join(', ')})`;
177
+ if (list.length === 0) {
178
+ throw new Error(`[pipework] "${tableName}" foreignKey ${fkName} onDelete { ${action} } has an empty column list.\n\n` +
179
+ ` Name the fields to clear, from: ${cfk.columns.join(', ')}.\n` +
180
+ ` To clear every column of the key, use onDelete: '${action === 'setNull' ? 'set null' : 'set default'}'.\n`);
181
+ }
182
+ const seen = new Set();
183
+ for (const k of list) {
184
+ if (seen.has(k)) {
185
+ throw new Error(`[pipework] "${tableName}" foreignKey ${fkName} onDelete { ${action} } lists "${k}" twice.\n\n` +
186
+ ' Remove the duplicate from the column list.\n');
187
+ }
188
+ seen.add(k);
189
+ if (!cfk.columns.includes(k)) {
190
+ throw new Error(`[pipework] "${tableName}" foreignKey ${fkName} onDelete { ${action} } lists "${k}", which is not a column of the key.\n\n` +
191
+ ` The list must be a subset of the key's columns: ${cfk.columns.join(', ')}.\n` +
192
+ ' Fix the field name in the column list.\n');
193
+ }
194
+ }
195
+ }
165
196
  }
166
197
  }
167
198
  }
@@ -1 +1 @@
1
- {"version":3,"file":"build-table.js","sourceRoot":"","sources":["../../../src/data/domain/build-table.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build-table.js","sourceRoot":"","sources":["../../../src/data/domain/build-table.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,QAAQ,EAAE,OAAO,EACxD,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAC3C,KAAK,EAAE,UAAU,EAAE,UAAU,GAC9B,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AAEvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE1C,MAAM,UAAU,YAAY,CAC1B,SAAiB,EACjB,MAAuC,EACvC,OAAsB;IAEtB,IAAI,OAAO,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CACb,eAAe,SAAS,oDAAoD;YAC5E,sDAAsD;YACtD,yEAAyE,CAC1E,CAAA;IACH,CAAC;IAED,oHAAoH;IACpH,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,CAAA;IAEvE,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;IAE9C,MAAM,aAAa,GACjB,OAAO,CAAC,OAAO,KAAK,SAAS;QAC7B,OAAO,CAAC,UAAU,KAAK,SAAS;QAChC,OAAO,CAAC,WAAW,KAAK,SAAS;QACjC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAA;IAExB,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;IACpC,CAAC;IAED,OAAO,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;QAC3C,MAAM,GAAG,GAAU,CAAC,GAAG,WAAW,CAAC,CAAA;QAEnC,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YACrC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAoB,EAAE,CAAC,CAAC,CAAA;QAC7F,CAAC;QAED,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACtC,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;gBACtC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAA;YACvC,CAAC;QACH,CAAC;QAED,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAClC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;YACtC,KAAK,MAAM,CAAC,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC9C,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACf,CAAC;QACH,CAAC;QAED,OAAO,GAAG,CAAA;IACZ,CAAC,CAAC,CAAA;IACF,sDAAsD;AACxD,CAAC;AAED;;;;GAIG;AACH,qGAAqG;AACrG,MAAM,UAAU,YAAY,CAC1B,MAAuC,EACvC,QAAiB,EACjB,SAAS,GAAG,EAAE;IAEd,MAAM,OAAO,GAAwB,EAAE,CAAA;IACvC,MAAM,WAAW,GAAU,EAAE,CAAA;IAE7B,KAAK,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACvD,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAA;QAC7B,MAAM,OAAO,GAAG,YAAY,CAAC,GAAG,CAAC,CAAA;QAEjC,IAAI,GAAG,GAAG,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;QACpC,IAAI,IAAI,CAAC,KAAK;YAAE,GAAG,GAAG,GAAG,CAAC,KAAK,EAAE,CAAA;QAEjC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,GAAG,GAAG,GAAG,CAAC,OAAO,EAAE,CAAA;QACrB,CAAC;QAED,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAA;YAClB,SAAQ;QACV,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACjC,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACnC,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACjC,GAAG,GAAG,GAAG,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QAChD,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,GAAG,GAAG,GAAG,CAAC,UAAU,EAAE,CAAA;QACxB,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,GAAG,GAAG,GAAG,CAAC,MAAM,EAAE,CAAA;QACpB,CAAC;QAED,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC/C,GAAG,GAAG,GAAG,CAAC,aAAa,EAAE,CAAA;QAC3B,CAAC;aAAM,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,YAAY,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YACvF,GAAG,GAAG,GAAG,CAAC,UAAU,EAAE,CAAA;QACxB,CAAC;aAAM,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,YAAY,KAAK,YAAY,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC1F,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAA,sBAAsB,CAAC,CAAA;QAC9C,CAAC;aAAM,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YAC9D,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;QACtC,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;YACtE,MAAM,MAAM,GAAG,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;YAC9D,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,EAAE,CAAA;YAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAA;YACrC,GAAG,GAAG,GAAG,CAAC,UAAU,CAAC,GAAG,EAAE;gBACxB,MAAM,MAAM,GAAI,QAAgB,CAAC,QAAQ,CAAC,CAAA;gBAC1C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;oBACzB,MAAM,IAAI,KAAK,CACb,eAAe,SAAS,IAAI,GAAG,iBAAiB,MAAM,CAAC,KAAK,IAAI,QAAQ,8BAA8B;wBACtG,6BAA6B,MAAM,CAAC,KAAK,6BAA6B,CACvE,CAAA;gBACH,CAAC;gBACD,OAAO,MAAM,CAAA;YACf,CAAC,CAAC,CAAA;QACJ,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAA;QAElB,WAAW,CAAC,OAAO,EAAE,IAAI,EAAE,WAAW,CAAC,CAAA;IACzC,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,CAAA;AACjC,CAAC;AACD,sDAAsD;AAEtD,0GAA0G;AAC1G,SAAS,eAAe,CAAC,GAAwB,EAAE,KAA0B;IAC3E,MAAM,MAAM,GAAG,oBAAoB,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA;IAC9D,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,EAAyB,CAAA;IACtD,IAAI,OAAO,GAAG,UAAU,CAAC;QACvB,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAoB;QAC1D,cAAc,EAAE,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAoB;KAChF,CAAC,CAAA;IACF,IAAI,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,SAAS,IAAI,GAAG,CAAC,QAAQ,CAAA;QACzC,MAAM,IAAI,GAAG,SAAS,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAA;QACvF,OAAO,GAAG,OAAO;aACd,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC;aAC9C,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAE,KAAK,CAAC,CAAC,CAAsB,CAAC,IAAI,CAAC,CAAC,CAAA;IACxE,CAAC;SAAM,IAAI,GAAG,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACtC,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IAC1C,CAAC;IACD,IAAI,GAAG,CAAC,QAAQ,KAAK,SAAS;QAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IACxE,OAAO,OAAO,CAAA;AAChB,CAAC;AACD,sDAAsD;AAEtD,SAAS,kBAAkB,CACzB,SAAiB,EACjB,MAAuC,EACvC,OAAsB;IAEtB,MAAM,GAAG,GAAG,CAAC,GAAW,EAAW,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAEvF,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;QAC1E,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CACb,eAAe,SAAS,qFAAqF,OAAO,QAAQ;gBAC5H,0CAA0C;gBAC1C,sEAAsE,OAAO,MAAM,CACpF,CAAA;QACH,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YACrC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACd,MAAM,IAAI,KAAK,CACb,eAAe,SAAS,0CAA0C,GAAG,QAAQ;oBAC7E,mBAAmB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;oBACrD,kDAAkD,CACnD,CAAA;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QACtC,MAAM,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC,MAAM,CAAA;QACtC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CACb,eAAe,SAAS,2CAA2C,GAAG,QAAQ;gBAC9E,mBAAmB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;gBACrD,oDAAoD,CACrD,CAAA;QACH,CAAC;QACD,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1E,MAAM,IAAI,KAAK,CACb,eAAe,SAAS,wBAAwB,GAAG,WAAW,GAAG,kCAAkC;gBACnG,8GAA8G;gBAC9G,UAAU,GAAG,kDAAkD,GAAG,OAAO,CAC1E,CAAA;QACH,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QACtC,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;YACtC,KAAK,MAAM,GAAG,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;gBAC9B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;oBACd,MAAM,IAAI,KAAK,CACb,eAAe,SAAS,gDAAgD,GAAG,QAAQ;wBACnF,mBAAmB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;wBACrD,mDAAmD,CACpD,CAAA;gBACH,CAAC;YACH,CAAC;YACD,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;gBACzD,MAAM,IAAI,KAAK,CACb,eAAe,SAAS,uCAAuC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe;oBAC1J,iFAAiF;oBACjF,oDAAoD,CACrD,CAAA;YACH,CAAC;YACD,IAAI,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACrC,MAAM,MAAM,GAAG,SAAS,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAA;gBACnE,MAAM,IAAI,GAAG,SAAS,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAA;gBACvF,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAA;gBAC5C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACtB,MAAM,IAAI,KAAK,CACb,eAAe,SAAS,gBAAgB,MAAM,eAAe,MAAM,kCAAkC;wBACrG,qCAAqC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;wBAChE,sDAAsD,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,aAAa,MAAM,CAC9G,CAAA;gBACH,CAAC;gBACD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;gBAC9B,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;oBACrB,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;wBAChB,MAAM,IAAI,KAAK,CACb,eAAe,SAAS,gBAAgB,MAAM,eAAe,MAAM,aAAa,CAAC,cAAc;4BAC/F,gDAAgD,CACjD,CAAA;oBACH,CAAC;oBACD,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;oBACX,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC7B,MAAM,IAAI,KAAK,CACb,eAAe,SAAS,gBAAgB,MAAM,eAAe,MAAM,aAAa,CAAC,0CAA0C;4BAC3H,qDAAqD,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;4BAChF,4CAA4C,CAC7C,CAAA;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,WAAW,GAAG,UAAU,CAAmB;IAC/C,QAAQ,KAAK,OAAO,QAAQ,CAAA,CAAC,CAAC;CAC/B,CAAC,CAAA;AAEF,mHAAmH;AACnH,SAAS,WAAW,CAAC,OAAe,EAAE,IAAe;IACnD,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,MAAM;YACT,OAAO,IAAI,CAAC,OAAO,CAAC,CAAA;QACtB,KAAK,MAAM;YACT,OAAO,IAAI,CAAC,OAAO,CAAC,CAAA;QACtB,KAAK,SAAS;YACZ,OAAO,OAAO,CAAC,OAAO,CAAC,CAAA;QACzB,KAAK,QAAQ;YACX,OAAO,MAAM,CAAC,OAAO,CAAC,CAAA;QACxB,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA;QAC9C,KAAK,SAAS;YACZ,OAAO,OAAO,CAAC,OAAO,CAAC,CAAA;QACzB,KAAK,WAAW;YACd,OAAO,SAAS,CAAC,OAAO,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAA;QACnD,KAAK,MAAM;YACT,OAAO,IAAI,CAAC,OAAO,CAAC,CAAA;QACtB,KAAK,MAAM;YACT,OAAO,IAAI,CAAC,OAAO,CAAC,CAAA;QACtB,KAAK,OAAO;YACV,OAAO,KAAK,CAAC,OAAO,CAAC,CAAA;QACvB,KAAK,SAAS;YACZ,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;gBACjC,OAAO,OAAO,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAA;YACnF,CAAC;YACD,OAAO,OAAO,CAAC,OAAO,CAAC,CAAA;QACzB,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,CAAA;YACjC,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,CAAA;YAChC,OAAO,OAAO,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAA;QACrD,CAAC;QACD,KAAK,OAAO;YACV,OAAO,WAAW,CAAC,OAAO,CAAC,CAAA;QAC7B,KAAK,QAAQ;YACX,OAAO,IAAI,CAAC,YAAY,CAAA;QAC1B;YACE,MAAM,IAAI,KAAK,CAAC,kCAAkC,IAAI,CAAC,IAAc,EAAE,CAAC,CAAA;IAC5E,CAAC;AACH,CAAC;AAED,gGAAgG;AAChG,SAAS,WAAW,CAAC,OAAe,EAAE,IAAe,EAAE,MAAa;IAClE,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK;QAAE,OAAM;IAEhD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,CAAA;IACjJ,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,KAAK,MAAM,CAAA;IAEnC,IAAI,SAAS,EAAE,CAAC;QACd,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;YACrD,MAAM,CAAC,IAAI,CACT,KAAK,CAAC,GAAG,OAAO,QAAQ,EAAE,GAAG,CAAA,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAC5I,CAAA;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;YAClC,MAAM,CAAC,IAAI,CACT,KAAK,CAAC,GAAG,OAAO,MAAM,EAAE,GAAG,CAAA,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAClF,CAAA;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;YAClC,MAAM,CAAC,IAAI,CACT,KAAK,CAAC,GAAG,OAAO,MAAM,EAAE,GAAG,CAAA,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAClF,CAAA;QACH,CAAC;IACH,CAAC;IAED,IAAI,MAAM,EAAE,CAAC;QACX,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;YACrD,MAAM,CAAC,IAAI,CACT,KAAK,CAAC,GAAG,OAAO,SAAS,EAAE,GAAG,CAAA,UAAU,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,eAAe,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAC7J,CAAA;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;YAClC,MAAM,CAAC,IAAI,CACT,KAAK,CAAC,GAAG,OAAO,aAAa,EAAE,GAAG,CAAA,UAAU,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CACjG,CAAA;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;YAClC,MAAM,CAAC,IAAI,CACT,KAAK,CAAC,GAAG,OAAO,aAAa,EAAE,GAAG,CAAA,UAAU,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CACjG,CAAA;QACH,CAAC;IACH,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxF,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;QACtE,MAAM,CAAC,IAAI,CACT,KAAK,CAAC,GAAG,OAAO,OAAO,EAAE,GAAG,CAAA,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CACvF,CAAA;IACH,CAAC;AACH,CAAC"}
@@ -5,5 +5,6 @@ export { camelToSnake } from './naming.js';
5
5
  export { resetFactoryCounter } from './build-factory.js';
6
6
  export { appendOnlyScopeField, effectiveDatedTrait, appendOnlyVersionsTrait, auditedTrait, softDeletedTrait } from './traits.js';
7
7
  export type { Branded, Brand, InferSelect, InferFieldOutput } from './brand.js';
8
- export type { FieldDescriptor, FieldRecord, FieldMeta, DomainDefinition, DefinedTable, ExternalTable, DefinitionMethods, DefineOptions, FactoryBuilder, FactoryOptions, TraitDefinition, FieldColumn, ProjectedColumns, EffectiveDatedFields, AppendOnlyVersionsFields, AuditedFields, SoftDeletedFields } from './types.js';
8
+ export type { InsertProjection, SelectProjection, UpdateProjection } from './projections.js';
9
+ export type { FieldKind, FieldFlags, ForeignKeyAction, CompositeForeignKey, PartitionSpec, FieldDescriptor, FieldRecord, FieldMeta, DomainDefinition, DefinedTable, ExternalTable, DefinitionMethods, DefineOptions, FactoryBuilder, FactoryOptions, TraitDefinition, FieldColumn, ProjectedColumns, EffectiveDatedFields, AppendOnlyVersionsFields, AuditedFields, SoftDeletedFields } from './types.js';
9
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/data/domain/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,cAAc,EAAE,MAAM,YAAY,CAAA;AACvD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAChE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAChI,YAAY,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAC/E,YAAY,EAAE,eAAe,EAAE,WAAW,EAAE,SAAS,EAAE,gBAAgB,EAAE,YAAY,EAAE,aAAa,EAAE,iBAAiB,EACrH,aAAa,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAC9D,WAAW,EAAE,gBAAgB,EAC7B,oBAAoB,EAAE,wBAAwB,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/data/domain/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,cAAc,EAAE,MAAM,YAAY,CAAA;AACvD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAChE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAChI,YAAY,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAC/E,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAC5F,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,aAAa,EACvF,eAAe,EAAE,WAAW,EAAE,SAAS,EAAE,gBAAgB,EAAE,YAAY,EAAE,aAAa,EAAE,iBAAiB,EACzG,aAAa,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAC9D,WAAW,EAAE,gBAAgB,EAC7B,oBAAoB,EAAE,wBAAwB,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA"}
@@ -110,7 +110,15 @@ export interface CompositeForeignKey {
110
110
  /** Foreign field keys, positionally matched to `columns`. */
111
111
  readonly columns: readonly string[];
112
112
  };
113
- readonly onDelete?: ForeignKeyAction;
113
+ /**
114
+ * `{ setNull: [...] }` / `{ setDefault: [...] }` clear only the listed local
115
+ * fields (Postgres 15+), so a tenant column in the key stays in place.
116
+ */
117
+ readonly onDelete?: ForeignKeyAction | {
118
+ readonly setNull: readonly string[];
119
+ } | {
120
+ readonly setDefault: readonly string[];
121
+ };
114
122
  readonly onUpdate?: ForeignKeyAction;
115
123
  }
116
124
  /** Resolves a possibly-lazy definition reference to its concrete DefinedTable. */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/data/domain/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/data/domain/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAC1D,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AACrE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAE5F,MAAM,MAAM,SAAS,GACjB,MAAM,GACN,MAAM,GACN,SAAS,GACT,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,WAAW,GACX,MAAM,GACN,MAAM,GACN,OAAO,GACP,SAAS,GACT,OAAO,GACP,OAAO,GACP,QAAQ,CAAA;AAEZ,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;IACxB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAA;IAC/B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAA;IAC/B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IACxB,wFAAwF;IACxF,QAAQ,CAAC,SAAS,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,EAAE,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,CAAA;KAAE,CAAA;IACvD,2FAA2F;IAC3F,QAAQ,CAAC,SAAS,CAAC,EAAE,aAAa,CAAA;IAClC,8FAA8F;IAC9F,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;IACvB;;;;OAIG;IACH,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,SAAS,CAAC,EAAE;QACnB;;;;;WAKG;QACH,QAAQ,CAAC,UAAU,EAAE,gBAAgB,GAAG,CAAC,MAAM,gBAAgB,CAAC,CAAA;QAChE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;QACtB;;;;;;WAMG;QACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAC5B,CAAA;IACD,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAA;IACrB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,SAAS,CAAC,EAAE;QAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC/D,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IACvC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,OAAO,CAAA;IAC/B,QAAQ,CAAC,YAAY,CAAC,EAAE,QAAQ,CAAA;IAChC,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAA;IAC/B,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,OAAO,CAAA;CACrC;AAED;;;;;GAKG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;IAChC,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;IAC9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAC3B,wEAAwE;IACxE,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;IACzB,wFAAwF;IACxF,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAC1B;AAED,+FAA+F;AAC/F,MAAM,WAAW,eAAe,CAAC,OAAO,GAAG,OAAO,EAAE,MAAM,SAAS,UAAU,GAAG,UAAU;IACxF,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAA;IACzB,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CACzB;AAGD,KAAK,kBAAkB,GAAG,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;AAEnD,mFAAmF;AACnF,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAA;AAE5D,+DAA+D;AAC/D,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,UAAU,GAAG,WAAW,GAAG,UAAU,GAAG,aAAa,CAAA;AAEhG,kGAAkG;AAClG,MAAM,WAAW,mBAAmB;IAClC,kDAAkD;IAClD,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAA;IACnC,QAAQ,CAAC,UAAU,EAAE;QACnB;;;;;WAKG;QAEH,QAAQ,CAAC,UAAU,EAAE,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,YAAY,CAAC,GAAG,CAAC,CAAC,CAAA;QAClE,6DAA6D;QAC7D,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAA;KACpC,CAAA;IACD;;;OAGG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,gBAAgB,GAAG;QAAE,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAA;KAAE,GAAG;QAAE,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAA;KAAE,CAAA;IAC3H,QAAQ,CAAC,QAAQ,CAAC,EAAE,gBAAgB,CAAA;CACrC;AAED,kFAAkF;AAElF,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,YAAY,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAEvF;AAED,mGAAmG;AACnG,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAC1B,yCAAyC;IACzC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CACxB;AAED,uGAAuG;AACvG,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAE1B,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACxE,6FAA6F;IAC7F,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IACvC,kFAAkF;IAClF,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,mBAAmB,EAAE,CAAA;IACrD,uFAAuF;IACvF,QAAQ,CAAC,WAAW,CAAC,EAAE,aAAa,CAAA;IACpC;;;;OAIG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAC9B;AAED,wGAAwG;AACxG,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,eAAe,EAAE,KAAK,SAAS,MAAM,GAAG,MAAM,IAAI,WAAW,CAAC;IAC9F,IAAI,EAAE,WAAW,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAA;IACtC,OAAO,EAAE,IAAI,SAAS,gBAAgB,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,IAAI,CAAA;IAExD,UAAU,EAAE,CAAC,SAAS,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,YAAY,CAAC,SAAS,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,SAAS,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC,WAAW,CAAC,SAAS,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,KAAK,CAAA;IAC1L,SAAS,EAAE,KAAK,CAAA;CACjB,CAAC,GAAG;IAGH,QAAQ,CAAC,CAAC,EAAE;QAAE,QAAQ,CAAC,SAAS,EAAE,CAAC,SAAS,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,CAAC,SAAS,IAAI,GAAG;YAAE,IAAI,EAAE,QAAQ,CAAA;SAAE,GAAG,SAAS,CAAC,GAAG,SAAS,CAAC;QAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;KAAE,CAAA;CAC7L,CAAA;AAED,iEAAiE;AACjE,MAAM,MAAM,gBAAgB,CAAC,OAAO,SAAS,WAAW,EAAE,KAAK,SAAS,MAAM,GAAG,MAAM,IAAI;IACzF,QAAQ,EAAE,CAAC,IAAI,MAAM,OAAO,GAAG,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;CACvE,CAAA;AAED,4FAA4F;AAC5F,MAAM,WAAW,iBAAiB,CAAC,OAAO,SAAS,WAAW,GAAG,WAAW,EAAE,KAAK,SAAS,MAAM,GAAG,MAAM;IACzG,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;IACrB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAA;IAChC,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAA;IACnC,KAAK,IAAI,KAAK,CAAA;IACd,WAAW,IAAI,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAA;IACnD,WAAW,IAAI,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAA;IACnD,WAAW,IAAI,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAA;IACnD,OAAO,IAAI,cAAc,CAAA;IACzB,cAAc,IAAI,YAAY,CAAC,OAAO,GAAG,oBAAoB,EAAE,KAAK,CAAC,CAAA;IACrE,8IAA8I;IAC9I,kBAAkB,IAAI,YAAY,CAAC,OAAO,GAAG,wBAAwB,EAAE,KAAK,CAAC,CAAA;IAC7E,OAAO,IAAI,YAAY,CAAC,OAAO,GAAG,aAAa,EAAE,KAAK,CAAC,CAAA;IACvD,WAAW,IAAI,YAAY,CAAC,OAAO,GAAG,iBAAiB,EAAE,KAAK,CAAC,CAAA;IAC/D,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;IACrC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAA;IAC1D,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAA;CAC3D;AAED;;;;;;;;;;GAUG;AACH,MAAM,MAAM,YAAY,CAAC,OAAO,SAAS,WAAW,GAAG,WAAW,EAAE,KAAK,SAAS,MAAM,GAAG,MAAM,IAC/F,OAAO,CAAC;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,OAAO,EAAE,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAAC,OAAO,EAAE,IAAI,CAAA;CAAE,CAAC,GAC5G,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,GAChC,iBAAiB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;AAErC;;;GAGG;AACH,MAAM,MAAM,aAAa,CAAC,OAAO,SAAS,WAAW,GAAG,WAAW,EAAE,KAAK,SAAS,MAAM,GAAG,MAAM,IAChG,OAAO,CAAC;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAAC,OAAO,EAAE,IAAI,CAAA;CAAE,CAAC,GAChG,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,GAChC;IACA,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;IACrB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE;QAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;IACvE,WAAW,IAAI,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAA;IACnD,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;CACtC,CAAA;AAEH;;;GAGG;AACH,MAAM,MAAM,gBAAgB,CAAC,OAAO,SAAS,WAAW,GAAG,WAAW,EAAE,KAAK,SAAS,MAAM,GAAG,MAAM,IACnG,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;AAE9B,0FAA0F;AAC1F,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;CAC7B;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,aAAa,EAAE,eAAe,CAAC,IAAI,EAAE;QAAE,WAAW,EAAE,IAAI,CAAC;QAAC,UAAU,EAAE,IAAI,CAAA;KAAE,CAAC,CAAA;IACtF,QAAQ,CAAC,WAAW,EAAE,eAAe,CAAC,IAAI,GAAG,IAAI,EAAE;QAAE,WAAW,EAAE,IAAI,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE,CAAC,CAAA;IACzF,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC,MAAM,EAAE;QAAE,WAAW,EAAE,IAAI,CAAC;QAAC,UAAU,EAAE,IAAI,CAAA;KAAE,CAAC,CAAA;CACnF;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,aAAa,EAAE,eAAe,CAAC,IAAI,EAAE;QAAE,WAAW,EAAE,IAAI,CAAA;KAAE,CAAC,CAAA;IACpE,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC,MAAM,EAAE;QAAE,WAAW,EAAE,IAAI,CAAA;KAAE,CAAC,CAAA;IAChE,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC,MAAM,GAAG,IAAI,EAAE;QAAE,WAAW,EAAE,IAAI,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE,CAAC,CAAA;CACtF;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC,IAAI,EAAE;QAAE,WAAW,EAAE,IAAI,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAC;QAAC,UAAU,EAAE,IAAI,CAAA;KAAE,CAAC,CAAA;IAClG,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC,IAAI,EAAE;QAAE,WAAW,EAAE,IAAI,CAAC;QAAC,UAAU,EAAE,IAAI,CAAA;KAAE,CAAC,CAAA;IAClF,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC,MAAM,GAAG,IAAI,EAAE;QAAE,WAAW,EAAE,IAAI,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE,CAAC,CAAA;IACzG,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC,MAAM,GAAG,IAAI,EAAE;QAAE,WAAW,EAAE,IAAI,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE,CAAC,CAAA;CAC1F;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC,IAAI,GAAG,IAAI,EAAE;QAAE,WAAW,EAAE,IAAI,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE,CAAC,CAAA;IACvF,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC,MAAM,GAAG,IAAI,EAAE;QAAE,WAAW,EAAE,IAAI,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE,CAAC,CAAA;CAC1F;AAED,mFAAmF;AACnF,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;IAChH,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;CAC9L;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,CAAC,EAAE,OAAO,CAAA;IACrB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAC3B"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/data/domain/types.ts"],"names":[],"mappings":"AAuIA,kFAAkF;AAClF,kIAAkI;AAClI,MAAM,UAAU,oBAAoB,CAA8B,GAAkB;IAClF,OAAO,OAAO,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAA;AAChD,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/data/domain/types.ts"],"names":[],"mappings":"AA2IA,kFAAkF;AAClF,kIAAkI;AAClI,MAAM,UAAU,oBAAoB,CAA8B,GAAkB;IAClF,OAAO,OAAO,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAA;AAChD,CAAC"}
@@ -15,6 +15,20 @@ export interface ApplyOptions {
15
15
  * await and a caller watching for progress sees none. Issue #380.
16
16
  */
17
17
  onMigration?: (tag: string, index: number, total: number) => void;
18
+ /**
19
+ * Called after each statement of a migration file lands (inside the file's
20
+ * transaction, when it has one), with the 1-based statement and the file's
21
+ * statement count, then the 1-based position of the file among those being
22
+ * applied and their count. A long file is otherwise silent until it commits.
23
+ * Issue #871.
24
+ */
25
+ onStatement?: (tag: string, statement: number, statements: number, index: number, total: number) => void;
26
+ /**
27
+ * Called as each step before the first file finishes (tracker table, legacy
28
+ * tag recovery per file, the unique index, the applied read), with a detail
29
+ * naming it. Issue #871.
30
+ */
31
+ onPrepare?: (detail: string) => void;
18
32
  /**
19
33
  * Called when a no-transaction migration resumes a half-applied file, with
20
34
  * the statement it starts from (1-based) and how many the file holds.
@@ -1 +1 @@
1
- {"version":3,"file":"apply.d.ts","sourceRoot":"","sources":["../../../src/data/migrate/apply.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,YAAY;IAC3B,gBAAgB,EAAE,MAAM,CAAA;IACxB,eAAe,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;IACrB,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B;;;;OAIG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB;;;;OAIG;IACH,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACjE;;;;OAIG;IACH,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CACvE;AASD,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,gGAAgG;IAChG,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,aAAa,EAAE,OAAO,CAAA;CACvB;AAED,wBAAsB,eAAe,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAqI5E;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,YAAY,GAAG,SAAS,EAAE,CA8CjE;AAeD;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAErD;AAED,iFAAiF;AACjF,wBAAgB,iBAAiB,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,CAEjE;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACzB,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,EACpD,eAAe,EAAE,MAAM,GACtB,MAAM,CAiBR;AAMD;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEtD"}
1
+ {"version":3,"file":"apply.d.ts","sourceRoot":"","sources":["../../../src/data/migrate/apply.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,YAAY;IAC3B,gBAAgB,EAAE,MAAM,CAAA;IACxB,eAAe,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;IACrB,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B;;;;OAIG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB;;;;OAIG;IACH,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACjE;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACxG;;;;OAIG;IACH,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;IACpC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CACvE;AAED,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,gGAAgG;IAChG,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,aAAa,EAAE,OAAO,CAAA;CACvB;AAED,wBAAsB,eAAe,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CA6I5E;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,YAAY,GAAG,SAAS,EAAE,CA8BjE;AAeD;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAErD;AAED,iFAAiF;AACjF,wBAAgB,iBAAiB,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,CAEjE;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACzB,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,EACpD,eAAe,EAAE,MAAM,GACtB,MAAM,CAiBR;AAMD;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEtD"}