@pyric/cli 0.1.0-alpha.30 → 0.1.0-alpha.30.1
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/assurance/.generated/conformance-verdicts.d.ts +4 -0
- package/dist/assurance/.generated/conformance-verdicts.d.ts.map +1 -1
- package/dist/assurance/.generated/conformance-verdicts.js +4 -0
- package/dist/assurance/.generated/conformance-verdicts.js.map +1 -1
- package/dist/cli/serve.d.ts +2 -0
- package/dist/cli/serve.d.ts.map +1 -1
- package/dist/cli/serve.js +13 -2
- package/dist/cli/serve.js.map +1 -1
- package/dist/conformance/.generated/can-i-use-browser.js +2 -2
- package/dist/conformance/.generated/can-i-use-browser.js.map +1 -1
- package/dist/conformance/.generated/can-i-use.d.ts.map +1 -1
- package/dist/conformance/.generated/can-i-use.js +1 -1
- package/dist/conformance/.generated/can-i-use.js.map +1 -1
- package/dist/conformance/.generated/conformance-docs.d.ts.map +1 -1
- package/dist/conformance/.generated/conformance-docs.js +1 -1
- package/dist/conformance/.generated/conformance-docs.js.map +1 -1
- package/dist/register/app-bridge-admin-app-check.d.ts +3 -0
- package/dist/register/app-bridge-admin-app-check.d.ts.map +1 -0
- package/dist/register/app-bridge-admin-app-check.js +43 -0
- package/dist/register/app-bridge-admin-app-check.js.map +1 -0
- package/dist/register/app-bridge-app-check.d.ts +4 -0
- package/dist/register/app-bridge-app-check.d.ts.map +1 -1
- package/dist/register/app-bridge-app-check.js +4 -0
- package/dist/register/app-bridge-app-check.js.map +1 -1
- package/dist/register/app-bridge-shadow.d.ts +4 -2
- package/dist/register/app-bridge-shadow.d.ts.map +1 -1
- package/dist/register/app-bridge-shadow.js +29 -5
- package/dist/register/app-bridge-shadow.js.map +1 -1
- package/dist/register/index.d.ts.map +1 -1
- package/dist/register/index.js +21 -0
- package/dist/register/index.js.map +1 -1
- package/dist/serve/bundler.d.ts +40 -0
- package/dist/serve/bundler.d.ts.map +1 -1
- package/dist/serve/bundler.js +133 -2
- package/dist/serve/bundler.js.map +1 -1
- package/dist/serve/entries/app-ai-passthrough.d.ts +4 -4
- package/dist/serve/entries/app-ai-passthrough.d.ts.map +1 -1
- package/dist/serve/entries/app-ai-passthrough.js +8 -52
- package/dist/serve/entries/app-ai-passthrough.js.map +1 -1
- package/dist/serve/firebase-module-swap.d.ts +22 -0
- package/dist/serve/firebase-module-swap.d.ts.map +1 -1
- package/dist/serve/firebase-module-swap.js +51 -3
- package/dist/serve/firebase-module-swap.js.map +1 -1
- package/dist/serve/hosted/method-protocol.d.ts +4 -4
- package/dist/serve/html-injection.d.ts +2 -0
- package/dist/serve/html-injection.d.ts.map +1 -1
- package/dist/serve/html-injection.js +4 -2
- package/dist/serve/html-injection.js.map +1 -1
- package/dist/serve/namespace.d.ts.map +1 -1
- package/dist/serve/namespace.js +5 -1
- package/dist/serve/namespace.js.map +1 -1
- package/dist/serve/site-ui/docs/ai-compat/index.html +9 -9
- package/dist/serve/site-ui/docs/ai-compat.md +9 -9
- package/dist/serve/site-ui/docs/app-check-compat/index.html +42 -18
- package/dist/serve/site-ui/docs/app-check-compat.md +42 -18
- package/dist/serve/site-ui/docs/auth-compat/index.html +4 -4
- package/dist/serve/site-ui/docs/auth-compat.md +4 -4
- package/dist/serve/site-ui/docs/build/ai-logic/index.html +2 -0
- package/dist/serve/site-ui/docs/build/ai-logic.md +4 -0
- package/dist/serve/site-ui/docs/database-compat/index.html +4 -4
- package/dist/serve/site-ui/docs/database-compat.md +4 -4
- package/dist/serve/site-ui/docs/firestore-compat/index.html +4 -4
- package/dist/serve/site-ui/docs/firestore-compat.md +4 -4
- package/dist/serve/site-ui/docs/messaging-compat/index.html +4 -4
- package/dist/serve/site-ui/docs/messaging-compat.md +4 -4
- package/dist/serve/site-ui/docs/pyric-admin-app-reference-api/index.html +4 -0
- package/dist/serve/site-ui/docs/pyric-admin-app-reference-api.md +5 -0
- package/dist/serve/site-ui/docs/pyric-cli-register-app-bridge-app-check-reference-api/index.html +2 -0
- package/dist/serve/site-ui/docs/pyric-cli-register-app-bridge-app-check-reference-api.md +3 -0
- package/dist/serve/site-ui/docs/storage-compat/index.html +5 -5
- package/dist/serve/site-ui/docs/storage-compat.md +5 -5
- package/dist/serve/site-ui/examples/chess/index.html +1 -1
- package/package.json +4 -4
- package/src/assurance/.generated/conformance-verdicts.ts +4 -0
- package/src/cli/serve.ts +14 -2
- package/src/conformance/.generated/can-i-use-browser.ts +2 -2
- package/src/conformance/.generated/can-i-use.ts +1 -1
- package/src/conformance/.generated/conformance-docs.ts +1 -1
- package/src/register/app-bridge-admin-app-check.ts +46 -0
- package/src/register/app-bridge-app-check.ts +4 -0
- package/src/register/app-bridge-shadow.ts +35 -5
- package/src/register/index.ts +23 -0
- package/src/serve/bundler.ts +163 -2
- package/src/serve/entries/app-ai-passthrough.ts +8 -58
- package/src/serve/firebase-module-swap.ts +52 -3
- package/src/serve/html-injection.ts +4 -2
- package/src/serve/namespace.ts +5 -1
|
@@ -2,58 +2,14 @@
|
|
|
2
2
|
import { bindAppRegistrySandbox } from 'pyric/app/internal';
|
|
3
3
|
import { sandbox } from './app-backend.js';
|
|
4
4
|
import * as pyricApp from 'pyric/app';
|
|
5
|
-
import
|
|
5
|
+
import { shadowedAppRegistry } from '../../register/app-bridge-shadow.js';
|
|
6
6
|
bindAppRegistrySandbox(sandbox);
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
const initOptions = (options ?? app.options);
|
|
15
|
-
const initSettings = rawSettings ?? app.name;
|
|
16
|
-
const isStringSettings = typeof initSettings === 'string';
|
|
17
|
-
if (isStringSettings) {
|
|
18
|
-
shadow = realApp.initializeApp(initOptions, initSettings);
|
|
19
|
-
}
|
|
20
|
-
else {
|
|
21
|
-
const objectSettings = initSettings;
|
|
22
|
-
shadow = realApp.initializeApp(initOptions, objectSettings);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
const hasShadowContainer = shadow.container !== undefined && shadow.container !== null;
|
|
26
|
-
if (hasShadowContainer) {
|
|
27
|
-
Object.defineProperty(app, 'container', { value: shadow.container, configurable: true });
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
catch {
|
|
31
|
-
// Observational/best-effort: do not break Pyric initialization if shadow initialization fails.
|
|
32
|
-
}
|
|
33
|
-
return app;
|
|
34
|
-
}
|
|
35
|
-
export function initializeApp(options, rawSettings) {
|
|
36
|
-
const app = pyricApp.initializeApp(options, rawSettings);
|
|
37
|
-
return decorateApp(app, options, rawSettings);
|
|
38
|
-
}
|
|
39
|
-
export function getApp(name) {
|
|
40
|
-
return decorateApp(pyricApp.getApp(name));
|
|
41
|
-
}
|
|
42
|
-
export function getApps() {
|
|
43
|
-
return pyricApp.getApps().map((app) => decorateApp(app));
|
|
44
|
-
}
|
|
45
|
-
export async function deleteApp(app) {
|
|
46
|
-
try {
|
|
47
|
-
const shadow = realApp.getApp(app.name);
|
|
48
|
-
const hasShadow = shadow !== undefined && shadow !== null;
|
|
49
|
-
if (hasShadow) {
|
|
50
|
-
await realApp.deleteApp(shadow);
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
catch {
|
|
54
|
-
// Ignore if shadow app was not initialized or already deleted.
|
|
55
|
-
}
|
|
56
|
-
return pyricApp.deleteApp(app);
|
|
57
|
-
}
|
|
7
|
+
// One shadow implementation for every plane: the register adapters build
|
|
8
|
+
// their exports from the same registry.
|
|
9
|
+
const registry = shadowedAppRegistry(pyricApp);
|
|
10
|
+
export const initializeApp = registry.initializeApp;
|
|
11
|
+
export const getApp = registry.getApp;
|
|
12
|
+
export const getApps = registry.getApps;
|
|
13
|
+
export const deleteApp = registry.deleteApp;
|
|
58
14
|
export { FirebaseError, SDK_VERSION, onLog, registerVersion, setLogLevel, } from 'pyric/app';
|
|
59
15
|
//# sourceMappingURL=app-ai-passthrough.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app-ai-passthrough.js","sourceRoot":"","sources":["../../../src/serve/entries/app-ai-passthrough.ts"],"names":[],"mappings":"AAAA,gHAAgH;AAChH,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,KAAK,QAAQ,MAAM,WAAW,CAAC;AACtC,OAAO,
|
|
1
|
+
{"version":3,"file":"app-ai-passthrough.js","sourceRoot":"","sources":["../../../src/serve/entries/app-ai-passthrough.ts"],"names":[],"mappings":"AAAA,gHAAgH;AAChH,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,KAAK,QAAQ,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAE1E,sBAAsB,CAAC,OAAO,CAAC,CAAC;AAEhC,yEAAyE;AACzE,wCAAwC;AACxC,MAAM,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;AAE/C,MAAM,CAAC,MAAM,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC;AACpD,MAAM,CAAC,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;AACtC,MAAM,CAAC,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;AACxC,MAAM,CAAC,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC;AAE5C,OAAO,EACL,aAAa,EACb,WAAW,EACX,KAAK,EACL,eAAe,EACf,WAAW,GACZ,MAAM,WAAW,CAAC"}
|
|
@@ -15,6 +15,21 @@ export declare function resolveAiMode(explicit: AiMode | undefined, env: Record<
|
|
|
15
15
|
* from the result is not swapped and resolves to the Firebase SDK.
|
|
16
16
|
*/
|
|
17
17
|
export declare function swappedFirebaseEntries(mode: AiMode): ReadonlyMap<ServedFirebaseSpecifier, string>;
|
|
18
|
+
/**
|
|
19
|
+
* The Firebase SDK modules `pyric sandbox` builds for the browser from the
|
|
20
|
+
* project's own `firebase` install in production AI mode, to the entry key of
|
|
21
|
+
* each (`/__pyric/sdk/<key>.js`). One build, so the three share one
|
|
22
|
+
* `@firebase/app` component registry. The Vite and register planes resolve
|
|
23
|
+
* the Firebase SDK themselves and never read this.
|
|
24
|
+
*/
|
|
25
|
+
export declare const REAL_SDK_ENTRIES: ReadonlyMap<ServedFirebaseSpecifier, string>;
|
|
26
|
+
/**
|
|
27
|
+
* The import-map plane's specifier to entry key table: the swap, plus, in
|
|
28
|
+
* production AI mode, the unswapped `firebase/ai` sent to the Firebase SDK
|
|
29
|
+
* that `pyric sandbox` builds. A browser has no package resolution, so on
|
|
30
|
+
* this plane an unswapped specifier still needs a URL.
|
|
31
|
+
*/
|
|
32
|
+
export declare function importMapFirebaseEntries(mode: AiMode): ReadonlyMap<ServedFirebaseSpecifier, string>;
|
|
18
33
|
/**
|
|
19
34
|
* Whether an importer is one of this package's own modules that wrap the
|
|
20
35
|
* Firebase SDK's `firebase/app` or `firebase/app-check`. Those imports must
|
|
@@ -24,4 +39,11 @@ export declare function swappedFirebaseEntries(mode: AiMode): ReadonlyMap<Served
|
|
|
24
39
|
export declare function isShadowAppImporter(importer: string | undefined): boolean;
|
|
25
40
|
/** Whether this import is a shadow-app wrapper reaching the Firebase SDK it wraps. */
|
|
26
41
|
export declare function isBypassedBridgeImport(specifier: string, importer: string | undefined): boolean;
|
|
42
|
+
/**
|
|
43
|
+
* Where a bypassed bridge import goes on the import-map plane: the entry key
|
|
44
|
+
* of the Firebase SDK module `pyric sandbox` builds. The bare specifier
|
|
45
|
+
* cannot stay, because the import map sends it back to the wrapper itself.
|
|
46
|
+
* Undefined for every import {@link isBypassedBridgeImport} does not name.
|
|
47
|
+
*/
|
|
48
|
+
export declare function bridgeImportEntryKey(specifier: string, importer: string | undefined): string | undefined;
|
|
27
49
|
//# sourceMappingURL=firebase-module-swap.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"firebase-module-swap.d.ts","sourceRoot":"","sources":["../../src/serve/firebase-module-swap.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"firebase-module-swap.d.ts","sourceRoot":"","sources":["../../src/serve/firebase-module-swap.ts"],"names":[],"mappings":"AAoBA,2EAA2E;AAC3E,eAAO,MAAM,WAAW,wTAed,CAAC;AAEX,MAAM,MAAM,MAAM,GAAG,SAAS,GAAG,YAAY,CAAC;AAE9C,mFAAmF;AACnF,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnE;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GACtC,MAAM,CAIR;AAOD;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC,uBAAuB,EAAE,MAAM,CAAC,CAYjG;AAED;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,EAAE,WAAW,CAAC,uBAAuB,EAAE,MAAM,CAIxE,CAAC;AAEH;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC,uBAAuB,EAAE,MAAM,CAAC,CAOnG;AAsBD;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAIzE;AAcD,sFAAsF;AACtF,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAE/F;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAGxG"}
|
|
@@ -8,7 +8,8 @@
|
|
|
8
8
|
* container.
|
|
9
9
|
*
|
|
10
10
|
* Every plane that swaps Firebase modules reads {@link swappedFirebaseEntries}:
|
|
11
|
-
* the `pyric sandbox` import map (`html-injection.ts
|
|
11
|
+
* the `pyric sandbox` import map (`html-injection.ts`, through
|
|
12
|
+
* {@link importMapFirebaseEntries}) and the Vite resolver
|
|
12
13
|
* (`vite-module-swap.ts`). Every front door resolves the mode with
|
|
13
14
|
* {@link resolveAiMode}. One table and one precedence rule, so the planes
|
|
14
15
|
* cannot disagree about what production mode means. It imports only Node
|
|
@@ -66,6 +67,33 @@ export function swappedFirebaseEntries(mode) {
|
|
|
66
67
|
}
|
|
67
68
|
return swapped;
|
|
68
69
|
}
|
|
70
|
+
/**
|
|
71
|
+
* The Firebase SDK modules `pyric sandbox` builds for the browser from the
|
|
72
|
+
* project's own `firebase` install in production AI mode, to the entry key of
|
|
73
|
+
* each (`/__pyric/sdk/<key>.js`). One build, so the three share one
|
|
74
|
+
* `@firebase/app` component registry. The Vite and register planes resolve
|
|
75
|
+
* the Firebase SDK themselves and never read this.
|
|
76
|
+
*/
|
|
77
|
+
export const REAL_SDK_ENTRIES = new Map([
|
|
78
|
+
['firebase/app', 'firebase-sdk-app'],
|
|
79
|
+
['firebase/ai', 'firebase-sdk-ai'],
|
|
80
|
+
['firebase/app-check', 'firebase-sdk-app-check'],
|
|
81
|
+
]);
|
|
82
|
+
/**
|
|
83
|
+
* The import-map plane's specifier to entry key table: the swap, plus, in
|
|
84
|
+
* production AI mode, the unswapped `firebase/ai` sent to the Firebase SDK
|
|
85
|
+
* that `pyric sandbox` builds. A browser has no package resolution, so on
|
|
86
|
+
* this plane an unswapped specifier still needs a URL.
|
|
87
|
+
*/
|
|
88
|
+
export function importMapFirebaseEntries(mode) {
|
|
89
|
+
const entries = new Map(swappedFirebaseEntries(mode));
|
|
90
|
+
for (const [specifier, key] of REAL_SDK_ENTRIES) {
|
|
91
|
+
const isUnswapped = !entries.has(specifier);
|
|
92
|
+
if (isUnswapped)
|
|
93
|
+
entries.set(specifier, key);
|
|
94
|
+
}
|
|
95
|
+
return entries;
|
|
96
|
+
}
|
|
69
97
|
/** This package's root (`src/serve/` and `dist/serve/` both sit two levels below it), as written and resolved. */
|
|
70
98
|
const PACKAGE_ROOTS = (() => {
|
|
71
99
|
const root = fileURLToPath(new URL('../../', import.meta.url)).replaceAll('\\', '/');
|
|
@@ -96,10 +124,30 @@ export function isShadowAppImporter(importer) {
|
|
|
96
124
|
const file = importerFile(importer);
|
|
97
125
|
return PACKAGE_ROOTS.some((root) => file.startsWith(root) && SHADOW_MODULE.test(file.slice(root.length)));
|
|
98
126
|
}
|
|
99
|
-
/**
|
|
100
|
-
|
|
127
|
+
/**
|
|
128
|
+
* The SDK modules a shadow-app wrapper imports for itself. The firebase-admin
|
|
129
|
+
* pair is the register's App Check verifier for production AI mode
|
|
130
|
+
* (`register/app-bridge-admin-app-check.ts`); no browser plane serves them.
|
|
131
|
+
*/
|
|
132
|
+
const BRIDGED_SPECIFIERS = new Set([
|
|
133
|
+
'firebase/app',
|
|
134
|
+
'firebase/app-check',
|
|
135
|
+
'firebase-admin/app',
|
|
136
|
+
'firebase-admin/app-check',
|
|
137
|
+
]);
|
|
101
138
|
/** Whether this import is a shadow-app wrapper reaching the Firebase SDK it wraps. */
|
|
102
139
|
export function isBypassedBridgeImport(specifier, importer) {
|
|
103
140
|
return BRIDGED_SPECIFIERS.has(specifier) && isShadowAppImporter(importer);
|
|
104
141
|
}
|
|
142
|
+
/**
|
|
143
|
+
* Where a bypassed bridge import goes on the import-map plane: the entry key
|
|
144
|
+
* of the Firebase SDK module `pyric sandbox` builds. The bare specifier
|
|
145
|
+
* cannot stay, because the import map sends it back to the wrapper itself.
|
|
146
|
+
* Undefined for every import {@link isBypassedBridgeImport} does not name.
|
|
147
|
+
*/
|
|
148
|
+
export function bridgeImportEntryKey(specifier, importer) {
|
|
149
|
+
if (!isBypassedBridgeImport(specifier, importer))
|
|
150
|
+
return undefined;
|
|
151
|
+
return REAL_SDK_ENTRIES.get(specifier);
|
|
152
|
+
}
|
|
105
153
|
//# sourceMappingURL=firebase-module-swap.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"firebase-module-swap.js","sourceRoot":"","sources":["../../src/serve/firebase-module-swap.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"firebase-module-swap.js","sourceRoot":"","sources":["../../src/serve/firebase-module-swap.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,15 +12,15 @@ export declare const hostedMethodRequest: z.ZodObject<{
|
|
|
12
12
|
allowProduction: z.ZodDefault<z.ZodBoolean>;
|
|
13
13
|
}, "strict", z.ZodTypeAny, {
|
|
14
14
|
key: string;
|
|
15
|
+
projectDir: string;
|
|
15
16
|
instanceId: string;
|
|
16
17
|
args: Record<string, unknown>;
|
|
17
|
-
projectDir: string;
|
|
18
18
|
allowProduction: boolean;
|
|
19
19
|
}, {
|
|
20
20
|
key: string;
|
|
21
|
+
projectDir: string;
|
|
21
22
|
instanceId: string;
|
|
22
23
|
args: Record<string, unknown>;
|
|
23
|
-
projectDir: string;
|
|
24
24
|
allowProduction?: boolean | undefined;
|
|
25
25
|
}>;
|
|
26
26
|
export type HostedMethodRequest = z.infer<typeof hostedMethodRequest>;
|
|
@@ -43,10 +43,10 @@ export declare const hostedReproRequest: z.ZodObject<{
|
|
|
43
43
|
instanceId: z.ZodString;
|
|
44
44
|
projectDir: z.ZodString;
|
|
45
45
|
}, "strict", z.ZodTypeAny, {
|
|
46
|
-
instanceId: string;
|
|
47
46
|
projectDir: string;
|
|
48
|
-
}, {
|
|
49
47
|
instanceId: string;
|
|
48
|
+
}, {
|
|
50
49
|
projectDir: string;
|
|
50
|
+
instanceId: string;
|
|
51
51
|
}>;
|
|
52
52
|
//# sourceMappingURL=method-protocol.d.ts.map
|
|
@@ -3,6 +3,8 @@ import { type AiMode } from './firebase-module-swap.js';
|
|
|
3
3
|
/**
|
|
4
4
|
* The import-map targets, specifier to served URL, for one AI mode. Derived
|
|
5
5
|
* from the shared swap table, so the Vite resolver serves the same modules.
|
|
6
|
+
* In production AI mode `firebase/ai` goes to the Firebase SDK that
|
|
7
|
+
* `pyric sandbox` builds from the project's `firebase` install.
|
|
6
8
|
*/
|
|
7
9
|
export declare function sdkImportMap(mode?: AiMode): Record<string, string>;
|
|
8
10
|
/** Inject the sandbox import map and boot tags before application modules. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"html-injection.d.ts","sourceRoot":"","sources":["../../src/serve/html-injection.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGvD,OAAO,
|
|
1
|
+
{"version":3,"file":"html-injection.d.ts","sourceRoot":"","sources":["../../src/serve/html-injection.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGvD,OAAO,EAA4B,KAAK,MAAM,EAAE,MAAM,2BAA2B,CAAC;AAElF;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,IAAI,GAAE,MAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAM7E;AAED,8EAA8E;AAC9E,MAAM,WAAW,eAAe;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,8EAA8E;IAC9E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACrD,4FAA4F;IAC5F,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB,GAAG,MAAM,CAOnF"}
|
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
import { stampHostedTarget } from './runtime/hosted-target.js';
|
|
2
2
|
import { REACT_BOOTSTRAP } from './react-bootstrap.js';
|
|
3
3
|
import { SANDBOX_BUILD_MARKER } from './sandbox-marker.js';
|
|
4
|
-
import {
|
|
4
|
+
import { importMapFirebaseEntries } from './firebase-module-swap.js';
|
|
5
5
|
/**
|
|
6
6
|
* The import-map targets, specifier to served URL, for one AI mode. Derived
|
|
7
7
|
* from the shared swap table, so the Vite resolver serves the same modules.
|
|
8
|
+
* In production AI mode `firebase/ai` goes to the Firebase SDK that
|
|
9
|
+
* `pyric sandbox` builds from the project's `firebase` install.
|
|
8
10
|
*/
|
|
9
11
|
export function sdkImportMap(mode = 'sandbox') {
|
|
10
12
|
const imports = {};
|
|
11
|
-
for (const [specifier, entryKey] of
|
|
13
|
+
for (const [specifier, entryKey] of importMapFirebaseEntries(mode)) {
|
|
12
14
|
imports[specifier] = `/__pyric/sdk/${entryKey}.js`;
|
|
13
15
|
}
|
|
14
16
|
return imports;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"html-injection.js","sourceRoot":"","sources":["../../src/serve/html-injection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE/D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"html-injection.js","sourceRoot":"","sources":["../../src/serve/html-injection.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"namespace.d.ts","sourceRoot":"","sources":["../../src/serve/namespace.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"namespace.d.ts","sourceRoot":"","sources":["../../src/serve/namespace.ts"],"names":[],"mappings":"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"}
|
package/dist/serve/namespace.js
CHANGED
|
@@ -591,7 +591,11 @@ export function createPyricNamespace(opts) {
|
|
|
591
591
|
const file = join(opts.sdkDir, basename(url.pathname));
|
|
592
592
|
const missingFile = !existsSync(file);
|
|
593
593
|
if (missingFile) {
|
|
594
|
-
|
|
594
|
+
const isRealSdk = basename(url.pathname).startsWith('firebase-sdk-');
|
|
595
|
+
const body = isRealSdk
|
|
596
|
+
? 'pyric sandbox: the Firebase SDK was not built. Install firebase where pyric starts (production AI mode).'
|
|
597
|
+
: 'not found';
|
|
598
|
+
res.writeHead(404, { 'content-type': 'text/plain; charset=utf-8' }).end(body);
|
|
595
599
|
return true;
|
|
596
600
|
}
|
|
597
601
|
const isSourceMap = file.endsWith('.map');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"namespace.js","sourceRoot":"","sources":["../../src/serve/namespace.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"namespace.js","sourceRoot":"","sources":["../../src/serve/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAG3C,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAsC,MAAM,kBAAkB,CAAC;AACtF,OAAO,EAAE,gBAAgB,EAAmB,MAAM,kBAAkB,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAA2B,MAAM,mBAAmB,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,aAAa,EAAE,eAAe,EAAE,qBAAqB,EAAoB,MAAM,aAAa,CAAC;AAErI,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAA4B,MAAM,yBAAyB,CAAC;AACvF,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAE7D,OAAO,EAAE,WAAW,EAAqB,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAiBjD,MAAM,UAAU,cAAc;IAC5B,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC1C,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,OAAO;QACL,MAAM,CAAC,GAAG,EAAE,GAAG;YACb,IAAI,MAAM,EAAE,CAAC;gBACX,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;gBACnF,OAAO;YACT,CAAC;YACD,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;gBACjB,cAAc,EAAE,mBAAmB;gBACnC,eAAe,EAAE,UAAU;gBAC3B,UAAU,EAAE,YAAY;aACzB,CAAC,CAAC;YACH,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACjB,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3C,mEAAmE;YACnE,wEAAwE;YACxE,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAC7C,CAAC;QACD,SAAS,CAAC,KAAK,EAAE,IAAI;YACnB,IAAI,MAAM;gBAAE,OAAO;YACnB,MAAM,KAAK,GAAG,UAAU,KAAK,WAAW,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC;YACnE,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;gBAC1B,IAAI,CAAC;oBACH,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACnB,CAAC;gBAAC,MAAM,CAAC;oBACP,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,8CAA8C;gBACrE,CAAC;YACH,CAAC;QACH,CAAC;QACD,WAAW,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI;QAC/B,KAAK;YACH,IAAI,MAAM;gBAAE,OAAO;YACnB,MAAM,GAAG,IAAI,CAAC;YACd,KAAK,MAAM,GAAG,IAAI,OAAO;gBAAE,GAAG,CAAC,GAAG,EAAE,CAAC;YACrC,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,CAAC;KACF,CAAC;AACJ,CAAC;AAoED;;;;;;;;8EAQ8E;AAC9E,MAAM,oBAAoB,GAAG,yBAAyB,CAAC;AAEvD;;;GAGG;AACH,SAAS,iBAAiB,CAAC,KAAiB,EAAE,GAAoB,EAAE,GAAmB,EAAE,GAAQ;IAC/F,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,KAAK,KAAK,CAAC;IACpC,MAAM,iBAAiB,GAAG,CAAC,MAAM,CAAC;IAClC,IAAI,iBAAiB,EAAE,CAAC;QACtB,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;QAC/D,OAAO;IACT,CAAC;IACD,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAC/D,MAAM,WAAW,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnD,IAAI,WAAW,EAAE,CAAC;QAChB,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC,GAAG,CAAC,oEAAoE,CAAC,CAAC;QAC/H,OAAO;IACT,CAAC;IACD,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,EAAE,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,OAAO,GAAG,IAAI,KAAK,SAAS,CAAC;IACnC,IAAI,OAAO,EAAE,CAAC;QACZ,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;QACrF,OAAO;IACT,CAAC;IACD,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,cAAc,EAAE,0BAA0B;QAC1C,gBAAgB,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;QAC7C,eAAe,EAAE,UAAU;KAC5B,CAAC,CAAC;IACH,gBAAgB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACnC,CAAC;AAED,KAAK,UAAU,WAAW,CACxB,KAAiB,EACjB,IAAgB,EAChB,GAAoB,EACpB,GAAmB,EACnB,GAAQ;IAER,MAAM,OAAO,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAChD,MAAM,QAAQ,GAAI,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAwB,IAAI,EAAE,CAAC;IAC7E,IAAI,CAAC;QACH,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,OAAuB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAClF,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACnB,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACvE,OAAO;YACT,CAAC;YACD,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;gBACjB,cAAc,EAAE,iCAAiC;gBACjD,eAAe,EAAE,UAAU;gBAC3B,oEAAoE;gBACpE,oEAAoE;gBACpE,qBAAqB,EAAE,KAAK,CAAC,UAAU;aACxC,CAAC,CAAC;YACH,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;YAC/B,OAAO;QACT,CAAC;QACD,IAAI,GAAG,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC5B,IAAI,QAAQ;gBAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACrC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;YACzB,OAAO;QACT,CAAC;QACD,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;YACzB,uEAAuE;YACvE,qBAAqB;YACrB,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;YAC5E,OAAO;QACT,CAAC;QACD,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC1B,IAAI,OAAO,KAAK,WAAW,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;gBAClD,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;gBACzD,OAAO;YACT,CAAC;YACD,sEAAsE;YACtE,mEAAmE;YACnE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;gBAChD,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC,GAAG,CACtD,sDAAsD,IAAI,CAAC,MAAM,EAAE,GAAG,CACvE,CAAC;gBACF,OAAO;YACT,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,CAAC;YACpC,MAAM,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACxC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;YACzB,OAAO;QACT,CAAC;QACD,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAC/E,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,yEAAyE;QACzE,GAAG,CAAC,SAAS,CAAC,CAAC,YAAY,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC;QACzF,GAAG,CAAC,GAAG,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACtD,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,KAAK,UAAU,aAAa,CAC1B,OAA6D,EAC7D,GAAoB,EACpB,GAAmB;IAEnB,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACvE,OAAO;QACT,CAAC;QACD,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;YACjB,cAAc,EAAE,iCAAiC;YACjD,eAAe,EAAE,UAAU;SAC5B,CAAC,CAAC;QACH,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACd,OAAO;IACT,CAAC;IACD,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QAC1B,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;QACrE,OAAO;IACT,CAAC;IACD,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACzD,IAAI,GAAG,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YACxB,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE,GAAG,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACrD,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;YAClC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACpB,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;IAC3B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC;QACrD,GAAG,CAAC,GAAG,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACtD,CAAC;AACH,CAAC;AAED,6EAA6E;AAC7E,EAAE;AACF,0EAA0E;AAC1E,2EAA2E;AAC3E,6EAA6E;AAC7E,2EAA2E;AAC3E,4DAA4D;AAC5D,EAAE;AACF,6EAA6E;AAC7E,mEAAmE;AACnE,4EAA4E;AAC5E,yEAAyE;AACzE,4EAA4E;AAC5E,+DAA+D;AAC/D,2EAA2E;AAC3E,wEAAwE;AACxE,6EAA6E;AAC7E,qEAAqE;AACrE,mDAAmD;AACnD,EAAE;AACF,wEAAwE;AACxE,kFAAkF;AAClF,6EAA6E;AAC7E,wEAAwE;AAExE,MAAM,kBAAkB,GAAG,KAAK,CAAC;AA2BjC;2DAC2D;AAC3D,MAAM,UAAU,oBAAoB,CAAC,WAAmB,kBAAkB;IAIxE,MAAM,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC9C,OAAO;QACL,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,GAAG,QAAQ;YACrC,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAClC,IAAI,IAAI,KAAK,SAAS,IAAI,GAAG,GAAG,IAAI,GAAG,MAAM;gBAAE,OAAO,KAAK,CAAC;YAC5D,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAC1B,OAAO,IAAI,CAAC;QACd,CAAC;KACF,CAAC;AACJ,CAAC;AAGD;;4DAE4D;AAC5D,MAAM,UAAU,iBAAiB,CAAC,OAA2B;IAC3D,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAmB,CAAC;IAC5F,MAAM,KAAK,GAAG,CAAC,uBAAuB,OAAO,EAAE,CAAC,CAAC;IACjD,MAAM,GAAG,GAAG,OAAO,CAAC,aAAa,CAAC;IAClC,MAAM,OAAO,GAAG,GAAG,EAAE,OAAO,CAAC;IAC7B,IAAI,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,IAAI,EAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACtF,KAAK,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,IAAI,GAAG,QAAQ,EAAE,CAAC,CAAC;IACnE,CAAC;IACD,MAAM,GAAG,GAAG,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,eAAe,GAAG,IAAI,WAAW,EAAE,CAAC,CAAC;IAChD,sEAAsE;IACtE,IAAI,GAAG,EAAE,MAAM,KAAK,MAAM,IAAI,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;QAClE,MAAM,IAAI,GAAG,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9E,KAAK,CAAC,IAAI,CAAC,eAAe,IAAI,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,MAAM,WAAW,GAAG,OAAO,OAAO,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,EAAE,WAAW,CAAC;IACrG,IAAI,WAAW;QAAE,KAAK,CAAC,IAAI,CAAC,SAAS,WAAW,EAAE,CAAC,CAAC;IACpD,KAAK,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAC1C,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAQD,SAAS,cAAc,CAAC,KAAc;IACpC,MAAM,KAAK,GAAG,KAAqC,CAAC;IACpD,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;WAC7C,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC;AACxE,CAAC;AAED,wFAAwF;AACxF,SAAS,aAAa,CAAC,KAAmB;IACxC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,+BAA+B,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IAC5F,OAAO,GAAG,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;AACjC,CAAC;AAED;;;;;GAKG;AACH,SAAS,UAAU,CAAC,MAAe;IACjC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,EAAE,CAAC;IACtC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAE,KAA4B,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC;IACtF,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACtC,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IACzG,MAAM,KAAK,GAAG,CAAC,gBAAgB,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAI,KAA6B,CAAC,KAAK,CAAC;IACnD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACvE,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,gBAAgB,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACzF,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,MAAM,sBAAsB,GAAG,MAAM,CAAC;AAEtC;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAC9B,QAAwB,EACxB,MAA+B,EAC/B,OAA4B;IAE5B,MAAM,OAAO,GAAG,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,IAAI,OAAO,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO;IACrD,MAAM,GAAG,GAAG,GAAG,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,sBAAsB,GAAG,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;IAC5G,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,SAAS,CAAC;IACzE,IAAI,QAAQ,CAAC,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;AAC1F,CAAC;AAED;;;;;;;;;wEASwE;AACxE,KAAK,UAAU,aAAa,CAC1B,QAAwB,EACxB,MAA+B,EAC/B,GAAoB,EACpB,GAAmB;IAEnB,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QAC1B,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;QAChE,OAAO;IACT,CAAC;IACD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,CAAC,MAAM,WAAW,CAAC,GAAG,CAAC,CAA6C,CAAC;QACrF,MAAM,cAAc,GAAG,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC;QACjE,IAAI,cAAc,EAAE,CAAC;YACnB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC;YAC1D,MAAM,MAAM,GAAG,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAmB,CAAC;YAC3F,oGAAoG;YACpG,MAAM,QAAQ,GAAG,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9E,MAAM,GAAG,GAAG,GAAG,QAAQ,GAAG,sBAAsB,GAAG,MAAM,GAAG,sBAAsB,GAAG,MAAM,EAAE,CAAC;YAC9F,IAAI,MAAM,IAAI,QAAQ,CAAC,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;gBACpD,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,iEAAiE;IACnE,CAAC;IACD,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;AAC3B,CAAC;AAED,SAAS,aAAa,CACpB,GAAoB,EACpB,GAAmB,EACnB,SAAiB,EACjB,YAAuB;IAEvB,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAC1C,MAAM,YAAY,GAAG,SAAS,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAC9C,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,SAAS,EAAE,YAAY,CAAC,EAAE,CAAC;QACxD,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;QACxF,OAAO,KAAK,CAAC;IACf,CAAC;IACD,2FAA2F;IAC3F,IAAI,YAAY,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;QAClG,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;QACvF,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,IAAsB;IACzD,MAAM,WAAW,GAAG,iBAAiB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACtH,MAAM,eAAe,GAAG,gBAAgB,EAAE,CAAC;IAC3C,MAAM,aAAa,GAAG,IAAI,CAAC,UAAU,KAAK,MAAM,CAAC;IACjD,MAAM,gBAAgB,GAAG,IAAI,CAAC,MAAM,EAAE,UAAU,IAAI,gBAAgB,EAAE,CAAC;IACvE,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAChF,6EAA6E;IAC7E,uEAAuE;IACvE,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC9E,IAAI,YAAY,GAAuF,IAAI,CAAC;IAC5G,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC3B,MAAM,SAAS,GAAG,MAAM,KAAK,SAAS,CAAC;IACvC,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,aAAa,GAAuB;YACxC,GAAG,MAAM;YACT,YAAY;YACZ,UAAU,EAAE,gBAAgB;YAC5B,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,YAAY,EAAE,IAAI,CAAC,YAAY;SAChC,CAAC;QACF,YAAY,GAAG,kBAAkB,CAAC,aAAa,CAAC,CAAC;IACnD,CAAC;IACD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;IACjC,MAAM,WAAW,GAAG,SAAS,KAAK,SAAS,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;IACpE,MAAM,QAAQ,GAAG,WAAW;QAC1B,CAAC,CAAC,qBAAqB,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC;QACjF,CAAC,CAAC,IAAI,CAAC;IACT,MAAM,cAAc,GAAG,oBAAoB,EAAE,CAAC;IAC9C,yEAAyE;IACzE,uEAAuE;IACvE,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IAC/B,MAAM,WAAW,GAAG,QAAQ,KAAK,SAAS,CAAC;IAC3C,MAAM,gBAAgB,GAAG,WAAW;QAClC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;QAClE,CAAC,CAAC,SAAS,CAAC;IACd,OAAO,CAAC,GAAoB,EAAE,GAAmB,EAAE,GAAQ,EAA8B,EAAE;QACzF,MAAM,aAAa,GAAG,GAAG,CAAC,QAAQ,KAAK,gBAAgB,CAAC;QACxD,IAAI,aAAa,EAAE,CAAC;YAClB,MAAM,OAAO,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,IAAI,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAC3F,IAAI,OAAO;gBAAE,OAAO,IAAI,CAAC;YACzB,OAAO,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QAChD,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACnC,MAAM,kBAAkB,GAAG,UAAU,KAAK,SAAS,IAAI,GAAG,CAAC,QAAQ,KAAK,qBAAqB,CAAC;QAC9F,IAAI,kBAAkB,EAAE,CAAC;YACvB,MAAM,WAAW,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,IAAI,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAC/F,IAAI,WAAW;gBAAE,OAAO,IAAI,CAAC;YAC7B,MAAM,cAAc,GAAG,CAAC,qBAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;YACtE,IAAI,cAAc,EAAE,CAAC;gBACnB,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,qDAAqD,EAAE,CAAC,CAAC,CAAC;gBACjJ,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,qBAAqB,CAAC,UAAU,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QACrD,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,MAAM,cAAc,GAAG,OAAO,KAAK,SAAS,IAAI,GAAG,CAAC,QAAQ,KAAK,kBAAkB,CAAC;QACpF,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,WAAW,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,IAAI,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAC/F,IAAI,WAAW;gBAAE,OAAO,IAAI,CAAC;YAC7B,MAAM,cAAc,GAAG,CAAC,qBAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;YACtE,IAAI,cAAc,EAAE,CAAC;gBACnB,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,qDAAqD,EAAE,CAAC,CAAC,CAAC;gBACjJ,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,iBAAiB,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAC9C,CAAC;QACD,MAAM,MAAM,GAAG,YAAY,CAAC;QAC5B,MAAM,eAAe,GAAG,MAAM,KAAK,IAAI,CAAC;QACxC,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,eAAe,GAAG,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,oBAAoB,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC;YACtH,IAAI,eAAe,EAAE,CAAC;gBACpB,MAAM,WAAW,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,IAAI,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;gBAC/F,IAAI,WAAW;oBAAE,OAAO,IAAI,CAAC;gBAC7B,OAAO,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,MAAM,eAAe,GAAG,KAAK,KAAK,SAAS,IAAI,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC;QAC7F,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,WAAW,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,IAAI,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAC/F,IAAI,WAAW;gBAAE,OAAO,IAAI,CAAC;YAC7B,MAAM,cAAc,GAAG,CAAC,qBAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;YACtE,IAAI,cAAc,EAAE,CAAC;gBACnB,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;gBAC3G,OAAO,IAAI,CAAC;YACd,CAAC;YACD,iBAAiB,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;YACxC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,cAAc,GAAG,KAAK,KAAK,SAAS,IAAI,GAAG,CAAC,QAAQ,KAAK,gBAAgB,CAAC;QAChF,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,WAAW,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,IAAI,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAC/F,IAAI,WAAW;gBAAE,OAAO,IAAI,CAAC;YAC7B,MAAM,cAAc,GAAG,CAAC,qBAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;YACtE,IAAI,cAAc,EAAE,CAAC;gBACnB,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;gBAC3G,OAAO,IAAI,CAAC;YACd,CAAC;YACD,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,KAAK,KAAK,CAAC;YACpC,MAAM,iBAAiB,GAAG,aAAa,IAAI,CAAC,MAAM,CAAC;YACnD,IAAI,iBAAiB,EAAE,CAAC;gBACtB,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC,GAAG,CACtD,uFAAuF,CACxF,CAAC;gBACF,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,WAAW,CAAC,KAAK,EAAE,eAAe,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QAC7E,CAAC;QACD,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACvC,MAAM,oBAAoB,GAAG,YAAY,KAAK,SAAS,IAAI,GAAG,CAAC,QAAQ,KAAK,wBAAwB,CAAC;QACrG,IAAI,oBAAoB,EAAE,CAAC;YACzB,MAAM,WAAW,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,IAAI,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAC/F,IAAI,WAAW;gBAAE,OAAO,IAAI,CAAC;YAC7B,MAAM,cAAc,GAAG,CAAC,qBAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;YACtE,IAAI,cAAc,EAAE,CAAC;gBACnB,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;gBAAC,OAAO,IAAI,CAAC;YACtD,CAAC;YACD,OAAO,kBAAkB,CAAC,YAAY,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QACzD,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,MAAM,gBAAgB,GAAG,OAAO,KAAK,SAAS,IAAI,GAAG,CAAC,QAAQ,KAAK,kBAAkB,CAAC;QACtF,IAAI,gBAAgB,EAAE,CAAC;YACrB,MAAM,WAAW,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,IAAI,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAC/F,IAAI,WAAW;gBAAE,OAAO,IAAI,CAAC;YAC7B,MAAM,cAAc,GAAG,CAAC,qBAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;YACtE,IAAI,cAAc,EAAE,CAAC;gBACnB,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;gBAC3G,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,aAAa,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QAC3D,CAAC;QACD,MAAM,iBAAiB,GAAG,gBAAgB,KAAK,SAAS,IAAI,GAAG,CAAC,QAAQ,KAAK,mBAAmB,CAAC;QACjG,IAAI,iBAAiB,EAAE,CAAC;YACtB,OAAO,cAAc,CAAC,gBAAgB,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,gBAAgB,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QAClG,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,eAAe,GAAG,MAAM,KAAK,SAAS,IAAI,GAAG,CAAC,QAAQ,KAAK,iBAAiB,CAAC;QACnF,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,WAAW,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,IAAI,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAC/F,IAAI,WAAW;gBAAE,OAAO,IAAI,CAAC;YAC7B,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACxB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,gBAAgB,GAAG,GAAG,CAAC,QAAQ,KAAK,cAAc,IAAI,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,cAAc,GAAG,CAAC,CAAC;QAC1G,IAAI,gBAAgB,EAAE,CAAC;YACrB,OAAO,aAAa,CAAC,IAAI,CAAC,eAAe,EAAE,cAAc,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CACzF,GAAG,EAAE,CAAC,IAAI,CACX,CAAC;QACJ,CAAC;QACD,MAAM,eAAe,GAAG,GAAG,CAAC,QAAQ,KAAK,WAAW,CAAC;QACrD,IAAI,eAAe,EAAE,CAAC;YACpB,OAAO,YAAY,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QAChG,CAAC;QACD,MAAM,eAAe,GAAG,GAAG,CAAC,QAAQ,KAAK,kBAAkB,CAAC;QAC5D,IAAI,eAAe,EAAE,CAAC;YACpB,OAAO,aAAa,CAAC,cAAc,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QAC/E,CAAC;QACD,MAAM,aAAa,GAAG,GAAG,CAAC,QAAQ,KAAK,oBAAoB,CAAC;QAC5D,IAAI,aAAa,EAAE,CAAC;YAClB,MAAM,OAAO,GAAG,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,YAAY,EAAE,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;YACxI,MAAM,mBAAmB,GAAG,gBAAgB,KAAK,SAAS,CAAC;YAC3D,IAAI,mBAAmB;gBAAE,OAAO,CAAC,aAAa,GAAG,gBAAgB,CAAC,KAAK,CAAC;YACxE,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,iCAAiC,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC,CAAC;YACvG,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;YACjC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,MAAM,eAAe,GAAG,OAAO,KAAK,SAAS,IAAI,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC;QAC9F,IAAI,eAAe,EAAE,CAAC;YACpB,yEAAyE;YACzE,oEAAoE;YACpE,yEAAyE;YACzE,0EAA0E;YAC1E,sEAAsE;YACtE,wEAAwE;YACxE,qEAAqE;YACrE,yEAAyE;YACzE,iDAAiD;YACjD,OAAO,YAAY,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QAC/D,CAAC;QACD,MAAM,YAAY,GAAG,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;QAC9D,IAAI,YAAY,EAAE,CAAC;YACjB,mEAAmE;YACnE,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;YACvD,MAAM,WAAW,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACtC,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;gBACrE,MAAM,IAAI,GAAG,SAAS;oBACpB,CAAC,CAAC,0GAA0G;oBAC5G,CAAC,CAAC,WAAW,CAAC;gBAChB,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,2BAA2B,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC9E,OAAO,IAAI,CAAC;YACd,CAAC;YACD,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC1C,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,gCAAgC,CAAC;YACjF,oEAAoE;YACpE,6DAA6D;YAC7D,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC,CAAC;YAC1E,kBAAkB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAC9B,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,cAAc,GAAG,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,KAAK,CAAC;QAC1D,IAAI,cAAc;YAAE,OAAO,IAAI,CAAC;QAChC,MAAM,cAAc,GAAG,GAAG,CAAC,QAAQ,KAAK,aAAa,IAAI,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;QACjG,MAAM,sBAAsB,GAAG,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,QAAQ,IAAI,cAAc,CAAC;QACxF,IAAI,sBAAsB,EAAE,CAAC;YAC3B,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,0BAA0B,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC,CAAC;YAChG,GAAG,CAAC,GAAG,CAAC,0fAA0f,CAAC,CAAC;YACpgB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,KAAK,CAAC,CAAC,mCAAmC;IACnD,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAyB;IACpD,MAAM,OAAO,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IACtC,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,KAAK,IAAI,CAAC;IACzC,MAAM,eAAe,GAAG,CAAC,QAAQ,CAAC;IAClC,IAAI,eAAe;QAAE,OAAO,SAAS,CAAC;IACtC,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IACtC,MAAM,eAAe,GAAG,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,CAAC;IAClF,IAAI,eAAe;QAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IACnF,OAAO,UAAU,CAAC;AACpB,CAAC"}
|
|
@@ -374,12 +374,12 @@ html{scrollbar-gutter:stable}
|
|
|
374
374
|
<div class="compat-list">
|
|
375
375
|
<details class="compat-row" data-status="diverged">
|
|
376
376
|
<summary class="compat-line"><span class="compat-dot" data-status="diverged" role="img" aria-label="Diverged (documented)" title="Diverged (documented)"></span><span class="compat-main"><code class="compat-api">getAI(app) in a registered server process</code><span class="compat-sub"><span class="compat-behavior">Under a remote register activation, <code>getAI(app)</code> in a server process fails with <code>failed-precondition</code> and a message that names the client services that do reach the Node host: <code>firebase/ai</code> has no path to the host, and no in-process sandbox stands in for it. Production AI pass-through (<code>PYRIC_AI=production</code>) loads the real <code>firebase/ai</code> and is unaffected.</span></span></span></summary>
|
|
377
|
-
<div class="compat-evidence"><div class="compat-probe">App scenario <code>test/apps/client-sdk-under-register</code> calls it under <code>node --import @pyric/cli/register</code> against a hosted Vite dev server and asserts the refusal; on main (942cb175) it returned a handle on a private in-process sandbox. <a href="https://github.com/davideast/pyric/blob/main/packages/cli/test/register/mapping.test.ts#
|
|
377
|
+
<div class="compat-evidence"><div class="compat-probe">App scenario <code>test/apps/client-sdk-under-register</code> calls it under <code>node --import @pyric/cli/register</code> against a hosted Vite dev server and asserts the refusal; on main (942cb175) it returned a handle on a private in-process sandbox. <a href="https://github.com/davideast/pyric/blob/main/packages/cli/test/register/mapping.test.ts#L80" target="_blank" rel="noopener noreferrer"><code>mapping.test.ts</code></a> pins that the subpath keeps its mirror under a remote activation, and <a href="https://github.com/davideast/pyric/blob/main/packages/cli/test/register/node-origin.test.ts#L2" target="_blank" rel="noopener noreferrer"><code>node-origin.test.ts</code></a> that a mirror resolved from such an app refuses. (Structured evidence: <a href="https://github.com/davideast/pyric/blob/main/test/apps/client-sdk-under-register/scenario.ts#L1" target="_blank" rel="noopener noreferrer"><code>scenario.ts</code></a>)</div>
|
|
378
378
|
<div class="compat-note">refused in a server process; production runs it in Node</div></div>
|
|
379
379
|
</details>
|
|
380
380
|
<details class="compat-row" data-status="diverged">
|
|
381
381
|
<summary class="compat-line"><span class="compat-dot" data-status="diverged" role="img" aria-label="Diverged (documented)" title="Diverged (documented)"></span><span class="compat-main"><code class="compat-api">getAI(app) in a server-rendered module under vite dev</code><span class="compat-sub"><span class="compat-behavior">Under <code>vite dev</code>, <code>getAI(app)</code> in a server-rendered module fails with <code>failed-precondition</code> in the default sandbox AI mode, naming the client services that reach the host: <code>firebase/ai</code> has no path to the dev server's host from server code. In production AI mode the real <code>firebase/ai</code> loads and the network guard permits Firebase AI Logic. A SharedWorker dev server refuses it the same way.</span></span></span></summary>
|
|
382
|
-
<div class="compat-evidence"><div class="compat-probe">App scenario <code>test/apps/vite-ssr-client-sdk</code> calls it in SSR on a hosted dev server and asserts the refusal; a second dev server in production AI mode lets the real SDK reach only <code>firebasevertexai.googleapis.com</code>, which a stand-in beneath the guard refuses. On main (ba2c0bf0a) it was the real SDK. <a href="https://github.com/davideast/pyric/blob/main/packages/cli/test/serve/vite-module-swap.test.ts#
|
|
382
|
+
<div class="compat-evidence"><div class="compat-probe">App scenario <code>test/apps/vite-ssr-client-sdk</code> calls it in SSR on a hosted dev server and asserts the refusal; a second dev server in production AI mode lets the real SDK reach only <code>firebasevertexai.googleapis.com</code>, which a stand-in beneath the guard refuses. On main (ba2c0bf0a) it was the real SDK. <a href="https://github.com/davideast/pyric/blob/main/packages/cli/test/serve/vite-module-swap.test.ts#L4" target="_blank" rel="noopener noreferrer"><code>vite-module-swap.test.ts</code></a> pins the routing. (Structured evidence: <a href="https://github.com/davideast/pyric/blob/main/test/apps/vite-ssr-client-sdk/scenario.ts#L1" target="_blank" rel="noopener noreferrer"><code>scenario.ts</code></a>)</div>
|
|
383
383
|
<div class="compat-note">refused in server-rendered modules under vite dev; production runs it in the server's runtime</div></div>
|
|
384
384
|
</details>
|
|
385
385
|
</div>
|
|
@@ -387,23 +387,23 @@ html{scrollbar-gutter:stable}
|
|
|
387
387
|
<div class="compat-list">
|
|
388
388
|
<details class="compat-row" data-status="ok">
|
|
389
389
|
<summary class="compat-line"><span class="compat-dot" data-status="ok" role="img" aria-label="Conforming" title="Conforming"></span><span class="compat-main"><code class="compat-api">initializeAppCheck(app) then getAI(app) in production AI mode</code><span class="compat-sub"><span class="compat-behavior">In production AI mode the app's <code>firebase/app-check</code> is the Firebase SDK attached to the same app <code>firebase/ai</code> uses, so <code>generateContent</code> carries <code>X-Firebase-AppCheck</code> equal to the token <code>getToken</code> returns, and AI Logic answers 200.</span></span></span></summary>
|
|
390
|
-
<div class="compat-evidence"><div class="compat-probe">capture <a href="https://github.com/davideast/pyric/blob/main/packages/conformance/observations/app-check/app-check-client-ai-header.json" target="_blank" rel="noopener noreferrer"><code>app-check-client-ai-header</code></a> (<code>appCheckInitialized</code>), replayed by the AI pass-through suite through the served App Check bridge. On main before the bridge, <code>firebase/app-check</code> was swapped to the deferred <code>pyric/app-check</code> stub in production AI mode, and the real SDK on the Pyric app failed <code>appCheck/use-before-activation</code> because activation and lookup used different app objects. (Structured evidence: <a href="https://github.com/davideast/pyric/blob/main/packages/cli/test/serve/ai-app-check-passthrough.test.ts#L131" target="_blank" rel="noopener noreferrer"><code>ai-app-check-passthrough.test.ts</code></a>, <a href="https://github.com/davideast/pyric/blob/main/test/apps/ai-production-app-check/scenario.ts#
|
|
390
|
+
<div class="compat-evidence"><div class="compat-probe">capture <a href="https://github.com/davideast/pyric/blob/main/packages/conformance/observations/app-check/app-check-client-ai-header.json" target="_blank" rel="noopener noreferrer"><code>app-check-client-ai-header</code></a> (<code>appCheckInitialized</code>), replayed by the AI pass-through suite through the served App Check bridge. On main before the bridge, <code>firebase/app-check</code> was swapped to the deferred <code>pyric/app-check</code> stub in production AI mode, and the real SDK on the Pyric app failed <code>appCheck/use-before-activation</code> because activation and lookup used different app objects. (Structured evidence: <a href="https://github.com/davideast/pyric/blob/main/packages/cli/test/serve/ai-app-check-passthrough.test.ts#L131" target="_blank" rel="noopener noreferrer"><code>ai-app-check-passthrough.test.ts</code></a>, <a href="https://github.com/davideast/pyric/blob/main/test/apps/ai-production-app-check/scenario.ts#L122" target="_blank" rel="noopener noreferrer"><code>scenario.ts</code></a>, <a href="https://github.com/davideast/pyric/blob/main/test/apps/ai-production-import-map/scenario.ts#L112" target="_blank" rel="noopener noreferrer"><code>scenario.ts</code></a>)</div></div>
|
|
391
391
|
</details>
|
|
392
392
|
<details class="compat-row" data-status="ok">
|
|
393
393
|
<summary class="compat-line"><span class="compat-dot" data-status="ok" role="img" aria-label="Conforming" title="Conforming"></span><span class="compat-main"><code class="compat-api">getAI(app, { useLimitedUseAppCheckTokens: true }) in production AI mode</code><span class="compat-sub"><span class="compat-behavior">With <code>useLimitedUseAppCheckTokens</code>, each request carries a fresh limited-use token rather than the cached one, and AI Logic answers 200.</span></span></span></summary>
|
|
394
|
-
<div class="compat-evidence"><div class="compat-probe">capture <a href="https://github.com/davideast/pyric/blob/main/packages/conformance/observations/app-check/app-check-client-ai-header.json" target="_blank" rel="noopener noreferrer"><code>app-check-client-ai-header</code></a> (<code>limitedUseModel</code>). (Structured evidence: <a href="https://github.com/davideast/pyric/blob/main/packages/cli/test/serve/ai-app-check-passthrough.test.ts#L132" target="_blank" rel="noopener noreferrer"><code>ai-app-check-passthrough.test.ts</code></a>, <a href="https://github.com/davideast/pyric/blob/main/test/apps/ai-production-app-check/scenario.ts#
|
|
394
|
+
<div class="compat-evidence"><div class="compat-probe">capture <a href="https://github.com/davideast/pyric/blob/main/packages/conformance/observations/app-check/app-check-client-ai-header.json" target="_blank" rel="noopener noreferrer"><code>app-check-client-ai-header</code></a> (<code>limitedUseModel</code>). (Structured evidence: <a href="https://github.com/davideast/pyric/blob/main/packages/cli/test/serve/ai-app-check-passthrough.test.ts#L132" target="_blank" rel="noopener noreferrer"><code>ai-app-check-passthrough.test.ts</code></a>, <a href="https://github.com/davideast/pyric/blob/main/test/apps/ai-production-app-check/scenario.ts#L122" target="_blank" rel="noopener noreferrer"><code>scenario.ts</code></a>, <a href="https://github.com/davideast/pyric/blob/main/test/apps/ai-production-import-map/scenario.ts#L112" target="_blank" rel="noopener noreferrer"><code>scenario.ts</code></a>)</div></div>
|
|
395
395
|
</details>
|
|
396
396
|
<details class="compat-row" data-status="ok">
|
|
397
397
|
<summary class="compat-line"><span class="compat-dot" data-status="ok" role="img" aria-label="Conforming" title="Conforming"></span><span class="compat-main"><code class="compat-api">generateContent without App Check in production AI mode</code><span class="compat-sub"><span class="compat-behavior">On an app that never initialized App Check, <code>firebase/ai</code> sends no <code>X-Firebase-AppCheck</code> header, and AI Logic rejects the request: HTTP 403, <code>PERMISSION_DENIED</code>, message <code>Firebase AI Logic has been deactivated in this project. To resume using Firebase AI Logic, you must enforce Firebase App Check.</code> with a docs link. A malformed header, the SDK placeholder token, and a tampered token get the same envelope; a valid token answers 200. Seen with App Check enforcement for AI Logic reading UNENFORCED.</span></span></span></summary>
|
|
398
|
-
<div class="compat-evidence"><div class="compat-probe">captures <a href="https://github.com/davideast/pyric/blob/main/packages/conformance/observations/app-check/app-check-ai-gate-wire.json" target="_blank" rel="noopener noreferrer"><code>app-check-ai-gate-wire</code></a> (all five cases on the wire) and <a href="https://github.com/davideast/pyric/blob/main/packages/conformance/observations/app-check/app-check-client-ai-header.json" target="_blank" rel="noopener noreferrer"><code>app-check-client-ai-header</code></a> (<code>noAppCheck</code>). (Structured evidence: <a href="https://github.com/davideast/pyric/blob/main/packages/cli/test/serve/ai-app-check-passthrough.test.ts#L109" target="_blank" rel="noopener noreferrer"><code>ai-app-check-passthrough.test.ts</code></a>, <a href="https://github.com/davideast/pyric/blob/main/test/apps/ai-production-app-check/scenario.ts#L4" target="_blank" rel="noopener noreferrer"><code>scenario.ts</code></a>)</div></div>
|
|
398
|
+
<div class="compat-evidence"><div class="compat-probe">captures <a href="https://github.com/davideast/pyric/blob/main/packages/conformance/observations/app-check/app-check-ai-gate-wire.json" target="_blank" rel="noopener noreferrer"><code>app-check-ai-gate-wire</code></a> (all five cases on the wire) and <a href="https://github.com/davideast/pyric/blob/main/packages/conformance/observations/app-check/app-check-client-ai-header.json" target="_blank" rel="noopener noreferrer"><code>app-check-client-ai-header</code></a> (<code>noAppCheck</code>). (Structured evidence: <a href="https://github.com/davideast/pyric/blob/main/packages/cli/test/serve/ai-app-check-passthrough.test.ts#L109" target="_blank" rel="noopener noreferrer"><code>ai-app-check-passthrough.test.ts</code></a>, <a href="https://github.com/davideast/pyric/blob/main/test/apps/ai-production-app-check/scenario.ts#L4" target="_blank" rel="noopener noreferrer"><code>scenario.ts</code></a>, <a href="https://github.com/davideast/pyric/blob/main/test/apps/ai-production-import-map/scenario.ts#L9" target="_blank" rel="noopener noreferrer"><code>scenario.ts</code></a>)</div></div>
|
|
399
399
|
</details>
|
|
400
400
|
<details class="compat-row" data-status="ok">
|
|
401
401
|
<summary class="compat-line"><span class="compat-dot" data-status="ok" role="img" aria-label="Conforming" title="Conforming"></span><span class="compat-main"><code class="compat-api">initializeAppCheck(app) after getAI(app)</code><span class="compat-sub"><span class="compat-behavior">Calling <code>initializeAppCheck</code> after <code>getAI(app)</code> built a model does not throw and <code>getToken</code> works, but that model sends no <code>X-Firebase-AppCheck</code> header and AI Logic answers 403. App Check must be initialized before <code>getAI</code>.</span></span></span></summary>
|
|
402
|
-
<div class="compat-evidence"><div class="compat-probe">capture <a href="https://github.com/davideast/pyric/blob/main/packages/conformance/observations/app-check/app-check-client-get-token-before-initialize.json" target="_blank" rel="noopener noreferrer"><code>app-check-client-get-token-before-initialize</code></a> (<code>initializeAfterAi</code>, <code>getTokenAfterLateInitialize</code>, <code>aiRequestAfterLateInitialize</code>, <code>aiGenerationAfterLateInitialize</code>). (Structured evidence: <a href="https://github.com/davideast/pyric/blob/main/packages/cli/test/serve/ai-app-check-passthrough.test.ts#L170" target="_blank" rel="noopener noreferrer"><code>ai-app-check-passthrough.test.ts</code></a>, <a href="https://github.com/davideast/pyric/blob/main/test/apps/ai-production-app-check/scenario.ts#
|
|
402
|
+
<div class="compat-evidence"><div class="compat-probe">capture <a href="https://github.com/davideast/pyric/blob/main/packages/conformance/observations/app-check/app-check-client-get-token-before-initialize.json" target="_blank" rel="noopener noreferrer"><code>app-check-client-get-token-before-initialize</code></a> (<code>initializeAfterAi</code>, <code>getTokenAfterLateInitialize</code>, <code>aiRequestAfterLateInitialize</code>, <code>aiGenerationAfterLateInitialize</code>). (Structured evidence: <a href="https://github.com/davideast/pyric/blob/main/packages/cli/test/serve/ai-app-check-passthrough.test.ts#L170" target="_blank" rel="noopener noreferrer"><code>ai-app-check-passthrough.test.ts</code></a>, <a href="https://github.com/davideast/pyric/blob/main/test/apps/ai-production-app-check/scenario.ts#L122" target="_blank" rel="noopener noreferrer"><code>scenario.ts</code></a>, <a href="https://github.com/davideast/pyric/blob/main/test/apps/ai-production-import-map/scenario.ts#L112" target="_blank" rel="noopener noreferrer"><code>scenario.ts</code></a>)</div></div>
|
|
403
403
|
</details>
|
|
404
404
|
<details class="compat-row" data-status="ok">
|
|
405
405
|
<summary class="compat-line"><span class="compat-dot" data-status="ok" role="img" aria-label="Conforming" title="Conforming"></span><span class="compat-main"><code class="compat-api">generateContent when App Check attestation fails</code><span class="compat-sub"><span class="compat-behavior">When the token exchange is refused, <code>firebase/ai</code> sends the SDK placeholder token (base64 of <code>{"error":"UNKNOWN_ERROR"}</code>) and AI Logic answers 403; with <code>useLimitedUseAppCheckTokens</code> it throws <code>AI/error</code> naming <code>appCheck/fetch-status-error</code> before sending any request.</span></span></span></summary>
|
|
406
|
-
<div class="compat-evidence"><div class="compat-probe">capture <a href="https://github.com/davideast/pyric/blob/main/packages/conformance/observations/app-check/app-check-client-invalid-debug-token.json" target="_blank" rel="noopener noreferrer"><code>app-check-client-invalid-debug-token</code></a> (<code>aiRequest</code>, <code>aiGeneration</code>, <code>aiLimitedUseRequest</code>, <code>aiLimitedUseGeneration</code>). (Structured evidence: <a href="https://github.com/davideast/pyric/blob/main/packages/cli/test/serve/ai-app-check-passthrough.test.ts#L189" target="_blank" rel="noopener noreferrer"><code>ai-app-check-passthrough.test.ts</code></a>, <a href="https://github.com/davideast/pyric/blob/main/test/apps/ai-production-app-check/scenario.ts#L3" target="_blank" rel="noopener noreferrer"><code>scenario.ts</code></a>)</div></div>
|
|
406
|
+
<div class="compat-evidence"><div class="compat-probe">capture <a href="https://github.com/davideast/pyric/blob/main/packages/conformance/observations/app-check/app-check-client-invalid-debug-token.json" target="_blank" rel="noopener noreferrer"><code>app-check-client-invalid-debug-token</code></a> (<code>aiRequest</code>, <code>aiGeneration</code>, <code>aiLimitedUseRequest</code>, <code>aiLimitedUseGeneration</code>). (Structured evidence: <a href="https://github.com/davideast/pyric/blob/main/packages/cli/test/serve/ai-app-check-passthrough.test.ts#L189" target="_blank" rel="noopener noreferrer"><code>ai-app-check-passthrough.test.ts</code></a>, <a href="https://github.com/davideast/pyric/blob/main/test/apps/ai-production-app-check/scenario.ts#L3" target="_blank" rel="noopener noreferrer"><code>scenario.ts</code></a>, <a href="https://github.com/davideast/pyric/blob/main/test/apps/ai-production-import-map/scenario.ts#L4" target="_blank" rel="noopener noreferrer"><code>scenario.ts</code></a>)</div></div>
|
|
407
407
|
</details>
|
|
408
408
|
</div>
|
|
409
409
|
<h2 id="current-gaps">Current gaps</h2>
|
|
@@ -423,9 +423,9 @@ html{scrollbar-gutter:stable}
|
|
|
423
423
|
<details class="compat-row" data-status="diverged"><summary class="compat-line"><span class="compat-dot" data-status="diverged" role="img" aria-label="Diverged (documented)" title="Diverged (documented)"></span><span class="compat-main"><code class="compat-api">Schema.enumString()</code><span class="compat-sub"><span class="compat-behavior"><code>Schema.enumString</code> serializes the enum values with type <code>string</code> and format <code>enum</code></span></span></span></summary>
|
|
424
424
|
<div class="compat-evidence"><div class="compat-note"><a href="https://github.com/davideast/pyric/blob/main/packages/pyric/test/ai/helpers-schema.test.ts#L153" target="_blank" rel="noopener noreferrer"><code>unit:helpers-schema.test.ts</code></a> test <code>ai#schema-string-enum</code> (upstream toJSON request shape; GoogleAI accepts only enum and date-time formats)</div></div></details>
|
|
425
425
|
<details class="compat-row" data-status="diverged"><summary class="compat-line"><span class="compat-dot" data-status="diverged" role="img" aria-label="Diverged (documented)" title="Diverged (documented)"></span><span class="compat-main"><code class="compat-api">getAI(app) in a registered server process</code><span class="compat-sub"><span class="compat-behavior">Under a remote register activation, <code>getAI(app)</code> in a server process fails with <code>failed-precondition</code> and a message that names the client services that do reach the Node host: <code>firebase/ai</code> has no path to the host, and no in-process sandbox stands in for it. Production AI pass-through (<code>PYRIC_AI=production</code>) loads the real <code>firebase/ai</code> and is unaffected.</span></span></span></summary>
|
|
426
|
-
<div class="compat-evidence"><div class="compat-note">App scenario <code>test/apps/client-sdk-under-register</code> calls it under <code>node --import @pyric/cli/register</code> against a hosted Vite dev server and asserts the refusal; on main (942cb175) it returned a handle on a private in-process sandbox. <a href="https://github.com/davideast/pyric/blob/main/packages/cli/test/register/mapping.test.ts#
|
|
426
|
+
<div class="compat-evidence"><div class="compat-note">App scenario <code>test/apps/client-sdk-under-register</code> calls it under <code>node --import @pyric/cli/register</code> against a hosted Vite dev server and asserts the refusal; on main (942cb175) it returned a handle on a private in-process sandbox. <a href="https://github.com/davideast/pyric/blob/main/packages/cli/test/register/mapping.test.ts#L80" target="_blank" rel="noopener noreferrer"><code>mapping.test.ts</code></a> pins that the subpath keeps its mirror under a remote activation, and <a href="https://github.com/davideast/pyric/blob/main/packages/cli/test/register/node-origin.test.ts#L2" target="_blank" rel="noopener noreferrer"><code>node-origin.test.ts</code></a> that a mirror resolved from such an app refuses. (Structured evidence: <a href="https://github.com/davideast/pyric/blob/main/test/apps/client-sdk-under-register/scenario.ts#L1" target="_blank" rel="noopener noreferrer"><code>scenario.ts</code></a>)</div></div></details>
|
|
427
427
|
<details class="compat-row" data-status="diverged"><summary class="compat-line"><span class="compat-dot" data-status="diverged" role="img" aria-label="Diverged (documented)" title="Diverged (documented)"></span><span class="compat-main"><code class="compat-api">getAI(app) in a server-rendered module under vite dev</code><span class="compat-sub"><span class="compat-behavior">Under <code>vite dev</code>, <code>getAI(app)</code> in a server-rendered module fails with <code>failed-precondition</code> in the default sandbox AI mode, naming the client services that reach the host: <code>firebase/ai</code> has no path to the dev server's host from server code. In production AI mode the real <code>firebase/ai</code> loads and the network guard permits Firebase AI Logic. A SharedWorker dev server refuses it the same way.</span></span></span></summary>
|
|
428
|
-
<div class="compat-evidence"><div class="compat-note">App scenario <code>test/apps/vite-ssr-client-sdk</code> calls it in SSR on a hosted dev server and asserts the refusal; a second dev server in production AI mode lets the real SDK reach only <code>firebasevertexai.googleapis.com</code>, which a stand-in beneath the guard refuses. On main (ba2c0bf0a) it was the real SDK. <a href="https://github.com/davideast/pyric/blob/main/packages/cli/test/serve/vite-module-swap.test.ts#
|
|
428
|
+
<div class="compat-evidence"><div class="compat-note">App scenario <code>test/apps/vite-ssr-client-sdk</code> calls it in SSR on a hosted dev server and asserts the refusal; a second dev server in production AI mode lets the real SDK reach only <code>firebasevertexai.googleapis.com</code>, which a stand-in beneath the guard refuses. On main (ba2c0bf0a) it was the real SDK. <a href="https://github.com/davideast/pyric/blob/main/packages/cli/test/serve/vite-module-swap.test.ts#L4" target="_blank" rel="noopener noreferrer"><code>vite-module-swap.test.ts</code></a> pins the routing. (Structured evidence: <a href="https://github.com/davideast/pyric/blob/main/test/apps/vite-ssr-client-sdk/scenario.ts#L1" target="_blank" rel="noopener noreferrer"><code>scenario.ts</code></a>)</div></div></details>
|
|
429
429
|
</div>
|
|
430
430
|
<h2 id="reviewed-public-runtime-gaps">Reviewed public-runtime gaps</h2>
|
|
431
431
|
<div class="compat-list">
|