@cat-factory/node-server 0.108.4 → 0.109.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.
@@ -14,6 +14,8 @@ function rowToRecord(row) {
14
14
  inputTokens: row.input_tokens,
15
15
  outputTokens: row.output_tokens,
16
16
  requestCount: row.request_count,
17
+ enabled: row.enabled !== 0,
18
+ isDefault: row.is_default !== 0,
17
19
  deletedAt: row.deleted_at,
18
20
  };
19
21
  }
@@ -40,7 +42,7 @@ export class DrizzleProviderApiKeyRepository {
40
42
  const rows = await this.db
41
43
  .select()
42
44
  .from(providerApiKeys)
43
- .where(and(scopeMatch(scopes), eq(providerApiKeys.provider, provider), isNull(providerApiKeys.deleted_at)))
45
+ .where(and(scopeMatch(scopes), eq(providerApiKeys.provider, provider), isNull(providerApiKeys.deleted_at), eq(providerApiKeys.enabled, 1)))
44
46
  .orderBy(asc(providerApiKeys.created_at));
45
47
  return rows.map(rowToRecord);
46
48
  }
@@ -50,7 +52,7 @@ export class DrizzleProviderApiKeyRepository {
50
52
  const rows = await this.db
51
53
  .selectDistinct({ provider: providerApiKeys.provider })
52
54
  .from(providerApiKeys)
53
- .where(and(scopeMatch(scopes), isNull(providerApiKeys.deleted_at)));
55
+ .where(and(scopeMatch(scopes), isNull(providerApiKeys.deleted_at), eq(providerApiKeys.enabled, 1)));
54
56
  return rows.map((r) => r.provider);
55
57
  }
56
58
  async getById(scope, scopeId, id) {
@@ -76,6 +78,8 @@ export class DrizzleProviderApiKeyRepository {
76
78
  input_tokens: record.inputTokens,
77
79
  output_tokens: record.outputTokens,
78
80
  request_count: record.requestCount,
81
+ enabled: record.enabled ? 1 : 0,
82
+ is_default: record.isDefault ? 1 : 0,
79
83
  deleted_at: record.deletedAt,
80
84
  });
81
85
  }
@@ -89,10 +93,11 @@ export class DrizzleProviderApiKeyRepository {
89
93
  if (scopes.length === 0)
90
94
  return null;
91
95
  // Pick-and-mark atomically inside one transaction: the winner is selected by the same
92
- // policy as `chooseToken` (least rolling-window usage, then least-recently-leased —
93
- // NULL last_used_at first — then oldest) under `FOR UPDATE SKIP LOCKED`, so two
94
- // concurrent leases never select the same row (the second skips the locked winner and
95
- // rotates to the next key) — the fix for the non-transactional read→choose→mark race.
96
+ // policy as `chooseToken` — a pinned default (is_default = 1) first, then least
97
+ // rolling-window usage, then least-recently-leased (NULL last_used_at first), then oldest —
98
+ // over the ENABLED keys only, under `FOR UPDATE SKIP LOCKED`, so two concurrent leases
99
+ // never select the same row (the second skips the locked winner and rotates to the next
100
+ // key) — the fix for the non-transactional read→choose→mark race.
96
101
  const usage = sql `CASE WHEN ${providerApiKeys.window_started_at} IS NULL
97
102
  OR ${now} - ${providerApiKeys.window_started_at} >= ${windowMs}
98
103
  THEN 0
@@ -101,8 +106,8 @@ export class DrizzleProviderApiKeyRepository {
101
106
  const picked = await tx
102
107
  .select({ id: providerApiKeys.id })
103
108
  .from(providerApiKeys)
104
- .where(and(scopeMatch(scopes), eq(providerApiKeys.provider, provider), isNull(providerApiKeys.deleted_at)))
105
- .orderBy(sql `${usage} ASC`, sql `${providerApiKeys.last_used_at} ASC NULLS FIRST`, asc(providerApiKeys.created_at))
109
+ .where(and(scopeMatch(scopes), eq(providerApiKeys.provider, provider), isNull(providerApiKeys.deleted_at), eq(providerApiKeys.enabled, 1)))
110
+ .orderBy(sql `${providerApiKeys.is_default} DESC`, sql `${usage} ASC`, sql `${providerApiKeys.last_used_at} ASC NULLS FIRST`, asc(providerApiKeys.created_at))
106
111
  .limit(1)
107
112
  .for('update', { skipLocked: true });
108
113
  const id = picked[0]?.id;
@@ -132,6 +137,26 @@ export class DrizzleProviderApiKeyRepository {
132
137
  })
133
138
  .where(eq(cols.id, id));
134
139
  }
140
+ async setEnabled(scope, scopeId, id, enabled) {
141
+ await this.db
142
+ .update(providerApiKeys)
143
+ .set({ enabled: enabled ? 1 : 0 })
144
+ .where(and(eq(providerApiKeys.id, id), eq(providerApiKeys.scope, scope), eq(providerApiKeys.scope_id, scopeId), isNull(providerApiKeys.deleted_at)));
145
+ }
146
+ async setDefault(scope, scopeId, provider, id) {
147
+ const cols = providerApiKeys;
148
+ // Clear the group's default first (at most one per scope+scope_id+provider), then pin it.
149
+ await this.db
150
+ .update(cols)
151
+ .set({ is_default: 0 })
152
+ .where(and(eq(cols.scope, scope), eq(cols.scope_id, scopeId), eq(cols.provider, provider), isNull(cols.deleted_at)));
153
+ if (id !== null) {
154
+ await this.db
155
+ .update(cols)
156
+ .set({ is_default: 1 })
157
+ .where(and(eq(cols.id, id), eq(cols.scope, scope), eq(cols.scope_id, scopeId), eq(cols.provider, provider), isNull(cols.deleted_at)));
158
+ }
159
+ }
135
160
  async softDelete(scope, scopeId, id, at) {
136
161
  await this.db
137
162
  .update(providerApiKeys)
@@ -1 +1 @@
1
- {"version":3,"file":"providerApiKey.js","sourceRoot":"","sources":["../../src/repositories/providerApiKey.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"providerApiKey.js","sourceRoot":"","sources":["../../src/repositories/providerApiKey.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,8 @@ export declare class DrizzleProviderSubscriptionTokenRepository implements Provi
11
11
  inputTokens: number;
12
12
  outputTokens: number;
13
13
  }, at: number, windowMs: number): Promise<void>;
14
+ setEnabled(workspaceId: string, id: string, enabled: boolean): Promise<void>;
15
+ setDefault(workspaceId: string, vendor: SubscriptionVendor, id: string | null): Promise<void>;
14
16
  softDelete(workspaceId: string, id: string, at: number): Promise<void>;
15
17
  }
16
18
  //# sourceMappingURL=providerSubscription.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"providerSubscription.d.ts","sourceRoot":"","sources":["../../src/repositories/providerSubscription.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,+BAA+B,EAC/B,mCAAmC,EACnC,kBAAkB,EACnB,MAAM,qBAAqB,CAAA;AAI5B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AA8BhD,qBAAa,0CAA2C,YAAW,mCAAmC;IACxF,OAAO,CAAC,QAAQ,CAAC,EAAE;IAA/B,YAA6B,EAAE,EAAE,SAAS,EAAI;IAExC,YAAY,CAChB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,+BAA+B,EAAE,CAAC,CAa5C;IAEK,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,+BAA+B,GAAG,IAAI,CAAC,CAc9F;IAEK,GAAG,CAAC,MAAM,EAAE,+BAA+B,GAAG,OAAO,CAAC,IAAI,CAAC,CAehE;IAEK,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAU3E;IAEK,WAAW,CACf,WAAW,EAAE,MAAM,EACnB,EAAE,EAAE,MAAM,EACV,KAAK,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,EACpD,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,CAiBf;IAEK,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAW3E;CACF"}
1
+ {"version":3,"file":"providerSubscription.d.ts","sourceRoot":"","sources":["../../src/repositories/providerSubscription.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,+BAA+B,EAC/B,mCAAmC,EACnC,kBAAkB,EACnB,MAAM,qBAAqB,CAAA;AAI5B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAgChD,qBAAa,0CAA2C,YAAW,mCAAmC;IACxF,OAAO,CAAC,QAAQ,CAAC,EAAE;IAA/B,YAA6B,EAAE,EAAE,SAAS,EAAI;IAExC,YAAY,CAChB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,+BAA+B,EAAE,CAAC,CAa5C;IAEK,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,+BAA+B,GAAG,IAAI,CAAC,CAc9F;IAEK,GAAG,CAAC,MAAM,EAAE,+BAA+B,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBhE;IAEK,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAU3E;IAEK,WAAW,CACf,WAAW,EAAE,MAAM,EACnB,EAAE,EAAE,MAAM,EACV,KAAK,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,EACpD,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,CAiBf;IAEK,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAWjF;IAEK,UAAU,CACd,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,kBAAkB,EAC1B,EAAE,EAAE,MAAM,GAAG,IAAI,GAChB,OAAO,CAAC,IAAI,CAAC,CAsBf;IAEK,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAW3E;CACF"}
@@ -19,6 +19,8 @@ function rowToRecord(row) {
19
19
  inputTokens: row.input_tokens,
20
20
  outputTokens: row.output_tokens,
21
21
  requestCount: row.request_count,
22
+ enabled: row.enabled !== 0,
23
+ isDefault: row.is_default !== 0,
22
24
  deletedAt: row.deleted_at,
23
25
  };
24
26
  }
@@ -57,6 +59,8 @@ export class DrizzleProviderSubscriptionTokenRepository {
57
59
  input_tokens: record.inputTokens,
58
60
  output_tokens: record.outputTokens,
59
61
  request_count: record.requestCount,
62
+ enabled: record.enabled ? 1 : 0,
63
+ is_default: record.isDefault ? 1 : 0,
60
64
  deleted_at: record.deletedAt,
61
65
  });
62
66
  }
@@ -84,6 +88,26 @@ export class DrizzleProviderSubscriptionTokenRepository {
84
88
  })
85
89
  .where(and(eq(cols.id, id), eq(cols.workspace_id, workspaceId)));
86
90
  }
91
+ async setEnabled(workspaceId, id, enabled) {
92
+ await this.db
93
+ .update(providerSubscriptionTokens)
94
+ .set({ enabled: enabled ? 1 : 0 })
95
+ .where(and(eq(providerSubscriptionTokens.id, id), eq(providerSubscriptionTokens.workspace_id, workspaceId), isNull(providerSubscriptionTokens.deleted_at)));
96
+ }
97
+ async setDefault(workspaceId, vendor, id) {
98
+ const cols = providerSubscriptionTokens;
99
+ // Clear the group's default first (at most one per workspace+vendor), then pin the row.
100
+ await this.db
101
+ .update(cols)
102
+ .set({ is_default: 0 })
103
+ .where(and(eq(cols.workspace_id, workspaceId), eq(cols.vendor, vendor), isNull(cols.deleted_at)));
104
+ if (id !== null) {
105
+ await this.db
106
+ .update(cols)
107
+ .set({ is_default: 1 })
108
+ .where(and(eq(cols.id, id), eq(cols.workspace_id, workspaceId), eq(cols.vendor, vendor), isNull(cols.deleted_at)));
109
+ }
110
+ }
87
111
  async softDelete(workspaceId, id, at) {
88
112
  await this.db
89
113
  .update(providerSubscriptionTokens)
@@ -1 +1 @@
1
- {"version":3,"file":"providerSubscription.js","sourceRoot":"","sources":["../../src/repositories/providerSubscription.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"providerSubscription.js","sourceRoot":"","sources":["../../src/repositories/providerSubscription.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAA;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AAEvD,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAA;AAQ5D,SAAS,WAAW,CAAC,GAAQ;IAC3B,OAAO;QACL,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,WAAW,EAAE,GAAG,CAAC,YAAY;QAC7B,MAAM,EAAE,UAAU,CAAC,wBAAwB,EAAE,GAAG,CAAC,MAAM,EAAE;YACvD,KAAK,EAAE,8BAA8B;YACrC,MAAM,EAAE,QAAQ;YAChB,EAAE,EAAE,GAAG,CAAC,EAAE;SACX,CAAC;QACF,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,WAAW,EAAE,GAAG,CAAC,YAAY;QAC7B,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,UAAU,EAAE,GAAG,CAAC,YAAY;QAC5B,eAAe,EAAE,GAAG,CAAC,iBAAiB;QACtC,WAAW,EAAE,GAAG,CAAC,YAAY;QAC7B,YAAY,EAAE,GAAG,CAAC,aAAa;QAC/B,YAAY,EAAE,GAAG,CAAC,aAAa;QAC/B,OAAO,EAAE,GAAG,CAAC,OAAO,KAAK,CAAC;QAC1B,SAAS,EAAE,GAAG,CAAC,UAAU,KAAK,CAAC;QAC/B,SAAS,EAAE,GAAG,CAAC,UAAU;KAC1B,CAAA;AACH,CAAC;AAED,MAAM,OAAO,0CAA0C;IACxB,EAAE;IAA/B,YAA6B,EAAa;kBAAb,EAAE;IAAc,CAAC;IAE9C,KAAK,CAAC,YAAY,CAChB,WAAmB,EACnB,MAA0B;QAE1B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,EAAE;aACvB,MAAM,EAAE;aACR,IAAI,CAAC,0BAA0B,CAAC;aAChC,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,0BAA0B,CAAC,YAAY,EAAE,WAAW,CAAC,EACxD,EAAE,CAAC,0BAA0B,CAAC,MAAM,EAAE,MAAM,CAAC,EAC7C,MAAM,CAAC,0BAA0B,CAAC,UAAU,CAAC,CAC9C,CACF;aACA,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,UAAU,CAAC,CAAC,CAAA;QACtD,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;IAC9B,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,WAAmB,EAAE,EAAU;QAC3C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,EAAE;aACvB,MAAM,EAAE;aACR,IAAI,CAAC,0BAA0B,CAAC;aAChC,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,0BAA0B,CAAC,EAAE,EAAE,EAAE,CAAC,EACrC,EAAE,CAAC,0BAA0B,CAAC,YAAY,EAAE,WAAW,CAAC,EACxD,MAAM,CAAC,0BAA0B,CAAC,UAAU,CAAC,CAC9C,CACF;aACA,KAAK,CAAC,CAAC,CAAC,CAAA;QACX,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;QACnB,OAAO,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IACtC,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,MAAuC;QAC/C,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,0BAA0B,CAAC,CAAC,MAAM,CAAC;YACtD,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,YAAY,EAAE,MAAM,CAAC,WAAW;YAChC,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,YAAY,EAAE,MAAM,CAAC,WAAW;YAChC,UAAU,EAAE,MAAM,CAAC,SAAS;YAC5B,YAAY,EAAE,MAAM,CAAC,UAAU;YAC/B,iBAAiB,EAAE,MAAM,CAAC,eAAe;YACzC,YAAY,EAAE,MAAM,CAAC,WAAW;YAChC,aAAa,EAAE,MAAM,CAAC,YAAY;YAClC,aAAa,EAAE,MAAM,CAAC,YAAY;YAClC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/B,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACpC,UAAU,EAAE,MAAM,CAAC,SAAS;SAC7B,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,WAAmB,EAAE,EAAU,EAAE,EAAU;QAC1D,MAAM,IAAI,CAAC,EAAE;aACV,MAAM,CAAC,0BAA0B,CAAC;aAClC,GAAG,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC;aACzB,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,0BAA0B,CAAC,EAAE,EAAE,EAAE,CAAC,EACrC,EAAE,CAAC,0BAA0B,CAAC,YAAY,EAAE,WAAW,CAAC,CACzD,CACF,CAAA;IACL,CAAC;IAED,KAAK,CAAC,WAAW,CACf,WAAmB,EACnB,EAAU,EACV,KAAoD,EACpD,EAAU,EACV,QAAgB;QAEhB,gFAAgF;QAChF,+EAA+E;QAC/E,+EAA+E;QAC/E,gFAAgF;QAChF,eAAe;QACf,MAAM,IAAI,GAAG,0BAA0B,CAAA;QACvC,MAAM,MAAM,GAAG,GAAG,CAAA,IAAI,IAAI,CAAC,iBAAiB,oBAAoB,EAAE,MAAM,IAAI,CAAC,iBAAiB,MAAM,QAAQ,GAAG,CAAA;QAC/G,MAAM,IAAI,CAAC,EAAE;aACV,MAAM,CAAC,IAAI,CAAC;aACZ,GAAG,CAAC;YACH,iBAAiB,EAAE,GAAG,CAAA,aAAa,MAAM,SAAS,IAAI,CAAC,iBAAiB,SAAS,EAAE,MAAM;YACzF,YAAY,EAAE,GAAG,CAAA,aAAa,MAAM,SAAS,IAAI,CAAC,YAAY,iBAAiB,KAAK,CAAC,WAAW,EAAE;YAClG,aAAa,EAAE,GAAG,CAAA,aAAa,MAAM,SAAS,IAAI,CAAC,aAAa,iBAAiB,KAAK,CAAC,YAAY,EAAE;YACrG,aAAa,EAAE,GAAG,CAAA,aAAa,MAAM,SAAS,IAAI,CAAC,aAAa,iBAAiB;SAClF,CAAC;aACD,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,CAAA;IACpE,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,WAAmB,EAAE,EAAU,EAAE,OAAgB;QAChE,MAAM,IAAI,CAAC,EAAE;aACV,MAAM,CAAC,0BAA0B,CAAC;aAClC,GAAG,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;aACjC,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,0BAA0B,CAAC,EAAE,EAAE,EAAE,CAAC,EACrC,EAAE,CAAC,0BAA0B,CAAC,YAAY,EAAE,WAAW,CAAC,EACxD,MAAM,CAAC,0BAA0B,CAAC,UAAU,CAAC,CAC9C,CACF,CAAA;IACL,CAAC;IAED,KAAK,CAAC,UAAU,CACd,WAAmB,EACnB,MAA0B,EAC1B,EAAiB;QAEjB,MAAM,IAAI,GAAG,0BAA0B,CAAA;QACvC,wFAAwF;QACxF,MAAM,IAAI,CAAC,EAAE;aACV,MAAM,CAAC,IAAI,CAAC;aACZ,GAAG,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC;aACtB,KAAK,CACJ,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAC1F,CAAA;QACH,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAChB,MAAM,IAAI,CAAC,EAAE;iBACV,MAAM,CAAC,IAAI,CAAC;iBACZ,GAAG,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC;iBACtB,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,EACf,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC,EAClC,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,EACvB,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CACxB,CACF,CAAA;QACL,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,WAAmB,EAAE,EAAU,EAAE,EAAU;QAC1D,MAAM,IAAI,CAAC,EAAE;aACV,MAAM,CAAC,0BAA0B,CAAC;aAClC,GAAG,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;aACvB,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,0BAA0B,CAAC,EAAE,EAAE,EAAE,CAAC,EACrC,EAAE,CAAC,0BAA0B,CAAC,YAAY,EAAE,WAAW,CAAC,EACxD,MAAM,CAAC,0BAA0B,CAAC,UAAU,CAAC,CAC9C,CACF,CAAA;IACL,CAAC;CACF"}
@@ -0,0 +1,4 @@
1
+ ALTER TABLE "provider_api_keys" ADD COLUMN "enabled" integer DEFAULT 1 NOT NULL;--> statement-breakpoint
2
+ ALTER TABLE "provider_api_keys" ADD COLUMN "is_default" integer DEFAULT 0 NOT NULL;--> statement-breakpoint
3
+ ALTER TABLE "provider_subscription_tokens" ADD COLUMN "enabled" integer DEFAULT 1 NOT NULL;--> statement-breakpoint
4
+ ALTER TABLE "provider_subscription_tokens" ADD COLUMN "is_default" integer DEFAULT 0 NOT NULL;