@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.
- package/.turbo/turbo-build.log +33 -39
- package/.turbo/turbo-fmt.log +3 -3
- package/.turbo/turbo-test.log +531 -0
- package/coverage/coverage-final.json +84 -0
- package/coverage/coverage-summary.json +85 -0
- package/coverage/html/backend/index.html +116 -0
- package/coverage/html/backend/rslib.config.ts.html +415 -0
- package/coverage/html/backend/src/contracts/consent/index.html +161 -0
- package/coverage/html/backend/src/contracts/consent/index.ts.html +112 -0
- package/coverage/html/backend/src/contracts/consent/post.contract.ts.html +559 -0
- package/coverage/html/backend/src/contracts/consent/show-banner.contract.ts.html +220 -0
- package/coverage/html/backend/src/contracts/consent/verify.contract.ts.html +463 -0
- package/coverage/html/backend/src/contracts/index.html +116 -0
- package/coverage/html/backend/src/contracts/index.ts.html +139 -0
- package/coverage/html/backend/src/contracts/meta/index.html +131 -0
- package/coverage/html/backend/src/contracts/meta/index.ts.html +100 -0
- package/coverage/html/backend/src/contracts/meta/status.contract.ts.html +196 -0
- package/coverage/html/backend/src/contracts/shared/index.html +116 -0
- package/coverage/html/backend/src/contracts/shared/jurisdiction.schema.ts.html +175 -0
- package/coverage/html/backend/src/core.ts.html +1624 -0
- package/coverage/html/backend/src/handlers/consent/index.html +161 -0
- package/coverage/html/backend/src/handlers/consent/index.ts.html +112 -0
- package/coverage/html/backend/src/handlers/consent/post.handler.ts.html +889 -0
- package/coverage/html/backend/src/handlers/consent/show-banner.handler.ts.html +535 -0
- package/coverage/html/backend/src/handlers/consent/verify.handler.ts.html +1000 -0
- package/coverage/html/backend/src/handlers/meta/index.html +131 -0
- package/coverage/html/backend/src/handlers/meta/index.ts.html +100 -0
- package/coverage/html/backend/src/handlers/meta/status.handler.ts.html +226 -0
- package/coverage/html/backend/src/index.html +161 -0
- package/coverage/html/backend/src/init.ts.html +1018 -0
- package/coverage/html/backend/src/pkgs/api-router/hooks/index.html +116 -0
- package/coverage/html/backend/src/pkgs/api-router/hooks/processor.ts.html +544 -0
- package/coverage/html/backend/src/pkgs/api-router/index.html +116 -0
- package/coverage/html/backend/src/pkgs/api-router/telemetry.ts.html +334 -0
- package/coverage/html/backend/src/pkgs/api-router/utils/cors.ts.html +304 -0
- package/coverage/html/backend/src/pkgs/api-router/utils/index.html +131 -0
- package/coverage/html/backend/src/pkgs/api-router/utils/ip.ts.html +361 -0
- package/coverage/html/backend/src/pkgs/data-model/fields/field-factory.ts.html +709 -0
- package/coverage/html/backend/src/pkgs/data-model/fields/id-generator.ts.html +256 -0
- package/coverage/html/backend/src/pkgs/data-model/fields/index.html +161 -0
- package/coverage/html/backend/src/pkgs/data-model/fields/superjson-utils.ts.html +136 -0
- package/coverage/html/backend/src/pkgs/data-model/fields/zod-fields.ts.html +496 -0
- package/coverage/html/backend/src/pkgs/data-model/hooks/create-hooks.ts.html +349 -0
- package/coverage/html/backend/src/pkgs/data-model/hooks/index.html +176 -0
- package/coverage/html/backend/src/pkgs/data-model/hooks/update-hooks.ts.html +358 -0
- package/coverage/html/backend/src/pkgs/data-model/hooks/update-many-hooks.ts.html +613 -0
- package/coverage/html/backend/src/pkgs/data-model/hooks/utils.ts.html +538 -0
- package/coverage/html/backend/src/pkgs/data-model/hooks/with-hooks-factory.ts.html +289 -0
- package/coverage/html/backend/src/pkgs/db-adapters/adapter-factory.ts.html +289 -0
- package/coverage/html/backend/src/pkgs/db-adapters/adapters/drizzle-adapter/drizzle-adapter.ts.html +2203 -0
- package/coverage/html/backend/src/pkgs/db-adapters/adapters/drizzle-adapter/index.html +116 -0
- package/coverage/html/backend/src/pkgs/db-adapters/adapters/index.html +116 -0
- package/coverage/html/backend/src/pkgs/db-adapters/adapters/kysely-adapter/dialect.ts.html +670 -0
- package/coverage/html/backend/src/pkgs/db-adapters/adapters/kysely-adapter/index.html +131 -0
- package/coverage/html/backend/src/pkgs/db-adapters/adapters/kysely-adapter/kysely-adapter.ts.html +3634 -0
- package/coverage/html/backend/src/pkgs/db-adapters/adapters/kysely-adapter/tests/index.html +116 -0
- package/coverage/html/backend/src/pkgs/db-adapters/adapters/kysely-adapter/tests/test-utils.ts.html +1417 -0
- package/coverage/html/backend/src/pkgs/db-adapters/adapters/memory-adapter/index.html +116 -0
- package/coverage/html/backend/src/pkgs/db-adapters/adapters/memory-adapter/memory-adapter.ts.html +2071 -0
- package/coverage/html/backend/src/pkgs/db-adapters/adapters/prisma-adapter/index.html +116 -0
- package/coverage/html/backend/src/pkgs/db-adapters/adapters/prisma-adapter/prisma-adapter.ts.html +1834 -0
- package/coverage/html/backend/src/pkgs/db-adapters/adapters/test.ts.html +316 -0
- package/coverage/html/backend/src/pkgs/db-adapters/index.html +131 -0
- package/coverage/html/backend/src/pkgs/db-adapters/utils.ts.html +238 -0
- package/coverage/html/backend/src/pkgs/migrations/get-migration.ts.html +343 -0
- package/coverage/html/backend/src/pkgs/migrations/get-schema/get-schema.ts.html +217 -0
- package/coverage/html/backend/src/pkgs/migrations/get-schema/index.html +146 -0
- package/coverage/html/backend/src/pkgs/migrations/get-schema/process-fields.ts.html +280 -0
- package/coverage/html/backend/src/pkgs/migrations/get-schema/process-tables.ts.html +289 -0
- package/coverage/html/backend/src/pkgs/migrations/index.html +176 -0
- package/coverage/html/backend/src/pkgs/migrations/migration-builders.ts.html +595 -0
- package/coverage/html/backend/src/pkgs/migrations/migration-execution.ts.html +301 -0
- package/coverage/html/backend/src/pkgs/migrations/schema-comparison.ts.html +694 -0
- package/coverage/html/backend/src/pkgs/migrations/type-mapping.ts.html +817 -0
- package/coverage/html/backend/src/pkgs/results/core/error-class.ts.html +976 -0
- package/coverage/html/backend/src/pkgs/results/core/error-codes.ts.html +703 -0
- package/coverage/html/backend/src/pkgs/results/core/index.html +146 -0
- package/coverage/html/backend/src/pkgs/results/core/tracing.ts.html +280 -0
- package/coverage/html/backend/src/pkgs/results/create-telemetry-options.ts.html +271 -0
- package/coverage/html/backend/src/pkgs/results/index.html +131 -0
- package/coverage/html/backend/src/pkgs/results/orpc-error-handler.ts.html +496 -0
- package/coverage/html/backend/src/pkgs/results/results/index.html +131 -0
- package/coverage/html/backend/src/pkgs/results/results/recovery-utils.ts.html +628 -0
- package/coverage/html/backend/src/pkgs/results/results/result-helpers.ts.html +1234 -0
- package/coverage/html/backend/src/pkgs/utils/env.ts.html +337 -0
- package/coverage/html/backend/src/pkgs/utils/index.html +146 -0
- package/coverage/html/backend/src/pkgs/utils/logger.ts.html +199 -0
- package/coverage/html/backend/src/pkgs/utils/url.ts.html +400 -0
- package/coverage/html/backend/src/router.ts.html +109 -0
- package/coverage/html/backend/src/schema/audit-log/index.html +146 -0
- package/coverage/html/backend/src/schema/audit-log/registry.ts.html +436 -0
- package/coverage/html/backend/src/schema/audit-log/schema.ts.html +223 -0
- package/coverage/html/backend/src/schema/audit-log/table.ts.html +640 -0
- package/coverage/html/backend/src/schema/consent/index.html +146 -0
- package/coverage/html/backend/src/schema/consent/registry.ts.html +616 -0
- package/coverage/html/backend/src/schema/consent/schema.ts.html +238 -0
- package/coverage/html/backend/src/schema/consent/table.ts.html +748 -0
- package/coverage/html/backend/src/schema/consent-policy/index.html +146 -0
- package/coverage/html/backend/src/schema/consent-policy/registry.ts.html +1063 -0
- package/coverage/html/backend/src/schema/consent-policy/schema.ts.html +265 -0
- package/coverage/html/backend/src/schema/consent-policy/table.ts.html +535 -0
- package/coverage/html/backend/src/schema/consent-purpose/index.html +146 -0
- package/coverage/html/backend/src/schema/consent-purpose/registry.ts.html +589 -0
- package/coverage/html/backend/src/schema/consent-purpose/schema.ts.html +259 -0
- package/coverage/html/backend/src/schema/consent-purpose/table.ts.html +547 -0
- package/coverage/html/backend/src/schema/consent-record/index.html +131 -0
- package/coverage/html/backend/src/schema/consent-record/schema.ts.html +211 -0
- package/coverage/html/backend/src/schema/consent-record/table.ts.html +457 -0
- package/coverage/html/backend/src/schema/create-registry.ts.html +148 -0
- package/coverage/html/backend/src/schema/definition.ts.html +685 -0
- package/coverage/html/backend/src/schema/domain/index.html +146 -0
- package/coverage/html/backend/src/schema/domain/registry.ts.html +973 -0
- package/coverage/html/backend/src/schema/domain/schema.ts.html +214 -0
- package/coverage/html/backend/src/schema/domain/table.ts.html +496 -0
- package/coverage/html/backend/src/schema/index.html +146 -0
- package/coverage/html/backend/src/schema/schemas.ts.html +166 -0
- package/coverage/html/backend/src/schema/subject/index.html +146 -0
- package/coverage/html/backend/src/schema/subject/registry.ts.html +973 -0
- package/coverage/html/backend/src/schema/subject/schema.ts.html +208 -0
- package/coverage/html/backend/src/schema/subject/table.ts.html +499 -0
- package/coverage/html/backend/src/server.ts.html +475 -0
- package/coverage/html/backend/src/testing/contract-testing.ts.html +1348 -0
- package/coverage/html/backend/src/testing/index.html +116 -0
- package/coverage/html/base.css +224 -0
- package/coverage/html/block-navigation.js +87 -0
- package/coverage/html/favicon.png +0 -0
- package/coverage/html/index.html +626 -0
- package/coverage/html/prettify.css +1 -0
- package/coverage/html/prettify.js +2 -0
- package/coverage/html/sort-arrow-sprite.png +0 -0
- package/coverage/html/sorter.js +196 -0
- package/dist/contracts/consent/index.d.ts +401 -0
- package/dist/contracts/consent/index.d.ts.map +1 -0
- package/dist/contracts/consent/index.test.d.ts +2 -0
- package/dist/contracts/consent/index.test.d.ts.map +1 -0
- package/dist/contracts/consent/post.contract.d.ts +212 -0
- package/dist/contracts/consent/post.contract.d.ts.map +1 -0
- package/dist/contracts/consent/post.contract.test.d.ts +2 -0
- package/dist/contracts/consent/post.contract.test.d.ts.map +1 -0
- package/dist/contracts/consent/show-banner.contract.d.ts +45 -0
- package/dist/contracts/consent/show-banner.contract.d.ts.map +1 -0
- package/dist/contracts/consent/show-banner.contract.test.d.ts +2 -0
- package/dist/contracts/consent/show-banner.contract.test.d.ts.map +1 -0
- package/dist/contracts/consent/verify.contract.d.ts +147 -0
- package/dist/contracts/consent/verify.contract.d.ts.map +1 -0
- package/dist/contracts/consent/verify.contract.test.d.ts +2 -0
- package/dist/contracts/consent/verify.contract.test.d.ts.map +1 -0
- package/dist/contracts/index.d.ts +963 -0
- package/dist/contracts/index.d.ts.map +1 -0
- package/dist/contracts/meta/index.d.ts +78 -0
- package/dist/contracts/meta/index.d.ts.map +1 -0
- package/dist/contracts/meta/index.test.d.ts +2 -0
- package/dist/contracts/meta/index.test.d.ts.map +1 -0
- package/dist/contracts/meta/status.contract.d.ts +77 -0
- package/dist/contracts/meta/status.contract.d.ts.map +1 -0
- package/dist/contracts/meta/status.contract.test.d.ts +2 -0
- package/dist/contracts/meta/status.contract.test.d.ts.map +1 -0
- package/dist/contracts/shared/jurisdiction.schema.d.ts +24 -0
- package/dist/contracts/shared/jurisdiction.schema.d.ts.map +1 -0
- package/dist/core.cjs +3584 -0
- package/dist/core.d.ts +533 -76
- package/dist/core.d.ts.map +1 -1
- package/dist/{index.js → core.js} +1163 -1286
- package/dist/handlers/consent/index.d.ts +401 -0
- package/dist/handlers/consent/index.d.ts.map +1 -0
- package/dist/handlers/consent/post.handler.d.ts +234 -0
- package/dist/handlers/consent/post.handler.d.ts.map +1 -0
- package/dist/handlers/consent/show-banner.handler.d.ts +57 -0
- package/dist/handlers/consent/show-banner.handler.d.ts.map +1 -0
- package/dist/handlers/consent/show-banner.handler.test.d.ts +2 -0
- package/dist/handlers/consent/show-banner.handler.test.d.ts.map +1 -0
- package/dist/handlers/consent/verify.handler.d.ts +169 -0
- package/dist/handlers/consent/verify.handler.d.ts.map +1 -0
- package/dist/handlers/meta/index.d.ts +78 -0
- package/dist/handlers/meta/index.d.ts.map +1 -0
- package/dist/handlers/meta/status.handler.d.ts +76 -0
- package/dist/handlers/meta/status.handler.d.ts.map +1 -0
- package/dist/init.d.ts.map +1 -1
- package/dist/pkgs/api-router/hooks/processor.d.ts.map +1 -1
- package/dist/pkgs/api-router/types/router-props.d.ts +1 -1
- package/dist/pkgs/api-router/types/router-props.d.ts.map +1 -1
- package/dist/pkgs/api-router/utils/cors.d.ts +1 -1
- package/dist/pkgs/api-router/utils/cors.d.ts.map +1 -1
- package/dist/pkgs/data-model/fields/field-types.d.ts +1 -1
- package/dist/pkgs/data-model/fields/zod-fields.d.ts +32 -32
- package/dist/pkgs/data-model/index.cjs +1433 -1799
- package/dist/pkgs/data-model/index.js +20 -385
- package/dist/pkgs/data-model/schema/index.cjs +1402 -1768
- package/dist/pkgs/data-model/schema/index.js +20 -385
- package/dist/pkgs/db-adapters/adapter-factory.d.ts +2 -2
- package/dist/pkgs/db-adapters/adapter-factory.d.ts.map +1 -1
- package/dist/pkgs/db-adapters/adapters/drizzle-adapter/drizzle-adapter.d.ts +4 -4
- package/dist/pkgs/db-adapters/adapters/drizzle-adapter/index.cjs +19 -151
- package/dist/pkgs/db-adapters/adapters/drizzle-adapter/index.js +19 -151
- package/dist/pkgs/db-adapters/adapters/kysely-adapter/dialect.d.ts +1 -1
- package/dist/pkgs/db-adapters/adapters/kysely-adapter/index.cjs +17 -149
- package/dist/pkgs/db-adapters/adapters/kysely-adapter/index.js +17 -149
- package/dist/pkgs/db-adapters/adapters/kysely-adapter/tests/test-utils.d.ts +2 -2
- 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 +17 -149
- package/dist/pkgs/db-adapters/adapters/memory-adapter/index.js +17 -149
- package/dist/pkgs/db-adapters/adapters/prisma-adapter/index.cjs +19 -151
- package/dist/pkgs/db-adapters/adapters/prisma-adapter/index.js +19 -151
- package/dist/pkgs/db-adapters/index.cjs +31 -153
- package/dist/pkgs/db-adapters/index.js +31 -153
- package/dist/pkgs/migrations/get-schema/get-schema.d.ts +2 -2
- package/dist/pkgs/migrations/get-schema/index.d.ts +1 -1
- package/dist/pkgs/migrations/index.cjs +30 -153
- package/dist/pkgs/migrations/index.js +30 -153
- package/dist/pkgs/migrations/schema-comparison.d.ts.map +1 -1
- package/dist/pkgs/results/core/error-class.d.ts +23 -21
- package/dist/pkgs/results/core/error-class.d.ts.map +1 -1
- package/dist/pkgs/results/index.cjs +17 -150
- package/dist/pkgs/results/index.d.ts +0 -3
- package/dist/pkgs/results/index.d.ts.map +1 -1
- package/dist/pkgs/results/index.js +17 -138
- package/dist/pkgs/results/orpc-error-handler.d.ts +65 -0
- package/dist/pkgs/results/orpc-error-handler.d.ts.map +1 -0
- package/dist/pkgs/results/types.d.ts +7 -7
- package/dist/pkgs/results/types.d.ts.map +1 -1
- package/dist/pkgs/types/context.d.ts +15 -4
- package/dist/pkgs/types/context.d.ts.map +1 -1
- package/dist/pkgs/types/endpoints.d.ts +3 -4
- package/dist/pkgs/types/endpoints.d.ts.map +1 -1
- package/dist/pkgs/types/options.d.ts +2 -3
- package/dist/pkgs/types/options.d.ts.map +1 -1
- package/dist/pkgs/types/plugins.d.ts +2 -3
- package/dist/pkgs/types/plugins.d.ts.map +1 -1
- package/dist/pkgs/utils/index.d.ts +1 -0
- package/dist/pkgs/utils/index.d.ts.map +1 -1
- package/dist/pkgs/utils/logger.d.ts +16 -0
- package/dist/pkgs/utils/logger.d.ts.map +1 -0
- package/dist/router.cjs +1213 -0
- package/dist/router.d.ts +480 -0
- package/dist/router.d.ts.map +1 -0
- package/dist/router.js +1169 -0
- package/dist/schema/audit-log/table.d.ts +1 -1
- package/dist/schema/consent/table.d.ts +1 -1
- package/dist/schema/consent-policy/registry.d.ts +12 -12
- package/dist/schema/consent-policy/schema.d.ts +6 -6
- package/dist/schema/consent-policy/table.d.ts +7 -7
- package/dist/schema/consent-purpose/registry.d.ts +6 -6
- package/dist/schema/consent-purpose/schema.d.ts +6 -6
- package/dist/schema/consent-purpose/table.d.ts +7 -7
- package/dist/schema/consent-record/table.d.ts +1 -1
- package/dist/schema/create-registry.d.ts +32 -32
- package/dist/schema/definition.d.ts +19 -19
- package/dist/schema/domain/registry.d.ts +10 -10
- package/dist/schema/domain/schema.d.ts +5 -5
- package/dist/schema/domain/table.d.ts +6 -6
- package/dist/schema/index.cjs +1409 -1775
- package/dist/schema/index.js +20 -385
- package/dist/schema/schemas.d.ts +19 -19
- package/dist/schema/subject/registry.d.ts +4 -4
- package/dist/schema/subject/schema.d.ts +2 -2
- package/dist/schema/subject/table.d.ts +3 -3
- package/dist/server.d.ts +2 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/testing/contract-testing.d.ts +37 -0
- package/dist/testing/contract-testing.d.ts.map +1 -0
- package/dist/types/context.d.ts +1 -1
- package/dist/types/index.d.ts +2 -2
- package/dist/types/options.d.ts +33 -2
- package/dist/types/options.d.ts.map +1 -1
- package/dist/types/plugins.d.ts +3 -4
- package/dist/types/plugins.d.ts.map +1 -1
- package/package.json +22 -30
- package/rslib.config.ts +2 -5
- package/src/contracts/consent/index.test.ts +5 -0
- package/src/contracts/consent/index.ts +9 -0
- package/src/contracts/consent/post.contract.test.ts +526 -0
- package/src/contracts/consent/post.contract.ts +160 -0
- package/src/contracts/consent/show-banner.contract.test.ts +214 -0
- package/src/contracts/consent/show-banner.contract.ts +45 -0
- package/src/contracts/consent/verify.contract.test.ts +185 -0
- package/src/contracts/consent/verify.contract.ts +126 -0
- package/src/contracts/index.ts +18 -0
- package/src/contracts/meta/index.test.ts +5 -0
- package/src/contracts/meta/index.ts +5 -0
- package/src/contracts/meta/status.contract.test.ts +338 -0
- package/src/contracts/meta/status.contract.ts +37 -0
- package/src/contracts/shared/jurisdiction.schema.ts +30 -0
- package/src/core.ts +451 -159
- package/src/handlers/consent/index.ts +9 -0
- package/src/handlers/consent/post.handler.ts +273 -0
- package/src/handlers/consent/show-banner.handler.test.ts +148 -0
- package/src/handlers/consent/show-banner.handler.ts +150 -0
- package/src/handlers/consent/verify.handler.ts +305 -0
- package/src/handlers/meta/index.ts +5 -0
- package/src/handlers/meta/status.handler.ts +47 -0
- package/src/init.ts +8 -5
- package/src/pkgs/api-router/hooks/__tests__/processor.test.ts +6 -0
- package/src/pkgs/api-router/hooks/processor.ts +2 -0
- package/src/pkgs/api-router/types/router-props.ts +1 -1
- package/src/pkgs/api-router/utils/cors.ts +1 -1
- package/src/pkgs/data-model/fields/field-types.ts +1 -1
- package/src/pkgs/data-model/fields/id-generator.ts +1 -1
- package/src/pkgs/db-adapters/README.md +3 -3
- package/src/pkgs/db-adapters/adapter-factory.ts +8 -4
- package/src/pkgs/db-adapters/adapters/drizzle-adapter/drizzle-adapter.ts +13 -13
- package/src/pkgs/db-adapters/adapters/kysely-adapter/dialect.ts +1 -1
- package/src/pkgs/db-adapters/adapters/kysely-adapter/tests/postgres.test.ts +1 -1
- package/src/pkgs/db-adapters/adapters/kysely-adapter/tests/sqlite.test.ts +1 -1
- package/src/pkgs/db-adapters/adapters/kysely-adapter/tests/test-utils.ts +2 -2
- package/src/pkgs/migrations/get-migration.ts +3 -3
- package/src/pkgs/migrations/get-schema/get-schema.ts +2 -2
- package/src/pkgs/migrations/get-schema/index.ts +1 -1
- package/src/pkgs/migrations/migration-builders.ts +2 -2
- package/src/pkgs/migrations/migration-execution.ts +2 -2
- package/src/pkgs/migrations/schema-comparison.ts +5 -4
- package/src/pkgs/results/__tests__/error-class.test.ts +8 -7
- package/src/pkgs/results/core/error-class.ts +31 -43
- package/src/pkgs/results/index.ts +0 -10
- package/src/pkgs/results/orpc-error-handler.ts +137 -0
- package/src/pkgs/results/types.ts +8 -7
- package/src/pkgs/types/context.ts +18 -4
- package/src/pkgs/types/endpoints.ts +3 -5
- package/src/pkgs/types/options.ts +2 -3
- package/src/pkgs/types/plugins.ts +2 -3
- package/src/pkgs/utils/index.ts +1 -0
- package/src/pkgs/utils/logger.ts +38 -0
- package/src/router.ts +8 -0
- package/src/schema/audit-log/table.ts +1 -1
- package/src/schema/consent/table.ts +1 -1
- package/src/schema/consent-policy/table.ts +1 -1
- package/src/schema/consent-purpose/table.ts +1 -1
- package/src/schema/consent-record/table.ts +1 -1
- package/src/schema/definition.ts +2 -2
- package/src/schema/domain/table.ts +1 -1
- package/src/schema/subject/table.ts +1 -1
- package/src/server.ts +130 -0
- package/src/testing/contract-testing.ts +437 -0
- package/src/types/context.ts +1 -1
- package/src/types/index.ts +2 -2
- package/src/types/options.ts +38 -2
- package/src/types/plugins.ts +3 -4
- package/dist/index.cjs +0 -3701
- package/dist/index.d.ts +0 -11
- package/dist/index.d.ts.map +0 -1
- package/dist/init.test.d.ts +0 -2
- package/dist/init.test.d.ts.map +0 -1
- package/dist/integrations/cloudflare.cjs +0 -312
- package/dist/integrations/cloudflare.d.ts +0 -32
- package/dist/integrations/cloudflare.d.ts.map +0 -1
- package/dist/integrations/cloudflare.js +0 -278
- package/dist/integrations/next.cjs +0 -276
- package/dist/integrations/next.d.ts +0 -68
- package/dist/integrations/next.d.ts.map +0 -1
- package/dist/integrations/next.js +0 -239
- package/dist/integrations/node.cjs +0 -257
- package/dist/integrations/node.d.ts +0 -29
- package/dist/integrations/node.d.ts.map +0 -1
- package/dist/integrations/node.js +0 -223
- package/dist/pkgs/api-router/index.d.ts +0 -9
- package/dist/pkgs/api-router/index.d.ts.map +0 -1
- package/dist/pkgs/api-router/utils/define-route.d.ts +0 -87
- package/dist/pkgs/api-router/utils/define-route.d.ts.map +0 -1
- package/dist/pkgs/logger/__tests__/console-formatter.test.d.ts +0 -2
- package/dist/pkgs/logger/__tests__/console-formatter.test.d.ts.map +0 -1
- package/dist/pkgs/logger/__tests__/integration.test.d.ts +0 -2
- package/dist/pkgs/logger/__tests__/integration.test.d.ts.map +0 -1
- package/dist/pkgs/logger/__tests__/log-levels.test.d.ts +0 -2
- package/dist/pkgs/logger/__tests__/log-levels.test.d.ts.map +0 -1
- package/dist/pkgs/logger/__tests__/logger-factory.test.d.ts +0 -2
- package/dist/pkgs/logger/__tests__/logger-factory.test.d.ts.map +0 -1
- package/dist/pkgs/logger/__tests__/result-logging.test.d.ts +0 -2
- package/dist/pkgs/logger/__tests__/result-logging.test.d.ts.map +0 -1
- package/dist/pkgs/logger/__tests__/types.test.d.ts +0 -2
- package/dist/pkgs/logger/__tests__/types.test.d.ts.map +0 -1
- package/dist/pkgs/logger/console-formatter.d.ts +0 -56
- package/dist/pkgs/logger/console-formatter.d.ts.map +0 -1
- package/dist/pkgs/logger/index.cjs +0 -240
- package/dist/pkgs/logger/index.d.ts +0 -35
- package/dist/pkgs/logger/index.d.ts.map +0 -1
- package/dist/pkgs/logger/index.js +0 -185
- package/dist/pkgs/logger/log-levels.d.ts +0 -29
- package/dist/pkgs/logger/log-levels.d.ts.map +0 -1
- package/dist/pkgs/logger/logger-factory.d.ts +0 -42
- package/dist/pkgs/logger/logger-factory.d.ts.map +0 -1
- package/dist/pkgs/logger/result-logging.d.ts +0 -71
- package/dist/pkgs/logger/result-logging.d.ts.map +0 -1
- package/dist/pkgs/logger/telemetry.d.ts +0 -14
- package/dist/pkgs/logger/telemetry.d.ts.map +0 -1
- package/dist/pkgs/logger/types.d.ts +0 -121
- package/dist/pkgs/logger/types.d.ts.map +0 -1
- package/dist/pkgs/results/__tests__/retrieval-pipeline.test.d.ts +0 -2
- package/dist/pkgs/results/__tests__/retrieval-pipeline.test.d.ts.map +0 -1
- package/dist/pkgs/results/__tests__/validation-pipeline.test.d.ts +0 -2
- package/dist/pkgs/results/__tests__/validation-pipeline.test.d.ts.map +0 -1
- package/dist/pkgs/results/h3-integration.d.ts +0 -52
- package/dist/pkgs/results/h3-integration.d.ts.map +0 -1
- package/dist/pkgs/results/pipeline/retrieval-pipeline.d.ts +0 -101
- package/dist/pkgs/results/pipeline/retrieval-pipeline.d.ts.map +0 -1
- package/dist/pkgs/results/pipeline/validation-pipeline.d.ts +0 -89
- package/dist/pkgs/results/pipeline/validation-pipeline.d.ts.map +0 -1
- package/dist/response-types.d.ts +0 -19
- package/dist/response-types.d.ts.map +0 -1
- package/dist/routes/__test__/index.test.d.ts +0 -17
- package/dist/routes/__test__/index.test.d.ts.map +0 -1
- package/dist/routes/__test__/set-consent.test.d.ts +0 -2
- package/dist/routes/__test__/set-consent.test.d.ts.map +0 -1
- package/dist/routes/__test__/show-consent-banner.test.d.ts +0 -2
- package/dist/routes/__test__/show-consent-banner.test.d.ts.map +0 -1
- package/dist/routes/__test__/status.test.d.ts +0 -2
- package/dist/routes/__test__/status.test.d.ts.map +0 -1
- package/dist/routes/__test__/verify-consent.test.d.ts +0 -2
- package/dist/routes/__test__/verify-consent.test.d.ts.map +0 -1
- package/dist/routes/index.d.ts +0 -3
- package/dist/routes/index.d.ts.map +0 -1
- package/dist/routes/set-consent.d.ts +0 -89
- package/dist/routes/set-consent.d.ts.map +0 -1
- package/dist/routes/show-consent-banner.d.ts +0 -15
- package/dist/routes/show-consent-banner.d.ts.map +0 -1
- package/dist/routes/status.d.ts +0 -44
- package/dist/routes/status.d.ts.map +0 -1
- package/dist/routes/types.d.ts +0 -7
- package/dist/routes/types.d.ts.map +0 -1
- package/dist/routes/verify-consent.d.ts +0 -38
- package/dist/routes/verify-consent.d.ts.map +0 -1
- package/src/docs/ADVANCED_JSON_HANDLING.md +0 -99
- package/src/docs/neverthrow.md +0 -171
- package/src/index.ts +0 -34
- package/src/init.test.ts +0 -219
- package/src/integrations/cloudflare.ts +0 -269
- package/src/integrations/next.ts +0 -204
- package/src/integrations/node.ts +0 -141
- package/src/pkgs/api-router/index.ts +0 -148
- package/src/pkgs/api-router/types/h3.d.ts +0 -42
- package/src/pkgs/api-router/utils/define-route.ts +0 -410
- package/src/pkgs/logger/README.md +0 -213
- package/src/pkgs/logger/__tests__/console-formatter.test.ts +0 -67
- package/src/pkgs/logger/__tests__/integration.test.ts +0 -184
- package/src/pkgs/logger/__tests__/log-levels.test.ts +0 -77
- package/src/pkgs/logger/__tests__/logger-factory.test.ts +0 -156
- package/src/pkgs/logger/__tests__/result-logging.test.ts +0 -209
- package/src/pkgs/logger/__tests__/types.test.ts +0 -94
- package/src/pkgs/logger/console-formatter.ts +0 -75
- package/src/pkgs/logger/doc.md +0 -569
- package/src/pkgs/logger/index.ts +0 -59
- package/src/pkgs/logger/log-levels.ts +0 -46
- package/src/pkgs/logger/logger-factory.ts +0 -121
- package/src/pkgs/logger/result-logging.ts +0 -134
- package/src/pkgs/logger/telemetry.ts +0 -96
- package/src/pkgs/logger/types.ts +0 -138
- package/src/pkgs/results/__tests__/retrieval-pipeline.test.ts +0 -157
- package/src/pkgs/results/__tests__/validation-pipeline.test.ts +0 -151
- package/src/pkgs/results/h3-integration.ts +0 -142
- package/src/pkgs/results/pipeline/retrieval-pipeline.ts +0 -188
- package/src/pkgs/results/pipeline/validation-pipeline.ts +0 -164
- package/src/plugins/.keep +0 -0
- package/src/response-types.ts +0 -29
- package/src/routes/__test__/index.test.ts +0 -112
- package/src/routes/__test__/set-consent.test.ts +0 -242
- package/src/routes/__test__/show-consent-banner.test.ts +0 -98
- package/src/routes/__test__/status.test.ts +0 -64
- package/src/routes/__test__/verify-consent.test.ts +0 -266
- package/src/routes/index.ts +0 -12
- package/src/routes/set-consent.ts +0 -249
- package/src/routes/show-consent-banner.ts +0 -131
- package/src/routes/status.ts +0 -61
- package/src/routes/types.ts +0 -7
- package/src/routes/verify-consent.ts +0 -206
|
@@ -2,8 +2,9 @@ import * as __WEBPACK_EXTERNAL_MODULE_superjson__ from "superjson";
|
|
|
2
2
|
import * as __WEBPACK_EXTERNAL_MODULE_base_x_aeb88370__ from "base-x";
|
|
3
3
|
import * as __WEBPACK_EXTERNAL_MODULE_zod__ from "zod";
|
|
4
4
|
import "neverthrow";
|
|
5
|
-
import * as
|
|
5
|
+
import * as __WEBPACK_EXTERNAL_MODULE__orpc_server_0dae8408__ from "@orpc/server";
|
|
6
6
|
import * as __WEBPACK_EXTERNAL_MODULE__opentelemetry_api_87359e78__ from "@opentelemetry/api";
|
|
7
|
+
import "@doubletie/logger";
|
|
7
8
|
import "node:crypto";
|
|
8
9
|
import * as __WEBPACK_EXTERNAL_MODULE_kysely__ from "kysely";
|
|
9
10
|
import "drizzle-orm";
|
|
@@ -146,10 +147,10 @@ const ERROR_CATEGORIES = Object.freeze({
|
|
|
146
147
|
UNEXPECTED: 'unexpected'
|
|
147
148
|
});
|
|
148
149
|
__WEBPACK_EXTERNAL_MODULE__opentelemetry_api_87359e78__.trace.getTracer('@doubletie/results');
|
|
149
|
-
class error_class_DoubleTieError extends
|
|
150
|
-
code;
|
|
150
|
+
class error_class_DoubleTieError extends __WEBPACK_EXTERNAL_MODULE__orpc_server_0dae8408__.ORPCError {
|
|
151
151
|
category;
|
|
152
152
|
meta;
|
|
153
|
+
statusCode;
|
|
153
154
|
constructor(message, options = {
|
|
154
155
|
code: error_codes_ERROR_CODES.UNKNOWN_ERROR,
|
|
155
156
|
status: 500,
|
|
@@ -157,22 +158,18 @@ class error_class_DoubleTieError extends __WEBPACK_EXTERNAL_MODULE_h3__.H3Error
|
|
|
157
158
|
cause: void 0,
|
|
158
159
|
meta: {}
|
|
159
160
|
}){
|
|
160
|
-
super(
|
|
161
|
-
|
|
161
|
+
super(options.code ?? error_codes_ERROR_CODES.UNKNOWN_ERROR, {
|
|
162
|
+
message,
|
|
163
|
+
cause: options.cause,
|
|
164
|
+
data: options.meta ?? {}
|
|
162
165
|
});
|
|
163
|
-
this.name =
|
|
164
|
-
this.code = options.code ?? error_codes_ERROR_CODES.UNKNOWN_ERROR;
|
|
165
|
-
this.statusCode = options.status ?? 500;
|
|
166
|
+
this.name = 'DoubleTieError';
|
|
166
167
|
this.category = options.category ?? ERROR_CATEGORIES.UNEXPECTED;
|
|
167
168
|
this.meta = options.meta ?? {};
|
|
168
|
-
this.
|
|
169
|
-
code: this.code,
|
|
170
|
-
category: this.category,
|
|
171
|
-
meta: this.meta
|
|
172
|
-
};
|
|
169
|
+
this.statusCode = options.status ?? 500;
|
|
173
170
|
tracing_withSpan('create_doubletie_error', async (span)=>{
|
|
174
171
|
span.setAttributes({
|
|
175
|
-
'error.name': this.name,
|
|
172
|
+
'error.name': this.constructor.name,
|
|
176
173
|
'error.message': message,
|
|
177
174
|
'error.code': this.code,
|
|
178
175
|
'error.status': this.statusCode,
|
|
@@ -192,11 +189,11 @@ class error_class_DoubleTieError extends __WEBPACK_EXTERNAL_MODULE_h3__.H3Error
|
|
|
192
189
|
const validationErrorMessage = this.meta?.validationErrors ? String(this.meta.validationErrors) : void 0;
|
|
193
190
|
const stackTrace = this.stack ? this.stack.split('\n').map((line)=>line.trim()).filter((line)=>line && !line.includes('Error: ')) : [];
|
|
194
191
|
return {
|
|
195
|
-
|
|
192
|
+
code: this.code,
|
|
196
193
|
message: validationErrorMessage || this.message,
|
|
197
|
-
|
|
194
|
+
status: this.statusCode,
|
|
195
|
+
defined: true,
|
|
198
196
|
data: {
|
|
199
|
-
code: this.code,
|
|
200
197
|
category: this.category,
|
|
201
198
|
meta: this.meta,
|
|
202
199
|
...'production' === process.env.NODE_ENV ? {} : {
|
|
@@ -247,7 +244,9 @@ class error_class_DoubleTieError extends __WEBPACK_EXTERNAL_MODULE_h3__.H3Error
|
|
|
247
244
|
const ErrorSubclass = class extends error_class_DoubleTieError {
|
|
248
245
|
constructor(message, options){
|
|
249
246
|
super(message, options);
|
|
250
|
-
this
|
|
247
|
+
Object.defineProperty(this, 'name', {
|
|
248
|
+
value: name
|
|
249
|
+
});
|
|
251
250
|
}
|
|
252
251
|
};
|
|
253
252
|
Object.defineProperty(ErrorSubclass, 'name', {
|
|
@@ -264,137 +263,6 @@ class error_class_DoubleTieError extends __WEBPACK_EXTERNAL_MODULE_h3__.H3Error
|
|
|
264
263
|
return formattedMessage;
|
|
265
264
|
}
|
|
266
265
|
}
|
|
267
|
-
const levels = [
|
|
268
|
-
'error',
|
|
269
|
-
'warn',
|
|
270
|
-
'info',
|
|
271
|
-
'success',
|
|
272
|
-
'debug'
|
|
273
|
-
];
|
|
274
|
-
function shouldPublishLog(currentLogLevel, logLevel) {
|
|
275
|
-
const currentLevelIndex = levels.indexOf(currentLogLevel);
|
|
276
|
-
const messageLevelIndex = levels.indexOf(logLevel);
|
|
277
|
-
if ('debug' === currentLogLevel) return 'debug' === logLevel;
|
|
278
|
-
return messageLevelIndex <= currentLevelIndex;
|
|
279
|
-
}
|
|
280
|
-
const colors = {
|
|
281
|
-
reset: '\x1b[0m',
|
|
282
|
-
bright: '\x1b[1m',
|
|
283
|
-
dim: '\x1b[2m',
|
|
284
|
-
underscore: '\x1b[4m',
|
|
285
|
-
blink: '\x1b[5m',
|
|
286
|
-
reverse: '\x1b[7m',
|
|
287
|
-
hidden: '\x1b[8m',
|
|
288
|
-
fg: {
|
|
289
|
-
black: '\x1b[30m',
|
|
290
|
-
red: '\x1b[31m',
|
|
291
|
-
green: '\x1b[32m',
|
|
292
|
-
yellow: '\x1b[33m',
|
|
293
|
-
blue: '\x1b[34m',
|
|
294
|
-
magenta: '\x1b[35m',
|
|
295
|
-
cyan: '\x1b[36m',
|
|
296
|
-
white: '\x1b[37m'
|
|
297
|
-
},
|
|
298
|
-
bg: {
|
|
299
|
-
black: '\x1b[40m',
|
|
300
|
-
red: '\x1b[41m',
|
|
301
|
-
green: '\x1b[42m',
|
|
302
|
-
yellow: '\x1b[43m',
|
|
303
|
-
blue: '\x1b[44m',
|
|
304
|
-
magenta: '\x1b[45m',
|
|
305
|
-
cyan: '\x1b[46m',
|
|
306
|
-
white: '\x1b[47m'
|
|
307
|
-
}
|
|
308
|
-
};
|
|
309
|
-
const levelColors = {
|
|
310
|
-
info: colors.fg.blue,
|
|
311
|
-
success: colors.fg.green,
|
|
312
|
-
warn: colors.fg.yellow,
|
|
313
|
-
error: colors.fg.red,
|
|
314
|
-
debug: colors.fg.magenta
|
|
315
|
-
};
|
|
316
|
-
const formatMessage = (level, message, appName = 'c15t')=>{
|
|
317
|
-
const timestamp = new Date().toISOString();
|
|
318
|
-
return `${colors.dim}${timestamp}${colors.reset} ${levelColors[level]}${level.toUpperCase()}${colors.reset} ${colors.bright}[${appName}]:${colors.reset} ${message}`;
|
|
319
|
-
};
|
|
320
|
-
const LOGGER_TRACER_NAME = '@doubletie/logger';
|
|
321
|
-
const LOG_LEVEL_TO_SPAN_STATUS = {
|
|
322
|
-
error: __WEBPACK_EXTERNAL_MODULE__opentelemetry_api_87359e78__.SpanStatusCode.ERROR,
|
|
323
|
-
warn: __WEBPACK_EXTERNAL_MODULE__opentelemetry_api_87359e78__.SpanStatusCode.OK,
|
|
324
|
-
info: __WEBPACK_EXTERNAL_MODULE__opentelemetry_api_87359e78__.SpanStatusCode.OK,
|
|
325
|
-
success: __WEBPACK_EXTERNAL_MODULE__opentelemetry_api_87359e78__.SpanStatusCode.OK,
|
|
326
|
-
debug: __WEBPACK_EXTERNAL_MODULE__opentelemetry_api_87359e78__.SpanStatusCode.OK
|
|
327
|
-
};
|
|
328
|
-
const telemetry_getTracer = (options)=>{
|
|
329
|
-
if (options?.telemetry?.tracer) return options.telemetry.tracer;
|
|
330
|
-
return __WEBPACK_EXTERNAL_MODULE__opentelemetry_api_87359e78__.trace.getTracer(LOGGER_TRACER_NAME);
|
|
331
|
-
};
|
|
332
|
-
const createLogSpan = (level, message, args = [], options)=>{
|
|
333
|
-
if (options?.telemetry?.disabled) return null;
|
|
334
|
-
const tracer = telemetry_getTracer(options);
|
|
335
|
-
const span = tracer.startSpan('log_entry', {
|
|
336
|
-
attributes: {
|
|
337
|
-
'log.level': level,
|
|
338
|
-
'log.message': message,
|
|
339
|
-
'log.has_args': args.length > 0,
|
|
340
|
-
...options?.telemetry?.defaultAttributes || {}
|
|
341
|
-
}
|
|
342
|
-
});
|
|
343
|
-
if (args.length > 0 && 'object' == typeof args[0] && null !== args[0]) {
|
|
344
|
-
const data = args[0];
|
|
345
|
-
for (const [key, value] of Object.entries(data))if (null != value) span.setAttribute(`log.data.${key}`, String(value));
|
|
346
|
-
}
|
|
347
|
-
span.setStatus({
|
|
348
|
-
code: LOG_LEVEL_TO_SPAN_STATUS[level],
|
|
349
|
-
message: 'error' === level || 'warn' === level ? message : void 0
|
|
350
|
-
});
|
|
351
|
-
return span;
|
|
352
|
-
};
|
|
353
|
-
const withLogSpan = async (level, message, args, operation, options)=>{
|
|
354
|
-
const span = createLogSpan(level, message, args, options);
|
|
355
|
-
if (!span) return operation();
|
|
356
|
-
try {
|
|
357
|
-
const result = await operation();
|
|
358
|
-
return result;
|
|
359
|
-
} catch (error) {
|
|
360
|
-
span.setStatus({
|
|
361
|
-
code: __WEBPACK_EXTERNAL_MODULE__opentelemetry_api_87359e78__.SpanStatusCode.ERROR,
|
|
362
|
-
message: error instanceof Error ? error.message : String(error)
|
|
363
|
-
});
|
|
364
|
-
throw error;
|
|
365
|
-
} finally{
|
|
366
|
-
span.end();
|
|
367
|
-
}
|
|
368
|
-
};
|
|
369
|
-
const logger_factory_createLogger = (options)=>{
|
|
370
|
-
if (options && 'object' == typeof options && levels.every((level)=>'function' == typeof options[level])) return options;
|
|
371
|
-
const loggerOptions = options;
|
|
372
|
-
const enabled = loggerOptions?.disabled !== true;
|
|
373
|
-
const logLevel = loggerOptions?.level ?? 'error';
|
|
374
|
-
const appName = loggerOptions?.appName ?? 'c15t';
|
|
375
|
-
const logFunc = async (level, message, args = [])=>{
|
|
376
|
-
if (!enabled || !shouldPublishLog(logLevel, level)) return;
|
|
377
|
-
await withLogSpan(level, message, args, async ()=>{
|
|
378
|
-
const formattedMessage = formatMessage(level, message, appName);
|
|
379
|
-
if (!loggerOptions || 'function' != typeof loggerOptions.log) {
|
|
380
|
-
if ('error' === level) console.error(formattedMessage, ...args);
|
|
381
|
-
else if ('warn' === level) console.warn(formattedMessage, ...args);
|
|
382
|
-
else if ('info' === level) console.log(formattedMessage, ...args);
|
|
383
|
-
else if ('debug' === level) console.debug(formattedMessage, ...args);
|
|
384
|
-
else if ('success' === level) console.log(formattedMessage, ...args);
|
|
385
|
-
return;
|
|
386
|
-
}
|
|
387
|
-
loggerOptions.log('success' === level ? 'info' : level, message, ...args);
|
|
388
|
-
});
|
|
389
|
-
};
|
|
390
|
-
return Object.fromEntries(levels.map((level)=>[
|
|
391
|
-
level,
|
|
392
|
-
(...[message, ...args])=>logFunc(level, message, args).catch((error)=>{
|
|
393
|
-
console.error('Logger error:', error);
|
|
394
|
-
})
|
|
395
|
-
]));
|
|
396
|
-
};
|
|
397
|
-
logger_factory_createLogger();
|
|
398
266
|
const schema_auditLogSchema = __WEBPACK_EXTERNAL_MODULE_zod__.z.object({
|
|
399
267
|
id: __WEBPACK_EXTERNAL_MODULE_zod__.z.string(),
|
|
400
268
|
entityType: __WEBPACK_EXTERNAL_MODULE_zod__.z.string(),
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type Kysely, type Migration } from 'kysely';
|
|
2
|
+
import type { Logger } from '@doubletie/logger';
|
|
2
3
|
import type { Adapter } from '../../..';
|
|
3
|
-
import type { Logger } from '../../../../logger';
|
|
4
4
|
import type { C15TOptions } from '../../../../../types';
|
|
5
5
|
import type { Database } from '../types';
|
|
6
6
|
/**
|
|
@@ -22,7 +22,7 @@ export interface DbConfig {
|
|
|
22
22
|
*/
|
|
23
23
|
export declare const expectedTables: string[];
|
|
24
24
|
/**
|
|
25
|
-
* Helper to create
|
|
25
|
+
* Helper to create c15t options for a database
|
|
26
26
|
*/
|
|
27
27
|
export declare function createOptions(dbConfig: DbConfig): C15TOptions;
|
|
28
28
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-utils.d.ts","sourceRoot":"","sources":["../../../../../../src/pkgs/db-adapters/adapters/kysely-adapter/tests/test-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,SAAS,EAAO,MAAM,QAAQ,CAAC;AAG1D,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"test-utils.d.ts","sourceRoot":"","sources":["../../../../../../src/pkgs/db-adapters/adapters/kysely-adapter/tests/test-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,SAAS,EAAO,MAAM,QAAQ,CAAC;AAG1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEzC;;GAEG;AACH,MAAM,WAAW,QAAQ;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,UAQ1B,CAAC;AAEF;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,WAAW,CAW7D;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACzC,MAAM,EAAE,MAAM,EAAE,EAChB,MAAM,EAAE,MAAM,GACZ,OAAO,CAAC,IAAI,CAAC,CAUf;AAED;;GAEG;AACH,wBAAsB,aAAa,CAClC,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC,EACpB,kBAAkB,EAAE,MAAM,EAC1B,YAAY,CAAC,EAAE,MAAM,EACrB,mBAAmB,CAAC,EAAE,OAAO,GAC3B,OAAO,CAAC,IAAI,CAAC,CA8Ff;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CA8DhE;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IACnC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC9B,iBAiMA"}
|
|
@@ -147,7 +147,7 @@ external_zod_namespaceObject.z.discriminatedUnion('type', [
|
|
|
147
147
|
numberArrayFieldSchema
|
|
148
148
|
]);
|
|
149
149
|
require("neverthrow");
|
|
150
|
-
const
|
|
150
|
+
const server_namespaceObject = require("@orpc/server");
|
|
151
151
|
const error_codes_ERROR_CODES = Object.freeze({
|
|
152
152
|
NOT_FOUND: 'Resource not found',
|
|
153
153
|
BAD_REQUEST: 'Bad request',
|
|
@@ -180,10 +180,10 @@ const ERROR_CATEGORIES = Object.freeze({
|
|
|
180
180
|
});
|
|
181
181
|
const api_namespaceObject = require("@opentelemetry/api");
|
|
182
182
|
api_namespaceObject.trace.getTracer('@doubletie/results');
|
|
183
|
-
class error_class_DoubleTieError extends
|
|
184
|
-
code;
|
|
183
|
+
class error_class_DoubleTieError extends server_namespaceObject.ORPCError {
|
|
185
184
|
category;
|
|
186
185
|
meta;
|
|
186
|
+
statusCode;
|
|
187
187
|
constructor(message, options = {
|
|
188
188
|
code: error_codes_ERROR_CODES.UNKNOWN_ERROR,
|
|
189
189
|
status: 500,
|
|
@@ -191,22 +191,18 @@ class error_class_DoubleTieError extends external_h3_namespaceObject.H3Error {
|
|
|
191
191
|
cause: void 0,
|
|
192
192
|
meta: {}
|
|
193
193
|
}){
|
|
194
|
-
super(
|
|
195
|
-
|
|
194
|
+
super(options.code ?? error_codes_ERROR_CODES.UNKNOWN_ERROR, {
|
|
195
|
+
message,
|
|
196
|
+
cause: options.cause,
|
|
197
|
+
data: options.meta ?? {}
|
|
196
198
|
});
|
|
197
|
-
this.name =
|
|
198
|
-
this.code = options.code ?? error_codes_ERROR_CODES.UNKNOWN_ERROR;
|
|
199
|
-
this.statusCode = options.status ?? 500;
|
|
199
|
+
this.name = 'DoubleTieError';
|
|
200
200
|
this.category = options.category ?? ERROR_CATEGORIES.UNEXPECTED;
|
|
201
201
|
this.meta = options.meta ?? {};
|
|
202
|
-
this.
|
|
203
|
-
code: this.code,
|
|
204
|
-
category: this.category,
|
|
205
|
-
meta: this.meta
|
|
206
|
-
};
|
|
202
|
+
this.statusCode = options.status ?? 500;
|
|
207
203
|
tracing_withSpan('create_doubletie_error', async (span)=>{
|
|
208
204
|
span.setAttributes({
|
|
209
|
-
'error.name': this.name,
|
|
205
|
+
'error.name': this.constructor.name,
|
|
210
206
|
'error.message': message,
|
|
211
207
|
'error.code': this.code,
|
|
212
208
|
'error.status': this.statusCode,
|
|
@@ -226,11 +222,11 @@ class error_class_DoubleTieError extends external_h3_namespaceObject.H3Error {
|
|
|
226
222
|
const validationErrorMessage = this.meta?.validationErrors ? String(this.meta.validationErrors) : void 0;
|
|
227
223
|
const stackTrace = this.stack ? this.stack.split('\n').map((line)=>line.trim()).filter((line)=>line && !line.includes('Error: ')) : [];
|
|
228
224
|
return {
|
|
229
|
-
|
|
225
|
+
code: this.code,
|
|
230
226
|
message: validationErrorMessage || this.message,
|
|
231
|
-
|
|
227
|
+
status: this.statusCode,
|
|
228
|
+
defined: true,
|
|
232
229
|
data: {
|
|
233
|
-
code: this.code,
|
|
234
230
|
category: this.category,
|
|
235
231
|
meta: this.meta,
|
|
236
232
|
...'production' === process.env.NODE_ENV ? {} : {
|
|
@@ -281,7 +277,9 @@ class error_class_DoubleTieError extends external_h3_namespaceObject.H3Error {
|
|
|
281
277
|
const ErrorSubclass = class extends error_class_DoubleTieError {
|
|
282
278
|
constructor(message, options){
|
|
283
279
|
super(message, options);
|
|
284
|
-
this
|
|
280
|
+
Object.defineProperty(this, 'name', {
|
|
281
|
+
value: name
|
|
282
|
+
});
|
|
285
283
|
}
|
|
286
284
|
};
|
|
287
285
|
Object.defineProperty(ErrorSubclass, 'name', {
|
|
@@ -298,137 +296,7 @@ class error_class_DoubleTieError extends external_h3_namespaceObject.H3Error {
|
|
|
298
296
|
return formattedMessage;
|
|
299
297
|
}
|
|
300
298
|
}
|
|
301
|
-
|
|
302
|
-
reset: '\x1b[0m',
|
|
303
|
-
bright: '\x1b[1m',
|
|
304
|
-
dim: '\x1b[2m',
|
|
305
|
-
underscore: '\x1b[4m',
|
|
306
|
-
blink: '\x1b[5m',
|
|
307
|
-
reverse: '\x1b[7m',
|
|
308
|
-
hidden: '\x1b[8m',
|
|
309
|
-
fg: {
|
|
310
|
-
black: '\x1b[30m',
|
|
311
|
-
red: '\x1b[31m',
|
|
312
|
-
green: '\x1b[32m',
|
|
313
|
-
yellow: '\x1b[33m',
|
|
314
|
-
blue: '\x1b[34m',
|
|
315
|
-
magenta: '\x1b[35m',
|
|
316
|
-
cyan: '\x1b[36m',
|
|
317
|
-
white: '\x1b[37m'
|
|
318
|
-
},
|
|
319
|
-
bg: {
|
|
320
|
-
black: '\x1b[40m',
|
|
321
|
-
red: '\x1b[41m',
|
|
322
|
-
green: '\x1b[42m',
|
|
323
|
-
yellow: '\x1b[43m',
|
|
324
|
-
blue: '\x1b[44m',
|
|
325
|
-
magenta: '\x1b[45m',
|
|
326
|
-
cyan: '\x1b[46m',
|
|
327
|
-
white: '\x1b[47m'
|
|
328
|
-
}
|
|
329
|
-
};
|
|
330
|
-
const levelColors = {
|
|
331
|
-
info: colors.fg.blue,
|
|
332
|
-
success: colors.fg.green,
|
|
333
|
-
warn: colors.fg.yellow,
|
|
334
|
-
error: colors.fg.red,
|
|
335
|
-
debug: colors.fg.magenta
|
|
336
|
-
};
|
|
337
|
-
const formatMessage = (level, message, appName = 'c15t')=>{
|
|
338
|
-
const timestamp = new Date().toISOString();
|
|
339
|
-
return `${colors.dim}${timestamp}${colors.reset} ${levelColors[level]}${level.toUpperCase()}${colors.reset} ${colors.bright}[${appName}]:${colors.reset} ${message}`;
|
|
340
|
-
};
|
|
341
|
-
const levels = [
|
|
342
|
-
'error',
|
|
343
|
-
'warn',
|
|
344
|
-
'info',
|
|
345
|
-
'success',
|
|
346
|
-
'debug'
|
|
347
|
-
];
|
|
348
|
-
function shouldPublishLog(currentLogLevel, logLevel) {
|
|
349
|
-
const currentLevelIndex = levels.indexOf(currentLogLevel);
|
|
350
|
-
const messageLevelIndex = levels.indexOf(logLevel);
|
|
351
|
-
if ('debug' === currentLogLevel) return 'debug' === logLevel;
|
|
352
|
-
return messageLevelIndex <= currentLevelIndex;
|
|
353
|
-
}
|
|
354
|
-
const LOGGER_TRACER_NAME = '@doubletie/logger';
|
|
355
|
-
const LOG_LEVEL_TO_SPAN_STATUS = {
|
|
356
|
-
error: api_namespaceObject.SpanStatusCode.ERROR,
|
|
357
|
-
warn: api_namespaceObject.SpanStatusCode.OK,
|
|
358
|
-
info: api_namespaceObject.SpanStatusCode.OK,
|
|
359
|
-
success: api_namespaceObject.SpanStatusCode.OK,
|
|
360
|
-
debug: api_namespaceObject.SpanStatusCode.OK
|
|
361
|
-
};
|
|
362
|
-
const telemetry_getTracer = (options)=>{
|
|
363
|
-
if (options?.telemetry?.tracer) return options.telemetry.tracer;
|
|
364
|
-
return api_namespaceObject.trace.getTracer(LOGGER_TRACER_NAME);
|
|
365
|
-
};
|
|
366
|
-
const createLogSpan = (level, message, args = [], options)=>{
|
|
367
|
-
if (options?.telemetry?.disabled) return null;
|
|
368
|
-
const tracer = telemetry_getTracer(options);
|
|
369
|
-
const span = tracer.startSpan('log_entry', {
|
|
370
|
-
attributes: {
|
|
371
|
-
'log.level': level,
|
|
372
|
-
'log.message': message,
|
|
373
|
-
'log.has_args': args.length > 0,
|
|
374
|
-
...options?.telemetry?.defaultAttributes || {}
|
|
375
|
-
}
|
|
376
|
-
});
|
|
377
|
-
if (args.length > 0 && 'object' == typeof args[0] && null !== args[0]) {
|
|
378
|
-
const data = args[0];
|
|
379
|
-
for (const [key, value] of Object.entries(data))if (null != value) span.setAttribute(`log.data.${key}`, String(value));
|
|
380
|
-
}
|
|
381
|
-
span.setStatus({
|
|
382
|
-
code: LOG_LEVEL_TO_SPAN_STATUS[level],
|
|
383
|
-
message: 'error' === level || 'warn' === level ? message : void 0
|
|
384
|
-
});
|
|
385
|
-
return span;
|
|
386
|
-
};
|
|
387
|
-
const withLogSpan = async (level, message, args, operation, options)=>{
|
|
388
|
-
const span = createLogSpan(level, message, args, options);
|
|
389
|
-
if (!span) return operation();
|
|
390
|
-
try {
|
|
391
|
-
const result = await operation();
|
|
392
|
-
return result;
|
|
393
|
-
} catch (error) {
|
|
394
|
-
span.setStatus({
|
|
395
|
-
code: api_namespaceObject.SpanStatusCode.ERROR,
|
|
396
|
-
message: error instanceof Error ? error.message : String(error)
|
|
397
|
-
});
|
|
398
|
-
throw error;
|
|
399
|
-
} finally{
|
|
400
|
-
span.end();
|
|
401
|
-
}
|
|
402
|
-
};
|
|
403
|
-
const createLogger = (options)=>{
|
|
404
|
-
if (options && 'object' == typeof options && levels.every((level)=>'function' == typeof options[level])) return options;
|
|
405
|
-
const loggerOptions = options;
|
|
406
|
-
const enabled = loggerOptions?.disabled !== true;
|
|
407
|
-
const logLevel = loggerOptions?.level ?? 'error';
|
|
408
|
-
const appName = loggerOptions?.appName ?? 'c15t';
|
|
409
|
-
const logFunc = async (level, message, args = [])=>{
|
|
410
|
-
if (!enabled || !shouldPublishLog(logLevel, level)) return;
|
|
411
|
-
await withLogSpan(level, message, args, async ()=>{
|
|
412
|
-
const formattedMessage = formatMessage(level, message, appName);
|
|
413
|
-
if (!loggerOptions || 'function' != typeof loggerOptions.log) {
|
|
414
|
-
if ('error' === level) console.error(formattedMessage, ...args);
|
|
415
|
-
else if ('warn' === level) console.warn(formattedMessage, ...args);
|
|
416
|
-
else if ('info' === level) console.log(formattedMessage, ...args);
|
|
417
|
-
else if ('debug' === level) console.debug(formattedMessage, ...args);
|
|
418
|
-
else if ('success' === level) console.log(formattedMessage, ...args);
|
|
419
|
-
return;
|
|
420
|
-
}
|
|
421
|
-
loggerOptions.log('success' === level ? 'info' : level, message, ...args);
|
|
422
|
-
});
|
|
423
|
-
};
|
|
424
|
-
return Object.fromEntries(levels.map((level)=>[
|
|
425
|
-
level,
|
|
426
|
-
(...[message, ...args])=>logFunc(level, message, args).catch((error)=>{
|
|
427
|
-
console.error('Logger error:', error);
|
|
428
|
-
})
|
|
429
|
-
]));
|
|
430
|
-
};
|
|
431
|
-
createLogger();
|
|
299
|
+
require("@doubletie/logger");
|
|
432
300
|
const schema_auditLogSchema = external_zod_namespaceObject.z.object({
|
|
433
301
|
id: external_zod_namespaceObject.z.string(),
|
|
434
302
|
entityType: external_zod_namespaceObject.z.string(),
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import * as __WEBPACK_EXTERNAL_MODULE_base_x_aeb88370__ from "base-x";
|
|
2
2
|
import * as __WEBPACK_EXTERNAL_MODULE_zod__ from "zod";
|
|
3
3
|
import "neverthrow";
|
|
4
|
-
import * as
|
|
4
|
+
import * as __WEBPACK_EXTERNAL_MODULE__orpc_server_0dae8408__ from "@orpc/server";
|
|
5
5
|
import * as __WEBPACK_EXTERNAL_MODULE__opentelemetry_api_87359e78__ from "@opentelemetry/api";
|
|
6
|
+
import "@doubletie/logger";
|
|
6
7
|
import "node:crypto";
|
|
7
8
|
const COMMON_TIMEZONES = {
|
|
8
9
|
UTC: 'UTC',
|
|
@@ -143,10 +144,10 @@ const ERROR_CATEGORIES = Object.freeze({
|
|
|
143
144
|
UNEXPECTED: 'unexpected'
|
|
144
145
|
});
|
|
145
146
|
__WEBPACK_EXTERNAL_MODULE__opentelemetry_api_87359e78__.trace.getTracer('@doubletie/results');
|
|
146
|
-
class error_class_DoubleTieError extends
|
|
147
|
-
code;
|
|
147
|
+
class error_class_DoubleTieError extends __WEBPACK_EXTERNAL_MODULE__orpc_server_0dae8408__.ORPCError {
|
|
148
148
|
category;
|
|
149
149
|
meta;
|
|
150
|
+
statusCode;
|
|
150
151
|
constructor(message, options = {
|
|
151
152
|
code: error_codes_ERROR_CODES.UNKNOWN_ERROR,
|
|
152
153
|
status: 500,
|
|
@@ -154,22 +155,18 @@ class error_class_DoubleTieError extends __WEBPACK_EXTERNAL_MODULE_h3__.H3Error
|
|
|
154
155
|
cause: void 0,
|
|
155
156
|
meta: {}
|
|
156
157
|
}){
|
|
157
|
-
super(
|
|
158
|
-
|
|
158
|
+
super(options.code ?? error_codes_ERROR_CODES.UNKNOWN_ERROR, {
|
|
159
|
+
message,
|
|
160
|
+
cause: options.cause,
|
|
161
|
+
data: options.meta ?? {}
|
|
159
162
|
});
|
|
160
|
-
this.name =
|
|
161
|
-
this.code = options.code ?? error_codes_ERROR_CODES.UNKNOWN_ERROR;
|
|
162
|
-
this.statusCode = options.status ?? 500;
|
|
163
|
+
this.name = 'DoubleTieError';
|
|
163
164
|
this.category = options.category ?? ERROR_CATEGORIES.UNEXPECTED;
|
|
164
165
|
this.meta = options.meta ?? {};
|
|
165
|
-
this.
|
|
166
|
-
code: this.code,
|
|
167
|
-
category: this.category,
|
|
168
|
-
meta: this.meta
|
|
169
|
-
};
|
|
166
|
+
this.statusCode = options.status ?? 500;
|
|
170
167
|
tracing_withSpan('create_doubletie_error', async (span)=>{
|
|
171
168
|
span.setAttributes({
|
|
172
|
-
'error.name': this.name,
|
|
169
|
+
'error.name': this.constructor.name,
|
|
173
170
|
'error.message': message,
|
|
174
171
|
'error.code': this.code,
|
|
175
172
|
'error.status': this.statusCode,
|
|
@@ -189,11 +186,11 @@ class error_class_DoubleTieError extends __WEBPACK_EXTERNAL_MODULE_h3__.H3Error
|
|
|
189
186
|
const validationErrorMessage = this.meta?.validationErrors ? String(this.meta.validationErrors) : void 0;
|
|
190
187
|
const stackTrace = this.stack ? this.stack.split('\n').map((line)=>line.trim()).filter((line)=>line && !line.includes('Error: ')) : [];
|
|
191
188
|
return {
|
|
192
|
-
|
|
189
|
+
code: this.code,
|
|
193
190
|
message: validationErrorMessage || this.message,
|
|
194
|
-
|
|
191
|
+
status: this.statusCode,
|
|
192
|
+
defined: true,
|
|
195
193
|
data: {
|
|
196
|
-
code: this.code,
|
|
197
194
|
category: this.category,
|
|
198
195
|
meta: this.meta,
|
|
199
196
|
...'production' === process.env.NODE_ENV ? {} : {
|
|
@@ -244,7 +241,9 @@ class error_class_DoubleTieError extends __WEBPACK_EXTERNAL_MODULE_h3__.H3Error
|
|
|
244
241
|
const ErrorSubclass = class extends error_class_DoubleTieError {
|
|
245
242
|
constructor(message, options){
|
|
246
243
|
super(message, options);
|
|
247
|
-
this
|
|
244
|
+
Object.defineProperty(this, 'name', {
|
|
245
|
+
value: name
|
|
246
|
+
});
|
|
248
247
|
}
|
|
249
248
|
};
|
|
250
249
|
Object.defineProperty(ErrorSubclass, 'name', {
|
|
@@ -261,137 +260,6 @@ class error_class_DoubleTieError extends __WEBPACK_EXTERNAL_MODULE_h3__.H3Error
|
|
|
261
260
|
return formattedMessage;
|
|
262
261
|
}
|
|
263
262
|
}
|
|
264
|
-
const levels = [
|
|
265
|
-
'error',
|
|
266
|
-
'warn',
|
|
267
|
-
'info',
|
|
268
|
-
'success',
|
|
269
|
-
'debug'
|
|
270
|
-
];
|
|
271
|
-
function shouldPublishLog(currentLogLevel, logLevel) {
|
|
272
|
-
const currentLevelIndex = levels.indexOf(currentLogLevel);
|
|
273
|
-
const messageLevelIndex = levels.indexOf(logLevel);
|
|
274
|
-
if ('debug' === currentLogLevel) return 'debug' === logLevel;
|
|
275
|
-
return messageLevelIndex <= currentLevelIndex;
|
|
276
|
-
}
|
|
277
|
-
const colors = {
|
|
278
|
-
reset: '\x1b[0m',
|
|
279
|
-
bright: '\x1b[1m',
|
|
280
|
-
dim: '\x1b[2m',
|
|
281
|
-
underscore: '\x1b[4m',
|
|
282
|
-
blink: '\x1b[5m',
|
|
283
|
-
reverse: '\x1b[7m',
|
|
284
|
-
hidden: '\x1b[8m',
|
|
285
|
-
fg: {
|
|
286
|
-
black: '\x1b[30m',
|
|
287
|
-
red: '\x1b[31m',
|
|
288
|
-
green: '\x1b[32m',
|
|
289
|
-
yellow: '\x1b[33m',
|
|
290
|
-
blue: '\x1b[34m',
|
|
291
|
-
magenta: '\x1b[35m',
|
|
292
|
-
cyan: '\x1b[36m',
|
|
293
|
-
white: '\x1b[37m'
|
|
294
|
-
},
|
|
295
|
-
bg: {
|
|
296
|
-
black: '\x1b[40m',
|
|
297
|
-
red: '\x1b[41m',
|
|
298
|
-
green: '\x1b[42m',
|
|
299
|
-
yellow: '\x1b[43m',
|
|
300
|
-
blue: '\x1b[44m',
|
|
301
|
-
magenta: '\x1b[45m',
|
|
302
|
-
cyan: '\x1b[46m',
|
|
303
|
-
white: '\x1b[47m'
|
|
304
|
-
}
|
|
305
|
-
};
|
|
306
|
-
const levelColors = {
|
|
307
|
-
info: colors.fg.blue,
|
|
308
|
-
success: colors.fg.green,
|
|
309
|
-
warn: colors.fg.yellow,
|
|
310
|
-
error: colors.fg.red,
|
|
311
|
-
debug: colors.fg.magenta
|
|
312
|
-
};
|
|
313
|
-
const formatMessage = (level, message, appName = 'c15t')=>{
|
|
314
|
-
const timestamp = new Date().toISOString();
|
|
315
|
-
return `${colors.dim}${timestamp}${colors.reset} ${levelColors[level]}${level.toUpperCase()}${colors.reset} ${colors.bright}[${appName}]:${colors.reset} ${message}`;
|
|
316
|
-
};
|
|
317
|
-
const LOGGER_TRACER_NAME = '@doubletie/logger';
|
|
318
|
-
const LOG_LEVEL_TO_SPAN_STATUS = {
|
|
319
|
-
error: __WEBPACK_EXTERNAL_MODULE__opentelemetry_api_87359e78__.SpanStatusCode.ERROR,
|
|
320
|
-
warn: __WEBPACK_EXTERNAL_MODULE__opentelemetry_api_87359e78__.SpanStatusCode.OK,
|
|
321
|
-
info: __WEBPACK_EXTERNAL_MODULE__opentelemetry_api_87359e78__.SpanStatusCode.OK,
|
|
322
|
-
success: __WEBPACK_EXTERNAL_MODULE__opentelemetry_api_87359e78__.SpanStatusCode.OK,
|
|
323
|
-
debug: __WEBPACK_EXTERNAL_MODULE__opentelemetry_api_87359e78__.SpanStatusCode.OK
|
|
324
|
-
};
|
|
325
|
-
const telemetry_getTracer = (options)=>{
|
|
326
|
-
if (options?.telemetry?.tracer) return options.telemetry.tracer;
|
|
327
|
-
return __WEBPACK_EXTERNAL_MODULE__opentelemetry_api_87359e78__.trace.getTracer(LOGGER_TRACER_NAME);
|
|
328
|
-
};
|
|
329
|
-
const createLogSpan = (level, message, args = [], options)=>{
|
|
330
|
-
if (options?.telemetry?.disabled) return null;
|
|
331
|
-
const tracer = telemetry_getTracer(options);
|
|
332
|
-
const span = tracer.startSpan('log_entry', {
|
|
333
|
-
attributes: {
|
|
334
|
-
'log.level': level,
|
|
335
|
-
'log.message': message,
|
|
336
|
-
'log.has_args': args.length > 0,
|
|
337
|
-
...options?.telemetry?.defaultAttributes || {}
|
|
338
|
-
}
|
|
339
|
-
});
|
|
340
|
-
if (args.length > 0 && 'object' == typeof args[0] && null !== args[0]) {
|
|
341
|
-
const data = args[0];
|
|
342
|
-
for (const [key, value] of Object.entries(data))if (null != value) span.setAttribute(`log.data.${key}`, String(value));
|
|
343
|
-
}
|
|
344
|
-
span.setStatus({
|
|
345
|
-
code: LOG_LEVEL_TO_SPAN_STATUS[level],
|
|
346
|
-
message: 'error' === level || 'warn' === level ? message : void 0
|
|
347
|
-
});
|
|
348
|
-
return span;
|
|
349
|
-
};
|
|
350
|
-
const withLogSpan = async (level, message, args, operation, options)=>{
|
|
351
|
-
const span = createLogSpan(level, message, args, options);
|
|
352
|
-
if (!span) return operation();
|
|
353
|
-
try {
|
|
354
|
-
const result = await operation();
|
|
355
|
-
return result;
|
|
356
|
-
} catch (error) {
|
|
357
|
-
span.setStatus({
|
|
358
|
-
code: __WEBPACK_EXTERNAL_MODULE__opentelemetry_api_87359e78__.SpanStatusCode.ERROR,
|
|
359
|
-
message: error instanceof Error ? error.message : String(error)
|
|
360
|
-
});
|
|
361
|
-
throw error;
|
|
362
|
-
} finally{
|
|
363
|
-
span.end();
|
|
364
|
-
}
|
|
365
|
-
};
|
|
366
|
-
const createLogger = (options)=>{
|
|
367
|
-
if (options && 'object' == typeof options && levels.every((level)=>'function' == typeof options[level])) return options;
|
|
368
|
-
const loggerOptions = options;
|
|
369
|
-
const enabled = loggerOptions?.disabled !== true;
|
|
370
|
-
const logLevel = loggerOptions?.level ?? 'error';
|
|
371
|
-
const appName = loggerOptions?.appName ?? 'c15t';
|
|
372
|
-
const logFunc = async (level, message, args = [])=>{
|
|
373
|
-
if (!enabled || !shouldPublishLog(logLevel, level)) return;
|
|
374
|
-
await withLogSpan(level, message, args, async ()=>{
|
|
375
|
-
const formattedMessage = formatMessage(level, message, appName);
|
|
376
|
-
if (!loggerOptions || 'function' != typeof loggerOptions.log) {
|
|
377
|
-
if ('error' === level) console.error(formattedMessage, ...args);
|
|
378
|
-
else if ('warn' === level) console.warn(formattedMessage, ...args);
|
|
379
|
-
else if ('info' === level) console.log(formattedMessage, ...args);
|
|
380
|
-
else if ('debug' === level) console.debug(formattedMessage, ...args);
|
|
381
|
-
else if ('success' === level) console.log(formattedMessage, ...args);
|
|
382
|
-
return;
|
|
383
|
-
}
|
|
384
|
-
loggerOptions.log('success' === level ? 'info' : level, message, ...args);
|
|
385
|
-
});
|
|
386
|
-
};
|
|
387
|
-
return Object.fromEntries(levels.map((level)=>[
|
|
388
|
-
level,
|
|
389
|
-
(...[message, ...args])=>logFunc(level, message, args).catch((error)=>{
|
|
390
|
-
console.error('Logger error:', error);
|
|
391
|
-
})
|
|
392
|
-
]));
|
|
393
|
-
};
|
|
394
|
-
createLogger();
|
|
395
263
|
const schema_auditLogSchema = __WEBPACK_EXTERNAL_MODULE_zod__.z.object({
|
|
396
264
|
id: __WEBPACK_EXTERNAL_MODULE_zod__.z.string(),
|
|
397
265
|
entityType: __WEBPACK_EXTERNAL_MODULE_zod__.z.string(),
|