@sprinterai/supabase 0.7.1 → 0.9.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.
Files changed (37) hide show
  1. package/dist/index.d.ts +1 -1
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +1 -1
  4. package/dist/index.js.map +1 -1
  5. package/dist/stores/api-key-store.d.ts +27 -0
  6. package/dist/stores/api-key-store.d.ts.map +1 -0
  7. package/dist/stores/api-key-store.js +116 -0
  8. package/dist/stores/api-key-store.js.map +1 -0
  9. package/dist/stores/audit-store.d.ts +12 -0
  10. package/dist/stores/audit-store.d.ts.map +1 -0
  11. package/dist/stores/audit-store.js +85 -0
  12. package/dist/stores/audit-store.js.map +1 -0
  13. package/dist/stores/chat-store.d.ts +9 -1
  14. package/dist/stores/chat-store.d.ts.map +1 -1
  15. package/dist/stores/chat-store.js +94 -0
  16. package/dist/stores/chat-store.js.map +1 -1
  17. package/dist/stores/entity-mappers.d.ts +20 -0
  18. package/dist/stores/entity-mappers.d.ts.map +1 -0
  19. package/dist/stores/entity-mappers.js +53 -0
  20. package/dist/stores/entity-mappers.js.map +1 -0
  21. package/dist/stores/entity-store.d.ts +1 -0
  22. package/dist/stores/entity-store.d.ts.map +1 -1
  23. package/dist/stores/entity-store.js +16 -58
  24. package/dist/stores/entity-store.js.map +1 -1
  25. package/dist/stores/factory.d.ts +3 -1
  26. package/dist/stores/factory.d.ts.map +1 -1
  27. package/dist/stores/factory.js +4 -0
  28. package/dist/stores/factory.js.map +1 -1
  29. package/dist/stores/index.d.ts +3 -0
  30. package/dist/stores/index.d.ts.map +1 -1
  31. package/dist/stores/index.js +3 -0
  32. package/dist/stores/index.js.map +1 -1
  33. package/dist/stores/source-store.d.ts +2 -1
  34. package/dist/stores/source-store.d.ts.map +1 -1
  35. package/dist/stores/source-store.js +20 -5
  36. package/dist/stores/source-store.js.map +1 -1
  37. package/package.json +2 -2
package/dist/index.d.ts CHANGED
@@ -3,7 +3,7 @@ export { getClaims, getUserId, getUserPermissions, getPermissionsForRole, resolv
3
3
  export type { JwtClaims } from './auth/index.js';
4
4
  export { getTenantContext, getActiveTenantId, DEFAULT_TENANT_ID, DEFAULT_TENANT_SLUG, tenantUrl, ROLE_IDS, APP_TO_DB_ROLE, mapRoleSlug, isAdminRole, switchTenant, createTenant, addTenantMember, removeTenantMember, getTenantMembers, ensureUserProvisioned, } from './tenant/index.js';
5
5
  export type { AppRole } from './tenant/index.js';
6
- export { SupabaseEntityStore, SupabaseAgentStore, SupabaseChatStore, SupabaseTenantStore, SupabaseToolStore, toToolRun, toToolSession, SupabaseTaskStore, SupabaseMemoryStore, SupabaseViewStore, SupabaseActivityStore, getDateLabel, groupActivities, SupabaseCriteriaSetStore, SupabaseResponseStore, SupabaseWorkflowRunStore, SupabaseMemberStore, SupabaseAdminStore, SupabaseDocumentStore, SupabaseNavConfigStore, SupabaseThemeStore, SupabaseCostStore, SupabaseCommentStore, SupabaseNotificationStore, SupabaseShareStore, SupabaseSkillStore, SupabaseSourceStore, SupabaseTemplateStore, SupabaseFavoritesStore, SupabaseRecentViewStore, SupabaseExtractionStore, SupabaseApprovalStore, SupabaseWebhookEndpointStore, SupabaseToolDefinitionStore, SupabaseEmbedStore, createSupabaseStores, } from './stores/index.js';
6
+ export { SupabaseEntityStore, SupabaseAgentStore, SupabaseChatStore, SupabaseTenantStore, SupabaseToolStore, toToolRun, toToolSession, SupabaseTaskStore, SupabaseMemoryStore, SupabaseViewStore, SupabaseActivityStore, getDateLabel, groupActivities, SupabaseCriteriaSetStore, SupabaseResponseStore, SupabaseWorkflowRunStore, SupabaseMemberStore, SupabaseAdminStore, SupabaseDocumentStore, SupabaseNavConfigStore, SupabaseThemeStore, SupabaseCostStore, SupabaseCommentStore, SupabaseNotificationStore, SupabaseShareStore, SupabaseSkillStore, SupabaseSourceStore, SupabaseTemplateStore, SupabaseFavoritesStore, SupabaseRecentViewStore, SupabaseExtractionStore, SupabaseApprovalStore, SupabaseWebhookEndpointStore, SupabaseToolDefinitionStore, SupabaseEmbedStore, SupabaseAuditStore, SupabaseApiKeyStore, generateApiKey, hashApiKey, createSupabaseStores, } from './stores/index.js';
7
7
  export type { SupabaseStores } from './stores/index.js';
8
8
  export { getResolvedNavConfig, getResolvedTheme } from './resolvers.js';
9
9
  export { createRealtimeChannel } from './realtime/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAGvF,OAAO,EACL,SAAS,EACT,SAAS,EACT,kBAAkB,EAClB,qBAAqB,EACrB,yBAAyB,EACzB,WAAW,EACX,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,kBAAkB,GACnB,MAAM,QAAQ,CAAC;AAChB,YAAY,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAGxC,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,SAAS,EACT,QAAQ,EACR,cAAc,EACd,WAAW,EACX,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,qBAAqB,GACtB,MAAM,UAAU,CAAC;AAClB,YAAY,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAGxC,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,SAAS,EACT,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,qBAAqB,EACrB,YAAY,EACZ,eAAe,EACf,wBAAwB,EACxB,qBAAqB,EACrB,wBAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,yBAAyB,EACzB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,EACvB,uBAAuB,EACvB,qBAAqB,EACrB,4BAA4B,EAC5B,2BAA2B,EAC3B,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,UAAU,CAAC;AAClB,YAAY,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAG/C,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAGrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,YAAY,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAGzD,YAAY,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAGnD,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAGvF,OAAO,EACL,SAAS,EACT,SAAS,EACT,kBAAkB,EAClB,qBAAqB,EACrB,yBAAyB,EACzB,WAAW,EACX,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,kBAAkB,GACnB,MAAM,QAAQ,CAAC;AAChB,YAAY,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAGxC,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,SAAS,EACT,QAAQ,EACR,cAAc,EACd,WAAW,EACX,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,qBAAqB,GACtB,MAAM,UAAU,CAAC;AAClB,YAAY,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAGxC,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,SAAS,EACT,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,qBAAqB,EACrB,YAAY,EACZ,eAAe,EACf,wBAAwB,EACxB,qBAAqB,EACrB,wBAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,yBAAyB,EACzB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,EACvB,uBAAuB,EACvB,qBAAqB,EACrB,4BAA4B,EAC5B,2BAA2B,EAC3B,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,cAAc,EACd,UAAU,EACV,oBAAoB,GACrB,MAAM,UAAU,CAAC;AAClB,YAAY,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAG/C,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAGrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,YAAY,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAGzD,YAAY,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAGnD,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC"}
package/dist/index.js CHANGED
@@ -5,7 +5,7 @@ export { getClaims, getUserId, getUserPermissions, getPermissionsForRole, resolv
5
5
  // ─── Tenant ─────────────────────────────────────────────────
6
6
  export { getTenantContext, getActiveTenantId, DEFAULT_TENANT_ID, DEFAULT_TENANT_SLUG, tenantUrl, ROLE_IDS, APP_TO_DB_ROLE, mapRoleSlug, isAdminRole, switchTenant, createTenant, addTenantMember, removeTenantMember, getTenantMembers, ensureUserProvisioned, } from './tenant/index.js';
7
7
  // ─── Stores ─────────────────────────────────────────────────
8
- export { SupabaseEntityStore, SupabaseAgentStore, SupabaseChatStore, SupabaseTenantStore, SupabaseToolStore, toToolRun, toToolSession, SupabaseTaskStore, SupabaseMemoryStore, SupabaseViewStore, SupabaseActivityStore, getDateLabel, groupActivities, SupabaseCriteriaSetStore, SupabaseResponseStore, SupabaseWorkflowRunStore, SupabaseMemberStore, SupabaseAdminStore, SupabaseDocumentStore, SupabaseNavConfigStore, SupabaseThemeStore, SupabaseCostStore, SupabaseCommentStore, SupabaseNotificationStore, SupabaseShareStore, SupabaseSkillStore, SupabaseSourceStore, SupabaseTemplateStore, SupabaseFavoritesStore, SupabaseRecentViewStore, SupabaseExtractionStore, SupabaseApprovalStore, SupabaseWebhookEndpointStore, SupabaseToolDefinitionStore, SupabaseEmbedStore, createSupabaseStores, } from './stores/index.js';
8
+ export { SupabaseEntityStore, SupabaseAgentStore, SupabaseChatStore, SupabaseTenantStore, SupabaseToolStore, toToolRun, toToolSession, SupabaseTaskStore, SupabaseMemoryStore, SupabaseViewStore, SupabaseActivityStore, getDateLabel, groupActivities, SupabaseCriteriaSetStore, SupabaseResponseStore, SupabaseWorkflowRunStore, SupabaseMemberStore, SupabaseAdminStore, SupabaseDocumentStore, SupabaseNavConfigStore, SupabaseThemeStore, SupabaseCostStore, SupabaseCommentStore, SupabaseNotificationStore, SupabaseShareStore, SupabaseSkillStore, SupabaseSourceStore, SupabaseTemplateStore, SupabaseFavoritesStore, SupabaseRecentViewStore, SupabaseExtractionStore, SupabaseApprovalStore, SupabaseWebhookEndpointStore, SupabaseToolDefinitionStore, SupabaseEmbedStore, SupabaseAuditStore, SupabaseApiKeyStore, generateApiKey, hashApiKey, createSupabaseStores, } from './stores/index.js';
9
9
  // ─── Resolvers ─────────────────────────────────────────────
10
10
  export { getResolvedNavConfig, getResolvedTheme } from './resolvers.js';
11
11
  // ─── Realtime ───────────────────────────────────────────────
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAEvF,+DAA+D;AAC/D,OAAO,EACL,SAAS,EACT,SAAS,EACT,kBAAkB,EAClB,qBAAqB,EACrB,yBAAyB,EACzB,WAAW,EACX,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,kBAAkB,GACnB,MAAM,QAAQ,CAAC;AAGhB,+DAA+D;AAC/D,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,SAAS,EACT,QAAQ,EACR,cAAc,EACd,WAAW,EACX,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,qBAAqB,GACtB,MAAM,UAAU,CAAC;AAGlB,+DAA+D;AAC/D,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,SAAS,EACT,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,qBAAqB,EACrB,YAAY,EACZ,eAAe,EACf,wBAAwB,EACxB,qBAAqB,EACrB,wBAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,yBAAyB,EACzB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,EACvB,uBAAuB,EACvB,qBAAqB,EACrB,4BAA4B,EAC5B,2BAA2B,EAC3B,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,UAAU,CAAC;AAGlB,8DAA8D;AAC9D,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAErE,+DAA+D;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAEvF,+DAA+D;AAC/D,OAAO,EACL,SAAS,EACT,SAAS,EACT,kBAAkB,EAClB,qBAAqB,EACrB,yBAAyB,EACzB,WAAW,EACX,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,kBAAkB,GACnB,MAAM,QAAQ,CAAC;AAGhB,+DAA+D;AAC/D,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,SAAS,EACT,QAAQ,EACR,cAAc,EACd,WAAW,EACX,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,qBAAqB,GACtB,MAAM,UAAU,CAAC;AAGlB,+DAA+D;AAC/D,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,SAAS,EACT,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,qBAAqB,EACrB,YAAY,EACZ,eAAe,EACf,wBAAwB,EACxB,qBAAqB,EACrB,wBAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,yBAAyB,EACzB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,EACvB,uBAAuB,EACvB,qBAAqB,EACrB,4BAA4B,EAC5B,2BAA2B,EAC3B,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,cAAc,EACd,UAAU,EACV,oBAAoB,GACrB,MAAM,UAAU,CAAC;AAGlB,8DAA8D;AAC9D,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAErE,+DAA+D;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,27 @@
1
+ import type { ApiKeyStore, ApiKeyCreateInput, ApiKeyRecord } from '@sprinterai/core';
2
+ import type { SupabaseClient } from '@supabase/supabase-js';
3
+ import type { Database } from '../generated/database-types.js';
4
+ /**
5
+ * Supabase-backed implementation of ApiKeyStore.
6
+ *
7
+ * Pass an admin/service-role client for `validateApiKey` so it can look up keys
8
+ * across all tenants without RLS filtering. If omitted, the regular client is used
9
+ * (which requires the caller to have SELECT access via RLS).
10
+ */
11
+ export declare class SupabaseApiKeyStore implements ApiKeyStore {
12
+ private client;
13
+ private adminClient?;
14
+ constructor(client: SupabaseClient<Database>, adminClient?: SupabaseClient<Database> | undefined);
15
+ listApiKeys(tenantId: string): Promise<ApiKeyRecord[]>;
16
+ createApiKey(tenantId: string, input: ApiKeyCreateInput, createdBy: string): Promise<{
17
+ record: ApiKeyRecord;
18
+ plainKey: string;
19
+ }>;
20
+ revokeApiKey(tenantId: string, keyId: string): Promise<void>;
21
+ validateApiKey(keyHash: string): Promise<ApiKeyRecord | null>;
22
+ }
23
+ /** Generate a random API key string with `sk_` prefix. */
24
+ export declare function generateApiKey(): string;
25
+ /** Hash an API key with SHA-256 for storage. Returns a 64-char hex digest. */
26
+ export declare function hashApiKey(key: string): Promise<string>;
27
+ //# sourceMappingURL=api-key-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-key-store.d.ts","sourceRoot":"","sources":["../../src/stores/api-key-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAG5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAoB5D;;;;;;GAMG;AACH,qBAAa,mBAAoB,YAAW,WAAW;IAEnD,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,WAAW,CAAC;gBADZ,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,EAChC,WAAW,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,YAAA;IAG1C,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAYtD,YAAY,CAChB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,iBAAiB,EACxB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC;QAAE,MAAM,EAAE,YAAY,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAuBhD,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAc5D,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;CA2BpE;AAED,0DAA0D;AAC1D,wBAAgB,cAAc,IAAI,MAAM,CAOvC;AAED,8EAA8E;AAC9E,wBAAsB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAM7D"}
@@ -0,0 +1,116 @@
1
+ function toApiKeyRecord(row) {
2
+ return {
3
+ id: row.id,
4
+ tenant_id: row.tenant_id,
5
+ name: row.name,
6
+ key_hash: row.key_hash,
7
+ key_prefix: row.key_prefix,
8
+ scopes: row.scopes ?? [],
9
+ last_used_at: row.last_used_at,
10
+ expires_at: row.expires_at,
11
+ revoked_at: row.revoked_at,
12
+ created_by: row.created_by,
13
+ created_at: row.created_at ?? new Date().toISOString(),
14
+ };
15
+ }
16
+ /**
17
+ * Supabase-backed implementation of ApiKeyStore.
18
+ *
19
+ * Pass an admin/service-role client for `validateApiKey` so it can look up keys
20
+ * across all tenants without RLS filtering. If omitted, the regular client is used
21
+ * (which requires the caller to have SELECT access via RLS).
22
+ */
23
+ export class SupabaseApiKeyStore {
24
+ client;
25
+ adminClient;
26
+ constructor(client, adminClient) {
27
+ this.client = client;
28
+ this.adminClient = adminClient;
29
+ }
30
+ async listApiKeys(tenantId) {
31
+ const { data, error } = await this.client
32
+ .from('api_keys')
33
+ .select('*')
34
+ .eq('tenant_id', tenantId)
35
+ .is('revoked_at', null)
36
+ .order('created_at', { ascending: false });
37
+ if (error)
38
+ throw error;
39
+ return (data ?? []).map(toApiKeyRecord);
40
+ }
41
+ async createApiKey(tenantId, input, createdBy) {
42
+ const plainKey = generateApiKey();
43
+ const keyHash = await hashApiKey(plainKey);
44
+ const keyPrefix = plainKey.slice(0, 8);
45
+ const { data, error } = await this.client
46
+ .from('api_keys')
47
+ .insert({
48
+ tenant_id: tenantId,
49
+ name: input.name,
50
+ key_hash: keyHash,
51
+ key_prefix: keyPrefix,
52
+ scopes: input.scopes,
53
+ expires_at: input.expiresAt ?? null,
54
+ created_by: createdBy,
55
+ })
56
+ .select('*')
57
+ .single();
58
+ if (error)
59
+ throw error;
60
+ return { record: toApiKeyRecord(data), plainKey };
61
+ }
62
+ async revokeApiKey(tenantId, keyId) {
63
+ const { data, error } = await this.client
64
+ .from('api_keys')
65
+ .update({ revoked_at: new Date().toISOString() })
66
+ .eq('id', keyId)
67
+ .eq('tenant_id', tenantId)
68
+ .select('*');
69
+ if (error)
70
+ throw error;
71
+ if (!data || data.length === 0) {
72
+ throw new Error('API key not found or no permission to revoke');
73
+ }
74
+ }
75
+ async validateApiKey(keyHash) {
76
+ const client = this.adminClient ?? this.client;
77
+ const { data, error } = await client
78
+ .from('api_keys')
79
+ .select('*')
80
+ .eq('key_hash', keyHash)
81
+ .is('revoked_at', null)
82
+ .maybeSingle();
83
+ if (error)
84
+ throw error;
85
+ if (!data)
86
+ return null;
87
+ const record = toApiKeyRecord(data);
88
+ if (record.expires_at && new Date(record.expires_at) < new Date()) {
89
+ return null;
90
+ }
91
+ // Fire-and-forget: update last_used_at (errors silently ignored)
92
+ void client
93
+ .from('api_keys')
94
+ .update({ last_used_at: new Date().toISOString() })
95
+ .eq('id', record.id);
96
+ return record;
97
+ }
98
+ }
99
+ /** Generate a random API key string with `sk_` prefix. */
100
+ export function generateApiKey() {
101
+ const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
102
+ let result = 'sk_';
103
+ for (let i = 0; i < 40; i++) {
104
+ result += chars.charAt(Math.floor(Math.random() * chars.length));
105
+ }
106
+ return result;
107
+ }
108
+ /** Hash an API key with SHA-256 for storage. Returns a 64-char hex digest. */
109
+ export async function hashApiKey(key) {
110
+ const encoder = new TextEncoder();
111
+ const data = encoder.encode(key);
112
+ const hashBuffer = await crypto.subtle.digest('SHA-256', data);
113
+ const hashArray = Array.from(new Uint8Array(hashBuffer));
114
+ return hashArray.map((b) => b.toString(16).padStart(2, '0')).join('');
115
+ }
116
+ //# sourceMappingURL=api-key-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-key-store.js","sourceRoot":"","sources":["../../src/stores/api-key-store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import type { AuditLogRecord, AuditStore, AuditLogFilters, ListAuditLogsResult } from '@sprinterai/core';
2
+ import type { SupabaseClient } from '@supabase/supabase-js';
3
+ import type { Database } from '../generated/database-types.js';
4
+ /** Supabase-backed implementation of AuditStore using the audit_logs table. */
5
+ export declare class SupabaseAuditStore implements AuditStore {
6
+ private client;
7
+ constructor(client: SupabaseClient<Database>);
8
+ listAuditLogs(tenantId: string, filters?: AuditLogFilters): Promise<ListAuditLogsResult>;
9
+ getAuditLog(tenantId: string, id: string): Promise<AuditLogRecord | null>;
10
+ createAuditLog(tenantId: string, entry: Omit<AuditLogRecord, 'id' | 'tenant_id' | 'created_at'>): Promise<AuditLogRecord>;
11
+ }
12
+ //# sourceMappingURL=audit-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audit-store.d.ts","sourceRoot":"","sources":["../../src/stores/audit-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,UAAU,EACV,eAAe,EACf,mBAAmB,EACpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAG5D,OAAO,KAAK,EAAE,QAAQ,EAAQ,MAAM,6BAA6B,CAAC;AAkBlE,+EAA+E;AAC/E,qBAAa,kBAAmB,YAAW,UAAU;IACvC,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC;IAE9C,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,mBAAmB,CAAC;IA0CxF,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAYzE,cAAc,CAClB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,GAAG,WAAW,GAAG,YAAY,CAAC,GAC7D,OAAO,CAAC,cAAc,CAAC;CAiB3B"}
@@ -0,0 +1,85 @@
1
+ /** Map an audit_logs row to an AuditLogRecord. */
2
+ function toAuditLogRecord(row) {
3
+ return {
4
+ id: String(row.id),
5
+ tenant_id: row.tenant_id ?? '',
6
+ user_id: row.changed_by,
7
+ action: row.operation,
8
+ resource_type: row.table_name,
9
+ resource_id: row.resource_id,
10
+ details: (row.new_data ?? row.old_data ?? {}), // JSONB boundary
11
+ ip_address: null,
12
+ user_agent: null,
13
+ created_at: row.timestamp,
14
+ };
15
+ }
16
+ /** Supabase-backed implementation of AuditStore using the audit_logs table. */
17
+ export class SupabaseAuditStore {
18
+ client;
19
+ constructor(client) {
20
+ this.client = client;
21
+ }
22
+ async listAuditLogs(tenantId, filters) {
23
+ const limit = filters?.limit ?? 50;
24
+ const offset = filters?.offset ?? 0;
25
+ let countQ = this.client
26
+ .from('audit_logs')
27
+ .select('id', { count: 'exact', head: true })
28
+ .eq('tenant_id', tenantId);
29
+ let dataQ = this.client
30
+ .from('audit_logs')
31
+ .select('*')
32
+ .eq('tenant_id', tenantId)
33
+ .order('timestamp', { ascending: false })
34
+ .range(offset, offset + limit - 1);
35
+ if (filters?.resourceType) {
36
+ countQ = countQ.eq('table_name', filters.resourceType);
37
+ dataQ = dataQ.eq('table_name', filters.resourceType);
38
+ }
39
+ if (filters?.resourceId) {
40
+ countQ = countQ.eq('resource_id', filters.resourceId);
41
+ dataQ = dataQ.eq('resource_id', filters.resourceId);
42
+ }
43
+ if (filters?.userId) {
44
+ countQ = countQ.eq('changed_by', filters.userId);
45
+ dataQ = dataQ.eq('changed_by', filters.userId);
46
+ }
47
+ if (filters?.operation) {
48
+ countQ = countQ.eq('operation', filters.operation);
49
+ dataQ = dataQ.eq('operation', filters.operation);
50
+ }
51
+ const [{ count }, { data, error }] = await Promise.all([countQ, dataQ]);
52
+ if (error)
53
+ throw error;
54
+ return { logs: (data ?? []).map(toAuditLogRecord), total: count ?? 0 };
55
+ }
56
+ async getAuditLog(tenantId, id) {
57
+ const { data, error } = await this.client
58
+ .from('audit_logs')
59
+ .select('*')
60
+ .eq('tenant_id', tenantId)
61
+ .eq('id', Number(id))
62
+ .maybeSingle();
63
+ if (error)
64
+ throw error;
65
+ return data ? toAuditLogRecord(data) : null;
66
+ }
67
+ async createAuditLog(tenantId, entry) {
68
+ const { data, error } = await this.client
69
+ .from('audit_logs')
70
+ .insert({
71
+ tenant_id: tenantId,
72
+ changed_by: entry.user_id,
73
+ operation: entry.action,
74
+ table_name: entry.resource_type,
75
+ resource_id: entry.resource_id,
76
+ new_data: entry.details, // JSONB boundary
77
+ })
78
+ .select('*')
79
+ .single();
80
+ if (error)
81
+ throw error;
82
+ return toAuditLogRecord(data);
83
+ }
84
+ }
85
+ //# sourceMappingURL=audit-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audit-store.js","sourceRoot":"","sources":["../../src/stores/audit-store.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { ChatStore, MessageRecord, ConversationListItem, SendMessageInput } from '@sprinterai/core';
1
+ import type { ChatParticipant, ChatStore, MessageRecord, ConversationListItem, ParticipantRole, ParticipantType, SendMessageInput } from '@sprinterai/core';
2
2
  import type { SupabaseClient } from '@supabase/supabase-js';
3
3
  import type { Database } from '../generated/database-types.js';
4
4
  /** Supabase-backed implementation of ChatStore. */
@@ -23,5 +23,13 @@ export declare class SupabaseChatStore implements ChatStore {
23
23
  getChatsByUser(userId: string, options?: {
24
24
  limit?: number;
25
25
  }): Promise<ConversationListItem[]>;
26
+ getParticipants(chatId: string): Promise<ChatParticipant[]>;
27
+ addParticipant(chatId: string, tenantId: string, participantId: string, participantType: ParticipantType, options?: {
28
+ role?: ParticipantRole;
29
+ autoRespond?: boolean;
30
+ }): Promise<ChatParticipant>;
31
+ removeParticipant(chatId: string, participantId: string): Promise<void>;
32
+ markAsRead(chatId: string, userId: string): Promise<void>;
33
+ getUnreadCount(userId: string): Promise<number>;
26
34
  }
27
35
  //# sourceMappingURL=chat-store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"chat-store.d.ts","sourceRoot":"","sources":["../../src/stores/chat-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EAET,aAAa,EACb,oBAAoB,EACpB,gBAAgB,EACjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAG5D,OAAO,KAAK,EAAE,QAAQ,EAAQ,MAAM,6BAA6B,CAAC;AAuBlE,mDAAmD;AACnD,qBAAa,iBAAkB,YAAW,SAAS;IACrC,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC;IAE9C,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC;IAgD7D,UAAU,CAAC,OAAO,EAAE;QACxB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,IAAI,GAAG,QAAQ,GAAG,OAAO,CAAC;QACpC,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAyB3B,WAAW,CACf,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QACR,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GACA,OAAO,CAAC,aAAa,EAAE,CAAC;IAkBrB,WAAW,CACf,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,gBAAgB,GAAG;QACxB,UAAU,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;QACxC,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,GACA,OAAO,CAAC,aAAa,CAAC;IAwBnB,cAAc,CAClB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAC3B,OAAO,CAAC,oBAAoB,EAAE,CAAC;CAgCnC"}
1
+ {"version":3,"file":"chat-store.d.ts","sourceRoot":"","sources":["../../src/stores/chat-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,SAAS,EAET,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,eAAe,EACf,gBAAgB,EACjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAG5D,OAAO,KAAK,EAAE,QAAQ,EAAQ,MAAM,6BAA6B,CAAC;AAuClE,mDAAmD;AACnD,qBAAa,iBAAkB,YAAW,SAAS;IACrC,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC;IAE9C,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC;IAgD7D,UAAU,CAAC,OAAO,EAAE;QACxB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,IAAI,GAAG,QAAQ,GAAG,OAAO,CAAC;QACpC,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAyB3B,WAAW,CACf,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QACR,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GACA,OAAO,CAAC,aAAa,EAAE,CAAC;IAkBrB,WAAW,CACf,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,gBAAgB,GAAG;QACxB,UAAU,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;QACxC,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,GACA,OAAO,CAAC,aAAa,CAAC;IAwBnB,cAAc,CAClB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAC3B,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAmC5B,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAU3D,cAAc,CAClB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,EACrB,eAAe,EAAE,eAAe,EAChC,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,eAAe,CAAC;QAAC,WAAW,CAAC,EAAE,OAAO,CAAA;KAAE,GAC1D,OAAO,CAAC,eAAe,CAAC;IAkBrB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYvE,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWzD,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAsCtD"}
@@ -15,6 +15,20 @@ function toMessageRecord(row) {
15
15
  function toChatType(dbChatType) {
16
16
  return dbChatType || 'ai';
17
17
  }
18
+ /** Map DB chat_participants row to ChatParticipant. */
19
+ function toParticipantRecord(row) {
20
+ return {
21
+ id: row.id,
22
+ chat_id: row.chat_id,
23
+ tenant_id: row.tenant_id,
24
+ participant_type: row.participant_type ?? 'user',
25
+ participant_id: row.participant_id,
26
+ role: row.role ?? 'member',
27
+ auto_respond: Boolean(row.auto_respond),
28
+ joined_at: row.joined_at,
29
+ last_read_at: row.last_read_at,
30
+ };
31
+ }
18
32
  /** Supabase-backed implementation of ChatStore. */
19
33
  export class SupabaseChatStore {
20
34
  client;
@@ -155,5 +169,85 @@ export class SupabaseChatStore {
155
169
  unread_count: 0,
156
170
  }));
157
171
  }
172
+ // ─── Participant management ──────────────────────────────────────────────────
173
+ async getParticipants(chatId) {
174
+ const { data, error } = await this.client
175
+ .from('chat_participants')
176
+ .select('*')
177
+ .eq('chat_id', chatId);
178
+ if (error)
179
+ throw error;
180
+ return (data ?? []).map(toParticipantRecord);
181
+ }
182
+ async addParticipant(chatId, tenantId, participantId, participantType, options) {
183
+ const { data, error } = await this.client
184
+ .from('chat_participants')
185
+ .insert({
186
+ chat_id: chatId,
187
+ tenant_id: tenantId,
188
+ participant_id: participantId,
189
+ participant_type: participantType,
190
+ role: options?.role ?? 'member',
191
+ auto_respond: options?.autoRespond ?? participantType === 'agent',
192
+ })
193
+ .select('*')
194
+ .single();
195
+ if (error)
196
+ throw error;
197
+ return toParticipantRecord(data);
198
+ }
199
+ async removeParticipant(chatId, participantId) {
200
+ const { error } = await this.client
201
+ .from('chat_participants')
202
+ .delete()
203
+ .eq('chat_id', chatId)
204
+ .eq('participant_id', participantId);
205
+ if (error)
206
+ throw error;
207
+ }
208
+ // ─── Unread tracking ─────────────────────────────────────────────────────────
209
+ async markAsRead(chatId, userId) {
210
+ const { error } = await this.client
211
+ .from('chat_participants')
212
+ .update({ last_read_at: new Date().toISOString() })
213
+ .eq('chat_id', chatId)
214
+ .eq('participant_type', 'user')
215
+ .eq('participant_id', userId);
216
+ if (error)
217
+ throw error;
218
+ }
219
+ async getUnreadCount(userId) {
220
+ const { data: participations, error } = await this.client
221
+ .from('chat_participants')
222
+ .select('chat_id, last_read_at')
223
+ .eq('participant_type', 'user')
224
+ .eq('participant_id', userId);
225
+ if (error || !participations || participations.length === 0)
226
+ return 0;
227
+ // Find oldest last_read_at to bound the messages query
228
+ const oldestReadAt = participations.reduce((oldest, p) => {
229
+ return p.last_read_at < oldest ? p.last_read_at : oldest;
230
+ }, participations[0].last_read_at);
231
+ const chatIds = participations.map((p) => p.chat_id);
232
+ const { data: messages } = await this.client
233
+ .from('messages')
234
+ .select('chat_id, created_at, sender_type, sender_id')
235
+ .in('chat_id', chatIds)
236
+ .gt('created_at', oldestReadAt)
237
+ .limit(1000);
238
+ if (!messages || messages.length === 0)
239
+ return 0;
240
+ const readAtMap = new Map(participations.map((p) => [p.chat_id, p.last_read_at]));
241
+ const unreadChatIds = new Set();
242
+ for (const msg of messages) {
243
+ if (msg.sender_type === 'user' && msg.sender_id === userId)
244
+ continue;
245
+ const lastRead = readAtMap.get(msg.chat_id);
246
+ if (lastRead && msg.created_at > lastRead) {
247
+ unreadChatIds.add(msg.chat_id);
248
+ }
249
+ }
250
+ return unreadChatIds.size;
251
+ }
158
252
  }
159
253
  //# sourceMappingURL=chat-store.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chat-store.js","sourceRoot":"","sources":["../../src/stores/chat-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-store.js","sourceRoot":"","sources":["../../src/stores/chat-store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import type { EntityRecord, EntityTypeRecord } from '@sprinterai/core';
2
+ import type { Database } from '../generated/database-types.js';
3
+ type EntitiesRow = Database['public']['Tables']['entities']['Row'];
4
+ type EntityTypesRow = Database['public']['Tables']['entity_types']['Row'];
5
+ /** Maps a raw Supabase entity_types row to EntityTypeRecord. */
6
+ export declare function mapEntityTypeRow(row: EntityTypesRow): EntityTypeRecord;
7
+ /**
8
+ * Maps a raw Supabase entities row to an EntityRecord.
9
+ *
10
+ * Handles JSONB boundary casts for `content` and `metadata`, applies default
11
+ * values for nullable columns (`tags` → `[]`, `visibility` → `'tenant'`), and
12
+ * optionally attaches a pre-fetched entity type.
13
+ *
14
+ * @example
15
+ * const { data } = await supabase.from('entities').select('*').eq('id', id).single();
16
+ * return mapEntityRow(data);
17
+ */
18
+ export declare function mapEntityRow(row: EntitiesRow, entityType?: EntityTypesRow | null): EntityRecord;
19
+ export {};
20
+ //# sourceMappingURL=entity-mappers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity-mappers.d.ts","sourceRoot":"","sources":["../../src/stores/entity-mappers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEvE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAE5D,KAAK,WAAW,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC;AACnE,KAAK,cAAc,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,CAAC,KAAK,CAAC,CAAC;AAE1E,gEAAgE;AAChE,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,cAAc,GAAG,gBAAgB,CAkBtE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,WAAW,EAAE,UAAU,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,YAAY,CAoB/F"}
@@ -0,0 +1,53 @@
1
+ /** Maps a raw Supabase entity_types row to EntityTypeRecord. */
2
+ export function mapEntityTypeRow(row) {
3
+ return {
4
+ id: row.id,
5
+ tenant_id: row.tenant_id,
6
+ slug: row.slug,
7
+ name: row.name,
8
+ description: row.description,
9
+ icon: row.icon,
10
+ color: row.color,
11
+ json_schema: row.json_schema, // JSONB boundary
12
+ visibility: row.visibility ?? 'tenant',
13
+ created_at: row.created_at,
14
+ updated_at: row.updated_at,
15
+ config: row.config, // JSONB boundary
16
+ schemaJson: row.json_schema, // JSONB boundary
17
+ behaviorJson: row.behavior_json, // JSONB boundary
18
+ uiJson: row.ui_json, // JSONB boundary
19
+ };
20
+ }
21
+ /**
22
+ * Maps a raw Supabase entities row to an EntityRecord.
23
+ *
24
+ * Handles JSONB boundary casts for `content` and `metadata`, applies default
25
+ * values for nullable columns (`tags` → `[]`, `visibility` → `'tenant'`), and
26
+ * optionally attaches a pre-fetched entity type.
27
+ *
28
+ * @example
29
+ * const { data } = await supabase.from('entities').select('*').eq('id', id).single();
30
+ * return mapEntityRow(data);
31
+ */
32
+ export function mapEntityRow(row, entityType) {
33
+ return {
34
+ id: row.id,
35
+ tenant_id: row.tenant_id,
36
+ slug: row.slug,
37
+ entity_type_id: row.entity_type_id,
38
+ title: row.title,
39
+ description: row.description,
40
+ content: row.content, // JSONB boundary
41
+ metadata: row.metadata, // JSONB boundary
42
+ owner_id: row.owner_id,
43
+ parent_id: row.parent_id,
44
+ image_url: row.image_url,
45
+ tags: row.tags ?? [],
46
+ visibility: (row.visibility ?? 'tenant'),
47
+ share_token: row.share_token,
48
+ created_at: row.created_at,
49
+ updated_at: row.updated_at,
50
+ entity_type: entityType ? mapEntityTypeRow(entityType) : undefined,
51
+ };
52
+ }
53
+ //# sourceMappingURL=entity-mappers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity-mappers.js","sourceRoot":"","sources":["../../src/stores/entity-mappers.ts"],"names":[],"mappings":"AAOA,gEAAgE;AAChE,MAAM,UAAU,gBAAgB,CAAC,GAAmB;IAClD,OAAO;QACL,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,WAAW,EAAE,GAAG,CAAC,WAA6C,EAAE,iBAAiB;QACjF,UAAU,EAAE,GAAG,CAAC,UAAU,IAAI,QAAQ;QACtC,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,MAAM,EAAE,GAAG,CAAC,MAAoC,EAAE,iBAAiB;QACnE,UAAU,EAAE,GAAG,CAAC,WAA6C,EAAE,iBAAiB;QAChF,YAAY,EAAE,GAAG,CAAC,aAAiD,EAAE,iBAAiB;QACtF,MAAM,EAAE,GAAG,CAAC,OAAqC,EAAE,iBAAiB;KACrE,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,YAAY,CAAC,GAAgB,EAAE,UAAkC;IAC/E,OAAO;QACL,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,cAAc,EAAE,GAAG,CAAC,cAAc;QAClC,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,OAAO,EAAE,GAAG,CAAC,OAAyC,EAAE,iBAAiB;QACzE,QAAQ,EAAE,GAAG,CAAC,QAA0C,EAAE,iBAAiB;QAC3E,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,EAAE;QACpB,UAAU,EAAE,CAAC,GAAG,CAAC,UAAU,IAAI,QAAQ,CAA+B;QACtE,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS;KACnE,CAAC;AACJ,CAAC"}
@@ -22,5 +22,6 @@ export declare class SupabaseEntityStore implements EntityStore {
22
22
  createRelation(fromId: string, toId: string, type: string): Promise<void>;
23
23
  getRelatedEntities(entityId: string): Promise<RelatedEntityWithRelation[]>;
24
24
  getEntityCounts(tenantId: string): Promise<Record<string, number>>;
25
+ deleteRelation(relationId: string): Promise<void>;
25
26
  }
26
27
  //# sourceMappingURL=entity-store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"entity-store.d.ts","sourceRoot":"","sources":["../../src/stores/entity-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,yBAAyB,EACzB,iBAAiB,EACjB,iBAAiB,EACjB,qBAAqB,EACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,KAAK,EAAE,QAAQ,EAAQ,MAAM,6BAA6B,CAAC;AA8DlE,qDAAqD;AACrD,qBAAa,mBAAoB,YAAW,WAAW;IACzC,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC;IAE9C,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAmBjE,eAAe,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAO9C,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAqBzE,gBAAgB,CACpB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,GAAG,WAAW,GAAG,YAAY,GAAG,YAAY,CAAC,CAAC,GACvF,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAmB7B,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUjD,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAYnD,cAAc,CAClB,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE;QACR,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GACA,OAAO,CAAC,YAAY,EAAE,CAAC;IAsBpB,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,YAAY,CAAC;IA6B7D,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,YAAY,CAAC;IA8BzE,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMvC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWzE,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,EAAE,CAAC;IAqD1E,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAiBzE"}
1
+ {"version":3,"file":"entity-store.d.ts","sourceRoot":"","sources":["../../src/stores/entity-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,yBAAyB,EACzB,iBAAiB,EACjB,iBAAiB,EACjB,qBAAqB,EACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,KAAK,EAAE,QAAQ,EAAQ,MAAM,6BAA6B,CAAC;AAWlE,qDAAqD;AACrD,qBAAa,mBAAoB,YAAW,WAAW;IACzC,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC;IAE9C,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAmBjE,eAAe,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAO9C,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAqBzE,gBAAgB,CACpB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,GAAG,WAAW,GAAG,YAAY,GAAG,YAAY,CAAC,CAAC,GACvF,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAmB7B,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUjD,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAYnD,cAAc,CAClB,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE;QACR,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GACA,OAAO,CAAC,YAAY,EAAE,CAAC;IAsBpB,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,YAAY,CAAC;IA6B7D,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,YAAY,CAAC;IA8BzE,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMvC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWzE,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,EAAE,CAAC;IAqD1E,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAkBlE,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAKxD"}
@@ -1,57 +1,10 @@
1
+ import { mapEntityRow, mapEntityTypeRow } from './entity-mappers.js';
1
2
  function slugify(text) {
2
3
  return text
3
4
  .toLowerCase()
4
5
  .replace(/[^a-z0-9]+/g, '-')
5
6
  .replace(/^-|-$/g, '');
6
7
  }
7
- /**
8
- * Map a DB entity_types row to the core EntityTypeRecord.
9
- * DB columns behavior_json/ui_json/config are Json; cast to their specific shapes.
10
- */
11
- function toEntityTypeRecord(row) {
12
- return {
13
- id: row.id,
14
- tenant_id: row.tenant_id,
15
- slug: row.slug,
16
- name: row.name,
17
- description: row.description,
18
- icon: row.icon,
19
- color: row.color,
20
- json_schema: row.json_schema, // Json -> Record<string, unknown>
21
- visibility: row.visibility ?? 'tenant',
22
- created_at: row.created_at,
23
- updated_at: row.updated_at,
24
- config: row.config, // Json -> EntityTypeConfig
25
- schemaJson: row.json_schema, // Json -> Record<string, unknown>
26
- behaviorJson: row.behavior_json, // Json -> EntityTypeBehaviorJson
27
- uiJson: row.ui_json, // Json -> EntityTypeUiJson
28
- };
29
- }
30
- /**
31
- * Map a DB entities row to the core EntityRecord.
32
- * DB columns content/metadata are Json; cast to Record<string, unknown>.
33
- */
34
- function toEntityRecord(row, entityType) {
35
- return {
36
- id: row.id,
37
- tenant_id: row.tenant_id,
38
- slug: row.slug,
39
- entity_type_id: row.entity_type_id,
40
- title: row.title,
41
- description: row.description,
42
- content: row.content, // Json -> Record<string, unknown>
43
- metadata: row.metadata, // Json -> Record<string, unknown>
44
- owner_id: row.owner_id,
45
- parent_id: row.parent_id,
46
- image_url: row.image_url,
47
- tags: row.tags ?? [],
48
- visibility: (row.visibility ?? 'tenant'),
49
- share_token: row.share_token,
50
- created_at: row.created_at,
51
- updated_at: row.updated_at,
52
- entity_type: entityType ? toEntityTypeRecord(entityType) : undefined,
53
- };
54
- }
55
8
  /** Supabase-backed implementation of EntityStore. */
56
9
  export class SupabaseEntityStore {
57
10
  client;
@@ -66,19 +19,19 @@ export class SupabaseEntityStore {
66
19
  .eq('slug', slugOrId)
67
20
  .maybeSingle();
68
21
  if (bySlug)
69
- return toEntityTypeRecord(bySlug);
22
+ return mapEntityTypeRow(bySlug);
70
23
  const { data: byId } = await this.client
71
24
  .from('entity_types')
72
25
  .select('*')
73
26
  .eq('id', slugOrId)
74
27
  .maybeSingle();
75
- return byId ? toEntityTypeRecord(byId) : null;
28
+ return byId ? mapEntityTypeRow(byId) : null;
76
29
  }
77
30
  async listEntityTypes() {
78
31
  const { data, error } = await this.client.from('entity_types').select('*').order('name');
79
32
  if (error)
80
33
  throw error;
81
- return (data ?? []).map(toEntityTypeRecord);
34
+ return (data ?? []).map(mapEntityTypeRow);
82
35
  }
83
36
  async createEntityType(input) {
84
37
  const { data, error } = await this.client
@@ -98,7 +51,7 @@ export class SupabaseEntityStore {
98
51
  .single();
99
52
  if (error)
100
53
  throw error;
101
- return toEntityTypeRecord(data);
54
+ return mapEntityTypeRow(data);
102
55
  }
103
56
  async updateEntityType(slugOrId, input) {
104
57
  // Resolve the entity type to get its id
@@ -117,7 +70,7 @@ export class SupabaseEntityStore {
117
70
  throw error;
118
71
  if (!data || data.length === 0)
119
72
  return null;
120
- return toEntityTypeRecord(data[0]);
73
+ return mapEntityTypeRow(data[0]);
121
74
  }
122
75
  async deleteEntityType(slugOrId) {
123
76
  // Resolve the entity type to get its id
@@ -138,7 +91,7 @@ export class SupabaseEntityStore {
138
91
  throw error;
139
92
  if (!data)
140
93
  return null;
141
- return toEntityRecord(data, data.entity_type);
94
+ return mapEntityRow(data, data.entity_type);
142
95
  }
143
96
  async searchEntities(query, options) {
144
97
  let q = this.client.from('entities').select('*');
@@ -155,7 +108,7 @@ export class SupabaseEntityStore {
155
108
  const { data, error } = await q;
156
109
  if (error)
157
110
  throw error;
158
- return (data ?? []).map((row) => toEntityRecord(row));
111
+ return (data ?? []).map((row) => mapEntityRow(row));
159
112
  }
160
113
  async createEntity(input) {
161
114
  // Look up entity type
@@ -180,7 +133,7 @@ export class SupabaseEntityStore {
180
133
  .single();
181
134
  if (error)
182
135
  throw error;
183
- return toEntityRecord(data);
136
+ return mapEntityRow(data);
184
137
  }
185
138
  async updateEntity(id, input) {
186
139
  const updates = {
@@ -212,7 +165,7 @@ export class SupabaseEntityStore {
212
165
  if (!data || data.length === 0) {
213
166
  throw new Error('Entity not found or no permission to update');
214
167
  }
215
- return toEntityRecord(data[0]);
168
+ return mapEntityRow(data[0]);
216
169
  }
217
170
  async deleteEntity(id) {
218
171
  const { error } = await this.client.from('entities').delete().eq('id', id);
@@ -272,7 +225,7 @@ export class SupabaseEntityStore {
272
225
  throw entErr;
273
226
  return (entities ?? []).map((e) => ({
274
227
  relation: relatedMap.get(e.id),
275
- entity: toEntityRecord(e, e.entity_type),
228
+ entity: mapEntityRow(e, e.entity_type),
276
229
  }));
277
230
  }
278
231
  async getEntityCounts(tenantId) {
@@ -291,5 +244,10 @@ export class SupabaseEntityStore {
291
244
  }
292
245
  return counts;
293
246
  }
247
+ async deleteRelation(relationId) {
248
+ const { error } = await this.client.from('entity_relations').delete().eq('id', relationId);
249
+ if (error)
250
+ throw error;
251
+ }
294
252
  }
295
253
  //# sourceMappingURL=entity-store.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"entity-store.js","sourceRoot":"","sources":["../../src/stores/entity-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entity-store.js","sourceRoot":"","sources":["../../src/stores/entity-store.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { EntityStore, AgentStore, ChatStore, TenantStore, ToolStore, TaskStore, MemoryStore, ViewStore, ActivityStore, CriteriaSetStore, ResponseStore, WorkflowRunStore, MemberStore, AdminStore, DocumentStore, CommentStore, NotificationStore, NavConfigStore, ThemeStore, CostStore, ShareStore, SkillStore, SourceStore, TemplateStore, ExtractionStore, ToolDefinitionStore, FeedbackStore, RecentViewStore, SharedContextStore, InboundStore, FavoritesStore, ApprovalStore, WebhookEndpointStore } from '@sprinterai/core';
1
+ import type { EntityStore, AgentStore, ChatStore, TenantStore, ToolStore, TaskStore, MemoryStore, ViewStore, ActivityStore, CriteriaSetStore, ResponseStore, WorkflowRunStore, MemberStore, AdminStore, DocumentStore, CommentStore, NotificationStore, NavConfigStore, ThemeStore, CostStore, ShareStore, SkillStore, SourceStore, TemplateStore, ExtractionStore, ToolDefinitionStore, FeedbackStore, RecentViewStore, SharedContextStore, InboundStore, FavoritesStore, ApprovalStore, WebhookEndpointStore, AuditStore, ApiKeyStore } from '@sprinterai/core';
2
2
  import type { SupabaseClient } from '@supabase/supabase-js';
3
3
  import type { Database } from '../generated/database-types.js';
4
4
  /** All store instances created from a single Supabase client. */
@@ -36,6 +36,8 @@ export interface SupabaseStores {
36
36
  favorites?: FavoritesStore;
37
37
  approvals?: ApprovalStore;
38
38
  webhookEndpoints?: WebhookEndpointStore;
39
+ audit?: AuditStore;
40
+ apiKeys?: ApiKeyStore;
39
41
  }
40
42
  /**
41
43
  * Create all Supabase store implementations from a single client.
@@ -1 +1 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/stores/factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,UAAU,EACV,SAAS,EACT,WAAW,EACX,SAAS,EACT,SAAS,EACT,WAAW,EACX,SAAS,EACT,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,UAAU,EACV,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,UAAU,EACV,SAAS,EACT,UAAU,EACV,UAAU,EACV,WAAW,EACX,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,cAAc,EACd,aAAa,EACb,oBAAoB,EACrB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAoC5D,iEAAiE;AACjE,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,WAAW,CAAC;IACtB,MAAM,EAAE,UAAU,CAAC;IACnB,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,WAAW,CAAC;IACpB,KAAK,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,SAAS,CAAC;IACjB,MAAM,EAAE,WAAW,CAAC;IACpB,KAAK,EAAE,SAAS,CAAC;IACjB,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAChC,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAChC,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,aAAa,CAAC,EAAE,iBAAiB,CAAC;IAClC,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,eAAe,CAAC,EAAE,mBAAmB,CAAC;IACtC,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,aAAa,CAAC,EAAE,kBAAkB,CAAC;IACnC,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,gBAAgB,CAAC,EAAE,oBAAoB,CAAC;CACzC;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,EAChC,WAAW,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,GACrC,cAAc,CAoChB"}
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/stores/factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,UAAU,EACV,SAAS,EACT,WAAW,EACX,SAAS,EACT,SAAS,EACT,WAAW,EACX,SAAS,EACT,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,UAAU,EACV,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,UAAU,EACV,SAAS,EACT,UAAU,EACV,UAAU,EACV,WAAW,EACX,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,UAAU,EACV,WAAW,EACZ,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAsC5D,iEAAiE;AACjE,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,WAAW,CAAC;IACtB,MAAM,EAAE,UAAU,CAAC;IACnB,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,WAAW,CAAC;IACpB,KAAK,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,SAAS,CAAC;IACjB,MAAM,EAAE,WAAW,CAAC;IACpB,KAAK,EAAE,SAAS,CAAC;IACjB,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAChC,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAChC,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,aAAa,CAAC,EAAE,iBAAiB,CAAC;IAClC,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,eAAe,CAAC,EAAE,mBAAmB,CAAC;IACtC,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,aAAa,CAAC,EAAE,kBAAkB,CAAC;IACnC,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,gBAAgB,CAAC,EAAE,oBAAoB,CAAC;IACxC,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,OAAO,CAAC,EAAE,WAAW,CAAC;CACvB;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,EAChC,WAAW,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,GACrC,cAAc,CAsChB"}
@@ -1,7 +1,9 @@
1
1
  import { SupabaseActivityStore } from './activity-store.js';
2
2
  import { SupabaseAdminStore } from './admin-store.js';
3
3
  import { SupabaseAgentStore } from './agent-store.js';
4
+ import { SupabaseApiKeyStore } from './api-key-store.js';
4
5
  import { SupabaseApprovalStore } from './approval-store.js';
6
+ import { SupabaseAuditStore } from './audit-store.js';
5
7
  import { SupabaseChatStore } from './chat-store.js';
6
8
  import { SupabaseCommentStore } from './comment-store.js';
7
9
  import { SupabaseCostStore } from './cost-store.js';
@@ -71,6 +73,8 @@ export function createSupabaseStores(client, adminClient) {
71
73
  favorites: new SupabaseFavoritesStore(client),
72
74
  approvals: new SupabaseApprovalStore(client),
73
75
  webhookEndpoints: new SupabaseWebhookEndpointStore(client),
76
+ audit: new SupabaseAuditStore(client),
77
+ apiKeys: new SupabaseApiKeyStore(client, adminClient),
74
78
  };
75
79
  }
76
80
  //# sourceMappingURL=factory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../src/stores/factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../src/stores/factory.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  export { SupabaseEntityStore } from './entity-store.js';
2
+ export { mapEntityRow, mapEntityTypeRow } from './entity-mappers.js';
2
3
  export { SupabaseAgentStore } from './agent-store.js';
3
4
  export { SupabaseChatStore } from './chat-store.js';
4
5
  export { SupabaseTenantStore } from './tenant-store.js';
@@ -32,6 +33,8 @@ export { SupabaseFavoritesStore } from './favorites-store.js';
32
33
  export { SupabaseApprovalStore } from './approval-store.js';
33
34
  export { SupabaseWebhookEndpointStore } from './webhook-endpoint-store.js';
34
35
  export { SupabaseEmbedStore } from './embed-store.js';
36
+ export { SupabaseAuditStore } from './audit-store.js';
37
+ export { SupabaseApiKeyStore, generateApiKey, hashApiKey } from './api-key-store.js';
35
38
  export { createSupabaseStores } from './factory.js';
36
39
  export type { SupabaseStores } from './factory.js';
37
40
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/stores/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxF,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjD,YAAY,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/stores/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxF,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClF,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjD,YAAY,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC"}
@@ -1,4 +1,5 @@
1
1
  export { SupabaseEntityStore } from './entity-store.js';
2
+ export { mapEntityRow, mapEntityTypeRow } from './entity-mappers.js';
2
3
  export { SupabaseAgentStore } from './agent-store.js';
3
4
  export { SupabaseChatStore } from './chat-store.js';
4
5
  export { SupabaseTenantStore } from './tenant-store.js';
@@ -32,5 +33,7 @@ export { SupabaseFavoritesStore } from './favorites-store.js';
32
33
  export { SupabaseApprovalStore } from './approval-store.js';
33
34
  export { SupabaseWebhookEndpointStore } from './webhook-endpoint-store.js';
34
35
  export { SupabaseEmbedStore } from './embed-store.js';
36
+ export { SupabaseAuditStore } from './audit-store.js';
37
+ export { SupabaseApiKeyStore, generateApiKey, hashApiKey } from './api-key-store.js';
35
38
  export { createSupabaseStores } from './factory.js';
36
39
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/stores/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxF,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/stores/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxF,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClF,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { SourceStore, SourceRecord, CreateSourceInput, UpdateSourceInput } from '@sprinterai/core';
1
+ import type { SourceStore, SourceRecord, CreateSourceInput, UpdateSourceInput, SourceSyncStatus } from '@sprinterai/core';
2
2
  import type { SupabaseClient } from '@supabase/supabase-js';
3
3
  import type { Database } from '../generated/database-types.js';
4
4
  /**
@@ -19,5 +19,6 @@ export declare class SupabaseSourceStore implements SourceStore {
19
19
  updateSource(id: string, tenantId: string, input: UpdateSourceInput): Promise<SourceRecord | null>;
20
20
  deleteSource(id: string, tenantId: string): Promise<void>;
21
21
  triggerSync(id: string, tenantId: string): Promise<void>;
22
+ updateSyncStatus(id: string, tenantId: string, status: SourceSyncStatus, error?: string | null): Promise<void>;
22
23
  }
23
24
  //# sourceMappingURL=source-store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"source-store.d.ts","sourceRoot":"","sources":["../../src/stores/source-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAE5D;;;;;;GAMG;AACH,qBAAa,mBAAoB,YAAW,WAAW;IAMzC,OAAO,CAAC,MAAM;IAL1B,4DAA4D;IAC5D,OAAO,KAAK,GAAG,GAEd;gBAEmB,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC;IAE9C,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAWtD,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAWnD,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,YAAY,CAAC;IAqB/E,YAAY,CAChB,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,iBAAiB,GACvB,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAyBzB,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUzD,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAY/D"}
1
+ {"version":3,"file":"source-store.d.ts","sourceRoot":"","sources":["../../src/stores/source-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EACjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAE5D;;;;;;GAMG;AACH,qBAAa,mBAAoB,YAAW,WAAW;IAMzC,OAAO,CAAC,MAAM;IAL1B,4DAA4D;IAC5D,OAAO,KAAK,GAAG,GAEd;gBAEmB,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC;IAE9C,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAWtD,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAOnD,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,YAAY,CAAC;IAyB/E,YAAY,CAChB,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,iBAAiB,GACvB,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IA0BzB,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUzD,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAaxD,gBAAgB,CACpB,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,gBAAgB,EACxB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,GACpB,OAAO,CAAC,IAAI,CAAC;CAajB"}
@@ -25,11 +25,7 @@ export class SupabaseSourceStore {
25
25
  return (data ?? []);
26
26
  }
27
27
  async getSource(id) {
28
- const { data, error } = await this.raw
29
- .from('sources')
30
- .select('*')
31
- .eq('id', id)
32
- .maybeSingle();
28
+ const { data, error } = await this.raw.from('sources').select('*').eq('id', id).maybeSingle();
33
29
  if (error)
34
30
  throw error;
35
31
  return data ? data : null;
@@ -46,6 +42,10 @@ export class SupabaseSourceStore {
46
42
  entity_type_slug: input.entity_type_slug,
47
43
  field_mapping: input.field_mapping,
48
44
  enabled: input.enabled ?? true,
45
+ sync_status: 'never_synced',
46
+ scrape_strategy: input.scrape_strategy ?? null,
47
+ sync_error: null,
48
+ last_validated_at: null,
49
49
  metadata: input.metadata ?? null,
50
50
  })
51
51
  .select('*')
@@ -72,6 +72,8 @@ export class SupabaseSourceStore {
72
72
  updateData.field_mapping = input.field_mapping;
73
73
  if (input.enabled !== undefined)
74
74
  updateData.enabled = input.enabled;
75
+ if (input.scrape_strategy !== undefined)
76
+ updateData.scrape_strategy = input.scrape_strategy;
75
77
  if (input.metadata !== undefined)
76
78
  updateData.metadata = input.metadata;
77
79
  const { data, error } = await this.raw
@@ -107,5 +109,18 @@ export class SupabaseSourceStore {
107
109
  if (error)
108
110
  throw error;
109
111
  }
112
+ async updateSyncStatus(id, tenantId, status, error) {
113
+ const { error: dbError } = await this.raw
114
+ .from('sources')
115
+ .update({
116
+ sync_status: status,
117
+ sync_error: error ?? null,
118
+ updated_at: new Date().toISOString(),
119
+ })
120
+ .eq('id', id)
121
+ .eq('tenant_id', tenantId);
122
+ if (dbError)
123
+ throw dbError;
124
+ }
110
125
  }
111
126
  //# sourceMappingURL=source-store.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"source-store.js","sourceRoot":"","sources":["../../src/stores/source-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"source-store.js","sourceRoot":"","sources":["../../src/stores/source-store.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sprinterai/supabase",
3
- "version": "0.7.1",
3
+ "version": "0.9.0",
4
4
  "description": "Supabase store implementations and auth adapter for the Sprinter AI platform",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -74,7 +74,7 @@
74
74
  "dependencies": {
75
75
  "@supabase/ssr": "^0.9.0",
76
76
  "@supabase/supabase-js": "^2.49.0",
77
- "@sprinterai/core": "^0.7.1"
77
+ "@sprinterai/core": "^0.9.0"
78
78
  },
79
79
  "devDependencies": {
80
80
  "@types/node": "^25.5.0",