@c15t/backend 1.5.0 → 1.6.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 (489) hide show
  1. package/.turbo/turbo-build.log +63 -37
  2. package/CHANGELOG.md +4 -209
  3. package/README.md +86 -164
  4. package/dist/contracts/consent/index.d.ts +103 -615
  5. package/dist/contracts/consent/index.d.ts.map +1 -1
  6. package/dist/contracts/consent/post.contract.d.ts +42 -140
  7. package/dist/contracts/consent/post.contract.d.ts.map +1 -1
  8. package/dist/contracts/consent/show-banner.contract.d.ts +28 -376
  9. package/dist/contracts/consent/show-banner.contract.d.ts.map +1 -1
  10. package/dist/contracts/consent/verify.contract.d.ts +33 -99
  11. package/dist/contracts/consent/verify.contract.d.ts.map +1 -1
  12. package/dist/contracts/index.d.ts +222 -1356
  13. package/dist/contracts/index.d.ts.map +1 -1
  14. package/dist/contracts/meta/index.d.ts +8 -63
  15. package/dist/contracts/meta/index.d.ts.map +1 -1
  16. package/dist/contracts/meta/status.contract.d.ts +8 -63
  17. package/dist/contracts/meta/status.contract.d.ts.map +1 -1
  18. package/dist/contracts/shared/jurisdiction.schema.d.ts +21 -9
  19. package/dist/contracts/shared/jurisdiction.schema.d.ts.map +1 -1
  20. package/dist/contracts.cjs +100 -106
  21. package/dist/contracts.js +100 -106
  22. package/dist/core.cjs +681 -681
  23. package/dist/core.d.ts +118 -678
  24. package/dist/core.d.ts.map +1 -1
  25. package/dist/core.js +634 -637
  26. package/dist/handlers/consent/index.d.ts +103 -615
  27. package/dist/handlers/consent/index.d.ts.map +1 -1
  28. package/dist/handlers/consent/post.handler.d.ts +42 -140
  29. package/dist/handlers/consent/post.handler.d.ts.map +1 -1
  30. package/dist/handlers/consent/show-banner/handler.d.ts +28 -376
  31. package/dist/handlers/consent/show-banner/handler.d.ts.map +1 -1
  32. package/dist/handlers/consent/show-banner/translations.d.ts.map +1 -1
  33. package/dist/handlers/consent/verify.handler.d.ts +33 -99
  34. package/dist/handlers/consent/verify.handler.d.ts.map +1 -1
  35. package/dist/handlers/meta/index.d.ts +8 -63
  36. package/dist/handlers/meta/index.d.ts.map +1 -1
  37. package/dist/handlers/meta/status.handler.d.ts +8 -63
  38. package/dist/handlers/meta/status.handler.d.ts.map +1 -1
  39. package/dist/init.d.ts.map +1 -1
  40. package/dist/middleware/openapi/index.d.ts +2 -2
  41. package/dist/middleware/openapi/index.d.ts.map +1 -1
  42. package/dist/pkgs/data-model/fields/index.cjs +14 -26
  43. package/dist/pkgs/data-model/fields/index.d.ts +4 -4
  44. package/dist/pkgs/data-model/fields/index.d.ts.map +1 -1
  45. package/dist/pkgs/data-model/fields/index.js +14 -26
  46. package/dist/pkgs/data-model/fields/zod-fields.d.ts +195 -871
  47. package/dist/pkgs/data-model/fields/zod-fields.d.ts.map +1 -1
  48. package/dist/pkgs/data-model/hooks/index.d.ts +2 -2
  49. package/dist/pkgs/data-model/hooks/index.d.ts.map +1 -1
  50. package/dist/pkgs/data-model/index.cjs +346 -358
  51. package/dist/pkgs/data-model/index.d.ts +1 -1
  52. package/dist/pkgs/data-model/index.d.ts.map +1 -1
  53. package/dist/pkgs/data-model/index.js +345 -357
  54. package/dist/pkgs/data-model/schema/index.cjs +346 -358
  55. package/dist/pkgs/data-model/schema/index.d.ts +1 -1
  56. package/dist/pkgs/data-model/schema/index.d.ts.map +1 -1
  57. package/dist/pkgs/data-model/schema/index.js +345 -357
  58. package/dist/pkgs/data-model/schema/schemas.d.ts +2 -2
  59. package/dist/pkgs/data-model/schema/schemas.d.ts.map +1 -1
  60. package/dist/pkgs/db-adapters/adapters/drizzle-adapter/drizzle-adapter.d.ts +3 -0
  61. package/dist/pkgs/db-adapters/adapters/drizzle-adapter/drizzle-adapter.d.ts.map +1 -1
  62. package/dist/pkgs/db-adapters/adapters/drizzle-adapter/index.cjs +158 -170
  63. package/dist/pkgs/db-adapters/adapters/drizzle-adapter/index.js +157 -169
  64. package/dist/pkgs/db-adapters/adapters/index.d.ts +2 -2
  65. package/dist/pkgs/db-adapters/adapters/index.d.ts.map +1 -1
  66. package/dist/pkgs/db-adapters/adapters/kysely-adapter/index.cjs +215 -227
  67. package/dist/pkgs/db-adapters/adapters/kysely-adapter/index.d.ts +2 -2
  68. package/dist/pkgs/db-adapters/adapters/kysely-adapter/index.d.ts.map +1 -1
  69. package/dist/pkgs/db-adapters/adapters/kysely-adapter/index.js +213 -225
  70. package/dist/pkgs/db-adapters/adapters/kysely-adapter/kysely-adapter.d.ts +2 -0
  71. package/dist/pkgs/db-adapters/adapters/kysely-adapter/kysely-adapter.d.ts.map +1 -1
  72. package/dist/pkgs/db-adapters/adapters/kysely-adapter/tests/test-utils.d.ts +1 -1
  73. package/dist/pkgs/db-adapters/adapters/kysely-adapter/tests/test-utils.d.ts.map +1 -1
  74. package/dist/pkgs/db-adapters/adapters/memory-adapter/index.cjs +158 -170
  75. package/dist/pkgs/db-adapters/adapters/memory-adapter/index.js +157 -169
  76. package/dist/pkgs/db-adapters/adapters/memory-adapter/memory-adapter.d.ts +3 -0
  77. package/dist/pkgs/db-adapters/adapters/memory-adapter/memory-adapter.d.ts.map +1 -1
  78. package/dist/pkgs/db-adapters/adapters/prisma-adapter/index.cjs +243 -255
  79. package/dist/pkgs/db-adapters/adapters/prisma-adapter/index.d.ts +1 -1
  80. package/dist/pkgs/db-adapters/adapters/prisma-adapter/index.d.ts.map +1 -1
  81. package/dist/pkgs/db-adapters/adapters/prisma-adapter/index.js +241 -253
  82. package/dist/pkgs/db-adapters/adapters/prisma-adapter/prisma-adapter.d.ts +3 -0
  83. package/dist/pkgs/db-adapters/adapters/prisma-adapter/prisma-adapter.d.ts.map +1 -1
  84. package/dist/pkgs/db-adapters/index.cjs +714 -726
  85. package/dist/pkgs/db-adapters/index.d.ts +6 -6
  86. package/dist/pkgs/db-adapters/index.d.ts.map +1 -1
  87. package/dist/pkgs/db-adapters/index.js +708 -720
  88. package/dist/pkgs/migrations/get-migration.d.ts.map +1 -1
  89. package/dist/pkgs/migrations/get-schema/get-schema.d.ts.map +1 -1
  90. package/dist/pkgs/migrations/get-schema/process-tables.d.ts.map +1 -1
  91. package/dist/pkgs/migrations/index.cjs +236 -248
  92. package/dist/pkgs/migrations/index.d.ts +4 -4
  93. package/dist/pkgs/migrations/index.d.ts.map +1 -1
  94. package/dist/pkgs/migrations/index.js +235 -247
  95. package/dist/pkgs/results/index.cjs +67 -67
  96. package/dist/pkgs/results/index.d.ts +5 -5
  97. package/dist/pkgs/results/index.d.ts.map +1 -1
  98. package/dist/pkgs/results/index.js +67 -67
  99. package/dist/pkgs/results/orpc-error-handler.d.ts +1 -1
  100. package/dist/pkgs/results/orpc-error-handler.d.ts.map +1 -1
  101. package/dist/pkgs/types/index.d.ts +1 -2
  102. package/dist/pkgs/types/index.d.ts.map +1 -1
  103. package/dist/pkgs/types/options.d.ts +9 -2
  104. package/dist/pkgs/types/options.d.ts.map +1 -1
  105. package/dist/pkgs/utils/index.d.ts +1 -1
  106. package/dist/pkgs/utils/index.d.ts.map +1 -1
  107. package/dist/pkgs/utils/logger.d.ts +1 -1
  108. package/dist/pkgs/utils/logger.d.ts.map +1 -1
  109. package/dist/router.cjs +114 -117
  110. package/dist/router.d.ts +111 -678
  111. package/dist/router.d.ts.map +1 -1
  112. package/dist/router.js +114 -117
  113. package/dist/schema/audit-log/schema.d.ts +2 -24
  114. package/dist/schema/audit-log/schema.d.ts.map +1 -1
  115. package/dist/schema/audit-log/table.d.ts +2 -24
  116. package/dist/schema/audit-log/table.d.ts.map +1 -1
  117. package/dist/schema/consent/registry.d.ts +8 -8
  118. package/dist/schema/consent/schema.d.ts +9 -33
  119. package/dist/schema/consent/schema.d.ts.map +1 -1
  120. package/dist/schema/consent/table.d.ts +9 -33
  121. package/dist/schema/consent/table.d.ts.map +1 -1
  122. package/dist/schema/consent-policy/registry.d.ts +20 -20
  123. package/dist/schema/consent-policy/schema.d.ts +22 -30
  124. package/dist/schema/consent-policy/schema.d.ts.map +1 -1
  125. package/dist/schema/consent-policy/table.d.ts +13 -29
  126. package/dist/schema/consent-policy/table.d.ts.map +1 -1
  127. package/dist/schema/consent-purpose/registry.d.ts +6 -6
  128. package/dist/schema/consent-purpose/schema.d.ts +5 -27
  129. package/dist/schema/consent-purpose/schema.d.ts.map +1 -1
  130. package/dist/schema/consent-purpose/table.d.ts +5 -27
  131. package/dist/schema/consent-purpose/table.d.ts.map +1 -1
  132. package/dist/schema/consent-record/schema.d.ts +3 -19
  133. package/dist/schema/consent-record/schema.d.ts.map +1 -1
  134. package/dist/schema/consent-record/table.d.ts +3 -19
  135. package/dist/schema/consent-record/table.d.ts.map +1 -1
  136. package/dist/schema/create-registry.d.ts +58 -58
  137. package/dist/schema/definition.d.ts +42 -176
  138. package/dist/schema/definition.d.ts.map +1 -1
  139. package/dist/schema/domain/registry.d.ts +20 -20
  140. package/dist/schema/domain/schema.d.ts +6 -24
  141. package/dist/schema/domain/schema.d.ts.map +1 -1
  142. package/dist/schema/domain/table.d.ts +6 -24
  143. package/dist/schema/domain/table.d.ts.map +1 -1
  144. package/dist/schema/index.cjs +426 -438
  145. package/dist/schema/index.d.ts +12 -12
  146. package/dist/schema/index.d.ts.map +1 -1
  147. package/dist/schema/index.js +426 -438
  148. package/dist/schema/schemas.d.ts +42 -176
  149. package/dist/schema/schemas.d.ts.map +1 -1
  150. package/dist/schema/subject/registry.d.ts +4 -4
  151. package/dist/schema/subject/schema.d.ts +4 -20
  152. package/dist/schema/subject/schema.d.ts.map +1 -1
  153. package/dist/schema/subject/table.d.ts +4 -20
  154. package/dist/schema/subject/table.d.ts.map +1 -1
  155. package/dist/schema/types.d.ts +1 -1
  156. package/dist/schema/types.d.ts.map +1 -1
  157. package/dist/testing/contract-testing.d.ts +3 -2
  158. package/dist/testing/contract-testing.d.ts.map +1 -1
  159. package/dist/types/index.d.ts +5 -4
  160. package/dist/types/index.d.ts.map +1 -1
  161. package/dist/types/options.d.ts +2 -2
  162. package/dist/types/options.d.ts.map +1 -1
  163. package/dist/v2/contracts/consent/index.d.ts +260 -0
  164. package/dist/v2/contracts/consent/index.d.ts.map +1 -0
  165. package/dist/v2/contracts/consent/index.test.d.ts +2 -0
  166. package/dist/v2/contracts/consent/index.test.d.ts.map +1 -0
  167. package/dist/v2/contracts/consent/post.contract.d.ts +114 -0
  168. package/dist/v2/contracts/consent/post.contract.d.ts.map +1 -0
  169. package/dist/v2/contracts/consent/post.contract.test.d.ts +2 -0
  170. package/dist/v2/contracts/consent/post.contract.test.d.ts.map +1 -0
  171. package/dist/v2/contracts/consent/show-banner.contract.d.ts +68 -0
  172. package/dist/v2/contracts/consent/show-banner.contract.d.ts.map +1 -0
  173. package/dist/v2/contracts/consent/show-banner.contract.test.d.ts +2 -0
  174. package/dist/v2/contracts/consent/show-banner.contract.test.d.ts.map +1 -0
  175. package/dist/v2/contracts/consent/verify.contract.d.ts +81 -0
  176. package/dist/v2/contracts/consent/verify.contract.d.ts.map +1 -0
  177. package/dist/v2/contracts/consent/verify.contract.test.d.ts +2 -0
  178. package/dist/v2/contracts/consent/verify.contract.test.d.ts.map +1 -0
  179. package/dist/v2/contracts/index.cjs +644 -0
  180. package/dist/v2/contracts/index.d.ts +563 -0
  181. package/dist/v2/contracts/index.d.ts.map +1 -0
  182. package/dist/v2/contracts/index.js +607 -0
  183. package/dist/v2/contracts/meta/index.d.ts +19 -0
  184. package/dist/v2/contracts/meta/index.d.ts.map +1 -0
  185. package/dist/v2/contracts/meta/index.test.d.ts +2 -0
  186. package/dist/v2/contracts/meta/index.test.d.ts.map +1 -0
  187. package/dist/v2/contracts/meta/status.contract.d.ts +18 -0
  188. package/dist/v2/contracts/meta/status.contract.d.ts.map +1 -0
  189. package/dist/v2/contracts/meta/status.contract.test.d.ts +2 -0
  190. package/dist/v2/contracts/meta/status.contract.test.d.ts.map +1 -0
  191. package/dist/v2/contracts/shared/jurisdiction.schema.d.ts +36 -0
  192. package/dist/v2/contracts/shared/jurisdiction.schema.d.ts.map +1 -0
  193. package/dist/v2/contracts/test.utils.d.ts +38 -0
  194. package/dist/v2/contracts/test.utils.d.ts.map +1 -0
  195. package/dist/v2/core.cjs +2181 -0
  196. package/dist/v2/core.d.ts +364 -0
  197. package/dist/v2/core.d.ts.map +1 -0
  198. package/dist/v2/core.js +2130 -0
  199. package/dist/v2/db/adapters/drizzle.cjs +36 -0
  200. package/dist/v2/db/adapters/drizzle.d.ts +2 -0
  201. package/dist/v2/db/adapters/drizzle.d.ts.map +1 -0
  202. package/dist/v2/db/adapters/drizzle.js +3 -0
  203. package/dist/v2/db/adapters/index.cjs +18 -0
  204. package/dist/v2/db/adapters/index.d.ts +2 -0
  205. package/dist/v2/db/adapters/index.d.ts.map +1 -0
  206. package/dist/v2/db/adapters/index.js +0 -0
  207. package/dist/v2/db/adapters/kysely.cjs +36 -0
  208. package/dist/v2/db/adapters/kysely.d.ts +2 -0
  209. package/dist/v2/db/adapters/kysely.d.ts.map +1 -0
  210. package/dist/v2/db/adapters/kysely.js +3 -0
  211. package/dist/v2/db/adapters/mongo.cjs +36 -0
  212. package/dist/v2/db/adapters/mongo.d.ts +2 -0
  213. package/dist/v2/db/adapters/mongo.d.ts.map +1 -0
  214. package/dist/v2/db/adapters/mongo.js +3 -0
  215. package/dist/v2/db/adapters/prisma.cjs +36 -0
  216. package/dist/v2/db/adapters/prisma.d.ts +2 -0
  217. package/dist/v2/db/adapters/prisma.d.ts.map +1 -0
  218. package/dist/v2/db/adapters/prisma.js +3 -0
  219. package/dist/v2/db/adapters/typeorm.cjs +36 -0
  220. package/dist/v2/db/adapters/typeorm.d.ts +2 -0
  221. package/dist/v2/db/adapters/typeorm.d.ts.map +1 -0
  222. package/dist/v2/db/adapters/typeorm.js +3 -0
  223. package/dist/v2/db/migrator/index.cjs +61 -0
  224. package/dist/v2/db/migrator/index.d.ts +29 -0
  225. package/dist/v2/db/migrator/index.d.ts.map +1 -0
  226. package/dist/v2/db/migrator/index.js +27 -0
  227. package/dist/v2/db/registry/audit-log.d.ts +21 -0
  228. package/dist/v2/db/registry/audit-log.d.ts.map +1 -0
  229. package/dist/v2/db/registry/audit-log.test.d.ts +2 -0
  230. package/dist/v2/db/registry/audit-log.test.d.ts.map +1 -0
  231. package/dist/v2/db/registry/consent-policy.d.ts +29 -0
  232. package/dist/v2/db/registry/consent-policy.d.ts.map +1 -0
  233. package/dist/v2/db/registry/consent-policy.test.d.ts +2 -0
  234. package/dist/v2/db/registry/consent-policy.test.d.ts.map +1 -0
  235. package/dist/v2/db/registry/consent-purpose.d.ts +16 -0
  236. package/dist/v2/db/registry/consent-purpose.d.ts.map +1 -0
  237. package/dist/v2/db/registry/consent-purpose.test.d.ts +2 -0
  238. package/dist/v2/db/registry/consent-purpose.test.d.ts.map +1 -0
  239. package/dist/v2/db/registry/consent.d.ts +20 -0
  240. package/dist/v2/db/registry/consent.d.ts.map +1 -0
  241. package/dist/v2/db/registry/consent.test.d.ts +2 -0
  242. package/dist/v2/db/registry/consent.test.d.ts.map +1 -0
  243. package/dist/v2/db/registry/domain.d.ts +24 -0
  244. package/dist/v2/db/registry/domain.d.ts.map +1 -0
  245. package/dist/v2/db/registry/domain.test.d.ts +2 -0
  246. package/dist/v2/db/registry/domain.test.d.ts.map +1 -0
  247. package/dist/v2/db/registry/index.d.ts +102 -0
  248. package/dist/v2/db/registry/index.d.ts.map +1 -0
  249. package/dist/v2/db/registry/subject.d.ts +18 -0
  250. package/dist/v2/db/registry/subject.d.ts.map +1 -0
  251. package/dist/v2/db/registry/subject.test.d.ts +2 -0
  252. package/dist/v2/db/registry/subject.test.d.ts.map +1 -0
  253. package/dist/v2/db/registry/types.d.ts +10 -0
  254. package/dist/v2/db/registry/types.d.ts.map +1 -0
  255. package/dist/v2/db/registry/utils/generate-id.d.ts +25 -0
  256. package/dist/v2/db/registry/utils/generate-id.d.ts.map +1 -0
  257. package/dist/v2/db/registry/utils/generate-id.test.d.ts +2 -0
  258. package/dist/v2/db/registry/utils/generate-id.test.d.ts.map +1 -0
  259. package/dist/v2/db/registry/utils.d.ts +25 -0
  260. package/dist/v2/db/registry/utils.d.ts.map +1 -0
  261. package/dist/v2/db/schema/1.0.0/audit-log.d.ts +29 -0
  262. package/dist/v2/db/schema/1.0.0/audit-log.d.ts.map +1 -0
  263. package/dist/v2/db/schema/1.0.0/consent-policy.d.ts +45 -0
  264. package/dist/v2/db/schema/1.0.0/consent-policy.d.ts.map +1 -0
  265. package/dist/v2/db/schema/1.0.0/consent-purpose.d.ts +27 -0
  266. package/dist/v2/db/schema/1.0.0/consent-purpose.d.ts.map +1 -0
  267. package/dist/v2/db/schema/1.0.0/consent-record.d.ts +19 -0
  268. package/dist/v2/db/schema/1.0.0/consent-record.d.ts.map +1 -0
  269. package/dist/v2/db/schema/1.0.0/consent.d.ts +42 -0
  270. package/dist/v2/db/schema/1.0.0/consent.d.ts.map +1 -0
  271. package/dist/v2/db/schema/1.0.0/domain.d.ts +23 -0
  272. package/dist/v2/db/schema/1.0.0/domain.d.ts.map +1 -0
  273. package/dist/v2/db/schema/1.0.0/index.d.ts +1513 -0
  274. package/dist/v2/db/schema/1.0.0/index.d.ts.map +1 -0
  275. package/dist/v2/db/schema/1.0.0/subject.d.ts +23 -0
  276. package/dist/v2/db/schema/1.0.0/subject.d.ts.map +1 -0
  277. package/dist/v2/db/schema/index.cjs +326 -0
  278. package/dist/v2/db/schema/index.d.ts +1507 -0
  279. package/dist/v2/db/schema/index.d.ts.map +1 -0
  280. package/dist/v2/db/schema/index.js +241 -0
  281. package/dist/v2/define-config.cjs +36 -0
  282. package/dist/v2/define-config.d.ts +5 -0
  283. package/dist/v2/define-config.d.ts.map +1 -0
  284. package/dist/v2/define-config.js +2 -0
  285. package/dist/v2/handlers/consent/index.d.ts +260 -0
  286. package/dist/v2/handlers/consent/index.d.ts.map +1 -0
  287. package/dist/v2/handlers/consent/post.handler.d.ts +136 -0
  288. package/dist/v2/handlers/consent/post.handler.d.ts.map +1 -0
  289. package/dist/v2/handlers/consent/show-banner/geo.d.ts +10 -0
  290. package/dist/v2/handlers/consent/show-banner/geo.d.ts.map +1 -0
  291. package/dist/v2/handlers/consent/show-banner/geo.test.d.ts +2 -0
  292. package/dist/v2/handlers/consent/show-banner/geo.test.d.ts.map +1 -0
  293. package/dist/v2/handlers/consent/show-banner/handler.d.ts +71 -0
  294. package/dist/v2/handlers/consent/show-banner/handler.d.ts.map +1 -0
  295. package/dist/v2/handlers/consent/show-banner/handler.test.d.ts +2 -0
  296. package/dist/v2/handlers/consent/show-banner/handler.test.d.ts.map +1 -0
  297. package/dist/v2/handlers/consent/show-banner/translations.d.ts +13 -0
  298. package/dist/v2/handlers/consent/show-banner/translations.d.ts.map +1 -0
  299. package/dist/v2/handlers/consent/show-banner/translations.test.d.ts +2 -0
  300. package/dist/v2/handlers/consent/show-banner/translations.test.d.ts.map +1 -0
  301. package/dist/v2/handlers/consent/verify.handler.d.ts +103 -0
  302. package/dist/v2/handlers/consent/verify.handler.d.ts.map +1 -0
  303. package/dist/v2/handlers/meta/index.d.ts +19 -0
  304. package/dist/v2/handlers/meta/index.d.ts.map +1 -0
  305. package/dist/v2/handlers/meta/status.handler.d.ts +17 -0
  306. package/dist/v2/handlers/meta/status.handler.d.ts.map +1 -0
  307. package/dist/v2/init.d.ts +3 -0
  308. package/dist/v2/init.d.ts.map +1 -0
  309. package/dist/v2/init.test.d.ts +2 -0
  310. package/dist/v2/init.test.d.ts.map +1 -0
  311. package/dist/v2/middleware/cors/cors.d.ts +37 -0
  312. package/dist/v2/middleware/cors/cors.d.ts.map +1 -0
  313. package/dist/v2/middleware/cors/cors.test.d.ts +2 -0
  314. package/dist/v2/middleware/cors/cors.test.d.ts.map +1 -0
  315. package/dist/v2/middleware/cors/index.d.ts +30 -0
  316. package/dist/v2/middleware/cors/index.d.ts.map +1 -0
  317. package/dist/v2/middleware/cors/is-origin-trusted.d.ts +49 -0
  318. package/dist/v2/middleware/cors/is-origin-trusted.d.ts.map +1 -0
  319. package/dist/v2/middleware/cors/is-origin-trusted.test.d.ts +2 -0
  320. package/dist/v2/middleware/cors/is-origin-trusted.test.d.ts.map +1 -0
  321. package/dist/v2/middleware/cors/process-cors.d.ts +31 -0
  322. package/dist/v2/middleware/cors/process-cors.d.ts.map +1 -0
  323. package/dist/v2/middleware/openapi/config.d.ts +28 -0
  324. package/dist/v2/middleware/openapi/config.d.ts.map +1 -0
  325. package/dist/v2/middleware/openapi/handlers.d.ts +29 -0
  326. package/dist/v2/middleware/openapi/handlers.d.ts.map +1 -0
  327. package/dist/v2/middleware/openapi/index.d.ts +11 -0
  328. package/dist/v2/middleware/openapi/index.d.ts.map +1 -0
  329. package/dist/v2/middleware/process-ip/index.d.ts +3 -0
  330. package/dist/v2/middleware/process-ip/index.d.ts.map +1 -0
  331. package/dist/v2/router.cjs +1275 -0
  332. package/dist/v2/router.d.ts +280 -0
  333. package/dist/v2/router.d.ts.map +1 -0
  334. package/dist/v2/router.js +1231 -0
  335. package/dist/v2/types/api.d.ts +27 -0
  336. package/dist/v2/types/api.d.ts.map +1 -0
  337. package/dist/v2/types/index.cjs +40 -0
  338. package/dist/v2/types/index.d.ts +104 -0
  339. package/dist/v2/types/index.d.ts.map +1 -0
  340. package/dist/v2/types/index.js +6 -0
  341. package/dist/v2/utils/create-telemetry-options.d.ts +28 -0
  342. package/dist/v2/utils/create-telemetry-options.d.ts.map +1 -0
  343. package/dist/v2/utils/env.d.ts +60 -0
  344. package/dist/v2/utils/env.d.ts.map +1 -0
  345. package/dist/v2/utils/index.d.ts +3 -0
  346. package/dist/v2/utils/index.d.ts.map +1 -0
  347. package/dist/v2/utils/logger.d.ts +16 -0
  348. package/dist/v2/utils/logger.d.ts.map +1 -0
  349. package/dist/version.d.ts +1 -1
  350. package/package.json +106 -15
  351. package/readme.json +30 -0
  352. package/rslib.config.ts +13 -14
  353. package/src/__tests__/server.test.ts +1 -1
  354. package/src/contracts/consent/post.contract.test.ts +3 -8
  355. package/src/contracts/consent/post.contract.ts +13 -13
  356. package/src/contracts/consent/show-banner.contract.test.ts +9 -0
  357. package/src/contracts/consent/show-banner.contract.ts +2 -0
  358. package/src/contracts/consent/verify.contract.ts +19 -23
  359. package/src/core.ts +7 -0
  360. package/src/handlers/consent/show-banner/handler.ts +12 -9
  361. package/src/handlers/consent/show-banner/translations.ts +2 -2
  362. package/src/init.ts +9 -6
  363. package/src/middleware/openapi/index.ts +2 -2
  364. package/src/pkgs/api-router/hooks/__tests__/processor.test.ts +1 -1
  365. package/src/pkgs/data-model/fields/index.ts +17 -22
  366. package/src/pkgs/data-model/fields/zod-fields.ts +14 -26
  367. package/src/pkgs/data-model/hooks/index.ts +3 -2
  368. package/src/pkgs/data-model/index.ts +2 -4
  369. package/src/pkgs/data-model/schema/index.ts +6 -7
  370. package/src/pkgs/data-model/schema/schemas.ts +3 -3
  371. package/src/pkgs/db-adapters/adapters/drizzle-adapter/drizzle-adapter.ts +4 -1
  372. package/src/pkgs/db-adapters/adapters/index.ts +2 -2
  373. package/src/pkgs/db-adapters/adapters/kysely-adapter/index.ts +4 -4
  374. package/src/pkgs/db-adapters/adapters/kysely-adapter/kysely-adapter.ts +4 -5
  375. package/src/pkgs/db-adapters/adapters/kysely-adapter/tests/postgres.test.ts +2 -4
  376. package/src/pkgs/db-adapters/adapters/kysely-adapter/tests/sqlite.test.ts +2 -3
  377. package/src/pkgs/db-adapters/adapters/kysely-adapter/tests/test-utils.ts +1 -6
  378. package/src/pkgs/db-adapters/adapters/memory-adapter/memory-adapter.ts +4 -1
  379. package/src/pkgs/db-adapters/adapters/prisma-adapter/index.ts +1 -1
  380. package/src/pkgs/db-adapters/adapters/prisma-adapter/prisma-adapter.ts +5 -2
  381. package/src/pkgs/db-adapters/index.ts +12 -13
  382. package/src/pkgs/migrations/get-migration.ts +4 -2
  383. package/src/pkgs/migrations/get-schema/get-schema.ts +0 -1
  384. package/src/pkgs/migrations/get-schema/process-fields.ts +1 -1
  385. package/src/pkgs/migrations/get-schema/process-tables.ts +0 -2
  386. package/src/pkgs/migrations/index.ts +7 -8
  387. package/src/pkgs/results/__tests__/error-codes.test.ts +2 -2
  388. package/src/pkgs/results/index.ts +22 -27
  389. package/src/pkgs/results/orpc-error-handler.ts +1 -1
  390. package/src/pkgs/results/results/result-helpers.ts +1 -1
  391. package/src/pkgs/types/index.ts +4 -4
  392. package/src/pkgs/types/options.ts +10 -3
  393. package/src/pkgs/utils/index.ts +1 -1
  394. package/src/pkgs/utils/logger.ts +1 -1
  395. package/src/schema/audit-log/schema.ts +3 -3
  396. package/src/schema/consent/schema.ts +4 -4
  397. package/src/schema/consent-policy/schema.ts +3 -3
  398. package/src/schema/consent-purpose/schema.ts +4 -4
  399. package/src/schema/consent-record/schema.ts +3 -3
  400. package/src/schema/definition.ts +1 -1
  401. package/src/schema/domain/schema.ts +5 -5
  402. package/src/schema/index.ts +14 -17
  403. package/src/schema/subject/schema.ts +3 -3
  404. package/src/schema/types.ts +1 -1
  405. package/src/testing/contract-testing.ts +15 -52
  406. package/src/types/index.ts +8 -8
  407. package/src/types/options.ts +2 -3
  408. package/src/v2/contracts/consent/index.test.ts +5 -0
  409. package/src/v2/contracts/consent/index.ts +9 -0
  410. package/src/v2/contracts/consent/post.contract.test.ts +521 -0
  411. package/src/v2/contracts/consent/post.contract.ts +155 -0
  412. package/src/v2/contracts/consent/show-banner.contract.test.ts +252 -0
  413. package/src/v2/contracts/consent/show-banner.contract.ts +73 -0
  414. package/src/v2/contracts/consent/verify.contract.test.ts +185 -0
  415. package/src/v2/contracts/consent/verify.contract.ts +122 -0
  416. package/src/v2/contracts/index.ts +20 -0
  417. package/src/v2/contracts/meta/index.test.ts +5 -0
  418. package/src/v2/contracts/meta/index.ts +5 -0
  419. package/src/v2/contracts/meta/status.contract.test.ts +226 -0
  420. package/src/v2/contracts/meta/status.contract.ts +34 -0
  421. package/src/v2/contracts/shared/jurisdiction.schema.ts +30 -0
  422. package/src/v2/contracts/test.utils.ts +400 -0
  423. package/src/v2/core.ts +379 -0
  424. package/src/v2/db/adapters/drizzle.ts +1 -0
  425. package/src/v2/db/adapters/index.ts +1 -0
  426. package/src/v2/db/adapters/kysely.ts +1 -0
  427. package/src/v2/db/adapters/mongo.ts +1 -0
  428. package/src/v2/db/adapters/prisma.ts +1 -0
  429. package/src/v2/db/adapters/typeorm.ts +1 -0
  430. package/src/v2/db/migrator/index.ts +80 -0
  431. package/src/v2/db/registry/audit-log.test.ts +77 -0
  432. package/src/v2/db/registry/audit-log.ts +46 -0
  433. package/src/v2/db/registry/consent-policy.test.ts +778 -0
  434. package/src/v2/db/registry/consent-policy.ts +74 -0
  435. package/src/v2/db/registry/consent-purpose.test.ts +485 -0
  436. package/src/v2/db/registry/consent-purpose.ts +41 -0
  437. package/src/v2/db/registry/consent.test.ts +843 -0
  438. package/src/v2/db/registry/consent.ts +42 -0
  439. package/src/v2/db/registry/domain.test.ts +463 -0
  440. package/src/v2/db/registry/domain.ts +51 -0
  441. package/src/v2/db/registry/index.ts +18 -0
  442. package/src/v2/db/registry/subject.test.ts +497 -0
  443. package/src/v2/db/registry/subject.ts +101 -0
  444. package/src/v2/db/registry/types.ts +10 -0
  445. package/src/v2/db/registry/utils/generate-id.test.ts +217 -0
  446. package/src/v2/db/registry/utils/generate-id.ts +134 -0
  447. package/src/v2/db/registry/utils.ts +134 -0
  448. package/src/v2/db/schema/1.0.0/audit-log.ts +32 -0
  449. package/src/v2/db/schema/1.0.0/consent-policy.ts +41 -0
  450. package/src/v2/db/schema/1.0.0/consent-purpose.ts +30 -0
  451. package/src/v2/db/schema/1.0.0/consent-record.ts +22 -0
  452. package/src/v2/db/schema/1.0.0/consent.ts +38 -0
  453. package/src/v2/db/schema/1.0.0/domain.ts +26 -0
  454. package/src/v2/db/schema/1.0.0/index.ts +56 -0
  455. package/src/v2/db/schema/1.0.0/subject.ts +26 -0
  456. package/src/v2/db/schema/index.ts +9 -0
  457. package/src/v2/define-config.ts +5 -0
  458. package/src/v2/handlers/consent/index.ts +9 -0
  459. package/src/v2/handlers/consent/post.handler.ts +254 -0
  460. package/src/v2/handlers/consent/show-banner/geo.test.ts +281 -0
  461. package/src/v2/handlers/consent/show-banner/geo.ts +96 -0
  462. package/src/v2/handlers/consent/show-banner/handler.test.ts +374 -0
  463. package/src/v2/handlers/consent/show-banner/handler.ts +123 -0
  464. package/src/v2/handlers/consent/show-banner/translations.test.ts +121 -0
  465. package/src/v2/handlers/consent/show-banner/translations.ts +79 -0
  466. package/src/v2/handlers/consent/verify.handler.ts +288 -0
  467. package/src/v2/handlers/meta/index.ts +5 -0
  468. package/src/v2/handlers/meta/status.handler.ts +43 -0
  469. package/src/v2/init.test.ts +114 -0
  470. package/src/v2/init.ts +126 -0
  471. package/src/v2/middleware/cors/cors.test.ts +111 -0
  472. package/src/v2/middleware/cors/cors.ts +192 -0
  473. package/src/v2/middleware/cors/index.ts +30 -0
  474. package/src/v2/middleware/cors/is-origin-trusted.test.ts +104 -0
  475. package/src/v2/middleware/cors/is-origin-trusted.ts +126 -0
  476. package/src/v2/middleware/cors/process-cors.ts +91 -0
  477. package/src/v2/middleware/openapi/config.ts +27 -0
  478. package/src/v2/middleware/openapi/handlers.ts +132 -0
  479. package/src/v2/middleware/openapi/index.ts +11 -0
  480. package/src/v2/middleware/process-ip/index.ts +39 -0
  481. package/src/v2/router.ts +8 -0
  482. package/src/v2/types/api.ts +32 -0
  483. package/src/v2/types/index.ts +121 -0
  484. package/src/v2/utils/create-telemetry-options.ts +115 -0
  485. package/src/v2/utils/env.ts +84 -0
  486. package/src/v2/utils/index.ts +2 -0
  487. package/src/v2/utils/logger.ts +38 -0
  488. package/src/version.ts +1 -1
  489. package/vitest.config.ts +11 -2
package/dist/router.cjs CHANGED
@@ -42,32 +42,20 @@ const external_base_x_namespaceObject = require("base-x");
42
42
  var external_base_x_default = /*#__PURE__*/ __webpack_require__.n(external_base_x_namespaceObject);
43
43
  external_base_x_default()('123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz');
44
44
  const fieldConfigSchema = external_zod_namespaceObject.z.object({
45
- required: external_zod_namespaceObject.z.boolean().default(true),
46
- returned: external_zod_namespaceObject.z.boolean().default(true),
47
- input: external_zod_namespaceObject.z.boolean().default(true),
48
- defaultValue: external_zod_namespaceObject.z.union([
49
- external_zod_namespaceObject.z.any(),
50
- external_zod_namespaceObject.z["function"]().returns(external_zod_namespaceObject.z.any())
51
- ]).optional(),
45
+ required: external_zod_namespaceObject.z.boolean().prefault(true),
46
+ returned: external_zod_namespaceObject.z.boolean().prefault(true),
47
+ input: external_zod_namespaceObject.z.boolean().prefault(true),
48
+ defaultValue: external_zod_namespaceObject.z.any().optional(),
52
49
  transform: external_zod_namespaceObject.z.object({
53
- input: external_zod_namespaceObject.z["function"]().args(external_zod_namespaceObject.z.any()).returns(external_zod_namespaceObject.z.union([
54
- external_zod_namespaceObject.z.any(),
55
- external_zod_namespaceObject.z.promise(external_zod_namespaceObject.z.any())
56
- ])).optional(),
57
- output: external_zod_namespaceObject.z["function"]().args(external_zod_namespaceObject.z.any()).returns(external_zod_namespaceObject.z.union([
58
- external_zod_namespaceObject.z.any(),
59
- external_zod_namespaceObject.z.promise(external_zod_namespaceObject.z.any())
60
- ])).optional()
50
+ input: external_zod_namespaceObject.z.any().optional(),
51
+ output: external_zod_namespaceObject.z.any().optional()
61
52
  }).optional(),
62
- validator: external_zod_namespaceObject.z["function"]().args(external_zod_namespaceObject.z.any()).returns(external_zod_namespaceObject.z.union([
63
- external_zod_namespaceObject.z.string(),
64
- external_zod_namespaceObject.z["null"]()
65
- ])).optional(),
53
+ validator: external_zod_namespaceObject.z.any().optional(),
66
54
  unique: external_zod_namespaceObject.z.boolean().optional(),
67
55
  indexed: external_zod_namespaceObject.z.boolean().optional(),
68
- sortable: external_zod_namespaceObject.z.boolean().default(true),
56
+ sortable: external_zod_namespaceObject.z.boolean().prefault(true),
69
57
  fieldName: external_zod_namespaceObject.z.string().optional(),
70
- bigint: external_zod_namespaceObject.z.boolean().default(false)
58
+ bigint: external_zod_namespaceObject.z.boolean().prefault(false)
71
59
  });
72
60
  const stringFieldSchema = fieldConfigSchema.extend({
73
61
  type: external_zod_namespaceObject.z.literal('string'),
@@ -87,18 +75,18 @@ const dateFieldSchema = fieldConfigSchema.extend({
87
75
  type: external_zod_namespaceObject.z.literal('date'),
88
76
  minDate: external_zod_namespaceObject.z.date().optional(),
89
77
  maxDate: external_zod_namespaceObject.z.date().optional(),
90
- dateOnly: external_zod_namespaceObject.z.boolean().default(false),
91
- format: external_zod_namespaceObject.z.record(external_zod_namespaceObject.z.unknown()).optional()
78
+ dateOnly: external_zod_namespaceObject.z.boolean().prefault(false),
79
+ format: external_zod_namespaceObject.z.record(external_zod_namespaceObject.z.string(), external_zod_namespaceObject.z.unknown()).optional()
92
80
  });
93
81
  const timezoneFieldSchema = fieldConfigSchema.extend({
94
82
  type: external_zod_namespaceObject.z.literal('timezone'),
95
- validateTimezone: external_zod_namespaceObject.z.boolean().default(true),
83
+ validateTimezone: external_zod_namespaceObject.z.boolean().prefault(true),
96
84
  suggestedValues: external_zod_namespaceObject.z.array(external_zod_namespaceObject.z.string()).optional(),
97
- restrictToSuggestedValues: external_zod_namespaceObject.z.boolean().default(false)
85
+ restrictToSuggestedValues: external_zod_namespaceObject.z.boolean().prefault(false)
98
86
  });
99
87
  const jsonFieldSchema = fieldConfigSchema.extend({
100
88
  type: external_zod_namespaceObject.z.literal('json'),
101
- validateJson: external_zod_namespaceObject.z.boolean().default(true)
89
+ validateJson: external_zod_namespaceObject.z.boolean().prefault(true)
102
90
  });
103
91
  const stringArrayFieldSchema = fieldConfigSchema.extend({
104
92
  type: external_zod_namespaceObject.z.literal('string[]')
@@ -274,9 +262,28 @@ external_zod_namespaceObject.z.object({
274
262
  subjectId: external_zod_namespaceObject.z.string().optional(),
275
263
  ipAddress: external_zod_namespaceObject.z.string().optional(),
276
264
  userAgent: external_zod_namespaceObject.z.string().optional(),
277
- changes: external_zod_namespaceObject.z.record(external_zod_namespaceObject.z.unknown()).optional(),
278
- metadata: external_zod_namespaceObject.z.record(external_zod_namespaceObject.z.unknown()).optional(),
279
- createdAt: external_zod_namespaceObject.z.date().default(()=>new Date())
265
+ changes: external_zod_namespaceObject.z.record(external_zod_namespaceObject.z.string(), external_zod_namespaceObject.z.unknown()).optional(),
266
+ metadata: external_zod_namespaceObject.z.record(external_zod_namespaceObject.z.string(), external_zod_namespaceObject.z.unknown()).optional(),
267
+ createdAt: external_zod_namespaceObject.z.date().prefault(()=>new Date())
268
+ });
269
+ external_zod_namespaceObject.z.object({
270
+ id: external_zod_namespaceObject.z.string(),
271
+ subjectId: external_zod_namespaceObject.z.string(),
272
+ domainId: external_zod_namespaceObject.z.string(),
273
+ purposeIds: external_zod_namespaceObject.z.array(external_zod_namespaceObject.z.string()),
274
+ metadata: external_zod_namespaceObject.z.record(external_zod_namespaceObject.z.string(), external_zod_namespaceObject.z.unknown()).nullable().optional(),
275
+ policyId: external_zod_namespaceObject.z.string().optional(),
276
+ ipAddress: external_zod_namespaceObject.z.string().nullable().optional(),
277
+ userAgent: external_zod_namespaceObject.z.string().nullable().optional(),
278
+ status: external_zod_namespaceObject.z["enum"]([
279
+ 'active',
280
+ 'withdrawn',
281
+ 'expired'
282
+ ]).prefault('active'),
283
+ withdrawalReason: external_zod_namespaceObject.z.string().nullable().optional(),
284
+ givenAt: external_zod_namespaceObject.z.date().prefault(()=>new Date()),
285
+ validUntil: external_zod_namespaceObject.z.date().nullable().optional(),
286
+ isActive: external_zod_namespaceObject.z.boolean().prefault(true)
280
287
  });
281
288
  const PolicyTypeSchema = external_zod_namespaceObject.z["enum"]([
282
289
  'cookie_banner',
@@ -296,79 +303,60 @@ external_zod_namespaceObject.z.object({
296
303
  expirationDate: external_zod_namespaceObject.z.date().nullable().optional(),
297
304
  content: external_zod_namespaceObject.z.string(),
298
305
  contentHash: external_zod_namespaceObject.z.string(),
299
- isActive: external_zod_namespaceObject.z.boolean().default(true),
300
- createdAt: external_zod_namespaceObject.z.date().default(()=>new Date()),
301
- updatedAt: external_zod_namespaceObject.z.date().default(()=>new Date())
306
+ isActive: external_zod_namespaceObject.z.boolean().prefault(true),
307
+ createdAt: external_zod_namespaceObject.z.date().prefault(()=>new Date()),
308
+ updatedAt: external_zod_namespaceObject.z.date().prefault(()=>new Date())
302
309
  });
303
310
  external_zod_namespaceObject.z.object({
304
311
  id: external_zod_namespaceObject.z.string(),
305
312
  code: external_zod_namespaceObject.z.string(),
306
313
  name: external_zod_namespaceObject.z.string(),
307
314
  description: external_zod_namespaceObject.z.string(),
308
- isEssential: external_zod_namespaceObject.z.boolean().default(false),
315
+ isEssential: external_zod_namespaceObject.z.boolean().prefault(false),
309
316
  dataCategory: external_zod_namespaceObject.z.string().nullish(),
310
317
  legalBasis: external_zod_namespaceObject.z.string().nullish(),
311
- isActive: external_zod_namespaceObject.z.boolean().default(true),
312
- createdAt: external_zod_namespaceObject.z.date().default(()=>new Date()),
313
- updatedAt: external_zod_namespaceObject.z.date().default(()=>new Date())
318
+ isActive: external_zod_namespaceObject.z.boolean().prefault(true),
319
+ createdAt: external_zod_namespaceObject.z.date().prefault(()=>new Date()),
320
+ updatedAt: external_zod_namespaceObject.z.date().prefault(()=>new Date())
314
321
  });
315
322
  external_zod_namespaceObject.z.object({
316
323
  id: external_zod_namespaceObject.z.string(),
317
324
  subjectId: external_zod_namespaceObject.z.string(),
318
325
  consentId: external_zod_namespaceObject.z.string().optional(),
319
326
  actionType: external_zod_namespaceObject.z.string(),
320
- details: external_zod_namespaceObject.z.record(external_zod_namespaceObject.z.unknown()).optional(),
321
- createdAt: external_zod_namespaceObject.z.date().default(()=>new Date()),
322
- updatedAt: external_zod_namespaceObject.z.date().default(()=>new Date())
323
- });
324
- external_zod_namespaceObject.z.object({
325
- id: external_zod_namespaceObject.z.string(),
326
- subjectId: external_zod_namespaceObject.z.string(),
327
- domainId: external_zod_namespaceObject.z.string(),
328
- purposeIds: external_zod_namespaceObject.z.array(external_zod_namespaceObject.z.string()),
329
- metadata: external_zod_namespaceObject.z.record(external_zod_namespaceObject.z.unknown()).nullable().optional(),
330
- policyId: external_zod_namespaceObject.z.string().optional(),
331
- ipAddress: external_zod_namespaceObject.z.string().nullable().optional(),
332
- userAgent: external_zod_namespaceObject.z.string().nullable().optional(),
333
- status: external_zod_namespaceObject.z["enum"]([
334
- 'active',
335
- 'withdrawn',
336
- 'expired'
337
- ]).default('active'),
338
- withdrawalReason: external_zod_namespaceObject.z.string().nullable().optional(),
339
- givenAt: external_zod_namespaceObject.z.date().default(()=>new Date()),
340
- validUntil: external_zod_namespaceObject.z.date().nullable().optional(),
341
- isActive: external_zod_namespaceObject.z.boolean().default(true)
327
+ details: external_zod_namespaceObject.z.record(external_zod_namespaceObject.z.string(), external_zod_namespaceObject.z.unknown()).optional(),
328
+ createdAt: external_zod_namespaceObject.z.date().prefault(()=>new Date()),
329
+ updatedAt: external_zod_namespaceObject.z.date().prefault(()=>new Date())
342
330
  });
343
331
  external_zod_namespaceObject.z.object({
344
332
  id: external_zod_namespaceObject.z.string(),
345
333
  name: external_zod_namespaceObject.z.string().min(1),
346
334
  description: external_zod_namespaceObject.z.string().optional(),
347
- allowedOrigins: external_zod_namespaceObject.z.array(external_zod_namespaceObject.z.string()).optional().default([]),
348
- isVerified: external_zod_namespaceObject.z.boolean().default(true),
349
- isActive: external_zod_namespaceObject.z.boolean().default(true),
350
- createdAt: external_zod_namespaceObject.z.date().default(()=>new Date()),
351
- updatedAt: external_zod_namespaceObject.z.date().default(()=>new Date())
335
+ allowedOrigins: external_zod_namespaceObject.z.array(external_zod_namespaceObject.z.string()).optional().prefault([]),
336
+ isVerified: external_zod_namespaceObject.z.boolean().prefault(true),
337
+ isActive: external_zod_namespaceObject.z.boolean().prefault(true),
338
+ createdAt: external_zod_namespaceObject.z.date().prefault(()=>new Date()),
339
+ updatedAt: external_zod_namespaceObject.z.date().prefault(()=>new Date())
352
340
  });
353
341
  external_zod_namespaceObject.z.object({
354
342
  id: external_zod_namespaceObject.z.string(),
355
- isIdentified: external_zod_namespaceObject.z.boolean().default(false),
343
+ isIdentified: external_zod_namespaceObject.z.boolean().prefault(false),
356
344
  externalId: external_zod_namespaceObject.z.string().nullable().optional(),
357
345
  identityProvider: external_zod_namespaceObject.z.string().optional(),
358
346
  lastIpAddress: external_zod_namespaceObject.z.string().optional(),
359
- createdAt: external_zod_namespaceObject.z.date().default(()=>new Date()),
360
- updatedAt: external_zod_namespaceObject.z.date().default(()=>new Date())
347
+ createdAt: external_zod_namespaceObject.z.date().prefault(()=>new Date()),
348
+ updatedAt: external_zod_namespaceObject.z.date().prefault(()=>new Date())
361
349
  });
362
350
  const baseConsentSchema = external_zod_namespaceObject.z.object({
363
351
  subjectId: external_zod_namespaceObject.z.string().optional(),
364
352
  externalSubjectId: external_zod_namespaceObject.z.string().optional(),
365
353
  domain: external_zod_namespaceObject.z.string(),
366
354
  type: PolicyTypeSchema,
367
- metadata: external_zod_namespaceObject.z.record(external_zod_namespaceObject.z.unknown()).optional()
355
+ metadata: external_zod_namespaceObject.z.record(external_zod_namespaceObject.z.string(), external_zod_namespaceObject.z.unknown()).optional()
368
356
  });
369
357
  const cookieBannerSchema = baseConsentSchema.extend({
370
358
  type: external_zod_namespaceObject.z.literal('cookie_banner'),
371
- preferences: external_zod_namespaceObject.z.record(external_zod_namespaceObject.z.boolean())
359
+ preferences: external_zod_namespaceObject.z.record(external_zod_namespaceObject.z.string(), external_zod_namespaceObject.z.boolean())
372
360
  });
373
361
  const policyBasedSchema = baseConsentSchema.extend({
374
362
  type: external_zod_namespaceObject.z["enum"]([
@@ -377,7 +365,7 @@ const policyBasedSchema = baseConsentSchema.extend({
377
365
  'terms_and_conditions'
378
366
  ]),
379
367
  policyId: external_zod_namespaceObject.z.string().optional(),
380
- preferences: external_zod_namespaceObject.z.record(external_zod_namespaceObject.z.boolean()).optional()
368
+ preferences: external_zod_namespaceObject.z.record(external_zod_namespaceObject.z.string(), external_zod_namespaceObject.z.boolean()).optional()
381
369
  });
382
370
  const otherConsentSchema = baseConsentSchema.extend({
383
371
  type: external_zod_namespaceObject.z["enum"]([
@@ -385,7 +373,7 @@ const otherConsentSchema = baseConsentSchema.extend({
385
373
  'age_verification',
386
374
  'other'
387
375
  ]),
388
- preferences: external_zod_namespaceObject.z.record(external_zod_namespaceObject.z.boolean()).optional()
376
+ preferences: external_zod_namespaceObject.z.record(external_zod_namespaceObject.z.string(), external_zod_namespaceObject.z.boolean()).optional()
389
377
  });
390
378
  const postConsentContract = contract_namespaceObject.oc.route({
391
379
  method: 'POST',
@@ -424,64 +412,64 @@ Use this endpoint to record user consent and maintain a compliant consent manage
424
412
  }).errors({
425
413
  INPUT_VALIDATION_FAILED: {
426
414
  status: 422,
427
- message: 'Invalid input parameters',
428
415
  data: external_zod_namespaceObject.z.object({
429
416
  formErrors: external_zod_namespaceObject.z.array(external_zod_namespaceObject.z.string()),
430
417
  fieldErrors: external_zod_namespaceObject.z.record(external_zod_namespaceObject.z.string(), external_zod_namespaceObject.z.array(external_zod_namespaceObject.z.string()))
431
- })
418
+ }),
419
+ error: 'Invalid input parameters'
432
420
  },
433
421
  SUBJECT_CREATION_FAILED: {
434
422
  status: 400,
435
- message: 'Failed to create or find subject',
436
423
  data: external_zod_namespaceObject.z.object({
437
424
  subjectId: external_zod_namespaceObject.z.string().optional(),
438
425
  externalSubjectId: external_zod_namespaceObject.z.string().optional()
439
- })
426
+ }),
427
+ error: 'Failed to create or find subject'
440
428
  },
441
429
  DOMAIN_CREATION_FAILED: {
442
430
  status: 500,
443
- message: 'Failed to create or find domain',
444
431
  data: external_zod_namespaceObject.z.object({
445
432
  domain: external_zod_namespaceObject.z.string()
446
- })
433
+ }),
434
+ error: 'Failed to create or find domain'
447
435
  },
448
436
  POLICY_NOT_FOUND: {
449
437
  status: 404,
450
- message: 'Policy not found',
451
438
  data: external_zod_namespaceObject.z.object({
452
439
  policyId: external_zod_namespaceObject.z.string(),
453
440
  type: external_zod_namespaceObject.z.string()
454
- })
441
+ }),
442
+ error: 'Policy not found'
455
443
  },
456
444
  POLICY_INACTIVE: {
457
445
  status: 409,
458
- message: 'Policy is not active',
459
446
  data: external_zod_namespaceObject.z.object({
460
447
  policyId: external_zod_namespaceObject.z.string(),
461
448
  type: external_zod_namespaceObject.z.string()
462
- })
449
+ }),
450
+ error: 'Policy is not active'
463
451
  },
464
452
  POLICY_CREATION_FAILED: {
465
453
  status: 500,
466
- message: 'Failed to create or find policy',
467
454
  data: external_zod_namespaceObject.z.object({
468
455
  type: external_zod_namespaceObject.z.string()
469
- })
456
+ }),
457
+ error: 'Failed to create or find policy'
470
458
  },
471
459
  PURPOSE_CREATION_FAILED: {
472
460
  status: 500,
473
- message: 'Failed to create consent purpose',
474
461
  data: external_zod_namespaceObject.z.object({
475
462
  purposeCode: external_zod_namespaceObject.z.string()
476
- })
463
+ }),
464
+ error: 'Failed to create consent purpose'
477
465
  },
478
466
  CONSENT_CREATION_FAILED: {
479
467
  status: 500,
480
- message: 'Failed to create consent record',
481
468
  data: external_zod_namespaceObject.z.object({
482
469
  subjectId: external_zod_namespaceObject.z.string(),
483
470
  domain: external_zod_namespaceObject.z.string()
484
- })
471
+ }),
472
+ error: 'Failed to create consent record'
485
473
  }
486
474
  }).input(external_zod_namespaceObject.z.discriminatedUnion('type', [
487
475
  cookieBannerSchema,
@@ -496,9 +484,14 @@ Use this endpoint to record user consent and maintain a compliant consent manage
496
484
  type: PolicyTypeSchema,
497
485
  status: external_zod_namespaceObject.z.string(),
498
486
  recordId: external_zod_namespaceObject.z.string(),
499
- metadata: external_zod_namespaceObject.z.record(external_zod_namespaceObject.z.unknown()).optional(),
487
+ metadata: external_zod_namespaceObject.z.record(external_zod_namespaceObject.z.string(), external_zod_namespaceObject.z.unknown()).optional(),
500
488
  givenAt: external_zod_namespaceObject.z.date()
501
489
  }));
490
+ const types_branding = [
491
+ 'c15t',
492
+ 'consent',
493
+ 'none'
494
+ ];
502
495
  const JurisdictionMessages = {
503
496
  GDPR: 'GDPR or equivalent regulations require a cookie banner.',
504
497
  CH: 'Switzerland requires similar data protection measures.',
@@ -584,20 +577,21 @@ Use this endpoint to implement geo-targeted consent banners and ensure complianc
584
577
  translations: external_zod_namespaceObject.z.object({
585
578
  language: external_zod_namespaceObject.z.string(),
586
579
  translations: TranslationsSchema
587
- })
580
+ }),
581
+ branding: external_zod_namespaceObject.z["enum"](types_branding)
588
582
  }));
589
- const verifyConsentInputSchema = external_zod_namespaceObject.z.object({
583
+ const verifyConsentInputSchema = external_zod_namespaceObject.z.strictObject({
590
584
  subjectId: external_zod_namespaceObject.z.string().optional(),
591
585
  externalSubjectId: external_zod_namespaceObject.z.string().optional(),
592
586
  domain: external_zod_namespaceObject.z.string(),
593
587
  type: PolicyTypeSchema,
594
588
  policyId: external_zod_namespaceObject.z.string().optional(),
595
589
  preferences: external_zod_namespaceObject.z.array(external_zod_namespaceObject.z.string()).optional()
596
- }).strict();
597
- const verify_contract_consentSchema = external_zod_namespaceObject.z.object({
590
+ });
591
+ const verify_contract_consentSchema = external_zod_namespaceObject.z.looseObject({
598
592
  id: external_zod_namespaceObject.z.string(),
599
593
  purposeIds: external_zod_namespaceObject.z.array(external_zod_namespaceObject.z.string())
600
- }).passthrough();
594
+ });
601
595
  const verifyConsentContract = contract_namespaceObject.oc.route({
602
596
  method: 'POST',
603
597
  path: '/consent/verify',
@@ -625,58 +619,58 @@ Use this endpoint to ensure compliance with privacy regulations and to verify us
625
619
  }).errors({
626
620
  INPUT_VALIDATION_FAILED: {
627
621
  status: 422,
628
- message: 'Invalid input parameters',
629
622
  data: external_zod_namespaceObject.z.object({
630
623
  formErrors: external_zod_namespaceObject.z.array(external_zod_namespaceObject.z.string()),
631
624
  fieldErrors: external_zod_namespaceObject.z.record(external_zod_namespaceObject.z.string(), external_zod_namespaceObject.z.array(external_zod_namespaceObject.z.string()).optional())
632
- })
625
+ }),
626
+ error: 'Invalid input parameters'
633
627
  },
634
628
  SUBJECT_NOT_FOUND: {
635
629
  status: 404,
636
- message: 'Subject not found',
637
630
  data: external_zod_namespaceObject.z.object({
638
631
  subjectId: external_zod_namespaceObject.z.string().optional(),
639
632
  externalSubjectId: external_zod_namespaceObject.z.string().optional()
640
- })
633
+ }),
634
+ error: 'Subject not found'
641
635
  },
642
636
  DOMAIN_NOT_FOUND: {
643
637
  status: 404,
644
- message: 'Domain not found',
645
638
  data: external_zod_namespaceObject.z.object({
646
639
  domain: external_zod_namespaceObject.z.string()
647
- })
640
+ }),
641
+ error: 'Domain not found'
648
642
  },
649
643
  POLICY_NOT_FOUND: {
650
644
  status: 404,
651
- message: 'Policy not found or invalid',
652
645
  data: external_zod_namespaceObject.z.object({
653
646
  policyId: external_zod_namespaceObject.z.string(),
654
647
  type: external_zod_namespaceObject.z.string()
655
- })
648
+ }),
649
+ error: 'Policy not found or invalid'
656
650
  },
657
651
  PURPOSES_NOT_FOUND: {
658
652
  status: 404,
659
- message: 'Could not find all specified purposes',
660
653
  data: external_zod_namespaceObject.z.object({
661
654
  preferences: external_zod_namespaceObject.z.array(external_zod_namespaceObject.z.string()),
662
655
  foundPurposes: external_zod_namespaceObject.z.array(external_zod_namespaceObject.z.string())
663
- })
656
+ }),
657
+ error: 'Could not find all specified purposes'
664
658
  },
665
659
  COOKIE_BANNER_PREFERENCES_REQUIRED: {
666
660
  status: 400,
667
- message: 'Preferences are required for cookie banner consent',
668
661
  data: external_zod_namespaceObject.z.object({
669
662
  type: external_zod_namespaceObject.z.literal('cookie_banner')
670
- })
663
+ }),
664
+ error: 'Preferences are required for cookie banner consent'
671
665
  },
672
666
  NO_CONSENT_FOUND: {
673
667
  status: 404,
674
- message: 'No consent found for the given policy',
675
668
  data: external_zod_namespaceObject.z.object({
676
669
  policyId: external_zod_namespaceObject.z.string(),
677
670
  subjectId: external_zod_namespaceObject.z.string(),
678
671
  domainId: external_zod_namespaceObject.z.string()
679
- })
672
+ }),
673
+ error: 'No consent found for the given policy'
680
674
  }
681
675
  }).input(verifyConsentInputSchema).output(external_zod_namespaceObject.z.object({
682
676
  isValid: external_zod_namespaceObject.z.boolean(),
@@ -1041,11 +1035,11 @@ function getTranslations(acceptLanguage, customTranslations) {
1041
1035
  };
1042
1036
  }
1043
1037
  function getHeaders(headers) {
1044
- if (!headers) throw new server_namespaceObject.ORPCError('LOCATION_DETECTION_FAILED', {
1045
- data: {
1046
- reason: 'No headers found in request context'
1047
- }
1048
- });
1038
+ if (!headers) return {
1039
+ countryCode: null,
1040
+ regionCode: null,
1041
+ acceptLanguage: null
1042
+ };
1049
1043
  const normalizeHeader = (value)=>{
1050
1044
  if (!value) return null;
1051
1045
  return Array.isArray(value) ? value[0] ?? null : value;
@@ -1059,17 +1053,18 @@ function getHeaders(headers) {
1059
1053
  acceptLanguage
1060
1054
  };
1061
1055
  }
1062
- function buildResponse({ shouldShowBanner, jurisdiction, location, acceptLanguage, customTranslations }) {
1056
+ function buildResponse({ shouldShowBanner, jurisdiction, location, acceptLanguage, customTranslations, branding = 'c15t' }) {
1063
1057
  return {
1064
1058
  showConsentBanner: shouldShowBanner,
1065
1059
  jurisdiction,
1066
1060
  location,
1067
- translations: getTranslations(acceptLanguage, customTranslations)
1061
+ translations: getTranslations(acceptLanguage, customTranslations),
1062
+ branding
1068
1063
  };
1069
1064
  }
1070
1065
  const handler_showConsentBanner = os.consent.showBanner.handler(({ context })=>{
1071
1066
  const typedContext = context;
1072
- const { customTranslations, disableGeoLocation } = typedContext.options.advanced ?? {};
1067
+ const { customTranslations, disableGeoLocation, branding } = typedContext.options.advanced ?? {};
1073
1068
  const { countryCode, regionCode, acceptLanguage } = getHeaders(typedContext.headers);
1074
1069
  if (disableGeoLocation) return buildResponse({
1075
1070
  shouldShowBanner: true,
@@ -1082,7 +1077,8 @@ const handler_showConsentBanner = os.consent.showBanner.handler(({ context })=>{
1082
1077
  regionCode: null
1083
1078
  },
1084
1079
  acceptLanguage,
1085
- customTranslations
1080
+ customTranslations,
1081
+ branding
1086
1082
  });
1087
1083
  const { showConsentBanner, jurisdictionCode, message } = checkJurisdiction(countryCode);
1088
1084
  return buildResponse({
@@ -1096,7 +1092,8 @@ const handler_showConsentBanner = os.consent.showBanner.handler(({ context })=>{
1096
1092
  regionCode
1097
1093
  },
1098
1094
  acceptLanguage,
1099
- customTranslations
1095
+ customTranslations,
1096
+ branding
1100
1097
  });
1101
1098
  });
1102
1099
  const verifyConsent = os.consent.verify.handler(async ({ input, context })=>{
@@ -1253,7 +1250,7 @@ const consentHandlers = {
1253
1250
  showBanner: handler_showConsentBanner,
1254
1251
  verify: verifyConsent
1255
1252
  };
1256
- const version = '1.5.0';
1253
+ const version = '1.6.0';
1257
1254
  const statusHandler = os.meta.status.handler(({ context })=>{
1258
1255
  const typedContext = context;
1259
1256
  const headers = typedContext.headers;