@treeseed/sdk 0.8.8 → 0.8.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/dist/control-plane-client.d.ts +1 -1
  2. package/dist/d1-store.d.ts +5 -5
  3. package/dist/d1-store.js +24 -24
  4. package/dist/db/d1.d.ts +102 -0
  5. package/dist/db/node-sqlite.d.ts +102 -0
  6. package/dist/db/schema.d.ts +204 -0
  7. package/dist/db/schema.js +9 -0
  8. package/dist/index.d.ts +4 -4
  9. package/dist/index.js +22 -22
  10. package/dist/operations/services/d1-migration.js +10 -2
  11. package/dist/operations/services/github-automation.js +1 -1
  12. package/dist/operations/services/hosting-audit.d.ts +2 -1
  13. package/dist/operations/services/hosting-audit.js +18 -15
  14. package/dist/operations/services/hub-provider-launch.d.ts +3 -3
  15. package/dist/operations/services/hub-provider-launch.js +16 -16
  16. package/dist/operations/services/{knowledge-coop-packaging.d.ts → market-packaging.d.ts} +13 -13
  17. package/dist/operations/services/{knowledge-coop-packaging.js → market-packaging.js} +10 -10
  18. package/dist/operations/services/project-platform.d.ts +32 -0
  19. package/dist/operations/services/project-platform.js +91 -1
  20. package/dist/platform/books-data.js +2 -2
  21. package/dist/platform/contracts.d.ts +53 -31
  22. package/dist/platform/utils/site-config-schema.js +120 -52
  23. package/dist/{knowledge-coop.d.ts → project-workflow.d.ts} +15 -15
  24. package/dist/{knowledge-coop.js → project-workflow.js} +15 -15
  25. package/dist/scripts/tenant-d1-migrate-local.js +1 -0
  26. package/dist/sdk.d.ts +1 -1
  27. package/dist/stores/{knowledge-coop-store.d.ts → project-workflow-store.d.ts} +3 -3
  28. package/dist/stores/{knowledge-coop-store.js → project-workflow-store.js} +4 -4
  29. package/dist/workflow/operations.js +6 -6
  30. package/dist/workflow-state.js +2 -2
  31. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
1
  import type { AgentPool, AgentPoolRegistration, AgentPoolScaleDecision, ApprovalRequest, CapacityGrant, CapacityPlan, CapacityProvider, CapacityProviderLane, CapacityReservation, CapacityRoutingDecision, CatalogArtifactVersion, CatalogItem, CatalogItemFilters, CreateApprovalRequestRequest, CreateCapacityReservationRequest, CreateCapacityRoutingDecisionRequest, CreateProjectDeploymentRequest, CreateTaskEstimateRequest, CreateTaskUsageActualRequest, PriorityOverride, PrioritySnapshot, ProjectConnection, ProjectDeployment, ProjectEnvironment, ProjectEnvironmentName, ProjectHosting, ProjectInfrastructureResource, ProjectWorkdaySummary, RecordAgentPoolRegistrationRequest, RecordCapacityUsageRequest, RepositoryClaim, RunnerScaleDecision, ScaleDecision, SdkCreateWorkdayRequest, SdkRecordRepositoryClaimRequest, SdkRecordRunnerScaleDecisionRequest, SdkRecordWorkerRunnerRequest, TeamStorageLocator, TeamWebHost, TaskEstimate, UpsertAgentPoolRequest, UpsertCapacityGrantRequest, UpsertCapacityProviderLaneRequest, UpsertCapacityProviderRequest, UpsertCatalogArtifactVersionRequest, UpsertCatalogItemRequest, UpsertProjectEnvironmentRequest, UpsertProjectHostingRequest, UpsertProjectInfrastructureResourceRequest, UpsertTeamStorageLocatorRequest, UpsertTeamWebHostRequest, WorkdayPolicy, WorkdayRequest, WorkerRunner, SdkPriorityOverrideRequest, SdkUpsertWorkPolicyRequest } from './sdk-types.ts';
2
- import type { AgentMessageRecord, AgentStatusRecord, DirectBoardItemSummary, InboxItem, LaunchProjectRequest, LaunchProjectResult, ProjectOverviewSummary, ReleaseDetail, ReleaseSummary, SharePackageStatus, TeamHomeSummary, TeamMemberSummary, WorkstreamDetail, WorkstreamSummary } from './knowledge-coop.ts';
2
+ import type { AgentMessageRecord, AgentStatusRecord, DirectBoardItemSummary, InboxItem, LaunchProjectRequest, LaunchProjectResult, ProjectOverviewSummary, ReleaseDetail, ReleaseSummary, SharePackageStatus, TeamHomeSummary, TeamMemberSummary, WorkstreamDetail, WorkstreamSummary } from './project-workflow.ts';
3
3
  export interface ControlPlaneClientOptions {
4
4
  baseUrl: string;
5
5
  accessToken?: string | null;
@@ -1,6 +1,6 @@
1
1
  import type { ContentLeaseRecord } from './types/agents.ts';
2
2
  import type { D1DatabaseLike } from './types/cloudflare.ts';
3
- import type { ReleaseDetail, ReleaseSummary, SharePackageStatus, WorkstreamDetail, WorkstreamEvent, WorkstreamSummary } from './knowledge-coop.ts';
3
+ import type { ReleaseDetail, ReleaseSummary, SharePackageStatus, WorkstreamDetail, WorkstreamEvent, WorkstreamSummary } from './project-workflow.ts';
4
4
  import type { SdkAppendTaskEventRequest, SdkAckMessageRequest, SdkClaimMessageRequest, SdkClaimTaskRequest, SdkCloseWorkDayRequest, SdkCompleteTaskRequest, SdkCreateReportRequest, SdkCreateMessageRequest, SdkCreatePrioritySnapshotRequest, SdkCreateTaskRequest, SdkCursorEntity, SdkCursorRequest, SdkFailTaskRequest, SdkFollowRequest, SdkGetRequest, SdkGetCursorRequest, SdkLeaseEntity, SdkLeaseReleaseRequest, SdkManagerContextPayload, SdkMessageEntity, SdkMutationRequest, SdkPickRequest, SdkPickResult, SdkPriorityOverrideRequest, SdkClaimWorkdayManagerLeaseRequest, SdkCreateWorkdayRequest, SdkRecordRepositoryClaimRequest, SdkRecordRunnerScaleDecisionRequest, SdkRecordWorkerRunnerRequest, SdkRecordRunRequest, SdkRecordScaleDecisionRequest, SdkRecordTaskCreditsRequest, SdkReleaseWorkdayManagerLeaseRequest, SdkReportEntity, SdkRunEntity, SdkSearchRequest, SdkStartWorkDayRequest, SdkSubscriptionEntity, SdkTaskEntity, SdkTaskSearchRequest, SdkUpsertWorkPolicyRequest, SdkTaskProgressRequest, SdkUpdateWorkDayGraphRequest, SdkUpdateRequest, SdkWorkDayEntity, RepositoryClaim, RunnerScaleDecision, ScaleDecision, TaskCreditLedgerEntry, WorkdayManagerLease, WorkdayPolicy, WorkdayRequest, WorkerRunner, PrioritySnapshot } from './sdk-types.ts';
5
5
  import { type LeaseClaimInput } from './stores/lease-store.ts';
6
6
  export interface TryClaimContentLeaseInput extends LeaseClaimInput {
@@ -91,7 +91,7 @@ export declare class MemoryAgentDatabase implements AgentDatabase {
91
91
  private readonly prioritySnapshots;
92
92
  private readonly taskCreditLedger;
93
93
  private readonly scaleDecisions;
94
- private readonly knowledgeCoop;
94
+ private readonly projectWorkflow;
95
95
  private messageId;
96
96
  constructor(seed?: {
97
97
  subscriptions?: SdkSubscriptionEntity[];
@@ -235,7 +235,7 @@ export declare class CloudflareD1AgentDatabase implements AgentDatabase {
235
235
  private readonly cursors;
236
236
  private readonly leases;
237
237
  private readonly operational;
238
- private readonly knowledgeCoop;
238
+ private readonly projectWorkflow;
239
239
  constructor(db: D1DatabaseLike);
240
240
  get(request: SdkGetRequest): Promise<Record<string, unknown> | null>;
241
241
  search(request: SdkSearchRequest): Promise<Record<string, unknown>[]>;
@@ -318,11 +318,11 @@ export declare class CloudflareD1AgentDatabase implements AgentDatabase {
318
318
  projectId: string;
319
319
  title: string;
320
320
  summary: string | null;
321
- state: import("./knowledge-coop.ts").WorkstreamState;
321
+ state: import("./project-workflow.ts").WorkstreamState;
322
322
  branchName: string | null;
323
323
  branchRef: string | null;
324
324
  owner: string | null;
325
- linkedItems: import("./knowledge-coop.ts").LinkedProjectRecordRef[];
325
+ linkedItems: import("./project-workflow.ts").LinkedProjectRecordRef[];
326
326
  verificationStatus: "completed" | "failed" | "waiting" | null;
327
327
  verificationSummary: string | null;
328
328
  lastSaveAt: string | null;
package/dist/d1-store.js CHANGED
@@ -4,7 +4,7 @@ import { normalizeFilterFields, normalizeMutationData, normalizeRecordToCanonica
4
4
  import { assertExpectedVersion } from "./sdk-version.js";
5
5
  import { resolveModelDefinition } from "./model-registry.js";
6
6
  import { CursorStore } from "./stores/cursor-store.js";
7
- import { MemoryKnowledgeCoopStore, SqliteKnowledgeCoopStore } from "./stores/knowledge-coop-store.js";
7
+ import { MemoryProjectWorkflowStore, SqliteProjectWorkflowStore } from "./stores/project-workflow-store.js";
8
8
  import { LeaseStore } from "./stores/lease-store.js";
9
9
  import { MessageStore } from "./stores/message-store.js";
10
10
  import { OperationalStore } from "./stores/operational-store.js";
@@ -63,7 +63,7 @@ class MemoryAgentDatabase {
63
63
  prioritySnapshots = /* @__PURE__ */ new Map();
64
64
  taskCreditLedger = /* @__PURE__ */ new Map();
65
65
  scaleDecisions = /* @__PURE__ */ new Map();
66
- knowledgeCoop = new MemoryKnowledgeCoopStore();
66
+ projectWorkflow = new MemoryProjectWorkflowStore();
67
67
  messageId = 0;
68
68
  constructor(seed) {
69
69
  for (const item of seed?.subscriptions ?? []) {
@@ -1011,34 +1011,34 @@ class MemoryAgentDatabase {
1011
1011
  return [...this.scaleDecisions.values()].filter((entry) => entry.projectId === projectId && entry.environment === environment && entry.poolName === poolName).sort((left, right) => right.createdAt.localeCompare(left.createdAt))[0] ?? null;
1012
1012
  }
1013
1013
  listWorkstreams(projectId) {
1014
- return Promise.resolve(this.knowledgeCoop.listWorkstreams(projectId));
1014
+ return Promise.resolve(this.projectWorkflow.listWorkstreams(projectId));
1015
1015
  }
1016
1016
  getWorkstream(workstreamId) {
1017
- return Promise.resolve(this.knowledgeCoop.getWorkstream(workstreamId));
1017
+ return Promise.resolve(this.projectWorkflow.getWorkstream(workstreamId));
1018
1018
  }
1019
1019
  upsertWorkstream(input) {
1020
- return Promise.resolve(this.knowledgeCoop.upsertWorkstream(input));
1020
+ return Promise.resolve(this.projectWorkflow.upsertWorkstream(input));
1021
1021
  }
1022
1022
  appendWorkstreamEvent(input) {
1023
- return Promise.resolve(this.knowledgeCoop.appendWorkstreamEvent(input));
1023
+ return Promise.resolve(this.projectWorkflow.appendWorkstreamEvent(input));
1024
1024
  }
1025
1025
  listReleases(projectId) {
1026
- return Promise.resolve(this.knowledgeCoop.listReleases(projectId));
1026
+ return Promise.resolve(this.projectWorkflow.listReleases(projectId));
1027
1027
  }
1028
1028
  getRelease(releaseId) {
1029
- return Promise.resolve(this.knowledgeCoop.getRelease(releaseId));
1029
+ return Promise.resolve(this.projectWorkflow.getRelease(releaseId));
1030
1030
  }
1031
1031
  upsertRelease(input) {
1032
- return Promise.resolve(this.knowledgeCoop.upsertRelease(input));
1032
+ return Promise.resolve(this.projectWorkflow.upsertRelease(input));
1033
1033
  }
1034
1034
  listSharePackages(projectId) {
1035
- return Promise.resolve(this.knowledgeCoop.listSharePackages(projectId));
1035
+ return Promise.resolve(this.projectWorkflow.listSharePackages(projectId));
1036
1036
  }
1037
1037
  getSharePackage(packageId) {
1038
- return Promise.resolve(this.knowledgeCoop.getSharePackage(packageId));
1038
+ return Promise.resolve(this.projectWorkflow.getSharePackage(packageId));
1039
1039
  }
1040
1040
  upsertSharePackage(input) {
1041
- return Promise.resolve(this.knowledgeCoop.upsertSharePackage(input));
1041
+ return Promise.resolve(this.projectWorkflow.upsertSharePackage(input));
1042
1042
  }
1043
1043
  }
1044
1044
  class CloudflareD1AgentDatabase {
@@ -1050,7 +1050,7 @@ class CloudflareD1AgentDatabase {
1050
1050
  this.cursors = new CursorStore(db);
1051
1051
  this.leases = new LeaseStore(db);
1052
1052
  this.operational = new OperationalStore(db);
1053
- this.knowledgeCoop = new SqliteKnowledgeCoopStore(db);
1053
+ this.projectWorkflow = new SqliteProjectWorkflowStore(db);
1054
1054
  }
1055
1055
  db;
1056
1056
  subscriptions;
@@ -1059,7 +1059,7 @@ class CloudflareD1AgentDatabase {
1059
1059
  cursors;
1060
1060
  leases;
1061
1061
  operational;
1062
- knowledgeCoop;
1062
+ projectWorkflow;
1063
1063
  async get(request) {
1064
1064
  if (request.model === "subscription") {
1065
1065
  return this.subscriptions.getByKey(String(request.id ?? request.slug ?? request.key ?? ""));
@@ -1458,34 +1458,34 @@ class CloudflareD1AgentDatabase {
1458
1458
  return this.operational.getLatestScaleDecision(projectId, environment, poolName);
1459
1459
  }
1460
1460
  listWorkstreams(projectId) {
1461
- return this.knowledgeCoop.listWorkstreams(projectId);
1461
+ return this.projectWorkflow.listWorkstreams(projectId);
1462
1462
  }
1463
1463
  getWorkstream(workstreamId) {
1464
- return this.knowledgeCoop.getWorkstream(workstreamId);
1464
+ return this.projectWorkflow.getWorkstream(workstreamId);
1465
1465
  }
1466
1466
  upsertWorkstream(input) {
1467
- return this.knowledgeCoop.upsertWorkstream(input);
1467
+ return this.projectWorkflow.upsertWorkstream(input);
1468
1468
  }
1469
1469
  appendWorkstreamEvent(input) {
1470
- return this.knowledgeCoop.appendWorkstreamEvent(input);
1470
+ return this.projectWorkflow.appendWorkstreamEvent(input);
1471
1471
  }
1472
1472
  listReleases(projectId) {
1473
- return this.knowledgeCoop.listReleases(projectId);
1473
+ return this.projectWorkflow.listReleases(projectId);
1474
1474
  }
1475
1475
  getRelease(releaseId) {
1476
- return this.knowledgeCoop.getRelease(releaseId);
1476
+ return this.projectWorkflow.getRelease(releaseId);
1477
1477
  }
1478
1478
  upsertRelease(input) {
1479
- return this.knowledgeCoop.upsertRelease(input);
1479
+ return this.projectWorkflow.upsertRelease(input);
1480
1480
  }
1481
1481
  listSharePackages(projectId) {
1482
- return this.knowledgeCoop.listSharePackages(projectId);
1482
+ return this.projectWorkflow.listSharePackages(projectId);
1483
1483
  }
1484
1484
  getSharePackage(packageId) {
1485
- return this.knowledgeCoop.getSharePackage(packageId);
1485
+ return this.projectWorkflow.getSharePackage(packageId);
1486
1486
  }
1487
1487
  upsertSharePackage(input) {
1488
- return this.knowledgeCoop.upsertSharePackage(input);
1488
+ return this.projectWorkflow.upsertSharePackage(input);
1489
1489
  }
1490
1490
  }
1491
1491
  export {
package/dist/db/d1.d.ts CHANGED
@@ -705,6 +705,108 @@ export declare function createTreeseedD1Drizzle(db: D1DatabaseLike): import("dri
705
705
  };
706
706
  dialect: "sqlite";
707
707
  }>;
708
+ userPreferences: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
709
+ name: "user_preferences";
710
+ schema: undefined;
711
+ columns: {
712
+ userId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
713
+ name: "user_id";
714
+ tableName: "user_preferences";
715
+ dataType: "string";
716
+ columnType: "SQLiteText";
717
+ data: string;
718
+ driverParam: string;
719
+ notNull: true;
720
+ hasDefault: false;
721
+ isPrimaryKey: true;
722
+ isAutoincrement: false;
723
+ hasRuntimeDefault: false;
724
+ enumValues: [string, ...string[]];
725
+ baseColumn: never;
726
+ identity: undefined;
727
+ generated: undefined;
728
+ }, {}, {
729
+ length: number | undefined;
730
+ }>;
731
+ colorScheme: import("drizzle-orm/sqlite-core").SQLiteColumn<{
732
+ name: "color_scheme";
733
+ tableName: "user_preferences";
734
+ dataType: "string";
735
+ columnType: "SQLiteText";
736
+ data: string;
737
+ driverParam: string;
738
+ notNull: true;
739
+ hasDefault: true;
740
+ isPrimaryKey: false;
741
+ isAutoincrement: false;
742
+ hasRuntimeDefault: false;
743
+ enumValues: [string, ...string[]];
744
+ baseColumn: never;
745
+ identity: undefined;
746
+ generated: undefined;
747
+ }, {}, {
748
+ length: number | undefined;
749
+ }>;
750
+ themeMode: import("drizzle-orm/sqlite-core").SQLiteColumn<{
751
+ name: "theme_mode";
752
+ tableName: "user_preferences";
753
+ dataType: "string";
754
+ columnType: "SQLiteText";
755
+ data: string;
756
+ driverParam: string;
757
+ notNull: true;
758
+ hasDefault: true;
759
+ isPrimaryKey: false;
760
+ isAutoincrement: false;
761
+ hasRuntimeDefault: false;
762
+ enumValues: [string, ...string[]];
763
+ baseColumn: never;
764
+ identity: undefined;
765
+ generated: undefined;
766
+ }, {}, {
767
+ length: number | undefined;
768
+ }>;
769
+ createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
770
+ name: "created_at";
771
+ tableName: "user_preferences";
772
+ dataType: "string";
773
+ columnType: "SQLiteText";
774
+ data: string;
775
+ driverParam: string;
776
+ notNull: true;
777
+ hasDefault: false;
778
+ isPrimaryKey: false;
779
+ isAutoincrement: false;
780
+ hasRuntimeDefault: false;
781
+ enumValues: [string, ...string[]];
782
+ baseColumn: never;
783
+ identity: undefined;
784
+ generated: undefined;
785
+ }, {}, {
786
+ length: number | undefined;
787
+ }>;
788
+ updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
789
+ name: "updated_at";
790
+ tableName: "user_preferences";
791
+ dataType: "string";
792
+ columnType: "SQLiteText";
793
+ data: string;
794
+ driverParam: string;
795
+ notNull: true;
796
+ hasDefault: false;
797
+ isPrimaryKey: false;
798
+ isAutoincrement: false;
799
+ hasRuntimeDefault: false;
800
+ enumValues: [string, ...string[]];
801
+ baseColumn: never;
802
+ identity: undefined;
803
+ generated: undefined;
804
+ }, {}, {
805
+ length: number | undefined;
806
+ }>;
807
+ };
808
+ dialect: "sqlite";
809
+ }>;
708
810
  user: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
709
811
  name: "better_auth_user";
710
812
  schema: undefined;
@@ -757,6 +757,108 @@ export declare function createTreeseedNodeSqliteDrizzle(path?: string | null): {
757
757
  };
758
758
  dialect: "sqlite";
759
759
  }>;
760
+ userPreferences: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
761
+ name: "user_preferences";
762
+ schema: undefined;
763
+ columns: {
764
+ userId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
765
+ name: "user_id";
766
+ tableName: "user_preferences";
767
+ dataType: "string";
768
+ columnType: "SQLiteText";
769
+ data: string;
770
+ driverParam: string;
771
+ notNull: true;
772
+ hasDefault: false;
773
+ isPrimaryKey: true;
774
+ isAutoincrement: false;
775
+ hasRuntimeDefault: false;
776
+ enumValues: [string, ...string[]];
777
+ baseColumn: never;
778
+ identity: undefined;
779
+ generated: undefined;
780
+ }, {}, {
781
+ length: number | undefined;
782
+ }>;
783
+ colorScheme: import("drizzle-orm/sqlite-core").SQLiteColumn<{
784
+ name: "color_scheme";
785
+ tableName: "user_preferences";
786
+ dataType: "string";
787
+ columnType: "SQLiteText";
788
+ data: string;
789
+ driverParam: string;
790
+ notNull: true;
791
+ hasDefault: true;
792
+ isPrimaryKey: false;
793
+ isAutoincrement: false;
794
+ hasRuntimeDefault: false;
795
+ enumValues: [string, ...string[]];
796
+ baseColumn: never;
797
+ identity: undefined;
798
+ generated: undefined;
799
+ }, {}, {
800
+ length: number | undefined;
801
+ }>;
802
+ themeMode: import("drizzle-orm/sqlite-core").SQLiteColumn<{
803
+ name: "theme_mode";
804
+ tableName: "user_preferences";
805
+ dataType: "string";
806
+ columnType: "SQLiteText";
807
+ data: string;
808
+ driverParam: string;
809
+ notNull: true;
810
+ hasDefault: true;
811
+ isPrimaryKey: false;
812
+ isAutoincrement: false;
813
+ hasRuntimeDefault: false;
814
+ enumValues: [string, ...string[]];
815
+ baseColumn: never;
816
+ identity: undefined;
817
+ generated: undefined;
818
+ }, {}, {
819
+ length: number | undefined;
820
+ }>;
821
+ createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
822
+ name: "created_at";
823
+ tableName: "user_preferences";
824
+ dataType: "string";
825
+ columnType: "SQLiteText";
826
+ data: string;
827
+ driverParam: string;
828
+ notNull: true;
829
+ hasDefault: false;
830
+ isPrimaryKey: false;
831
+ isAutoincrement: false;
832
+ hasRuntimeDefault: false;
833
+ enumValues: [string, ...string[]];
834
+ baseColumn: never;
835
+ identity: undefined;
836
+ generated: undefined;
837
+ }, {}, {
838
+ length: number | undefined;
839
+ }>;
840
+ updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
841
+ name: "updated_at";
842
+ tableName: "user_preferences";
843
+ dataType: "string";
844
+ columnType: "SQLiteText";
845
+ data: string;
846
+ driverParam: string;
847
+ notNull: true;
848
+ hasDefault: false;
849
+ isPrimaryKey: false;
850
+ isAutoincrement: false;
851
+ hasRuntimeDefault: false;
852
+ enumValues: [string, ...string[]];
853
+ baseColumn: never;
854
+ identity: undefined;
855
+ generated: undefined;
856
+ }, {}, {
857
+ length: number | undefined;
858
+ }>;
859
+ };
860
+ dialect: "sqlite";
861
+ }>;
760
862
  user: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
761
863
  name: "better_auth_user";
762
864
  schema: undefined;
@@ -703,6 +703,108 @@ export declare const betterAuthVerification: import("drizzle-orm/sqlite-core").S
703
703
  };
704
704
  dialect: "sqlite";
705
705
  }>;
706
+ export declare const userPreferences: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
707
+ name: "user_preferences";
708
+ schema: undefined;
709
+ columns: {
710
+ userId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
711
+ name: "user_id";
712
+ tableName: "user_preferences";
713
+ dataType: "string";
714
+ columnType: "SQLiteText";
715
+ data: string;
716
+ driverParam: string;
717
+ notNull: true;
718
+ hasDefault: false;
719
+ isPrimaryKey: true;
720
+ isAutoincrement: false;
721
+ hasRuntimeDefault: false;
722
+ enumValues: [string, ...string[]];
723
+ baseColumn: never;
724
+ identity: undefined;
725
+ generated: undefined;
726
+ }, {}, {
727
+ length: number | undefined;
728
+ }>;
729
+ colorScheme: import("drizzle-orm/sqlite-core").SQLiteColumn<{
730
+ name: "color_scheme";
731
+ tableName: "user_preferences";
732
+ dataType: "string";
733
+ columnType: "SQLiteText";
734
+ data: string;
735
+ driverParam: string;
736
+ notNull: true;
737
+ hasDefault: true;
738
+ isPrimaryKey: false;
739
+ isAutoincrement: false;
740
+ hasRuntimeDefault: false;
741
+ enumValues: [string, ...string[]];
742
+ baseColumn: never;
743
+ identity: undefined;
744
+ generated: undefined;
745
+ }, {}, {
746
+ length: number | undefined;
747
+ }>;
748
+ themeMode: import("drizzle-orm/sqlite-core").SQLiteColumn<{
749
+ name: "theme_mode";
750
+ tableName: "user_preferences";
751
+ dataType: "string";
752
+ columnType: "SQLiteText";
753
+ data: string;
754
+ driverParam: string;
755
+ notNull: true;
756
+ hasDefault: true;
757
+ isPrimaryKey: false;
758
+ isAutoincrement: false;
759
+ hasRuntimeDefault: false;
760
+ enumValues: [string, ...string[]];
761
+ baseColumn: never;
762
+ identity: undefined;
763
+ generated: undefined;
764
+ }, {}, {
765
+ length: number | undefined;
766
+ }>;
767
+ createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
768
+ name: "created_at";
769
+ tableName: "user_preferences";
770
+ dataType: "string";
771
+ columnType: "SQLiteText";
772
+ data: string;
773
+ driverParam: string;
774
+ notNull: true;
775
+ hasDefault: false;
776
+ isPrimaryKey: false;
777
+ isAutoincrement: false;
778
+ hasRuntimeDefault: false;
779
+ enumValues: [string, ...string[]];
780
+ baseColumn: never;
781
+ identity: undefined;
782
+ generated: undefined;
783
+ }, {}, {
784
+ length: number | undefined;
785
+ }>;
786
+ updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
787
+ name: "updated_at";
788
+ tableName: "user_preferences";
789
+ dataType: "string";
790
+ columnType: "SQLiteText";
791
+ data: string;
792
+ driverParam: string;
793
+ notNull: true;
794
+ hasDefault: false;
795
+ isPrimaryKey: false;
796
+ isAutoincrement: false;
797
+ hasRuntimeDefault: false;
798
+ enumValues: [string, ...string[]];
799
+ baseColumn: never;
800
+ identity: undefined;
801
+ generated: undefined;
802
+ }, {}, {
803
+ length: number | undefined;
804
+ }>;
805
+ };
806
+ dialect: "sqlite";
807
+ }>;
706
808
  export declare const users: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
707
809
  name: "users";
708
810
  schema: undefined;
@@ -3486,6 +3588,108 @@ export declare const treeseedSchema: {
3486
3588
  };
3487
3589
  dialect: "sqlite";
3488
3590
  }>;
3591
+ userPreferences: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
3592
+ name: "user_preferences";
3593
+ schema: undefined;
3594
+ columns: {
3595
+ userId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
3596
+ name: "user_id";
3597
+ tableName: "user_preferences";
3598
+ dataType: "string";
3599
+ columnType: "SQLiteText";
3600
+ data: string;
3601
+ driverParam: string;
3602
+ notNull: true;
3603
+ hasDefault: false;
3604
+ isPrimaryKey: true;
3605
+ isAutoincrement: false;
3606
+ hasRuntimeDefault: false;
3607
+ enumValues: [string, ...string[]];
3608
+ baseColumn: never;
3609
+ identity: undefined;
3610
+ generated: undefined;
3611
+ }, {}, {
3612
+ length: number | undefined;
3613
+ }>;
3614
+ colorScheme: import("drizzle-orm/sqlite-core").SQLiteColumn<{
3615
+ name: "color_scheme";
3616
+ tableName: "user_preferences";
3617
+ dataType: "string";
3618
+ columnType: "SQLiteText";
3619
+ data: string;
3620
+ driverParam: string;
3621
+ notNull: true;
3622
+ hasDefault: true;
3623
+ isPrimaryKey: false;
3624
+ isAutoincrement: false;
3625
+ hasRuntimeDefault: false;
3626
+ enumValues: [string, ...string[]];
3627
+ baseColumn: never;
3628
+ identity: undefined;
3629
+ generated: undefined;
3630
+ }, {}, {
3631
+ length: number | undefined;
3632
+ }>;
3633
+ themeMode: import("drizzle-orm/sqlite-core").SQLiteColumn<{
3634
+ name: "theme_mode";
3635
+ tableName: "user_preferences";
3636
+ dataType: "string";
3637
+ columnType: "SQLiteText";
3638
+ data: string;
3639
+ driverParam: string;
3640
+ notNull: true;
3641
+ hasDefault: true;
3642
+ isPrimaryKey: false;
3643
+ isAutoincrement: false;
3644
+ hasRuntimeDefault: false;
3645
+ enumValues: [string, ...string[]];
3646
+ baseColumn: never;
3647
+ identity: undefined;
3648
+ generated: undefined;
3649
+ }, {}, {
3650
+ length: number | undefined;
3651
+ }>;
3652
+ createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
3653
+ name: "created_at";
3654
+ tableName: "user_preferences";
3655
+ dataType: "string";
3656
+ columnType: "SQLiteText";
3657
+ data: string;
3658
+ driverParam: string;
3659
+ notNull: true;
3660
+ hasDefault: false;
3661
+ isPrimaryKey: false;
3662
+ isAutoincrement: false;
3663
+ hasRuntimeDefault: false;
3664
+ enumValues: [string, ...string[]];
3665
+ baseColumn: never;
3666
+ identity: undefined;
3667
+ generated: undefined;
3668
+ }, {}, {
3669
+ length: number | undefined;
3670
+ }>;
3671
+ updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
3672
+ name: "updated_at";
3673
+ tableName: "user_preferences";
3674
+ dataType: "string";
3675
+ columnType: "SQLiteText";
3676
+ data: string;
3677
+ driverParam: string;
3678
+ notNull: true;
3679
+ hasDefault: false;
3680
+ isPrimaryKey: false;
3681
+ isAutoincrement: false;
3682
+ hasRuntimeDefault: false;
3683
+ enumValues: [string, ...string[]];
3684
+ baseColumn: never;
3685
+ identity: undefined;
3686
+ generated: undefined;
3687
+ }, {}, {
3688
+ length: number | undefined;
3689
+ }>;
3690
+ };
3691
+ dialect: "sqlite";
3692
+ }>;
3489
3693
  user: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
3490
3694
  name: "better_auth_user";
3491
3695
  schema: undefined;
package/dist/db/schema.js CHANGED
@@ -46,6 +46,13 @@ const betterAuthVerification = sqliteTable("better_auth_verification", {
46
46
  createdAt: integer("createdAt", { mode: "timestamp_ms" }).notNull(),
47
47
  updatedAt: integer("updatedAt", { mode: "timestamp_ms" }).notNull()
48
48
  });
49
+ const userPreferences = sqliteTable("user_preferences", {
50
+ userId: text("user_id").primaryKey().references(() => betterAuthUser.id, { onDelete: "cascade" }),
51
+ colorScheme: text("color_scheme").notNull().default("fern"),
52
+ themeMode: text("theme_mode").notNull().default("system"),
53
+ createdAt: text("created_at").notNull(),
54
+ updatedAt: text("updated_at").notNull()
55
+ });
49
56
  const users = sqliteTable("users", {
50
57
  id: text("id").primaryKey(),
51
58
  email: text("email"),
@@ -193,6 +200,7 @@ const treeseedSchema = {
193
200
  better_auth_session: betterAuthSession,
194
201
  better_auth_account: betterAuthAccount,
195
202
  better_auth_verification: betterAuthVerification,
203
+ userPreferences,
196
204
  user: betterAuthUser,
197
205
  session: betterAuthSession,
198
206
  account: betterAuthAccount,
@@ -225,6 +233,7 @@ export {
225
233
  teams,
226
234
  treeseedSchema,
227
235
  userIdentities,
236
+ userPreferences,
228
237
  userRoleBindings,
229
238
  users,
230
239
  webSessions