pipework 0.8.0 → 0.8.1

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 (915) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/dist/auth/auth/sessions.d.ts.map +1 -1
  3. package/dist/auth/auth/sessions.js +23 -7
  4. package/dist/auth/auth/sessions.js.map +1 -1
  5. package/dist/cli/commands/check.d.ts +1 -0
  6. package/dist/cli/commands/check.d.ts.map +1 -1
  7. package/dist/cli/commands/check.js +32 -7
  8. package/dist/cli/commands/check.js.map +1 -1
  9. package/dist/data/domain/build-schema.d.ts.map +1 -1
  10. package/dist/data/domain/build-schema.js +3 -0
  11. package/dist/data/domain/build-schema.js.map +1 -1
  12. package/dist/trace/schema/trace-fields.d.ts +1 -1
  13. package/dist/trace/schema/trace-retained.d.ts +1 -1
  14. package/dist/trace/schema/trace.d.ts +1 -1
  15. package/dist/workspace/changed-files.d.ts.map +1 -1
  16. package/dist/workspace/changed-files.js +5 -3
  17. package/dist/workspace/changed-files.js.map +1 -1
  18. package/dist/workspace/scrub-git-env.d.ts +2 -0
  19. package/dist/workspace/scrub-git-env.d.ts.map +1 -0
  20. package/dist/workspace/scrub-git-env.js +24 -0
  21. package/dist/workspace/scrub-git-env.js.map +1 -0
  22. package/package.json +2 -1
  23. package/dist/REFERENCE.md +0 -873
  24. package/dist/audit/emit.d.ts +0 -3
  25. package/dist/audit/emit.d.ts.map +0 -1
  26. package/dist/audit/emit.js +0 -66
  27. package/dist/audit/emit.js.map +0 -1
  28. package/dist/audit/index.d.ts +0 -3
  29. package/dist/audit/index.d.ts.map +0 -1
  30. package/dist/audit/index.js +0 -2
  31. package/dist/audit/index.js.map +0 -1
  32. package/dist/audit/namespace.d.ts +0 -7
  33. package/dist/audit/namespace.d.ts.map +0 -1
  34. package/dist/audit/namespace.js +0 -7
  35. package/dist/audit/namespace.js.map +0 -1
  36. package/dist/audit/types.d.ts +0 -17
  37. package/dist/audit/types.d.ts.map +0 -1
  38. package/dist/audit/types.js +0 -2
  39. package/dist/audit/types.js.map +0 -1
  40. package/dist/auth/chain.d.ts +0 -26
  41. package/dist/auth/chain.d.ts.map +0 -1
  42. package/dist/auth/chain.js +0 -46
  43. package/dist/auth/chain.js.map +0 -1
  44. package/dist/auth/cookie.d.ts +0 -24
  45. package/dist/auth/cookie.d.ts.map +0 -1
  46. package/dist/auth/cookie.js +0 -59
  47. package/dist/auth/cookie.js.map +0 -1
  48. package/dist/auth/index.d.ts +0 -10
  49. package/dist/auth/index.d.ts.map +0 -1
  50. package/dist/auth/index.js +0 -5
  51. package/dist/auth/index.js.map +0 -1
  52. package/dist/auth/multi-org.d.ts +0 -77
  53. package/dist/auth/multi-org.d.ts.map +0 -1
  54. package/dist/auth/multi-org.js +0 -164
  55. package/dist/auth/multi-org.js.map +0 -1
  56. package/dist/auth/namespace.d.ts +0 -22
  57. package/dist/auth/namespace.d.ts.map +0 -1
  58. package/dist/auth/namespace.js +0 -22
  59. package/dist/auth/namespace.js.map +0 -1
  60. package/dist/auth/sessions.d.ts +0 -70
  61. package/dist/auth/sessions.d.ts.map +0 -1
  62. package/dist/auth/sessions.js +0 -231
  63. package/dist/auth/sessions.js.map +0 -1
  64. package/dist/auth/types.d.ts +0 -22
  65. package/dist/auth/types.d.ts.map +0 -1
  66. package/dist/auth/types.js +0 -2
  67. package/dist/auth/types.js.map +0 -1
  68. package/dist/behavior/audited.d.ts +0 -5
  69. package/dist/behavior/audited.d.ts.map +0 -1
  70. package/dist/behavior/audited.js +0 -78
  71. package/dist/behavior/audited.js.map +0 -1
  72. package/dist/behavior/cached.d.ts +0 -7
  73. package/dist/behavior/cached.d.ts.map +0 -1
  74. package/dist/behavior/cached.js +0 -48
  75. package/dist/behavior/cached.js.map +0 -1
  76. package/dist/behavior/compose.d.ts +0 -4
  77. package/dist/behavior/compose.d.ts.map +0 -1
  78. package/dist/behavior/compose.js +0 -18
  79. package/dist/behavior/compose.js.map +0 -1
  80. package/dist/behavior/index.d.ts +0 -6
  81. package/dist/behavior/index.d.ts.map +0 -1
  82. package/dist/behavior/index.js +0 -5
  83. package/dist/behavior/index.js.map +0 -1
  84. package/dist/behavior/namespace.d.ts +0 -16
  85. package/dist/behavior/namespace.d.ts.map +0 -1
  86. package/dist/behavior/namespace.js +0 -16
  87. package/dist/behavior/namespace.js.map +0 -1
  88. package/dist/behavior/types.d.ts +0 -23
  89. package/dist/behavior/types.d.ts.map +0 -1
  90. package/dist/behavior/types.js +0 -2
  91. package/dist/behavior/types.js.map +0 -1
  92. package/dist/behavior/versioned.d.ts +0 -4
  93. package/dist/behavior/versioned.d.ts.map +0 -1
  94. package/dist/behavior/versioned.js +0 -39
  95. package/dist/behavior/versioned.js.map +0 -1
  96. package/dist/cache/create.d.ts +0 -3
  97. package/dist/cache/create.d.ts.map +0 -1
  98. package/dist/cache/create.js +0 -90
  99. package/dist/cache/create.js.map +0 -1
  100. package/dist/cache/index.d.ts +0 -5
  101. package/dist/cache/index.d.ts.map +0 -1
  102. package/dist/cache/index.js +0 -3
  103. package/dist/cache/index.js.map +0 -1
  104. package/dist/cache/namespace.d.ts +0 -10
  105. package/dist/cache/namespace.d.ts.map +0 -1
  106. package/dist/cache/namespace.js +0 -10
  107. package/dist/cache/namespace.js.map +0 -1
  108. package/dist/cache/tenant.d.ts +0 -21
  109. package/dist/cache/tenant.d.ts.map +0 -1
  110. package/dist/cache/tenant.js +0 -101
  111. package/dist/cache/tenant.js.map +0 -1
  112. package/dist/cache/types.d.ts +0 -22
  113. package/dist/cache/types.d.ts.map +0 -1
  114. package/dist/cache/types.js +0 -2
  115. package/dist/cache/types.js.map +0 -1
  116. package/dist/config/discover.d.ts +0 -4
  117. package/dist/config/discover.d.ts.map +0 -1
  118. package/dist/config/discover.js +0 -42
  119. package/dist/config/discover.js.map +0 -1
  120. package/dist/config/env-resolve.d.ts +0 -4
  121. package/dist/config/env-resolve.d.ts.map +0 -1
  122. package/dist/config/env-resolve.js +0 -71
  123. package/dist/config/env-resolve.js.map +0 -1
  124. package/dist/config/env-types.d.ts +0 -42
  125. package/dist/config/env-types.d.ts.map +0 -1
  126. package/dist/config/env-types.js +0 -2
  127. package/dist/config/env-types.js.map +0 -1
  128. package/dist/config/env.d.ts +0 -2
  129. package/dist/config/env.d.ts.map +0 -1
  130. package/dist/config/env.js +0 -48
  131. package/dist/config/env.js.map +0 -1
  132. package/dist/config/index.d.ts +0 -8
  133. package/dist/config/index.d.ts.map +0 -1
  134. package/dist/config/index.js +0 -7
  135. package/dist/config/index.js.map +0 -1
  136. package/dist/config/load.d.ts +0 -34
  137. package/dist/config/load.d.ts.map +0 -1
  138. package/dist/config/load.js +0 -113
  139. package/dist/config/load.js.map +0 -1
  140. package/dist/config/namespace.d.ts +0 -172
  141. package/dist/config/namespace.d.ts.map +0 -1
  142. package/dist/config/namespace.js +0 -14
  143. package/dist/config/namespace.js.map +0 -1
  144. package/dist/config/resolve.d.ts +0 -8
  145. package/dist/config/resolve.d.ts.map +0 -1
  146. package/dist/config/resolve.js +0 -43
  147. package/dist/config/resolve.js.map +0 -1
  148. package/dist/config/schema.d.ts +0 -400
  149. package/dist/config/schema.d.ts.map +0 -1
  150. package/dist/config/schema.js +0 -106
  151. package/dist/config/schema.js.map +0 -1
  152. package/dist/context/create.d.ts +0 -24
  153. package/dist/context/create.d.ts.map +0 -1
  154. package/dist/context/create.js +0 -38
  155. package/dist/context/create.js.map +0 -1
  156. package/dist/context/guard.d.ts +0 -5
  157. package/dist/context/guard.d.ts.map +0 -1
  158. package/dist/context/guard.js +0 -35
  159. package/dist/context/guard.js.map +0 -1
  160. package/dist/context/index.d.ts +0 -5
  161. package/dist/context/index.d.ts.map +0 -1
  162. package/dist/context/index.js +0 -4
  163. package/dist/context/index.js.map +0 -1
  164. package/dist/context/store.d.ts +0 -7
  165. package/dist/context/store.d.ts.map +0 -1
  166. package/dist/context/store.js +0 -18
  167. package/dist/context/store.js.map +0 -1
  168. package/dist/context/types.d.ts +0 -28
  169. package/dist/context/types.d.ts.map +0 -1
  170. package/dist/context/types.js +0 -2
  171. package/dist/context/types.js.map +0 -1
  172. package/dist/core/errors/types.d.ts +0 -29
  173. package/dist/core/errors/types.d.ts.map +0 -1
  174. package/dist/core/errors/types.js +0 -46
  175. package/dist/core/errors/types.js.map +0 -1
  176. package/dist/core/log/namespace.d.ts +0 -15
  177. package/dist/core/log/namespace.d.ts.map +0 -1
  178. package/dist/core/log/namespace.js +0 -16
  179. package/dist/core/log/namespace.js.map +0 -1
  180. package/dist/core/validation/doctrine.d.ts +0 -13
  181. package/dist/core/validation/doctrine.d.ts.map +0 -1
  182. package/dist/core/validation/doctrine.js +0 -115
  183. package/dist/core/validation/doctrine.js.map +0 -1
  184. package/dist/data/db/context.d.ts +0 -4
  185. package/dist/data/db/context.d.ts.map +0 -1
  186. package/dist/data/db/context.js +0 -3
  187. package/dist/data/db/context.js.map +0 -1
  188. package/dist/data/domain/project-factory.d.ts +0 -4
  189. package/dist/data/domain/project-factory.d.ts.map +0 -1
  190. package/dist/data/domain/project-factory.js +0 -138
  191. package/dist/data/domain/project-factory.js.map +0 -1
  192. package/dist/data/domain/project-schema.d.ts +0 -6
  193. package/dist/data/domain/project-schema.d.ts.map +0 -1
  194. package/dist/data/domain/project-schema.js +0 -123
  195. package/dist/data/domain/project-schema.js.map +0 -1
  196. package/dist/data/domain/project-table.d.ts +0 -30
  197. package/dist/data/domain/project-table.d.ts.map +0 -1
  198. package/dist/data/domain/project-table.js +0 -130
  199. package/dist/data/domain/project-table.js.map +0 -1
  200. package/dist/data/vector/types.d.ts +0 -19
  201. package/dist/data/vector/types.d.ts.map +0 -1
  202. package/dist/data/vector/types.js +0 -26
  203. package/dist/data/vector/types.js.map +0 -1
  204. package/dist/db/col/index.d.ts +0 -2
  205. package/dist/db/col/index.d.ts.map +0 -1
  206. package/dist/db/col/index.js +0 -5
  207. package/dist/db/col/index.js.map +0 -1
  208. package/dist/db/context.d.ts +0 -4
  209. package/dist/db/context.d.ts.map +0 -1
  210. package/dist/db/context.js +0 -3
  211. package/dist/db/context.js.map +0 -1
  212. package/dist/db/db.d.ts +0 -6
  213. package/dist/db/db.d.ts.map +0 -1
  214. package/dist/db/db.js +0 -65
  215. package/dist/db/db.js.map +0 -1
  216. package/dist/db/filter.d.ts +0 -46
  217. package/dist/db/filter.d.ts.map +0 -1
  218. package/dist/db/filter.js +0 -9
  219. package/dist/db/filter.js.map +0 -1
  220. package/dist/db/generated/drizzle-orm/aggregate.d.ts +0 -2
  221. package/dist/db/generated/drizzle-orm/aggregate.d.ts.map +0 -1
  222. package/dist/db/generated/drizzle-orm/aggregate.js +0 -5
  223. package/dist/db/generated/drizzle-orm/aggregate.js.map +0 -1
  224. package/dist/db/generated/drizzle-orm/introspection.d.ts +0 -2
  225. package/dist/db/generated/drizzle-orm/introspection.d.ts.map +0 -1
  226. package/dist/db/generated/drizzle-orm/introspection.js +0 -5
  227. package/dist/db/generated/drizzle-orm/introspection.js.map +0 -1
  228. package/dist/db/generated/drizzle-orm/operator.d.ts +0 -2
  229. package/dist/db/generated/drizzle-orm/operator.d.ts.map +0 -1
  230. package/dist/db/generated/drizzle-orm/operator.js +0 -5
  231. package/dist/db/generated/drizzle-orm/operator.js.map +0 -1
  232. package/dist/db/generated/drizzle-orm/relation.d.ts +0 -2
  233. package/dist/db/generated/drizzle-orm/relation.d.ts.map +0 -1
  234. package/dist/db/generated/drizzle-orm/relation.js +0 -5
  235. package/dist/db/generated/drizzle-orm/relation.js.map +0 -1
  236. package/dist/db/generated/drizzle-orm/type.d.ts +0 -3
  237. package/dist/db/generated/drizzle-orm/type.d.ts.map +0 -1
  238. package/dist/db/generated/drizzle-orm/type.js +0 -5
  239. package/dist/db/generated/drizzle-orm/type.js.map +0 -1
  240. package/dist/db/generated/pg-core/introspection.d.ts +0 -2
  241. package/dist/db/generated/pg-core/introspection.d.ts.map +0 -1
  242. package/dist/db/generated/pg-core/introspection.js +0 -5
  243. package/dist/db/generated/pg-core/introspection.js.map +0 -1
  244. package/dist/db/generated/pg-core/set-operation.d.ts +0 -2
  245. package/dist/db/generated/pg-core/set-operation.d.ts.map +0 -1
  246. package/dist/db/generated/pg-core/set-operation.js +0 -5
  247. package/dist/db/generated/pg-core/set-operation.js.map +0 -1
  248. package/dist/db/generated/pg-core/type.d.ts +0 -3
  249. package/dist/db/generated/pg-core/type.d.ts.map +0 -1
  250. package/dist/db/generated/pg-core/type.js +0 -5
  251. package/dist/db/generated/pg-core/type.js.map +0 -1
  252. package/dist/db/identifiers.d.ts +0 -3
  253. package/dist/db/identifiers.d.ts.map +0 -1
  254. package/dist/db/identifiers.js +0 -13
  255. package/dist/db/identifiers.js.map +0 -1
  256. package/dist/db/idx/index.d.ts +0 -2
  257. package/dist/db/idx/index.d.ts.map +0 -1
  258. package/dist/db/idx/index.js +0 -5
  259. package/dist/db/idx/index.js.map +0 -1
  260. package/dist/db/index.d.ts +0 -9
  261. package/dist/db/index.d.ts.map +0 -1
  262. package/dist/db/index.js +0 -7
  263. package/dist/db/index.js.map +0 -1
  264. package/dist/db/instrumentation.d.ts +0 -5
  265. package/dist/db/instrumentation.d.ts.map +0 -1
  266. package/dist/db/instrumentation.js +0 -44
  267. package/dist/db/instrumentation.js.map +0 -1
  268. package/dist/db/namespace.d.ts +0 -89
  269. package/dist/db/namespace.d.ts.map +0 -1
  270. package/dist/db/namespace.js +0 -30
  271. package/dist/db/namespace.js.map +0 -1
  272. package/dist/db/pool.d.ts +0 -17
  273. package/dist/db/pool.d.ts.map +0 -1
  274. package/dist/db/pool.js +0 -39
  275. package/dist/db/pool.js.map +0 -1
  276. package/dist/db/schema-features.d.ts +0 -2
  277. package/dist/db/schema-features.d.ts.map +0 -1
  278. package/dist/db/schema-features.js +0 -4
  279. package/dist/db/schema-features.js.map +0 -1
  280. package/dist/db/sql.d.ts +0 -2
  281. package/dist/db/sql.d.ts.map +0 -1
  282. package/dist/db/sql.js +0 -2
  283. package/dist/db/sql.js.map +0 -1
  284. package/dist/db/types.d.ts +0 -17
  285. package/dist/db/types.d.ts.map +0 -1
  286. package/dist/db/types.js +0 -2
  287. package/dist/db/types.js.map +0 -1
  288. package/dist/di/builder.d.ts +0 -73
  289. package/dist/di/builder.d.ts.map +0 -1
  290. package/dist/di/builder.js +0 -189
  291. package/dist/di/builder.js.map +0 -1
  292. package/dist/di/index.d.ts +0 -6
  293. package/dist/di/index.d.ts.map +0 -1
  294. package/dist/di/index.js +0 -6
  295. package/dist/di/index.js.map +0 -1
  296. package/dist/di/resolve.d.ts +0 -9
  297. package/dist/di/resolve.d.ts.map +0 -1
  298. package/dist/di/resolve.js +0 -90
  299. package/dist/di/resolve.js.map +0 -1
  300. package/dist/di/types.d.ts +0 -56
  301. package/dist/di/types.d.ts.map +0 -1
  302. package/dist/di/types.js +0 -3
  303. package/dist/di/types.js.map +0 -1
  304. package/dist/domain/brand.d.ts +0 -19
  305. package/dist/domain/brand.d.ts.map +0 -1
  306. package/dist/domain/brand.js +0 -2
  307. package/dist/domain/brand.js.map +0 -1
  308. package/dist/domain/define.d.ts +0 -5
  309. package/dist/domain/define.d.ts.map +0 -1
  310. package/dist/domain/define.js +0 -155
  311. package/dist/domain/define.js.map +0 -1
  312. package/dist/domain/field.d.ts +0 -35
  313. package/dist/domain/field.d.ts.map +0 -1
  314. package/dist/domain/field.js +0 -115
  315. package/dist/domain/field.js.map +0 -1
  316. package/dist/domain/index.d.ts +0 -8
  317. package/dist/domain/index.d.ts.map +0 -1
  318. package/dist/domain/index.js +0 -6
  319. package/dist/domain/index.js.map +0 -1
  320. package/dist/domain/naming.d.ts +0 -2
  321. package/dist/domain/naming.d.ts.map +0 -1
  322. package/dist/domain/naming.js +0 -7
  323. package/dist/domain/naming.js.map +0 -1
  324. package/dist/domain/project-factory.d.ts +0 -4
  325. package/dist/domain/project-factory.d.ts.map +0 -1
  326. package/dist/domain/project-factory.js +0 -138
  327. package/dist/domain/project-factory.js.map +0 -1
  328. package/dist/domain/project-schema.d.ts +0 -6
  329. package/dist/domain/project-schema.d.ts.map +0 -1
  330. package/dist/domain/project-schema.js +0 -123
  331. package/dist/domain/project-schema.js.map +0 -1
  332. package/dist/domain/project-table.d.ts +0 -30
  333. package/dist/domain/project-table.d.ts.map +0 -1
  334. package/dist/domain/project-table.js +0 -125
  335. package/dist/domain/project-table.js.map +0 -1
  336. package/dist/domain/traits.d.ts +0 -9
  337. package/dist/domain/traits.d.ts.map +0 -1
  338. package/dist/domain/traits.js +0 -48
  339. package/dist/domain/traits.js.map +0 -1
  340. package/dist/domain/types.d.ts +0 -102
  341. package/dist/domain/types.d.ts.map +0 -1
  342. package/dist/domain/types.js +0 -2
  343. package/dist/domain/types.js.map +0 -1
  344. package/dist/drizzle/index.d.ts +0 -3
  345. package/dist/drizzle/index.d.ts.map +0 -1
  346. package/dist/drizzle/index.js +0 -3
  347. package/dist/drizzle/index.js.map +0 -1
  348. package/dist/errors/base.d.ts +0 -7
  349. package/dist/errors/base.d.ts.map +0 -1
  350. package/dist/errors/base.js +0 -9
  351. package/dist/errors/base.js.map +0 -1
  352. package/dist/errors/index.d.ts +0 -3
  353. package/dist/errors/index.d.ts.map +0 -1
  354. package/dist/errors/index.js +0 -3
  355. package/dist/errors/index.js.map +0 -1
  356. package/dist/errors/namespace.d.ts +0 -17
  357. package/dist/errors/namespace.d.ts.map +0 -1
  358. package/dist/errors/namespace.js +0 -17
  359. package/dist/errors/namespace.js.map +0 -1
  360. package/dist/errors/types.d.ts +0 -29
  361. package/dist/errors/types.d.ts.map +0 -1
  362. package/dist/errors/types.js +0 -46
  363. package/dist/errors/types.js.map +0 -1
  364. package/dist/fitting/namespace.d.ts +0 -3
  365. package/dist/fitting/namespace.d.ts.map +0 -1
  366. package/dist/fitting/namespace.js +0 -4
  367. package/dist/fitting/namespace.js.map +0 -1
  368. package/dist/fixture/batch.d.ts +0 -17
  369. package/dist/fixture/batch.d.ts.map +0 -1
  370. package/dist/fixture/batch.js +0 -47
  371. package/dist/fixture/batch.js.map +0 -1
  372. package/dist/fixture/builder.d.ts +0 -11
  373. package/dist/fixture/builder.d.ts.map +0 -1
  374. package/dist/fixture/builder.js +0 -12
  375. package/dist/fixture/builder.js.map +0 -1
  376. package/dist/fixture/errors.d.ts +0 -7
  377. package/dist/fixture/errors.d.ts.map +0 -1
  378. package/dist/fixture/errors.js +0 -9
  379. package/dist/fixture/errors.js.map +0 -1
  380. package/dist/fixture/index.d.ts +0 -9
  381. package/dist/fixture/index.d.ts.map +0 -1
  382. package/dist/fixture/index.js +0 -6
  383. package/dist/fixture/index.js.map +0 -1
  384. package/dist/fixture/namespace.d.ts +0 -23
  385. package/dist/fixture/namespace.d.ts.map +0 -1
  386. package/dist/fixture/namespace.js +0 -23
  387. package/dist/fixture/namespace.js.map +0 -1
  388. package/dist/fixture/paginate.d.ts +0 -13
  389. package/dist/fixture/paginate.d.ts.map +0 -1
  390. package/dist/fixture/paginate.js +0 -29
  391. package/dist/fixture/paginate.js.map +0 -1
  392. package/dist/fixture/register.d.ts +0 -16
  393. package/dist/fixture/register.d.ts.map +0 -1
  394. package/dist/fixture/register.js +0 -181
  395. package/dist/fixture/register.js.map +0 -1
  396. package/dist/fixture/to-handlers.d.ts +0 -6
  397. package/dist/fixture/to-handlers.d.ts.map +0 -1
  398. package/dist/fixture/to-handlers.js +0 -245
  399. package/dist/fixture/to-handlers.js.map +0 -1
  400. package/dist/fixture/types.d.ts +0 -69
  401. package/dist/fixture/types.d.ts.map +0 -1
  402. package/dist/fixture/types.js +0 -2
  403. package/dist/fixture/types.js.map +0 -1
  404. package/dist/flow/namespace.d.ts +0 -14
  405. package/dist/flow/namespace.d.ts.map +0 -1
  406. package/dist/flow/namespace.js +0 -14
  407. package/dist/flow/namespace.js.map +0 -1
  408. package/dist/http/index.d.ts +0 -4
  409. package/dist/http/index.d.ts.map +0 -1
  410. package/dist/http/index.js +0 -3
  411. package/dist/http/index.js.map +0 -1
  412. package/dist/http/middleware.d.ts +0 -20
  413. package/dist/http/middleware.d.ts.map +0 -1
  414. package/dist/http/middleware.js +0 -71
  415. package/dist/http/middleware.js.map +0 -1
  416. package/dist/http/namespace.d.ts +0 -3
  417. package/dist/http/namespace.d.ts.map +0 -1
  418. package/dist/http/namespace.js +0 -3
  419. package/dist/http/namespace.js.map +0 -1
  420. package/dist/http/response.d.ts +0 -5
  421. package/dist/http/response.d.ts.map +0 -1
  422. package/dist/http/response.js +0 -22
  423. package/dist/http/response.js.map +0 -1
  424. package/dist/http/server.d.ts +0 -17
  425. package/dist/http/server.d.ts.map +0 -1
  426. package/dist/http/server.js +0 -391
  427. package/dist/http/server.js.map +0 -1
  428. package/dist/http/types.d.ts +0 -130
  429. package/dist/http/types.d.ts.map +0 -1
  430. package/dist/http/types.js +0 -2
  431. package/dist/http/types.js.map +0 -1
  432. package/dist/idempotency/index.d.ts +0 -4
  433. package/dist/idempotency/index.d.ts.map +0 -1
  434. package/dist/idempotency/index.js +0 -3
  435. package/dist/idempotency/index.js.map +0 -1
  436. package/dist/idempotency/middleware.d.ts +0 -21
  437. package/dist/idempotency/middleware.d.ts.map +0 -1
  438. package/dist/idempotency/middleware.js +0 -56
  439. package/dist/idempotency/middleware.js.map +0 -1
  440. package/dist/idempotency/store.d.ts +0 -3
  441. package/dist/idempotency/store.d.ts.map +0 -1
  442. package/dist/idempotency/store.js +0 -63
  443. package/dist/idempotency/store.js.map +0 -1
  444. package/dist/idempotency/types.d.ts +0 -28
  445. package/dist/idempotency/types.d.ts.map +0 -1
  446. package/dist/idempotency/types.js +0 -2
  447. package/dist/idempotency/types.js.map +0 -1
  448. package/dist/jobs/cron.d.ts +0 -11
  449. package/dist/jobs/cron.d.ts.map +0 -1
  450. package/dist/jobs/cron.js +0 -176
  451. package/dist/jobs/cron.js.map +0 -1
  452. package/dist/jobs/execute.d.ts +0 -12
  453. package/dist/jobs/execute.d.ts.map +0 -1
  454. package/dist/jobs/execute.js +0 -19
  455. package/dist/jobs/execute.js.map +0 -1
  456. package/dist/jobs/index.d.ts +0 -8
  457. package/dist/jobs/index.d.ts.map +0 -1
  458. package/dist/jobs/index.js +0 -4
  459. package/dist/jobs/index.js.map +0 -1
  460. package/dist/jobs/listener.d.ts +0 -32
  461. package/dist/jobs/listener.d.ts.map +0 -1
  462. package/dist/jobs/listener.js +0 -95
  463. package/dist/jobs/listener.js.map +0 -1
  464. package/dist/jobs/namespace.d.ts +0 -15
  465. package/dist/jobs/namespace.d.ts.map +0 -1
  466. package/dist/jobs/namespace.js +0 -15
  467. package/dist/jobs/namespace.js.map +0 -1
  468. package/dist/jobs/queue.d.ts +0 -58
  469. package/dist/jobs/queue.d.ts.map +0 -1
  470. package/dist/jobs/queue.js +0 -163
  471. package/dist/jobs/queue.js.map +0 -1
  472. package/dist/jobs/scheduler.d.ts +0 -31
  473. package/dist/jobs/scheduler.d.ts.map +0 -1
  474. package/dist/jobs/scheduler.js +0 -94
  475. package/dist/jobs/scheduler.js.map +0 -1
  476. package/dist/lifecycle/drain.d.ts +0 -7
  477. package/dist/lifecycle/drain.d.ts.map +0 -1
  478. package/dist/lifecycle/drain.js +0 -24
  479. package/dist/lifecycle/drain.js.map +0 -1
  480. package/dist/lifecycle/health.d.ts +0 -8
  481. package/dist/lifecycle/health.d.ts.map +0 -1
  482. package/dist/lifecycle/health.js +0 -62
  483. package/dist/lifecycle/health.js.map +0 -1
  484. package/dist/lifecycle/index.d.ts +0 -5
  485. package/dist/lifecycle/index.d.ts.map +0 -1
  486. package/dist/lifecycle/index.js +0 -4
  487. package/dist/lifecycle/index.js.map +0 -1
  488. package/dist/lifecycle/namespace.d.ts +0 -7
  489. package/dist/lifecycle/namespace.d.ts.map +0 -1
  490. package/dist/lifecycle/namespace.js +0 -7
  491. package/dist/lifecycle/namespace.js.map +0 -1
  492. package/dist/lifecycle/startup.d.ts +0 -8
  493. package/dist/lifecycle/startup.d.ts.map +0 -1
  494. package/dist/lifecycle/startup.js +0 -43
  495. package/dist/lifecycle/startup.js.map +0 -1
  496. package/dist/lifecycle/types.d.ts +0 -30
  497. package/dist/lifecycle/types.d.ts.map +0 -1
  498. package/dist/lifecycle/types.js +0 -2
  499. package/dist/lifecycle/types.js.map +0 -1
  500. package/dist/log/namespace.d.ts +0 -15
  501. package/dist/log/namespace.d.ts.map +0 -1
  502. package/dist/log/namespace.js +0 -16
  503. package/dist/log/namespace.js.map +0 -1
  504. package/dist/logging/context.d.ts +0 -11
  505. package/dist/logging/context.d.ts.map +0 -1
  506. package/dist/logging/context.js +0 -46
  507. package/dist/logging/context.js.map +0 -1
  508. package/dist/logging/index.d.ts +0 -4
  509. package/dist/logging/index.d.ts.map +0 -1
  510. package/dist/logging/index.js +0 -3
  511. package/dist/logging/index.js.map +0 -1
  512. package/dist/logging/logger.d.ts +0 -8
  513. package/dist/logging/logger.d.ts.map +0 -1
  514. package/dist/logging/logger.js +0 -39
  515. package/dist/logging/logger.js.map +0 -1
  516. package/dist/logging/proxy.d.ts +0 -3
  517. package/dist/logging/proxy.d.ts.map +0 -1
  518. package/dist/logging/proxy.js +0 -14
  519. package/dist/logging/proxy.js.map +0 -1
  520. package/dist/logging/types.d.ts +0 -36
  521. package/dist/logging/types.d.ts.map +0 -1
  522. package/dist/logging/types.js +0 -2
  523. package/dist/logging/types.js.map +0 -1
  524. package/dist/migrate/check.d.ts +0 -14
  525. package/dist/migrate/check.d.ts.map +0 -1
  526. package/dist/migrate/check.js +0 -58
  527. package/dist/migrate/check.js.map +0 -1
  528. package/dist/migrate/generate.d.ts +0 -9
  529. package/dist/migrate/generate.d.ts.map +0 -1
  530. package/dist/migrate/generate.js +0 -152
  531. package/dist/migrate/generate.js.map +0 -1
  532. package/dist/migrate/index.d.ts +0 -7
  533. package/dist/migrate/index.d.ts.map +0 -1
  534. package/dist/migrate/index.js +0 -7
  535. package/dist/migrate/index.js.map +0 -1
  536. package/dist/migrate/post-process.d.ts +0 -9
  537. package/dist/migrate/post-process.d.ts.map +0 -1
  538. package/dist/migrate/post-process.js +0 -60
  539. package/dist/migrate/post-process.js.map +0 -1
  540. package/dist/migrate/rls-generate.d.ts +0 -3
  541. package/dist/migrate/rls-generate.d.ts.map +0 -1
  542. package/dist/migrate/rls-generate.js +0 -28
  543. package/dist/migrate/rls-generate.js.map +0 -1
  544. package/dist/migrate/run.d.ts +0 -21
  545. package/dist/migrate/run.d.ts.map +0 -1
  546. package/dist/migrate/run.js +0 -66
  547. package/dist/migrate/run.js.map +0 -1
  548. package/dist/migrate/safety.d.ts +0 -10
  549. package/dist/migrate/safety.d.ts.map +0 -1
  550. package/dist/migrate/safety.js +0 -115
  551. package/dist/migrate/safety.js.map +0 -1
  552. package/dist/openapi/generate.d.ts +0 -13
  553. package/dist/openapi/generate.d.ts.map +0 -1
  554. package/dist/openapi/generate.js +0 -84
  555. package/dist/openapi/generate.js.map +0 -1
  556. package/dist/openapi/index.d.ts +0 -3
  557. package/dist/openapi/index.d.ts.map +0 -1
  558. package/dist/openapi/index.js +0 -2
  559. package/dist/openapi/index.js.map +0 -1
  560. package/dist/openapi/namespace.d.ts +0 -7
  561. package/dist/openapi/namespace.d.ts.map +0 -1
  562. package/dist/openapi/namespace.js +0 -7
  563. package/dist/openapi/namespace.js.map +0 -1
  564. package/dist/pipeline/define.d.ts +0 -3
  565. package/dist/pipeline/define.d.ts.map +0 -1
  566. package/dist/pipeline/define.js +0 -44
  567. package/dist/pipeline/define.js.map +0 -1
  568. package/dist/pipeline/errors.d.ts +0 -17
  569. package/dist/pipeline/errors.d.ts.map +0 -1
  570. package/dist/pipeline/errors.js +0 -28
  571. package/dist/pipeline/errors.js.map +0 -1
  572. package/dist/pipeline/execute.d.ts +0 -4
  573. package/dist/pipeline/execute.d.ts.map +0 -1
  574. package/dist/pipeline/execute.js +0 -90
  575. package/dist/pipeline/execute.js.map +0 -1
  576. package/dist/pipeline/index.d.ts +0 -4
  577. package/dist/pipeline/index.d.ts.map +0 -1
  578. package/dist/pipeline/index.js +0 -3
  579. package/dist/pipeline/index.js.map +0 -1
  580. package/dist/pipeline/namespace.d.ts +0 -12
  581. package/dist/pipeline/namespace.d.ts.map +0 -1
  582. package/dist/pipeline/namespace.js +0 -12
  583. package/dist/pipeline/namespace.js.map +0 -1
  584. package/dist/pipeline/resume.d.ts +0 -4
  585. package/dist/pipeline/resume.d.ts.map +0 -1
  586. package/dist/pipeline/resume.js +0 -100
  587. package/dist/pipeline/resume.js.map +0 -1
  588. package/dist/pipeline/types.d.ts +0 -50
  589. package/dist/pipeline/types.d.ts.map +0 -1
  590. package/dist/pipeline/types.js +0 -2
  591. package/dist/pipeline/types.js.map +0 -1
  592. package/dist/pipework.d.ts +0 -88
  593. package/dist/pipework.d.ts.map +0 -1
  594. package/dist/pipework.js +0 -222
  595. package/dist/pipework.js.map +0 -1
  596. package/dist/rbac/cache.d.ts +0 -13
  597. package/dist/rbac/cache.d.ts.map +0 -1
  598. package/dist/rbac/cache.js +0 -43
  599. package/dist/rbac/cache.js.map +0 -1
  600. package/dist/rbac/check.d.ts +0 -4
  601. package/dist/rbac/check.d.ts.map +0 -1
  602. package/dist/rbac/check.js +0 -20
  603. package/dist/rbac/check.js.map +0 -1
  604. package/dist/rbac/index.d.ts +0 -8
  605. package/dist/rbac/index.d.ts.map +0 -1
  606. package/dist/rbac/index.js +0 -32
  607. package/dist/rbac/index.js.map +0 -1
  608. package/dist/rbac/middleware.d.ts +0 -4
  609. package/dist/rbac/middleware.d.ts.map +0 -1
  610. package/dist/rbac/middleware.js +0 -9
  611. package/dist/rbac/middleware.js.map +0 -1
  612. package/dist/rbac/namespace.d.ts +0 -15
  613. package/dist/rbac/namespace.d.ts.map +0 -1
  614. package/dist/rbac/namespace.js +0 -15
  615. package/dist/rbac/namespace.js.map +0 -1
  616. package/dist/rbac/resolve.d.ts +0 -4
  617. package/dist/rbac/resolve.d.ts.map +0 -1
  618. package/dist/rbac/resolve.js +0 -24
  619. package/dist/rbac/resolve.js.map +0 -1
  620. package/dist/rbac/seed.d.ts +0 -4
  621. package/dist/rbac/seed.d.ts.map +0 -1
  622. package/dist/rbac/seed.js +0 -63
  623. package/dist/rbac/seed.js.map +0 -1
  624. package/dist/rbac/types.d.ts +0 -56
  625. package/dist/rbac/types.d.ts.map +0 -1
  626. package/dist/rbac/types.js +0 -2
  627. package/dist/rbac/types.js.map +0 -1
  628. package/dist/resource/batch.d.ts +0 -17
  629. package/dist/resource/batch.d.ts.map +0 -1
  630. package/dist/resource/batch.js +0 -47
  631. package/dist/resource/batch.js.map +0 -1
  632. package/dist/resource/builder.d.ts +0 -11
  633. package/dist/resource/builder.d.ts.map +0 -1
  634. package/dist/resource/builder.js +0 -12
  635. package/dist/resource/builder.js.map +0 -1
  636. package/dist/resource/errors.d.ts +0 -7
  637. package/dist/resource/errors.d.ts.map +0 -1
  638. package/dist/resource/errors.js +0 -9
  639. package/dist/resource/errors.js.map +0 -1
  640. package/dist/resource/index.d.ts +0 -9
  641. package/dist/resource/index.d.ts.map +0 -1
  642. package/dist/resource/index.js +0 -6
  643. package/dist/resource/index.js.map +0 -1
  644. package/dist/resource/paginate.d.ts +0 -13
  645. package/dist/resource/paginate.d.ts.map +0 -1
  646. package/dist/resource/paginate.js +0 -29
  647. package/dist/resource/paginate.js.map +0 -1
  648. package/dist/resource/register.d.ts +0 -16
  649. package/dist/resource/register.d.ts.map +0 -1
  650. package/dist/resource/register.js +0 -181
  651. package/dist/resource/register.js.map +0 -1
  652. package/dist/resource/types.d.ts +0 -69
  653. package/dist/resource/types.d.ts.map +0 -1
  654. package/dist/resource/types.js +0 -2
  655. package/dist/resource/types.js.map +0 -1
  656. package/dist/schema/branded.d.ts +0 -3
  657. package/dist/schema/branded.d.ts.map +0 -1
  658. package/dist/schema/branded.js +0 -8
  659. package/dist/schema/branded.js.map +0 -1
  660. package/dist/schema/generated/coerce.d.ts +0 -2
  661. package/dist/schema/generated/coerce.d.ts.map +0 -1
  662. package/dist/schema/generated/coerce.js +0 -5
  663. package/dist/schema/generated/coerce.js.map +0 -1
  664. package/dist/schema/generated/combinator.d.ts +0 -3
  665. package/dist/schema/generated/combinator.d.ts.map +0 -1
  666. package/dist/schema/generated/combinator.js +0 -5
  667. package/dist/schema/generated/combinator.js.map +0 -1
  668. package/dist/schema/generated/encoding.d.ts +0 -2
  669. package/dist/schema/generated/encoding.d.ts.map +0 -1
  670. package/dist/schema/generated/encoding.js +0 -5
  671. package/dist/schema/generated/encoding.js.map +0 -1
  672. package/dist/schema/generated/error.d.ts +0 -3
  673. package/dist/schema/generated/error.d.ts.map +0 -1
  674. package/dist/schema/generated/error.js +0 -5
  675. package/dist/schema/generated/error.js.map +0 -1
  676. package/dist/schema/generated/format.d.ts +0 -2
  677. package/dist/schema/generated/format.d.ts.map +0 -1
  678. package/dist/schema/generated/format.js +0 -5
  679. package/dist/schema/generated/format.js.map +0 -1
  680. package/dist/schema/generated/type-constructor.d.ts +0 -3
  681. package/dist/schema/generated/type-constructor.d.ts.map +0 -1
  682. package/dist/schema/generated/type-constructor.js +0 -8
  683. package/dist/schema/generated/type-constructor.js.map +0 -1
  684. package/dist/schema/generated/type.d.ts +0 -3
  685. package/dist/schema/generated/type.d.ts.map +0 -1
  686. package/dist/schema/generated/type.js +0 -5
  687. package/dist/schema/generated/type.js.map +0 -1
  688. package/dist/schema/index.d.ts +0 -6
  689. package/dist/schema/index.d.ts.map +0 -1
  690. package/dist/schema/index.js +0 -5
  691. package/dist/schema/index.js.map +0 -1
  692. package/dist/schema/json-schema.d.ts +0 -5
  693. package/dist/schema/json-schema.d.ts.map +0 -1
  694. package/dist/schema/json-schema.js +0 -5
  695. package/dist/schema/json-schema.js.map +0 -1
  696. package/dist/schema/namespace.d.ts +0 -139
  697. package/dist/schema/namespace.d.ts.map +0 -1
  698. package/dist/schema/namespace.js +0 -46
  699. package/dist/schema/namespace.js.map +0 -1
  700. package/dist/schema/parse.d.ts +0 -11
  701. package/dist/schema/parse.d.ts.map +0 -1
  702. package/dist/schema/parse.js +0 -30
  703. package/dist/schema/parse.js.map +0 -1
  704. package/dist/schema/types.d.ts +0 -6
  705. package/dist/schema/types.d.ts.map +0 -1
  706. package/dist/schema/types.js +0 -2
  707. package/dist/schema/types.js.map +0 -1
  708. package/dist/state-machine/define.d.ts +0 -3
  709. package/dist/state-machine/define.d.ts.map +0 -1
  710. package/dist/state-machine/define.js +0 -46
  711. package/dist/state-machine/define.js.map +0 -1
  712. package/dist/state-machine/errors.d.ts +0 -12
  713. package/dist/state-machine/errors.d.ts.map +0 -1
  714. package/dist/state-machine/errors.js +0 -19
  715. package/dist/state-machine/errors.js.map +0 -1
  716. package/dist/state-machine/index.d.ts +0 -4
  717. package/dist/state-machine/index.d.ts.map +0 -1
  718. package/dist/state-machine/index.js +0 -3
  719. package/dist/state-machine/index.js.map +0 -1
  720. package/dist/state-machine/namespace.d.ts +0 -12
  721. package/dist/state-machine/namespace.d.ts.map +0 -1
  722. package/dist/state-machine/namespace.js +0 -12
  723. package/dist/state-machine/namespace.js.map +0 -1
  724. package/dist/state-machine/transition.d.ts +0 -7
  725. package/dist/state-machine/transition.d.ts.map +0 -1
  726. package/dist/state-machine/transition.js +0 -57
  727. package/dist/state-machine/transition.js.map +0 -1
  728. package/dist/state-machine/types.d.ts +0 -33
  729. package/dist/state-machine/types.d.ts.map +0 -1
  730. package/dist/state-machine/types.js +0 -2
  731. package/dist/state-machine/types.js.map +0 -1
  732. package/dist/surface/http.d.ts +0 -3
  733. package/dist/surface/http.d.ts.map +0 -1
  734. package/dist/surface/http.js +0 -84
  735. package/dist/surface/http.js.map +0 -1
  736. package/dist/surface/index.d.ts +0 -7
  737. package/dist/surface/index.d.ts.map +0 -1
  738. package/dist/surface/index.js +0 -6
  739. package/dist/surface/index.js.map +0 -1
  740. package/dist/surface/namespace.d.ts +0 -13
  741. package/dist/surface/namespace.d.ts.map +0 -1
  742. package/dist/surface/namespace.js +0 -13
  743. package/dist/surface/namespace.js.map +0 -1
  744. package/dist/surface/script.d.ts +0 -3
  745. package/dist/surface/script.d.ts.map +0 -1
  746. package/dist/surface/script.js +0 -24
  747. package/dist/surface/script.js.map +0 -1
  748. package/dist/surface/start.d.ts +0 -8
  749. package/dist/surface/start.d.ts.map +0 -1
  750. package/dist/surface/start.js +0 -64
  751. package/dist/surface/start.js.map +0 -1
  752. package/dist/surface/types.d.ts +0 -111
  753. package/dist/surface/types.d.ts.map +0 -1
  754. package/dist/surface/types.js +0 -2
  755. package/dist/surface/types.js.map +0 -1
  756. package/dist/surface/validate.d.ts +0 -7
  757. package/dist/surface/validate.d.ts.map +0 -1
  758. package/dist/surface/validate.js +0 -121
  759. package/dist/surface/validate.js.map +0 -1
  760. package/dist/surface/worker.d.ts +0 -3
  761. package/dist/surface/worker.d.ts.map +0 -1
  762. package/dist/surface/worker.js +0 -151
  763. package/dist/surface/worker.js.map +0 -1
  764. package/dist/temporal/close.d.ts +0 -3
  765. package/dist/temporal/close.d.ts.map +0 -1
  766. package/dist/temporal/close.js +0 -19
  767. package/dist/temporal/close.js.map +0 -1
  768. package/dist/temporal/columns.d.ts +0 -7
  769. package/dist/temporal/columns.d.ts.map +0 -1
  770. package/dist/temporal/columns.js +0 -10
  771. package/dist/temporal/columns.js.map +0 -1
  772. package/dist/temporal/definition-queries.d.ts +0 -14
  773. package/dist/temporal/definition-queries.d.ts.map +0 -1
  774. package/dist/temporal/definition-queries.js +0 -45
  775. package/dist/temporal/definition-queries.js.map +0 -1
  776. package/dist/temporal/errors.d.ts +0 -7
  777. package/dist/temporal/errors.d.ts.map +0 -1
  778. package/dist/temporal/errors.js +0 -9
  779. package/dist/temporal/errors.js.map +0 -1
  780. package/dist/temporal/get-current.d.ts +0 -3
  781. package/dist/temporal/get-current.d.ts.map +0 -1
  782. package/dist/temporal/get-current.js +0 -18
  783. package/dist/temporal/get-current.js.map +0 -1
  784. package/dist/temporal/index.d.ts +0 -9
  785. package/dist/temporal/index.d.ts.map +0 -1
  786. package/dist/temporal/index.js +0 -8
  787. package/dist/temporal/index.js.map +0 -1
  788. package/dist/temporal/namespace.d.ts +0 -31
  789. package/dist/temporal/namespace.d.ts.map +0 -1
  790. package/dist/temporal/namespace.js +0 -31
  791. package/dist/temporal/namespace.js.map +0 -1
  792. package/dist/temporal/query.d.ts +0 -10
  793. package/dist/temporal/query.d.ts.map +0 -1
  794. package/dist/temporal/query.js +0 -11
  795. package/dist/temporal/query.js.map +0 -1
  796. package/dist/temporal/revise.d.ts +0 -3
  797. package/dist/temporal/revise.d.ts.map +0 -1
  798. package/dist/temporal/revise.js +0 -52
  799. package/dist/temporal/revise.js.map +0 -1
  800. package/dist/temporal/types.d.ts +0 -19
  801. package/dist/temporal/types.d.ts.map +0 -1
  802. package/dist/temporal/types.js +0 -2
  803. package/dist/temporal/types.js.map +0 -1
  804. package/dist/tenant/extract.d.ts +0 -6
  805. package/dist/tenant/extract.d.ts.map +0 -1
  806. package/dist/tenant/extract.js +0 -18
  807. package/dist/tenant/extract.js.map +0 -1
  808. package/dist/tenant/index.d.ts +0 -8
  809. package/dist/tenant/index.d.ts.map +0 -1
  810. package/dist/tenant/index.js +0 -7
  811. package/dist/tenant/index.js.map +0 -1
  812. package/dist/tenant/namespace.d.ts +0 -23
  813. package/dist/tenant/namespace.d.ts.map +0 -1
  814. package/dist/tenant/namespace.js +0 -23
  815. package/dist/tenant/namespace.js.map +0 -1
  816. package/dist/tenant/propagate.d.ts +0 -4
  817. package/dist/tenant/propagate.d.ts.map +0 -1
  818. package/dist/tenant/propagate.js +0 -15
  819. package/dist/tenant/propagate.js.map +0 -1
  820. package/dist/tenant/rls.d.ts +0 -5
  821. package/dist/tenant/rls.d.ts.map +0 -1
  822. package/dist/tenant/rls.js +0 -35
  823. package/dist/tenant/rls.js.map +0 -1
  824. package/dist/tenant/scope.d.ts +0 -8
  825. package/dist/tenant/scope.d.ts.map +0 -1
  826. package/dist/tenant/scope.js +0 -21
  827. package/dist/tenant/scope.js.map +0 -1
  828. package/dist/tenant/scoped-db.d.ts +0 -4
  829. package/dist/tenant/scoped-db.d.ts.map +0 -1
  830. package/dist/tenant/scoped-db.js +0 -234
  831. package/dist/tenant/scoped-db.js.map +0 -1
  832. package/dist/tenant/types.d.ts +0 -14
  833. package/dist/tenant/types.d.ts.map +0 -1
  834. package/dist/tenant/types.js +0 -2
  835. package/dist/tenant/types.js.map +0 -1
  836. package/dist/tenant/validate.d.ts +0 -4
  837. package/dist/tenant/validate.d.ts.map +0 -1
  838. package/dist/tenant/validate.js +0 -20
  839. package/dist/tenant/validate.js.map +0 -1
  840. package/dist/test/vitest-config.d.ts +0 -21
  841. package/dist/test/vitest-config.d.ts.map +0 -1
  842. package/dist/test/vitest-config.js +0 -47
  843. package/dist/test/vitest-config.js.map +0 -1
  844. package/dist/trunk.d.ts +0 -35
  845. package/dist/trunk.d.ts.map +0 -1
  846. package/dist/trunk.js +0 -102
  847. package/dist/trunk.js.map +0 -1
  848. package/dist/validation/connectivity.d.ts +0 -4
  849. package/dist/validation/connectivity.d.ts.map +0 -1
  850. package/dist/validation/connectivity.js +0 -32
  851. package/dist/validation/connectivity.js.map +0 -1
  852. package/dist/validation/domain.d.ts +0 -4
  853. package/dist/validation/domain.d.ts.map +0 -1
  854. package/dist/validation/domain.js +0 -72
  855. package/dist/validation/domain.js.map +0 -1
  856. package/dist/validation/index.d.ts +0 -6
  857. package/dist/validation/index.d.ts.map +0 -1
  858. package/dist/validation/index.js +0 -6
  859. package/dist/validation/index.js.map +0 -1
  860. package/dist/validation/startup.d.ts +0 -12
  861. package/dist/validation/startup.d.ts.map +0 -1
  862. package/dist/validation/startup.js +0 -19
  863. package/dist/validation/startup.js.map +0 -1
  864. package/dist/validation/surface.d.ts +0 -4
  865. package/dist/validation/surface.d.ts.map +0 -1
  866. package/dist/validation/surface.js +0 -55
  867. package/dist/validation/surface.js.map +0 -1
  868. package/dist/validation/types.d.ts +0 -13
  869. package/dist/validation/types.d.ts.map +0 -1
  870. package/dist/validation/types.js +0 -13
  871. package/dist/validation/types.js.map +0 -1
  872. package/dist/vector/index.d.ts +0 -4
  873. package/dist/vector/index.d.ts.map +0 -1
  874. package/dist/vector/index.js +0 -4
  875. package/dist/vector/index.js.map +0 -1
  876. package/dist/vector/namespace.d.ts +0 -27
  877. package/dist/vector/namespace.d.ts.map +0 -1
  878. package/dist/vector/namespace.js +0 -27
  879. package/dist/vector/namespace.js.map +0 -1
  880. package/dist/vector/query.d.ts +0 -9
  881. package/dist/vector/query.d.ts.map +0 -1
  882. package/dist/vector/query.js +0 -33
  883. package/dist/vector/query.js.map +0 -1
  884. package/dist/vector/types.d.ts +0 -19
  885. package/dist/vector/types.d.ts.map +0 -1
  886. package/dist/vector/types.js +0 -26
  887. package/dist/vector/types.js.map +0 -1
  888. package/dist/vector/validate.d.ts +0 -3
  889. package/dist/vector/validate.d.ts.map +0 -1
  890. package/dist/vector/validate.js +0 -10
  891. package/dist/vector/validate.js.map +0 -1
  892. package/dist/webhook/inbound.d.ts +0 -16
  893. package/dist/webhook/inbound.d.ts.map +0 -1
  894. package/dist/webhook/inbound.js +0 -21
  895. package/dist/webhook/inbound.js.map +0 -1
  896. package/dist/webhook/index.d.ts +0 -5
  897. package/dist/webhook/index.d.ts.map +0 -1
  898. package/dist/webhook/index.js +0 -5
  899. package/dist/webhook/index.js.map +0 -1
  900. package/dist/webhook/namespace.d.ts +0 -22
  901. package/dist/webhook/namespace.d.ts.map +0 -1
  902. package/dist/webhook/namespace.js +0 -22
  903. package/dist/webhook/namespace.js.map +0 -1
  904. package/dist/webhook/outbound.d.ts +0 -48
  905. package/dist/webhook/outbound.d.ts.map +0 -1
  906. package/dist/webhook/outbound.js +0 -160
  907. package/dist/webhook/outbound.js.map +0 -1
  908. package/dist/webhook/sign.d.ts +0 -12
  909. package/dist/webhook/sign.d.ts.map +0 -1
  910. package/dist/webhook/sign.js +0 -12
  911. package/dist/webhook/sign.js.map +0 -1
  912. package/dist/webhook/verify.d.ts +0 -14
  913. package/dist/webhook/verify.d.ts.map +0 -1
  914. package/dist/webhook/verify.js +0 -61
  915. package/dist/webhook/verify.js.map +0 -1
@@ -1,3 +0,0 @@
1
- import type { AuditConfig, Audit } from './types.js';
2
- export declare function createAudit(config: AuditConfig): Audit;
3
- //# sourceMappingURL=emit.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"emit.d.ts","sourceRoot":"","sources":["../../src/audit/emit.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAoB,KAAK,EAAE,MAAM,YAAY,CAAA;AAItE,wBAAgB,WAAW,CAAC,MAAM,EAAE,WAAW,GAAG,KAAK,CAyEtD"}
@@ -1,66 +0,0 @@
1
- import { sql } from '../db/sql.js';
2
- import { getContext } from '../context/store.js';
3
- import { assertValidIdentifier, quoteIdentifier } from '../db/identifiers.js';
4
- export function createAudit(config) {
5
- const table = config.table ?? 'pipework_audit_events';
6
- assertValidIdentifier(table, 'audit table');
7
- return {
8
- async emit(options) {
9
- const ctx = getContext();
10
- if (!ctx) {
11
- throw new Error('[pipework] audit.emit() called outside a managed context. ' +
12
- 'It must run inside a request handler or job.');
13
- }
14
- if (ctx.tenant === null) {
15
- throw new Error('[pipework] audit.emit() requires tenant context. ' +
16
- 'Configure tenant extraction in createServer().');
17
- }
18
- if (ctx.auth === null) {
19
- throw new Error('[pipework] audit.emit() requires authenticated context. ' +
20
- 'Ensure the handler uses .auth() or the route is not .public().');
21
- }
22
- const userId = extractUserId(ctx.auth);
23
- if (userId === null) {
24
- throw new Error('[pipework] audit.emit() requires auth.userId. ' +
25
- 'Ensure the auth object has a userId field.');
26
- }
27
- const bound = ctx.transactions.get(config.database);
28
- if (!bound) {
29
- throw new Error(`[pipework] audit.emit() requires an active transaction on database "${config.database}". ` +
30
- `Configure transactionPerRequest: ['${config.database}'] in createServer().`);
31
- }
32
- const tx = bound.drizzle;
33
- const sessionId = config.sessionIdField !== undefined && typeof ctx.auth === 'object'
34
- ? ctx.auth[config.sessionIdField] ?? null
35
- : null;
36
- const beforeJson = options.before !== undefined ? JSON.stringify(options.before) : null;
37
- const afterJson = options.after !== undefined ? JSON.stringify(options.after) : null;
38
- const metadataJson = options.metadata !== undefined ? JSON.stringify(options.metadata) : null;
39
- const result = await tx.execute(sql `
40
- INSERT INTO ${sql.raw(quoteIdentifier(table, 'audit table'))} (tenant_id, request_id, user_id, session_id, action_type, entity_type, entity_id, before_state, after_state, metadata)
41
- VALUES (
42
- ${ctx.tenant},
43
- ${ctx.requestId},
44
- ${userId},
45
- ${sessionId ?? null},
46
- ${options.actionType},
47
- ${options.entityType ?? null},
48
- ${options.entityId ?? null},
49
- ${beforeJson !== null ? sql `${beforeJson}::jsonb` : sql `NULL`},
50
- ${afterJson !== null ? sql `${afterJson}::jsonb` : sql `NULL`},
51
- ${metadataJson !== null ? sql `${metadataJson}::jsonb` : sql `NULL`}
52
- )
53
- RETURNING id::text
54
- `);
55
- return result[0].id;
56
- },
57
- };
58
- }
59
- function extractUserId(auth) {
60
- if (auth !== null && auth !== undefined && typeof auth === 'object' && 'userId' in auth) {
61
- const val = auth.userId;
62
- return typeof val === 'string' ? val : null;
63
- }
64
- return null;
65
- }
66
- //# sourceMappingURL=emit.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"emit.js","sourceRoot":"","sources":["../../src/audit/emit.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- export type { AuditConfig, AuditEmitOptions, Audit } from './types.js';
2
- export { createAudit } from './emit.js';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/audit/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA"}
@@ -1,2 +0,0 @@
1
- export { createAudit } from './emit.js';
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/audit/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA"}
@@ -1,7 +0,0 @@
1
- import { createAudit } from './index.js';
2
- /** Audit logging namespace — structured audit trail for data changes. */
3
- export declare const audit: {
4
- /** Creates an Audit instance that writes audit records to a Postgres table. */
5
- create: typeof createAudit;
6
- };
7
- //# sourceMappingURL=namespace.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"namespace.d.ts","sourceRoot":"","sources":["../../src/audit/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAExC,yEAAyE;AACzE,eAAO,MAAM,KAAK;IAChB,+EAA+E;;CAEhF,CAAA"}
@@ -1,7 +0,0 @@
1
- import { createAudit } from './index.js';
2
- /** Audit logging namespace — structured audit trail for data changes. */
3
- export const audit = {
4
- /** Creates an Audit instance that writes audit records to a Postgres table. */
5
- create: createAudit,
6
- };
7
- //# sourceMappingURL=namespace.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"namespace.js","sourceRoot":"","sources":["../../src/audit/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAExC,yEAAyE;AACzE,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,+EAA+E;IAC/E,MAAM,EAAE,WAAW;CACpB,CAAA"}
@@ -1,17 +0,0 @@
1
- export interface AuditConfig {
2
- readonly database: string;
3
- readonly table?: string;
4
- readonly sessionIdField?: string;
5
- }
6
- export interface AuditEmitOptions {
7
- readonly actionType: string;
8
- readonly entityType?: string;
9
- readonly entityId?: string;
10
- readonly before?: unknown;
11
- readonly after?: unknown;
12
- readonly metadata?: Record<string, unknown>;
13
- }
14
- export interface Audit {
15
- emit(options: AuditEmitOptions): Promise<string>;
16
- }
17
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/audit/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAA;CACjC;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC5C;AAED,MAAM,WAAW,KAAK;IACpB,IAAI,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;CACjD"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/audit/types.ts"],"names":[],"mappings":""}
@@ -1,26 +0,0 @@
1
- import type { AuthStrategy, AuthRequest, AuthContext } from './types.js';
2
- /** Post-authentication hook — enrich the resolved auth with additional data (roles, permissions, etc.). */
3
- export interface AuthEnricher<TAuth> {
4
- readonly name: string;
5
- enrich(auth: TAuth): Promise<TAuth>;
6
- }
7
- /** Resolves tenant ID from auth context — called after authentication in the chain. */
8
- export interface TenantResolver<TAuth> {
9
- resolve(auth: TAuth): string;
10
- }
11
- /** Configuration for the auth chain — strategies, enrichers, tenant resolver. */
12
- export interface AuthChainConfig<TAuth> {
13
- readonly strategies: readonly AuthStrategy<TAuth>[];
14
- readonly enrichers?: readonly AuthEnricher<TAuth>[];
15
- readonly tenantResolver?: TenantResolver<TAuth>;
16
- }
17
- /** Result of running the auth chain — resolved auth and tenant (both nullable for public routes). */
18
- export interface AuthChainResult<TAuth> {
19
- readonly auth: TAuth | null;
20
- readonly tenant: string | null;
21
- }
22
- /** Executes the auth chain: tries strategies in order, enriches, resolves tenant. */
23
- export declare function runAuthChain<TAuth>(config: AuthChainConfig<TAuth>, request: AuthRequest, options: {
24
- optional: boolean;
25
- }, context: AuthContext): Promise<AuthChainResult<TAuth>>;
26
- //# sourceMappingURL=chain.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chain.d.ts","sourceRoot":"","sources":["../../src/auth/chain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAGxE,2GAA2G;AAC3G,MAAM,WAAW,YAAY,CAAC,KAAK;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,MAAM,CAAC,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAA;CACpC;AAED,uFAAuF;AACvF,MAAM,WAAW,cAAc,CAAC,KAAK;IACnC,OAAO,CAAC,IAAI,EAAE,KAAK,GAAG,MAAM,CAAA;CAC7B;AAED,iFAAiF;AACjF,MAAM,WAAW,eAAe,CAAC,KAAK;IACpC,QAAQ,CAAC,UAAU,EAAE,SAAS,YAAY,CAAC,KAAK,CAAC,EAAE,CAAA;IACnD,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,YAAY,CAAC,KAAK,CAAC,EAAE,CAAA;IACnD,QAAQ,CAAC,cAAc,CAAC,EAAE,cAAc,CAAC,KAAK,CAAC,CAAA;CAChD;AAED,qGAAqG;AACrG,MAAM,WAAW,eAAe,CAAC,KAAK;IACpC,QAAQ,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI,CAAA;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;CAC/B;AAED,qFAAqF;AACrF,wBAAsB,YAAY,CAAC,KAAK,EACtC,MAAM,EAAE,eAAe,CAAC,KAAK,CAAC,EAC9B,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE;IAAE,QAAQ,EAAE,OAAO,CAAA;CAAE,EAC9B,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAqCjC"}
@@ -1,46 +0,0 @@
1
- import { UnauthorizedError } from '../errors/index.js';
2
- /** Executes the auth chain: tries strategies in order, enriches, resolves tenant. */
3
- export async function runAuthChain(config, request, options, context) {
4
- let extracted = null;
5
- let matchedStrategy = null;
6
- for (const strategy of config.strategies) {
7
- extracted = await strategy.extract(request, context);
8
- if (extracted !== null) {
9
- matchedStrategy = strategy;
10
- break;
11
- }
12
- }
13
- if (extracted === null) {
14
- if (options.optional)
15
- return { auth: null, tenant: null };
16
- throw new UnauthorizedError();
17
- }
18
- let auth;
19
- try {
20
- auth = await matchedStrategy.verify(extracted, context);
21
- }
22
- catch (error) {
23
- if (error instanceof UnauthorizedError)
24
- throw error;
25
- throw new UnauthorizedError('Authentication failed', {
26
- strategy: matchedStrategy.name,
27
- cause: error instanceof Error ? error.message : String(error),
28
- });
29
- }
30
- if (config.enrichers) {
31
- for (const enricher of config.enrichers) {
32
- auth = await enricher.enrich(auth);
33
- }
34
- }
35
- const tenant = config.tenantResolver ? config.tenantResolver.resolve(auth) : extractTenant(auth);
36
- return { auth, tenant };
37
- }
38
- function extractTenant(auth) {
39
- if (auth !== null && typeof auth === 'object' && 'tenantId' in auth) {
40
- const tenantId = auth.tenantId;
41
- if (typeof tenantId === 'string')
42
- return tenantId;
43
- }
44
- return null;
45
- }
46
- //# sourceMappingURL=chain.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chain.js","sourceRoot":"","sources":["../../src/auth/chain.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AA0BtD,qFAAqF;AACrF,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,MAA8B,EAC9B,OAAoB,EACpB,OAA8B,EAC9B,OAAoB;IAEpB,IAAI,SAAS,GAAiB,IAAI,CAAA;IAClC,IAAI,eAAe,GAA+B,IAAI,CAAA;IAEtD,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACzC,SAAS,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QACpD,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YACvB,eAAe,GAAG,QAAQ,CAAA;YAC1B,MAAK;QACP,CAAC;IACH,CAAC;IAED,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;QACvB,IAAI,OAAO,CAAC,QAAQ;YAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;QACzD,MAAM,IAAI,iBAAiB,EAAE,CAAA;IAC/B,CAAC;IAED,IAAI,IAAW,CAAA;IACf,IAAI,CAAC;QACH,IAAI,GAAG,MAAM,eAAgB,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;IAC1D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,iBAAiB;YAAE,MAAM,KAAK,CAAA;QACnD,MAAM,IAAI,iBAAiB,CAAC,uBAAuB,EAAE;YACnD,QAAQ,EAAE,eAAgB,CAAC,IAAI;YAC/B,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SAC9D,CAAC,CAAA;IACJ,CAAC;IAED,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACrB,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YACxC,IAAI,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QACpC,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;IAEhG,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;AACzB,CAAC;AAED,SAAS,aAAa,CAAC,IAAa;IAClC,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,UAAU,IAAI,IAAI,EAAE,CAAC;QACpE,MAAM,QAAQ,GAAI,IAA8B,CAAC,QAAQ,CAAA;QACzD,IAAI,OAAO,QAAQ,KAAK,QAAQ;YAAE,OAAO,QAAQ,CAAA;IACnD,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC"}
@@ -1,24 +0,0 @@
1
- /** Cookie configuration for token delivery — name, domain, path, secure, sameSite, httpOnly. */
2
- export interface CookieConfig {
3
- readonly name?: string;
4
- readonly secure?: 'auto' | boolean;
5
- readonly sameSite?: 'strict' | 'lax' | 'none';
6
- readonly path?: string;
7
- }
8
- /** CookieConfig with all defaults resolved — every field is required. */
9
- export interface ResolvedCookieConfig {
10
- readonly name: string;
11
- readonly secure: boolean;
12
- readonly sameSite: string;
13
- readonly path: string;
14
- readonly httpOnly: true;
15
- }
16
- /** Resolves a partial CookieConfig into a ResolvedCookieConfig with secure defaults. */
17
- export declare function resolveCookieConfig(cookie: CookieConfig, env: string): ResolvedCookieConfig;
18
- /** Builds a Set-Cookie header string from name, value, and resolved config. */
19
- export declare function buildSetCookieHeader(resolved: ResolvedCookieConfig, value: string, maxAge: number): string;
20
- /** Builds a Set-Cookie header that expires (clears) a cookie. */
21
- export declare function buildClearCookieHeader(resolved: ResolvedCookieConfig): string;
22
- /** Parses a Cookie header string into a Record of key-value pairs. */
23
- export declare function parseCookieHeader(header: string | undefined, name: string): string | undefined;
24
- //# sourceMappingURL=cookie.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cookie.d.ts","sourceRoot":"","sources":["../../src/auth/cookie.ts"],"names":[],"mappings":"AAAA,gGAAgG;AAChG,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;IAClC,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,GAAG,KAAK,GAAG,MAAM,CAAA;IAC7C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,yEAAyE;AACzE,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAA;CACxB;AAED,wFAAwF;AACxF,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,GAAG,oBAAoB,CAY3F;AAED,+EAA+E;AAC/E,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAU1G;AAED,iEAAiE;AACjE,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,oBAAoB,GAAG,MAAM,CAU7E;AAED,sEAAsE;AACtE,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAY9F"}
@@ -1,59 +0,0 @@
1
- /** Resolves a partial CookieConfig into a ResolvedCookieConfig with secure defaults. */
2
- export function resolveCookieConfig(cookie, env) {
3
- const secure = cookie.secure === 'auto' || cookie.secure === undefined
4
- ? env === 'production'
5
- : cookie.secure;
6
- return {
7
- name: cookie.name ?? '__pipework_refresh',
8
- secure,
9
- sameSite: cookie.sameSite ?? 'strict',
10
- path: cookie.path ?? '/',
11
- httpOnly: true,
12
- };
13
- }
14
- /** Builds a Set-Cookie header string from name, value, and resolved config. */
15
- export function buildSetCookieHeader(resolved, value, maxAge) {
16
- const parts = [
17
- `${resolved.name}=${encodeURIComponent(value)}`,
18
- `HttpOnly`,
19
- `Path=${resolved.path}`,
20
- `Max-Age=${maxAge}`,
21
- `SameSite=${capitalize(resolved.sameSite)}`,
22
- ];
23
- if (resolved.secure)
24
- parts.push('Secure');
25
- return parts.join('; ');
26
- }
27
- /** Builds a Set-Cookie header that expires (clears) a cookie. */
28
- export function buildClearCookieHeader(resolved) {
29
- const parts = [
30
- `${resolved.name}=`,
31
- `HttpOnly`,
32
- `Path=${resolved.path}`,
33
- `Max-Age=0`,
34
- `SameSite=${capitalize(resolved.sameSite)}`,
35
- ];
36
- if (resolved.secure)
37
- parts.push('Secure');
38
- return parts.join('; ');
39
- }
40
- /** Parses a Cookie header string into a Record of key-value pairs. */
41
- export function parseCookieHeader(header, name) {
42
- if (header === undefined)
43
- return undefined;
44
- for (const pair of header.split(';')) {
45
- const trimmed = pair.trim();
46
- const eqIdx = trimmed.indexOf('=');
47
- if (eqIdx === -1)
48
- continue;
49
- const key = trimmed.slice(0, eqIdx).trim();
50
- if (key === name) {
51
- return decodeURIComponent(trimmed.slice(eqIdx + 1).trim());
52
- }
53
- }
54
- return undefined;
55
- }
56
- function capitalize(s) {
57
- return s.charAt(0).toUpperCase() + s.slice(1);
58
- }
59
- //# sourceMappingURL=cookie.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cookie.js","sourceRoot":"","sources":["../../src/auth/cookie.ts"],"names":[],"mappings":"AAiBA,wFAAwF;AACxF,MAAM,UAAU,mBAAmB,CAAC,MAAoB,EAAE,GAAW;IACnE,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS;QACpE,CAAC,CAAC,GAAG,KAAK,YAAY;QACtB,CAAC,CAAC,MAAM,CAAC,MAAM,CAAA;IAEjB,OAAO;QACL,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,oBAAoB;QACzC,MAAM;QACN,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,QAAQ;QACrC,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,GAAG;QACxB,QAAQ,EAAE,IAAI;KACf,CAAA;AACH,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,oBAAoB,CAAC,QAA8B,EAAE,KAAa,EAAE,MAAc;IAChG,MAAM,KAAK,GAAG;QACZ,GAAG,QAAQ,CAAC,IAAI,IAAI,kBAAkB,CAAC,KAAK,CAAC,EAAE;QAC/C,UAAU;QACV,QAAQ,QAAQ,CAAC,IAAI,EAAE;QACvB,WAAW,MAAM,EAAE;QACnB,YAAY,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;KAC5C,CAAA;IACD,IAAI,QAAQ,CAAC,MAAM;QAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACzC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACzB,CAAC;AAED,iEAAiE;AACjE,MAAM,UAAU,sBAAsB,CAAC,QAA8B;IACnE,MAAM,KAAK,GAAG;QACZ,GAAG,QAAQ,CAAC,IAAI,GAAG;QACnB,UAAU;QACV,QAAQ,QAAQ,CAAC,IAAI,EAAE;QACvB,WAAW;QACX,YAAY,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;KAC5C,CAAA;IACD,IAAI,QAAQ,CAAC,MAAM;QAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACzC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACzB,CAAC;AAED,sEAAsE;AACtE,MAAM,UAAU,iBAAiB,CAAC,MAA0B,EAAE,IAAY;IACxE,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,SAAS,CAAA;IAC1C,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;QAC3B,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAClC,IAAI,KAAK,KAAK,CAAC,CAAC;YAAE,SAAQ;QAC1B,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,CAAA;QAC1C,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YACjB,OAAO,kBAAkB,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;QAC5D,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,SAAS,UAAU,CAAC,CAAS;IAC3B,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AAC/C,CAAC"}
@@ -1,10 +0,0 @@
1
- export type { AuthStrategy, AuthRequest, AuthContext, BaseAuth } from './types.js';
2
- export { runAuthChain } from './chain.js';
3
- export type { AuthEnricher, TenantResolver, AuthChainConfig, AuthChainResult } from './chain.js';
4
- export { createSessions } from './sessions.js';
5
- export type { Sessions, SessionConfig, TokenPair, TokenPayload, HttpTokenResult, HttpRequest, HttpResponse } from './sessions.js';
6
- export type { CookieConfig, ResolvedCookieConfig } from './cookie.js';
7
- export { resolveCookieConfig, buildSetCookieHeader, buildClearCookieHeader, parseCookieHeader } from './cookie.js';
8
- export { createMultiOrgSessions } from './multi-org.js';
9
- export type { MultiOrgConfig, MultiOrgSessions, ResolveLoginResult, AuthenticatedResult, OrgSelectResult, OrgMembership, OrgInfo, OrgMembershipDetail } from './multi-org.js';
10
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAClF,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACzC,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAChG,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,YAAY,EAAE,eAAe,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AACjI,YAAY,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AACrE,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAClH,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAA;AACvD,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,eAAe,EAAE,aAAa,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA"}
@@ -1,5 +0,0 @@
1
- export { runAuthChain } from './chain.js';
2
- export { createSessions } from './sessions.js';
3
- export { resolveCookieConfig, buildSetCookieHeader, buildClearCookieHeader, parseCookieHeader } from './cookie.js';
4
- export { createMultiOrgSessions } from './multi-org.js';
5
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAEzC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAG9C,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAClH,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAA"}
@@ -1,77 +0,0 @@
1
- import type { DB } from '../db/index.js';
2
- import type { Sessions, HttpResponse, HttpRequest, HttpTokenResult } from './sessions.js';
3
- /** Configuration for multi-org sessions — base sessions, signing keys, org-select token TTL. */
4
- export interface MultiOrgConfig {
5
- readonly sessions: Sessions;
6
- readonly signing: {
7
- algorithm: 'ES256';
8
- privateKey: string;
9
- publicKey: string;
10
- };
11
- readonly issuer: string;
12
- readonly audience: string;
13
- readonly orgSelectToken?: {
14
- readonly expiresIn?: string;
15
- };
16
- readonly table?: string;
17
- readonly resolveOrgNames?: (db: DB, orgIds: string[]) => Promise<Map<string, string>>;
18
- }
19
- /** A user's membership in an organization — userId, orgId, role. */
20
- export interface OrgMembership {
21
- readonly id: string;
22
- readonly orgId: string;
23
- readonly role: string | null;
24
- readonly joinedAt: Date;
25
- }
26
- /** Basic organization info — id and display name. */
27
- export interface OrgInfo {
28
- readonly id: string;
29
- readonly name: string;
30
- }
31
- /** Organization membership with display name — extends OrgMembership with org info. */
32
- export interface OrgMembershipDetail {
33
- readonly id: string;
34
- readonly name: string;
35
- readonly role: string | null;
36
- }
37
- /** Result when user has exactly one org — direct authentication, no org selection needed. */
38
- export interface AuthenticatedResult {
39
- readonly type: 'authenticated';
40
- readonly accessToken: string;
41
- readonly expiresIn: number;
42
- }
43
- /** Result when user has multiple orgs — returns a session token for org selection. */
44
- export interface OrgSelectResult {
45
- readonly type: 'org_select';
46
- readonly sessionToken: string;
47
- readonly orgs: readonly OrgInfo[];
48
- }
49
- /** Union result from resolveLogin() — either AuthenticatedResult or OrgSelectResult. */
50
- export type ResolveLoginResult = AuthenticatedResult | OrgSelectResult;
51
- /** Multi-org session manager — login resolution, org selection, switching, membership CRUD. */
52
- export interface MultiOrgSessions {
53
- resolveLogin(response: HttpResponse, db: DB, user: {
54
- id: string;
55
- }): Promise<ResolveLoginResult>;
56
- selectOrg(response: HttpResponse, db: DB, sessionToken: string, orgId: string): Promise<HttpTokenResult>;
57
- switchOrg(response: HttpResponse, db: DB, request: HttpRequest, orgId: string, userId: string): Promise<HttpTokenResult>;
58
- listOrgs(db: DB, userId: string): Promise<{
59
- orgs: readonly OrgMembershipDetail[];
60
- }>;
61
- addMember(db: DB, params: {
62
- userId: string;
63
- orgId: string;
64
- role?: string;
65
- addedBy?: string;
66
- }): Promise<{
67
- id: string;
68
- }>;
69
- removeMember(db: DB, params: {
70
- userId: string;
71
- orgId: string;
72
- }): Promise<void>;
73
- checkMembership(db: DB, userId: string, orgId: string): Promise<OrgMembership | null>;
74
- }
75
- /** Creates a multi-org session manager with org selection flow and membership management. */
76
- export declare function createMultiOrgSessions(config: MultiOrgConfig): MultiOrgSessions;
77
- //# sourceMappingURL=multi-org.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"multi-org.d.ts","sourceRoot":"","sources":["../../src/auth/multi-org.ts"],"names":[],"mappings":"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"}
@@ -1,164 +0,0 @@
1
- import { SignJWT, jwtVerify, importPKCS8, importSPKI } from 'jose';
2
- import { sql } from '../db/sql.js';
3
- import { ForbiddenError, UnauthorizedError, ConflictError, NotFoundError } from '../errors/index.js';
4
- import { assertValidIdentifier } from '../db/identifiers.js';
5
- /** Creates a multi-org session manager with org selection flow and membership management. */
6
- export function createMultiOrgSessions(config) {
7
- const tableName = config.table ?? 'pipework_user_orgs';
8
- assertValidIdentifier(tableName, 'multi-org membership table');
9
- const t = sql.raw(`"${tableName}"`);
10
- const orgSelectAudience = `${config.audience}:org-select`;
11
- const orgSelectExpiresIn = config.orgSelectToken?.expiresIn ?? '10m';
12
- let cachedPrivateKey = null;
13
- let cachedPublicKey = null;
14
- async function getPrivateKey() {
15
- if (cachedPrivateKey === null) {
16
- cachedPrivateKey = await importPKCS8(config.signing.privateKey, config.signing.algorithm);
17
- }
18
- return cachedPrivateKey;
19
- }
20
- async function getPublicKey() {
21
- if (cachedPublicKey === null) {
22
- cachedPublicKey = await importSPKI(config.signing.publicKey, config.signing.algorithm);
23
- }
24
- return cachedPublicKey;
25
- }
26
- function parseExpiry(exp) {
27
- const match = exp.match(/^(\d+)([smhd])$/);
28
- if (match === null)
29
- throw new Error(`Invalid expiry format: ${exp}`);
30
- const value = parseInt(match[1], 10);
31
- const unit = match[2];
32
- switch (unit) {
33
- case 's': return value;
34
- case 'm': return value * 60;
35
- case 'h': return value * 3600;
36
- case 'd': return value * 86400;
37
- default: return value;
38
- }
39
- }
40
- async function signOrgSelectToken(userId) {
41
- const key = await getPrivateKey();
42
- const expiresInSeconds = parseExpiry(orgSelectExpiresIn);
43
- return new SignJWT({ purpose: 'org_select' })
44
- .setProtectedHeader({ alg: config.signing.algorithm })
45
- .setSubject(userId)
46
- .setIssuer(config.issuer)
47
- .setAudience(orgSelectAudience)
48
- .setIssuedAt()
49
- .setExpirationTime(`${expiresInSeconds}s`)
50
- .sign(key);
51
- }
52
- async function verifyOrgSelectToken(token) {
53
- const key = await getPublicKey();
54
- try {
55
- const { payload } = await jwtVerify(token, key, {
56
- algorithms: [config.signing.algorithm],
57
- issuer: config.issuer,
58
- audience: orgSelectAudience,
59
- });
60
- if (payload['purpose'] !== 'org_select') {
61
- throw new Error('wrong purpose');
62
- }
63
- return payload.sub;
64
- }
65
- catch {
66
- throw new UnauthorizedError('Invalid or expired organization selection token. Please log in again.');
67
- }
68
- }
69
- async function requireMembership(db, userId, orgId) {
70
- const rows = await db.execute(sql `SELECT 1 FROM ${t} WHERE user_id = ${userId} AND org_id = ${orgId}`);
71
- if (rows.length === 0) {
72
- throw new ForbiddenError('You are not a member of this organization.');
73
- }
74
- }
75
- async function resolveLogin(response, db, user) {
76
- const rows = await db.execute(sql `SELECT org_id, role FROM ${t} WHERE user_id = ${user.id} ORDER BY joined_at`);
77
- if (rows.length === 0) {
78
- throw new ForbiddenError('User has no organization memberships. Contact your administrator to be added to an organization.');
79
- }
80
- if (rows.length === 1) {
81
- const orgId = rows[0]['org_id'];
82
- const result = await config.sessions.issueTokensHttp(response, db, { id: user.id, tenantId: orgId });
83
- return { type: 'authenticated', accessToken: result.accessToken, expiresIn: result.expiresIn };
84
- }
85
- const orgIds = rows.map(r => r['org_id']);
86
- let orgNames = null;
87
- if (config.resolveOrgNames !== undefined) {
88
- orgNames = await config.resolveOrgNames(db, orgIds);
89
- }
90
- const orgs = orgIds.map(id => ({
91
- id,
92
- name: orgNames?.get(id) ?? id,
93
- }));
94
- const sessionToken = await signOrgSelectToken(user.id);
95
- return { type: 'org_select', sessionToken, orgs };
96
- }
97
- async function selectOrg(response, db, sessionToken, orgId) {
98
- const userId = await verifyOrgSelectToken(sessionToken);
99
- await requireMembership(db, userId, orgId);
100
- return config.sessions.issueTokensHttp(response, db, { id: userId, tenantId: orgId });
101
- }
102
- async function switchOrg(response, db, _request, orgId, userId) {
103
- await requireMembership(db, userId, orgId);
104
- return config.sessions.issueTokensHttp(response, db, { id: userId, tenantId: orgId });
105
- }
106
- async function listOrgs(db, userId) {
107
- const rows = await db.execute(sql `SELECT org_id, role FROM ${t} WHERE user_id = ${userId} ORDER BY joined_at`);
108
- const orgIds = rows.map(r => r['org_id']);
109
- let orgNames = null;
110
- if (config.resolveOrgNames !== undefined && orgIds.length > 0) {
111
- orgNames = await config.resolveOrgNames(db, orgIds);
112
- }
113
- const orgs = rows.map(r => {
114
- const orgId = r['org_id'];
115
- return {
116
- id: orgId,
117
- name: orgNames?.get(orgId) ?? orgId,
118
- role: r['role'] ?? null,
119
- };
120
- });
121
- return { orgs };
122
- }
123
- async function addMember(db, params) {
124
- const role = params.role ?? null;
125
- const addedBy = params.addedBy ?? null;
126
- const rows = await db.execute(sql `INSERT INTO ${t} (user_id, org_id, role, added_by)
127
- VALUES (${params.userId}, ${params.orgId}, ${role}, ${addedBy})
128
- ON CONFLICT (user_id, org_id) DO NOTHING
129
- RETURNING id`);
130
- if (rows.length === 0) {
131
- throw new ConflictError('User is already a member of this organization.');
132
- }
133
- return { id: rows[0]['id'] };
134
- }
135
- async function removeMember(db, params) {
136
- const rows = await db.execute(sql `DELETE FROM ${t} WHERE user_id = ${params.userId} AND org_id = ${params.orgId} RETURNING id`);
137
- if (rows.length === 0) {
138
- throw new NotFoundError('Membership');
139
- }
140
- await config.sessions.bumpVersion(db, params.userId);
141
- }
142
- async function checkMembershipFn(db, userId, orgId) {
143
- const rows = await db.execute(sql `SELECT id, org_id, role, joined_at FROM ${t} WHERE user_id = ${userId} AND org_id = ${orgId}`);
144
- if (rows.length === 0)
145
- return null;
146
- const row = rows[0];
147
- return {
148
- id: row['id'],
149
- orgId: row['org_id'],
150
- role: row['role'] ?? null,
151
- joinedAt: new Date(row['joined_at']),
152
- };
153
- }
154
- return {
155
- resolveLogin,
156
- selectOrg,
157
- switchOrg,
158
- listOrgs,
159
- addMember,
160
- removeMember,
161
- checkMembership: checkMembershipFn,
162
- };
163
- }
164
- //# sourceMappingURL=multi-org.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"multi-org.js","sourceRoot":"","sources":["../../src/auth/multi-org.ts"],"names":[],"mappings":"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"}