@c15t/backend 1.8.0 → 2.0.0-rc.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 (1026) hide show
  1. package/.turbo/turbo-build.log +44 -78
  2. package/CHANGELOG.md +13 -0
  3. package/dist/cache/adapters/cloudflare-kv.d.ts +46 -0
  4. package/dist/cache/adapters/cloudflare-kv.d.ts.map +1 -0
  5. package/dist/cache/adapters/index.d.ts +11 -0
  6. package/dist/cache/adapters/index.d.ts.map +1 -0
  7. package/dist/cache/adapters/memory.d.ts +47 -0
  8. package/dist/cache/adapters/memory.d.ts.map +1 -0
  9. package/dist/cache/adapters/upstash-redis.d.ts +75 -0
  10. package/dist/cache/adapters/upstash-redis.d.ts.map +1 -0
  11. package/dist/cache/gvl-resolver.d.ts +86 -0
  12. package/dist/cache/gvl-resolver.d.ts.map +1 -0
  13. package/dist/cache/index.d.ts +13 -0
  14. package/dist/cache/index.d.ts.map +1 -0
  15. package/dist/cache/keys.d.ts +51 -0
  16. package/dist/cache/keys.d.ts.map +1 -0
  17. package/dist/cache/types.d.ts +61 -0
  18. package/dist/cache/types.d.ts.map +1 -0
  19. package/dist/cache.cjs +530 -0
  20. package/dist/cache.js +467 -0
  21. package/dist/core.cjs +2569 -3840
  22. package/dist/core.d.ts +19 -409
  23. package/dist/core.d.ts.map +1 -1
  24. package/dist/core.js +2378 -3680
  25. package/dist/db/adapters/drizzle.cjs +36 -0
  26. package/dist/db/adapters/drizzle.d.ts.map +1 -0
  27. package/dist/db/adapters/index.d.ts.map +1 -0
  28. package/dist/db/adapters/kysely.cjs +36 -0
  29. package/dist/db/adapters/kysely.d.ts.map +1 -0
  30. package/dist/db/adapters/mongo.cjs +36 -0
  31. package/dist/db/adapters/mongo.d.ts.map +1 -0
  32. package/dist/db/adapters/prisma.cjs +36 -0
  33. package/dist/db/adapters/prisma.d.ts.map +1 -0
  34. package/dist/db/adapters/typeorm.cjs +36 -0
  35. package/dist/db/adapters/typeorm.d.ts.map +1 -0
  36. package/dist/db/adapters.cjs +18 -0
  37. package/dist/db/migrator/index.d.ts.map +1 -0
  38. package/dist/db/migrator.cjs +61 -0
  39. package/dist/db/registry/consent-policy.d.ts +23 -0
  40. package/dist/db/registry/consent-policy.d.ts.map +1 -0
  41. package/dist/db/registry/consent-purpose.d.ts +11 -0
  42. package/dist/db/registry/consent-purpose.d.ts.map +1 -0
  43. package/dist/db/registry/domain.d.ts +18 -0
  44. package/dist/db/registry/domain.d.ts.map +1 -0
  45. package/dist/db/registry/index.d.ts +57 -0
  46. package/dist/db/registry/index.d.ts.map +1 -0
  47. package/dist/db/registry/subject.d.ts +32 -0
  48. package/dist/db/registry/subject.d.ts.map +1 -0
  49. package/dist/db/registry/types.d.ts +10 -0
  50. package/dist/db/registry/types.d.ts.map +1 -0
  51. package/dist/db/registry/utils/generate-id.d.ts +25 -0
  52. package/dist/db/registry/utils/generate-id.d.ts.map +1 -0
  53. package/dist/db/registry/utils.d.ts +25 -0
  54. package/dist/db/registry/utils.d.ts.map +1 -0
  55. package/dist/db/schema/1.0.0/audit-log.d.ts +14 -0
  56. package/dist/db/schema/1.0.0/audit-log.d.ts.map +1 -0
  57. package/dist/db/schema/1.0.0/consent-policy.d.ts +13 -0
  58. package/dist/db/schema/1.0.0/consent-policy.d.ts.map +1 -0
  59. package/dist/db/schema/1.0.0/consent-purpose.d.ts +13 -0
  60. package/dist/db/schema/1.0.0/consent-purpose.d.ts.map +1 -0
  61. package/dist/db/schema/1.0.0/consent-record.d.ts +9 -0
  62. package/dist/db/schema/1.0.0/consent-record.d.ts.map +1 -0
  63. package/dist/db/schema/1.0.0/consent.d.ts +18 -0
  64. package/dist/db/schema/1.0.0/consent.d.ts.map +1 -0
  65. package/dist/db/schema/1.0.0/domain.d.ts +11 -0
  66. package/dist/db/schema/1.0.0/domain.d.ts.map +1 -0
  67. package/dist/db/schema/1.0.0/index.d.ts +1506 -0
  68. package/dist/db/schema/1.0.0/index.d.ts.map +1 -0
  69. package/dist/db/schema/1.0.0/subject.d.ts +11 -0
  70. package/dist/db/schema/1.0.0/subject.d.ts.map +1 -0
  71. package/dist/db/schema/2.0.0/audit-log.d.ts +16 -0
  72. package/dist/db/schema/2.0.0/audit-log.d.ts.map +1 -0
  73. package/dist/db/schema/2.0.0/consent-policy.d.ts +13 -0
  74. package/dist/db/schema/2.0.0/consent-policy.d.ts.map +1 -0
  75. package/dist/db/schema/2.0.0/consent-purpose.d.ts +10 -0
  76. package/dist/db/schema/2.0.0/consent-purpose.d.ts.map +1 -0
  77. package/dist/db/schema/2.0.0/consent.d.ts +24 -0
  78. package/dist/db/schema/2.0.0/consent.d.ts.map +1 -0
  79. package/dist/db/schema/2.0.0/domain.d.ts +10 -0
  80. package/dist/db/schema/2.0.0/domain.d.ts.map +1 -0
  81. package/dist/db/schema/2.0.0/index.d.ts +586 -0
  82. package/dist/db/schema/2.0.0/index.d.ts.map +1 -0
  83. package/dist/db/schema/2.0.0/subject.d.ts +12 -0
  84. package/dist/db/schema/2.0.0/subject.d.ts.map +1 -0
  85. package/dist/db/schema/index.d.ts +2664 -0
  86. package/dist/db/schema/index.d.ts.map +1 -0
  87. package/dist/db/schema.cjs +359 -0
  88. package/dist/db/schema.js +261 -0
  89. package/dist/db/tenant-scope.d.ts +20 -0
  90. package/dist/db/tenant-scope.d.ts.map +1 -0
  91. package/dist/define-config.cjs +36 -0
  92. package/dist/define-config.d.ts.map +1 -0
  93. package/dist/handlers/consent/check.handler.d.ts +24 -0
  94. package/dist/handlers/consent/check.handler.d.ts.map +1 -0
  95. package/dist/handlers/consent/index.d.ts +11 -339
  96. package/dist/handlers/consent/index.d.ts.map +1 -1
  97. package/dist/handlers/init/geo.d.ts +34 -0
  98. package/dist/handlers/init/geo.d.ts.map +1 -0
  99. package/dist/handlers/init/index.d.ts +157 -0
  100. package/dist/handlers/init/index.d.ts.map +1 -0
  101. package/dist/handlers/init/translations.d.ts +28 -0
  102. package/dist/handlers/init/translations.d.ts.map +1 -0
  103. package/dist/handlers/status/index.d.ts +7 -0
  104. package/dist/handlers/status/index.d.ts.map +1 -0
  105. package/dist/handlers/status/status.handler.d.ts +26 -0
  106. package/dist/handlers/status/status.handler.d.ts.map +1 -0
  107. package/dist/handlers/subject/get.handler.d.ts +32 -0
  108. package/dist/handlers/subject/get.handler.d.ts.map +1 -0
  109. package/dist/handlers/subject/index.d.ts +10 -0
  110. package/dist/handlers/subject/index.d.ts.map +1 -0
  111. package/dist/handlers/subject/list.handler.d.ts +31 -0
  112. package/dist/handlers/subject/list.handler.d.ts.map +1 -0
  113. package/dist/handlers/subject/patch.handler.d.ts +22 -0
  114. package/dist/handlers/subject/patch.handler.d.ts.map +1 -0
  115. package/dist/handlers/subject/post.handler.d.ts +25 -0
  116. package/dist/handlers/subject/post.handler.d.ts.map +1 -0
  117. package/dist/handlers/utils/consent-enrichment.d.ts +52 -0
  118. package/dist/handlers/utils/consent-enrichment.d.ts.map +1 -0
  119. package/dist/init.d.ts +20 -26
  120. package/dist/init.d.ts.map +1 -1
  121. package/dist/middleware/auth/index.d.ts +7 -0
  122. package/dist/middleware/auth/index.d.ts.map +1 -0
  123. package/dist/middleware/auth/validate-api-key.d.ts +49 -0
  124. package/dist/middleware/auth/validate-api-key.d.ts.map +1 -0
  125. package/dist/middleware/cors/cors.d.ts +13 -17
  126. package/dist/middleware/cors/cors.d.ts.map +1 -1
  127. package/dist/middleware/cors/is-origin-trusted.d.ts.map +1 -1
  128. package/dist/middleware/cors/process-cors.d.ts +1 -1
  129. package/dist/middleware/cors/process-cors.d.ts.map +1 -1
  130. package/dist/middleware/openapi/config.d.ts +16 -2
  131. package/dist/middleware/openapi/config.d.ts.map +1 -1
  132. package/dist/middleware/openapi/handlers.d.ts +1 -24
  133. package/dist/middleware/openapi/handlers.d.ts.map +1 -1
  134. package/dist/middleware/openapi/index.d.ts +3 -2
  135. package/dist/middleware/openapi/index.d.ts.map +1 -1
  136. package/dist/middleware/process-ip/index.d.ts +12 -0
  137. package/dist/middleware/process-ip/index.d.ts.map +1 -0
  138. package/dist/router.cjs +1288 -1776
  139. package/dist/router.d.ts +9 -363
  140. package/dist/router.d.ts.map +1 -1
  141. package/dist/router.js +1277 -1658
  142. package/dist/routes/consent.d.ts +16 -0
  143. package/dist/routes/consent.d.ts.map +1 -0
  144. package/dist/routes/index.d.ts +10 -0
  145. package/dist/routes/index.d.ts.map +1 -0
  146. package/dist/routes/init.d.ts +16 -0
  147. package/dist/routes/init.d.ts.map +1 -0
  148. package/dist/routes/status.d.ts +16 -0
  149. package/dist/routes/status.d.ts.map +1 -0
  150. package/dist/routes/subject.d.ts +16 -0
  151. package/dist/routes/subject.d.ts.map +1 -0
  152. package/dist/types/api.d.ts +5 -1
  153. package/dist/types/api.d.ts.map +1 -1
  154. package/dist/types/index.d.ts +253 -14
  155. package/dist/types/index.d.ts.map +1 -1
  156. package/dist/types.cjs +37 -0
  157. package/dist/types.js +3 -0
  158. package/dist/utils/create-telemetry-options.d.ts +71 -0
  159. package/dist/utils/create-telemetry-options.d.ts.map +1 -0
  160. package/dist/utils/env.d.ts.map +1 -0
  161. package/dist/utils/extract-error-message.d.ts +9 -0
  162. package/dist/utils/extract-error-message.d.ts.map +1 -0
  163. package/dist/utils/index.d.ts +4 -0
  164. package/dist/utils/index.d.ts.map +1 -0
  165. package/dist/utils/instrumentation.d.ts +70 -0
  166. package/dist/utils/instrumentation.d.ts.map +1 -0
  167. package/dist/utils/logger.d.ts.map +1 -0
  168. package/dist/utils/metrics.d.ts +133 -0
  169. package/dist/utils/metrics.d.ts.map +1 -0
  170. package/dist/version.d.ts +1 -1
  171. package/dist/version.d.ts.map +1 -1
  172. package/package.json +143 -224
  173. package/rslib.config.ts +11 -34
  174. package/src/cache/adapters/cloudflare-kv.ts +71 -0
  175. package/src/cache/adapters/index.ts +22 -0
  176. package/src/cache/adapters/memory.ts +111 -0
  177. package/src/cache/adapters/upstash-redis.ts +113 -0
  178. package/src/cache/gvl-resolver.ts +289 -0
  179. package/src/cache/index.ts +34 -0
  180. package/src/cache/keys.ts +68 -0
  181. package/src/cache/types.ts +66 -0
  182. package/src/core.ts +254 -352
  183. package/src/db/migrator/index.ts +80 -0
  184. package/src/db/registry/consent-policy.test.ts +451 -0
  185. package/src/db/registry/consent-policy.ts +82 -0
  186. package/src/db/registry/consent-purpose.test.ts +428 -0
  187. package/src/db/registry/consent-purpose.ts +61 -0
  188. package/src/db/registry/domain.test.ts +445 -0
  189. package/src/db/registry/domain.ts +91 -0
  190. package/src/db/registry/index.ts +14 -0
  191. package/src/db/registry/subject.test.ts +388 -0
  192. package/src/db/registry/subject.ts +129 -0
  193. package/src/db/registry/types.ts +10 -0
  194. package/src/db/registry/utils/generate-id.test.ts +216 -0
  195. package/src/db/registry/utils/generate-id.ts +133 -0
  196. package/src/db/registry/utils.ts +133 -0
  197. package/src/db/schema/1.0.0/audit-log.ts +15 -0
  198. package/src/db/schema/1.0.0/consent-policy.ts +14 -0
  199. package/src/db/schema/1.0.0/consent-purpose.ts +14 -0
  200. package/src/db/schema/1.0.0/consent-record.ts +10 -0
  201. package/src/db/schema/1.0.0/consent.ts +20 -0
  202. package/src/db/schema/1.0.0/domain.ts +12 -0
  203. package/src/db/schema/1.0.0/index.ts +48 -0
  204. package/src/db/schema/1.0.0/subject.ts +12 -0
  205. package/src/db/schema/2.0.0/audit-log.ts +18 -0
  206. package/src/db/schema/2.0.0/consent-policy.ts +28 -0
  207. package/src/db/schema/2.0.0/consent-purpose.ts +12 -0
  208. package/src/db/schema/2.0.0/consent.ts +26 -0
  209. package/src/db/schema/2.0.0/domain.ts +12 -0
  210. package/src/db/schema/2.0.0/index.ts +47 -0
  211. package/src/db/schema/2.0.0/subject.ts +14 -0
  212. package/src/db/schema/index.ts +15 -0
  213. package/src/db/tenant-scope.test.ts +750 -0
  214. package/src/db/tenant-scope.ts +103 -0
  215. package/src/handlers/consent/check.handler.ts +126 -0
  216. package/src/handlers/consent/index.ts +11 -10
  217. package/src/handlers/init/geo.test.ts +317 -0
  218. package/src/handlers/init/geo.ts +195 -0
  219. package/src/handlers/init/index.test.ts +205 -0
  220. package/src/handlers/init/index.ts +114 -0
  221. package/src/handlers/init/translations.test.ts +121 -0
  222. package/src/handlers/init/translations.ts +72 -0
  223. package/src/handlers/status/index.ts +7 -0
  224. package/src/handlers/status/status.handler.test.ts +155 -0
  225. package/src/handlers/status/status.handler.ts +51 -0
  226. package/src/handlers/subject/get.handler.ts +93 -0
  227. package/src/handlers/subject/index.ts +10 -0
  228. package/src/handlers/subject/list.handler.ts +93 -0
  229. package/src/handlers/subject/patch.handler.ts +122 -0
  230. package/src/handlers/subject/post.handler.test.ts +294 -0
  231. package/src/handlers/subject/post.handler.ts +254 -0
  232. package/src/handlers/utils/consent-enrichment.test.ts +380 -0
  233. package/src/handlers/utils/consent-enrichment.ts +218 -0
  234. package/src/init.test.ts +126 -0
  235. package/src/init.ts +70 -297
  236. package/src/middleware/auth/index.ts +11 -0
  237. package/src/middleware/auth/validate-api-key.test.ts +86 -0
  238. package/src/middleware/auth/validate-api-key.ts +107 -0
  239. package/src/middleware/cors/cors.test.ts +96 -380
  240. package/src/middleware/cors/cors.ts +88 -97
  241. package/src/middleware/cors/is-origin-trusted.ts +2 -1
  242. package/src/middleware/cors/process-cors.ts +1 -1
  243. package/src/middleware/openapi/config.ts +8 -6
  244. package/src/middleware/openapi/handlers.ts +2 -100
  245. package/src/middleware/openapi/index.ts +3 -2
  246. package/src/middleware/process-ip/index.test.ts +195 -0
  247. package/src/middleware/process-ip/index.ts +199 -0
  248. package/src/router.ts +14 -7
  249. package/src/routes/consent.ts +52 -0
  250. package/src/routes/index.ts +10 -0
  251. package/src/routes/init.ts +102 -0
  252. package/src/routes/status.ts +46 -0
  253. package/src/routes/subject.ts +152 -0
  254. package/src/types/api.ts +17 -2
  255. package/src/types/index.ts +288 -23
  256. package/src/utils/create-telemetry-options.test.ts +302 -0
  257. package/src/utils/create-telemetry-options.ts +229 -0
  258. package/src/utils/extract-error-message.ts +21 -0
  259. package/src/utils/index.ts +3 -0
  260. package/src/utils/instrumentation.test.ts +185 -0
  261. package/src/utils/instrumentation.ts +196 -0
  262. package/src/utils/logger.ts +41 -0
  263. package/src/utils/metrics.test.ts +323 -0
  264. package/src/utils/metrics.ts +402 -0
  265. package/src/utils/telemetry-pii.test.ts +325 -0
  266. package/src/version.ts +1 -1
  267. package/tsconfig.json +2 -4
  268. package/LICENSE.md +0 -595
  269. package/dist/__tests__/server.test.d.ts +0 -2
  270. package/dist/__tests__/server.test.d.ts.map +0 -1
  271. package/dist/contracts/consent/identify.contract.d.ts +0 -24
  272. package/dist/contracts/consent/identify.contract.d.ts.map +0 -1
  273. package/dist/contracts/consent/index.d.ts +0 -340
  274. package/dist/contracts/consent/index.d.ts.map +0 -1
  275. package/dist/contracts/consent/index.test.d.ts +0 -2
  276. package/dist/contracts/consent/index.test.d.ts.map +0 -1
  277. package/dist/contracts/consent/post.contract.d.ts +0 -117
  278. package/dist/contracts/consent/post.contract.d.ts.map +0 -1
  279. package/dist/contracts/consent/post.contract.test.d.ts +0 -2
  280. package/dist/contracts/consent/post.contract.test.d.ts.map +0 -1
  281. package/dist/contracts/consent/show-banner.contract.d.ts +0 -123
  282. package/dist/contracts/consent/show-banner.contract.d.ts.map +0 -1
  283. package/dist/contracts/consent/show-banner.contract.test.d.ts +0 -2
  284. package/dist/contracts/consent/show-banner.contract.test.d.ts.map +0 -1
  285. package/dist/contracts/consent/verify.contract.d.ts +0 -81
  286. package/dist/contracts/consent/verify.contract.d.ts.map +0 -1
  287. package/dist/contracts/consent/verify.contract.test.d.ts +0 -2
  288. package/dist/contracts/consent/verify.contract.test.d.ts.map +0 -1
  289. package/dist/contracts/index.d.ts +0 -731
  290. package/dist/contracts/index.d.ts.map +0 -1
  291. package/dist/contracts/meta/index.d.ts +0 -23
  292. package/dist/contracts/meta/index.d.ts.map +0 -1
  293. package/dist/contracts/meta/index.test.d.ts +0 -2
  294. package/dist/contracts/meta/index.test.d.ts.map +0 -1
  295. package/dist/contracts/meta/status.contract.d.ts +0 -22
  296. package/dist/contracts/meta/status.contract.d.ts.map +0 -1
  297. package/dist/contracts/meta/status.contract.test.d.ts +0 -2
  298. package/dist/contracts/meta/status.contract.test.d.ts.map +0 -1
  299. package/dist/contracts/shared/jurisdiction.schema.d.ts +0 -36
  300. package/dist/contracts/shared/jurisdiction.schema.d.ts.map +0 -1
  301. package/dist/contracts.cjs +0 -799
  302. package/dist/contracts.js +0 -636
  303. package/dist/handlers/consent/identify.handler.d.ts +0 -23
  304. package/dist/handlers/consent/identify.handler.d.ts.map +0 -1
  305. package/dist/handlers/consent/identify.handler.test.d.ts +0 -2
  306. package/dist/handlers/consent/identify.handler.test.d.ts.map +0 -1
  307. package/dist/handlers/consent/post.handler.d.ts +0 -139
  308. package/dist/handlers/consent/post.handler.d.ts.map +0 -1
  309. package/dist/handlers/consent/show-banner/geo.d.ts +0 -10
  310. package/dist/handlers/consent/show-banner/geo.d.ts.map +0 -1
  311. package/dist/handlers/consent/show-banner/geo.test.d.ts +0 -2
  312. package/dist/handlers/consent/show-banner/geo.test.d.ts.map +0 -1
  313. package/dist/handlers/consent/show-banner/handler.d.ts +0 -126
  314. package/dist/handlers/consent/show-banner/handler.d.ts.map +0 -1
  315. package/dist/handlers/consent/show-banner/handler.test.d.ts +0 -2
  316. package/dist/handlers/consent/show-banner/handler.test.d.ts.map +0 -1
  317. package/dist/handlers/consent/show-banner/translations.d.ts +0 -13
  318. package/dist/handlers/consent/show-banner/translations.d.ts.map +0 -1
  319. package/dist/handlers/consent/show-banner/translations.test.d.ts +0 -2
  320. package/dist/handlers/consent/show-banner/translations.test.d.ts.map +0 -1
  321. package/dist/handlers/consent/verify.handler.d.ts +0 -103
  322. package/dist/handlers/consent/verify.handler.d.ts.map +0 -1
  323. package/dist/handlers/meta/index.d.ts +0 -23
  324. package/dist/handlers/meta/index.d.ts.map +0 -1
  325. package/dist/handlers/meta/status.handler.d.ts +0 -21
  326. package/dist/handlers/meta/status.handler.d.ts.map +0 -1
  327. package/dist/middleware/cors/cors.test.d.ts +0 -2
  328. package/dist/middleware/cors/cors.test.d.ts.map +0 -1
  329. package/dist/middleware/cors/is-origin-trusted.test.d.ts +0 -2
  330. package/dist/middleware/cors/is-origin-trusted.test.d.ts.map +0 -1
  331. package/dist/pkgs/api-router/hooks/__tests__/processor.test.d.ts +0 -2
  332. package/dist/pkgs/api-router/hooks/__tests__/processor.test.d.ts.map +0 -1
  333. package/dist/pkgs/api-router/hooks/processor.d.ts +0 -87
  334. package/dist/pkgs/api-router/hooks/processor.d.ts.map +0 -1
  335. package/dist/pkgs/api-router/telemetry.d.ts +0 -15
  336. package/dist/pkgs/api-router/telemetry.d.ts.map +0 -1
  337. package/dist/pkgs/api-router/types/router-props.d.ts +0 -32
  338. package/dist/pkgs/api-router/types/router-props.d.ts.map +0 -1
  339. package/dist/pkgs/api-router/utils/ip.d.ts +0 -44
  340. package/dist/pkgs/api-router/utils/ip.d.ts.map +0 -1
  341. package/dist/pkgs/data-model/fields/field-factory.d.ts +0 -151
  342. package/dist/pkgs/data-model/fields/field-factory.d.ts.map +0 -1
  343. package/dist/pkgs/data-model/fields/field-inference.d.ts +0 -76
  344. package/dist/pkgs/data-model/fields/field-inference.d.ts.map +0 -1
  345. package/dist/pkgs/data-model/fields/field-types.d.ts +0 -182
  346. package/dist/pkgs/data-model/fields/field-types.d.ts.map +0 -1
  347. package/dist/pkgs/data-model/fields/id-generator.d.ts +0 -19
  348. package/dist/pkgs/data-model/fields/id-generator.d.ts.map +0 -1
  349. package/dist/pkgs/data-model/fields/index.cjs +0 -159
  350. package/dist/pkgs/data-model/fields/index.d.ts +0 -13
  351. package/dist/pkgs/data-model/fields/index.d.ts.map +0 -1
  352. package/dist/pkgs/data-model/fields/index.js +0 -106
  353. package/dist/pkgs/data-model/fields/superjson-utils.d.ts +0 -12
  354. package/dist/pkgs/data-model/fields/superjson-utils.d.ts.map +0 -1
  355. package/dist/pkgs/data-model/fields/zod-fields.d.ts +0 -331
  356. package/dist/pkgs/data-model/fields/zod-fields.d.ts.map +0 -1
  357. package/dist/pkgs/data-model/hooks/create-hooks.d.ts +0 -32
  358. package/dist/pkgs/data-model/hooks/create-hooks.d.ts.map +0 -1
  359. package/dist/pkgs/data-model/hooks/index.d.ts +0 -40
  360. package/dist/pkgs/data-model/hooks/index.d.ts.map +0 -1
  361. package/dist/pkgs/data-model/hooks/types.d.ts +0 -134
  362. package/dist/pkgs/data-model/hooks/types.d.ts.map +0 -1
  363. package/dist/pkgs/data-model/hooks/update-hooks.d.ts +0 -33
  364. package/dist/pkgs/data-model/hooks/update-hooks.d.ts.map +0 -1
  365. package/dist/pkgs/data-model/hooks/update-many-hooks.d.ts +0 -55
  366. package/dist/pkgs/data-model/hooks/update-many-hooks.d.ts.map +0 -1
  367. package/dist/pkgs/data-model/hooks/utils.d.ts +0 -62
  368. package/dist/pkgs/data-model/hooks/utils.d.ts.map +0 -1
  369. package/dist/pkgs/data-model/hooks/with-hooks-factory.d.ts +0 -33
  370. package/dist/pkgs/data-model/hooks/with-hooks-factory.d.ts.map +0 -1
  371. package/dist/pkgs/data-model/index.cjs +0 -1603
  372. package/dist/pkgs/data-model/index.d.ts +0 -10
  373. package/dist/pkgs/data-model/index.d.ts.map +0 -1
  374. package/dist/pkgs/data-model/index.js +0 -1469
  375. package/dist/pkgs/data-model/schema/index.cjs +0 -1550
  376. package/dist/pkgs/data-model/schema/index.d.ts +0 -8
  377. package/dist/pkgs/data-model/schema/index.d.ts.map +0 -1
  378. package/dist/pkgs/data-model/schema/index.js +0 -1446
  379. package/dist/pkgs/data-model/schema/schemas.d.ts +0 -14
  380. package/dist/pkgs/data-model/schema/schemas.d.ts.map +0 -1
  381. package/dist/pkgs/data-model/schema/types.d.ts +0 -86
  382. package/dist/pkgs/data-model/schema/types.d.ts.map +0 -1
  383. package/dist/pkgs/db-adapters/adapter-factory.d.ts +0 -21
  384. package/dist/pkgs/db-adapters/adapter-factory.d.ts.map +0 -1
  385. package/dist/pkgs/db-adapters/adapters/drizzle-adapter/drizzle-adapter.d.ts +0 -122
  386. package/dist/pkgs/db-adapters/adapters/drizzle-adapter/drizzle-adapter.d.ts.map +0 -1
  387. package/dist/pkgs/db-adapters/adapters/drizzle-adapter/index.cjs +0 -1183
  388. package/dist/pkgs/db-adapters/adapters/drizzle-adapter/index.d.ts +0 -2
  389. package/dist/pkgs/db-adapters/adapters/drizzle-adapter/index.d.ts.map +0 -1
  390. package/dist/pkgs/db-adapters/adapters/drizzle-adapter/index.js +0 -1139
  391. package/dist/pkgs/db-adapters/adapters/index.d.ts +0 -10
  392. package/dist/pkgs/db-adapters/adapters/index.d.ts.map +0 -1
  393. package/dist/pkgs/db-adapters/adapters/kysely-adapter/dialect.d.ts +0 -70
  394. package/dist/pkgs/db-adapters/adapters/kysely-adapter/dialect.d.ts.map +0 -1
  395. package/dist/pkgs/db-adapters/adapters/kysely-adapter/index.cjs +0 -1296
  396. package/dist/pkgs/db-adapters/adapters/kysely-adapter/index.d.ts +0 -4
  397. package/dist/pkgs/db-adapters/adapters/kysely-adapter/index.d.ts.map +0 -1
  398. package/dist/pkgs/db-adapters/adapters/kysely-adapter/index.js +0 -1132
  399. package/dist/pkgs/db-adapters/adapters/kysely-adapter/kysely-adapter.d.ts +0 -99
  400. package/dist/pkgs/db-adapters/adapters/kysely-adapter/kysely-adapter.d.ts.map +0 -1
  401. package/dist/pkgs/db-adapters/adapters/kysely-adapter/tests/postgres.test.d.ts +0 -2
  402. package/dist/pkgs/db-adapters/adapters/kysely-adapter/tests/postgres.test.d.ts.map +0 -1
  403. package/dist/pkgs/db-adapters/adapters/kysely-adapter/tests/sqlite.test.d.ts +0 -2
  404. package/dist/pkgs/db-adapters/adapters/kysely-adapter/tests/sqlite.test.d.ts.map +0 -1
  405. package/dist/pkgs/db-adapters/adapters/kysely-adapter/tests/test-utils.d.ts +0 -49
  406. package/dist/pkgs/db-adapters/adapters/kysely-adapter/tests/test-utils.d.ts.map +0 -1
  407. package/dist/pkgs/db-adapters/adapters/kysely-adapter/types.d.ts +0 -278
  408. package/dist/pkgs/db-adapters/adapters/kysely-adapter/types.d.ts.map +0 -1
  409. package/dist/pkgs/db-adapters/adapters/memory-adapter/index.cjs +0 -1076
  410. package/dist/pkgs/db-adapters/adapters/memory-adapter/index.d.ts +0 -2
  411. package/dist/pkgs/db-adapters/adapters/memory-adapter/index.d.ts.map +0 -1
  412. package/dist/pkgs/db-adapters/adapters/memory-adapter/index.js +0 -916
  413. package/dist/pkgs/db-adapters/adapters/memory-adapter/memory-adapter.d.ts +0 -58
  414. package/dist/pkgs/db-adapters/adapters/memory-adapter/memory-adapter.d.ts.map +0 -1
  415. package/dist/pkgs/db-adapters/adapters/prisma-adapter/index.cjs +0 -1155
  416. package/dist/pkgs/db-adapters/adapters/prisma-adapter/index.d.ts +0 -2
  417. package/dist/pkgs/db-adapters/adapters/prisma-adapter/index.d.ts.map +0 -1
  418. package/dist/pkgs/db-adapters/adapters/prisma-adapter/index.js +0 -1111
  419. package/dist/pkgs/db-adapters/adapters/prisma-adapter/prisma-adapter.d.ts +0 -145
  420. package/dist/pkgs/db-adapters/adapters/prisma-adapter/prisma-adapter.d.ts.map +0 -1
  421. package/dist/pkgs/db-adapters/adapters/test.d.ts +0 -11
  422. package/dist/pkgs/db-adapters/adapters/test.d.ts.map +0 -1
  423. package/dist/pkgs/db-adapters/index.cjs +0 -2035
  424. package/dist/pkgs/db-adapters/index.d.ts +0 -16
  425. package/dist/pkgs/db-adapters/index.d.ts.map +0 -1
  426. package/dist/pkgs/db-adapters/index.js +0 -1972
  427. package/dist/pkgs/db-adapters/types.d.ts +0 -160
  428. package/dist/pkgs/db-adapters/types.d.ts.map +0 -1
  429. package/dist/pkgs/db-adapters/utils.d.ts +0 -36
  430. package/dist/pkgs/db-adapters/utils.d.ts.map +0 -1
  431. package/dist/pkgs/migrations/get-migration.d.ts +0 -4
  432. package/dist/pkgs/migrations/get-migration.d.ts.map +0 -1
  433. package/dist/pkgs/migrations/get-schema/get-schema.d.ts +0 -27
  434. package/dist/pkgs/migrations/get-schema/get-schema.d.ts.map +0 -1
  435. package/dist/pkgs/migrations/get-schema/index.d.ts +0 -21
  436. package/dist/pkgs/migrations/get-schema/index.d.ts.map +0 -1
  437. package/dist/pkgs/migrations/get-schema/process-fields.d.ts +0 -15
  438. package/dist/pkgs/migrations/get-schema/process-fields.d.ts.map +0 -1
  439. package/dist/pkgs/migrations/get-schema/process-tables.d.ts +0 -13
  440. package/dist/pkgs/migrations/get-schema/process-tables.d.ts.map +0 -1
  441. package/dist/pkgs/migrations/get-schema/types.d.ts +0 -17
  442. package/dist/pkgs/migrations/get-schema/types.d.ts.map +0 -1
  443. package/dist/pkgs/migrations/index.cjs +0 -1352
  444. package/dist/pkgs/migrations/index.d.ts +0 -18
  445. package/dist/pkgs/migrations/index.d.ts.map +0 -1
  446. package/dist/pkgs/migrations/index.js +0 -1171
  447. package/dist/pkgs/migrations/migration-builders.d.ts +0 -28
  448. package/dist/pkgs/migrations/migration-builders.d.ts.map +0 -1
  449. package/dist/pkgs/migrations/migration-execution.d.ts +0 -12
  450. package/dist/pkgs/migrations/migration-execution.d.ts.map +0 -1
  451. package/dist/pkgs/migrations/schema-comparison.d.ts +0 -35
  452. package/dist/pkgs/migrations/schema-comparison.d.ts.map +0 -1
  453. package/dist/pkgs/migrations/type-mapping.d.ts +0 -75
  454. package/dist/pkgs/migrations/type-mapping.d.ts.map +0 -1
  455. package/dist/pkgs/migrations/types.d.ts +0 -36
  456. package/dist/pkgs/migrations/types.d.ts.map +0 -1
  457. package/dist/pkgs/results/__tests__/error-class.test.d.ts +0 -2
  458. package/dist/pkgs/results/__tests__/error-class.test.d.ts.map +0 -1
  459. package/dist/pkgs/results/__tests__/error-codes.test.d.ts +0 -2
  460. package/dist/pkgs/results/__tests__/error-codes.test.d.ts.map +0 -1
  461. package/dist/pkgs/results/__tests__/neverthrow-integration.test.d.ts +0 -2
  462. package/dist/pkgs/results/__tests__/neverthrow-integration.test.d.ts.map +0 -1
  463. package/dist/pkgs/results/__tests__/recovery-utils.test.d.ts +0 -2
  464. package/dist/pkgs/results/__tests__/recovery-utils.test.d.ts.map +0 -1
  465. package/dist/pkgs/results/__tests__/result-helpers.test.d.ts +0 -2
  466. package/dist/pkgs/results/__tests__/result-helpers.test.d.ts.map +0 -1
  467. package/dist/pkgs/results/core/error-class.d.ts +0 -128
  468. package/dist/pkgs/results/core/error-class.d.ts.map +0 -1
  469. package/dist/pkgs/results/core/error-codes.d.ts +0 -178
  470. package/dist/pkgs/results/core/error-codes.d.ts.map +0 -1
  471. package/dist/pkgs/results/core/tracing.d.ts +0 -11
  472. package/dist/pkgs/results/core/tracing.d.ts.map +0 -1
  473. package/dist/pkgs/results/create-telemetry-options.d.ts +0 -31
  474. package/dist/pkgs/results/create-telemetry-options.d.ts.map +0 -1
  475. package/dist/pkgs/results/index.cjs +0 -462
  476. package/dist/pkgs/results/index.d.ts +0 -80
  477. package/dist/pkgs/results/index.d.ts.map +0 -1
  478. package/dist/pkgs/results/index.js +0 -377
  479. package/dist/pkgs/results/orpc-error-handler.d.ts +0 -65
  480. package/dist/pkgs/results/orpc-error-handler.d.ts.map +0 -1
  481. package/dist/pkgs/results/results/recovery-utils.d.ts +0 -115
  482. package/dist/pkgs/results/results/recovery-utils.d.ts.map +0 -1
  483. package/dist/pkgs/results/results/result-helpers.d.ts +0 -214
  484. package/dist/pkgs/results/results/result-helpers.d.ts.map +0 -1
  485. package/dist/pkgs/results/types.d.ts +0 -200
  486. package/dist/pkgs/results/types.d.ts.map +0 -1
  487. package/dist/pkgs/types/context.d.ts +0 -160
  488. package/dist/pkgs/types/context.d.ts.map +0 -1
  489. package/dist/pkgs/types/endpoints.d.ts +0 -30
  490. package/dist/pkgs/types/endpoints.d.ts.map +0 -1
  491. package/dist/pkgs/types/helper.d.ts +0 -55
  492. package/dist/pkgs/types/helper.d.ts.map +0 -1
  493. package/dist/pkgs/types/index.cjs +0 -18
  494. package/dist/pkgs/types/index.d.ts +0 -11
  495. package/dist/pkgs/types/index.d.ts.map +0 -1
  496. package/dist/pkgs/types/options.d.ts +0 -228
  497. package/dist/pkgs/types/options.d.ts.map +0 -1
  498. package/dist/pkgs/types/plugins.d.ts +0 -171
  499. package/dist/pkgs/types/plugins.d.ts.map +0 -1
  500. package/dist/pkgs/utils/env.d.ts.map +0 -1
  501. package/dist/pkgs/utils/index.d.ts +0 -4
  502. package/dist/pkgs/utils/index.d.ts.map +0 -1
  503. package/dist/pkgs/utils/logger.d.ts.map +0 -1
  504. package/dist/pkgs/utils/url.d.ts +0 -28
  505. package/dist/pkgs/utils/url.d.ts.map +0 -1
  506. package/dist/schema/audit-log/index.d.ts +0 -4
  507. package/dist/schema/audit-log/index.d.ts.map +0 -1
  508. package/dist/schema/audit-log/registry.d.ts +0 -96
  509. package/dist/schema/audit-log/registry.d.ts.map +0 -1
  510. package/dist/schema/audit-log/schema.d.ts +0 -45
  511. package/dist/schema/audit-log/schema.d.ts.map +0 -1
  512. package/dist/schema/audit-log/table.d.ts +0 -153
  513. package/dist/schema/audit-log/table.d.ts.map +0 -1
  514. package/dist/schema/audit-log/types.d.ts +0 -29
  515. package/dist/schema/audit-log/types.d.ts.map +0 -1
  516. package/dist/schema/consent/index.d.ts +0 -4
  517. package/dist/schema/consent/index.d.ts.map +0 -1
  518. package/dist/schema/consent/registry.d.ts +0 -150
  519. package/dist/schema/consent/registry.d.ts.map +0 -1
  520. package/dist/schema/consent/schema.d.ts +0 -53
  521. package/dist/schema/consent/schema.d.ts.map +0 -1
  522. package/dist/schema/consent/table.d.ts +0 -183
  523. package/dist/schema/consent/table.d.ts.map +0 -1
  524. package/dist/schema/consent/types.d.ts +0 -37
  525. package/dist/schema/consent/types.d.ts.map +0 -1
  526. package/dist/schema/consent-policy/index.d.ts +0 -4
  527. package/dist/schema/consent-policy/index.d.ts.map +0 -1
  528. package/dist/schema/consent-policy/registry.d.ts +0 -200
  529. package/dist/schema/consent-policy/registry.d.ts.map +0 -1
  530. package/dist/schema/consent-policy/schema.d.ts +0 -65
  531. package/dist/schema/consent-policy/schema.d.ts.map +0 -1
  532. package/dist/schema/consent-policy/table.d.ts +0 -142
  533. package/dist/schema/consent-policy/table.d.ts.map +0 -1
  534. package/dist/schema/consent-policy/types.d.ts +0 -29
  535. package/dist/schema/consent-policy/types.d.ts.map +0 -1
  536. package/dist/schema/consent-purpose/index.d.ts +0 -4
  537. package/dist/schema/consent-purpose/index.d.ts.map +0 -1
  538. package/dist/schema/consent-purpose/registry.d.ts +0 -138
  539. package/dist/schema/consent-purpose/registry.d.ts.map +0 -1
  540. package/dist/schema/consent-purpose/schema.d.ts +0 -57
  541. package/dist/schema/consent-purpose/schema.d.ts.map +0 -1
  542. package/dist/schema/consent-purpose/table.d.ts +0 -139
  543. package/dist/schema/consent-purpose/table.d.ts.map +0 -1
  544. package/dist/schema/consent-purpose/types.d.ts +0 -16
  545. package/dist/schema/consent-purpose/types.d.ts.map +0 -1
  546. package/dist/schema/consent-record/index.d.ts +0 -3
  547. package/dist/schema/consent-record/index.d.ts.map +0 -1
  548. package/dist/schema/consent-record/schema.d.ts +0 -41
  549. package/dist/schema/consent-record/schema.d.ts.map +0 -1
  550. package/dist/schema/consent-record/table.d.ts +0 -107
  551. package/dist/schema/consent-record/table.d.ts.map +0 -1
  552. package/dist/schema/consent-record/types.d.ts +0 -21
  553. package/dist/schema/consent-record/types.d.ts.map +0 -1
  554. package/dist/schema/create-registry.d.ts +0 -218
  555. package/dist/schema/create-registry.d.ts.map +0 -1
  556. package/dist/schema/definition.d.ts +0 -586
  557. package/dist/schema/definition.d.ts.map +0 -1
  558. package/dist/schema/domain/index.d.ts +0 -4
  559. package/dist/schema/domain/index.d.ts.map +0 -1
  560. package/dist/schema/domain/registry.d.ts +0 -222
  561. package/dist/schema/domain/registry.d.ts.map +0 -1
  562. package/dist/schema/domain/schema.d.ts +0 -42
  563. package/dist/schema/domain/schema.d.ts.map +0 -1
  564. package/dist/schema/domain/table.d.ts +0 -122
  565. package/dist/schema/domain/table.d.ts.map +0 -1
  566. package/dist/schema/domain/types.d.ts +0 -27
  567. package/dist/schema/domain/types.d.ts.map +0 -1
  568. package/dist/schema/index.cjs +0 -1565
  569. package/dist/schema/index.d.ts +0 -70
  570. package/dist/schema/index.d.ts.map +0 -1
  571. package/dist/schema/index.js +0 -1455
  572. package/dist/schema/schemas.d.ts +0 -98
  573. package/dist/schema/schemas.d.ts.map +0 -1
  574. package/dist/schema/subject/index.d.ts +0 -4
  575. package/dist/schema/subject/index.d.ts.map +0 -1
  576. package/dist/schema/subject/registry.d.ts +0 -110
  577. package/dist/schema/subject/registry.d.ts.map +0 -1
  578. package/dist/schema/subject/schema.d.ts +0 -40
  579. package/dist/schema/subject/schema.d.ts.map +0 -1
  580. package/dist/schema/subject/table.d.ts +0 -120
  581. package/dist/schema/subject/table.d.ts.map +0 -1
  582. package/dist/schema/subject/types.d.ts +0 -22
  583. package/dist/schema/subject/types.d.ts.map +0 -1
  584. package/dist/schema/types.d.ts +0 -108
  585. package/dist/schema/types.d.ts.map +0 -1
  586. package/dist/server.d.ts +0 -2
  587. package/dist/server.d.ts.map +0 -1
  588. package/dist/testing/contract-testing.d.ts +0 -38
  589. package/dist/testing/contract-testing.d.ts.map +0 -1
  590. package/dist/types/context.d.ts +0 -12
  591. package/dist/types/context.d.ts.map +0 -1
  592. package/dist/types/options.d.ts +0 -91
  593. package/dist/types/options.d.ts.map +0 -1
  594. package/dist/types/plugins.d.ts +0 -126
  595. package/dist/types/plugins.d.ts.map +0 -1
  596. package/dist/v2/contracts/consent/identify.contract.d.ts +0 -24
  597. package/dist/v2/contracts/consent/identify.contract.d.ts.map +0 -1
  598. package/dist/v2/contracts/consent/index.d.ts +0 -340
  599. package/dist/v2/contracts/consent/index.d.ts.map +0 -1
  600. package/dist/v2/contracts/consent/index.test.d.ts +0 -2
  601. package/dist/v2/contracts/consent/index.test.d.ts.map +0 -1
  602. package/dist/v2/contracts/consent/post.contract.d.ts +0 -117
  603. package/dist/v2/contracts/consent/post.contract.d.ts.map +0 -1
  604. package/dist/v2/contracts/consent/post.contract.test.d.ts +0 -2
  605. package/dist/v2/contracts/consent/post.contract.test.d.ts.map +0 -1
  606. package/dist/v2/contracts/consent/show-banner.contract.d.ts +0 -123
  607. package/dist/v2/contracts/consent/show-banner.contract.d.ts.map +0 -1
  608. package/dist/v2/contracts/consent/show-banner.contract.test.d.ts +0 -2
  609. package/dist/v2/contracts/consent/show-banner.contract.test.d.ts.map +0 -1
  610. package/dist/v2/contracts/consent/verify.contract.d.ts +0 -81
  611. package/dist/v2/contracts/consent/verify.contract.d.ts.map +0 -1
  612. package/dist/v2/contracts/consent/verify.contract.test.d.ts +0 -2
  613. package/dist/v2/contracts/consent/verify.contract.test.d.ts.map +0 -1
  614. package/dist/v2/contracts/index.cjs +0 -716
  615. package/dist/v2/contracts/index.d.ts +0 -723
  616. package/dist/v2/contracts/index.d.ts.map +0 -1
  617. package/dist/v2/contracts/index.js +0 -679
  618. package/dist/v2/contracts/meta/index.d.ts +0 -19
  619. package/dist/v2/contracts/meta/index.d.ts.map +0 -1
  620. package/dist/v2/contracts/meta/index.test.d.ts +0 -2
  621. package/dist/v2/contracts/meta/index.test.d.ts.map +0 -1
  622. package/dist/v2/contracts/meta/status.contract.d.ts +0 -18
  623. package/dist/v2/contracts/meta/status.contract.d.ts.map +0 -1
  624. package/dist/v2/contracts/meta/status.contract.test.d.ts +0 -2
  625. package/dist/v2/contracts/meta/status.contract.test.d.ts.map +0 -1
  626. package/dist/v2/contracts/shared/jurisdiction.schema.d.ts +0 -36
  627. package/dist/v2/contracts/shared/jurisdiction.schema.d.ts.map +0 -1
  628. package/dist/v2/contracts/test.utils.d.ts +0 -38
  629. package/dist/v2/contracts/test.utils.d.ts.map +0 -1
  630. package/dist/v2/core.cjs +0 -2350
  631. package/dist/v2/core.d.ts +0 -444
  632. package/dist/v2/core.d.ts.map +0 -1
  633. package/dist/v2/core.js +0 -2300
  634. package/dist/v2/db/adapters/drizzle.cjs +0 -36
  635. package/dist/v2/db/adapters/drizzle.d.ts.map +0 -1
  636. package/dist/v2/db/adapters/index.cjs +0 -18
  637. package/dist/v2/db/adapters/index.d.ts.map +0 -1
  638. package/dist/v2/db/adapters/index.js +0 -0
  639. package/dist/v2/db/adapters/kysely.cjs +0 -36
  640. package/dist/v2/db/adapters/kysely.d.ts.map +0 -1
  641. package/dist/v2/db/adapters/mongo.cjs +0 -36
  642. package/dist/v2/db/adapters/mongo.d.ts.map +0 -1
  643. package/dist/v2/db/adapters/prisma.cjs +0 -36
  644. package/dist/v2/db/adapters/prisma.d.ts.map +0 -1
  645. package/dist/v2/db/adapters/typeorm.cjs +0 -36
  646. package/dist/v2/db/adapters/typeorm.d.ts.map +0 -1
  647. package/dist/v2/db/migrator/index.cjs +0 -61
  648. package/dist/v2/db/migrator/index.d.ts.map +0 -1
  649. package/dist/v2/db/registry/audit-log.d.ts +0 -21
  650. package/dist/v2/db/registry/audit-log.d.ts.map +0 -1
  651. package/dist/v2/db/registry/audit-log.test.d.ts +0 -2
  652. package/dist/v2/db/registry/audit-log.test.d.ts.map +0 -1
  653. package/dist/v2/db/registry/consent-policy.d.ts +0 -29
  654. package/dist/v2/db/registry/consent-policy.d.ts.map +0 -1
  655. package/dist/v2/db/registry/consent-policy.test.d.ts +0 -2
  656. package/dist/v2/db/registry/consent-policy.test.d.ts.map +0 -1
  657. package/dist/v2/db/registry/consent-purpose.d.ts +0 -16
  658. package/dist/v2/db/registry/consent-purpose.d.ts.map +0 -1
  659. package/dist/v2/db/registry/consent-purpose.test.d.ts +0 -2
  660. package/dist/v2/db/registry/consent-purpose.test.d.ts.map +0 -1
  661. package/dist/v2/db/registry/consent.d.ts +0 -20
  662. package/dist/v2/db/registry/consent.d.ts.map +0 -1
  663. package/dist/v2/db/registry/consent.test.d.ts +0 -2
  664. package/dist/v2/db/registry/consent.test.d.ts.map +0 -1
  665. package/dist/v2/db/registry/domain.d.ts +0 -24
  666. package/dist/v2/db/registry/domain.d.ts.map +0 -1
  667. package/dist/v2/db/registry/domain.test.d.ts +0 -2
  668. package/dist/v2/db/registry/domain.test.d.ts.map +0 -1
  669. package/dist/v2/db/registry/index.d.ts +0 -103
  670. package/dist/v2/db/registry/index.d.ts.map +0 -1
  671. package/dist/v2/db/registry/subject.d.ts +0 -19
  672. package/dist/v2/db/registry/subject.d.ts.map +0 -1
  673. package/dist/v2/db/registry/subject.test.d.ts +0 -2
  674. package/dist/v2/db/registry/subject.test.d.ts.map +0 -1
  675. package/dist/v2/db/registry/types.d.ts +0 -10
  676. package/dist/v2/db/registry/types.d.ts.map +0 -1
  677. package/dist/v2/db/registry/utils/generate-id.d.ts +0 -25
  678. package/dist/v2/db/registry/utils/generate-id.d.ts.map +0 -1
  679. package/dist/v2/db/registry/utils/generate-id.test.d.ts +0 -2
  680. package/dist/v2/db/registry/utils/generate-id.test.d.ts.map +0 -1
  681. package/dist/v2/db/registry/utils.d.ts +0 -25
  682. package/dist/v2/db/registry/utils.d.ts.map +0 -1
  683. package/dist/v2/db/schema/1.0.0/audit-log.d.ts +0 -29
  684. package/dist/v2/db/schema/1.0.0/audit-log.d.ts.map +0 -1
  685. package/dist/v2/db/schema/1.0.0/consent-policy.d.ts +0 -45
  686. package/dist/v2/db/schema/1.0.0/consent-policy.d.ts.map +0 -1
  687. package/dist/v2/db/schema/1.0.0/consent-purpose.d.ts +0 -27
  688. package/dist/v2/db/schema/1.0.0/consent-purpose.d.ts.map +0 -1
  689. package/dist/v2/db/schema/1.0.0/consent-record.d.ts +0 -19
  690. package/dist/v2/db/schema/1.0.0/consent-record.d.ts.map +0 -1
  691. package/dist/v2/db/schema/1.0.0/consent.d.ts +0 -42
  692. package/dist/v2/db/schema/1.0.0/consent.d.ts.map +0 -1
  693. package/dist/v2/db/schema/1.0.0/domain.d.ts +0 -23
  694. package/dist/v2/db/schema/1.0.0/domain.d.ts.map +0 -1
  695. package/dist/v2/db/schema/1.0.0/index.d.ts +0 -1513
  696. package/dist/v2/db/schema/1.0.0/index.d.ts.map +0 -1
  697. package/dist/v2/db/schema/1.0.0/subject.d.ts +0 -23
  698. package/dist/v2/db/schema/1.0.0/subject.d.ts.map +0 -1
  699. package/dist/v2/db/schema/index.cjs +0 -326
  700. package/dist/v2/db/schema/index.d.ts +0 -1507
  701. package/dist/v2/db/schema/index.d.ts.map +0 -1
  702. package/dist/v2/db/schema/index.js +0 -241
  703. package/dist/v2/define-config.cjs +0 -36
  704. package/dist/v2/define-config.d.ts.map +0 -1
  705. package/dist/v2/handlers/consent/identify.handler.d.ts +0 -23
  706. package/dist/v2/handlers/consent/identify.handler.d.ts.map +0 -1
  707. package/dist/v2/handlers/consent/identify.handler.test.d.ts +0 -2
  708. package/dist/v2/handlers/consent/identify.handler.test.d.ts.map +0 -1
  709. package/dist/v2/handlers/consent/index.d.ts +0 -340
  710. package/dist/v2/handlers/consent/index.d.ts.map +0 -1
  711. package/dist/v2/handlers/consent/post.handler.d.ts +0 -139
  712. package/dist/v2/handlers/consent/post.handler.d.ts.map +0 -1
  713. package/dist/v2/handlers/consent/show-banner/geo.d.ts +0 -10
  714. package/dist/v2/handlers/consent/show-banner/geo.d.ts.map +0 -1
  715. package/dist/v2/handlers/consent/show-banner/geo.test.d.ts +0 -2
  716. package/dist/v2/handlers/consent/show-banner/geo.test.d.ts.map +0 -1
  717. package/dist/v2/handlers/consent/show-banner/handler.d.ts +0 -126
  718. package/dist/v2/handlers/consent/show-banner/handler.d.ts.map +0 -1
  719. package/dist/v2/handlers/consent/show-banner/handler.test.d.ts +0 -2
  720. package/dist/v2/handlers/consent/show-banner/handler.test.d.ts.map +0 -1
  721. package/dist/v2/handlers/consent/show-banner/translations.d.ts +0 -13
  722. package/dist/v2/handlers/consent/show-banner/translations.d.ts.map +0 -1
  723. package/dist/v2/handlers/consent/show-banner/translations.test.d.ts +0 -2
  724. package/dist/v2/handlers/consent/show-banner/translations.test.d.ts.map +0 -1
  725. package/dist/v2/handlers/consent/verify.handler.d.ts +0 -103
  726. package/dist/v2/handlers/consent/verify.handler.d.ts.map +0 -1
  727. package/dist/v2/handlers/meta/index.d.ts +0 -19
  728. package/dist/v2/handlers/meta/index.d.ts.map +0 -1
  729. package/dist/v2/handlers/meta/status.handler.d.ts +0 -17
  730. package/dist/v2/handlers/meta/status.handler.d.ts.map +0 -1
  731. package/dist/v2/init.d.ts +0 -3
  732. package/dist/v2/init.d.ts.map +0 -1
  733. package/dist/v2/init.test.d.ts +0 -2
  734. package/dist/v2/init.test.d.ts.map +0 -1
  735. package/dist/v2/middleware/cors/cors.d.ts +0 -37
  736. package/dist/v2/middleware/cors/cors.d.ts.map +0 -1
  737. package/dist/v2/middleware/cors/cors.test.d.ts +0 -2
  738. package/dist/v2/middleware/cors/cors.test.d.ts.map +0 -1
  739. package/dist/v2/middleware/cors/index.d.ts +0 -30
  740. package/dist/v2/middleware/cors/index.d.ts.map +0 -1
  741. package/dist/v2/middleware/cors/is-origin-trusted.d.ts +0 -49
  742. package/dist/v2/middleware/cors/is-origin-trusted.d.ts.map +0 -1
  743. package/dist/v2/middleware/cors/is-origin-trusted.test.d.ts +0 -2
  744. package/dist/v2/middleware/cors/is-origin-trusted.test.d.ts.map +0 -1
  745. package/dist/v2/middleware/cors/process-cors.d.ts +0 -31
  746. package/dist/v2/middleware/cors/process-cors.d.ts.map +0 -1
  747. package/dist/v2/middleware/openapi/config.d.ts +0 -28
  748. package/dist/v2/middleware/openapi/config.d.ts.map +0 -1
  749. package/dist/v2/middleware/openapi/handlers.d.ts +0 -29
  750. package/dist/v2/middleware/openapi/handlers.d.ts.map +0 -1
  751. package/dist/v2/middleware/openapi/index.d.ts +0 -11
  752. package/dist/v2/middleware/openapi/index.d.ts.map +0 -1
  753. package/dist/v2/middleware/process-ip/index.d.ts +0 -3
  754. package/dist/v2/middleware/process-ip/index.d.ts.map +0 -1
  755. package/dist/v2/router.cjs +0 -1442
  756. package/dist/v2/router.d.ts +0 -360
  757. package/dist/v2/router.d.ts.map +0 -1
  758. package/dist/v2/router.js +0 -1398
  759. package/dist/v2/types/api.d.ts +0 -27
  760. package/dist/v2/types/api.d.ts.map +0 -1
  761. package/dist/v2/types/index.cjs +0 -40
  762. package/dist/v2/types/index.d.ts +0 -104
  763. package/dist/v2/types/index.d.ts.map +0 -1
  764. package/dist/v2/types/index.js +0 -6
  765. package/dist/v2/utils/create-telemetry-options.d.ts +0 -28
  766. package/dist/v2/utils/create-telemetry-options.d.ts.map +0 -1
  767. package/dist/v2/utils/env.d.ts +0 -60
  768. package/dist/v2/utils/env.d.ts.map +0 -1
  769. package/dist/v2/utils/index.d.ts +0 -3
  770. package/dist/v2/utils/index.d.ts.map +0 -1
  771. package/dist/v2/utils/logger.d.ts +0 -16
  772. package/dist/v2/utils/logger.d.ts.map +0 -1
  773. package/src/__tests__/server.test.ts +0 -100
  774. package/src/contracts/consent/identify.contract.ts +0 -38
  775. package/src/contracts/consent/index.test.ts +0 -5
  776. package/src/contracts/consent/index.ts +0 -11
  777. package/src/contracts/consent/post.contract.test.ts +0 -521
  778. package/src/contracts/consent/post.contract.ts +0 -156
  779. package/src/contracts/consent/show-banner.contract.test.ts +0 -260
  780. package/src/contracts/consent/show-banner.contract.ts +0 -136
  781. package/src/contracts/consent/verify.contract.test.ts +0 -185
  782. package/src/contracts/consent/verify.contract.ts +0 -122
  783. package/src/contracts/index.ts +0 -20
  784. package/src/contracts/meta/index.test.ts +0 -5
  785. package/src/contracts/meta/index.ts +0 -5
  786. package/src/contracts/meta/status.contract.test.ts +0 -338
  787. package/src/contracts/meta/status.contract.ts +0 -37
  788. package/src/contracts/shared/jurisdiction.schema.ts +0 -30
  789. package/src/handlers/consent/identify.handler.test.ts +0 -473
  790. package/src/handlers/consent/identify.handler.ts +0 -176
  791. package/src/handlers/consent/post.handler.ts +0 -277
  792. package/src/handlers/consent/show-banner/geo.test.ts +0 -281
  793. package/src/handlers/consent/show-banner/geo.ts +0 -96
  794. package/src/handlers/consent/show-banner/handler.test.ts +0 -376
  795. package/src/handlers/consent/show-banner/handler.ts +0 -123
  796. package/src/handlers/consent/show-banner/translations.test.ts +0 -121
  797. package/src/handlers/consent/show-banner/translations.ts +0 -79
  798. package/src/handlers/consent/verify.handler.ts +0 -305
  799. package/src/handlers/meta/index.ts +0 -5
  800. package/src/handlers/meta/status.handler.ts +0 -47
  801. package/src/pkgs/api-router/hooks/__tests__/processor.test.ts +0 -290
  802. package/src/pkgs/api-router/hooks/processor.ts +0 -153
  803. package/src/pkgs/api-router/telemetry.ts +0 -83
  804. package/src/pkgs/api-router/types/router-props.ts +0 -36
  805. package/src/pkgs/api-router/utils/ip.ts +0 -92
  806. package/src/pkgs/data-model/fields/field-factory.ts +0 -208
  807. package/src/pkgs/data-model/fields/field-inference.ts +0 -93
  808. package/src/pkgs/data-model/fields/field-types.ts +0 -233
  809. package/src/pkgs/data-model/fields/id-generator.ts +0 -57
  810. package/src/pkgs/data-model/fields/index.ts +0 -37
  811. package/src/pkgs/data-model/fields/superjson-utils.ts +0 -17
  812. package/src/pkgs/data-model/fields/zod-fields.ts +0 -125
  813. package/src/pkgs/data-model/hooks/create-hooks.ts +0 -88
  814. package/src/pkgs/data-model/hooks/index.ts +0 -40
  815. package/src/pkgs/data-model/hooks/types.ts +0 -165
  816. package/src/pkgs/data-model/hooks/update-hooks.ts +0 -91
  817. package/src/pkgs/data-model/hooks/update-many-hooks.ts +0 -176
  818. package/src/pkgs/data-model/hooks/utils.ts +0 -151
  819. package/src/pkgs/data-model/hooks/with-hooks-factory.ts +0 -68
  820. package/src/pkgs/data-model/index.ts +0 -13
  821. package/src/pkgs/data-model/schema/index.ts +0 -19
  822. package/src/pkgs/data-model/schema/schemas.ts +0 -15
  823. package/src/pkgs/data-model/schema/types.ts +0 -105
  824. package/src/pkgs/db-adapters/README.md +0 -95
  825. package/src/pkgs/db-adapters/adapter-factory.ts +0 -68
  826. package/src/pkgs/db-adapters/adapters/drizzle-adapter/drizzle-adapter.ts +0 -709
  827. package/src/pkgs/db-adapters/adapters/drizzle-adapter/index.ts +0 -1
  828. package/src/pkgs/db-adapters/adapters/index.ts +0 -10
  829. package/src/pkgs/db-adapters/adapters/kysely-adapter/dialect.ts +0 -195
  830. package/src/pkgs/db-adapters/adapters/kysely-adapter/index.ts +0 -10
  831. package/src/pkgs/db-adapters/adapters/kysely-adapter/kysely-adapter.ts +0 -1182
  832. package/src/pkgs/db-adapters/adapters/kysely-adapter/tests/postgres.test.ts +0 -214
  833. package/src/pkgs/db-adapters/adapters/kysely-adapter/tests/sqlite.test.ts +0 -227
  834. package/src/pkgs/db-adapters/adapters/kysely-adapter/tests/test-utils.ts +0 -439
  835. package/src/pkgs/db-adapters/adapters/kysely-adapter/types.ts +0 -304
  836. package/src/pkgs/db-adapters/adapters/memory-adapter/index.ts +0 -1
  837. package/src/pkgs/db-adapters/adapters/memory-adapter/memory-adapter.ts +0 -665
  838. package/src/pkgs/db-adapters/adapters/prisma-adapter/index.ts +0 -1
  839. package/src/pkgs/db-adapters/adapters/prisma-adapter/prisma-adapter.ts +0 -586
  840. package/src/pkgs/db-adapters/adapters/test.ts +0 -77
  841. package/src/pkgs/db-adapters/index.ts +0 -28
  842. package/src/pkgs/db-adapters/types.ts +0 -211
  843. package/src/pkgs/db-adapters/utils.ts +0 -51
  844. package/src/pkgs/migrations/README.md +0 -73
  845. package/src/pkgs/migrations/get-migration.ts +0 -88
  846. package/src/pkgs/migrations/get-schema/get-schema.ts +0 -43
  847. package/src/pkgs/migrations/get-schema/index.ts +0 -20
  848. package/src/pkgs/migrations/get-schema/process-fields.ts +0 -65
  849. package/src/pkgs/migrations/get-schema/process-tables.ts +0 -66
  850. package/src/pkgs/migrations/get-schema/types.ts +0 -18
  851. package/src/pkgs/migrations/index.ts +0 -30
  852. package/src/pkgs/migrations/migration-builders.ts +0 -170
  853. package/src/pkgs/migrations/migration-execution.ts +0 -72
  854. package/src/pkgs/migrations/schema-comparison.ts +0 -203
  855. package/src/pkgs/migrations/type-mapping.ts +0 -244
  856. package/src/pkgs/migrations/types.ts +0 -48
  857. package/src/pkgs/results/README.md +0 -345
  858. package/src/pkgs/results/__tests__/error-class.test.ts +0 -183
  859. package/src/pkgs/results/__tests__/error-codes.test.ts +0 -81
  860. package/src/pkgs/results/__tests__/neverthrow-integration.test.ts +0 -92
  861. package/src/pkgs/results/__tests__/recovery-utils.test.ts +0 -140
  862. package/src/pkgs/results/__tests__/result-helpers.test.ts +0 -206
  863. package/src/pkgs/results/core/error-class.ts +0 -297
  864. package/src/pkgs/results/core/error-codes.ts +0 -206
  865. package/src/pkgs/results/core/tracing.ts +0 -65
  866. package/src/pkgs/results/create-telemetry-options.ts +0 -62
  867. package/src/pkgs/results/index.ts +0 -115
  868. package/src/pkgs/results/orpc-error-handler.ts +0 -137
  869. package/src/pkgs/results/results/recovery-utils.ts +0 -181
  870. package/src/pkgs/results/results/result-helpers.ts +0 -383
  871. package/src/pkgs/results/types.ts +0 -217
  872. package/src/pkgs/types/context.ts +0 -178
  873. package/src/pkgs/types/endpoints.ts +0 -35
  874. package/src/pkgs/types/helper.ts +0 -57
  875. package/src/pkgs/types/index.ts +0 -18
  876. package/src/pkgs/types/options.ts +0 -252
  877. package/src/pkgs/types/plugins.ts +0 -191
  878. package/src/pkgs/utils/index.ts +0 -3
  879. package/src/pkgs/utils/logger.ts +0 -35
  880. package/src/pkgs/utils/url.ts +0 -105
  881. package/src/schema/audit-log/index.ts +0 -3
  882. package/src/schema/audit-log/registry.ts +0 -117
  883. package/src/schema/audit-log/schema.ts +0 -46
  884. package/src/schema/audit-log/table.ts +0 -185
  885. package/src/schema/audit-log/types.ts +0 -29
  886. package/src/schema/consent/index.ts +0 -3
  887. package/src/schema/consent/registry.ts +0 -177
  888. package/src/schema/consent/schema.ts +0 -51
  889. package/src/schema/consent/table.ts +0 -221
  890. package/src/schema/consent/types.ts +0 -39
  891. package/src/schema/consent-policy/index.ts +0 -3
  892. package/src/schema/consent-policy/registry.ts +0 -352
  893. package/src/schema/consent-policy/schema.ts +0 -60
  894. package/src/schema/consent-policy/table.ts +0 -150
  895. package/src/schema/consent-policy/types.ts +0 -29
  896. package/src/schema/consent-purpose/index.ts +0 -3
  897. package/src/schema/consent-purpose/registry.ts +0 -168
  898. package/src/schema/consent-purpose/schema.ts +0 -58
  899. package/src/schema/consent-purpose/table.ts +0 -154
  900. package/src/schema/consent-purpose/types.ts +0 -16
  901. package/src/schema/consent-record/index.ts +0 -2
  902. package/src/schema/consent-record/schema.ts +0 -42
  903. package/src/schema/consent-record/table.ts +0 -124
  904. package/src/schema/consent-record/types.ts +0 -21
  905. package/src/schema/create-registry.ts +0 -21
  906. package/src/schema/definition.ts +0 -200
  907. package/src/schema/domain/index.ts +0 -3
  908. package/src/schema/domain/registry.ts +0 -296
  909. package/src/schema/domain/schema.ts +0 -43
  910. package/src/schema/domain/table.ts +0 -137
  911. package/src/schema/domain/types.ts +0 -27
  912. package/src/schema/index.ts +0 -74
  913. package/src/schema/schemas.ts +0 -27
  914. package/src/schema/subject/index.ts +0 -3
  915. package/src/schema/subject/registry.ts +0 -298
  916. package/src/schema/subject/schema.ts +0 -41
  917. package/src/schema/subject/table.ts +0 -138
  918. package/src/schema/subject/types.ts +0 -22
  919. package/src/schema/types.ts +0 -121
  920. package/src/server.ts +0 -126
  921. package/src/testing/contract-testing.ts +0 -400
  922. package/src/types/context.ts +0 -16
  923. package/src/types/options.ts +0 -103
  924. package/src/types/plugins.ts +0 -154
  925. package/src/v2/contracts/consent/identify.contract.ts +0 -38
  926. package/src/v2/contracts/consent/index.test.ts +0 -5
  927. package/src/v2/contracts/consent/index.ts +0 -11
  928. package/src/v2/contracts/consent/post.contract.test.ts +0 -521
  929. package/src/v2/contracts/consent/post.contract.ts +0 -156
  930. package/src/v2/contracts/consent/show-banner.contract.test.ts +0 -252
  931. package/src/v2/contracts/consent/show-banner.contract.ts +0 -136
  932. package/src/v2/contracts/consent/verify.contract.test.ts +0 -185
  933. package/src/v2/contracts/consent/verify.contract.ts +0 -122
  934. package/src/v2/contracts/index.ts +0 -20
  935. package/src/v2/contracts/meta/index.test.ts +0 -5
  936. package/src/v2/contracts/meta/index.ts +0 -5
  937. package/src/v2/contracts/meta/status.contract.test.ts +0 -226
  938. package/src/v2/contracts/meta/status.contract.ts +0 -34
  939. package/src/v2/contracts/shared/jurisdiction.schema.ts +0 -30
  940. package/src/v2/contracts/test.utils.ts +0 -400
  941. package/src/v2/core.ts +0 -379
  942. package/src/v2/db/migrator/index.ts +0 -80
  943. package/src/v2/db/registry/audit-log.test.ts +0 -77
  944. package/src/v2/db/registry/audit-log.ts +0 -46
  945. package/src/v2/db/registry/consent-policy.test.ts +0 -778
  946. package/src/v2/db/registry/consent-policy.ts +0 -74
  947. package/src/v2/db/registry/consent-purpose.test.ts +0 -485
  948. package/src/v2/db/registry/consent-purpose.ts +0 -41
  949. package/src/v2/db/registry/consent.test.ts +0 -843
  950. package/src/v2/db/registry/consent.ts +0 -42
  951. package/src/v2/db/registry/domain.test.ts +0 -463
  952. package/src/v2/db/registry/domain.ts +0 -51
  953. package/src/v2/db/registry/index.ts +0 -18
  954. package/src/v2/db/registry/subject.test.ts +0 -497
  955. package/src/v2/db/registry/subject.ts +0 -103
  956. package/src/v2/db/registry/types.ts +0 -10
  957. package/src/v2/db/registry/utils/generate-id.test.ts +0 -217
  958. package/src/v2/db/registry/utils/generate-id.ts +0 -134
  959. package/src/v2/db/registry/utils.ts +0 -134
  960. package/src/v2/db/schema/1.0.0/audit-log.ts +0 -32
  961. package/src/v2/db/schema/1.0.0/consent-policy.ts +0 -41
  962. package/src/v2/db/schema/1.0.0/consent-purpose.ts +0 -30
  963. package/src/v2/db/schema/1.0.0/consent-record.ts +0 -22
  964. package/src/v2/db/schema/1.0.0/consent.ts +0 -38
  965. package/src/v2/db/schema/1.0.0/domain.ts +0 -26
  966. package/src/v2/db/schema/1.0.0/index.ts +0 -56
  967. package/src/v2/db/schema/1.0.0/subject.ts +0 -26
  968. package/src/v2/db/schema/index.ts +0 -9
  969. package/src/v2/handlers/consent/identify.handler.test.ts +0 -453
  970. package/src/v2/handlers/consent/identify.handler.ts +0 -125
  971. package/src/v2/handlers/consent/index.ts +0 -11
  972. package/src/v2/handlers/consent/post.handler.ts +0 -258
  973. package/src/v2/handlers/consent/show-banner/geo.test.ts +0 -281
  974. package/src/v2/handlers/consent/show-banner/geo.ts +0 -96
  975. package/src/v2/handlers/consent/show-banner/handler.test.ts +0 -374
  976. package/src/v2/handlers/consent/show-banner/handler.ts +0 -123
  977. package/src/v2/handlers/consent/show-banner/translations.test.ts +0 -121
  978. package/src/v2/handlers/consent/show-banner/translations.ts +0 -79
  979. package/src/v2/handlers/consent/verify.handler.ts +0 -288
  980. package/src/v2/handlers/meta/index.ts +0 -5
  981. package/src/v2/handlers/meta/status.handler.ts +0 -43
  982. package/src/v2/init.test.ts +0 -120
  983. package/src/v2/init.ts +0 -126
  984. package/src/v2/middleware/cors/cors.test.ts +0 -114
  985. package/src/v2/middleware/cors/cors.ts +0 -195
  986. package/src/v2/middleware/cors/index.ts +0 -30
  987. package/src/v2/middleware/cors/is-origin-trusted.test.ts +0 -164
  988. package/src/v2/middleware/cors/is-origin-trusted.ts +0 -129
  989. package/src/v2/middleware/cors/process-cors.ts +0 -91
  990. package/src/v2/middleware/openapi/config.ts +0 -27
  991. package/src/v2/middleware/openapi/handlers.ts +0 -132
  992. package/src/v2/middleware/openapi/index.ts +0 -11
  993. package/src/v2/middleware/process-ip/index.ts +0 -39
  994. package/src/v2/router.ts +0 -8
  995. package/src/v2/types/api.ts +0 -32
  996. package/src/v2/types/index.ts +0 -121
  997. package/src/v2/utils/create-telemetry-options.ts +0 -115
  998. package/src/v2/utils/env.ts +0 -84
  999. package/src/v2/utils/index.ts +0 -2
  1000. package/src/v2/utils/logger.ts +0 -35
  1001. /package/dist/{v2/db → db}/adapters/drizzle.d.ts +0 -0
  1002. /package/dist/{v2/db → db}/adapters/drizzle.js +0 -0
  1003. /package/dist/{v2/db → db}/adapters/index.d.ts +0 -0
  1004. /package/dist/{v2/db → db}/adapters/kysely.d.ts +0 -0
  1005. /package/dist/{v2/db → db}/adapters/kysely.js +0 -0
  1006. /package/dist/{v2/db → db}/adapters/mongo.d.ts +0 -0
  1007. /package/dist/{v2/db → db}/adapters/mongo.js +0 -0
  1008. /package/dist/{v2/db → db}/adapters/prisma.d.ts +0 -0
  1009. /package/dist/{v2/db → db}/adapters/prisma.js +0 -0
  1010. /package/dist/{v2/db → db}/adapters/typeorm.d.ts +0 -0
  1011. /package/dist/{v2/db → db}/adapters/typeorm.js +0 -0
  1012. /package/dist/{pkgs/types/index.js → db/adapters.js} +0 -0
  1013. /package/dist/{v2/db → db}/migrator/index.d.ts +0 -0
  1014. /package/dist/{v2/db/migrator/index.js → db/migrator.js} +0 -0
  1015. /package/dist/{v2/define-config.d.ts → define-config.d.ts} +0 -0
  1016. /package/dist/{v2/define-config.js → define-config.js} +0 -0
  1017. /package/dist/{pkgs/utils → utils}/env.d.ts +0 -0
  1018. /package/dist/{pkgs/utils → utils}/logger.d.ts +0 -0
  1019. /package/src/{v2/db → db}/adapters/drizzle.ts +0 -0
  1020. /package/src/{v2/db → db}/adapters/index.ts +0 -0
  1021. /package/src/{v2/db → db}/adapters/kysely.ts +0 -0
  1022. /package/src/{v2/db → db}/adapters/mongo.ts +0 -0
  1023. /package/src/{v2/db → db}/adapters/prisma.ts +0 -0
  1024. /package/src/{v2/db → db}/adapters/typeorm.ts +0 -0
  1025. /package/src/{v2/define-config.ts → define-config.ts} +0 -0
  1026. /package/src/{pkgs/utils → utils}/env.ts +0 -0
@@ -1,1111 +0,0 @@
1
- import base_x from "base-x";
2
- import { z } from "zod";
3
- import "neverthrow";
4
- import { ORPCError } from "@orpc/server";
5
- import { SpanStatusCode, trace } from "@opentelemetry/api";
6
- import "@c15t/logger";
7
- const COMMON_TIMEZONES = {
8
- UTC: 'UTC',
9
- GMT: 'GMT',
10
- EASTERN: 'America/New_York',
11
- CENTRAL: 'America/Chicago',
12
- MOUNTAIN: 'America/Denver',
13
- PACIFIC: 'America/Los_Angeles',
14
- LONDON: 'Europe/London',
15
- PARIS: 'Europe/Paris',
16
- BERLIN: 'Europe/Berlin',
17
- TOKYO: 'Asia/Tokyo',
18
- SHANGHAI: 'Asia/Shanghai',
19
- SINGAPORE: 'Asia/Singapore',
20
- SYDNEY: 'Australia/Sydney',
21
- SAO_PAULO: 'America/Sao_Paulo'
22
- };
23
- const b58 = base_x('123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz');
24
- function generateId(prefix) {
25
- const buf = crypto.getRandomValues(new Uint8Array(20));
26
- const EPOCH_TIMESTAMP = 1700000000000;
27
- const t = Date.now() - EPOCH_TIMESTAMP;
28
- const high = Math.floor(t / 0x100000000);
29
- const low = t >>> 0;
30
- buf[0] = high >>> 24 & 255;
31
- buf[1] = high >>> 16 & 255;
32
- buf[2] = high >>> 8 & 255;
33
- buf[3] = 255 & high;
34
- buf[4] = low >>> 24 & 255;
35
- buf[5] = low >>> 16 & 255;
36
- buf[6] = low >>> 8 & 255;
37
- buf[7] = 255 & low;
38
- return `${prefix}_${b58.encode(buf)}`;
39
- }
40
- const fieldConfigSchema = z.object({
41
- required: z.boolean().prefault(true),
42
- returned: z.boolean().prefault(true),
43
- input: z.boolean().prefault(true),
44
- defaultValue: z.any().optional(),
45
- transform: z.object({
46
- input: z.any().optional(),
47
- output: z.any().optional()
48
- }).optional(),
49
- validator: z.any().optional(),
50
- unique: z.boolean().optional(),
51
- indexed: z.boolean().optional(),
52
- sortable: z.boolean().prefault(true),
53
- fieldName: z.string().optional(),
54
- bigint: z.boolean().prefault(false)
55
- });
56
- const stringFieldSchema = fieldConfigSchema.extend({
57
- type: z.literal('string'),
58
- minLength: z.number().optional(),
59
- maxLength: z.number().optional(),
60
- pattern: z.string().optional()
61
- });
62
- const numberFieldSchema = fieldConfigSchema.extend({
63
- type: z.literal('number'),
64
- min: z.number().optional(),
65
- max: z.number().optional()
66
- });
67
- const booleanFieldSchema = fieldConfigSchema.extend({
68
- type: z.literal('boolean')
69
- });
70
- const dateFieldSchema = fieldConfigSchema.extend({
71
- type: z.literal('date'),
72
- minDate: z.date().optional(),
73
- maxDate: z.date().optional(),
74
- dateOnly: z.boolean().prefault(false),
75
- format: z.record(z.string(), z.unknown()).optional()
76
- });
77
- const timezoneFieldSchema = fieldConfigSchema.extend({
78
- type: z.literal('timezone'),
79
- validateTimezone: z.boolean().prefault(true),
80
- suggestedValues: z.array(z.string()).optional(),
81
- restrictToSuggestedValues: z.boolean().prefault(false)
82
- });
83
- const jsonFieldSchema = fieldConfigSchema.extend({
84
- type: z.literal('json'),
85
- validateJson: z.boolean().prefault(true)
86
- });
87
- const stringArrayFieldSchema = fieldConfigSchema.extend({
88
- type: z.literal('string[]')
89
- });
90
- const numberArrayFieldSchema = fieldConfigSchema.extend({
91
- type: z.literal('number[]')
92
- });
93
- z.discriminatedUnion('type', [
94
- stringFieldSchema,
95
- numberFieldSchema,
96
- booleanFieldSchema,
97
- dateFieldSchema,
98
- timezoneFieldSchema,
99
- jsonFieldSchema,
100
- stringArrayFieldSchema,
101
- numberArrayFieldSchema
102
- ]);
103
- const error_codes_ERROR_CODES = Object.freeze({
104
- NOT_FOUND: 'Resource not found',
105
- BAD_REQUEST: 'Bad request',
106
- CONFLICT: 'Conflict with current state',
107
- MISSING_REQUIRED_PARAMETER: 'Missing required parameter',
108
- UNAUTHORIZED: 'Unauthorized',
109
- FORBIDDEN: 'Forbidden',
110
- INTERNAL_SERVER_ERROR: 'Internal server error',
111
- INITIALIZATION_FAILED: 'Initialization failed',
112
- DATABASE_CONNECTION_ERROR: 'Database connection error',
113
- DATABASE_QUERY_ERROR: 'Database query error',
114
- INVALID_CONFIGURATION: 'Invalid configuration',
115
- REQUEST_HANDLER_ERROR: 'Request handler error',
116
- INVALID_REQUEST: 'Invalid request',
117
- UNKNOWN_ERROR: 'Unknown error',
118
- NETWORK_ERROR: 'Network error',
119
- PLUGIN_INITIALIZATION_FAILED: 'Plugin initialization failed',
120
- API_RETRIEVAL_ERROR: 'API retrieval error',
121
- VALIDATION_ERROR: 'Validation error',
122
- UNEXPECTED: 'Unexpected error'
123
- });
124
- const ERROR_CATEGORIES = Object.freeze({
125
- VALIDATION: 'validation',
126
- AUTHORIZATION: 'authorization',
127
- STORAGE: 'storage',
128
- NETWORK: 'network',
129
- PLUGIN: 'plugin',
130
- CONFIGURATION: 'configuration',
131
- UNEXPECTED: 'unexpected'
132
- });
133
- const tracer = trace.getTracer('@doubletie/results');
134
- async function tracing_withSpan(name, fn, attributes = {}) {
135
- return await tracer.startActiveSpan(name, async (span)=>{
136
- try {
137
- span.setAttributes(attributes);
138
- const result = await fn(span);
139
- span.setStatus({
140
- code: SpanStatusCode.OK
141
- });
142
- span.end();
143
- return result;
144
- } catch (error) {
145
- if (error instanceof error_class_DoubleTieError) {
146
- span.setAttributes({
147
- 'error.type': 'DoubleTieError',
148
- 'error.code': error.code,
149
- 'error.statusCode': error.statusCode,
150
- 'error.message': error.message
151
- });
152
- if (error.meta) span.setAttributes({
153
- 'error.meta': JSON.stringify(error.meta)
154
- });
155
- } else span.setAttributes({
156
- 'error.type': error instanceof Error ? error.constructor.name : 'Unknown',
157
- 'error.message': error instanceof Error ? error.message : String(error)
158
- });
159
- span.setStatus({
160
- code: SpanStatusCode.ERROR,
161
- message: error instanceof Error ? error.message : String(error)
162
- });
163
- span.end();
164
- throw error;
165
- }
166
- });
167
- }
168
- class error_class_DoubleTieError extends ORPCError {
169
- category;
170
- meta;
171
- statusCode;
172
- constructor(message, options = {
173
- code: error_codes_ERROR_CODES.UNKNOWN_ERROR,
174
- status: 500,
175
- category: ERROR_CATEGORIES.UNEXPECTED,
176
- cause: void 0,
177
- meta: {}
178
- }){
179
- super(options.code ?? error_codes_ERROR_CODES.UNKNOWN_ERROR, {
180
- message,
181
- cause: options.cause,
182
- data: options.meta ?? {}
183
- });
184
- this.name = 'DoubleTieError';
185
- this.category = options.category ?? ERROR_CATEGORIES.UNEXPECTED;
186
- this.meta = options.meta ?? {};
187
- this.statusCode = options.status ?? 500;
188
- tracing_withSpan('create_doubletie_error', async (span)=>{
189
- span.setAttributes({
190
- 'error.name': this.constructor.name,
191
- 'error.message': message,
192
- 'error.code': this.code,
193
- 'error.status': this.statusCode,
194
- 'error.category': this.category,
195
- 'error.has_cause': !!this.cause,
196
- 'error.cause_type': this.cause instanceof Error ? this.cause.constructor.name : typeof this.cause,
197
- 'error.has_meta': !!this.meta
198
- });
199
- if (this.cause instanceof Error) span.recordException(this.cause);
200
- });
201
- if (Error.captureStackTrace) Error.captureStackTrace(this, this.constructor);
202
- }
203
- static isDoubleTieError(error) {
204
- return error instanceof error_class_DoubleTieError;
205
- }
206
- toJSON() {
207
- const validationErrorMessage = this.meta?.validationErrors ? String(this.meta.validationErrors) : void 0;
208
- const stackTrace = this.stack ? this.stack.split('\n').map((line)=>line.trim()).filter((line)=>line && !line.includes('Error: ')) : [];
209
- return {
210
- code: this.code,
211
- message: validationErrorMessage || this.message,
212
- status: this.statusCode,
213
- defined: true,
214
- data: {
215
- category: this.category,
216
- meta: this.meta,
217
- ...'production' === process.env.NODE_ENV ? {} : {
218
- stack: stackTrace
219
- },
220
- ...validationErrorMessage && this.message ? {
221
- originalMessage: this.message
222
- } : {},
223
- ...this.cause ? {
224
- cause: this.cause instanceof Error ? {
225
- name: this.cause.name,
226
- message: this.cause.message,
227
- stack: this.cause.stack ? this.cause.stack.split('\n').map((line)=>line.trim()) : void 0
228
- } : this.cause
229
- } : {}
230
- }
231
- };
232
- }
233
- static fromResponse(response, data) {
234
- let message = `HTTP error ${response.status}`;
235
- let errorCode = `HTTP ${response.status}`;
236
- let errorMeta = {};
237
- if (data && 'object' == typeof data && null !== data) {
238
- const errorObj = data;
239
- if ('string' == typeof errorObj.message) message = errorObj.message;
240
- if ('string' == typeof errorObj.code) errorCode = errorObj.code;
241
- if ('object' == typeof errorObj.data && null !== errorObj.data) errorMeta = errorObj.data;
242
- }
243
- return new error_class_DoubleTieError(message, {
244
- code: errorCode,
245
- status: response.status,
246
- meta: errorMeta
247
- });
248
- }
249
- withMeta(additionalMeta) {
250
- return new error_class_DoubleTieError(this.message, {
251
- code: this.code,
252
- status: this.statusCode,
253
- category: this.category,
254
- cause: this.cause instanceof Error ? this.cause : void 0,
255
- meta: {
256
- ...this.meta,
257
- ...additionalMeta
258
- }
259
- });
260
- }
261
- static createSubclass(name) {
262
- const ErrorSubclass = class extends error_class_DoubleTieError {
263
- constructor(message, options){
264
- super(message, options);
265
- Object.defineProperty(this, 'name', {
266
- value: name
267
- });
268
- }
269
- };
270
- Object.defineProperty(ErrorSubclass, 'name', {
271
- value: name
272
- });
273
- return ErrorSubclass;
274
- }
275
- static formatValidationError(error) {
276
- if (!error.meta) return error.message;
277
- let formattedMessage = `${error.message} (${error.code})`;
278
- if (error.meta.validationErrors) formattedMessage += `\nValidation Errors: ${JSON.stringify(error.meta.validationErrors, null, 2)}`;
279
- const otherMeta = Object.fromEntries(Object.entries(error.meta).filter(([key])=>'validationErrors' !== key));
280
- if (Object.keys(otherMeta).length > 0) formattedMessage += `\nAdditional Context: ${JSON.stringify(otherMeta, null, 2)}`;
281
- return formattedMessage;
282
- }
283
- }
284
- const auditLogSchema = z.object({
285
- id: z.string(),
286
- entityType: z.string(),
287
- entityId: z.string(),
288
- actionType: z.string(),
289
- subjectId: z.string().optional(),
290
- ipAddress: z.string().optional(),
291
- userAgent: z.string().optional(),
292
- changes: z.record(z.string(), z.unknown()).optional(),
293
- metadata: z.record(z.string(), z.unknown()).optional(),
294
- createdAt: z.date().prefault(()=>new Date())
295
- });
296
- function getAuditLogTable(options, auditLogFields) {
297
- const auditLogConfig = options.tables?.auditLog;
298
- const subjectConfig = options.tables?.subject;
299
- return {
300
- entityName: auditLogConfig?.entityName || 'auditLog',
301
- entityPrefix: auditLogConfig?.entityPrefix || 'log',
302
- schema: auditLogSchema,
303
- fields: {
304
- entityType: {
305
- type: 'string',
306
- required: true,
307
- fieldName: auditLogConfig?.fields?.entityType || 'entityType'
308
- },
309
- entityId: {
310
- type: 'string',
311
- required: true,
312
- fieldName: auditLogConfig?.fields?.entityId || 'entityId'
313
- },
314
- actionType: {
315
- type: 'string',
316
- required: true,
317
- fieldName: auditLogConfig?.fields?.actionType || 'actionType'
318
- },
319
- subjectId: {
320
- type: 'string',
321
- required: false,
322
- fieldName: auditLogConfig?.fields?.subjectId || 'subjectId',
323
- references: {
324
- model: subjectConfig?.entityName || 'subject',
325
- field: 'id'
326
- }
327
- },
328
- ipAddress: {
329
- type: 'string',
330
- required: false,
331
- fieldName: auditLogConfig?.fields?.ipAddress || 'ipAddress'
332
- },
333
- userAgent: {
334
- type: 'string',
335
- required: false,
336
- fieldName: auditLogConfig?.fields?.userAgent || 'userAgent'
337
- },
338
- changes: {
339
- type: 'json',
340
- required: false,
341
- fieldName: auditLogConfig?.fields?.changes || 'changes'
342
- },
343
- metadata: {
344
- type: 'json',
345
- required: false,
346
- fieldName: auditLogConfig?.fields?.metadata || 'metadata'
347
- },
348
- createdAt: {
349
- type: 'date',
350
- defaultValue: ()=>new Date(),
351
- required: true,
352
- fieldName: auditLogConfig?.fields?.createdAt || 'createdAt'
353
- },
354
- eventTimezone: {
355
- type: 'timezone',
356
- required: true,
357
- defaultValue: COMMON_TIMEZONES.UTC,
358
- fieldName: auditLogConfig?.fields?.eventTimezone || 'eventTimezone'
359
- },
360
- ...auditLogFields || {},
361
- ...auditLogConfig?.additionalFields || {}
362
- },
363
- indexes: [
364
- {
365
- name: 'entity_index',
366
- fields: [
367
- 'entityType',
368
- 'entityId'
369
- ]
370
- },
371
- {
372
- name: 'action_type_index',
373
- fields: [
374
- 'actionType'
375
- ]
376
- },
377
- {
378
- name: 'subject_id_index',
379
- fields: [
380
- 'subjectId'
381
- ]
382
- },
383
- {
384
- name: 'created_at_index',
385
- fields: [
386
- 'createdAt'
387
- ]
388
- }
389
- ],
390
- order: 5
391
- };
392
- }
393
- const consentSchema = z.object({
394
- id: z.string(),
395
- subjectId: z.string(),
396
- domainId: z.string(),
397
- purposeIds: z.array(z.string()),
398
- metadata: z.record(z.string(), z.unknown()).nullable().optional(),
399
- policyId: z.string().optional(),
400
- ipAddress: z.string().nullable().optional(),
401
- userAgent: z.string().nullable().optional(),
402
- status: z["enum"]([
403
- 'active',
404
- 'withdrawn',
405
- 'expired'
406
- ]).prefault('active'),
407
- withdrawalReason: z.string().nullable().optional(),
408
- givenAt: z.date().prefault(()=>new Date()),
409
- validUntil: z.date().nullable().optional(),
410
- isActive: z.boolean().prefault(true)
411
- });
412
- function getConsentTable(options, consentFields) {
413
- const consentConfig = options.tables?.consent;
414
- const subjectConfig = options.tables?.subject;
415
- const domainConfig = options.tables?.domain;
416
- const policyConfig = options.tables?.consentPolicy;
417
- return {
418
- entityName: consentConfig?.entityName || 'consent',
419
- entityPrefix: consentConfig?.entityPrefix || 'cns',
420
- schema: consentSchema,
421
- fields: {
422
- subjectId: {
423
- type: 'string',
424
- required: true,
425
- fieldName: consentConfig?.fields?.subjectId || 'subjectId',
426
- references: {
427
- model: subjectConfig?.entityName || 'subject',
428
- field: 'id'
429
- }
430
- },
431
- domainId: {
432
- type: 'string',
433
- required: true,
434
- fieldName: consentConfig?.fields?.domainId || 'domainId',
435
- references: {
436
- model: domainConfig?.entityName || 'domain',
437
- field: 'id'
438
- }
439
- },
440
- purposeIds: {
441
- type: 'json',
442
- required: false,
443
- fieldName: consentConfig?.fields?.purposeIds || 'purposeIds'
444
- },
445
- metadata: {
446
- type: 'json',
447
- required: false,
448
- fieldName: consentConfig?.fields?.metadata || 'metadata'
449
- },
450
- policyId: {
451
- type: 'string',
452
- required: false,
453
- fieldName: consentConfig?.fields?.policyId || 'policyId',
454
- references: {
455
- model: policyConfig?.entityName || 'consentPolicy',
456
- field: 'id'
457
- }
458
- },
459
- ipAddress: {
460
- type: 'string',
461
- required: false,
462
- fieldName: consentConfig?.fields?.ipAddress || 'ipAddress'
463
- },
464
- userAgent: {
465
- type: 'string',
466
- required: false,
467
- fieldName: consentConfig?.fields?.userAgent || 'userAgent'
468
- },
469
- status: {
470
- type: 'string',
471
- defaultValue: ()=>'active',
472
- required: true,
473
- fieldName: consentConfig?.fields?.status || 'status'
474
- },
475
- withdrawalReason: {
476
- type: 'string',
477
- required: false,
478
- fieldName: consentConfig?.fields?.withdrawalReason || 'withdrawalReason'
479
- },
480
- givenAt: {
481
- type: 'date',
482
- defaultValue: ()=>new Date(),
483
- required: true,
484
- fieldName: consentConfig?.fields?.givenAt || 'givenAt'
485
- },
486
- validUntil: {
487
- type: 'date',
488
- required: false,
489
- fieldName: consentConfig?.fields?.validUntil || 'validUntil',
490
- transform: {
491
- input: (val, data)=>{
492
- if (val) return val;
493
- const expiresIn = consentConfig?.expiresIn || 31536000;
494
- const givenAt = data.givenAt instanceof Date ? data.givenAt : new Date();
495
- if (expiresIn > 0) {
496
- const validUntil = new Date(givenAt);
497
- validUntil.setSeconds(validUntil.getSeconds() + expiresIn);
498
- return validUntil;
499
- }
500
- }
501
- }
502
- },
503
- isActive: {
504
- type: 'boolean',
505
- defaultValue: true,
506
- required: true,
507
- fieldName: consentConfig?.fields?.isActive || 'isActive'
508
- },
509
- ...consentFields || {},
510
- ...consentConfig?.additionalFields || {}
511
- },
512
- order: 3
513
- };
514
- }
515
- const PolicyTypeSchema = z["enum"]([
516
- 'cookie_banner',
517
- 'privacy_policy',
518
- 'dpa',
519
- 'terms_and_conditions',
520
- 'marketing_communications',
521
- 'age_verification',
522
- 'other'
523
- ]);
524
- const consentPolicySchema = z.object({
525
- id: z.string(),
526
- version: z.string(),
527
- type: PolicyTypeSchema,
528
- name: z.string(),
529
- effectiveDate: z.date(),
530
- expirationDate: z.date().nullable().optional(),
531
- content: z.string(),
532
- contentHash: z.string(),
533
- isActive: z.boolean().prefault(true),
534
- createdAt: z.date().prefault(()=>new Date()),
535
- updatedAt: z.date().prefault(()=>new Date())
536
- });
537
- function getConsentPolicyTable(options, policyFields) {
538
- const consentPolicyConfig = options.tables?.consentPolicy;
539
- return {
540
- entityName: consentPolicyConfig?.entityName || 'consentPolicy',
541
- entityPrefix: consentPolicyConfig?.entityPrefix || 'pol',
542
- schema: consentPolicySchema,
543
- fields: {
544
- version: {
545
- type: 'string',
546
- required: true,
547
- fieldName: consentPolicyConfig?.fields?.version || 'version'
548
- },
549
- type: {
550
- type: 'string',
551
- required: true,
552
- fieldName: consentPolicyConfig?.fields?.type || 'type'
553
- },
554
- name: {
555
- type: 'string',
556
- required: true,
557
- fieldName: consentPolicyConfig?.fields?.name || 'name'
558
- },
559
- effectiveDate: {
560
- type: 'date',
561
- required: true,
562
- fieldName: consentPolicyConfig?.fields?.effectiveDate || 'effectiveDate'
563
- },
564
- expirationDate: {
565
- type: 'date',
566
- required: false,
567
- fieldName: consentPolicyConfig?.fields?.expirationDate || 'expirationDate'
568
- },
569
- content: {
570
- type: 'string',
571
- required: true,
572
- fieldName: consentPolicyConfig?.fields?.content || 'content'
573
- },
574
- contentHash: {
575
- type: 'string',
576
- required: true,
577
- fieldName: consentPolicyConfig?.fields?.contentHash || 'contentHash'
578
- },
579
- isActive: {
580
- type: 'boolean',
581
- defaultValue: true,
582
- required: true,
583
- fieldName: consentPolicyConfig?.fields?.isActive || 'isActive'
584
- },
585
- createdAt: {
586
- type: 'date',
587
- defaultValue: ()=>new Date(),
588
- required: true,
589
- fieldName: consentPolicyConfig?.fields?.createdAt || 'createdAt'
590
- },
591
- ...policyFields || {},
592
- ...consentPolicyConfig?.additionalFields || {}
593
- },
594
- order: 2
595
- };
596
- }
597
- const purposeSchema = z.object({
598
- id: z.string(),
599
- code: z.string(),
600
- name: z.string(),
601
- description: z.string(),
602
- isEssential: z.boolean().prefault(false),
603
- dataCategory: z.string().nullish(),
604
- legalBasis: z.string().nullish(),
605
- isActive: z.boolean().prefault(true),
606
- createdAt: z.date().prefault(()=>new Date()),
607
- updatedAt: z.date().prefault(()=>new Date())
608
- });
609
- function getPurposeTable(options, purposeFields) {
610
- const purposeConfig = options.tables?.consentPurpose;
611
- return {
612
- entityName: purposeConfig?.entityName || 'consentPurpose',
613
- entityPrefix: purposeConfig?.entityPrefix || 'pur',
614
- schema: purposeSchema,
615
- fields: {
616
- code: {
617
- type: 'string',
618
- required: true,
619
- fieldName: purposeConfig?.fields?.code || 'code'
620
- },
621
- name: {
622
- type: 'string',
623
- required: true,
624
- fieldName: purposeConfig?.fields?.name || 'name'
625
- },
626
- description: {
627
- type: 'string',
628
- required: true,
629
- fieldName: purposeConfig?.fields?.description || "description"
630
- },
631
- isEssential: {
632
- type: 'boolean',
633
- defaultValue: ()=>false,
634
- required: true,
635
- fieldName: purposeConfig?.fields?.isEssential || 'isEssential'
636
- },
637
- dataCategory: {
638
- type: 'string',
639
- required: false,
640
- fieldName: purposeConfig?.fields?.dataCategory || 'dataCategory'
641
- },
642
- legalBasis: {
643
- type: 'string',
644
- required: false,
645
- fieldName: purposeConfig?.fields?.legalBasis || 'legalBasis'
646
- },
647
- isActive: {
648
- type: 'boolean',
649
- defaultValue: true,
650
- required: true,
651
- fieldName: purposeConfig?.fields?.isActive || 'isActive'
652
- },
653
- createdAt: {
654
- type: 'date',
655
- defaultValue: ()=>new Date(),
656
- required: true,
657
- fieldName: purposeConfig?.fields?.createdAt || 'createdAt'
658
- },
659
- updatedAt: {
660
- type: 'date',
661
- defaultValue: ()=>new Date(),
662
- required: true,
663
- fieldName: purposeConfig?.fields?.updatedAt || 'updatedAt'
664
- },
665
- ...purposeFields || {},
666
- ...purposeConfig?.additionalFields || {}
667
- },
668
- order: 1
669
- };
670
- }
671
- const consentRecordSchema = z.object({
672
- id: z.string(),
673
- subjectId: z.string(),
674
- consentId: z.string().optional(),
675
- actionType: z.string(),
676
- details: z.record(z.string(), z.unknown()).optional(),
677
- createdAt: z.date().prefault(()=>new Date()),
678
- updatedAt: z.date().prefault(()=>new Date())
679
- });
680
- function getConsentRecordTable(options, recordFields) {
681
- const recordConfig = options.tables?.record;
682
- const subjectConfig = options.tables?.subject;
683
- const consentConfig = options.tables?.consent;
684
- return {
685
- entityName: recordConfig?.entityName || 'consentRecord',
686
- entityPrefix: recordConfig?.entityPrefix || 'rec',
687
- schema: consentRecordSchema,
688
- fields: {
689
- subjectId: {
690
- type: 'string',
691
- required: true,
692
- fieldName: recordConfig?.fields?.subjectId || 'subjectId',
693
- references: {
694
- model: subjectConfig?.entityName || 'subject',
695
- field: 'id'
696
- }
697
- },
698
- consentId: {
699
- type: 'string',
700
- required: false,
701
- fieldName: recordConfig?.fields?.consentId || 'consentId',
702
- references: {
703
- model: consentConfig?.entityName || 'consent',
704
- field: 'id'
705
- }
706
- },
707
- actionType: {
708
- type: 'string',
709
- required: true,
710
- fieldName: recordConfig?.fields?.actionType || 'actionType'
711
- },
712
- details: {
713
- type: 'json',
714
- required: false,
715
- fieldName: recordConfig?.fields?.details || 'details'
716
- },
717
- createdAt: {
718
- type: 'date',
719
- defaultValue: ()=>new Date(),
720
- required: true,
721
- fieldName: recordConfig?.fields?.createdAt || 'createdAt'
722
- },
723
- ...recordFields || {},
724
- ...recordConfig?.additionalFields || {}
725
- },
726
- order: 4
727
- };
728
- }
729
- const domainSchema = z.object({
730
- id: z.string(),
731
- name: z.string().min(1),
732
- description: z.string().optional(),
733
- allowedOrigins: z.array(z.string()).optional().prefault([]),
734
- isVerified: z.boolean().prefault(true),
735
- isActive: z.boolean().prefault(true),
736
- createdAt: z.date().prefault(()=>new Date()),
737
- updatedAt: z.date().prefault(()=>new Date())
738
- });
739
- function getDomainTable(options, domainFields) {
740
- const domainConfig = options.tables?.domain;
741
- return {
742
- entityName: domainConfig?.entityName || 'domain',
743
- entityPrefix: domainConfig?.entityPrefix || 'dom',
744
- schema: domainSchema,
745
- fields: {
746
- name: {
747
- type: 'string',
748
- required: true,
749
- unique: true,
750
- fieldName: domainConfig?.fields?.name || 'name'
751
- },
752
- description: {
753
- type: 'string',
754
- required: false,
755
- fieldName: domainConfig?.fields?.description || "description"
756
- },
757
- allowedOrigins: {
758
- type: 'json',
759
- defaultValue: ()=>[],
760
- required: false,
761
- fieldName: domainConfig?.fields?.allowedOrigins || 'allowedOrigins'
762
- },
763
- isVerified: {
764
- type: 'boolean',
765
- defaultValue: true,
766
- required: true,
767
- fieldName: domainConfig?.fields?.isVerified || 'isVerified'
768
- },
769
- isActive: {
770
- type: 'boolean',
771
- defaultValue: true,
772
- required: true,
773
- fieldName: domainConfig?.fields?.isActive || 'isActive'
774
- },
775
- createdAt: {
776
- type: 'date',
777
- defaultValue: ()=>new Date(),
778
- required: true,
779
- fieldName: domainConfig?.fields?.createdAt || 'createdAt'
780
- },
781
- updatedAt: {
782
- type: 'date',
783
- required: false,
784
- fieldName: domainConfig?.fields?.updatedAt || 'updatedAt'
785
- },
786
- ...domainFields || {},
787
- ...domainConfig?.additionalFields || {}
788
- },
789
- order: 1
790
- };
791
- }
792
- const subjectSchema = z.object({
793
- id: z.string(),
794
- isIdentified: z.boolean().prefault(false),
795
- externalId: z.string().nullable().optional(),
796
- identityProvider: z.string().optional(),
797
- lastIpAddress: z.string().optional(),
798
- createdAt: z.date().prefault(()=>new Date()),
799
- updatedAt: z.date().prefault(()=>new Date())
800
- });
801
- function getSubjectTable(options, subjectFields) {
802
- const subjectConfig = options.tables?.subject;
803
- return {
804
- entityName: subjectConfig?.entityName || 'subject',
805
- entityPrefix: subjectConfig?.entityPrefix || 'sub',
806
- schema: subjectSchema,
807
- fields: {
808
- isIdentified: {
809
- type: 'boolean',
810
- defaultValue: ()=>false,
811
- required: true,
812
- fieldName: subjectConfig?.fields?.isIdentified || 'isIdentified'
813
- },
814
- externalId: {
815
- type: 'string',
816
- required: false,
817
- fieldName: subjectConfig?.fields?.externalId || 'externalId'
818
- },
819
- identityProvider: {
820
- type: 'string',
821
- required: false,
822
- fieldName: subjectConfig?.fields?.identityProvider || 'identityProvider'
823
- },
824
- lastIpAddress: {
825
- type: 'string',
826
- required: false,
827
- fieldName: subjectConfig?.fields?.lastIpAddress || 'lastIpAddress'
828
- },
829
- createdAt: {
830
- type: 'date',
831
- defaultValue: ()=>new Date(),
832
- required: true,
833
- fieldName: subjectConfig?.fields?.createdAt || 'createdAt'
834
- },
835
- updatedAt: {
836
- type: 'date',
837
- defaultValue: ()=>new Date(),
838
- required: true,
839
- fieldName: subjectConfig?.fields?.updatedAt || 'updatedAt'
840
- },
841
- subjectTimezone: {
842
- type: 'timezone',
843
- required: false,
844
- defaultValue: COMMON_TIMEZONES.UTC,
845
- fieldName: subjectConfig?.fields?.subjectTimezone || 'subjectTimezone'
846
- },
847
- ...subjectFields || {},
848
- ...subjectConfig?.additionalFields || {}
849
- },
850
- order: 1
851
- };
852
- }
853
- const getConsentTables = (options)=>{
854
- const pluginSchema = options.plugins?.reduce((acc, plugin)=>{
855
- const schema = plugin.schema;
856
- if (!schema) return acc;
857
- for (const [key, value] of Object.entries(schema))acc[key] = {
858
- fields: {
859
- ...acc[key]?.fields,
860
- ...value.fields
861
- },
862
- entityName: key
863
- };
864
- return acc;
865
- }, {});
866
- const { subject, consentPurpose, consentPolicy, domain, geoLocation, consent, consentPurposeJunction, record, consentGeoLocation, consentWithdrawal, auditLog, ...pluginTables } = pluginSchema || {};
867
- return {
868
- subject: getSubjectTable(options, subject?.fields),
869
- consentPurpose: getPurposeTable(options, consentPurpose?.fields),
870
- consentPolicy: getConsentPolicyTable(options, consentPolicy?.fields),
871
- domain: getDomainTable(options, domain?.fields),
872
- consent: getConsentTable(options, consent?.fields),
873
- consentRecord: getConsentRecordTable(options, record?.fields),
874
- auditLog: getAuditLogTable(options, auditLog?.fields),
875
- ...pluginTables
876
- };
877
- };
878
- function applyDefaultValue(inputValue, field, operation) {
879
- if ('update' === operation) return inputValue;
880
- if (null == inputValue && field.defaultValue) {
881
- if ('function' == typeof field.defaultValue) return field.defaultValue();
882
- return field.defaultValue;
883
- }
884
- return inputValue;
885
- }
886
- const createEntityTransformer = (_config, options)=>{
887
- const schema = getConsentTables(options);
888
- function getField(model, field) {
889
- if ('id' === field) return field;
890
- const f = schema[model].fields[field];
891
- return f.fieldName || field;
892
- }
893
- function operatorToPrismaOperator(operator) {
894
- switch(operator){
895
- case 'starts_with':
896
- return 'startsWith';
897
- case 'ends_with':
898
- return 'endsWith';
899
- default:
900
- return operator;
901
- }
902
- }
903
- function getEntityName(model) {
904
- return schema[model].entityName;
905
- }
906
- const useDatabaseGeneratedId = options?.advanced?.generateId === false;
907
- return {
908
- transformInput (data, model, action) {
909
- const transformedData = useDatabaseGeneratedId || 'update' === action ? {} : {
910
- id: options.advanced?.generateId ? options.advanced.generateId({
911
- model
912
- }) : data.id || generateId(schema[model].entityPrefix)
913
- };
914
- const fields = schema[model].fields;
915
- for(const field in fields)if (Object.hasOwn(fields, field)) {
916
- const value = data[field];
917
- if (void 0 === value && (!fields[field].defaultValue || 'update' === action)) continue;
918
- transformedData[fields[field].fieldName || field] = applyDefaultValue(value, fields[field], action);
919
- }
920
- return transformedData;
921
- },
922
- transformOutput (data, model, select = []) {
923
- if (!data) return null;
924
- let transformedData = {};
925
- if ((data.id || data._id) && (0 === select.length || select.includes('id'))) transformedData = {
926
- id: data.id
927
- };
928
- const tableSchema = schema[model].fields;
929
- for(const key in tableSchema){
930
- if (select.length && !select.includes(key)) continue;
931
- const field = tableSchema[key];
932
- if (field) transformedData[key] = data[field.fieldName || key];
933
- }
934
- return transformedData;
935
- },
936
- convertWhereClause (model, where) {
937
- if (!where) return {};
938
- if (1 === where.length) {
939
- const w = where[0];
940
- if (!w) return;
941
- return {
942
- [getField(model, w.field)]: 'eq' !== w.operator && w.operator ? {
943
- [operatorToPrismaOperator(w.operator)]: w.value
944
- } : w.value
945
- };
946
- }
947
- const and = where.filter((w)=>'AND' === w.connector || !w.connector);
948
- const or = where.filter((w)=>'OR' === w.connector);
949
- const andClause = and.map((w)=>({
950
- [getField(model, w.field)]: 'eq' !== w.operator && w.operator ? {
951
- [operatorToPrismaOperator(w.operator)]: w.value
952
- } : w.value
953
- }));
954
- const orClause = or.map((w)=>({
955
- [getField(model, w.field)]: {
956
- [w.operator || 'eq']: w.value
957
- }
958
- }));
959
- return {
960
- ...andClause.length ? {
961
- AND: andClause
962
- } : {},
963
- ...orClause.length ? {
964
- OR: orClause
965
- } : {}
966
- };
967
- },
968
- convertSelect: (select, model)=>{
969
- if (!select || !model) return;
970
- return select.reduce((prev, cur)=>{
971
- const field = getField(model, cur);
972
- return Object.assign({}, prev, {
973
- [field]: true
974
- });
975
- }, {});
976
- },
977
- getEntityName,
978
- getField
979
- };
980
- };
981
- const prismaAdapter = (prisma, config)=>(options)=>{
982
- const db = prisma;
983
- const { transformInput, transformOutput, convertWhereClause, convertSelect, getEntityName, getField } = createEntityTransformer(config, options);
984
- return {
985
- id: 'prisma',
986
- async create (data) {
987
- const { model, data: values, select } = data;
988
- const transformed = transformInput(values, model, 'create');
989
- if (!db[getEntityName(model)]) throw new error_class_DoubleTieError(`The model "${model}" does not exist in the Prisma client. Please verify the model name and ensure it is defined in your Prisma schema.`, {
990
- code: error_codes_ERROR_CODES.DATABASE_QUERY_ERROR,
991
- status: 500,
992
- meta: {
993
- model,
994
- availableModels: Object.keys(prisma).filter((key)=>!key.startsWith('$') && !key.startsWith('_'))
995
- }
996
- });
997
- const result = await db[getEntityName(model)].create({
998
- data: transformed,
999
- select: convertSelect(select, model)
1000
- });
1001
- return transformOutput(result, model, select);
1002
- },
1003
- async findOne (data) {
1004
- const { model, where, select } = data;
1005
- const whereClause = convertWhereClause(model, where);
1006
- if (!db[getEntityName(model)]) throw new error_class_DoubleTieError(`The model "${model}" does not exist in the Prisma client. Please verify the model name and ensure it is defined in your Prisma schema.`, {
1007
- code: error_codes_ERROR_CODES.DATABASE_QUERY_ERROR,
1008
- status: 500,
1009
- meta: {
1010
- model,
1011
- availableModels: Object.keys(prisma).filter((key)=>!key.startsWith('$') && !key.startsWith('_'))
1012
- }
1013
- });
1014
- const result = await db[getEntityName(model)].findFirst({
1015
- where: whereClause,
1016
- select: convertSelect(select, model)
1017
- });
1018
- return transformOutput(result, model, select);
1019
- },
1020
- async findMany (data) {
1021
- const { model, where, limit, offset, sortBy } = data;
1022
- const whereClause = convertWhereClause(model, where);
1023
- if (!db[getEntityName(model)]) throw new error_class_DoubleTieError(`The model "${model}" does not exist in the Prisma client. Please verify the model name and ensure it is defined in your Prisma schema.`, {
1024
- code: error_codes_ERROR_CODES.DATABASE_QUERY_ERROR,
1025
- status: 500,
1026
- meta: {
1027
- model,
1028
- availableModels: Object.keys(prisma).filter((key)=>!key.startsWith('$') && !key.startsWith('_'))
1029
- }
1030
- });
1031
- const result = await db[getEntityName(model)].findMany({
1032
- where: whereClause,
1033
- take: limit || 100,
1034
- skip: offset || 0,
1035
- ...sortBy?.field ? {
1036
- orderBy: {
1037
- [getField(model, sortBy.field)]: 'desc' === sortBy.direction ? 'desc' : 'asc'
1038
- }
1039
- } : {}
1040
- });
1041
- return result.map((r)=>transformOutput(r, model));
1042
- },
1043
- async count (data) {
1044
- const { model, where } = data;
1045
- const whereClause = convertWhereClause(model, where);
1046
- if (!db[getEntityName(model)]) throw new error_class_DoubleTieError(`The model "${model}" does not exist in the Prisma client. Please verify the model name and ensure it is defined in your Prisma schema.`, {
1047
- code: error_codes_ERROR_CODES.DATABASE_QUERY_ERROR,
1048
- status: 500,
1049
- meta: {
1050
- model,
1051
- availableModels: Object.keys(prisma).filter((key)=>!key.startsWith('$') && !key.startsWith('_'))
1052
- }
1053
- });
1054
- const result = await db[getEntityName(model)].count({
1055
- where: whereClause
1056
- });
1057
- return result;
1058
- },
1059
- async update (data) {
1060
- const { model, where, update } = data;
1061
- const whereClause = convertWhereClause(model, where);
1062
- const transformed = transformInput(update, model, 'update');
1063
- try {
1064
- const result = await db[getEntityName(model)].update({
1065
- where: whereClause,
1066
- data: transformed
1067
- });
1068
- return transformOutput(result, model);
1069
- } catch {
1070
- return null;
1071
- }
1072
- },
1073
- async updateMany (data) {
1074
- const { model, where, update } = data;
1075
- const whereClause = convertWhereClause(model, where);
1076
- const transformed = transformInput(update, model, 'update');
1077
- const result = await db[getEntityName(model)].updateMany({
1078
- where: whereClause,
1079
- data: transformed
1080
- });
1081
- return result ? result.count : 0;
1082
- },
1083
- async delete (data) {
1084
- const { model, where } = data;
1085
- const whereClause = convertWhereClause(model, where);
1086
- try {
1087
- await db[getEntityName(model)].delete({
1088
- where: whereClause
1089
- });
1090
- } catch {}
1091
- },
1092
- async deleteMany (data) {
1093
- const { model, where } = data;
1094
- const whereClause = convertWhereClause(model, where);
1095
- const result = await db[getEntityName(model)].deleteMany({
1096
- where: whereClause
1097
- });
1098
- return result ? result.count : 0;
1099
- },
1100
- async transaction (data) {
1101
- const { callback } = data;
1102
- return db.$transaction(async (tx)=>{
1103
- const txClient = tx;
1104
- const transactionAdapter = prismaAdapter(txClient, config)(options);
1105
- return await callback(transactionAdapter);
1106
- });
1107
- },
1108
- options: config
1109
- };
1110
- };
1111
- export { prismaAdapter };