@c15t/backend 1.0.5 → 1.2.0-canary.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 (462) hide show
  1. package/.turbo/turbo-build.log +33 -39
  2. package/.turbo/turbo-fmt.log +3 -3
  3. package/.turbo/turbo-test.log +531 -0
  4. package/coverage/coverage-final.json +84 -0
  5. package/coverage/coverage-summary.json +85 -0
  6. package/coverage/html/backend/index.html +116 -0
  7. package/coverage/html/backend/rslib.config.ts.html +415 -0
  8. package/coverage/html/backend/src/contracts/consent/index.html +161 -0
  9. package/coverage/html/backend/src/contracts/consent/index.ts.html +112 -0
  10. package/coverage/html/backend/src/contracts/consent/post.contract.ts.html +559 -0
  11. package/coverage/html/backend/src/contracts/consent/show-banner.contract.ts.html +220 -0
  12. package/coverage/html/backend/src/contracts/consent/verify.contract.ts.html +463 -0
  13. package/coverage/html/backend/src/contracts/index.html +116 -0
  14. package/coverage/html/backend/src/contracts/index.ts.html +139 -0
  15. package/coverage/html/backend/src/contracts/meta/index.html +131 -0
  16. package/coverage/html/backend/src/contracts/meta/index.ts.html +100 -0
  17. package/coverage/html/backend/src/contracts/meta/status.contract.ts.html +196 -0
  18. package/coverage/html/backend/src/contracts/shared/index.html +116 -0
  19. package/coverage/html/backend/src/contracts/shared/jurisdiction.schema.ts.html +175 -0
  20. package/coverage/html/backend/src/core.ts.html +1624 -0
  21. package/coverage/html/backend/src/handlers/consent/index.html +161 -0
  22. package/coverage/html/backend/src/handlers/consent/index.ts.html +112 -0
  23. package/coverage/html/backend/src/handlers/consent/post.handler.ts.html +889 -0
  24. package/coverage/html/backend/src/handlers/consent/show-banner.handler.ts.html +535 -0
  25. package/coverage/html/backend/src/handlers/consent/verify.handler.ts.html +1000 -0
  26. package/coverage/html/backend/src/handlers/meta/index.html +131 -0
  27. package/coverage/html/backend/src/handlers/meta/index.ts.html +100 -0
  28. package/coverage/html/backend/src/handlers/meta/status.handler.ts.html +226 -0
  29. package/coverage/html/backend/src/index.html +161 -0
  30. package/coverage/html/backend/src/init.ts.html +1018 -0
  31. package/coverage/html/backend/src/pkgs/api-router/hooks/index.html +116 -0
  32. package/coverage/html/backend/src/pkgs/api-router/hooks/processor.ts.html +544 -0
  33. package/coverage/html/backend/src/pkgs/api-router/index.html +116 -0
  34. package/coverage/html/backend/src/pkgs/api-router/telemetry.ts.html +334 -0
  35. package/coverage/html/backend/src/pkgs/api-router/utils/cors.ts.html +304 -0
  36. package/coverage/html/backend/src/pkgs/api-router/utils/index.html +131 -0
  37. package/coverage/html/backend/src/pkgs/api-router/utils/ip.ts.html +361 -0
  38. package/coverage/html/backend/src/pkgs/data-model/fields/field-factory.ts.html +709 -0
  39. package/coverage/html/backend/src/pkgs/data-model/fields/id-generator.ts.html +256 -0
  40. package/coverage/html/backend/src/pkgs/data-model/fields/index.html +161 -0
  41. package/coverage/html/backend/src/pkgs/data-model/fields/superjson-utils.ts.html +136 -0
  42. package/coverage/html/backend/src/pkgs/data-model/fields/zod-fields.ts.html +496 -0
  43. package/coverage/html/backend/src/pkgs/data-model/hooks/create-hooks.ts.html +349 -0
  44. package/coverage/html/backend/src/pkgs/data-model/hooks/index.html +176 -0
  45. package/coverage/html/backend/src/pkgs/data-model/hooks/update-hooks.ts.html +358 -0
  46. package/coverage/html/backend/src/pkgs/data-model/hooks/update-many-hooks.ts.html +613 -0
  47. package/coverage/html/backend/src/pkgs/data-model/hooks/utils.ts.html +538 -0
  48. package/coverage/html/backend/src/pkgs/data-model/hooks/with-hooks-factory.ts.html +289 -0
  49. package/coverage/html/backend/src/pkgs/db-adapters/adapter-factory.ts.html +289 -0
  50. package/coverage/html/backend/src/pkgs/db-adapters/adapters/drizzle-adapter/drizzle-adapter.ts.html +2203 -0
  51. package/coverage/html/backend/src/pkgs/db-adapters/adapters/drizzle-adapter/index.html +116 -0
  52. package/coverage/html/backend/src/pkgs/db-adapters/adapters/index.html +116 -0
  53. package/coverage/html/backend/src/pkgs/db-adapters/adapters/kysely-adapter/dialect.ts.html +670 -0
  54. package/coverage/html/backend/src/pkgs/db-adapters/adapters/kysely-adapter/index.html +131 -0
  55. package/coverage/html/backend/src/pkgs/db-adapters/adapters/kysely-adapter/kysely-adapter.ts.html +3634 -0
  56. package/coverage/html/backend/src/pkgs/db-adapters/adapters/kysely-adapter/tests/index.html +116 -0
  57. package/coverage/html/backend/src/pkgs/db-adapters/adapters/kysely-adapter/tests/test-utils.ts.html +1417 -0
  58. package/coverage/html/backend/src/pkgs/db-adapters/adapters/memory-adapter/index.html +116 -0
  59. package/coverage/html/backend/src/pkgs/db-adapters/adapters/memory-adapter/memory-adapter.ts.html +2071 -0
  60. package/coverage/html/backend/src/pkgs/db-adapters/adapters/prisma-adapter/index.html +116 -0
  61. package/coverage/html/backend/src/pkgs/db-adapters/adapters/prisma-adapter/prisma-adapter.ts.html +1834 -0
  62. package/coverage/html/backend/src/pkgs/db-adapters/adapters/test.ts.html +316 -0
  63. package/coverage/html/backend/src/pkgs/db-adapters/index.html +131 -0
  64. package/coverage/html/backend/src/pkgs/db-adapters/utils.ts.html +238 -0
  65. package/coverage/html/backend/src/pkgs/migrations/get-migration.ts.html +343 -0
  66. package/coverage/html/backend/src/pkgs/migrations/get-schema/get-schema.ts.html +217 -0
  67. package/coverage/html/backend/src/pkgs/migrations/get-schema/index.html +146 -0
  68. package/coverage/html/backend/src/pkgs/migrations/get-schema/process-fields.ts.html +280 -0
  69. package/coverage/html/backend/src/pkgs/migrations/get-schema/process-tables.ts.html +289 -0
  70. package/coverage/html/backend/src/pkgs/migrations/index.html +176 -0
  71. package/coverage/html/backend/src/pkgs/migrations/migration-builders.ts.html +595 -0
  72. package/coverage/html/backend/src/pkgs/migrations/migration-execution.ts.html +301 -0
  73. package/coverage/html/backend/src/pkgs/migrations/schema-comparison.ts.html +694 -0
  74. package/coverage/html/backend/src/pkgs/migrations/type-mapping.ts.html +817 -0
  75. package/coverage/html/backend/src/pkgs/results/core/error-class.ts.html +976 -0
  76. package/coverage/html/backend/src/pkgs/results/core/error-codes.ts.html +703 -0
  77. package/coverage/html/backend/src/pkgs/results/core/index.html +146 -0
  78. package/coverage/html/backend/src/pkgs/results/core/tracing.ts.html +280 -0
  79. package/coverage/html/backend/src/pkgs/results/create-telemetry-options.ts.html +271 -0
  80. package/coverage/html/backend/src/pkgs/results/index.html +131 -0
  81. package/coverage/html/backend/src/pkgs/results/orpc-error-handler.ts.html +496 -0
  82. package/coverage/html/backend/src/pkgs/results/results/index.html +131 -0
  83. package/coverage/html/backend/src/pkgs/results/results/recovery-utils.ts.html +628 -0
  84. package/coverage/html/backend/src/pkgs/results/results/result-helpers.ts.html +1234 -0
  85. package/coverage/html/backend/src/pkgs/utils/env.ts.html +337 -0
  86. package/coverage/html/backend/src/pkgs/utils/index.html +146 -0
  87. package/coverage/html/backend/src/pkgs/utils/logger.ts.html +199 -0
  88. package/coverage/html/backend/src/pkgs/utils/url.ts.html +400 -0
  89. package/coverage/html/backend/src/router.ts.html +109 -0
  90. package/coverage/html/backend/src/schema/audit-log/index.html +146 -0
  91. package/coverage/html/backend/src/schema/audit-log/registry.ts.html +436 -0
  92. package/coverage/html/backend/src/schema/audit-log/schema.ts.html +223 -0
  93. package/coverage/html/backend/src/schema/audit-log/table.ts.html +640 -0
  94. package/coverage/html/backend/src/schema/consent/index.html +146 -0
  95. package/coverage/html/backend/src/schema/consent/registry.ts.html +616 -0
  96. package/coverage/html/backend/src/schema/consent/schema.ts.html +238 -0
  97. package/coverage/html/backend/src/schema/consent/table.ts.html +748 -0
  98. package/coverage/html/backend/src/schema/consent-policy/index.html +146 -0
  99. package/coverage/html/backend/src/schema/consent-policy/registry.ts.html +1063 -0
  100. package/coverage/html/backend/src/schema/consent-policy/schema.ts.html +265 -0
  101. package/coverage/html/backend/src/schema/consent-policy/table.ts.html +535 -0
  102. package/coverage/html/backend/src/schema/consent-purpose/index.html +146 -0
  103. package/coverage/html/backend/src/schema/consent-purpose/registry.ts.html +589 -0
  104. package/coverage/html/backend/src/schema/consent-purpose/schema.ts.html +259 -0
  105. package/coverage/html/backend/src/schema/consent-purpose/table.ts.html +547 -0
  106. package/coverage/html/backend/src/schema/consent-record/index.html +131 -0
  107. package/coverage/html/backend/src/schema/consent-record/schema.ts.html +211 -0
  108. package/coverage/html/backend/src/schema/consent-record/table.ts.html +457 -0
  109. package/coverage/html/backend/src/schema/create-registry.ts.html +148 -0
  110. package/coverage/html/backend/src/schema/definition.ts.html +685 -0
  111. package/coverage/html/backend/src/schema/domain/index.html +146 -0
  112. package/coverage/html/backend/src/schema/domain/registry.ts.html +973 -0
  113. package/coverage/html/backend/src/schema/domain/schema.ts.html +214 -0
  114. package/coverage/html/backend/src/schema/domain/table.ts.html +496 -0
  115. package/coverage/html/backend/src/schema/index.html +146 -0
  116. package/coverage/html/backend/src/schema/schemas.ts.html +166 -0
  117. package/coverage/html/backend/src/schema/subject/index.html +146 -0
  118. package/coverage/html/backend/src/schema/subject/registry.ts.html +973 -0
  119. package/coverage/html/backend/src/schema/subject/schema.ts.html +208 -0
  120. package/coverage/html/backend/src/schema/subject/table.ts.html +499 -0
  121. package/coverage/html/backend/src/server.ts.html +475 -0
  122. package/coverage/html/backend/src/testing/contract-testing.ts.html +1348 -0
  123. package/coverage/html/backend/src/testing/index.html +116 -0
  124. package/coverage/html/base.css +224 -0
  125. package/coverage/html/block-navigation.js +87 -0
  126. package/coverage/html/favicon.png +0 -0
  127. package/coverage/html/index.html +626 -0
  128. package/coverage/html/prettify.css +1 -0
  129. package/coverage/html/prettify.js +2 -0
  130. package/coverage/html/sort-arrow-sprite.png +0 -0
  131. package/coverage/html/sorter.js +196 -0
  132. package/dist/contracts/consent/index.d.ts +401 -0
  133. package/dist/contracts/consent/index.d.ts.map +1 -0
  134. package/dist/contracts/consent/index.test.d.ts +2 -0
  135. package/dist/contracts/consent/index.test.d.ts.map +1 -0
  136. package/dist/contracts/consent/post.contract.d.ts +212 -0
  137. package/dist/contracts/consent/post.contract.d.ts.map +1 -0
  138. package/dist/contracts/consent/post.contract.test.d.ts +2 -0
  139. package/dist/contracts/consent/post.contract.test.d.ts.map +1 -0
  140. package/dist/contracts/consent/show-banner.contract.d.ts +45 -0
  141. package/dist/contracts/consent/show-banner.contract.d.ts.map +1 -0
  142. package/dist/contracts/consent/show-banner.contract.test.d.ts +2 -0
  143. package/dist/contracts/consent/show-banner.contract.test.d.ts.map +1 -0
  144. package/dist/contracts/consent/verify.contract.d.ts +147 -0
  145. package/dist/contracts/consent/verify.contract.d.ts.map +1 -0
  146. package/dist/contracts/consent/verify.contract.test.d.ts +2 -0
  147. package/dist/contracts/consent/verify.contract.test.d.ts.map +1 -0
  148. package/dist/contracts/index.d.ts +963 -0
  149. package/dist/contracts/index.d.ts.map +1 -0
  150. package/dist/contracts/meta/index.d.ts +78 -0
  151. package/dist/contracts/meta/index.d.ts.map +1 -0
  152. package/dist/contracts/meta/index.test.d.ts +2 -0
  153. package/dist/contracts/meta/index.test.d.ts.map +1 -0
  154. package/dist/contracts/meta/status.contract.d.ts +77 -0
  155. package/dist/contracts/meta/status.contract.d.ts.map +1 -0
  156. package/dist/contracts/meta/status.contract.test.d.ts +2 -0
  157. package/dist/contracts/meta/status.contract.test.d.ts.map +1 -0
  158. package/dist/contracts/shared/jurisdiction.schema.d.ts +24 -0
  159. package/dist/contracts/shared/jurisdiction.schema.d.ts.map +1 -0
  160. package/dist/core.cjs +3584 -0
  161. package/dist/core.d.ts +533 -76
  162. package/dist/core.d.ts.map +1 -1
  163. package/dist/{index.js → core.js} +1163 -1286
  164. package/dist/handlers/consent/index.d.ts +401 -0
  165. package/dist/handlers/consent/index.d.ts.map +1 -0
  166. package/dist/handlers/consent/post.handler.d.ts +234 -0
  167. package/dist/handlers/consent/post.handler.d.ts.map +1 -0
  168. package/dist/handlers/consent/show-banner.handler.d.ts +57 -0
  169. package/dist/handlers/consent/show-banner.handler.d.ts.map +1 -0
  170. package/dist/handlers/consent/show-banner.handler.test.d.ts +2 -0
  171. package/dist/handlers/consent/show-banner.handler.test.d.ts.map +1 -0
  172. package/dist/handlers/consent/verify.handler.d.ts +169 -0
  173. package/dist/handlers/consent/verify.handler.d.ts.map +1 -0
  174. package/dist/handlers/meta/index.d.ts +78 -0
  175. package/dist/handlers/meta/index.d.ts.map +1 -0
  176. package/dist/handlers/meta/status.handler.d.ts +76 -0
  177. package/dist/handlers/meta/status.handler.d.ts.map +1 -0
  178. package/dist/init.d.ts.map +1 -1
  179. package/dist/pkgs/api-router/hooks/processor.d.ts.map +1 -1
  180. package/dist/pkgs/api-router/types/router-props.d.ts +1 -1
  181. package/dist/pkgs/api-router/types/router-props.d.ts.map +1 -1
  182. package/dist/pkgs/api-router/utils/cors.d.ts +1 -1
  183. package/dist/pkgs/api-router/utils/cors.d.ts.map +1 -1
  184. package/dist/pkgs/data-model/fields/field-types.d.ts +1 -1
  185. package/dist/pkgs/data-model/fields/zod-fields.d.ts +32 -32
  186. package/dist/pkgs/data-model/index.cjs +1433 -1799
  187. package/dist/pkgs/data-model/index.js +20 -385
  188. package/dist/pkgs/data-model/schema/index.cjs +1402 -1768
  189. package/dist/pkgs/data-model/schema/index.js +20 -385
  190. package/dist/pkgs/db-adapters/adapter-factory.d.ts +2 -2
  191. package/dist/pkgs/db-adapters/adapter-factory.d.ts.map +1 -1
  192. package/dist/pkgs/db-adapters/adapters/drizzle-adapter/drizzle-adapter.d.ts +4 -4
  193. package/dist/pkgs/db-adapters/adapters/drizzle-adapter/index.cjs +19 -151
  194. package/dist/pkgs/db-adapters/adapters/drizzle-adapter/index.js +19 -151
  195. package/dist/pkgs/db-adapters/adapters/kysely-adapter/dialect.d.ts +1 -1
  196. package/dist/pkgs/db-adapters/adapters/kysely-adapter/index.cjs +17 -149
  197. package/dist/pkgs/db-adapters/adapters/kysely-adapter/index.js +17 -149
  198. package/dist/pkgs/db-adapters/adapters/kysely-adapter/tests/test-utils.d.ts +2 -2
  199. package/dist/pkgs/db-adapters/adapters/kysely-adapter/tests/test-utils.d.ts.map +1 -1
  200. package/dist/pkgs/db-adapters/adapters/memory-adapter/index.cjs +17 -149
  201. package/dist/pkgs/db-adapters/adapters/memory-adapter/index.js +17 -149
  202. package/dist/pkgs/db-adapters/adapters/prisma-adapter/index.cjs +19 -151
  203. package/dist/pkgs/db-adapters/adapters/prisma-adapter/index.js +19 -151
  204. package/dist/pkgs/db-adapters/index.cjs +31 -153
  205. package/dist/pkgs/db-adapters/index.js +31 -153
  206. package/dist/pkgs/migrations/get-schema/get-schema.d.ts +2 -2
  207. package/dist/pkgs/migrations/get-schema/index.d.ts +1 -1
  208. package/dist/pkgs/migrations/index.cjs +30 -153
  209. package/dist/pkgs/migrations/index.js +30 -153
  210. package/dist/pkgs/migrations/schema-comparison.d.ts.map +1 -1
  211. package/dist/pkgs/results/core/error-class.d.ts +23 -21
  212. package/dist/pkgs/results/core/error-class.d.ts.map +1 -1
  213. package/dist/pkgs/results/index.cjs +17 -150
  214. package/dist/pkgs/results/index.d.ts +0 -3
  215. package/dist/pkgs/results/index.d.ts.map +1 -1
  216. package/dist/pkgs/results/index.js +17 -138
  217. package/dist/pkgs/results/orpc-error-handler.d.ts +65 -0
  218. package/dist/pkgs/results/orpc-error-handler.d.ts.map +1 -0
  219. package/dist/pkgs/results/types.d.ts +7 -7
  220. package/dist/pkgs/results/types.d.ts.map +1 -1
  221. package/dist/pkgs/types/context.d.ts +15 -4
  222. package/dist/pkgs/types/context.d.ts.map +1 -1
  223. package/dist/pkgs/types/endpoints.d.ts +3 -4
  224. package/dist/pkgs/types/endpoints.d.ts.map +1 -1
  225. package/dist/pkgs/types/options.d.ts +2 -3
  226. package/dist/pkgs/types/options.d.ts.map +1 -1
  227. package/dist/pkgs/types/plugins.d.ts +2 -3
  228. package/dist/pkgs/types/plugins.d.ts.map +1 -1
  229. package/dist/pkgs/utils/index.d.ts +1 -0
  230. package/dist/pkgs/utils/index.d.ts.map +1 -1
  231. package/dist/pkgs/utils/logger.d.ts +16 -0
  232. package/dist/pkgs/utils/logger.d.ts.map +1 -0
  233. package/dist/router.cjs +1213 -0
  234. package/dist/router.d.ts +480 -0
  235. package/dist/router.d.ts.map +1 -0
  236. package/dist/router.js +1169 -0
  237. package/dist/schema/audit-log/table.d.ts +1 -1
  238. package/dist/schema/consent/table.d.ts +1 -1
  239. package/dist/schema/consent-policy/registry.d.ts +12 -12
  240. package/dist/schema/consent-policy/schema.d.ts +6 -6
  241. package/dist/schema/consent-policy/table.d.ts +7 -7
  242. package/dist/schema/consent-purpose/registry.d.ts +6 -6
  243. package/dist/schema/consent-purpose/schema.d.ts +6 -6
  244. package/dist/schema/consent-purpose/table.d.ts +7 -7
  245. package/dist/schema/consent-record/table.d.ts +1 -1
  246. package/dist/schema/create-registry.d.ts +32 -32
  247. package/dist/schema/definition.d.ts +19 -19
  248. package/dist/schema/domain/registry.d.ts +10 -10
  249. package/dist/schema/domain/schema.d.ts +5 -5
  250. package/dist/schema/domain/table.d.ts +6 -6
  251. package/dist/schema/index.cjs +1409 -1775
  252. package/dist/schema/index.js +20 -385
  253. package/dist/schema/schemas.d.ts +19 -19
  254. package/dist/schema/subject/registry.d.ts +4 -4
  255. package/dist/schema/subject/schema.d.ts +2 -2
  256. package/dist/schema/subject/table.d.ts +3 -3
  257. package/dist/server.d.ts +2 -0
  258. package/dist/server.d.ts.map +1 -0
  259. package/dist/testing/contract-testing.d.ts +37 -0
  260. package/dist/testing/contract-testing.d.ts.map +1 -0
  261. package/dist/types/context.d.ts +1 -1
  262. package/dist/types/index.d.ts +2 -2
  263. package/dist/types/options.d.ts +33 -2
  264. package/dist/types/options.d.ts.map +1 -1
  265. package/dist/types/plugins.d.ts +3 -4
  266. package/dist/types/plugins.d.ts.map +1 -1
  267. package/package.json +22 -30
  268. package/rslib.config.ts +2 -5
  269. package/src/contracts/consent/index.test.ts +5 -0
  270. package/src/contracts/consent/index.ts +9 -0
  271. package/src/contracts/consent/post.contract.test.ts +526 -0
  272. package/src/contracts/consent/post.contract.ts +160 -0
  273. package/src/contracts/consent/show-banner.contract.test.ts +214 -0
  274. package/src/contracts/consent/show-banner.contract.ts +45 -0
  275. package/src/contracts/consent/verify.contract.test.ts +185 -0
  276. package/src/contracts/consent/verify.contract.ts +126 -0
  277. package/src/contracts/index.ts +18 -0
  278. package/src/contracts/meta/index.test.ts +5 -0
  279. package/src/contracts/meta/index.ts +5 -0
  280. package/src/contracts/meta/status.contract.test.ts +338 -0
  281. package/src/contracts/meta/status.contract.ts +37 -0
  282. package/src/contracts/shared/jurisdiction.schema.ts +30 -0
  283. package/src/core.ts +451 -159
  284. package/src/handlers/consent/index.ts +9 -0
  285. package/src/handlers/consent/post.handler.ts +273 -0
  286. package/src/handlers/consent/show-banner.handler.test.ts +148 -0
  287. package/src/handlers/consent/show-banner.handler.ts +150 -0
  288. package/src/handlers/consent/verify.handler.ts +305 -0
  289. package/src/handlers/meta/index.ts +5 -0
  290. package/src/handlers/meta/status.handler.ts +47 -0
  291. package/src/init.ts +8 -5
  292. package/src/pkgs/api-router/hooks/__tests__/processor.test.ts +6 -0
  293. package/src/pkgs/api-router/hooks/processor.ts +2 -0
  294. package/src/pkgs/api-router/types/router-props.ts +1 -1
  295. package/src/pkgs/api-router/utils/cors.ts +1 -1
  296. package/src/pkgs/data-model/fields/field-types.ts +1 -1
  297. package/src/pkgs/data-model/fields/id-generator.ts +1 -1
  298. package/src/pkgs/db-adapters/README.md +3 -3
  299. package/src/pkgs/db-adapters/adapter-factory.ts +8 -4
  300. package/src/pkgs/db-adapters/adapters/drizzle-adapter/drizzle-adapter.ts +13 -13
  301. package/src/pkgs/db-adapters/adapters/kysely-adapter/dialect.ts +1 -1
  302. package/src/pkgs/db-adapters/adapters/kysely-adapter/tests/postgres.test.ts +1 -1
  303. package/src/pkgs/db-adapters/adapters/kysely-adapter/tests/sqlite.test.ts +1 -1
  304. package/src/pkgs/db-adapters/adapters/kysely-adapter/tests/test-utils.ts +2 -2
  305. package/src/pkgs/migrations/get-migration.ts +3 -3
  306. package/src/pkgs/migrations/get-schema/get-schema.ts +2 -2
  307. package/src/pkgs/migrations/get-schema/index.ts +1 -1
  308. package/src/pkgs/migrations/migration-builders.ts +2 -2
  309. package/src/pkgs/migrations/migration-execution.ts +2 -2
  310. package/src/pkgs/migrations/schema-comparison.ts +5 -4
  311. package/src/pkgs/results/__tests__/error-class.test.ts +8 -7
  312. package/src/pkgs/results/core/error-class.ts +31 -43
  313. package/src/pkgs/results/index.ts +0 -10
  314. package/src/pkgs/results/orpc-error-handler.ts +137 -0
  315. package/src/pkgs/results/types.ts +8 -7
  316. package/src/pkgs/types/context.ts +18 -4
  317. package/src/pkgs/types/endpoints.ts +3 -5
  318. package/src/pkgs/types/options.ts +2 -3
  319. package/src/pkgs/types/plugins.ts +2 -3
  320. package/src/pkgs/utils/index.ts +1 -0
  321. package/src/pkgs/utils/logger.ts +38 -0
  322. package/src/router.ts +8 -0
  323. package/src/schema/audit-log/table.ts +1 -1
  324. package/src/schema/consent/table.ts +1 -1
  325. package/src/schema/consent-policy/table.ts +1 -1
  326. package/src/schema/consent-purpose/table.ts +1 -1
  327. package/src/schema/consent-record/table.ts +1 -1
  328. package/src/schema/definition.ts +2 -2
  329. package/src/schema/domain/table.ts +1 -1
  330. package/src/schema/subject/table.ts +1 -1
  331. package/src/server.ts +130 -0
  332. package/src/testing/contract-testing.ts +437 -0
  333. package/src/types/context.ts +1 -1
  334. package/src/types/index.ts +2 -2
  335. package/src/types/options.ts +38 -2
  336. package/src/types/plugins.ts +3 -4
  337. package/dist/index.cjs +0 -3701
  338. package/dist/index.d.ts +0 -11
  339. package/dist/index.d.ts.map +0 -1
  340. package/dist/init.test.d.ts +0 -2
  341. package/dist/init.test.d.ts.map +0 -1
  342. package/dist/integrations/cloudflare.cjs +0 -312
  343. package/dist/integrations/cloudflare.d.ts +0 -32
  344. package/dist/integrations/cloudflare.d.ts.map +0 -1
  345. package/dist/integrations/cloudflare.js +0 -278
  346. package/dist/integrations/next.cjs +0 -276
  347. package/dist/integrations/next.d.ts +0 -68
  348. package/dist/integrations/next.d.ts.map +0 -1
  349. package/dist/integrations/next.js +0 -239
  350. package/dist/integrations/node.cjs +0 -257
  351. package/dist/integrations/node.d.ts +0 -29
  352. package/dist/integrations/node.d.ts.map +0 -1
  353. package/dist/integrations/node.js +0 -223
  354. package/dist/pkgs/api-router/index.d.ts +0 -9
  355. package/dist/pkgs/api-router/index.d.ts.map +0 -1
  356. package/dist/pkgs/api-router/utils/define-route.d.ts +0 -87
  357. package/dist/pkgs/api-router/utils/define-route.d.ts.map +0 -1
  358. package/dist/pkgs/logger/__tests__/console-formatter.test.d.ts +0 -2
  359. package/dist/pkgs/logger/__tests__/console-formatter.test.d.ts.map +0 -1
  360. package/dist/pkgs/logger/__tests__/integration.test.d.ts +0 -2
  361. package/dist/pkgs/logger/__tests__/integration.test.d.ts.map +0 -1
  362. package/dist/pkgs/logger/__tests__/log-levels.test.d.ts +0 -2
  363. package/dist/pkgs/logger/__tests__/log-levels.test.d.ts.map +0 -1
  364. package/dist/pkgs/logger/__tests__/logger-factory.test.d.ts +0 -2
  365. package/dist/pkgs/logger/__tests__/logger-factory.test.d.ts.map +0 -1
  366. package/dist/pkgs/logger/__tests__/result-logging.test.d.ts +0 -2
  367. package/dist/pkgs/logger/__tests__/result-logging.test.d.ts.map +0 -1
  368. package/dist/pkgs/logger/__tests__/types.test.d.ts +0 -2
  369. package/dist/pkgs/logger/__tests__/types.test.d.ts.map +0 -1
  370. package/dist/pkgs/logger/console-formatter.d.ts +0 -56
  371. package/dist/pkgs/logger/console-formatter.d.ts.map +0 -1
  372. package/dist/pkgs/logger/index.cjs +0 -240
  373. package/dist/pkgs/logger/index.d.ts +0 -35
  374. package/dist/pkgs/logger/index.d.ts.map +0 -1
  375. package/dist/pkgs/logger/index.js +0 -185
  376. package/dist/pkgs/logger/log-levels.d.ts +0 -29
  377. package/dist/pkgs/logger/log-levels.d.ts.map +0 -1
  378. package/dist/pkgs/logger/logger-factory.d.ts +0 -42
  379. package/dist/pkgs/logger/logger-factory.d.ts.map +0 -1
  380. package/dist/pkgs/logger/result-logging.d.ts +0 -71
  381. package/dist/pkgs/logger/result-logging.d.ts.map +0 -1
  382. package/dist/pkgs/logger/telemetry.d.ts +0 -14
  383. package/dist/pkgs/logger/telemetry.d.ts.map +0 -1
  384. package/dist/pkgs/logger/types.d.ts +0 -121
  385. package/dist/pkgs/logger/types.d.ts.map +0 -1
  386. package/dist/pkgs/results/__tests__/retrieval-pipeline.test.d.ts +0 -2
  387. package/dist/pkgs/results/__tests__/retrieval-pipeline.test.d.ts.map +0 -1
  388. package/dist/pkgs/results/__tests__/validation-pipeline.test.d.ts +0 -2
  389. package/dist/pkgs/results/__tests__/validation-pipeline.test.d.ts.map +0 -1
  390. package/dist/pkgs/results/h3-integration.d.ts +0 -52
  391. package/dist/pkgs/results/h3-integration.d.ts.map +0 -1
  392. package/dist/pkgs/results/pipeline/retrieval-pipeline.d.ts +0 -101
  393. package/dist/pkgs/results/pipeline/retrieval-pipeline.d.ts.map +0 -1
  394. package/dist/pkgs/results/pipeline/validation-pipeline.d.ts +0 -89
  395. package/dist/pkgs/results/pipeline/validation-pipeline.d.ts.map +0 -1
  396. package/dist/response-types.d.ts +0 -19
  397. package/dist/response-types.d.ts.map +0 -1
  398. package/dist/routes/__test__/index.test.d.ts +0 -17
  399. package/dist/routes/__test__/index.test.d.ts.map +0 -1
  400. package/dist/routes/__test__/set-consent.test.d.ts +0 -2
  401. package/dist/routes/__test__/set-consent.test.d.ts.map +0 -1
  402. package/dist/routes/__test__/show-consent-banner.test.d.ts +0 -2
  403. package/dist/routes/__test__/show-consent-banner.test.d.ts.map +0 -1
  404. package/dist/routes/__test__/status.test.d.ts +0 -2
  405. package/dist/routes/__test__/status.test.d.ts.map +0 -1
  406. package/dist/routes/__test__/verify-consent.test.d.ts +0 -2
  407. package/dist/routes/__test__/verify-consent.test.d.ts.map +0 -1
  408. package/dist/routes/index.d.ts +0 -3
  409. package/dist/routes/index.d.ts.map +0 -1
  410. package/dist/routes/set-consent.d.ts +0 -89
  411. package/dist/routes/set-consent.d.ts.map +0 -1
  412. package/dist/routes/show-consent-banner.d.ts +0 -15
  413. package/dist/routes/show-consent-banner.d.ts.map +0 -1
  414. package/dist/routes/status.d.ts +0 -44
  415. package/dist/routes/status.d.ts.map +0 -1
  416. package/dist/routes/types.d.ts +0 -7
  417. package/dist/routes/types.d.ts.map +0 -1
  418. package/dist/routes/verify-consent.d.ts +0 -38
  419. package/dist/routes/verify-consent.d.ts.map +0 -1
  420. package/src/docs/ADVANCED_JSON_HANDLING.md +0 -99
  421. package/src/docs/neverthrow.md +0 -171
  422. package/src/index.ts +0 -34
  423. package/src/init.test.ts +0 -219
  424. package/src/integrations/cloudflare.ts +0 -269
  425. package/src/integrations/next.ts +0 -204
  426. package/src/integrations/node.ts +0 -141
  427. package/src/pkgs/api-router/index.ts +0 -148
  428. package/src/pkgs/api-router/types/h3.d.ts +0 -42
  429. package/src/pkgs/api-router/utils/define-route.ts +0 -410
  430. package/src/pkgs/logger/README.md +0 -213
  431. package/src/pkgs/logger/__tests__/console-formatter.test.ts +0 -67
  432. package/src/pkgs/logger/__tests__/integration.test.ts +0 -184
  433. package/src/pkgs/logger/__tests__/log-levels.test.ts +0 -77
  434. package/src/pkgs/logger/__tests__/logger-factory.test.ts +0 -156
  435. package/src/pkgs/logger/__tests__/result-logging.test.ts +0 -209
  436. package/src/pkgs/logger/__tests__/types.test.ts +0 -94
  437. package/src/pkgs/logger/console-formatter.ts +0 -75
  438. package/src/pkgs/logger/doc.md +0 -569
  439. package/src/pkgs/logger/index.ts +0 -59
  440. package/src/pkgs/logger/log-levels.ts +0 -46
  441. package/src/pkgs/logger/logger-factory.ts +0 -121
  442. package/src/pkgs/logger/result-logging.ts +0 -134
  443. package/src/pkgs/logger/telemetry.ts +0 -96
  444. package/src/pkgs/logger/types.ts +0 -138
  445. package/src/pkgs/results/__tests__/retrieval-pipeline.test.ts +0 -157
  446. package/src/pkgs/results/__tests__/validation-pipeline.test.ts +0 -151
  447. package/src/pkgs/results/h3-integration.ts +0 -142
  448. package/src/pkgs/results/pipeline/retrieval-pipeline.ts +0 -188
  449. package/src/pkgs/results/pipeline/validation-pipeline.ts +0 -164
  450. package/src/plugins/.keep +0 -0
  451. package/src/response-types.ts +0 -29
  452. package/src/routes/__test__/index.test.ts +0 -112
  453. package/src/routes/__test__/set-consent.test.ts +0 -242
  454. package/src/routes/__test__/show-consent-banner.test.ts +0 -98
  455. package/src/routes/__test__/status.test.ts +0 -64
  456. package/src/routes/__test__/verify-consent.test.ts +0 -266
  457. package/src/routes/index.ts +0 -12
  458. package/src/routes/set-consent.ts +0 -249
  459. package/src/routes/show-consent-banner.ts +0 -131
  460. package/src/routes/status.ts +0 -61
  461. package/src/routes/types.ts +0 -7
  462. package/src/routes/verify-consent.ts +0 -206
@@ -1,276 +0,0 @@
1
- "use strict";
2
- var __webpack_require__ = {};
3
- (()=>{
4
- __webpack_require__.d = (exports1, definition)=>{
5
- for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
6
- enumerable: true,
7
- get: definition[key]
8
- });
9
- };
10
- })();
11
- (()=>{
12
- __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
13
- })();
14
- (()=>{
15
- __webpack_require__.r = (exports1)=>{
16
- if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
17
- value: 'Module'
18
- });
19
- Object.defineProperty(exports1, '__esModule', {
20
- value: true
21
- });
22
- };
23
- })();
24
- var __webpack_exports__ = {};
25
- __webpack_require__.r(__webpack_exports__);
26
- __webpack_require__.d(__webpack_exports__, {
27
- toNextHandler: ()=>toNextHandler,
28
- toNextJsHandler: ()=>toNextJsHandler
29
- });
30
- require("neverthrow");
31
- const external_h3_namespaceObject = require("h3");
32
- const error_codes_ERROR_CODES = Object.freeze({
33
- NOT_FOUND: 'Resource not found',
34
- BAD_REQUEST: 'Bad request',
35
- CONFLICT: 'Conflict with current state',
36
- MISSING_REQUIRED_PARAMETER: 'Missing required parameter',
37
- UNAUTHORIZED: 'Unauthorized',
38
- FORBIDDEN: 'Forbidden',
39
- INTERNAL_SERVER_ERROR: 'Internal server error',
40
- INITIALIZATION_FAILED: 'Initialization failed',
41
- DATABASE_CONNECTION_ERROR: 'Database connection error',
42
- DATABASE_QUERY_ERROR: 'Database query error',
43
- INVALID_CONFIGURATION: 'Invalid configuration',
44
- REQUEST_HANDLER_ERROR: 'Request handler error',
45
- INVALID_REQUEST: 'Invalid request',
46
- UNKNOWN_ERROR: 'Unknown error',
47
- NETWORK_ERROR: 'Network error',
48
- PLUGIN_INITIALIZATION_FAILED: 'Plugin initialization failed',
49
- API_RETRIEVAL_ERROR: 'API retrieval error',
50
- VALIDATION_ERROR: 'Validation error',
51
- UNEXPECTED: 'Unexpected error'
52
- });
53
- const ERROR_CATEGORIES = Object.freeze({
54
- VALIDATION: 'validation',
55
- AUTHORIZATION: 'authorization',
56
- STORAGE: 'storage',
57
- NETWORK: 'network',
58
- PLUGIN: 'plugin',
59
- CONFIGURATION: 'configuration',
60
- UNEXPECTED: 'unexpected'
61
- });
62
- const api_namespaceObject = require("@opentelemetry/api");
63
- api_namespaceObject.trace.getTracer('@doubletie/results');
64
- class error_class_DoubleTieError extends external_h3_namespaceObject.H3Error {
65
- code;
66
- category;
67
- meta;
68
- constructor(message, options = {
69
- code: error_codes_ERROR_CODES.UNKNOWN_ERROR,
70
- status: 500,
71
- category: ERROR_CATEGORIES.UNEXPECTED,
72
- cause: void 0,
73
- meta: {}
74
- }){
75
- super(message, {
76
- cause: options.cause
77
- });
78
- this.name = this.constructor.name;
79
- this.code = options.code ?? error_codes_ERROR_CODES.UNKNOWN_ERROR;
80
- this.statusCode = options.status ?? 500;
81
- this.category = options.category ?? ERROR_CATEGORIES.UNEXPECTED;
82
- this.meta = options.meta ?? {};
83
- this.data = {
84
- code: this.code,
85
- category: this.category,
86
- meta: this.meta
87
- };
88
- tracing_withSpan('create_doubletie_error', async (span)=>{
89
- span.setAttributes({
90
- 'error.name': this.name,
91
- 'error.message': message,
92
- 'error.code': this.code,
93
- 'error.status': this.statusCode,
94
- 'error.category': this.category,
95
- 'error.has_cause': !!this.cause,
96
- 'error.cause_type': this.cause instanceof Error ? this.cause.constructor.name : typeof this.cause,
97
- 'error.has_meta': !!this.meta
98
- });
99
- if (this.cause instanceof Error) span.recordException(this.cause);
100
- });
101
- if (Error.captureStackTrace) Error.captureStackTrace(this, this.constructor);
102
- }
103
- static isDoubleTieError(error) {
104
- return error instanceof error_class_DoubleTieError;
105
- }
106
- toJSON() {
107
- const validationErrorMessage = this.meta?.validationErrors ? String(this.meta.validationErrors) : void 0;
108
- const stackTrace = this.stack ? this.stack.split('\n').map((line)=>line.trim()).filter((line)=>line && !line.includes('Error: ')) : [];
109
- return {
110
- statusCode: this.statusCode,
111
- message: validationErrorMessage || this.message,
112
- statusMessage: this.statusMessage,
113
- data: {
114
- code: this.code,
115
- category: this.category,
116
- meta: this.meta,
117
- ...'production' === process.env.NODE_ENV ? {} : {
118
- stack: stackTrace
119
- },
120
- ...validationErrorMessage && this.message ? {
121
- originalMessage: this.message
122
- } : {},
123
- ...this.cause ? {
124
- cause: this.cause instanceof Error ? {
125
- name: this.cause.name,
126
- message: this.cause.message,
127
- stack: this.cause.stack ? this.cause.stack.split('\n').map((line)=>line.trim()) : void 0
128
- } : this.cause
129
- } : {}
130
- }
131
- };
132
- }
133
- static fromResponse(response, data) {
134
- let message = `HTTP error ${response.status}`;
135
- let errorCode = `HTTP ${response.status}`;
136
- let errorMeta = {};
137
- if (data && 'object' == typeof data && null !== data) {
138
- const errorObj = data;
139
- if ('string' == typeof errorObj.message) message = errorObj.message;
140
- if ('string' == typeof errorObj.code) errorCode = errorObj.code;
141
- if ('object' == typeof errorObj.data && null !== errorObj.data) errorMeta = errorObj.data;
142
- }
143
- return new error_class_DoubleTieError(message, {
144
- code: errorCode,
145
- status: response.status,
146
- meta: errorMeta
147
- });
148
- }
149
- withMeta(additionalMeta) {
150
- return new error_class_DoubleTieError(this.message, {
151
- code: this.code,
152
- status: this.statusCode,
153
- category: this.category,
154
- cause: this.cause instanceof Error ? this.cause : void 0,
155
- meta: {
156
- ...this.meta,
157
- ...additionalMeta
158
- }
159
- });
160
- }
161
- static createSubclass(name) {
162
- const ErrorSubclass = class extends error_class_DoubleTieError {
163
- constructor(message, options){
164
- super(message, options);
165
- this.name = name;
166
- }
167
- };
168
- Object.defineProperty(ErrorSubclass, 'name', {
169
- value: name
170
- });
171
- return ErrorSubclass;
172
- }
173
- static formatValidationError(error) {
174
- if (!error.meta) return error.message;
175
- let formattedMessage = `${error.message} (${error.code})`;
176
- if (error.meta.validationErrors) formattedMessage += `\nValidation Errors: ${JSON.stringify(error.meta.validationErrors, null, 2)}`;
177
- const otherMeta = Object.fromEntries(Object.entries(error.meta).filter(([key])=>'validationErrors' !== key));
178
- if (Object.keys(otherMeta).length > 0) formattedMessage += `\nAdditional Context: ${JSON.stringify(otherMeta, null, 2)}`;
179
- return formattedMessage;
180
- }
181
- }
182
- function toNextHandler(instance) {
183
- const handleRequest = async (request)=>{
184
- try {
185
- const basePath = instance.options?.basePath || '/api/c15t';
186
- const originalUrl = new URL(request.url);
187
- let pathWithoutBase = originalUrl.pathname;
188
- if (pathWithoutBase.startsWith(basePath)) {
189
- pathWithoutBase = pathWithoutBase.substring(basePath.length);
190
- if (!pathWithoutBase.startsWith('/')) pathWithoutBase = `/${pathWithoutBase}`;
191
- }
192
- const rewrittenUrl = new URL(originalUrl.toString());
193
- rewrittenUrl.pathname = pathWithoutBase;
194
- const rewrittenRequest = new Request(rewrittenUrl.toString(), {
195
- method: request.method,
196
- headers: request.headers,
197
- body: request.body,
198
- credentials: 'include',
199
- duplex: [
200
- 'GET',
201
- 'HEAD'
202
- ].includes(request.method) ? void 0 : 'half'
203
- });
204
- await updateBaseUrl(request, basePath);
205
- const result = await instance.handler(rewrittenRequest);
206
- return await result.match((response)=>response, (error)=>{
207
- const status = error.statusCode || 500;
208
- const message = error.message || error_codes_ERROR_CODES.INTERNAL_SERVER_ERROR;
209
- return new Response(JSON.stringify({
210
- error: true,
211
- code: error.code || error_codes_ERROR_CODES.INTERNAL_SERVER_ERROR,
212
- message,
213
- meta: error.meta
214
- }), {
215
- status,
216
- headers: {
217
- 'Content-Type': 'application/json'
218
- }
219
- });
220
- });
221
- } catch (error) {
222
- return new Response(JSON.stringify({
223
- error: true,
224
- code: error_codes_ERROR_CODES.INTERNAL_SERVER_ERROR,
225
- message: 'An unexpected error occurred',
226
- meta: {
227
- error: String(error)
228
- }
229
- }), {
230
- status: 500,
231
- headers: {
232
- 'Content-Type': 'application/json'
233
- }
234
- });
235
- }
236
- };
237
- return {
238
- GET: handleRequest,
239
- POST: handleRequest,
240
- PUT: handleRequest,
241
- DELETE: handleRequest,
242
- OPTIONS: handleRequest,
243
- HEAD: handleRequest,
244
- PATCH: handleRequest
245
- };
246
- async function updateBaseUrl(request, basePath) {
247
- if (!instance.$context) return;
248
- try {
249
- const contextResult = await instance.$context;
250
- contextResult.match((context)=>{
251
- const url = new URL(request.url);
252
- const baseURL = `${url.protocol}//${url.host}${basePath}`;
253
- if (!context.baseURL || context.baseURL !== baseURL) {
254
- context.baseURL = baseURL;
255
- if (context.options) context.options.baseURL = baseURL;
256
- }
257
- }, ()=>{});
258
- } catch {}
259
- }
260
- }
261
- function toNextJsHandler(auth) {
262
- const handler = async (request)=>'handler' in auth ? auth.handler(request) : auth(request);
263
- return {
264
- GET: handler,
265
- POST: handler
266
- };
267
- }
268
- exports.toNextHandler = __webpack_exports__.toNextHandler;
269
- exports.toNextJsHandler = __webpack_exports__.toNextJsHandler;
270
- for(var __webpack_i__ in __webpack_exports__)if (-1 === [
271
- "toNextHandler",
272
- "toNextJsHandler"
273
- ].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
274
- Object.defineProperty(exports, '__esModule', {
275
- value: true
276
- });
@@ -1,68 +0,0 @@
1
- import type { C15TInstance } from '../core';
2
- /**
3
- * Type definition for a Next.js route handler function
4
- */
5
- type RouteHandler = (request: Request) => Promise<Response>;
6
- /**
7
- * Type definition for Next.js route handlers object
8
- */
9
- type NextRouteHandlers = {
10
- GET: RouteHandler;
11
- POST: RouteHandler;
12
- PUT: RouteHandler;
13
- DELETE: RouteHandler;
14
- OPTIONS: RouteHandler;
15
- HEAD: RouteHandler;
16
- PATCH: RouteHandler;
17
- };
18
- /**
19
- * Convert a c15t handler to a Next.js route handler.
20
- *
21
- * This adapter converts between standard Web API and c15t, letting c15t/H3 handle
22
- * all the HTTP logic including CORS. It doesn't depend on next/server.
23
- *
24
- * @example
25
- * ```typescript
26
- * import { toNextHandler } from '@c15t/backend/integrations/next';
27
- * import { c15t } from '@/c15t';
28
- *
29
- * // app/api/c15t/[...paths]/route.ts
30
- * export const { GET, POST } = toNextHandler(c15t);
31
- * ```
32
- *
33
- * @param instance - The c15t instance to adapt
34
- * @returns An object with Next.js route handler functions for each method
35
- */
36
- export declare function toNextHandler(instance: C15TInstance): NextRouteHandlers;
37
- /**
38
- * Alternative Next.js route handler that works with any handler function.
39
- *
40
- * This utility function helps create Next.js App Router route handlers
41
- * from any function that accepts a Request and returns a Response.
42
- *
43
- * @example
44
- * ```typescript
45
- * // Using with c15t
46
- * import { toNextJsHandler } from '@c15t/backend/integrations/next';
47
- * import { c15t } from '@/c15t';
48
- *
49
- * // app/api/auth/[...slug]/route.ts
50
- * export const { GET, POST } = toNextJsHandler(c15t);
51
- *
52
- * // Using with a custom handler
53
- * export const { GET } = toNextJsHandler((request) => {
54
- * return new Response('Hello World');
55
- * });
56
- * ```
57
- *
58
- * @param auth - Either a function or an object with a handler method
59
- * @returns An object with GET and POST methods for Next.js App Router
60
- */
61
- export declare function toNextJsHandler(auth: {
62
- handler: (request: Request) => Promise<Response>;
63
- } | ((request: Request) => Promise<Response>)): {
64
- GET: (request: Request) => Promise<Response>;
65
- POST: (request: Request) => Promise<Response>;
66
- };
67
- export {};
68
- //# sourceMappingURL=next.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"next.d.ts","sourceRoot":"","sources":["../../src/integrations/next.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAI3C;;GAEG;AACH,KAAK,YAAY,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAE5D;;GAEG;AACH,KAAK,iBAAiB,GAAG;IACxB,GAAG,EAAE,YAAY,CAAC;IAClB,IAAI,EAAE,YAAY,CAAC;IACnB,GAAG,EAAE,YAAY,CAAC;IAClB,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,EAAE,YAAY,CAAC;IACtB,IAAI,EAAE,YAAY,CAAC;IACnB,KAAK,EAAE,YAAY,CAAC;CACpB,CAAC;AAEF;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,YAAY,GAAG,iBAAiB,CA2HvE;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,eAAe,CAC9B,IAAI,EACD;IACA,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;CAChD,GACD,CAAC,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;mBAEZ,OAAO;oBAAP,OAAO;EAOvC"}
@@ -1,239 +0,0 @@
1
- import "neverthrow";
2
- import * as __WEBPACK_EXTERNAL_MODULE_h3__ from "h3";
3
- import * as __WEBPACK_EXTERNAL_MODULE__opentelemetry_api_87359e78__ from "@opentelemetry/api";
4
- const error_codes_ERROR_CODES = Object.freeze({
5
- NOT_FOUND: 'Resource not found',
6
- BAD_REQUEST: 'Bad request',
7
- CONFLICT: 'Conflict with current state',
8
- MISSING_REQUIRED_PARAMETER: 'Missing required parameter',
9
- UNAUTHORIZED: 'Unauthorized',
10
- FORBIDDEN: 'Forbidden',
11
- INTERNAL_SERVER_ERROR: 'Internal server error',
12
- INITIALIZATION_FAILED: 'Initialization failed',
13
- DATABASE_CONNECTION_ERROR: 'Database connection error',
14
- DATABASE_QUERY_ERROR: 'Database query error',
15
- INVALID_CONFIGURATION: 'Invalid configuration',
16
- REQUEST_HANDLER_ERROR: 'Request handler error',
17
- INVALID_REQUEST: 'Invalid request',
18
- UNKNOWN_ERROR: 'Unknown error',
19
- NETWORK_ERROR: 'Network error',
20
- PLUGIN_INITIALIZATION_FAILED: 'Plugin initialization failed',
21
- API_RETRIEVAL_ERROR: 'API retrieval error',
22
- VALIDATION_ERROR: 'Validation error',
23
- UNEXPECTED: 'Unexpected error'
24
- });
25
- const ERROR_CATEGORIES = Object.freeze({
26
- VALIDATION: 'validation',
27
- AUTHORIZATION: 'authorization',
28
- STORAGE: 'storage',
29
- NETWORK: 'network',
30
- PLUGIN: 'plugin',
31
- CONFIGURATION: 'configuration',
32
- UNEXPECTED: 'unexpected'
33
- });
34
- __WEBPACK_EXTERNAL_MODULE__opentelemetry_api_87359e78__.trace.getTracer('@doubletie/results');
35
- class error_class_DoubleTieError extends __WEBPACK_EXTERNAL_MODULE_h3__.H3Error {
36
- code;
37
- category;
38
- meta;
39
- constructor(message, options = {
40
- code: error_codes_ERROR_CODES.UNKNOWN_ERROR,
41
- status: 500,
42
- category: ERROR_CATEGORIES.UNEXPECTED,
43
- cause: void 0,
44
- meta: {}
45
- }){
46
- super(message, {
47
- cause: options.cause
48
- });
49
- this.name = this.constructor.name;
50
- this.code = options.code ?? error_codes_ERROR_CODES.UNKNOWN_ERROR;
51
- this.statusCode = options.status ?? 500;
52
- this.category = options.category ?? ERROR_CATEGORIES.UNEXPECTED;
53
- this.meta = options.meta ?? {};
54
- this.data = {
55
- code: this.code,
56
- category: this.category,
57
- meta: this.meta
58
- };
59
- tracing_withSpan('create_doubletie_error', async (span)=>{
60
- span.setAttributes({
61
- 'error.name': this.name,
62
- 'error.message': message,
63
- 'error.code': this.code,
64
- 'error.status': this.statusCode,
65
- 'error.category': this.category,
66
- 'error.has_cause': !!this.cause,
67
- 'error.cause_type': this.cause instanceof Error ? this.cause.constructor.name : typeof this.cause,
68
- 'error.has_meta': !!this.meta
69
- });
70
- if (this.cause instanceof Error) span.recordException(this.cause);
71
- });
72
- if (Error.captureStackTrace) Error.captureStackTrace(this, this.constructor);
73
- }
74
- static isDoubleTieError(error) {
75
- return error instanceof error_class_DoubleTieError;
76
- }
77
- toJSON() {
78
- const validationErrorMessage = this.meta?.validationErrors ? String(this.meta.validationErrors) : void 0;
79
- const stackTrace = this.stack ? this.stack.split('\n').map((line)=>line.trim()).filter((line)=>line && !line.includes('Error: ')) : [];
80
- return {
81
- statusCode: this.statusCode,
82
- message: validationErrorMessage || this.message,
83
- statusMessage: this.statusMessage,
84
- data: {
85
- code: this.code,
86
- category: this.category,
87
- meta: this.meta,
88
- ...'production' === process.env.NODE_ENV ? {} : {
89
- stack: stackTrace
90
- },
91
- ...validationErrorMessage && this.message ? {
92
- originalMessage: this.message
93
- } : {},
94
- ...this.cause ? {
95
- cause: this.cause instanceof Error ? {
96
- name: this.cause.name,
97
- message: this.cause.message,
98
- stack: this.cause.stack ? this.cause.stack.split('\n').map((line)=>line.trim()) : void 0
99
- } : this.cause
100
- } : {}
101
- }
102
- };
103
- }
104
- static fromResponse(response, data) {
105
- let message = `HTTP error ${response.status}`;
106
- let errorCode = `HTTP ${response.status}`;
107
- let errorMeta = {};
108
- if (data && 'object' == typeof data && null !== data) {
109
- const errorObj = data;
110
- if ('string' == typeof errorObj.message) message = errorObj.message;
111
- if ('string' == typeof errorObj.code) errorCode = errorObj.code;
112
- if ('object' == typeof errorObj.data && null !== errorObj.data) errorMeta = errorObj.data;
113
- }
114
- return new error_class_DoubleTieError(message, {
115
- code: errorCode,
116
- status: response.status,
117
- meta: errorMeta
118
- });
119
- }
120
- withMeta(additionalMeta) {
121
- return new error_class_DoubleTieError(this.message, {
122
- code: this.code,
123
- status: this.statusCode,
124
- category: this.category,
125
- cause: this.cause instanceof Error ? this.cause : void 0,
126
- meta: {
127
- ...this.meta,
128
- ...additionalMeta
129
- }
130
- });
131
- }
132
- static createSubclass(name) {
133
- const ErrorSubclass = class extends error_class_DoubleTieError {
134
- constructor(message, options){
135
- super(message, options);
136
- this.name = name;
137
- }
138
- };
139
- Object.defineProperty(ErrorSubclass, 'name', {
140
- value: name
141
- });
142
- return ErrorSubclass;
143
- }
144
- static formatValidationError(error) {
145
- if (!error.meta) return error.message;
146
- let formattedMessage = `${error.message} (${error.code})`;
147
- if (error.meta.validationErrors) formattedMessage += `\nValidation Errors: ${JSON.stringify(error.meta.validationErrors, null, 2)}`;
148
- const otherMeta = Object.fromEntries(Object.entries(error.meta).filter(([key])=>'validationErrors' !== key));
149
- if (Object.keys(otherMeta).length > 0) formattedMessage += `\nAdditional Context: ${JSON.stringify(otherMeta, null, 2)}`;
150
- return formattedMessage;
151
- }
152
- }
153
- function toNextHandler(instance) {
154
- const handleRequest = async (request)=>{
155
- try {
156
- const basePath = instance.options?.basePath || '/api/c15t';
157
- const originalUrl = new URL(request.url);
158
- let pathWithoutBase = originalUrl.pathname;
159
- if (pathWithoutBase.startsWith(basePath)) {
160
- pathWithoutBase = pathWithoutBase.substring(basePath.length);
161
- if (!pathWithoutBase.startsWith('/')) pathWithoutBase = `/${pathWithoutBase}`;
162
- }
163
- const rewrittenUrl = new URL(originalUrl.toString());
164
- rewrittenUrl.pathname = pathWithoutBase;
165
- const rewrittenRequest = new Request(rewrittenUrl.toString(), {
166
- method: request.method,
167
- headers: request.headers,
168
- body: request.body,
169
- credentials: 'include',
170
- duplex: [
171
- 'GET',
172
- 'HEAD'
173
- ].includes(request.method) ? void 0 : 'half'
174
- });
175
- await updateBaseUrl(request, basePath);
176
- const result = await instance.handler(rewrittenRequest);
177
- return await result.match((response)=>response, (error)=>{
178
- const status = error.statusCode || 500;
179
- const message = error.message || error_codes_ERROR_CODES.INTERNAL_SERVER_ERROR;
180
- return new Response(JSON.stringify({
181
- error: true,
182
- code: error.code || error_codes_ERROR_CODES.INTERNAL_SERVER_ERROR,
183
- message,
184
- meta: error.meta
185
- }), {
186
- status,
187
- headers: {
188
- 'Content-Type': 'application/json'
189
- }
190
- });
191
- });
192
- } catch (error) {
193
- return new Response(JSON.stringify({
194
- error: true,
195
- code: error_codes_ERROR_CODES.INTERNAL_SERVER_ERROR,
196
- message: 'An unexpected error occurred',
197
- meta: {
198
- error: String(error)
199
- }
200
- }), {
201
- status: 500,
202
- headers: {
203
- 'Content-Type': 'application/json'
204
- }
205
- });
206
- }
207
- };
208
- return {
209
- GET: handleRequest,
210
- POST: handleRequest,
211
- PUT: handleRequest,
212
- DELETE: handleRequest,
213
- OPTIONS: handleRequest,
214
- HEAD: handleRequest,
215
- PATCH: handleRequest
216
- };
217
- async function updateBaseUrl(request, basePath) {
218
- if (!instance.$context) return;
219
- try {
220
- const contextResult = await instance.$context;
221
- contextResult.match((context)=>{
222
- const url = new URL(request.url);
223
- const baseURL = `${url.protocol}//${url.host}${basePath}`;
224
- if (!context.baseURL || context.baseURL !== baseURL) {
225
- context.baseURL = baseURL;
226
- if (context.options) context.options.baseURL = baseURL;
227
- }
228
- }, ()=>{});
229
- } catch {}
230
- }
231
- }
232
- function toNextJsHandler(auth) {
233
- const handler = async (request)=>'handler' in auth ? auth.handler(request) : auth(request);
234
- return {
235
- GET: handler,
236
- POST: handler
237
- };
238
- }
239
- export { toNextHandler, toNextJsHandler };