@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.
- package/.turbo/turbo-build.log +63 -37
- package/CHANGELOG.md +4 -209
- package/README.md +86 -164
- package/dist/contracts/consent/index.d.ts +103 -615
- package/dist/contracts/consent/index.d.ts.map +1 -1
- package/dist/contracts/consent/post.contract.d.ts +42 -140
- package/dist/contracts/consent/post.contract.d.ts.map +1 -1
- package/dist/contracts/consent/show-banner.contract.d.ts +28 -376
- package/dist/contracts/consent/show-banner.contract.d.ts.map +1 -1
- package/dist/contracts/consent/verify.contract.d.ts +33 -99
- package/dist/contracts/consent/verify.contract.d.ts.map +1 -1
- package/dist/contracts/index.d.ts +222 -1356
- package/dist/contracts/index.d.ts.map +1 -1
- package/dist/contracts/meta/index.d.ts +8 -63
- package/dist/contracts/meta/index.d.ts.map +1 -1
- package/dist/contracts/meta/status.contract.d.ts +8 -63
- package/dist/contracts/meta/status.contract.d.ts.map +1 -1
- package/dist/contracts/shared/jurisdiction.schema.d.ts +21 -9
- package/dist/contracts/shared/jurisdiction.schema.d.ts.map +1 -1
- package/dist/contracts.cjs +100 -106
- package/dist/contracts.js +100 -106
- package/dist/core.cjs +681 -681
- package/dist/core.d.ts +118 -678
- package/dist/core.d.ts.map +1 -1
- package/dist/core.js +634 -637
- package/dist/handlers/consent/index.d.ts +103 -615
- package/dist/handlers/consent/index.d.ts.map +1 -1
- package/dist/handlers/consent/post.handler.d.ts +42 -140
- package/dist/handlers/consent/post.handler.d.ts.map +1 -1
- package/dist/handlers/consent/show-banner/handler.d.ts +28 -376
- package/dist/handlers/consent/show-banner/handler.d.ts.map +1 -1
- package/dist/handlers/consent/show-banner/translations.d.ts.map +1 -1
- package/dist/handlers/consent/verify.handler.d.ts +33 -99
- package/dist/handlers/consent/verify.handler.d.ts.map +1 -1
- package/dist/handlers/meta/index.d.ts +8 -63
- package/dist/handlers/meta/index.d.ts.map +1 -1
- package/dist/handlers/meta/status.handler.d.ts +8 -63
- package/dist/handlers/meta/status.handler.d.ts.map +1 -1
- package/dist/init.d.ts.map +1 -1
- package/dist/middleware/openapi/index.d.ts +2 -2
- package/dist/middleware/openapi/index.d.ts.map +1 -1
- package/dist/pkgs/data-model/fields/index.cjs +14 -26
- package/dist/pkgs/data-model/fields/index.d.ts +4 -4
- package/dist/pkgs/data-model/fields/index.d.ts.map +1 -1
- package/dist/pkgs/data-model/fields/index.js +14 -26
- package/dist/pkgs/data-model/fields/zod-fields.d.ts +195 -871
- package/dist/pkgs/data-model/fields/zod-fields.d.ts.map +1 -1
- package/dist/pkgs/data-model/hooks/index.d.ts +2 -2
- package/dist/pkgs/data-model/hooks/index.d.ts.map +1 -1
- package/dist/pkgs/data-model/index.cjs +346 -358
- package/dist/pkgs/data-model/index.d.ts +1 -1
- package/dist/pkgs/data-model/index.d.ts.map +1 -1
- package/dist/pkgs/data-model/index.js +345 -357
- package/dist/pkgs/data-model/schema/index.cjs +346 -358
- package/dist/pkgs/data-model/schema/index.d.ts +1 -1
- package/dist/pkgs/data-model/schema/index.d.ts.map +1 -1
- package/dist/pkgs/data-model/schema/index.js +345 -357
- package/dist/pkgs/data-model/schema/schemas.d.ts +2 -2
- package/dist/pkgs/data-model/schema/schemas.d.ts.map +1 -1
- package/dist/pkgs/db-adapters/adapters/drizzle-adapter/drizzle-adapter.d.ts +3 -0
- package/dist/pkgs/db-adapters/adapters/drizzle-adapter/drizzle-adapter.d.ts.map +1 -1
- package/dist/pkgs/db-adapters/adapters/drizzle-adapter/index.cjs +158 -170
- package/dist/pkgs/db-adapters/adapters/drizzle-adapter/index.js +157 -169
- package/dist/pkgs/db-adapters/adapters/index.d.ts +2 -2
- package/dist/pkgs/db-adapters/adapters/index.d.ts.map +1 -1
- package/dist/pkgs/db-adapters/adapters/kysely-adapter/index.cjs +215 -227
- package/dist/pkgs/db-adapters/adapters/kysely-adapter/index.d.ts +2 -2
- package/dist/pkgs/db-adapters/adapters/kysely-adapter/index.d.ts.map +1 -1
- package/dist/pkgs/db-adapters/adapters/kysely-adapter/index.js +213 -225
- package/dist/pkgs/db-adapters/adapters/kysely-adapter/kysely-adapter.d.ts +2 -0
- package/dist/pkgs/db-adapters/adapters/kysely-adapter/kysely-adapter.d.ts.map +1 -1
- package/dist/pkgs/db-adapters/adapters/kysely-adapter/tests/test-utils.d.ts +1 -1
- package/dist/pkgs/db-adapters/adapters/kysely-adapter/tests/test-utils.d.ts.map +1 -1
- package/dist/pkgs/db-adapters/adapters/memory-adapter/index.cjs +158 -170
- package/dist/pkgs/db-adapters/adapters/memory-adapter/index.js +157 -169
- package/dist/pkgs/db-adapters/adapters/memory-adapter/memory-adapter.d.ts +3 -0
- package/dist/pkgs/db-adapters/adapters/memory-adapter/memory-adapter.d.ts.map +1 -1
- package/dist/pkgs/db-adapters/adapters/prisma-adapter/index.cjs +243 -255
- package/dist/pkgs/db-adapters/adapters/prisma-adapter/index.d.ts +1 -1
- package/dist/pkgs/db-adapters/adapters/prisma-adapter/index.d.ts.map +1 -1
- package/dist/pkgs/db-adapters/adapters/prisma-adapter/index.js +241 -253
- package/dist/pkgs/db-adapters/adapters/prisma-adapter/prisma-adapter.d.ts +3 -0
- package/dist/pkgs/db-adapters/adapters/prisma-adapter/prisma-adapter.d.ts.map +1 -1
- package/dist/pkgs/db-adapters/index.cjs +714 -726
- package/dist/pkgs/db-adapters/index.d.ts +6 -6
- package/dist/pkgs/db-adapters/index.d.ts.map +1 -1
- package/dist/pkgs/db-adapters/index.js +708 -720
- package/dist/pkgs/migrations/get-migration.d.ts.map +1 -1
- package/dist/pkgs/migrations/get-schema/get-schema.d.ts.map +1 -1
- package/dist/pkgs/migrations/get-schema/process-tables.d.ts.map +1 -1
- package/dist/pkgs/migrations/index.cjs +236 -248
- package/dist/pkgs/migrations/index.d.ts +4 -4
- package/dist/pkgs/migrations/index.d.ts.map +1 -1
- package/dist/pkgs/migrations/index.js +235 -247
- package/dist/pkgs/results/index.cjs +67 -67
- package/dist/pkgs/results/index.d.ts +5 -5
- package/dist/pkgs/results/index.d.ts.map +1 -1
- package/dist/pkgs/results/index.js +67 -67
- package/dist/pkgs/results/orpc-error-handler.d.ts +1 -1
- package/dist/pkgs/results/orpc-error-handler.d.ts.map +1 -1
- package/dist/pkgs/types/index.d.ts +1 -2
- package/dist/pkgs/types/index.d.ts.map +1 -1
- package/dist/pkgs/types/options.d.ts +9 -2
- package/dist/pkgs/types/options.d.ts.map +1 -1
- package/dist/pkgs/utils/index.d.ts +1 -1
- package/dist/pkgs/utils/index.d.ts.map +1 -1
- package/dist/pkgs/utils/logger.d.ts +1 -1
- package/dist/pkgs/utils/logger.d.ts.map +1 -1
- package/dist/router.cjs +114 -117
- package/dist/router.d.ts +111 -678
- package/dist/router.d.ts.map +1 -1
- package/dist/router.js +114 -117
- package/dist/schema/audit-log/schema.d.ts +2 -24
- package/dist/schema/audit-log/schema.d.ts.map +1 -1
- package/dist/schema/audit-log/table.d.ts +2 -24
- package/dist/schema/audit-log/table.d.ts.map +1 -1
- package/dist/schema/consent/registry.d.ts +8 -8
- package/dist/schema/consent/schema.d.ts +9 -33
- package/dist/schema/consent/schema.d.ts.map +1 -1
- package/dist/schema/consent/table.d.ts +9 -33
- package/dist/schema/consent/table.d.ts.map +1 -1
- package/dist/schema/consent-policy/registry.d.ts +20 -20
- package/dist/schema/consent-policy/schema.d.ts +22 -30
- package/dist/schema/consent-policy/schema.d.ts.map +1 -1
- package/dist/schema/consent-policy/table.d.ts +13 -29
- package/dist/schema/consent-policy/table.d.ts.map +1 -1
- package/dist/schema/consent-purpose/registry.d.ts +6 -6
- package/dist/schema/consent-purpose/schema.d.ts +5 -27
- package/dist/schema/consent-purpose/schema.d.ts.map +1 -1
- package/dist/schema/consent-purpose/table.d.ts +5 -27
- package/dist/schema/consent-purpose/table.d.ts.map +1 -1
- package/dist/schema/consent-record/schema.d.ts +3 -19
- package/dist/schema/consent-record/schema.d.ts.map +1 -1
- package/dist/schema/consent-record/table.d.ts +3 -19
- package/dist/schema/consent-record/table.d.ts.map +1 -1
- package/dist/schema/create-registry.d.ts +58 -58
- package/dist/schema/definition.d.ts +42 -176
- package/dist/schema/definition.d.ts.map +1 -1
- package/dist/schema/domain/registry.d.ts +20 -20
- package/dist/schema/domain/schema.d.ts +6 -24
- package/dist/schema/domain/schema.d.ts.map +1 -1
- package/dist/schema/domain/table.d.ts +6 -24
- package/dist/schema/domain/table.d.ts.map +1 -1
- package/dist/schema/index.cjs +426 -438
- package/dist/schema/index.d.ts +12 -12
- package/dist/schema/index.d.ts.map +1 -1
- package/dist/schema/index.js +426 -438
- package/dist/schema/schemas.d.ts +42 -176
- package/dist/schema/schemas.d.ts.map +1 -1
- package/dist/schema/subject/registry.d.ts +4 -4
- package/dist/schema/subject/schema.d.ts +4 -20
- package/dist/schema/subject/schema.d.ts.map +1 -1
- package/dist/schema/subject/table.d.ts +4 -20
- package/dist/schema/subject/table.d.ts.map +1 -1
- package/dist/schema/types.d.ts +1 -1
- package/dist/schema/types.d.ts.map +1 -1
- package/dist/testing/contract-testing.d.ts +3 -2
- package/dist/testing/contract-testing.d.ts.map +1 -1
- package/dist/types/index.d.ts +5 -4
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/options.d.ts +2 -2
- package/dist/types/options.d.ts.map +1 -1
- package/dist/v2/contracts/consent/index.d.ts +260 -0
- package/dist/v2/contracts/consent/index.d.ts.map +1 -0
- package/dist/v2/contracts/consent/index.test.d.ts +2 -0
- package/dist/v2/contracts/consent/index.test.d.ts.map +1 -0
- package/dist/v2/contracts/consent/post.contract.d.ts +114 -0
- package/dist/v2/contracts/consent/post.contract.d.ts.map +1 -0
- package/dist/v2/contracts/consent/post.contract.test.d.ts +2 -0
- package/dist/v2/contracts/consent/post.contract.test.d.ts.map +1 -0
- package/dist/v2/contracts/consent/show-banner.contract.d.ts +68 -0
- package/dist/v2/contracts/consent/show-banner.contract.d.ts.map +1 -0
- package/dist/v2/contracts/consent/show-banner.contract.test.d.ts +2 -0
- package/dist/v2/contracts/consent/show-banner.contract.test.d.ts.map +1 -0
- package/dist/v2/contracts/consent/verify.contract.d.ts +81 -0
- package/dist/v2/contracts/consent/verify.contract.d.ts.map +1 -0
- package/dist/v2/contracts/consent/verify.contract.test.d.ts +2 -0
- package/dist/v2/contracts/consent/verify.contract.test.d.ts.map +1 -0
- package/dist/v2/contracts/index.cjs +644 -0
- package/dist/v2/contracts/index.d.ts +563 -0
- package/dist/v2/contracts/index.d.ts.map +1 -0
- package/dist/v2/contracts/index.js +607 -0
- package/dist/v2/contracts/meta/index.d.ts +19 -0
- package/dist/v2/contracts/meta/index.d.ts.map +1 -0
- package/dist/v2/contracts/meta/index.test.d.ts +2 -0
- package/dist/v2/contracts/meta/index.test.d.ts.map +1 -0
- package/dist/v2/contracts/meta/status.contract.d.ts +18 -0
- package/dist/v2/contracts/meta/status.contract.d.ts.map +1 -0
- package/dist/v2/contracts/meta/status.contract.test.d.ts +2 -0
- package/dist/v2/contracts/meta/status.contract.test.d.ts.map +1 -0
- package/dist/v2/contracts/shared/jurisdiction.schema.d.ts +36 -0
- package/dist/v2/contracts/shared/jurisdiction.schema.d.ts.map +1 -0
- package/dist/v2/contracts/test.utils.d.ts +38 -0
- package/dist/v2/contracts/test.utils.d.ts.map +1 -0
- package/dist/v2/core.cjs +2181 -0
- package/dist/v2/core.d.ts +364 -0
- package/dist/v2/core.d.ts.map +1 -0
- package/dist/v2/core.js +2130 -0
- package/dist/v2/db/adapters/drizzle.cjs +36 -0
- package/dist/v2/db/adapters/drizzle.d.ts +2 -0
- package/dist/v2/db/adapters/drizzle.d.ts.map +1 -0
- package/dist/v2/db/adapters/drizzle.js +3 -0
- package/dist/v2/db/adapters/index.cjs +18 -0
- package/dist/v2/db/adapters/index.d.ts +2 -0
- package/dist/v2/db/adapters/index.d.ts.map +1 -0
- package/dist/v2/db/adapters/index.js +0 -0
- package/dist/v2/db/adapters/kysely.cjs +36 -0
- package/dist/v2/db/adapters/kysely.d.ts +2 -0
- package/dist/v2/db/adapters/kysely.d.ts.map +1 -0
- package/dist/v2/db/adapters/kysely.js +3 -0
- package/dist/v2/db/adapters/mongo.cjs +36 -0
- package/dist/v2/db/adapters/mongo.d.ts +2 -0
- package/dist/v2/db/adapters/mongo.d.ts.map +1 -0
- package/dist/v2/db/adapters/mongo.js +3 -0
- package/dist/v2/db/adapters/prisma.cjs +36 -0
- package/dist/v2/db/adapters/prisma.d.ts +2 -0
- package/dist/v2/db/adapters/prisma.d.ts.map +1 -0
- package/dist/v2/db/adapters/prisma.js +3 -0
- package/dist/v2/db/adapters/typeorm.cjs +36 -0
- package/dist/v2/db/adapters/typeorm.d.ts +2 -0
- package/dist/v2/db/adapters/typeorm.d.ts.map +1 -0
- package/dist/v2/db/adapters/typeorm.js +3 -0
- package/dist/v2/db/migrator/index.cjs +61 -0
- package/dist/v2/db/migrator/index.d.ts +29 -0
- package/dist/v2/db/migrator/index.d.ts.map +1 -0
- package/dist/v2/db/migrator/index.js +27 -0
- package/dist/v2/db/registry/audit-log.d.ts +21 -0
- package/dist/v2/db/registry/audit-log.d.ts.map +1 -0
- package/dist/v2/db/registry/audit-log.test.d.ts +2 -0
- package/dist/v2/db/registry/audit-log.test.d.ts.map +1 -0
- package/dist/v2/db/registry/consent-policy.d.ts +29 -0
- package/dist/v2/db/registry/consent-policy.d.ts.map +1 -0
- package/dist/v2/db/registry/consent-policy.test.d.ts +2 -0
- package/dist/v2/db/registry/consent-policy.test.d.ts.map +1 -0
- package/dist/v2/db/registry/consent-purpose.d.ts +16 -0
- package/dist/v2/db/registry/consent-purpose.d.ts.map +1 -0
- package/dist/v2/db/registry/consent-purpose.test.d.ts +2 -0
- package/dist/v2/db/registry/consent-purpose.test.d.ts.map +1 -0
- package/dist/v2/db/registry/consent.d.ts +20 -0
- package/dist/v2/db/registry/consent.d.ts.map +1 -0
- package/dist/v2/db/registry/consent.test.d.ts +2 -0
- package/dist/v2/db/registry/consent.test.d.ts.map +1 -0
- package/dist/v2/db/registry/domain.d.ts +24 -0
- package/dist/v2/db/registry/domain.d.ts.map +1 -0
- package/dist/v2/db/registry/domain.test.d.ts +2 -0
- package/dist/v2/db/registry/domain.test.d.ts.map +1 -0
- package/dist/v2/db/registry/index.d.ts +102 -0
- package/dist/v2/db/registry/index.d.ts.map +1 -0
- package/dist/v2/db/registry/subject.d.ts +18 -0
- package/dist/v2/db/registry/subject.d.ts.map +1 -0
- package/dist/v2/db/registry/subject.test.d.ts +2 -0
- package/dist/v2/db/registry/subject.test.d.ts.map +1 -0
- package/dist/v2/db/registry/types.d.ts +10 -0
- package/dist/v2/db/registry/types.d.ts.map +1 -0
- package/dist/v2/db/registry/utils/generate-id.d.ts +25 -0
- package/dist/v2/db/registry/utils/generate-id.d.ts.map +1 -0
- package/dist/v2/db/registry/utils/generate-id.test.d.ts +2 -0
- package/dist/v2/db/registry/utils/generate-id.test.d.ts.map +1 -0
- package/dist/v2/db/registry/utils.d.ts +25 -0
- package/dist/v2/db/registry/utils.d.ts.map +1 -0
- package/dist/v2/db/schema/1.0.0/audit-log.d.ts +29 -0
- package/dist/v2/db/schema/1.0.0/audit-log.d.ts.map +1 -0
- package/dist/v2/db/schema/1.0.0/consent-policy.d.ts +45 -0
- package/dist/v2/db/schema/1.0.0/consent-policy.d.ts.map +1 -0
- package/dist/v2/db/schema/1.0.0/consent-purpose.d.ts +27 -0
- package/dist/v2/db/schema/1.0.0/consent-purpose.d.ts.map +1 -0
- package/dist/v2/db/schema/1.0.0/consent-record.d.ts +19 -0
- package/dist/v2/db/schema/1.0.0/consent-record.d.ts.map +1 -0
- package/dist/v2/db/schema/1.0.0/consent.d.ts +42 -0
- package/dist/v2/db/schema/1.0.0/consent.d.ts.map +1 -0
- package/dist/v2/db/schema/1.0.0/domain.d.ts +23 -0
- package/dist/v2/db/schema/1.0.0/domain.d.ts.map +1 -0
- package/dist/v2/db/schema/1.0.0/index.d.ts +1513 -0
- package/dist/v2/db/schema/1.0.0/index.d.ts.map +1 -0
- package/dist/v2/db/schema/1.0.0/subject.d.ts +23 -0
- package/dist/v2/db/schema/1.0.0/subject.d.ts.map +1 -0
- package/dist/v2/db/schema/index.cjs +326 -0
- package/dist/v2/db/schema/index.d.ts +1507 -0
- package/dist/v2/db/schema/index.d.ts.map +1 -0
- package/dist/v2/db/schema/index.js +241 -0
- package/dist/v2/define-config.cjs +36 -0
- package/dist/v2/define-config.d.ts +5 -0
- package/dist/v2/define-config.d.ts.map +1 -0
- package/dist/v2/define-config.js +2 -0
- package/dist/v2/handlers/consent/index.d.ts +260 -0
- package/dist/v2/handlers/consent/index.d.ts.map +1 -0
- package/dist/v2/handlers/consent/post.handler.d.ts +136 -0
- package/dist/v2/handlers/consent/post.handler.d.ts.map +1 -0
- package/dist/v2/handlers/consent/show-banner/geo.d.ts +10 -0
- package/dist/v2/handlers/consent/show-banner/geo.d.ts.map +1 -0
- package/dist/v2/handlers/consent/show-banner/geo.test.d.ts +2 -0
- package/dist/v2/handlers/consent/show-banner/geo.test.d.ts.map +1 -0
- package/dist/v2/handlers/consent/show-banner/handler.d.ts +71 -0
- package/dist/v2/handlers/consent/show-banner/handler.d.ts.map +1 -0
- package/dist/v2/handlers/consent/show-banner/handler.test.d.ts +2 -0
- package/dist/v2/handlers/consent/show-banner/handler.test.d.ts.map +1 -0
- package/dist/v2/handlers/consent/show-banner/translations.d.ts +13 -0
- package/dist/v2/handlers/consent/show-banner/translations.d.ts.map +1 -0
- package/dist/v2/handlers/consent/show-banner/translations.test.d.ts +2 -0
- package/dist/v2/handlers/consent/show-banner/translations.test.d.ts.map +1 -0
- package/dist/v2/handlers/consent/verify.handler.d.ts +103 -0
- package/dist/v2/handlers/consent/verify.handler.d.ts.map +1 -0
- package/dist/v2/handlers/meta/index.d.ts +19 -0
- package/dist/v2/handlers/meta/index.d.ts.map +1 -0
- package/dist/v2/handlers/meta/status.handler.d.ts +17 -0
- package/dist/v2/handlers/meta/status.handler.d.ts.map +1 -0
- package/dist/v2/init.d.ts +3 -0
- package/dist/v2/init.d.ts.map +1 -0
- package/dist/v2/init.test.d.ts +2 -0
- package/dist/v2/init.test.d.ts.map +1 -0
- package/dist/v2/middleware/cors/cors.d.ts +37 -0
- package/dist/v2/middleware/cors/cors.d.ts.map +1 -0
- package/dist/v2/middleware/cors/cors.test.d.ts +2 -0
- package/dist/v2/middleware/cors/cors.test.d.ts.map +1 -0
- package/dist/v2/middleware/cors/index.d.ts +30 -0
- package/dist/v2/middleware/cors/index.d.ts.map +1 -0
- package/dist/v2/middleware/cors/is-origin-trusted.d.ts +49 -0
- package/dist/v2/middleware/cors/is-origin-trusted.d.ts.map +1 -0
- package/dist/v2/middleware/cors/is-origin-trusted.test.d.ts +2 -0
- package/dist/v2/middleware/cors/is-origin-trusted.test.d.ts.map +1 -0
- package/dist/v2/middleware/cors/process-cors.d.ts +31 -0
- package/dist/v2/middleware/cors/process-cors.d.ts.map +1 -0
- package/dist/v2/middleware/openapi/config.d.ts +28 -0
- package/dist/v2/middleware/openapi/config.d.ts.map +1 -0
- package/dist/v2/middleware/openapi/handlers.d.ts +29 -0
- package/dist/v2/middleware/openapi/handlers.d.ts.map +1 -0
- package/dist/v2/middleware/openapi/index.d.ts +11 -0
- package/dist/v2/middleware/openapi/index.d.ts.map +1 -0
- package/dist/v2/middleware/process-ip/index.d.ts +3 -0
- package/dist/v2/middleware/process-ip/index.d.ts.map +1 -0
- package/dist/v2/router.cjs +1275 -0
- package/dist/v2/router.d.ts +280 -0
- package/dist/v2/router.d.ts.map +1 -0
- package/dist/v2/router.js +1231 -0
- package/dist/v2/types/api.d.ts +27 -0
- package/dist/v2/types/api.d.ts.map +1 -0
- package/dist/v2/types/index.cjs +40 -0
- package/dist/v2/types/index.d.ts +104 -0
- package/dist/v2/types/index.d.ts.map +1 -0
- package/dist/v2/types/index.js +6 -0
- package/dist/v2/utils/create-telemetry-options.d.ts +28 -0
- package/dist/v2/utils/create-telemetry-options.d.ts.map +1 -0
- package/dist/v2/utils/env.d.ts +60 -0
- package/dist/v2/utils/env.d.ts.map +1 -0
- package/dist/v2/utils/index.d.ts +3 -0
- package/dist/v2/utils/index.d.ts.map +1 -0
- package/dist/v2/utils/logger.d.ts +16 -0
- package/dist/v2/utils/logger.d.ts.map +1 -0
- package/dist/version.d.ts +1 -1
- package/package.json +106 -15
- package/readme.json +30 -0
- package/rslib.config.ts +13 -14
- package/src/__tests__/server.test.ts +1 -1
- package/src/contracts/consent/post.contract.test.ts +3 -8
- package/src/contracts/consent/post.contract.ts +13 -13
- package/src/contracts/consent/show-banner.contract.test.ts +9 -0
- package/src/contracts/consent/show-banner.contract.ts +2 -0
- package/src/contracts/consent/verify.contract.ts +19 -23
- package/src/core.ts +7 -0
- package/src/handlers/consent/show-banner/handler.ts +12 -9
- package/src/handlers/consent/show-banner/translations.ts +2 -2
- package/src/init.ts +9 -6
- package/src/middleware/openapi/index.ts +2 -2
- package/src/pkgs/api-router/hooks/__tests__/processor.test.ts +1 -1
- package/src/pkgs/data-model/fields/index.ts +17 -22
- package/src/pkgs/data-model/fields/zod-fields.ts +14 -26
- package/src/pkgs/data-model/hooks/index.ts +3 -2
- package/src/pkgs/data-model/index.ts +2 -4
- package/src/pkgs/data-model/schema/index.ts +6 -7
- package/src/pkgs/data-model/schema/schemas.ts +3 -3
- package/src/pkgs/db-adapters/adapters/drizzle-adapter/drizzle-adapter.ts +4 -1
- package/src/pkgs/db-adapters/adapters/index.ts +2 -2
- package/src/pkgs/db-adapters/adapters/kysely-adapter/index.ts +4 -4
- package/src/pkgs/db-adapters/adapters/kysely-adapter/kysely-adapter.ts +4 -5
- package/src/pkgs/db-adapters/adapters/kysely-adapter/tests/postgres.test.ts +2 -4
- package/src/pkgs/db-adapters/adapters/kysely-adapter/tests/sqlite.test.ts +2 -3
- package/src/pkgs/db-adapters/adapters/kysely-adapter/tests/test-utils.ts +1 -6
- package/src/pkgs/db-adapters/adapters/memory-adapter/memory-adapter.ts +4 -1
- package/src/pkgs/db-adapters/adapters/prisma-adapter/index.ts +1 -1
- package/src/pkgs/db-adapters/adapters/prisma-adapter/prisma-adapter.ts +5 -2
- package/src/pkgs/db-adapters/index.ts +12 -13
- package/src/pkgs/migrations/get-migration.ts +4 -2
- package/src/pkgs/migrations/get-schema/get-schema.ts +0 -1
- package/src/pkgs/migrations/get-schema/process-fields.ts +1 -1
- package/src/pkgs/migrations/get-schema/process-tables.ts +0 -2
- package/src/pkgs/migrations/index.ts +7 -8
- package/src/pkgs/results/__tests__/error-codes.test.ts +2 -2
- package/src/pkgs/results/index.ts +22 -27
- package/src/pkgs/results/orpc-error-handler.ts +1 -1
- package/src/pkgs/results/results/result-helpers.ts +1 -1
- package/src/pkgs/types/index.ts +4 -4
- package/src/pkgs/types/options.ts +10 -3
- package/src/pkgs/utils/index.ts +1 -1
- package/src/pkgs/utils/logger.ts +1 -1
- package/src/schema/audit-log/schema.ts +3 -3
- package/src/schema/consent/schema.ts +4 -4
- package/src/schema/consent-policy/schema.ts +3 -3
- package/src/schema/consent-purpose/schema.ts +4 -4
- package/src/schema/consent-record/schema.ts +3 -3
- package/src/schema/definition.ts +1 -1
- package/src/schema/domain/schema.ts +5 -5
- package/src/schema/index.ts +14 -17
- package/src/schema/subject/schema.ts +3 -3
- package/src/schema/types.ts +1 -1
- package/src/testing/contract-testing.ts +15 -52
- package/src/types/index.ts +8 -8
- package/src/types/options.ts +2 -3
- package/src/v2/contracts/consent/index.test.ts +5 -0
- package/src/v2/contracts/consent/index.ts +9 -0
- package/src/v2/contracts/consent/post.contract.test.ts +521 -0
- package/src/v2/contracts/consent/post.contract.ts +155 -0
- package/src/v2/contracts/consent/show-banner.contract.test.ts +252 -0
- package/src/v2/contracts/consent/show-banner.contract.ts +73 -0
- package/src/v2/contracts/consent/verify.contract.test.ts +185 -0
- package/src/v2/contracts/consent/verify.contract.ts +122 -0
- package/src/v2/contracts/index.ts +20 -0
- package/src/v2/contracts/meta/index.test.ts +5 -0
- package/src/v2/contracts/meta/index.ts +5 -0
- package/src/v2/contracts/meta/status.contract.test.ts +226 -0
- package/src/v2/contracts/meta/status.contract.ts +34 -0
- package/src/v2/contracts/shared/jurisdiction.schema.ts +30 -0
- package/src/v2/contracts/test.utils.ts +400 -0
- package/src/v2/core.ts +379 -0
- package/src/v2/db/adapters/drizzle.ts +1 -0
- package/src/v2/db/adapters/index.ts +1 -0
- package/src/v2/db/adapters/kysely.ts +1 -0
- package/src/v2/db/adapters/mongo.ts +1 -0
- package/src/v2/db/adapters/prisma.ts +1 -0
- package/src/v2/db/adapters/typeorm.ts +1 -0
- package/src/v2/db/migrator/index.ts +80 -0
- package/src/v2/db/registry/audit-log.test.ts +77 -0
- package/src/v2/db/registry/audit-log.ts +46 -0
- package/src/v2/db/registry/consent-policy.test.ts +778 -0
- package/src/v2/db/registry/consent-policy.ts +74 -0
- package/src/v2/db/registry/consent-purpose.test.ts +485 -0
- package/src/v2/db/registry/consent-purpose.ts +41 -0
- package/src/v2/db/registry/consent.test.ts +843 -0
- package/src/v2/db/registry/consent.ts +42 -0
- package/src/v2/db/registry/domain.test.ts +463 -0
- package/src/v2/db/registry/domain.ts +51 -0
- package/src/v2/db/registry/index.ts +18 -0
- package/src/v2/db/registry/subject.test.ts +497 -0
- package/src/v2/db/registry/subject.ts +101 -0
- package/src/v2/db/registry/types.ts +10 -0
- package/src/v2/db/registry/utils/generate-id.test.ts +217 -0
- package/src/v2/db/registry/utils/generate-id.ts +134 -0
- package/src/v2/db/registry/utils.ts +134 -0
- package/src/v2/db/schema/1.0.0/audit-log.ts +32 -0
- package/src/v2/db/schema/1.0.0/consent-policy.ts +41 -0
- package/src/v2/db/schema/1.0.0/consent-purpose.ts +30 -0
- package/src/v2/db/schema/1.0.0/consent-record.ts +22 -0
- package/src/v2/db/schema/1.0.0/consent.ts +38 -0
- package/src/v2/db/schema/1.0.0/domain.ts +26 -0
- package/src/v2/db/schema/1.0.0/index.ts +56 -0
- package/src/v2/db/schema/1.0.0/subject.ts +26 -0
- package/src/v2/db/schema/index.ts +9 -0
- package/src/v2/define-config.ts +5 -0
- package/src/v2/handlers/consent/index.ts +9 -0
- package/src/v2/handlers/consent/post.handler.ts +254 -0
- package/src/v2/handlers/consent/show-banner/geo.test.ts +281 -0
- package/src/v2/handlers/consent/show-banner/geo.ts +96 -0
- package/src/v2/handlers/consent/show-banner/handler.test.ts +374 -0
- package/src/v2/handlers/consent/show-banner/handler.ts +123 -0
- package/src/v2/handlers/consent/show-banner/translations.test.ts +121 -0
- package/src/v2/handlers/consent/show-banner/translations.ts +79 -0
- package/src/v2/handlers/consent/verify.handler.ts +288 -0
- package/src/v2/handlers/meta/index.ts +5 -0
- package/src/v2/handlers/meta/status.handler.ts +43 -0
- package/src/v2/init.test.ts +114 -0
- package/src/v2/init.ts +126 -0
- package/src/v2/middleware/cors/cors.test.ts +111 -0
- package/src/v2/middleware/cors/cors.ts +192 -0
- package/src/v2/middleware/cors/index.ts +30 -0
- package/src/v2/middleware/cors/is-origin-trusted.test.ts +104 -0
- package/src/v2/middleware/cors/is-origin-trusted.ts +126 -0
- package/src/v2/middleware/cors/process-cors.ts +91 -0
- package/src/v2/middleware/openapi/config.ts +27 -0
- package/src/v2/middleware/openapi/handlers.ts +132 -0
- package/src/v2/middleware/openapi/index.ts +11 -0
- package/src/v2/middleware/process-ip/index.ts +39 -0
- package/src/v2/router.ts +8 -0
- package/src/v2/types/api.ts +32 -0
- package/src/v2/types/index.ts +121 -0
- package/src/v2/utils/create-telemetry-options.ts +115 -0
- package/src/v2/utils/env.ts +84 -0
- package/src/v2/utils/index.ts +2 -0
- package/src/v2/utils/logger.ts +38 -0
- package/src/version.ts +1 -1
- package/vitest.config.ts +11 -2
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,57 +1,83 @@
|
|
|
1
1
|
|
|
2
|
-
> @c15t/backend@1.
|
|
2
|
+
> @c15t/backend@1.6.0 build /home/runner/work/c15t/c15t/packages/backend
|
|
3
3
|
> pnpm prebuild && rslib build
|
|
4
4
|
|
|
5
5
|
|
|
6
|
-
> @c15t/backend@1.
|
|
6
|
+
> @c15t/backend@1.6.0 prebuild /home/runner/work/c15t/c15t/packages/backend
|
|
7
7
|
> genversion --esm --semi src/version.ts
|
|
8
8
|
|
|
9
9
|
Rslib v0.6.2
|
|
10
10
|
|
|
11
|
-
ready built in [1m0.
|
|
12
|
-
ready built in [1m0.
|
|
13
|
-
start generating declaration files... [90m(cjs)[39m
|
|
11
|
+
ready built in [1m0.75[22m s[90m (esm)[39m
|
|
12
|
+
ready built in [1m0.74[22m s[90m (cjs)[39m
|
|
14
13
|
start generating declaration files... [90m(esm)[39m
|
|
15
|
-
|
|
16
|
-
ready declaration files generated in [
|
|
14
|
+
start generating declaration files... [90m(cjs)[39m
|
|
15
|
+
ready declaration files generated in [1m10.8[22m s [90m(cjs)[39m
|
|
16
|
+
ready declaration files generated in [1m10.9[22m s [90m(esm)[39m
|
|
17
17
|
|
|
18
18
|
[34m File (esm) Size [39m
|
|
19
19
|
[2mdist/pkgs/types/[22m[36mindex.js[39m 0.00 kB
|
|
20
|
-
[2mdist/
|
|
20
|
+
[2mdist/v2/db/adapters/[22m[36mindex.js[39m 0.00 kB
|
|
21
|
+
[2mdist/v2/[22m[36mdefine-config.js[39m 0.06 kB
|
|
22
|
+
[2mdist/v2/types/[22m[36mindex.js[39m 0.08 kB
|
|
23
|
+
[2mdist/v2/db/adapters/[22m[36mmongo.js[39m 0.28 kB
|
|
24
|
+
[2mdist/v2/db/adapters/[22m[36mkysely.js[39m 0.28 kB
|
|
25
|
+
[2mdist/v2/db/adapters/[22m[36mprisma.js[39m 0.28 kB
|
|
26
|
+
[2mdist/v2/db/adapters/[22m[36mdrizzle.js[39m 0.29 kB
|
|
27
|
+
[2mdist/v2/db/adapters/[22m[36mtypeorm.js[39m 0.29 kB
|
|
28
|
+
[2mdist/v2/db/migrator/[22m[36mindex.js[39m 0.96 kB
|
|
29
|
+
[2mdist/pkgs/data-model/fields/[22m[36mindex.js[39m 4.8 kB
|
|
30
|
+
[2mdist/v2/db/schema/[22m[36mindex.js[39m 16.2 kB
|
|
21
31
|
[2mdist/pkgs/results/[22m[36mindex.js[39m 16.4 kB
|
|
22
|
-
[2mdist/[22m[36mcontracts.js[39m
|
|
23
|
-
[2mdist/
|
|
24
|
-
[2mdist/pkgs/db-adapters/adapters/
|
|
25
|
-
[2mdist/pkgs/db-adapters/adapters/
|
|
26
|
-
[2mdist/pkgs/
|
|
27
|
-
[2mdist/[22m[
|
|
28
|
-
[2mdist
|
|
29
|
-
[2mdist/
|
|
30
|
-
[2mdist/
|
|
31
|
-
[2mdist/pkgs/data-model/[22m[36mindex.js[39m
|
|
32
|
-
[2mdist/
|
|
33
|
-
[2mdist/[22m[
|
|
34
|
-
|
|
35
|
-
[
|
|
32
|
+
[2mdist/[22m[36mcontracts.js[39m 30.9 kB
|
|
33
|
+
[2mdist/v2/contracts/[22m[36mindex.js[39m 31.0 kB
|
|
34
|
+
[2mdist/pkgs/db-adapters/adapters/memory-adapter/[22m[36mindex.js[39m 43.6 kB
|
|
35
|
+
[2mdist/pkgs/db-adapters/adapters/prisma-adapter/[22m[36mindex.js[39m 46.8 kB
|
|
36
|
+
[2mdist/pkgs/db-adapters/adapters/drizzle-adapter/[22m[36mindex.js[39m 49.4 kB
|
|
37
|
+
[2mdist/pkgs/migrations/[22m[36mindex.js[39m 50.0 kB
|
|
38
|
+
[2mdist/[22m[36mrouter.js[39m 52.0 kB
|
|
39
|
+
[2mdist/v2/[22m[36mrouter.js[39m 53.7 kB
|
|
40
|
+
[2mdist/pkgs/db-adapters/adapters/kysely-adapter/[22m[36mindex.js[39m 54.6 kB
|
|
41
|
+
[2mdist/pkgs/data-model/schema/[22m[36mindex.js[39m 60.2 kB
|
|
42
|
+
[2mdist/schema/[22m[36mindex.js[39m 60.5 kB
|
|
43
|
+
[2mdist/pkgs/data-model/[22m[36mindex.js[39m 61.2 kB
|
|
44
|
+
[2mdist/v2/[22m[36mcore.js[39m 88.3 kB
|
|
45
|
+
[2mdist/pkgs/db-adapters/[22m[36mindex.js[39m 88.9 kB
|
|
46
|
+
[2mdist/[22m[36mcore.js[39m 156.9 kB
|
|
47
|
+
|
|
48
|
+
[34mTotal:[39m 967.9 kB
|
|
36
49
|
|
|
37
50
|
[2m -----[22m
|
|
38
51
|
|
|
39
52
|
[34m File (cjs) Size [39m
|
|
40
53
|
[2mdist/pkgs/types/[22m[36mindex.cjs[39m 0.60 kB
|
|
41
|
-
[2mdist/
|
|
54
|
+
[2mdist/v2/db/adapters/[22m[36mindex.cjs[39m 0.60 kB
|
|
55
|
+
[2mdist/v2/[22m[36mdefine-config.cjs[39m 1.3 kB
|
|
56
|
+
[2mdist/v2/types/[22m[36mindex.cjs[39m 1.3 kB
|
|
57
|
+
[2mdist/v2/db/adapters/[22m[36mmongo.cjs[39m 1.3 kB
|
|
58
|
+
[2mdist/v2/db/adapters/[22m[36mkysely.cjs[39m 1.3 kB
|
|
59
|
+
[2mdist/v2/db/adapters/[22m[36mprisma.cjs[39m 1.3 kB
|
|
60
|
+
[2mdist/v2/db/adapters/[22m[36mdrizzle.cjs[39m 1.3 kB
|
|
61
|
+
[2mdist/v2/db/adapters/[22m[36mtypeorm.cjs[39m 1.3 kB
|
|
62
|
+
[2mdist/v2/db/migrator/[22m[36mindex.cjs[39m 2.1 kB
|
|
63
|
+
[2mdist/pkgs/data-model/fields/[22m[36mindex.cjs[39m 6.5 kB
|
|
64
|
+
[2mdist/v2/db/schema/[22m[36mindex.cjs[39m 16.8 kB
|
|
42
65
|
[2mdist/pkgs/results/[22m[36mindex.cjs[39m 18.5 kB
|
|
43
|
-
[2mdist/[22m[
|
|
44
|
-
[2mdist
|
|
45
|
-
[2mdist/pkgs/db-adapters/adapters/
|
|
46
|
-
[2mdist/pkgs/db-adapters/adapters/
|
|
47
|
-
[2mdist/[22m[
|
|
48
|
-
[2mdist/
|
|
49
|
-
[2mdist
|
|
50
|
-
[2mdist/pkgs/
|
|
51
|
-
[2mdist/
|
|
52
|
-
[2mdist/pkgs/data-model/[22m[36mindex.cjs[39m
|
|
53
|
-
[2mdist/
|
|
54
|
-
[2mdist/[22m[
|
|
55
|
-
|
|
56
|
-
[
|
|
66
|
+
[2mdist/v2/contracts/[22m[36mindex.cjs[39m 29.3 kB
|
|
67
|
+
[2mdist/[22m[36mcontracts.cjs[39m 31.4 kB
|
|
68
|
+
[2mdist/pkgs/db-adapters/adapters/memory-adapter/[22m[36mindex.cjs[39m 44.6 kB
|
|
69
|
+
[2mdist/pkgs/db-adapters/adapters/prisma-adapter/[22m[36mindex.cjs[39m 47.8 kB
|
|
70
|
+
[2mdist/pkgs/db-adapters/adapters/drizzle-adapter/[22m[36mindex.cjs[39m 50.1 kB
|
|
71
|
+
[2mdist/v2/[22m[36mrouter.cjs[39m 51.7 kB
|
|
72
|
+
[2mdist/[22m[36mrouter.cjs[39m 51.7 kB
|
|
73
|
+
[2mdist/pkgs/migrations/[22m[36mindex.cjs[39m 51.7 kB
|
|
74
|
+
[2mdist/pkgs/db-adapters/adapters/kysely-adapter/[22m[36mindex.cjs[39m 55.7 kB
|
|
75
|
+
[2mdist/pkgs/data-model/schema/[22m[36mindex.cjs[39m 63.4 kB
|
|
76
|
+
[2mdist/schema/[22m[36mindex.cjs[39m 63.8 kB
|
|
77
|
+
[2mdist/pkgs/data-model/[22m[36mindex.cjs[39m 65.4 kB
|
|
78
|
+
[2mdist/v2/[22m[36mcore.cjs[39m 85.4 kB
|
|
79
|
+
[2mdist/pkgs/db-adapters/[22m[36mindex.cjs[39m 90.2 kB
|
|
80
|
+
[2mdist/[22m[36mcore.cjs[39m 155.9 kB
|
|
81
|
+
|
|
82
|
+
[34mTotal:[39m 992.2 kB
|
|
57
83
|
|
package/CHANGELOG.md
CHANGED
|
@@ -1,217 +1,12 @@
|
|
|
1
1
|
# @c15t/backend
|
|
2
2
|
|
|
3
|
-
## 1.
|
|
3
|
+
## 1.6.0
|
|
4
4
|
|
|
5
5
|
### Minor Changes
|
|
6
6
|
|
|
7
|
-
-
|
|
7
|
+
- 84ab0c7: For a full detailed changelog see the [v1.6.0 release notes](https://c15t.com/changelog/2025-09-08-v1.6.0).
|
|
8
8
|
|
|
9
9
|
### Patch Changes
|
|
10
10
|
|
|
11
|
-
- Updated dependencies [
|
|
12
|
-
- @c15t/translations@1.
|
|
13
|
-
|
|
14
|
-
## 1.5.0-canary-20250722133547
|
|
15
|
-
|
|
16
|
-
### Patch Changes
|
|
17
|
-
|
|
18
|
-
- 35b5fc3: fix: removed package.json imports for Next 13 compatibility
|
|
19
|
-
|
|
20
|
-
## 1.5.0-canary-20250722085128
|
|
21
|
-
|
|
22
|
-
### Minor Changes
|
|
23
|
-
|
|
24
|
-
- 74e1825: feat(backend): added advanced overrides for disabling geo-location & adding custom translations
|
|
25
|
-
|
|
26
|
-
## 1.4.2
|
|
27
|
-
|
|
28
|
-
### Patch Changes
|
|
29
|
-
|
|
30
|
-
- Updated dependencies [53774ce]
|
|
31
|
-
- @c15t/translations@1.4.2
|
|
32
|
-
|
|
33
|
-
## 1.4.2-canary-20250702103734
|
|
34
|
-
|
|
35
|
-
### Patch Changes
|
|
36
|
-
|
|
37
|
-
- Updated dependencies [cd218e7]
|
|
38
|
-
- @c15t/translations@1.4.2-canary-20250702103734
|
|
39
|
-
|
|
40
|
-
## 1.4.1
|
|
41
|
-
|
|
42
|
-
### Patch Changes
|
|
43
|
-
|
|
44
|
-
- 8afd304: fix(backend): add custom c15t headers to override providers
|
|
45
|
-
|
|
46
|
-
## 1.3.1
|
|
47
|
-
|
|
48
|
-
### Patch Changes
|
|
49
|
-
|
|
50
|
-
- 7fecb81: refactor(nextjs): fetch inital data from backend in c15t mode instead of duplicate logic
|
|
51
|
-
fix: incorrect link to quickstart
|
|
52
|
-
fix(issue-274): include nextjs externals in rslib
|
|
53
|
-
fix(core): fall back to API call if initialData promise is empty
|
|
54
|
-
chore: add translation for zh
|
|
55
|
-
- Updated dependencies [7fecb81]
|
|
56
|
-
- @c15t/translations@1.3.1
|
|
57
|
-
|
|
58
|
-
## 1.3.1-canary-20250618084038
|
|
59
|
-
|
|
60
|
-
### Patch Changes
|
|
61
|
-
|
|
62
|
-
- Updated dependencies [5da2f28]
|
|
63
|
-
- @c15t/translations@1.3.1-canary-20250618084038
|
|
64
|
-
|
|
65
|
-
## 1.3.0
|
|
66
|
-
|
|
67
|
-
### Minor Changes
|
|
68
|
-
|
|
69
|
-
- 85e5e3d: ## 🌍 New Translations Package
|
|
70
|
-
|
|
71
|
-
- **NEW**: Added `@c15t/translations` package with comprehensive i18n support
|
|
72
|
-
- Added translations for 8 languages: English, German, Spanish, Finnish, French, Italian, Dutch, Portuguese
|
|
73
|
-
- Includes translations for consent banners, dialogs, and common phrases
|
|
74
|
-
- Replaced the former `@c15t/middleware` package functionality
|
|
75
|
-
|
|
76
|
-
## 🔧 CLI Enhancements
|
|
77
|
-
|
|
78
|
-
- **NEW**: Added telemetry system with framework and package manager detection
|
|
79
|
-
- **NEW**: Enhanced onboarding flow with better framework detection (React, Next.js, etc.)
|
|
80
|
-
- **NEW**: Automatic package manager detection (pnpm, yarn, npm)
|
|
81
|
-
- **NEW**: Added `--telemetry-debug` flag for debugging telemetry
|
|
82
|
-
- Improved error handling and user experience during setup
|
|
83
|
-
- Better file generation for different storage modes and configurations
|
|
84
|
-
|
|
85
|
-
## 🎯 Backend Updates
|
|
86
|
-
|
|
87
|
-
- **NEW**: Server-side translation support in consent banner handling
|
|
88
|
-
- Added language detection from `Accept-Language` headers
|
|
89
|
-
- Updated consent banner contracts to include translation schemas
|
|
90
|
-
- Enhanced jurisdiction checking with better default handling
|
|
91
|
-
- Updated user agent and IP address handling (now defaults to null instead of "unknown")
|
|
92
|
-
|
|
93
|
-
## ⚛️ React Package Changes
|
|
94
|
-
|
|
95
|
-
- **NEW**: Integrated translation support throughout components
|
|
96
|
-
- Updated `ConsentManagerProvider` to handle initial translation configuration
|
|
97
|
-
- Removed dependency on middleware package
|
|
98
|
-
- Enhanced consent manager store with translation capabilities
|
|
99
|
-
|
|
100
|
-
## 🔄 Next.js Package Restructuring
|
|
101
|
-
|
|
102
|
-
- **BREAKING**: Removed middleware exports and functionality
|
|
103
|
-
- **NEW**: Added `ConsentManagerProvider` component for server-side rendering
|
|
104
|
-
- **NEW**: Server-side consent banner detection with jurisdiction mapping
|
|
105
|
-
- Added support for extracting consent-relevant headers
|
|
106
|
-
- Updated to work with new translations system
|
|
107
|
-
|
|
108
|
-
## 🏗️ Core Package Updates
|
|
109
|
-
|
|
110
|
-
- **NEW**: Integrated translation configuration system
|
|
111
|
-
- Updated offline client to include default translations
|
|
112
|
-
- Enhanced consent banner fetching with translation support
|
|
113
|
-
- Improved store management with initial data handling
|
|
114
|
-
|
|
115
|
-
## 🔄 Infrastructure & Tooling
|
|
116
|
-
|
|
117
|
-
- **NEW**: Added GitHub Actions workflow for canary releases
|
|
118
|
-
- **NEW**: Added branch synchronization workflow (main → canary)
|
|
119
|
-
- Updated BiomeJS configuration with comprehensive linting rules
|
|
120
|
-
- Enhanced build configurations across packages
|
|
121
|
-
|
|
122
|
-
## 📦 Package Management
|
|
123
|
-
|
|
124
|
-
- Updated dependencies across all packages
|
|
125
|
-
- Added peer dependencies where appropriate
|
|
126
|
-
- Improved module exports and build configurations
|
|
127
|
-
- Enhanced TypeScript configurations for better type safety
|
|
128
|
-
|
|
129
|
-
***
|
|
130
|
-
|
|
131
|
-
## 📋 Detailed Change Breakdown
|
|
132
|
-
|
|
133
|
-
### **New Features**
|
|
134
|
-
|
|
135
|
-
- Added multi-language support for consent banners with new translations in German, Spanish, Finnish, French, Italian, Dutch, and Portuguese.
|
|
136
|
-
- Consent banner logic enhanced to detect user location and language from HTTP headers, showing localized messages per jurisdiction.
|
|
137
|
-
- Next.js ConsentManagerProvider now performs server-side initialization of consent state for consistent banner display and translation.
|
|
138
|
-
- CLI onboarding improved with robust environment detection, modularized flow, enhanced telemetry, and guided dependency installation.
|
|
139
|
-
- Introduced new CLI global flag for telemetry debug mode.
|
|
140
|
-
|
|
141
|
-
### **Improvements**
|
|
142
|
-
|
|
143
|
-
- Consent banner responses now include detailed translation structures and jurisdiction information.
|
|
144
|
-
- Translation utilities and types centralized in a new `@c15t/translations` package for easier integration.
|
|
145
|
-
- Onboarding file generation refactored to unify client config and environment file creation.
|
|
146
|
-
- Documentation and changelogs updated for new canary releases and integration guidance.
|
|
147
|
-
- CLI telemetry enhanced with asynchronous event tracking and debug logging support.
|
|
148
|
-
|
|
149
|
-
### **Bug Fixes**
|
|
150
|
-
|
|
151
|
-
- Fixed consent banner logic for correct handling of US jurisdiction and fallback scenarios.
|
|
152
|
-
- Improved error handling and debug logging in CLI telemetry and onboarding.
|
|
153
|
-
|
|
154
|
-
### **Refactor**
|
|
155
|
-
|
|
156
|
-
- Removed legacy middleware exports and Node SDK re-exports from Next.js and middleware packages.
|
|
157
|
-
- Consolidated jurisdiction and consent banner logic into dedicated Next.js consent-manager-provider modules.
|
|
158
|
-
- Updated CLI context creation to async with enriched environment metadata and improved logging.
|
|
159
|
-
- Refactored onboarding storage modes to delegate file generation and unify cancellation handling.
|
|
160
|
-
|
|
161
|
-
### **Tests**
|
|
162
|
-
|
|
163
|
-
- Added extensive tests for consent banner display logic, jurisdiction detection, language preference parsing, and translation selection.
|
|
164
|
-
- Removed deprecated tests for deleted middleware and jurisdiction modules.
|
|
165
|
-
|
|
166
|
-
### **Chores**
|
|
167
|
-
|
|
168
|
-
- Updated package versions and dependencies to latest canary releases, including addition of `@c15t/translations`.
|
|
169
|
-
- Added and updated GitHub Actions workflows for canary releases and branch synchronization.
|
|
170
|
-
- Updated package metadata and configuration files for consistency and improved build settings.
|
|
171
|
-
|
|
172
|
-
This release represents a major step forward in internationalization support, developer experience improvements, and architectural refinements across the entire c15t ecosystem.
|
|
173
|
-
|
|
174
|
-
### Patch Changes
|
|
175
|
-
|
|
176
|
-
- Updated dependencies [85e5e3d]
|
|
177
|
-
- @c15t/translations@1.3.0
|
|
178
|
-
|
|
179
|
-
## 1.2.2-canary-20250602152741
|
|
180
|
-
|
|
181
|
-
### Patch Changes
|
|
182
|
-
|
|
183
|
-
- 131a2ff: fix(backend): user agent not being stored
|
|
184
|
-
|
|
185
|
-
## 1.2.2-canary-20250521133509
|
|
186
|
-
|
|
187
|
-
### Patch Changes
|
|
188
|
-
|
|
189
|
-
- e4b9778: fix(backend): show consent banner returning true in US etc
|
|
190
|
-
|
|
191
|
-
## 1.2.2-canary-20250514203718
|
|
192
|
-
|
|
193
|
-
### Patch Changes
|
|
194
|
-
|
|
195
|
-
- f24f11b: bump package
|
|
196
|
-
- Updated dependencies [f24f11b]
|
|
197
|
-
- @c15t/translations@1.2.2-canary-20250514203718
|
|
198
|
-
|
|
199
|
-
## 1.2.2-canary-20250514183211
|
|
200
|
-
|
|
201
|
-
### Patch Changes
|
|
202
|
-
|
|
203
|
-
- f64f000: feat: added @c15t/nextjs, @c15t/translations for better integration, server-side translations & fetching of consent banner
|
|
204
|
-
- Updated dependencies [f64f000]
|
|
205
|
-
- @c15t/translations@1.2.2-canary-20250514183211
|
|
206
|
-
|
|
207
|
-
## 1.2.1
|
|
208
|
-
|
|
209
|
-
### Patch Changes
|
|
210
|
-
|
|
211
|
-
- [#226](https://github.com/c15t/c15t/pull/226) [`aca32d3`](https://github.com/c15t/c15t/commit/aca32d3f0f76d75ad618a8ba3386ce385ac612e4) Thanks [@KayleeWilliams](https://github.com/KayleeWilliams)! - fix(backend): set consent validation error
|
|
212
|
-
|
|
213
|
-
## 1.2.0
|
|
214
|
-
|
|
215
|
-
### Minor Changes
|
|
216
|
-
|
|
217
|
-
- [#224](https://github.com/c15t/c15t/pull/224) [`838a9b5`](https://github.com/c15t/c15t/commit/838a9b52c31326899ec3c903e43bf7bc31a6490f) Thanks [@BurnedChris](https://github.com/BurnedChris)! - Refactored backend to be a new orpc client / server
|
|
11
|
+
- Updated dependencies [84ab0c7]
|
|
12
|
+
- @c15t/translations@1.6.0
|
package/README.md
CHANGED
|
@@ -1,167 +1,89 @@
|
|
|
1
|
-
<
|
|
2
|
-
<
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
</
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
-
|
|
26
|
-
-
|
|
27
|
-
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
// Modify request
|
|
87
|
-
return { request: modifiedRequest };
|
|
88
|
-
},
|
|
89
|
-
onResponse: async (response, ctx) => {
|
|
90
|
-
// Modify response
|
|
91
|
-
return { response: modifiedResponse };
|
|
92
|
-
},
|
|
93
|
-
};
|
|
94
|
-
|
|
95
|
-
const instance = c15tInstance({
|
|
96
|
-
baseURL: 'http://localhost:3000',
|
|
97
|
-
database: memoryAdapter({}),
|
|
98
|
-
plugins: [customPlugin],
|
|
99
|
-
});
|
|
100
|
-
```
|
|
101
|
-
|
|
102
|
-
## API Documentation
|
|
103
|
-
|
|
104
|
-
### Core Instance
|
|
105
|
-
|
|
106
|
-
```typescript
|
|
107
|
-
interface C15TInstance {
|
|
108
|
-
options: C15TOptions;
|
|
109
|
-
$context: Promise<Result<C15TContext, C15TError>>;
|
|
110
|
-
handler: (request: Request) => Promise<Result<Response, C15TError>>;
|
|
111
|
-
getApi: () => Promise<Result<Record<string, unknown>, C15TError>>;
|
|
112
|
-
}
|
|
113
|
-
```
|
|
114
|
-
|
|
115
|
-
### Database Adapters
|
|
116
|
-
|
|
117
|
-
Each adapter provides a consistent interface for database operations:
|
|
118
|
-
|
|
119
|
-
```typescript
|
|
120
|
-
interface DatabaseAdapter {
|
|
121
|
-
create: <T extends Record<string, unknown>>(table: string, data: T) => Promise<T>;
|
|
122
|
-
find: <T extends Record<string, unknown>>(table: string, query: Query) => Promise<T[]>;
|
|
123
|
-
update: <T extends Record<string, unknown>>(table: string, query: Query, data: Partial<T>) => Promise<T>;
|
|
124
|
-
delete: (table: string, query: Query) => Promise<void>;
|
|
125
|
-
}
|
|
126
|
-
```
|
|
127
|
-
|
|
128
|
-
### Plugin System
|
|
129
|
-
|
|
130
|
-
Plugins can extend the system's functionality:
|
|
131
|
-
|
|
132
|
-
```typescript
|
|
133
|
-
interface C15TPlugin {
|
|
134
|
-
id: string;
|
|
135
|
-
name: string;
|
|
136
|
-
type: string;
|
|
137
|
-
init?: () => Promise<{ context: Record<string, unknown> }>;
|
|
138
|
-
onRequest?: (request: Request, ctx: C15TContext) => Promise<{ request: Request } | { response: Response } | undefined>;
|
|
139
|
-
onResponse?: (response: Response, ctx: C15TContext) => Promise<{ response: Response } | undefined>;
|
|
140
|
-
}
|
|
141
|
-
```
|
|
142
|
-
|
|
143
|
-
## Error Handling
|
|
144
|
-
|
|
145
|
-
The system uses a Result type for error handling:
|
|
146
|
-
|
|
147
|
-
```typescript
|
|
148
|
-
type Result<T, E> = { isOk: true; value: T } | { isOk: false; error: E };
|
|
149
|
-
```
|
|
150
|
-
|
|
151
|
-
## Security Features
|
|
152
|
-
|
|
153
|
-
- Origin validation for CORS
|
|
154
|
-
- Request validation
|
|
155
|
-
- Audit logging
|
|
156
|
-
- Secure ID generation
|
|
157
|
-
- Input sanitization
|
|
158
|
-
|
|
159
|
-
## 📜 License
|
|
160
|
-
|
|
161
|
-
[GNU General Public License v3.0](https://github.com/c15t/c15t/blob/main/LICENSE.md) - See [LICENSE]([LICENSE.md](https://github.com/c15t/c15t/blob/main/LICENSE.md)) for details.
|
|
1
|
+
<p align="center">
|
|
2
|
+
<a href="https://c15t.com?utm_source=github&utm_medium=repopage_%40c15t%2Fbackend" target="_blank" rel="noopener noreferrer">
|
|
3
|
+
<picture>
|
|
4
|
+
<source media="(prefers-color-scheme: dark)" srcset="../../docs/assets/c15t-banner-readme-dark.svg" type="image/svg+xml">
|
|
5
|
+
<img src="../../docs/assets/c15t-banner-readme-light.svg" alt="c15t Banner" type="image/svg+xml">
|
|
6
|
+
</picture>
|
|
7
|
+
</a>
|
|
8
|
+
<br />
|
|
9
|
+
<h1 align="center">@c15t/backend: Consent Management Backend</h1>
|
|
10
|
+
</p>
|
|
11
|
+
|
|
12
|
+
[](https://github.com/c15t/c15t)
|
|
13
|
+
[](https://github.com/c15t/c15t/actions/workflows/ci.yml)
|
|
14
|
+
[](https://github.com/c15t/c15t/blob/main/LICENSE.md)
|
|
15
|
+
[](https://c15t.com/discord)
|
|
16
|
+
[](https://www.npmjs.com/package/@c15t/backend)
|
|
17
|
+
[](https://github.com/c15t/c15t)
|
|
18
|
+
[](https://github.com/c15t/c15t/commits/main)
|
|
19
|
+
[](https://github.com/c15t/c15t/issues)
|
|
20
|
+
|
|
21
|
+
Consent policy engine and API for c15t. Powers the cookie banner, consent manager, and preferences centre. Webhooks, audit logs, storage adapters. Self host or use consent.io
|
|
22
|
+
|
|
23
|
+
## Key Features
|
|
24
|
+
|
|
25
|
+
- Consent Management: Track and manage user consent preferences
|
|
26
|
+
- Geo-Location: Identify user's location to show relevant consent preferences
|
|
27
|
+
- Server-Side Translation: Reduce banner bundle size by translating consent preferences on the server
|
|
28
|
+
- Audit Logging: Comprehensive logging of all consent-related actions
|
|
29
|
+
- Domain Management: Handle multiple domains and subdomains
|
|
30
|
+
- Policy Management: Version and manage consent policies
|
|
31
|
+
|
|
32
|
+
## Prerequisites
|
|
33
|
+
|
|
34
|
+
- Node.js 18.17.0 or later
|
|
35
|
+
- npm, pnpm, or yarn package manager
|
|
36
|
+
|
|
37
|
+
## Installation
|
|
38
|
+
|
|
39
|
+
Install the backend package using your preferred package manager
|
|
40
|
+
Configure your database adapter (supports Drizzle, Kysely, Prisma, TypeORM, and Mongo)
|
|
41
|
+
|
|
42
|
+
## Usage
|
|
43
|
+
|
|
44
|
+
1. Import the backend package in your project
|
|
45
|
+
2. Configure your database connection
|
|
46
|
+
3. Use the provided router and schema for consent management
|
|
47
|
+
4. Implement consent tracking and management in your application
|
|
48
|
+
|
|
49
|
+
## Documentation
|
|
50
|
+
|
|
51
|
+
For further information, guides, and examples visit the [reference documentation](https://c15t.com/docs/self-host/v2).
|
|
52
|
+
|
|
53
|
+
## Support
|
|
54
|
+
|
|
55
|
+
- Join our [Discord community](https://c15t.com/discord)
|
|
56
|
+
- Open an issue on our [GitHub repository](https://github.com/c15t/c15t/issues)
|
|
57
|
+
- Visit [consent.io](https://consent.io) and use the chat widget
|
|
58
|
+
- Contact our support team via email [support@consent.io](mailto:support@consent.io)
|
|
59
|
+
|
|
60
|
+
## Contributing
|
|
61
|
+
|
|
62
|
+
- We're open to all community contributions!
|
|
63
|
+
- Read our [Contribution Guidelines](https://c15t.com/docs/oss/contributing)
|
|
64
|
+
- Review our [Code of Conduct](https://c15t.com/docs/oss/code-of-conduct)
|
|
65
|
+
- Fork the repository
|
|
66
|
+
- Create a new branch for your feature
|
|
67
|
+
- Submit a pull request
|
|
68
|
+
- **All contributions, big or small, are welcome and appreciated!**
|
|
69
|
+
|
|
70
|
+
## Security
|
|
71
|
+
|
|
72
|
+
If you believe you have found a security vulnerability in c15t, we encourage you to **_responsibly disclose this and NOT open a public issue_**. We will investigate all legitimate reports.
|
|
73
|
+
|
|
74
|
+
Our preference is that you make use of GitHub's private vulnerability reporting feature to disclose potential security vulnerabilities in our Open Source Software. To do this, please visit [https://github.com/c15t/c15t/security](https://github.com/c15t/c15t/security) and click the "Report a vulnerability" button.
|
|
75
|
+
|
|
76
|
+
### Security Policy
|
|
77
|
+
|
|
78
|
+
- Please do not share security vulnerabilities in public forums, issues, or pull requests
|
|
79
|
+
- Provide detailed information about the potential vulnerability
|
|
80
|
+
- Allow reasonable time for us to address the issue before any public disclosure
|
|
81
|
+
- We are committed to addressing security concerns promptly and transparently
|
|
82
|
+
|
|
83
|
+
## License
|
|
84
|
+
|
|
85
|
+
[GNU General Public License v3.0](https://github.com/c15t/c15t/blob/main/LICENSE.md)
|
|
162
86
|
|
|
163
87
|
---
|
|
164
88
|
|
|
165
|
-
|
|
166
|
-
<strong>Built with ❤️ by the <a href="www.consent.io"/>consent.io</a> team</strong>
|
|
167
|
-
</div>
|
|
89
|
+
**Built with ❤️ by the [consent.io](https://www.consent.io?utm_source=github&utm_medium=repopage_%40c15t%2Fbackend) team**
|