appos 0.3.5-0 → 0.3.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/dist/bin/main.mjs +2 -2
- package/dist/exports/api/adapter-C2mMJKvG.mjs +1504 -0
- package/dist/exports/api/{auth-schema.mjs → auth-schema-CON4yFFY.mjs} +2 -3
- package/dist/exports/api/bun-sqlite-dialect-CPpPZa23.mjs +155 -0
- package/dist/exports/{cli/_virtual/rolldown_runtime.mjs → api/chunk-CyXqrcp_.mjs} +14 -1
- package/dist/exports/api/conditions-DjBAWfiK.mjs +116 -0
- package/dist/exports/api/dialect-CUUD24Ge.mjs +72 -0
- package/dist/exports/api/env-CwT3zhez.mjs +1 -0
- package/dist/exports/api/esm-_hkVMulx.mjs +15816 -0
- package/dist/exports/api/event-BHFSE6hY.mjs +20983 -0
- package/dist/exports/api/extract-blob-metadata-BMgUEPcW.mjs +4 -0
- package/dist/exports/api/extract-blob-metadata-_9RUEwoU.mjs +9818 -0
- package/dist/exports/api/generate-image-variant-DOIzj1wJ.mjs +4 -0
- package/dist/exports/api/generate-image-variant-DxOPoGAk.mjs +118 -0
- package/dist/exports/api/generate-preview-CvTFuq58.mjs +160 -0
- package/dist/exports/api/generate-preview-Dk3coswZ.mjs +4 -0
- package/dist/exports/api/index.d.mts +7347 -20
- package/dist/exports/api/index.mjs +146856 -18
- package/dist/exports/api/kysely-adapter-CmP2TbkS.mjs +296 -0
- package/dist/exports/api/memory-adapter-BzhRhLFK.mjs +212 -0
- package/dist/exports/api/node-sqlite-dialect-Bl5suBxl.mjs +155 -0
- package/dist/exports/api/orm-CMqufD21.mjs +153690 -0
- package/dist/exports/api/orm-DXqYuKvB.d.mts +11 -0
- package/dist/exports/api/orm.d.mts +2 -11
- package/dist/exports/api/orm.mjs +4 -42
- package/dist/exports/api/pdf-YxB2Hm1p.mjs +25822 -0
- package/dist/exports/api/purge-attachment-Cf6KH2Jv.mjs +34 -0
- package/dist/exports/api/purge-attachment-DIuil7ps.mjs +4 -0
- package/dist/exports/{cli/api/workflows/purge-audit-logs.mjs → api/purge-audit-logs-z6j_Pu47.mjs} +3 -3
- package/dist/exports/{cli/api/workflows/purge-unattached-blobs.mjs → api/purge-unattached-blobs-B0TfY5Hk.mjs} +1 -1
- package/dist/exports/api/react-BYhV5bYt.mjs +1131 -0
- package/dist/exports/api/server.node-DyVrQ6cz.mjs +19298 -0
- package/dist/exports/api/table-6bTIEqON.mjs +2636 -0
- package/dist/exports/api/{workflows/track-db-changes.mjs → track-db-changes-BysaV6nN.mjs} +14 -14
- package/dist/exports/api/{workflow.mjs → workflow-BuSWHcX-.mjs} +121 -10
- package/dist/exports/api/workflows/auth-schema-BFve3hgZ.mjs +2813 -0
- package/dist/exports/api/{_virtual/rolldown_runtime.mjs → workflows/chunk-B36mNPO4.mjs} +5 -1
- package/dist/exports/api/workflows/extract-blob-metadata-BcWKvY2K.mjs +9818 -0
- package/dist/exports/api/workflows/{generate-image-variant.mjs → generate-image-variant-BAFvL_zV.mjs} +20 -20
- package/dist/exports/{cli/api/workflows/generate-preview.mjs → api/workflows/generate-preview-BjlIVYYp.mjs} +6 -6
- package/dist/exports/api/workflows/index.d.mts +2011 -1
- package/dist/exports/api/workflows/index.mjs +2 -1
- package/dist/exports/api/workflows/pdf-DUB8zyIc.mjs +25822 -0
- package/dist/exports/{cli/api/workflows/purge-attachment.mjs → api/workflows/purge-attachment-k_sdxTPY.mjs} +3 -3
- package/dist/exports/api/workflows/{purge-audit-logs.mjs → purge-audit-logs-zCyWj4Mw.mjs} +12 -3
- package/dist/exports/api/workflows/{purge-unattached-blobs.mjs → purge-unattached-blobs-CdsuFAeW.mjs} +1 -1
- package/dist/exports/api/workflows/track-db-changes-CiKaI9gT.mjs +20943 -0
- package/dist/exports/api/workflows/track-db-changes-DEWQYryO.mjs +4 -0
- package/dist/exports/{cli/api/workflow.mjs → api/workflows/workflow-BjM2xCa6.mjs} +23 -3
- package/dist/exports/api/workflows/zod-Br0enFWK.mjs +12333 -0
- package/dist/exports/api/zod-CdrJdBtV.mjs +12571 -0
- package/dist/exports/cli/auth-schema-CNuOqPi-.mjs +2813 -0
- package/dist/exports/{api/workflows/_virtual/rolldown_runtime.mjs → cli/chunk-B36mNPO4.mjs} +5 -1
- package/dist/exports/cli/extract-blob-metadata-CV1Ke90d.mjs +9818 -0
- package/dist/exports/cli/{api/workflows/generate-image-variant.mjs → generate-image-variant-CM1BrVvZ.mjs} +20 -20
- package/dist/exports/{api/workflows/generate-preview.mjs → cli/generate-preview-DdHQ3ukz.mjs} +6 -6
- package/dist/exports/cli/index.d.mts +2142 -2
- package/dist/exports/cli/index.mjs +41 -1
- package/dist/exports/cli/pdf-CLUPEIdT.mjs +25822 -0
- package/dist/exports/{api/workflows/purge-attachment.mjs → cli/purge-attachment-Dc_J74dG.mjs} +3 -3
- package/dist/exports/cli/purge-audit-logs-DFhWh-Bx.mjs +56 -0
- package/dist/exports/cli/purge-unattached-blobs-C1MRlM_2.mjs +46 -0
- package/dist/exports/cli/track-db-changes-CfneOF2_.mjs +20943 -0
- package/dist/exports/{api/workflows/api/workflow.mjs → cli/workflow-DSbbXBMt.mjs} +23 -3
- package/dist/exports/cli/zod-7q0_Mtnn.mjs +12333 -0
- package/dist/exports/devtools/BaseTanStackRouterDevtoolsPanel-BBz1qLry-DUwdvyLv.js +2090 -0
- package/dist/exports/devtools/EIDV623S-B7f6114d.js +2497 -0
- package/dist/exports/devtools/FloatingTanStackRouterDevtools-DymJEvfG-BHuQHiRR.js +237 -0
- package/dist/exports/devtools/MIMHJGAX-Cb3wf11F.js +10903 -0
- package/dist/exports/devtools/Q7LWSL4U-BoEO3rNq.js +37 -0
- package/dist/exports/devtools/VLTTJS3N-CIyRc84e.js +44 -0
- package/dist/exports/devtools/index.js +1724 -3
- package/dist/exports/devtools/utils-YRTCpRgb.js +1670 -0
- package/dist/exports/tests/api.d.mts +7354 -5
- package/dist/exports/tests/api.mjs +79 -1
- package/dist/exports/tests/auth-schema-DUCJw-_2.mjs +1 -0
- package/dist/exports/tests/chunk-Cii4FAhs.mjs +1 -0
- package/dist/exports/tests/conditions-B0ffVJ5E.mjs +1 -0
- package/dist/exports/tests/constants-DHjjg05J.mjs +1 -0
- package/dist/exports/tests/dist-D6vgKv3t.mjs +7 -0
- package/dist/exports/tests/dist-EfrRkq5c.mjs +296 -0
- package/dist/exports/tests/extract-blob-metadata-Dv343Vcn.mjs +169 -0
- package/dist/exports/tests/generate-image-variant-cQc8q0kh.mjs +1 -0
- package/dist/exports/tests/generate-preview-HaTMd2hS.mjs +1 -0
- package/dist/exports/tests/magic-string.es-D6VRmdiF.mjs +14 -0
- package/dist/exports/tests/mock-BvkO5nlm.mjs +1 -0
- package/dist/exports/tests/mock.mjs +1 -1
- package/dist/exports/tests/pdf-BDsS3vjF.mjs +13 -0
- package/dist/exports/tests/purge-attachment-D4uOzHRi.mjs +1 -0
- package/dist/exports/tests/purge-audit-logs-DiPcc09d.mjs +1 -0
- package/dist/exports/tests/purge-unattached-blobs-CqW6tlIC.mjs +1 -0
- package/dist/exports/tests/react.mjs +6 -1
- package/dist/exports/tests/setup.d.mts +1 -1
- package/dist/exports/tests/setup.mjs +34 -1
- package/dist/exports/tests/table-CbU04119.mjs +1 -0
- package/dist/exports/tests/track-db-changes-Bd4W-P1q.mjs +1 -0
- package/dist/exports/tests/vi.2VT5v0um-Cme1b0Dl.mjs +348 -0
- package/dist/exports/tests/{api/workflow.mjs → workflow-DwZxTqdH.mjs} +1 -1
- package/dist/exports/tests/zod-DcpxsMPz.mjs +23 -0
- package/dist/exports/vendors/date.js +13236 -1
- package/dist/exports/vendors/toolkit.js +2206 -1
- package/dist/exports/vendors/zod.js +12344 -1
- package/dist/exports/vite/api-DGRU_RdM.mjs +27 -0
- package/dist/exports/vite/build-CxJAu2Bn.mjs +1 -0
- package/dist/exports/vite/build2-BMK0OFVt.mjs +16 -0
- package/dist/exports/vite/chunk-CxnlK1Zi.mjs +1 -0
- package/dist/exports/vite/chunk-PtveFMYu.mjs +1 -0
- package/dist/exports/vite/dist-Bxp8DqWh.mjs +114 -0
- package/dist/exports/vite/dist-CX51FKbX.mjs +1 -0
- package/dist/exports/vite/dist-DcyNr-KR.mjs +1 -0
- package/dist/exports/vite/dist-j3-Khlzt.mjs +1 -0
- package/dist/exports/vite/experimental-index-3KsfmUbz.mjs +1 -0
- package/dist/exports/vite/false-BNJbUKYT.mjs +1 -0
- package/dist/exports/vite/false-BvrPEDU6.mjs +1 -0
- package/dist/exports/vite/index.d.mts +1 -1
- package/dist/exports/vite/index.mjs +26 -1
- package/dist/exports/vite/internal-C5cVwRiK.mjs +1 -0
- package/dist/exports/vite/jiti-BjSPrFvg.mjs +9 -0
- package/dist/exports/vite/lexer-DQCqS3nf-C6xCDOEQ.mjs +3 -0
- package/dist/exports/vite/lib-CMv7Sfwa.mjs +1 -0
- package/dist/exports/vite/lib-D9TnS-7w.mjs +1 -0
- package/dist/exports/vite/lib-DuBRr9dH.mjs +382 -0
- package/dist/exports/vite/node-DI8AnY_i.mjs +437 -0
- package/dist/exports/vite/postcss-BtmDpj-c.mjs +32 -0
- package/dist/exports/vite/postcss-import-Bk_ZCd6c.mjs +5 -0
- package/dist/exports/vite/rolldown-build-CNW2eye_-CJNfyXdF.mjs +13 -0
- package/dist/exports/vitest/api-CPv6lnxG.mjs +27 -0
- package/dist/exports/vitest/build2-28i3OiJ3.mjs +16 -0
- package/dist/exports/vitest/chunk-_e2jlDPK.mjs +1 -0
- package/dist/exports/vitest/chunk-jwDkFoXW.mjs +1 -0
- package/dist/exports/vitest/config.mjs +77 -1
- package/dist/exports/vitest/dist-L-OpshPJ.mjs +114 -0
- package/dist/exports/vitest/index.mjs +348 -1
- package/dist/exports/vitest/jiti-eNGOyHIo.mjs +9 -0
- package/dist/exports/vitest/lexer-DQCqS3nf-TWLyIqlY.mjs +3 -0
- package/dist/exports/vitest/lib-C3G64csm.mjs +1 -0
- package/dist/exports/vitest/magic-string.es-CxM5Ubyl.mjs +14 -0
- package/dist/exports/vitest/module-runner-DsF4L04D.mjs +1 -0
- package/dist/exports/vitest/postcss-BxLp_Too.mjs +32 -0
- package/dist/exports/vitest/postcss-import-5pKj3f5q.mjs +5 -0
- package/dist/exports/web/browser-ponyfill-DxTJMXNq.js +443 -0
- package/dist/exports/web/chunk-DksrlJLg.js +49 -0
- package/dist/exports/web/index.d.ts +2546 -2
- package/dist/exports/web/index.js +9295 -6
- package/dist/exports/web/plugin-DqTFWG7p.js +250 -0
- package/package.json +1 -1
- package/dist/exports/api/app-context.d.mts +0 -115
- package/dist/exports/api/app-context.mjs +0 -24
- package/dist/exports/api/auth-schema.d.mts +0 -4248
- package/dist/exports/api/auth.d.mts +0 -402
- package/dist/exports/api/auth.mjs +0 -188
- package/dist/exports/api/cache.d.mts +0 -44
- package/dist/exports/api/cache.mjs +0 -28
- package/dist/exports/api/config.d.mts +0 -28
- package/dist/exports/api/config.mjs +0 -72
- package/dist/exports/api/constants.mjs +0 -92
- package/dist/exports/api/container.d.mts +0 -210
- package/dist/exports/api/container.mjs +0 -49
- package/dist/exports/api/database.d.mts +0 -101
- package/dist/exports/api/database.mjs +0 -219
- package/dist/exports/api/event.d.mts +0 -235
- package/dist/exports/api/event.mjs +0 -236
- package/dist/exports/api/i18n.d.mts +0 -34
- package/dist/exports/api/i18n.mjs +0 -45
- package/dist/exports/api/instrumentation.d.mts +0 -7
- package/dist/exports/api/instrumentation.mjs +0 -40
- package/dist/exports/api/logger.d.mts +0 -21
- package/dist/exports/api/logger.mjs +0 -26
- package/dist/exports/api/mailer.d.mts +0 -70
- package/dist/exports/api/mailer.mjs +0 -37
- package/dist/exports/api/middleware/request-logger.d.mts +0 -24
- package/dist/exports/api/middleware.d.mts +0 -39
- package/dist/exports/api/middleware.mjs +0 -73
- package/dist/exports/api/openapi.d.mts +0 -271
- package/dist/exports/api/openapi.mjs +0 -507
- package/dist/exports/api/otel.d.mts +0 -40
- package/dist/exports/api/otel.mjs +0 -56
- package/dist/exports/api/redis.d.mts +0 -34
- package/dist/exports/api/redis.mjs +0 -41
- package/dist/exports/api/storage-schema.d.mts +0 -707
- package/dist/exports/api/storage-schema.mjs +0 -72
- package/dist/exports/api/storage.d.mts +0 -506
- package/dist/exports/api/storage.mjs +0 -833
- package/dist/exports/api/web/auth.mjs +0 -17
- package/dist/exports/api/workflow.d.mts +0 -250
- package/dist/exports/api/workflows/api/auth-schema.mjs +0 -373
- package/dist/exports/api/workflows/api/auth.d.mts +0 -379
- package/dist/exports/api/workflows/api/cache.d.mts +0 -44
- package/dist/exports/api/workflows/api/config.d.mts +0 -18
- package/dist/exports/api/workflows/api/container.d.mts +0 -167
- package/dist/exports/api/workflows/api/database.d.mts +0 -47
- package/dist/exports/api/workflows/api/event.d.mts +0 -68
- package/dist/exports/api/workflows/api/event.mjs +0 -126
- package/dist/exports/api/workflows/api/logger.d.mts +0 -21
- package/dist/exports/api/workflows/api/mailer.d.mts +0 -70
- package/dist/exports/api/workflows/api/orm.d.mts +0 -13
- package/dist/exports/api/workflows/api/redis.mjs +0 -3
- package/dist/exports/api/workflows/api/storage-schema.d.mts +0 -699
- package/dist/exports/api/workflows/api/storage.d.mts +0 -396
- package/dist/exports/api/workflows/api/workflow.d.mts +0 -24
- package/dist/exports/api/workflows/constants.mjs +0 -23
- package/dist/exports/api/workflows/extract-blob-metadata.mjs +0 -132
- package/dist/exports/api/workflows/generate-image-variant.d.mts +0 -63
- package/dist/exports/api/workflows/track-db-changes.d.mts +0 -72
- package/dist/exports/cli/api/auth-schema.mjs +0 -373
- package/dist/exports/cli/api/auth.d.mts +0 -379
- package/dist/exports/cli/api/cache.d.mts +0 -44
- package/dist/exports/cli/api/config.d.mts +0 -18
- package/dist/exports/cli/api/container.d.mts +0 -167
- package/dist/exports/cli/api/database.d.mts +0 -47
- package/dist/exports/cli/api/event.d.mts +0 -68
- package/dist/exports/cli/api/event.mjs +0 -126
- package/dist/exports/cli/api/logger.d.mts +0 -21
- package/dist/exports/cli/api/mailer.d.mts +0 -70
- package/dist/exports/cli/api/orm.d.mts +0 -13
- package/dist/exports/cli/api/redis.mjs +0 -3
- package/dist/exports/cli/api/storage-schema.d.mts +0 -699
- package/dist/exports/cli/api/storage.d.mts +0 -396
- package/dist/exports/cli/api/workflow.d.mts +0 -2
- package/dist/exports/cli/api/workflows/extract-blob-metadata.mjs +0 -132
- package/dist/exports/cli/api/workflows/generate-image-variant.d.mts +0 -63
- package/dist/exports/cli/api/workflows/track-db-changes.mjs +0 -110
- package/dist/exports/cli/command.d.mts +0 -56
- package/dist/exports/cli/command.mjs +0 -43
- package/dist/exports/cli/constants.mjs +0 -23
- package/dist/exports/cli/context.d.mts +0 -170
- package/dist/exports/tests/_virtual/rolldown_runtime.mjs +0 -1
- package/dist/exports/tests/api/app-context.d.mts +0 -115
- package/dist/exports/tests/api/app-context.mjs +0 -1
- package/dist/exports/tests/api/auth-schema.d.mts +0 -4248
- package/dist/exports/tests/api/auth-schema.mjs +0 -1
- package/dist/exports/tests/api/auth.d.mts +0 -402
- package/dist/exports/tests/api/cache.d.mts +0 -44
- package/dist/exports/tests/api/config.d.mts +0 -28
- package/dist/exports/tests/api/container.d.mts +0 -210
- package/dist/exports/tests/api/database.d.mts +0 -101
- package/dist/exports/tests/api/database.mjs +0 -1
- package/dist/exports/tests/api/event.d.mts +0 -235
- package/dist/exports/tests/api/event.mjs +0 -1
- package/dist/exports/tests/api/i18n.d.mts +0 -34
- package/dist/exports/tests/api/index.d.mts +0 -26
- package/dist/exports/tests/api/logger.d.mts +0 -21
- package/dist/exports/tests/api/mailer.d.mts +0 -70
- package/dist/exports/tests/api/middleware/error-handler.mjs +0 -1
- package/dist/exports/tests/api/middleware/health.mjs +0 -1
- package/dist/exports/tests/api/middleware/i18n.mjs +0 -1
- package/dist/exports/tests/api/middleware/request-logger.d.mts +0 -24
- package/dist/exports/tests/api/middleware/request-logger.mjs +0 -1
- package/dist/exports/tests/api/middleware/shutdown.mjs +0 -1
- package/dist/exports/tests/api/middleware/timeout.mjs +0 -1
- package/dist/exports/tests/api/middleware.d.mts +0 -39
- package/dist/exports/tests/api/middleware.mjs +0 -1
- package/dist/exports/tests/api/openapi.d.mts +0 -271
- package/dist/exports/tests/api/openapi.mjs +0 -1
- package/dist/exports/tests/api/orm.d.mts +0 -13
- package/dist/exports/tests/api/otel.d.mts +0 -40
- package/dist/exports/tests/api/redis.d.mts +0 -34
- package/dist/exports/tests/api/redis.mjs +0 -1
- package/dist/exports/tests/api/server.mjs +0 -1
- package/dist/exports/tests/api/storage-schema.d.mts +0 -707
- package/dist/exports/tests/api/storage.d.mts +0 -506
- package/dist/exports/tests/api/workflow.d.mts +0 -250
- package/dist/exports/tests/api/workflows/extract-blob-metadata.mjs +0 -1
- package/dist/exports/tests/api/workflows/generate-image-variant.d.mts +0 -63
- package/dist/exports/tests/api/workflows/generate-image-variant.mjs +0 -1
- package/dist/exports/tests/api/workflows/generate-preview.mjs +0 -1
- package/dist/exports/tests/api/workflows/purge-attachment.mjs +0 -1
- package/dist/exports/tests/api/workflows/purge-audit-logs.mjs +0 -1
- package/dist/exports/tests/api/workflows/purge-unattached-blobs.mjs +0 -1
- package/dist/exports/tests/api/workflows/track-db-changes.mjs +0 -1
- package/dist/exports/tests/constants.mjs +0 -1
- package/dist/exports/tests/instrumentation.d.mts +0 -7
- package/dist/exports/tests/instrumentation.mjs +0 -1
- package/dist/exports/web/api/auth.d.ts +0 -125
- package/dist/exports/web/api/database.d.ts +0 -4
- package/dist/exports/web/api/logger.d.ts +0 -1
- package/dist/exports/web/auth.d.ts +0 -2388
- package/dist/exports/web/auth.js +0 -75
- package/dist/exports/web/i18n.d.ts +0 -42
- package/dist/exports/web/i18n.js +0 -45
- /package/dist/exports/tests/{api/middleware/youch-handler.mjs → youch-handler-Ch5yf6im.mjs} +0 -0
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
import { WorkflowHandle } from "./api/workflow.mjs";
|
|
2
|
-
import { Container } from "./api/container.mjs";
|
|
3
|
-
import { z } from "zod";
|
|
4
|
-
import * as _dbos_inc_dbos_sdk0 from "@dbos-inc/dbos-sdk";
|
|
5
|
-
|
|
6
|
-
//#region src/api/workflows/track-db-changes.d.ts
|
|
7
|
-
/**
|
|
8
|
-
* Input schema for trackDbChanges workflow.
|
|
9
|
-
* Accepts dbChanges() output directly from .returning() clause.
|
|
10
|
-
*/
|
|
11
|
-
declare const trackDbChangesInputSchema: z.ZodObject<{
|
|
12
|
-
changes: z.ZodArray<z.ZodObject<{
|
|
13
|
-
_table: z.ZodString;
|
|
14
|
-
old: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
15
|
-
new: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
16
|
-
}, z.core.$strip>>;
|
|
17
|
-
dbName: z.ZodString;
|
|
18
|
-
organizationId: z.ZodNullable<z.ZodString>;
|
|
19
|
-
requestId: z.ZodString;
|
|
20
|
-
sessionId: z.ZodNullable<z.ZodString>;
|
|
21
|
-
userId: z.ZodNullable<z.ZodString>;
|
|
22
|
-
}, z.core.$strip>;
|
|
23
|
-
type TrackDbChangesInput = z.infer<typeof trackDbChangesInputSchema>;
|
|
24
|
-
/**
|
|
25
|
-
* Built-in workflow for processing database changes.
|
|
26
|
-
* Handles audit logging and pub/sub notifications with type-safe table filtering.
|
|
27
|
-
*
|
|
28
|
-
* Algorithm:
|
|
29
|
-
* 1. For each change in input, infer the action (INSERT/UPDATE/DELETE)
|
|
30
|
-
* 2. If table is not excluded from audit logging:
|
|
31
|
-
* - Insert into audit_logs table with full context
|
|
32
|
-
* 3. Emit to dbChangesEvent (publishes via Redis if subscribed handlers exist)
|
|
33
|
-
*
|
|
34
|
-
* Filtering is configured via:
|
|
35
|
-
* - `container.auth.shouldAudit()` - Check if table should be audited
|
|
36
|
-
*
|
|
37
|
-
* @returns Object with counts: processed (total changes), audited (logged to audit_logs), published (emitted to event)
|
|
38
|
-
*/
|
|
39
|
-
declare const trackDbChanges: {
|
|
40
|
-
inputSchema: z.ZodObject<{
|
|
41
|
-
changes: z.ZodArray<z.ZodObject<{
|
|
42
|
-
_table: z.ZodString;
|
|
43
|
-
old: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
44
|
-
new: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
45
|
-
}, z.core.$strip>>;
|
|
46
|
-
dbName: z.ZodString;
|
|
47
|
-
organizationId: z.ZodNullable<z.ZodString>;
|
|
48
|
-
requestId: z.ZodString;
|
|
49
|
-
sessionId: z.ZodNullable<z.ZodString>;
|
|
50
|
-
userId: z.ZodNullable<z.ZodString>;
|
|
51
|
-
}, z.core.$strip>;
|
|
52
|
-
readonly name: string | null;
|
|
53
|
-
register(c: Container, name: string, dbos: typeof _dbos_inc_dbos_sdk0.DBOS): void;
|
|
54
|
-
start(input: {
|
|
55
|
-
changes: {
|
|
56
|
-
_table: string;
|
|
57
|
-
old: Record<string, unknown> | null;
|
|
58
|
-
new: Record<string, unknown> | null;
|
|
59
|
-
}[];
|
|
60
|
-
dbName: string;
|
|
61
|
-
organizationId: string | null;
|
|
62
|
-
requestId: string;
|
|
63
|
-
sessionId: string | null;
|
|
64
|
-
userId: string | null;
|
|
65
|
-
}): Promise<WorkflowHandle<{
|
|
66
|
-
processed: number;
|
|
67
|
-
audited: number;
|
|
68
|
-
published: number;
|
|
69
|
-
}>>;
|
|
70
|
-
};
|
|
71
|
-
//#endregion
|
|
72
|
-
export { TrackDbChangesInput, trackDbChanges };
|
|
@@ -1,373 +0,0 @@
|
|
|
1
|
-
import { sql } from "drizzle-orm";
|
|
2
|
-
import { pgTable } from "drizzle-orm/pg-core";
|
|
3
|
-
|
|
4
|
-
//#region src/api/auth-schema.ts
|
|
5
|
-
/**
|
|
6
|
-
* Defines the authentication schema for the application.
|
|
7
|
-
*
|
|
8
|
-
* @returns An object containing the schema and relations for the authentication tables.
|
|
9
|
-
*/
|
|
10
|
-
function defineAuthSchema() {
|
|
11
|
-
const accounts = pgTable("accounts", (t) => ({
|
|
12
|
-
id: t.text("id").primaryKey().default(sql`uuidv7()`),
|
|
13
|
-
accessToken: t.text("access_token"),
|
|
14
|
-
accessTokenExpiresAt: t.timestamp("access_token_expires_at", {
|
|
15
|
-
mode: "string",
|
|
16
|
-
withTimezone: true
|
|
17
|
-
}),
|
|
18
|
-
accountId: t.text("account_id").notNull(),
|
|
19
|
-
createdAt: t.timestamp("created_at", {
|
|
20
|
-
mode: "string",
|
|
21
|
-
withTimezone: true
|
|
22
|
-
}).default(sql`NOW()`).notNull(),
|
|
23
|
-
idToken: t.text("id_token"),
|
|
24
|
-
providerId: t.text("provider_id").notNull(),
|
|
25
|
-
password: t.text("password"),
|
|
26
|
-
userId: t.text("user_id").notNull().references(() => users.id, { onDelete: "cascade" }),
|
|
27
|
-
refreshToken: t.text("refresh_token"),
|
|
28
|
-
refreshTokenExpiresAt: t.timestamp("refresh_token_expires_at", {
|
|
29
|
-
mode: "string",
|
|
30
|
-
withTimezone: true
|
|
31
|
-
}),
|
|
32
|
-
scope: t.text("scope"),
|
|
33
|
-
updatedAt: t.timestamp("updated_at", {
|
|
34
|
-
mode: "string",
|
|
35
|
-
withTimezone: true
|
|
36
|
-
}).default(sql`NOW()`).notNull()
|
|
37
|
-
}), (t) => []);
|
|
38
|
-
const apiKeys = pgTable("api_keys", (t) => ({
|
|
39
|
-
id: t.text("id").primaryKey().default(sql`uuidv7()`),
|
|
40
|
-
name: t.text("name"),
|
|
41
|
-
enabled: t.boolean("enabled").default(true),
|
|
42
|
-
expiresAt: t.timestamp("expires_at", {
|
|
43
|
-
mode: "string",
|
|
44
|
-
withTimezone: true
|
|
45
|
-
}),
|
|
46
|
-
key: t.text("key").notNull(),
|
|
47
|
-
lastRefillAt: t.timestamp("last_refill_at", {
|
|
48
|
-
mode: "string",
|
|
49
|
-
withTimezone: true
|
|
50
|
-
}),
|
|
51
|
-
lastRequest: t.timestamp("last_request", {
|
|
52
|
-
mode: "string",
|
|
53
|
-
withTimezone: true
|
|
54
|
-
}),
|
|
55
|
-
lastUsedAt: t.timestamp("last_used_at", {
|
|
56
|
-
mode: "string",
|
|
57
|
-
withTimezone: true
|
|
58
|
-
}),
|
|
59
|
-
metadata: t.text("metadata"),
|
|
60
|
-
permissions: t.text("permissions"),
|
|
61
|
-
prefix: t.text("prefix"),
|
|
62
|
-
rateLimitEnabled: t.boolean("rate_limit_enabled").default(true),
|
|
63
|
-
rateLimitTimeWindow: t.integer("rate_limit_time_window").default(864e5),
|
|
64
|
-
rateLimitMax: t.integer("rate_limit_max").default(10),
|
|
65
|
-
refillInterval: t.integer("refill_interval"),
|
|
66
|
-
refillAmount: t.integer("refill_amount"),
|
|
67
|
-
requestCount: t.integer("request_count"),
|
|
68
|
-
remaining: t.integer("remaining"),
|
|
69
|
-
start: t.text("start"),
|
|
70
|
-
userId: t.text("user_id").notNull().references(() => users.id, { onDelete: "cascade" }),
|
|
71
|
-
createdAt: t.timestamp("created_at", {
|
|
72
|
-
mode: "string",
|
|
73
|
-
withTimezone: true
|
|
74
|
-
}).default(sql`NOW()`).notNull(),
|
|
75
|
-
updatedAt: t.timestamp("updated_at", {
|
|
76
|
-
mode: "string",
|
|
77
|
-
withTimezone: true
|
|
78
|
-
}).default(sql`NOW()`).notNull()
|
|
79
|
-
}), (t) => []);
|
|
80
|
-
const invitations = pgTable("invitations", (t) => ({
|
|
81
|
-
id: t.text("id").primaryKey().default(sql`uuidv7()`),
|
|
82
|
-
email: t.text("email").notNull(),
|
|
83
|
-
expiresAt: t.timestamp("expires_at", {
|
|
84
|
-
mode: "string",
|
|
85
|
-
withTimezone: true
|
|
86
|
-
}).notNull(),
|
|
87
|
-
inviterId: t.text("inviter_id").notNull().references(() => users.id, { onDelete: "cascade" }),
|
|
88
|
-
organizationId: t.text("organization_id").notNull().references(() => organizations.id, { onDelete: "cascade" }),
|
|
89
|
-
role: t.text("role"),
|
|
90
|
-
status: t.text("status").default("pending").notNull(),
|
|
91
|
-
teamId: t.text("team_id"),
|
|
92
|
-
createdAt: t.timestamp("created_at", {
|
|
93
|
-
mode: "string",
|
|
94
|
-
withTimezone: true
|
|
95
|
-
}).default(sql`NOW()`).notNull(),
|
|
96
|
-
updatedAt: t.timestamp("updated_at", {
|
|
97
|
-
mode: "string",
|
|
98
|
-
withTimezone: true
|
|
99
|
-
}).default(sql`NOW()`).notNull()
|
|
100
|
-
}), (t) => []);
|
|
101
|
-
const members = pgTable("members", (t) => ({
|
|
102
|
-
id: t.text("id").primaryKey().default(sql`uuidv7()`),
|
|
103
|
-
organizationId: t.text("organization_id").notNull().references(() => organizations.id, { onDelete: "cascade" }),
|
|
104
|
-
role: t.text("role").default("member").notNull(),
|
|
105
|
-
userId: t.text("user_id").notNull().references(() => users.id, { onDelete: "cascade" }),
|
|
106
|
-
createdAt: t.timestamp("created_at", {
|
|
107
|
-
mode: "string",
|
|
108
|
-
withTimezone: true
|
|
109
|
-
}).default(sql`NOW()`).notNull()
|
|
110
|
-
}), (t) => []);
|
|
111
|
-
const organizations = pgTable("organizations", (t) => ({
|
|
112
|
-
id: t.text("id").primaryKey().default(sql`uuidv7()`),
|
|
113
|
-
name: t.text("name").notNull(),
|
|
114
|
-
slug: t.text("slug").unique(),
|
|
115
|
-
logo: t.text("logo"),
|
|
116
|
-
createdAt: t.timestamp("created_at", {
|
|
117
|
-
mode: "string",
|
|
118
|
-
withTimezone: true
|
|
119
|
-
}).default(sql`NOW()`).notNull(),
|
|
120
|
-
updatedAt: t.timestamp("updated_at", {
|
|
121
|
-
mode: "string",
|
|
122
|
-
withTimezone: true
|
|
123
|
-
}).default(sql`NOW()`).notNull(),
|
|
124
|
-
metadata: t.text("metadata")
|
|
125
|
-
}), (t) => []);
|
|
126
|
-
const sessions = pgTable("sessions", (t) => ({
|
|
127
|
-
id: t.text("id").primaryKey().default(sql`uuidv7()`),
|
|
128
|
-
activeOrganizationId: t.text("active_organization_id").references(() => organizations.id, { onDelete: "set null" }),
|
|
129
|
-
activeTeamId: t.text("active_team_id"),
|
|
130
|
-
createdAt: t.timestamp("created_at", {
|
|
131
|
-
mode: "string",
|
|
132
|
-
withTimezone: true
|
|
133
|
-
}).default(sql`NOW()`).notNull(),
|
|
134
|
-
expiresAt: t.timestamp("expires_at", {
|
|
135
|
-
mode: "string",
|
|
136
|
-
withTimezone: true
|
|
137
|
-
}).notNull(),
|
|
138
|
-
impersonatedBy: t.text("impersonated_by").references(() => users.id, { onDelete: "set null" }),
|
|
139
|
-
ipAddress: t.text("ip_address"),
|
|
140
|
-
token: t.text("token").notNull().unique(),
|
|
141
|
-
updatedAt: t.timestamp("updated_at", {
|
|
142
|
-
mode: "string",
|
|
143
|
-
withTimezone: true
|
|
144
|
-
}).default(sql`NOW()`).notNull(),
|
|
145
|
-
userAgent: t.text("user_agent"),
|
|
146
|
-
userId: t.text("user_id").notNull().references(() => users.id, { onDelete: "cascade" })
|
|
147
|
-
}), (t) => []);
|
|
148
|
-
const ssoProviders = pgTable("sso_providers", (t) => ({
|
|
149
|
-
id: t.text("id").primaryKey().default(sql`uuidv7()`),
|
|
150
|
-
domain: t.text("domain").notNull(),
|
|
151
|
-
issuer: t.text("issuer").notNull(),
|
|
152
|
-
oidcConfig: t.text("oidc_config"),
|
|
153
|
-
organizationId: t.text("organization_id").references(() => organizations.id, { onDelete: "cascade" }),
|
|
154
|
-
providerId: t.text("provider_id").notNull().unique(),
|
|
155
|
-
samlConfig: t.text("saml_config"),
|
|
156
|
-
userId: t.text("user_id").references(() => users.id, { onDelete: "cascade" })
|
|
157
|
-
}), (t) => []);
|
|
158
|
-
const users = pgTable("users", (t) => ({
|
|
159
|
-
id: t.text("id").primaryKey().default(sql`uuidv7()`),
|
|
160
|
-
banExpires: t.timestamp("ban_expires", {
|
|
161
|
-
mode: "string",
|
|
162
|
-
withTimezone: true
|
|
163
|
-
}),
|
|
164
|
-
banReason: t.text("ban_reason"),
|
|
165
|
-
banned: t.boolean("banned").default(false),
|
|
166
|
-
createdAt: t.timestamp("created_at", {
|
|
167
|
-
mode: "string",
|
|
168
|
-
withTimezone: true
|
|
169
|
-
}).default(sql`NOW()`).notNull(),
|
|
170
|
-
displayUsername: t.text("display_username"),
|
|
171
|
-
email: t.text("email").notNull().unique(),
|
|
172
|
-
emailVerified: t.boolean("email_verified").default(false).notNull(),
|
|
173
|
-
image: t.text("image"),
|
|
174
|
-
isAnonymous: t.boolean("is_anonymous"),
|
|
175
|
-
lastLoginMethod: t.text("last_login_method"),
|
|
176
|
-
name: t.text("name").notNull(),
|
|
177
|
-
phoneNumber: t.text("phone_number").unique(),
|
|
178
|
-
phoneNumberVerified: t.boolean("phone_number_verified"),
|
|
179
|
-
role: t.text("role"),
|
|
180
|
-
twoFactorEnabled: t.boolean("two_factor_enabled").default(false),
|
|
181
|
-
updatedAt: t.timestamp("updated_at", {
|
|
182
|
-
mode: "string",
|
|
183
|
-
withTimezone: true
|
|
184
|
-
}).default(sql`NOW()`).notNull(),
|
|
185
|
-
username: t.text("username").unique()
|
|
186
|
-
}), (t) => []);
|
|
187
|
-
const teams = pgTable("teams", (t) => ({
|
|
188
|
-
id: t.text("id").primaryKey().default(sql`uuidv7()`),
|
|
189
|
-
name: t.text("name").notNull(),
|
|
190
|
-
organizationId: t.text("organization_id").notNull().references(() => organizations.id, { onDelete: "cascade" }),
|
|
191
|
-
createdAt: t.timestamp("created_at", {
|
|
192
|
-
mode: "string",
|
|
193
|
-
withTimezone: true
|
|
194
|
-
}).default(sql`NOW()`).notNull(),
|
|
195
|
-
updatedAt: t.timestamp("updated_at", {
|
|
196
|
-
mode: "string",
|
|
197
|
-
withTimezone: true
|
|
198
|
-
}).default(sql`NOW()`).notNull()
|
|
199
|
-
}), (t) => []);
|
|
200
|
-
const teamMembers = pgTable("team_members", (t) => ({
|
|
201
|
-
id: t.text("id").primaryKey().default(sql`uuidv7()`),
|
|
202
|
-
teamId: t.text("team_id").notNull().references(() => teams.id, { onDelete: "cascade" }),
|
|
203
|
-
userId: t.text("user_id").notNull().references(() => users.id, { onDelete: "cascade" }),
|
|
204
|
-
createdAt: t.timestamp("created_at", {
|
|
205
|
-
mode: "string",
|
|
206
|
-
withTimezone: true
|
|
207
|
-
}).default(sql`NOW()`).notNull()
|
|
208
|
-
}), (t) => []);
|
|
209
|
-
const twoFactors = pgTable("two_factors", (t) => ({
|
|
210
|
-
id: t.text("id").primaryKey().default(sql`uuidv7()`),
|
|
211
|
-
secret: t.text("secret").notNull(),
|
|
212
|
-
backupCodes: t.text("backup_codes").notNull(),
|
|
213
|
-
userId: t.text("user_id").notNull().references(() => users.id, { onDelete: "cascade" })
|
|
214
|
-
}), (t) => []);
|
|
215
|
-
const verifications = pgTable("verifications", (t) => ({
|
|
216
|
-
id: t.text("id").primaryKey().default(sql`uuidv7()`),
|
|
217
|
-
createdAt: t.timestamp("created_at", {
|
|
218
|
-
mode: "string",
|
|
219
|
-
withTimezone: true
|
|
220
|
-
}).default(sql`NOW()`).notNull(),
|
|
221
|
-
expiresAt: t.timestamp("expires_at", {
|
|
222
|
-
mode: "string",
|
|
223
|
-
withTimezone: true
|
|
224
|
-
}).notNull(),
|
|
225
|
-
identifier: t.text("identifier").notNull(),
|
|
226
|
-
updatedAt: t.timestamp("updated_at", {
|
|
227
|
-
mode: "string",
|
|
228
|
-
withTimezone: true
|
|
229
|
-
}).default(sql`NOW()`).notNull(),
|
|
230
|
-
value: t.text("value").notNull()
|
|
231
|
-
}), (t) => []);
|
|
232
|
-
return {
|
|
233
|
-
tables: {
|
|
234
|
-
accounts,
|
|
235
|
-
apiKeys,
|
|
236
|
-
auditLogs: pgTable("audit_logs", (t) => ({
|
|
237
|
-
id: t.text("id").primaryKey().default(sql`uuidv7()`),
|
|
238
|
-
tableName: t.text("table_name"),
|
|
239
|
-
action: t.text("action").notNull(),
|
|
240
|
-
customAction: t.text("custom_action"),
|
|
241
|
-
oldData: t.jsonb("old_data"),
|
|
242
|
-
newData: t.jsonb("new_data"),
|
|
243
|
-
metadata: t.jsonb("metadata"),
|
|
244
|
-
organizationId: t.text("organization_id").references(() => organizations.id, { onDelete: "set null" }),
|
|
245
|
-
userId: t.text("user_id").references(() => users.id, { onDelete: "set null" }),
|
|
246
|
-
sessionId: t.text("session_id").references(() => sessions.id, { onDelete: "set null" }),
|
|
247
|
-
requestId: t.text("request_id"),
|
|
248
|
-
createdAt: t.timestamp("created_at", {
|
|
249
|
-
mode: "string",
|
|
250
|
-
withTimezone: true
|
|
251
|
-
}).default(sql`NOW()`).notNull()
|
|
252
|
-
}), (t) => []),
|
|
253
|
-
invitations,
|
|
254
|
-
members,
|
|
255
|
-
organizations,
|
|
256
|
-
sessions,
|
|
257
|
-
ssoProviders,
|
|
258
|
-
teams,
|
|
259
|
-
teamMembers,
|
|
260
|
-
twoFactors,
|
|
261
|
-
users,
|
|
262
|
-
verifications
|
|
263
|
-
},
|
|
264
|
-
relations: (r) => ({
|
|
265
|
-
users: {
|
|
266
|
-
sessions: r.many.sessions({
|
|
267
|
-
from: r.users.id,
|
|
268
|
-
to: r.sessions.userId
|
|
269
|
-
}),
|
|
270
|
-
accounts: r.many.accounts({
|
|
271
|
-
from: r.users.id,
|
|
272
|
-
to: r.accounts.userId
|
|
273
|
-
}),
|
|
274
|
-
apiKeys: r.many.apiKeys({
|
|
275
|
-
from: r.users.id,
|
|
276
|
-
to: r.apiKeys.userId
|
|
277
|
-
}),
|
|
278
|
-
memberships: r.many.members({
|
|
279
|
-
from: r.users.id,
|
|
280
|
-
to: r.members.userId
|
|
281
|
-
}),
|
|
282
|
-
invitations: r.many.invitations({
|
|
283
|
-
from: r.users.id,
|
|
284
|
-
to: r.invitations.inviterId
|
|
285
|
-
}),
|
|
286
|
-
ssoProvider: r.one.ssoProviders({
|
|
287
|
-
from: r.users.id,
|
|
288
|
-
to: r.ssoProviders.userId
|
|
289
|
-
}),
|
|
290
|
-
twoFactor: r.one.twoFactors({
|
|
291
|
-
from: r.users.id,
|
|
292
|
-
to: r.twoFactors.userId
|
|
293
|
-
})
|
|
294
|
-
},
|
|
295
|
-
sessions: { user: r.one.users({
|
|
296
|
-
from: r.sessions.userId,
|
|
297
|
-
to: r.users.id
|
|
298
|
-
}) },
|
|
299
|
-
accounts: { user: r.one.users({
|
|
300
|
-
from: r.accounts.userId,
|
|
301
|
-
to: r.users.id
|
|
302
|
-
}) },
|
|
303
|
-
apiKeys: { user: r.one.users({
|
|
304
|
-
from: r.apiKeys.userId,
|
|
305
|
-
to: r.users.id
|
|
306
|
-
}) },
|
|
307
|
-
organizations: {
|
|
308
|
-
members: r.many.members({
|
|
309
|
-
from: r.organizations.id,
|
|
310
|
-
to: r.members.organizationId
|
|
311
|
-
}),
|
|
312
|
-
invitations: r.many.invitations({
|
|
313
|
-
from: r.organizations.id,
|
|
314
|
-
to: r.invitations.organizationId
|
|
315
|
-
}),
|
|
316
|
-
teams: r.many.teams({
|
|
317
|
-
from: r.organizations.id,
|
|
318
|
-
to: r.teams.organizationId
|
|
319
|
-
})
|
|
320
|
-
},
|
|
321
|
-
members: {
|
|
322
|
-
organization: r.one.organizations({
|
|
323
|
-
from: r.members.organizationId,
|
|
324
|
-
to: r.organizations.id
|
|
325
|
-
}),
|
|
326
|
-
user: r.one.users({
|
|
327
|
-
from: r.members.userId,
|
|
328
|
-
to: r.users.id
|
|
329
|
-
})
|
|
330
|
-
},
|
|
331
|
-
invitations: {
|
|
332
|
-
organization: r.one.organizations({
|
|
333
|
-
from: r.invitations.organizationId,
|
|
334
|
-
to: r.organizations.id
|
|
335
|
-
}),
|
|
336
|
-
inviter: r.one.users({
|
|
337
|
-
from: r.invitations.inviterId,
|
|
338
|
-
to: r.users.id
|
|
339
|
-
})
|
|
340
|
-
},
|
|
341
|
-
teams: { organization: r.one.organizations({
|
|
342
|
-
from: r.teams.organizationId,
|
|
343
|
-
to: r.organizations.id
|
|
344
|
-
}) },
|
|
345
|
-
ssoProviders: { user: r.one.users({
|
|
346
|
-
from: r.ssoProviders.userId,
|
|
347
|
-
to: r.users.id
|
|
348
|
-
}) },
|
|
349
|
-
verifications: {},
|
|
350
|
-
twoFactors: { user: r.one.users({
|
|
351
|
-
from: r.twoFactors.userId,
|
|
352
|
-
to: r.users.id
|
|
353
|
-
}) },
|
|
354
|
-
auditLogs: {
|
|
355
|
-
organization: r.one.organizations({
|
|
356
|
-
from: r.auditLogs.organizationId,
|
|
357
|
-
to: r.organizations.id
|
|
358
|
-
}),
|
|
359
|
-
user: r.one.users({
|
|
360
|
-
from: r.auditLogs.userId,
|
|
361
|
-
to: r.users.id
|
|
362
|
-
}),
|
|
363
|
-
session: r.one.sessions({
|
|
364
|
-
from: r.auditLogs.sessionId,
|
|
365
|
-
to: r.sessions.id
|
|
366
|
-
})
|
|
367
|
-
}
|
|
368
|
-
})
|
|
369
|
-
};
|
|
370
|
-
}
|
|
371
|
-
|
|
372
|
-
//#endregion
|
|
373
|
-
export { defineAuthSchema };
|