@steno-ai/supabase-adapter 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client.d.ts +7 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +8 -0
- package/dist/client.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -0
- package/dist/storage.d.ts +126 -0
- package/dist/storage.d.ts.map +1 -0
- package/dist/storage.js +990 -0
- package/dist/storage.js.map +1 -0
- package/package.json +33 -0
- package/src/client.d.ts +7 -0
- package/src/client.d.ts.map +1 -0
- package/src/client.js +8 -0
- package/src/client.js.map +1 -0
- package/src/client.ts +13 -0
- package/src/index.d.ts +3 -0
- package/src/index.d.ts.map +1 -0
- package/src/index.js +3 -0
- package/src/index.js.map +1 -0
- package/src/index.ts +2 -0
- package/src/migrations/001_extensions.sql +4 -0
- package/src/migrations/002_create_tenants.sql +14 -0
- package/src/migrations/003_create_api_keys.sql +15 -0
- package/src/migrations/004_create_sessions.sql +18 -0
- package/src/migrations/005_create_extractions.sql +34 -0
- package/src/migrations/006_create_facts.sql +68 -0
- package/src/migrations/007_create_entities.sql +26 -0
- package/src/migrations/008_create_fact_entities.sql +9 -0
- package/src/migrations/009_create_edges.sql +22 -0
- package/src/migrations/010_create_triggers.sql +18 -0
- package/src/migrations/011_create_memory_accesses.sql +20 -0
- package/src/migrations/012_create_usage_records.sql +16 -0
- package/src/migrations/013_create_functions.sql +19 -0
- package/src/migrations/014_create_rls_policies.sql +50 -0
- package/src/migrations/015_create_rpc_functions.sql +109 -0
- package/src/migrations/016_alter_source_ref.sql +2 -0
- package/src/migrations/017_keyword_search_rpc.sql +75 -0
- package/src/migrations/018_graph_traverse_rpc.sql +106 -0
- package/src/migrations/019_create_webhooks.sql +22 -0
- package/src/migrations/020_compound_search_rpc.sql +100 -0
- package/src/migrations/021_match_entities_rpc.sql +39 -0
- package/src/migrations/022_get_facts_for_entities_rpc.sql +123 -0
- package/src/migrations/023_add_event_date.sql +8 -0
- package/src/migrations/024_add_source_chunk.sql +3 -0
- package/src/migrations/025_update_edge_types_add_signing_key.sql +14 -0
- package/src/storage.d.ts +126 -0
- package/src/storage.d.ts.map +1 -0
- package/src/storage.js +990 -0
- package/src/storage.js.map +1 -0
- package/src/storage.ts +1180 -0
package/dist/client.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type SupabaseClient } from '@supabase/supabase-js';
|
|
2
|
+
export interface SupabaseConfig {
|
|
3
|
+
url: string;
|
|
4
|
+
serviceRoleKey: string;
|
|
5
|
+
}
|
|
6
|
+
export declare function createSupabaseClient(config: SupabaseConfig): SupabaseClient;
|
|
7
|
+
//# sourceMappingURL=client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE1E,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,cAAc,GAAG,cAAc,CAK3E"}
|
package/dist/client.js
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { createClient } from '@supabase/supabase-js';
|
|
2
|
+
export function createSupabaseClient(config) {
|
|
3
|
+
return createClient(config.url, config.serviceRoleKey, {
|
|
4
|
+
auth: { persistSession: false },
|
|
5
|
+
db: { schema: 'public' },
|
|
6
|
+
});
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAuB,MAAM,uBAAuB,CAAC;AAO1E,MAAM,UAAU,oBAAoB,CAAC,MAAsB;IACzD,OAAO,YAAY,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,cAAc,EAAE;QACrD,IAAI,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE;QAC/B,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE;KACzB,CAAC,CAAC;AACL,CAAC"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAuB,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import type { SupabaseClient } from '@supabase/supabase-js';
|
|
2
|
+
import type { StorageAdapter, PaginationOptions, PaginatedResult, VectorSearchOptions, VectorSearchResult, KeywordSearchOptions, KeywordSearchResult, CompoundSearchOptions, CompoundSearchResult, GraphTraversalOptions, GraphTraversalResult } from '@steno-ai/engine';
|
|
3
|
+
import type { Fact, CreateFact, Entity, CreateEntity, Edge, CreateEdge, Trigger, CreateTrigger, MemoryAccess, CreateMemoryAccess, Extraction, CreateExtraction, Session, CreateSession, Tenant, CreateTenant, ApiKey, CreateApiKey, UsageRecord, Webhook, CreateWebhook } from '@steno-ai/engine';
|
|
4
|
+
/**
|
|
5
|
+
* Convert all top-level keys of a plain object from camelCase to snake_case.
|
|
6
|
+
* Nested objects (metadata, config, properties, condition) are preserved as-is.
|
|
7
|
+
* Arrays and null values are preserved.
|
|
8
|
+
*/
|
|
9
|
+
export declare function toSnakeCase(obj: Record<string, unknown>): Record<string, unknown>;
|
|
10
|
+
/**
|
|
11
|
+
* Convert all top-level keys of a plain object from snake_case to camelCase.
|
|
12
|
+
* Nested objects (metadata, config, properties, condition) are preserved as-is.
|
|
13
|
+
* Arrays and null values are preserved.
|
|
14
|
+
*/
|
|
15
|
+
export declare function toCamelCase(obj: Record<string, unknown>): Record<string, unknown>;
|
|
16
|
+
export declare class SupabaseStorageAdapter implements StorageAdapter {
|
|
17
|
+
private client;
|
|
18
|
+
constructor(client: SupabaseClient);
|
|
19
|
+
ping(): Promise<boolean>;
|
|
20
|
+
createTenant(tenant: CreateTenant & {
|
|
21
|
+
id: string;
|
|
22
|
+
}): Promise<Tenant>;
|
|
23
|
+
getTenant(id: string): Promise<Tenant | null>;
|
|
24
|
+
getTenantBySlug(slug: string): Promise<Tenant | null>;
|
|
25
|
+
updateTenant(id: string, updates: Partial<Tenant>): Promise<Tenant>;
|
|
26
|
+
createApiKey(apiKey: CreateApiKey & {
|
|
27
|
+
id: string;
|
|
28
|
+
keyHash: string;
|
|
29
|
+
keyPrefix: string;
|
|
30
|
+
}): Promise<ApiKey>;
|
|
31
|
+
getApiKeyByPrefix(prefix: string): Promise<ApiKey | null>;
|
|
32
|
+
getApiKeysForTenant(tenantId: string): Promise<ApiKey[]>;
|
|
33
|
+
revokeApiKey(tenantId: string, id: string): Promise<void>;
|
|
34
|
+
updateApiKeyLastUsed(id: string): Promise<void>;
|
|
35
|
+
createExtraction(extraction: CreateExtraction & {
|
|
36
|
+
id: string;
|
|
37
|
+
}): Promise<Extraction>;
|
|
38
|
+
getExtraction(tenantId: string, id: string): Promise<Extraction | null>;
|
|
39
|
+
updateExtraction(tenantId: string, id: string, updates: Partial<Extraction>): Promise<Extraction>;
|
|
40
|
+
getExtractionByHash(tenantId: string, inputHash: string): Promise<Extraction | null>;
|
|
41
|
+
getExtractionsByTenant(tenantId: string, options: PaginationOptions): Promise<PaginatedResult<Extraction>>;
|
|
42
|
+
createFact(fact: CreateFact & {
|
|
43
|
+
id: string;
|
|
44
|
+
lineageId: string;
|
|
45
|
+
embeddingModel: string;
|
|
46
|
+
embeddingDim: number;
|
|
47
|
+
embedding?: number[];
|
|
48
|
+
}): Promise<Fact>;
|
|
49
|
+
getFact(tenantId: string, id: string): Promise<Fact | null>;
|
|
50
|
+
getFactsByIds(tenantId: string, ids: string[]): Promise<Fact[]>;
|
|
51
|
+
getFactsByLineage(tenantId: string, lineageId: string): Promise<Fact[]>;
|
|
52
|
+
invalidateFact(tenantId: string, id: string): Promise<void>;
|
|
53
|
+
createEntity(entity: CreateEntity & {
|
|
54
|
+
id: string;
|
|
55
|
+
embedding?: number[];
|
|
56
|
+
embeddingModel?: string;
|
|
57
|
+
embeddingDim?: number;
|
|
58
|
+
}): Promise<Entity>;
|
|
59
|
+
getEntity(tenantId: string, id: string): Promise<Entity | null>;
|
|
60
|
+
findEntityByCanonicalName(tenantId: string, canonicalName: string, entityType: string): Promise<Entity | null>;
|
|
61
|
+
findEntitiesByEmbedding(tenantId: string, embedding: number[], limit: number, minSimilarity?: number): Promise<Array<{
|
|
62
|
+
entity: Entity;
|
|
63
|
+
similarity: number;
|
|
64
|
+
}>>;
|
|
65
|
+
linkFactEntity(factId: string, entityId: string, role: string): Promise<void>;
|
|
66
|
+
createEdge(edge: CreateEdge & {
|
|
67
|
+
id: string;
|
|
68
|
+
}): Promise<Edge>;
|
|
69
|
+
vectorSearch(options: VectorSearchOptions): Promise<VectorSearchResult[]>;
|
|
70
|
+
incrementUsage(tenantId: string, tokens: number, queries: number, extractions: number, costUsd: number): Promise<void>;
|
|
71
|
+
getUsage(tenantId: string, periodStart: Date): Promise<UsageRecord | null>;
|
|
72
|
+
getCurrentUsage(tenantId: string): Promise<UsageRecord | null>;
|
|
73
|
+
getFactsByScope(tenantId: string, scope: string, scopeId: string, options: PaginationOptions): Promise<PaginatedResult<Fact>>;
|
|
74
|
+
purgeFacts(tenantId: string, scope: string, scopeId: string): Promise<number>;
|
|
75
|
+
updateDecayScores(tenantId: string, facts: Array<{
|
|
76
|
+
id: string;
|
|
77
|
+
decayScore: number;
|
|
78
|
+
lastAccessed?: Date;
|
|
79
|
+
frequency?: number;
|
|
80
|
+
importance?: number;
|
|
81
|
+
}>): Promise<void>;
|
|
82
|
+
keywordSearch(options: KeywordSearchOptions): Promise<KeywordSearchResult[]>;
|
|
83
|
+
compoundSearch(options: CompoundSearchOptions): Promise<CompoundSearchResult[]>;
|
|
84
|
+
getEntitiesForTenant(tenantId: string, options: PaginationOptions): Promise<PaginatedResult<Entity>>;
|
|
85
|
+
getEntitiesForFact(factId: string): Promise<Entity[]>;
|
|
86
|
+
getFactsForEntity(tenantId: string, entityId: string, options: PaginationOptions): Promise<PaginatedResult<Fact>>;
|
|
87
|
+
getFactsForEntities(tenantId: string, entityIds: string[], perEntityLimit: number): Promise<Array<{
|
|
88
|
+
entityId: string;
|
|
89
|
+
fact: Fact;
|
|
90
|
+
}>>;
|
|
91
|
+
getEdgesForEntity(tenantId: string, entityId: string): Promise<Edge[]>;
|
|
92
|
+
graphTraversal(options: GraphTraversalOptions): Promise<GraphTraversalResult>;
|
|
93
|
+
createTrigger(trigger: CreateTrigger & {
|
|
94
|
+
id: string;
|
|
95
|
+
}): Promise<Trigger>;
|
|
96
|
+
getTrigger(tenantId: string, id: string): Promise<Trigger | null>;
|
|
97
|
+
getActiveTriggers(tenantId: string, scope: string, scopeId: string): Promise<Trigger[]>;
|
|
98
|
+
updateTrigger(tenantId: string, id: string, updates: Partial<Trigger>): Promise<Trigger>;
|
|
99
|
+
deleteTrigger(tenantId: string, id: string): Promise<void>;
|
|
100
|
+
incrementTriggerFired(tenantId: string, id: string): Promise<void>;
|
|
101
|
+
createMemoryAccess(access: CreateMemoryAccess & {
|
|
102
|
+
id: string;
|
|
103
|
+
}): Promise<MemoryAccess>;
|
|
104
|
+
updateFeedback(tenantId: string, factId: string, feedback: {
|
|
105
|
+
wasUseful: boolean;
|
|
106
|
+
feedbackType: string;
|
|
107
|
+
feedbackDetail?: string;
|
|
108
|
+
wasCorrected?: boolean;
|
|
109
|
+
}): Promise<void>;
|
|
110
|
+
createSession(session: CreateSession & {
|
|
111
|
+
id: string;
|
|
112
|
+
}): Promise<Session>;
|
|
113
|
+
getSession(tenantId: string, id: string): Promise<Session | null>;
|
|
114
|
+
endSession(tenantId: string, id: string, summary?: string, topics?: string[]): Promise<Session>;
|
|
115
|
+
getSessionsByScope(tenantId: string, scope: string, scopeId: string, options: PaginationOptions): Promise<PaginatedResult<Session>>;
|
|
116
|
+
createWebhook(webhook: CreateWebhook & {
|
|
117
|
+
id: string;
|
|
118
|
+
secretHash: string;
|
|
119
|
+
signingKey: string;
|
|
120
|
+
}): Promise<Webhook>;
|
|
121
|
+
getWebhook(tenantId: string, id: string): Promise<Webhook | null>;
|
|
122
|
+
getWebhooksForTenant(tenantId: string): Promise<Webhook[]>;
|
|
123
|
+
getWebhooksByEvent(tenantId: string, event: string): Promise<Webhook[]>;
|
|
124
|
+
deleteWebhook(tenantId: string, id: string): Promise<void>;
|
|
125
|
+
}
|
|
126
|
+
//# sourceMappingURL=storage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../src/storage.ts"],"names":[],"mappings":"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"}
|