@thewhateverapp/platform 0.13.10 → 0.13.11
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/ai/index.d.ts.map +1 -1
- package/dist/ai/index.js +8 -3
- package/dist/ai/index.js.map +1 -1
- package/dist/ai/mock-provider.d.ts +16 -0
- package/dist/ai/mock-provider.d.ts.map +1 -0
- package/dist/ai/mock-provider.js +50 -0
- package/dist/ai/mock-provider.js.map +1 -0
- package/dist/ai/providers/index.d.ts +2 -0
- package/dist/ai/providers/index.d.ts.map +1 -1
- package/dist/ai/providers/index.js +2 -0
- package/dist/ai/providers/index.js.map +1 -1
- package/dist/ai/providers/three-tier-ai.d.ts +35 -0
- package/dist/ai/providers/three-tier-ai.d.ts.map +1 -0
- package/dist/ai/providers/three-tier-ai.js +43 -0
- package/dist/ai/providers/three-tier-ai.js.map +1 -0
- package/dist/ai/providers.d.ts +1 -0
- package/dist/ai/providers.d.ts.map +1 -1
- package/dist/ai/providers.js +2 -0
- package/dist/ai/providers.js.map +1 -1
- package/dist/database/index.d.ts.map +1 -1
- package/dist/database/index.js +11 -29
- package/dist/database/index.js.map +1 -1
- package/dist/database/mock-provider.d.ts +10 -0
- package/dist/database/mock-provider.d.ts.map +1 -0
- package/dist/database/mock-provider.js +145 -0
- package/dist/database/mock-provider.js.map +1 -0
- package/dist/database/providers/index.d.ts +1 -0
- package/dist/database/providers/index.d.ts.map +1 -1
- package/dist/database/providers/index.js +1 -0
- package/dist/database/providers/index.js.map +1 -1
- package/dist/database/providers/three-tier-db.d.ts +33 -0
- package/dist/database/providers/three-tier-db.d.ts.map +1 -0
- package/dist/database/providers/three-tier-db.js +105 -0
- package/dist/database/providers/three-tier-db.js.map +1 -0
- package/dist/keyspace/index.d.ts.map +1 -1
- package/dist/keyspace/index.js +8 -3
- package/dist/keyspace/index.js.map +1 -1
- package/dist/keyspace/mock-provider.d.ts +31 -0
- package/dist/keyspace/mock-provider.d.ts.map +1 -0
- package/dist/keyspace/mock-provider.js +328 -0
- package/dist/keyspace/mock-provider.js.map +1 -0
- package/dist/keyspace/providers/index.d.ts +1 -0
- package/dist/keyspace/providers/index.d.ts.map +1 -1
- package/dist/keyspace/providers/index.js +1 -0
- package/dist/keyspace/providers/index.js.map +1 -1
- package/dist/keyspace/providers/three-tier-keyspace.d.ts +42 -0
- package/dist/keyspace/providers/three-tier-keyspace.d.ts.map +1 -0
- package/dist/keyspace/providers/three-tier-keyspace.js +106 -0
- package/dist/keyspace/providers/three-tier-keyspace.js.map +1 -0
- package/dist/kv/index.js +10 -10
- package/dist/kv/index.js.map +1 -1
- package/dist/kv/providers/index.d.ts +1 -0
- package/dist/kv/providers/index.d.ts.map +1 -1
- package/dist/kv/providers/index.js +1 -0
- package/dist/kv/providers/index.js.map +1 -1
- package/dist/kv/providers/three-tier-kv.d.ts +44 -0
- package/dist/kv/providers/three-tier-kv.d.ts.map +1 -0
- package/dist/kv/providers/three-tier-kv.js +69 -0
- package/dist/kv/providers/three-tier-kv.js.map +1 -0
- package/dist/providers/three-tier-provider.d.ts +77 -0
- package/dist/providers/three-tier-provider.d.ts.map +1 -0
- package/dist/providers/three-tier-provider.js +165 -0
- package/dist/providers/three-tier-provider.js.map +1 -0
- package/dist/r2/index.d.ts.map +1 -1
- package/dist/r2/index.js +11 -24
- package/dist/r2/index.js.map +1 -1
- package/dist/r2/mock-provider.d.ts +23 -0
- package/dist/r2/mock-provider.d.ts.map +1 -0
- package/dist/r2/mock-provider.js +161 -0
- package/dist/r2/mock-provider.js.map +1 -0
- package/dist/r2/providers/index.d.ts +1 -0
- package/dist/r2/providers/index.d.ts.map +1 -1
- package/dist/r2/providers/index.js +1 -0
- package/dist/r2/providers/index.js.map +1 -1
- package/dist/r2/providers/three-tier-r2.d.ts +43 -0
- package/dist/r2/providers/three-tier-r2.d.ts.map +1 -0
- package/dist/r2/providers/three-tier-r2.js +82 -0
- package/dist/r2/providers/three-tier-r2.js.map +1 -0
- package/package.json +1 -1
package/dist/ai/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ai/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAEH,OAAO,KAAK,EACV,iBAAiB,EACjB,SAAS,EACT,KAAK,EAIN,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ai/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAEH,OAAO,KAAK,EACV,iBAAiB,EACjB,SAAS,EACT,KAAK,EAIN,MAAM,SAAS,CAAC;AAcjB,mBAAmB,SAAS,CAAC;AAK7B;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,KAAK,CACnB,GAAG,CAAC,EAAE,SAAS,GAAG;IAAE,GAAG,EAAE,KAAK,CAAA;CAAE,GAAG,KAAK,GACvC,iBAAiB,CAuCnB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,iBAAiB,CAGvF"}
|
package/dist/ai/index.js
CHANGED
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
* ```
|
|
41
41
|
*/
|
|
42
42
|
import { getPlatformEnv, isPlatformEnvConfigured } from '../env';
|
|
43
|
-
import { createCloudflareProvider, createReplicateProvider, createPlatformAPIProvider, detectAvailableProviders, selectProvider,
|
|
43
|
+
import { createCloudflareProvider, createReplicateProvider, createPlatformAPIProvider, detectAvailableProviders, selectProvider, ThreeTierAI, } from './providers';
|
|
44
44
|
// Default platform API URL
|
|
45
45
|
const DEFAULT_PLATFORM_API = 'https://api.thewhatever.app';
|
|
46
46
|
/**
|
|
@@ -91,8 +91,13 @@ export function getAI(req) {
|
|
|
91
91
|
// Check for HTTP proxy marker (set by platform-config module in preview mode)
|
|
92
92
|
if (env.__AI_HTTP_PROXY__) {
|
|
93
93
|
const proxyOptions = env.__AI_HTTP_PROXY__;
|
|
94
|
-
|
|
95
|
-
|
|
94
|
+
// Use three-tier provider with HTTP proxy fallback to mock
|
|
95
|
+
const config = {
|
|
96
|
+
production: undefined, // No production in preview mode
|
|
97
|
+
previewProxy: proxyOptions,
|
|
98
|
+
debug: true,
|
|
99
|
+
};
|
|
100
|
+
return new ThreeTierAI(config);
|
|
96
101
|
}
|
|
97
102
|
// Create a unified provider that routes to the appropriate backend
|
|
98
103
|
return createUnifiedProvider(env);
|
package/dist/ai/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ai/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAUH,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,QAAQ,CAAC;AACjE,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,yBAAyB,EACzB,wBAAwB,EACxB,cAAc,EACd,WAAW,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ai/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Simple mock AI provider for preview/testing
|
|
3
|
+
* Returns placeholder responses for all AI operations
|
|
4
|
+
*/
|
|
5
|
+
import type { AIServiceProvider, AskOptions, PromptRequest, PromptResponse } from './types';
|
|
6
|
+
export declare class MockAIProvider implements AIServiceProvider {
|
|
7
|
+
private debug;
|
|
8
|
+
constructor(config?: {
|
|
9
|
+
debug?: boolean;
|
|
10
|
+
});
|
|
11
|
+
private log;
|
|
12
|
+
ask(prompt: string, options?: AskOptions): Promise<string>;
|
|
13
|
+
prompt(request: PromptRequest): Promise<PromptResponse>;
|
|
14
|
+
chat(prompt: string, options?: AskOptions): Promise<string>;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=mock-provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-provider.d.ts","sourceRoot":"","sources":["../../src/ai/mock-provider.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,iBAAiB,EACjB,UAAU,EACV,aAAa,EACb,cAAc,EACf,MAAM,SAAS,CAAC;AAEjB,qBAAa,cAAe,YAAW,iBAAiB;IACtD,OAAO,CAAC,KAAK,CAAU;gBAEX,MAAM,GAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAO;IAI5C,OAAO,CAAC,GAAG;IAML,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAO1D,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;IA6BvD,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;CAGlE"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Simple mock AI provider for preview/testing
|
|
3
|
+
* Returns placeholder responses for all AI operations
|
|
4
|
+
*/
|
|
5
|
+
export class MockAIProvider {
|
|
6
|
+
debug;
|
|
7
|
+
constructor(config = {}) {
|
|
8
|
+
this.debug = config.debug ?? false;
|
|
9
|
+
}
|
|
10
|
+
log(message, ...args) {
|
|
11
|
+
if (this.debug) {
|
|
12
|
+
console.log(`[MockAI] ${message}`, ...args);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
async ask(prompt, options) {
|
|
16
|
+
this.log('ASK', { prompt: prompt.substring(0, 100), options });
|
|
17
|
+
// Return a helpful mock response
|
|
18
|
+
return `[Mock AI Response] This is a placeholder response for preview mode. In production, this would be a real AI-generated answer to: "${prompt.substring(0, 50)}..."`;
|
|
19
|
+
}
|
|
20
|
+
async prompt(request) {
|
|
21
|
+
this.log('PROMPT', { prompt: request.prompt.substring(0, 100), capabilities: request.capabilities });
|
|
22
|
+
// Return mock response based on requested capabilities
|
|
23
|
+
const hasVision = request.capabilities?.includes('vision');
|
|
24
|
+
const hasCoding = request.capabilities?.includes('coding');
|
|
25
|
+
let text = '[Mock AI Response] ';
|
|
26
|
+
if (hasVision && request.images) {
|
|
27
|
+
text += `Analyzed ${request.images.length} image(s). `;
|
|
28
|
+
}
|
|
29
|
+
if (hasCoding) {
|
|
30
|
+
text += 'Generated code: `console.log("Hello from mock AI");`';
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
text += `This is a placeholder response for: "${request.prompt.substring(0, 50)}..."`;
|
|
34
|
+
}
|
|
35
|
+
return {
|
|
36
|
+
text,
|
|
37
|
+
provider: 'mock',
|
|
38
|
+
model: 'mock-model',
|
|
39
|
+
tokensUsed: {
|
|
40
|
+
input: 100,
|
|
41
|
+
output: 50,
|
|
42
|
+
total: 150,
|
|
43
|
+
},
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
async chat(prompt, options) {
|
|
47
|
+
return this.ask(prompt, options);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=mock-provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-provider.js","sourceRoot":"","sources":["../../src/ai/mock-provider.ts"],"names":[],"mappings":"AAAA;;;GAGG;AASH,MAAM,OAAO,cAAc;IACjB,KAAK,CAAU;IAEvB,YAAY,SAA8B,EAAE;QAC1C,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC;IACrC,CAAC;IAEO,GAAG,CAAC,OAAe,EAAE,GAAG,IAAW;QACzC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,YAAY,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,MAAc,EAAE,OAAoB;QAC5C,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAE/D,iCAAiC;QACjC,OAAO,oIAAoI,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC;IAC3K,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAAsB;QACjC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;QAErG,uDAAuD;QACvD,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC3D,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAE3D,IAAI,IAAI,GAAG,qBAAqB,CAAC;QACjC,IAAI,SAAS,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YAChC,IAAI,IAAI,YAAY,OAAO,CAAC,MAAM,CAAC,MAAM,aAAa,CAAC;QACzD,CAAC;QACD,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,IAAI,sDAAsD,CAAC;QACjE,CAAC;aAAM,CAAC;YACN,IAAI,IAAI,wCAAwC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC;QACxF,CAAC;QAED,OAAO;YACL,IAAI;YACJ,QAAQ,EAAE,MAAM;YAChB,KAAK,EAAE,YAAY;YACnB,UAAU,EAAE;gBACV,KAAK,EAAE,GAAG;gBACV,MAAM,EAAE,EAAE;gBACV,KAAK,EAAE,GAAG;aACX;SACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,MAAc,EAAE,OAAoB;QAC7C,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,CAAC;CACF"}
|
|
@@ -4,5 +4,7 @@
|
|
|
4
4
|
* Export all available AI providers
|
|
5
5
|
*/
|
|
6
6
|
export { HTTPProxyAI, type HTTPProxyAIOptions } from './http-proxy-ai';
|
|
7
|
+
export { ThreeTierAI, type ThreeTierAIConfig } from './three-tier-ai';
|
|
8
|
+
export { MockAIProvider } from '../mock-provider';
|
|
7
9
|
export { createCloudflareProvider, createReplicateProvider, createPlatformAPIProvider, detectAvailableProviders, selectProvider, } from '../providers';
|
|
8
10
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ai/providers/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ai/providers/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,WAAW,EAAE,KAAK,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,yBAAyB,EACzB,wBAAwB,EACxB,cAAc,GACf,MAAM,cAAc,CAAC"}
|
|
@@ -4,6 +4,8 @@
|
|
|
4
4
|
* Export all available AI providers
|
|
5
5
|
*/
|
|
6
6
|
export { HTTPProxyAI } from './http-proxy-ai';
|
|
7
|
+
export { ThreeTierAI } from './three-tier-ai';
|
|
8
|
+
export { MockAIProvider } from '../mock-provider';
|
|
7
9
|
// Re-export provider functions from parent providers.ts
|
|
8
10
|
export { createCloudflareProvider, createReplicateProvider, createPlatformAPIProvider, detectAvailableProviders, selectProvider, } from '../providers';
|
|
9
11
|
// Future providers:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ai/providers/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAA2B,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ai/providers/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAA2B,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,WAAW,EAA0B,MAAM,iBAAiB,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,wDAAwD;AACxD,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,yBAAyB,EACzB,wBAAwB,EACxB,cAAc,GACf,MAAM,cAAc,CAAC;AAEtB,oBAAoB;AACpB,kDAAkD;AAClD,gDAAgD;AAChD,wCAAwC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Three-Tier AI Provider
|
|
3
|
+
*
|
|
4
|
+
* Implements the three-tier fallback system:
|
|
5
|
+
* 1. Production - Real AI providers (Cloudflare Workers AI, Platform API)
|
|
6
|
+
* 2. Preview via Proxy - HTTP proxy to skeleton worker
|
|
7
|
+
* 3. Mock/In-Memory - Fallback when skeleton not ready
|
|
8
|
+
*/
|
|
9
|
+
import type { AIServiceProvider, AskOptions, PromptRequest, PromptResponse } from '../types';
|
|
10
|
+
import { type HTTPProxyAIOptions } from './http-proxy-ai';
|
|
11
|
+
/**
|
|
12
|
+
* Three-tier AI configuration
|
|
13
|
+
*/
|
|
14
|
+
export interface ThreeTierAIConfig {
|
|
15
|
+
/** Production AI provider (if available) - can be any AIServiceProvider */
|
|
16
|
+
production?: AIServiceProvider;
|
|
17
|
+
/** Preview proxy configuration (if in preview mode) */
|
|
18
|
+
previewProxy?: HTTPProxyAIOptions;
|
|
19
|
+
/** Debug logging */
|
|
20
|
+
debug?: boolean;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Three-Tier AI Provider
|
|
24
|
+
*
|
|
25
|
+
* Automatically selects between production, preview proxy, and mock based on availability
|
|
26
|
+
* and skeleton deployment readiness.
|
|
27
|
+
*/
|
|
28
|
+
export declare class ThreeTierAI implements AIServiceProvider {
|
|
29
|
+
private provider;
|
|
30
|
+
constructor(config: ThreeTierAIConfig);
|
|
31
|
+
ask(prompt: string, options?: AskOptions): Promise<string>;
|
|
32
|
+
prompt(request: PromptRequest): Promise<PromptResponse>;
|
|
33
|
+
chat(prompt: string, options?: AskOptions): Promise<string>;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=three-tier-ai.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"three-tier-ai.d.ts","sourceRoot":"","sources":["../../../src/ai/providers/three-tier-ai.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,iBAAiB,EACjB,UAAU,EACV,aAAa,EACb,cAAc,EACf,MAAM,UAAU,CAAC;AAClB,OAAO,EAAe,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAIvE;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,2EAA2E;IAC3E,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,uDAAuD;IACvD,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,oBAAoB;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;;;GAKG;AACH,qBAAa,WAAY,YAAW,iBAAiB;IACnD,OAAO,CAAC,QAAQ,CAAuC;gBAE3C,MAAM,EAAE,iBAAiB;IAe/B,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAI1D,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;IAIvD,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;CAGlE"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Three-Tier AI Provider
|
|
3
|
+
*
|
|
4
|
+
* Implements the three-tier fallback system:
|
|
5
|
+
* 1. Production - Real AI providers (Cloudflare Workers AI, Platform API)
|
|
6
|
+
* 2. Preview via Proxy - HTTP proxy to skeleton worker
|
|
7
|
+
* 3. Mock/In-Memory - Fallback when skeleton not ready
|
|
8
|
+
*/
|
|
9
|
+
import { HTTPProxyAI } from './http-proxy-ai';
|
|
10
|
+
import { MockAIProvider } from '../mock-provider';
|
|
11
|
+
import { ThreeTierProvider } from '../../providers/three-tier-provider';
|
|
12
|
+
/**
|
|
13
|
+
* Three-Tier AI Provider
|
|
14
|
+
*
|
|
15
|
+
* Automatically selects between production, preview proxy, and mock based on availability
|
|
16
|
+
* and skeleton deployment readiness.
|
|
17
|
+
*/
|
|
18
|
+
export class ThreeTierAI {
|
|
19
|
+
provider;
|
|
20
|
+
constructor(config) {
|
|
21
|
+
const production = config.production;
|
|
22
|
+
const previewProxy = config.previewProxy
|
|
23
|
+
? new HTTPProxyAI(config.previewProxy)
|
|
24
|
+
: undefined;
|
|
25
|
+
const mock = new MockAIProvider({ debug: config.debug });
|
|
26
|
+
this.provider = new ThreeTierProvider({
|
|
27
|
+
production,
|
|
28
|
+
previewProxy,
|
|
29
|
+
mock,
|
|
30
|
+
debug: config.debug,
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
async ask(prompt, options) {
|
|
34
|
+
return this.provider.execute('ASK', (ai) => ai.ask(prompt, options));
|
|
35
|
+
}
|
|
36
|
+
async prompt(request) {
|
|
37
|
+
return this.provider.execute('PROMPT', (ai) => ai.prompt(request));
|
|
38
|
+
}
|
|
39
|
+
async chat(prompt, options) {
|
|
40
|
+
return this.provider.execute('CHAT', (ai) => ai.chat(prompt, options));
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=three-tier-ai.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"three-tier-ai.js","sourceRoot":"","sources":["../../../src/ai/providers/three-tier-ai.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAQH,OAAO,EAAE,WAAW,EAA2B,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAcxE;;;;;GAKG;AACH,MAAM,OAAO,WAAW;IACd,QAAQ,CAAuC;IAEvD,YAAY,MAAyB;QACnC,MAAM,UAAU,GAAkC,MAAM,CAAC,UAAU,CAAC;QACpE,MAAM,YAAY,GAAkC,MAAM,CAAC,YAAY;YACrE,CAAC,CAAC,IAAI,WAAW,CAAC,MAAM,CAAC,YAAY,CAAC;YACtC,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,IAAI,GAAsB,IAAI,cAAc,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QAE5E,IAAI,CAAC,QAAQ,GAAG,IAAI,iBAAiB,CAAoB;YACvD,UAAU;YACV,YAAY;YACZ,IAAI;YACJ,KAAK,EAAE,MAAM,CAAC,KAAK;SACpB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,MAAc,EAAE,OAAoB;QAC5C,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACvE,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAAsB;QACjC,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IACrE,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,MAAc,EAAE,OAAoB;QAC7C,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACzE,CAAC;CACF"}
|
package/dist/ai/providers.d.ts
CHANGED
|
@@ -25,4 +25,5 @@ export declare function detectAvailableProviders(env: AIEnv): AIProvider[];
|
|
|
25
25
|
*/
|
|
26
26
|
export declare function selectProvider(requestedProvider: AIProvider | undefined, availableProviders: AIProvider[]): AIProvider;
|
|
27
27
|
export { HTTPProxyAI, type HTTPProxyAIOptions } from './providers/http-proxy-ai';
|
|
28
|
+
export { ThreeTierAI, type ThreeTierAIConfig } from './providers/three-tier-ai';
|
|
28
29
|
//# sourceMappingURL=providers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../../src/ai/providers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,iBAAiB,EACjB,UAAU,EAIV,KAAK,EACL,YAAY,EACb,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,YAAY,GAAG,iBAAiB,CAsF5E;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,iBAAiB,CAuI3E;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,iBAAiB,CA0C3F;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,KAAK,GAAG,UAAU,EAAE,CAUjE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,iBAAiB,EAAE,UAAU,GAAG,SAAS,EACzC,kBAAkB,EAAE,UAAU,EAAE,GAC/B,UAAU,CAeZ;AAGD,OAAO,EAAE,WAAW,EAAE,KAAK,kBAAkB,EAAE,MAAM,2BAA2B,CAAC"}
|
|
1
|
+
{"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../../src/ai/providers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,iBAAiB,EACjB,UAAU,EAIV,KAAK,EACL,YAAY,EACb,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,YAAY,GAAG,iBAAiB,CAsF5E;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,iBAAiB,CAuI3E;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,iBAAiB,CA0C3F;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,KAAK,GAAG,UAAU,EAAE,CAUjE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,iBAAiB,EAAE,UAAU,GAAG,SAAS,EACzC,kBAAkB,EAAE,UAAU,EAAE,GAC/B,UAAU,CAeZ;AAGD,OAAO,EAAE,WAAW,EAAE,KAAK,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAGjF,OAAO,EAAE,WAAW,EAAE,KAAK,iBAAiB,EAAE,MAAM,2BAA2B,CAAC"}
|
package/dist/ai/providers.js
CHANGED
|
@@ -277,4 +277,6 @@ export function selectProvider(requestedProvider, availableProviders) {
|
|
|
277
277
|
}
|
|
278
278
|
// Export HTTP proxy provider for preview mode
|
|
279
279
|
export { HTTPProxyAI } from './providers/http-proxy-ai';
|
|
280
|
+
// Export three-tier provider for graceful fallback
|
|
281
|
+
export { ThreeTierAI } from './providers/three-tier-ai';
|
|
280
282
|
//# sourceMappingURL=providers.js.map
|
package/dist/ai/providers.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"providers.js","sourceRoot":"","sources":["../../src/ai/providers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAYH;;GAEG;AACH,MAAM,UAAU,wBAAwB,CAAC,EAAgB;IACvD,6CAA6C;IAC7C,SAAS,WAAW,CAAC,YAAuB;QAC1C,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/C,OAAO,qCAAqC,CAAC;QAC/C,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;QAEnC,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,OAAO,wCAAwC,CAAC;QACxE,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,OAAO,qCAAqC,CAAC;QACrE,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC;YAAE,OAAO,kBAAkB,CAAC;QACrD,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;YAAE,OAAO,qCAAqC,CAAC;QACnE,IAAI,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC;YAAE,OAAO,iCAAiC,CAAC;QACvE,IAAI,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC;YAAE,OAAO,gCAAgC,CAAC;QACxE,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC;YAAE,OAAO,gCAAgC,CAAC;QAElE,OAAO,qCAAqC,CAAC;IAC/C,CAAC;IAED,MAAM,QAAQ,GAAsB;QAClC,KAAK,CAAC,GAAG,CAAC,MAAc,EAAE,OAAoB;YAC5C,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;YACjD,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,GAAG,CAAuB,KAAK,EAAE;gBACzD,MAAM;gBACN,UAAU,EAAE,OAAO,EAAE,SAAS;gBAC9B,WAAW,EAAE,OAAO,EAAE,WAAW;aAClC,CAAC,CAAC;YACH,OAAO,QAAQ,CAAC,QAAQ,IAAI,EAAE,CAAC;QACjC,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,MAAc,EAAE,OAAoB;YAC7C,OAAO,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACvC,CAAC;QAED,KAAK,CAAC,MAAM,CAAC,OAAsB;YACjC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,WAAW,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YAEjE,MAAM,QAAQ,GAAU,EAAE,CAAC;YAE3B,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;gBACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;YACnE,CAAC;YAED,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChD,MAAM,OAAO,GAAU,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;gBAEhE,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;oBACjC,IAAI,GAAG,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;wBACvB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBACpE,CAAC;yBAAM,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;wBACjC,OAAO,CAAC,IAAI,CAAC;4BACX,IAAI,EAAE,WAAW;4BACjB,SAAS,EAAE,EAAE,GAAG,EAAE,QAAQ,GAAG,CAAC,QAAQ,IAAI,YAAY,WAAW,GAAG,CAAC,IAAI,EAAE,EAAE;yBAC9E,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;gBAED,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;YAC3C,CAAC;iBAAM,CAAC;gBACN,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YAC3D,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,GAAG,CAAyC,KAAK,EAAE;gBAC3E,QAAQ;gBACR,UAAU,EAAE,OAAO,CAAC,SAAS;gBAC7B,WAAW,EAAE,OAAO,CAAC,WAAW;aACjC,CAAC,CAAC;YAEH,IAAI,IAAI,GAAG,EAAE,CAAC;YACd,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBACtB,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC;YAC3B,CAAC;iBAAM,IAAI,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3D,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;YAChF,CAAC;YAED,OAAO;gBACL,IAAI;gBACJ,QAAQ,EAAE,YAAY;gBACtB,KAAK;gBACL,UAAU,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE;aAC9C,CAAC;QACJ,CAAC;KACF,CAAC;IAEF,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,uBAAuB,CAAC,QAAgB;IACtD,MAAM,iBAAiB,GAAG,8BAA8B,CAAC;IAEzD,OAAO,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAEhJ,KAAK,UAAU,OAAO,CAAI,MAAc,EAAE,QAAgB,EAAE,IAAU;QACpE,MAAM,GAAG,GAAG,GAAG,iBAAiB,GAAG,QAAQ,EAAE,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,uBAAuB,MAAM,IAAI,GAAG,EAAE,CAAC,CAAC;QACpD,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,CAAC,GAAG,CAAC,2BAA2B,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC1E,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAChC,MAAM;YACN,OAAO,EAAE;gBACP,eAAe,EAAE,SAAS,QAAQ,EAAE;gBACpC,cAAc,EAAE,kBAAkB;aACnC;YACD,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;SAC9C,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,wBAAwB,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,KAAK,OAAO,KAAK,CAAC,CAAC;QAE7F,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACxC,OAAO,CAAC,KAAK,CAAC,oCAAoC,SAAS,EAAE,CAAC,CAAC;YAC/D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,IAAI,CAAwB,CAAC;YACnE,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,IAAI,wBAAwB,QAAQ,CAAC,UAAU,MAAM,SAAS,EAAE,CAAC,CAAC;QAChG,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,EAA6B,CAAC;QAChE,OAAO,CAAC,GAAG,CAAC,2CAA2C,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzF,OAAO,MAAW,CAAC;IACrB,CAAC;IAED,gCAAgC;IAChC,MAAM,kBAAkB,GAAG,gCAAgC,CAAC;IAE5D,MAAM,iBAAiB,GAAsB;QAC3C,KAAK,CAAC,GAAG,CAAC,MAAc,EAAE,OAAoB;YAC5C,OAAO,CAAC,GAAG,CAAC,sDAAsD,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;YACnF,oBAAoB;YACpB,MAAM,UAAU,GAAG,MAAM,OAAO,CAAM,MAAM,EAAE,cAAc,EAAE;gBAC5D,OAAO,EAAE,kBAAkB;gBAC3B,KAAK,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE;aACrF,CAAC,CAAC;YAEH,OAAO,CAAC,GAAG,CAAC,uCAAuC,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;YAEpE,sBAAsB;YACtB,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YACtD,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;YACrF,OAAO,CAAC,GAAG,CAAC,+CAA+C,MAAM,EAAE,MAAM,IAAI,CAAC,EAAE,CAAC,CAAC;YAClF,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,MAAc,EAAE,OAAoB;YAC7C,OAAO,iBAAiB,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAChD,CAAC;QAED,KAAK,CAAC,MAAM,CAAC,GAAkB;YAC7B,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,IAAI,kBAAkB,CAAC;YAC9C,OAAO,CAAC,GAAG,CAAC,oDAAoD,KAAK,EAAE,CAAC,CAAC;YAEzE,MAAM,UAAU,GAAG,MAAM,OAAO,CAAM,MAAM,EAAE,cAAc,EAAE;gBAC5D,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE;oBACL,MAAM,EAAE,GAAG,CAAC,MAAM;oBAClB,aAAa,EAAE,GAAG,CAAC,YAAY;oBAC/B,UAAU,EAAE,GAAG,CAAC,SAAS;oBACzB,WAAW,EAAE,GAAG,CAAC,WAAW;iBAC7B;aACF,CAAC,CAAC;YAEH,OAAO,CAAC,GAAG,CAAC,0CAA0C,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;YAEvE,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YACtD,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;YAEnF,OAAO,CAAC,GAAG,CAAC,kDAAkD,IAAI,EAAE,MAAM,IAAI,CAAC,EAAE,CAAC,CAAC;YAEnF,OAAO;gBACL,IAAI;gBACJ,QAAQ,EAAE,WAAW;gBACrB,KAAK;gBACL,UAAU,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE;aAC9C,CAAC;QACJ,CAAC;KACF,CAAC;IAEF,OAAO,iBAAiB,CAAC;IAEzB,KAAK,UAAU,iBAAiB,CAAC,EAAU,EAAE,OAAO,GAAG,KAAK;QAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,YAAY,GAAG,IAAI,CAAC;QAC1B,IAAI,SAAS,GAAG,CAAC,CAAC;QAElB,OAAO,CAAC,GAAG,CAAC,gDAAgD,EAAE,cAAc,OAAO,IAAI,CAAC,CAAC;QAEzF,OAAO,IAAI,EAAE,CAAC;YACZ,SAAS,EAAE,CAAC;YACZ,MAAM,UAAU,GAAG,MAAM,OAAO,CAAM,KAAK,EAAE,gBAAgB,EAAE,EAAE,CAAC,CAAC;YACnE,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YAEvC,IAAI,SAAS,GAAG,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;gBAC9D,OAAO,CAAC,GAAG,CAAC,qBAAqB,SAAS,WAAW,UAAU,CAAC,MAAM,aAAa,OAAO,IAAI,CAAC,CAAC;YAClG,CAAC;YAED,IAAI,UAAU,CAAC,MAAM,KAAK,WAAW,IAAI,UAAU,CAAC,MAAM,KAAK,QAAQ,IAAI,UAAU,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;gBAC5G,IAAI,UAAU,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;oBACnC,OAAO,CAAC,KAAK,CAAC,yCAAyC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;oBAC3E,MAAM,IAAI,KAAK,CAAC,sBAAsB,UAAU,CAAC,KAAK,IAAI,eAAe,EAAE,CAAC,CAAC;gBAC/E,CAAC;gBACD,IAAI,UAAU,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;oBACrC,OAAO,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC;oBACxD,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;gBAC7C,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,iDAAiD,OAAO,OAAO,SAAS,QAAQ,CAAC,CAAC;gBAC9F,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;oBACtB,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,UAAU,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,OAAO,UAAU,CAAC,MAAM,CAAC;oBACtH,OAAO,CAAC,GAAG,CAAC,iCAAiC,UAAU,EAAE,CAAC,CAAC;gBAC7D,CAAC;gBACD,OAAO,UAAU,CAAC;YACpB,CAAC;YAED,IAAI,OAAO,GAAG,OAAO,EAAE,CAAC;gBACtB,OAAO,CAAC,KAAK,CAAC,oCAAoC,OAAO,OAAO,SAAS,QAAQ,CAAC,CAAC;gBACnF,MAAM,IAAI,KAAK,CAAC,4BAA4B,OAAO,IAAI,CAAC,CAAC;YAC3D,CAAC;YAED,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,yBAAyB,CAAC,MAAc,EAAE,MAAc;IACtE,KAAK,UAAU,OAAO,CAAI,QAAgB,EAAE,IAAS;QACnD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,MAAM,eAAe,QAAQ,EAAE,EAAE;YAC/D,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,WAAW,EAAE,MAAM;aACpB;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC3B,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAuB,CAAC;YAC5E,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,IAAI,qBAAqB,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;QAC7E,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;IACzB,CAAC;IAED,MAAM,gBAAgB,GAAsB;QAC1C,KAAK,CAAC,GAAG,CAAC,MAAc,EAAE,OAAoB;YAC5C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAiB,SAAS,EAAE;gBACtD,MAAM;gBACN,QAAQ,EAAE,OAAO,EAAE,QAAQ;gBAC3B,YAAY,EAAE,OAAO,EAAE,YAAY;gBACnC,SAAS,EAAE,OAAO,EAAE,SAAS;gBAC7B,WAAW,EAAE,OAAO,EAAE,WAAW;aAClC,CAAC,CAAC;YAEH,OAAO,MAAM,CAAC,IAAI,CAAC;QACrB,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,MAAc,EAAE,OAAoB;YAC7C,OAAO,gBAAgB,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC/C,CAAC;QAED,KAAK,CAAC,MAAM,CAAC,GAAkB;YAC7B,OAAO,OAAO,CAAiB,SAAS,EAAE,GAAG,CAAC,CAAC;QACjD,CAAC;KACF,CAAC;IAEF,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,wBAAwB,CAAC,GAAU;IACjD,MAAM,SAAS,GAAiB,EAAE,CAAC;IAEnC,IAAI,GAAG,CAAC,EAAE;QAAE,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACzC,IAAI,GAAG,CAAC,mBAAmB;QAAE,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACzD,IAAI,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACzB,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAClD,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAC5B,iBAAyC,EACzC,kBAAgC;IAEhC,sDAAsD;IACtD,IAAI,iBAAiB,IAAI,iBAAiB,KAAK,MAAM,EAAE,CAAC;QACtD,IAAI,kBAAkB,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACnD,OAAO,iBAAiB,CAAC;QAC3B,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,aAAa,iBAAiB,8BAA8B,iBAAiB,CAAC,WAAW,EAAE,wBAAwB,CAAC,CAAC;IACvI,CAAC;IAED,4DAA4D;IAC5D,IAAI,kBAAkB,CAAC,QAAQ,CAAC,YAAY,CAAC;QAAE,OAAO,YAAY,CAAC;IACnE,IAAI,kBAAkB,CAAC,QAAQ,CAAC,WAAW,CAAC;QAAE,OAAO,WAAW,CAAC;IACjE,IAAI,kBAAkB,CAAC,QAAQ,CAAC,WAAW,CAAC;QAAE,OAAO,WAAW,CAAC;IAEjE,MAAM,IAAI,KAAK,CAAC,sFAAsF,CAAC,CAAC;AAC1G,CAAC;AAED,8CAA8C;AAC9C,OAAO,EAAE,WAAW,EAA2B,MAAM,2BAA2B,CAAC"}
|
|
1
|
+
{"version":3,"file":"providers.js","sourceRoot":"","sources":["../../src/ai/providers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/database/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAKhF,mBAAmB,SAAS,CAAC;AAE7B;;;;;;;;;;;;GAYG;AACH,wBAAgB,WAAW,CACzB,GAAG,CAAC,EAAE,eAAe,GAAG;IAAE,GAAG,EAAE,aAAa,CAAA;CAAE,GAAG,aAAa,GAC7D,gBAAgB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/database/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAKhF,mBAAmB,SAAS,CAAC;AAE7B;;;;;;;;;;;;GAYG;AACH,wBAAgB,WAAW,CACzB,GAAG,CAAC,EAAE,eAAe,GAAG;IAAE,GAAG,EAAE,aAAa,CAAA;CAAE,GAAG,aAAa,GAC7D,gBAAgB,CA4ClB;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,aAAa,GAAG,gBAAgB,CAenE"}
|
package/dist/database/index.js
CHANGED
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
* }
|
|
21
21
|
* ```
|
|
22
22
|
*/
|
|
23
|
-
import { FlexDB,
|
|
23
|
+
import { FlexDB, ThreeTierDatabase } from './providers';
|
|
24
24
|
import { getPlatformEnv, isPlatformEnvConfigured } from '../env';
|
|
25
25
|
/**
|
|
26
26
|
* Get a database instance for the current request
|
|
@@ -58,39 +58,21 @@ export function getDatabase(req) {
|
|
|
58
58
|
if (!env) {
|
|
59
59
|
throw new Error('No environment found in request. Ensure you are running in edge runtime.');
|
|
60
60
|
}
|
|
61
|
-
//
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
}
|
|
67
|
-
//
|
|
68
|
-
if (!
|
|
69
|
-
// Log available bindings for debugging
|
|
61
|
+
// Use three-tier provider system
|
|
62
|
+
const config = {
|
|
63
|
+
production: env.DB,
|
|
64
|
+
previewProxy: env.__DB_HTTP_PROXY__,
|
|
65
|
+
debug: true,
|
|
66
|
+
};
|
|
67
|
+
// If no production binding and no preview proxy, throw error
|
|
68
|
+
if (!config.production && !config.previewProxy) {
|
|
70
69
|
const availableBindings = Object.keys(env || {}).filter(k => !k.startsWith('__'));
|
|
71
|
-
console.error('[
|
|
70
|
+
console.error('[PLATFORM-SDK] No DB binding found. Available bindings:', availableBindings.join(', ') || 'none');
|
|
72
71
|
throw new Error('No D1 database binding found. The "DB" binding is missing from your worker configuration. ' +
|
|
73
72
|
'This usually means the D1 database was not created during deployment. ' +
|
|
74
73
|
'Check deployment logs for D1 creation errors. Available bindings: ' + (availableBindings.join(', ') || 'none'));
|
|
75
74
|
}
|
|
76
|
-
|
|
77
|
-
const provider = env.DB_PROVIDER || 'flex';
|
|
78
|
-
switch (provider) {
|
|
79
|
-
case 'flex':
|
|
80
|
-
return new FlexDB(env.DB);
|
|
81
|
-
case 'turso':
|
|
82
|
-
// Future: TursoDB implementation
|
|
83
|
-
throw new Error('TursoDB provider not yet implemented. Use DB_PROVIDER=flex or remove DB_PROVIDER.');
|
|
84
|
-
case 'mongo-atlas':
|
|
85
|
-
// Future: MongoDB Atlas implementation
|
|
86
|
-
throw new Error('MongoDB Atlas provider not yet implemented. Use DB_PROVIDER=flex or remove DB_PROVIDER.');
|
|
87
|
-
case 'planetscale':
|
|
88
|
-
// Future: PlanetScale implementation
|
|
89
|
-
throw new Error('PlanetScale provider not yet implemented. Use DB_PROVIDER=flex or remove DB_PROVIDER.');
|
|
90
|
-
default:
|
|
91
|
-
console.warn(`Unknown DB_PROVIDER: ${provider}. Falling back to FlexDB.`);
|
|
92
|
-
return new FlexDB(env.DB);
|
|
93
|
-
}
|
|
75
|
+
return new ThreeTierDatabase(config);
|
|
94
76
|
}
|
|
95
77
|
/**
|
|
96
78
|
* Create a database instance directly (for advanced usage)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/database/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,EAAE,MAAM,EAAE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/database/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAmD,MAAM,aAAa,CAAC;AACzG,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,QAAQ,CAAC;AAKjE;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,WAAW,CACzB,GAA8D;IAE9D,IAAI,GAA8B,CAAC;IAEnC,2DAA2D;IAC3D,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,IAAI,CAAC,uBAAuB,EAAE,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CACb,8EAA8E;gBAC5E,sHAAsH,CACzH,CAAC;QACJ,CAAC;QACD,GAAG,GAAG,cAAc,EAAmB,CAAC;IAC1C,CAAC;SAAM,IAAI,KAAK,IAAI,GAAG,EAAE,CAAC;QACxB,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC;IAChB,CAAC;SAAM,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC;QACvB,oBAAoB;QACpB,GAAG,GAAG,GAAoB,CAAC;IAC7B,CAAC;SAAM,CAAC;QACN,GAAG,GAAI,GAAW,CAAC,GAAG,CAAC;IACzB,CAAC;IAED,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAC;IAC9F,CAAC;IAED,iCAAiC;IACjC,MAAM,MAAM,GAAsB;QAChC,UAAU,EAAE,GAAG,CAAC,EAAE;QAClB,YAAY,EAAE,GAAG,CAAC,iBAAmD;QACrE,KAAK,EAAE,IAAI;KACZ,CAAC;IAEF,6DAA6D;IAC7D,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;QAC/C,MAAM,iBAAiB,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QAClF,OAAO,CAAC,KAAK,CAAC,yDAAyD,EAAE,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,CAAC;QACjH,MAAM,IAAI,KAAK,CACb,4FAA4F;YAC5F,wEAAwE;YACxE,oEAAoE,GAAG,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,CAChH,CAAC;IACJ,CAAC;IAED,OAAO,IAAI,iBAAiB,CAAC,MAAM,CAAC,CAAC;AACvC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,cAAc,CAAC,GAAkB;IAC/C,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,QAAQ,GAAG,GAAG,CAAC,WAAW,IAAI,MAAM,CAAC;IAE3C,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,MAAM;YACT,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAE5B;YACE,OAAO,CAAC,IAAI,CAAC,wBAAwB,QAAQ,2BAA2B,CAAC,CAAC;YAC1E,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC9B,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Simple in-memory mock database provider
|
|
3
|
+
* Implements DatabaseProvider interface for preview/testing
|
|
4
|
+
*/
|
|
5
|
+
import type { DatabaseProvider, Collection } from './types';
|
|
6
|
+
export declare class MockDatabaseProvider implements DatabaseProvider {
|
|
7
|
+
private collections;
|
|
8
|
+
collection<T = any>(name: string): Collection<T>;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=mock-provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-provider.d.ts","sourceRoot":"","sources":["../../src/database/mock-provider.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,gBAAgB,EAChB,UAAU,EASX,MAAM,SAAS,CAAC;AAkKjB,qBAAa,oBAAqB,YAAW,gBAAgB;IAC3D,OAAO,CAAC,WAAW,CAA+C;IAElE,UAAU,CAAC,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC;CAMjD"}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Simple in-memory mock database provider
|
|
3
|
+
* Implements DatabaseProvider interface for preview/testing
|
|
4
|
+
*/
|
|
5
|
+
class MockCollection {
|
|
6
|
+
name;
|
|
7
|
+
documents = new Map();
|
|
8
|
+
nextId = 1;
|
|
9
|
+
constructor(name) {
|
|
10
|
+
this.name = name;
|
|
11
|
+
}
|
|
12
|
+
async insertOne(doc) {
|
|
13
|
+
const id = `${this.name}_${this.nextId++}`;
|
|
14
|
+
const document = { ...doc, _id: id };
|
|
15
|
+
this.documents.set(id, document);
|
|
16
|
+
return { insertedId: id };
|
|
17
|
+
}
|
|
18
|
+
async insertMany(docs) {
|
|
19
|
+
const insertedIds = [];
|
|
20
|
+
for (const doc of docs) {
|
|
21
|
+
const result = await this.insertOne(doc);
|
|
22
|
+
insertedIds.push(result.insertedId);
|
|
23
|
+
}
|
|
24
|
+
return { insertedIds };
|
|
25
|
+
}
|
|
26
|
+
async findOne(query) {
|
|
27
|
+
for (const doc of this.documents.values()) {
|
|
28
|
+
if (this.matches(doc, query)) {
|
|
29
|
+
return doc;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
return null;
|
|
33
|
+
}
|
|
34
|
+
find(query, options) {
|
|
35
|
+
const executeFind = async () => {
|
|
36
|
+
let results = Array.from(this.documents.values()).filter(doc => this.matches(doc, query || {}));
|
|
37
|
+
if (options?.skip) {
|
|
38
|
+
results = results.slice(options.skip);
|
|
39
|
+
}
|
|
40
|
+
if (options?.limit) {
|
|
41
|
+
results = results.slice(0, options.limit);
|
|
42
|
+
}
|
|
43
|
+
return results;
|
|
44
|
+
};
|
|
45
|
+
const cursor = {
|
|
46
|
+
_query: query || {},
|
|
47
|
+
_options: options || {},
|
|
48
|
+
then(resolve, reject) {
|
|
49
|
+
executeFind().then(resolve, reject);
|
|
50
|
+
return null;
|
|
51
|
+
},
|
|
52
|
+
sort(sort) {
|
|
53
|
+
this._options.sort = sort;
|
|
54
|
+
return this;
|
|
55
|
+
},
|
|
56
|
+
limit(limit) {
|
|
57
|
+
this._options.limit = limit;
|
|
58
|
+
return this;
|
|
59
|
+
},
|
|
60
|
+
skip(skip) {
|
|
61
|
+
this._options.skip = skip;
|
|
62
|
+
return this;
|
|
63
|
+
},
|
|
64
|
+
toArray() {
|
|
65
|
+
return executeFind();
|
|
66
|
+
},
|
|
67
|
+
};
|
|
68
|
+
return cursor;
|
|
69
|
+
}
|
|
70
|
+
async updateOne(query, update) {
|
|
71
|
+
const doc = await this.findOne(query);
|
|
72
|
+
if (!doc) {
|
|
73
|
+
return { matchedCount: 0, modifiedCount: 0 };
|
|
74
|
+
}
|
|
75
|
+
const updated = this.applyUpdate(doc, update);
|
|
76
|
+
this.documents.set(doc._id, updated);
|
|
77
|
+
return { matchedCount: 1, modifiedCount: 1 };
|
|
78
|
+
}
|
|
79
|
+
async updateMany(query, update) {
|
|
80
|
+
const docs = await this.find(query).toArray();
|
|
81
|
+
for (const doc of docs) {
|
|
82
|
+
const updated = this.applyUpdate(doc, update);
|
|
83
|
+
this.documents.set(doc._id, updated);
|
|
84
|
+
}
|
|
85
|
+
return { matchedCount: docs.length, modifiedCount: docs.length };
|
|
86
|
+
}
|
|
87
|
+
async deleteOne(query) {
|
|
88
|
+
const doc = await this.findOne(query);
|
|
89
|
+
if (!doc) {
|
|
90
|
+
return { deletedCount: 0 };
|
|
91
|
+
}
|
|
92
|
+
this.documents.delete(doc._id);
|
|
93
|
+
return { deletedCount: 1 };
|
|
94
|
+
}
|
|
95
|
+
async deleteMany(query) {
|
|
96
|
+
const docs = await this.find(query).toArray();
|
|
97
|
+
for (const doc of docs) {
|
|
98
|
+
this.documents.delete(doc._id);
|
|
99
|
+
}
|
|
100
|
+
return { deletedCount: docs.length };
|
|
101
|
+
}
|
|
102
|
+
async countDocuments(query) {
|
|
103
|
+
const docs = await this.find(query || {}).toArray();
|
|
104
|
+
return docs.length;
|
|
105
|
+
}
|
|
106
|
+
matches(doc, query) {
|
|
107
|
+
if (!query || Object.keys(query).length === 0) {
|
|
108
|
+
return true;
|
|
109
|
+
}
|
|
110
|
+
for (const [key, value] of Object.entries(query)) {
|
|
111
|
+
const docValue = doc[key];
|
|
112
|
+
if (docValue !== value) {
|
|
113
|
+
return false;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
return true;
|
|
117
|
+
}
|
|
118
|
+
applyUpdate(doc, update) {
|
|
119
|
+
const result = { ...doc };
|
|
120
|
+
if (update.$set) {
|
|
121
|
+
Object.assign(result, update.$set);
|
|
122
|
+
}
|
|
123
|
+
if (update.$inc) {
|
|
124
|
+
for (const [key, value] of Object.entries(update.$inc)) {
|
|
125
|
+
result[key] = (result[key] || 0) + value;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
if (update.$unset) {
|
|
129
|
+
for (const key of Object.keys(update.$unset)) {
|
|
130
|
+
delete result[key];
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
return result;
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
export class MockDatabaseProvider {
|
|
137
|
+
collections = new Map();
|
|
138
|
+
collection(name) {
|
|
139
|
+
if (!this.collections.has(name)) {
|
|
140
|
+
this.collections.set(name, new MockCollection(name));
|
|
141
|
+
}
|
|
142
|
+
return this.collections.get(name);
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
//# sourceMappingURL=mock-provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-provider.js","sourceRoot":"","sources":["../../src/database/mock-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/database/providers/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,iBAAiB,EAAE,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/database/providers/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,iBAAiB,EAAE,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,KAAK,iBAAiB,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
export { FlexDB } from './flex-db';
|
|
7
7
|
export { HTTPProxyDatabase } from './http-proxy-db';
|
|
8
|
+
export { ThreeTierDatabase } from './three-tier-db';
|
|
8
9
|
// Future providers:
|
|
9
10
|
// export { TursoDB } from './turso-db';
|
|
10
11
|
// export { MongoAtlasDB } from './mongo-atlas-db';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/database/providers/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,iBAAiB,EAA2B,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/database/providers/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,iBAAiB,EAA2B,MAAM,iBAAiB,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAA0B,MAAM,iBAAiB,CAAC;AAE5E,oBAAoB;AACpB,wCAAwC;AACxC,mDAAmD;AACnD,oDAAoD"}
|