pyric 0.1.0-alpha.32 → 0.1.0-alpha.33
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/app-check-gate.d.ts +11 -8
- package/dist/ai/app-check-gate.d.ts.map +1 -1
- package/dist/ai/app-check-gate.js +2 -2
- package/dist/ai/app-check-gate.js.map +1 -1
- package/dist/ai/broker/gemini-engine.d.ts +7 -0
- package/dist/ai/broker/gemini-engine.d.ts.map +1 -1
- package/dist/ai/broker/gemini-engine.js +19 -1
- package/dist/ai/broker/gemini-engine.js.map +1 -1
- package/dist/ai/broker/gemini-upstream.d.ts.map +1 -1
- package/dist/ai/broker/gemini-upstream.js +11 -9
- package/dist/ai/broker/gemini-upstream.js.map +1 -1
- package/dist/ai/broker/upstream-error-redaction.d.ts.map +1 -1
- package/dist/ai/broker/upstream-error-redaction.js +10 -7
- package/dist/ai/broker/upstream-error-redaction.js.map +1 -1
- package/dist/ai/generation-enums.d.ts +0 -21
- package/dist/ai/generation-enums.d.ts.map +1 -1
- package/dist/ai/generation-enums.js +0 -18
- package/dist/ai/generation-enums.js.map +1 -1
- package/dist/ai/index.d.ts +1 -1
- package/dist/ai/index.d.ts.map +1 -1
- package/dist/ai/index.js +1 -1
- package/dist/ai/index.js.map +1 -1
- package/dist/app/diagnostics.d.ts +1 -1
- package/dist/app/diagnostics.js +1 -1
- package/dist/app/registry.d.ts.map +1 -1
- package/dist/app/registry.js +13 -6
- package/dist/app/registry.js.map +1 -1
- package/dist/app-check/index.d.ts.map +1 -1
- package/dist/app-check/index.js +5 -2
- package/dist/app-check/index.js.map +1 -1
- package/dist/app-check/state.d.ts.map +1 -1
- package/dist/app-check/state.js +5 -3
- package/dist/app-check/state.js.map +1 -1
- package/dist/auth/sandbox/driver.d.ts +1 -0
- package/dist/auth/sandbox/driver.d.ts.map +1 -1
- package/dist/auth/sandbox-backend.d.ts +7 -1
- package/dist/auth/sandbox-backend.d.ts.map +1 -1
- package/dist/auth/sandbox-backend.js +31 -2
- package/dist/auth/sandbox-backend.js.map +1 -1
- package/dist/firestore/lite.d.ts +2 -2
- package/dist/firestore/lite.d.ts.map +1 -1
- package/dist/firestore/lite.js +2 -2
- package/dist/firestore/lite.js.map +1 -1
- package/dist/firestore/sandbox/wire-encoder.d.ts.map +1 -1
- package/dist/firestore/sandbox/wire-encoder.js +7 -4
- package/dist/firestore/sandbox/wire-encoder.js.map +1 -1
- package/dist/rules/grammar/compile-limits.d.ts +1 -1
- package/dist/rules/grammar/compile-limits.d.ts.map +1 -1
- package/dist/rules/grammar/compile-limits.js +31 -0
- package/dist/rules/grammar/compile-limits.js.map +1 -1
- package/dist/rules/internal/index.d.ts +1 -0
- package/dist/rules/internal/index.d.ts.map +1 -1
- package/dist/rules/internal/index.js +2 -0
- package/dist/rules/internal/index.js.map +1 -1
- package/dist/rules/simulator/conversions.d.ts.map +1 -1
- package/dist/rules/simulator/conversions.js +18 -27
- package/dist/rules/simulator/conversions.js.map +1 -1
- package/dist/rules/simulator/evaluation-builtins.d.ts.map +1 -1
- package/dist/rules/simulator/evaluation-builtins.js +19 -13
- package/dist/rules/simulator/evaluation-builtins.js.map +1 -1
- package/dist/rules/simulator/evaluator.d.ts.map +1 -1
- package/dist/rules/simulator/evaluator.js +65 -35
- package/dist/rules/simulator/evaluator.js.map +1 -1
- package/dist/rules/simulator/firestore-values.d.ts +7 -2
- package/dist/rules/simulator/firestore-values.d.ts.map +1 -1
- package/dist/rules/simulator/firestore-values.js +12 -6
- package/dist/rules/simulator/firestore-values.js.map +1 -1
- package/dist/rules/simulator/handler.d.ts.map +1 -1
- package/dist/rules/simulator/handler.js +2 -1
- package/dist/rules/simulator/handler.js.map +1 -1
- package/dist/rules/simulator/host-value.d.ts +14 -0
- package/dist/rules/simulator/host-value.d.ts.map +1 -0
- package/dist/rules/simulator/host-value.js +60 -0
- package/dist/rules/simulator/host-value.js.map +1 -0
- package/dist/rules/simulator/index-access.d.ts +1 -1
- package/dist/rules/simulator/index-access.d.ts.map +1 -1
- package/dist/rules/simulator/index-access.js +22 -16
- package/dist/rules/simulator/index-access.js.map +1 -1
- package/dist/rules/simulator/mapdiff.d.ts +2 -0
- package/dist/rules/simulator/mapdiff.d.ts.map +1 -1
- package/dist/rules/simulator/mapdiff.js +6 -0
- package/dist/rules/simulator/mapdiff.js.map +1 -1
- package/dist/rules/simulator/math-builtins.d.ts.map +1 -1
- package/dist/rules/simulator/math-builtins.js +19 -27
- package/dist/rules/simulator/math-builtins.js.map +1 -1
- package/dist/rules/simulator/rules-int.d.ts +122 -0
- package/dist/rules/simulator/rules-int.d.ts.map +1 -0
- package/dist/rules/simulator/rules-int.js +241 -0
- package/dist/rules/simulator/rules-int.js.map +1 -0
- package/dist/rules/simulator/rules-type.d.ts.map +1 -1
- package/dist/rules/simulator/rules-type.js +4 -1
- package/dist/rules/simulator/rules-type.js.map +1 -1
- package/dist/rules/simulator/slice-bounds.d.ts +5 -2
- package/dist/rules/simulator/slice-bounds.d.ts.map +1 -1
- package/dist/rules/simulator/slice-bounds.js +6 -3
- package/dist/rules/simulator/slice-bounds.js.map +1 -1
- package/dist/rules/simulator/trace-recorder.d.ts +2 -0
- package/dist/rules/simulator/trace-recorder.d.ts.map +1 -1
- package/dist/rules/simulator/trace-recorder.js +5 -1
- package/dist/rules/simulator/trace-recorder.js.map +1 -1
- package/dist/rules/simulator/value-equality.d.ts +2 -1
- package/dist/rules/simulator/value-equality.d.ts.map +1 -1
- package/dist/rules/simulator/value-equality.js +18 -11
- package/dist/rules/simulator/value-equality.js.map +1 -1
- package/dist/rules/simulator/wrappers/duration.d.ts +18 -7
- package/dist/rules/simulator/wrappers/duration.d.ts.map +1 -1
- package/dist/rules/simulator/wrappers/duration.js +45 -25
- package/dist/rules/simulator/wrappers/duration.js.map +1 -1
- package/dist/rules/simulator/wrappers/float.d.ts +7 -9
- package/dist/rules/simulator/wrappers/float.d.ts.map +1 -1
- package/dist/rules/simulator/wrappers/float.js +24 -17
- package/dist/rules/simulator/wrappers/float.js.map +1 -1
- package/dist/sandbox/internal/app-check-token.d.ts +2 -0
- package/dist/sandbox/internal/app-check-token.d.ts.map +1 -1
- package/dist/sandbox/internal/app-check-token.js +1 -0
- package/dist/sandbox/internal/app-check-token.js.map +1 -1
- package/dist/sandbox/internal/index.d.ts +1 -0
- package/dist/sandbox/internal/index.d.ts.map +1 -1
- package/dist/sandbox/internal/index.js +1 -0
- package/dist/sandbox/internal/index.js.map +1 -1
- package/dist/sandbox/internal/provider-email-verification.d.ts +3 -0
- package/dist/sandbox/internal/provider-email-verification.d.ts.map +1 -0
- package/dist/sandbox/internal/provider-email-verification.js +22 -0
- package/dist/sandbox/internal/provider-email-verification.js.map +1 -0
- package/dist/storage/sandbox/rules-bindings.d.ts.map +1 -1
- package/dist/storage/sandbox/rules-bindings.js +3 -1
- package/dist/storage/sandbox/rules-bindings.js.map +1 -1
- package/dist/storage/sandbox/rules-evaluator.d.ts.map +1 -1
- package/dist/storage/sandbox/rules-evaluator.js +78 -20
- package/dist/storage/sandbox/rules-evaluator.js.map +1 -1
- package/dist/storage/sandbox/rules-firestore-lookup.d.ts.map +1 -1
- package/dist/storage/sandbox/rules-firestore-lookup.js +9 -28
- package/dist/storage/sandbox/rules-firestore-lookup.js.map +1 -1
- package/dist/storage/sandbox/rules-latlng.d.ts.map +1 -1
- package/dist/storage/sandbox/rules-latlng.js +2 -9
- package/dist/storage/sandbox/rules-latlng.js.map +1 -1
- package/dist/storage/sandbox/rules-methods.d.ts +5 -5
- package/dist/storage/sandbox/rules-methods.d.ts.map +1 -1
- package/dist/storage/sandbox/rules-methods.js +11 -11
- package/dist/storage/sandbox/rules-methods.js.map +1 -1
- package/dist/storage/sandbox/rules-operators.d.ts +14 -11
- package/dist/storage/sandbox/rules-operators.d.ts.map +1 -1
- package/dist/storage/sandbox/rules-operators.js +44 -55
- package/dist/storage/sandbox/rules-operators.js.map +1 -1
- package/dist/storage/sandbox/rules-path.d.ts +21 -0
- package/dist/storage/sandbox/rules-path.d.ts.map +1 -1
- package/dist/storage/sandbox/rules-path.js +47 -2
- package/dist/storage/sandbox/rules-path.js.map +1 -1
- package/dist/storage/sandbox/rules-time-methods.d.ts.map +1 -1
- package/dist/storage/sandbox/rules-time-methods.js +8 -8
- package/dist/storage/sandbox/rules-time-methods.js.map +1 -1
- package/dist/storage/sandbox/rules-values.d.ts +0 -1
- package/dist/storage/sandbox/rules-values.d.ts.map +1 -1
- package/dist/storage/sandbox/rules-values.js +0 -8
- package/dist/storage/sandbox/rules-values.js.map +1 -1
- package/dist/storage/sandbox/rules.d.ts +1 -1
- package/dist/storage/sandbox/rules.d.ts.map +1 -1
- package/dist/storage/sandbox/rules.js +5 -12
- package/dist/storage/sandbox/rules.js.map +1 -1
- package/package.json +4 -3
- package/src/ai/app-check-gate.ts +11 -8
- package/src/ai/broker/gemini-engine.ts +21 -1
- package/src/ai/broker/gemini-upstream.ts +11 -8
- package/src/ai/broker/upstream-error-redaction.ts +9 -6
- package/src/ai/generation-enums.ts +0 -24
- package/src/ai/index.ts +0 -3
- package/src/app/diagnostics.test.ts +1 -1
- package/src/app/diagnostics.ts +1 -1
- package/src/app/registry.ts +21 -8
- package/src/app-check/index.ts +5 -2
- package/src/app-check/state.ts +5 -3
- package/src/auth/sandbox/driver.ts +1 -1
- package/src/auth/sandbox-backend.ts +31 -3
- package/src/firestore/lite.ts +2 -2
- package/src/firestore/sandbox/wire-encoder.ts +7 -4
- package/src/rules/grammar/compile-limits.ts +35 -1
- package/src/rules/internal/index.ts +3 -0
- package/src/rules/simulator/conversions.ts +15 -21
- package/src/rules/simulator/evaluation-builtins.ts +18 -14
- package/src/rules/simulator/evaluator.ts +71 -28
- package/src/rules/simulator/firestore-values.ts +10 -4
- package/src/rules/simulator/handler.ts +2 -1
- package/src/rules/simulator/host-value.ts +57 -0
- package/src/rules/simulator/index-access.ts +23 -17
- package/src/rules/simulator/mapdiff.ts +7 -0
- package/src/rules/simulator/math-builtins.ts +26 -25
- package/src/rules/simulator/rules-int.ts +250 -0
- package/src/rules/simulator/rules-type.ts +3 -1
- package/src/rules/simulator/slice-bounds.ts +7 -4
- package/src/rules/simulator/trace-recorder.ts +5 -1
- package/src/rules/simulator/value-equality.ts +23 -9
- package/src/rules/simulator/wrappers/duration.ts +50 -29
- package/src/rules/simulator/wrappers/float.ts +22 -16
- package/src/sandbox/internal/app-check-token.ts +3 -0
- package/src/sandbox/internal/index.ts +1 -0
- package/src/sandbox/internal/provider-email-verification.ts +22 -0
- package/src/storage/sandbox/rules-bindings.ts +3 -1
- package/src/storage/sandbox/rules-evaluator.ts +81 -20
- package/src/storage/sandbox/rules-firestore-lookup.ts +7 -26
- package/src/storage/sandbox/rules-latlng.ts +2 -8
- package/src/storage/sandbox/rules-methods.ts +12 -11
- package/src/storage/sandbox/rules-operators.ts +56 -51
- package/src/storage/sandbox/rules-path.ts +45 -2
- package/src/storage/sandbox/rules-time-methods.ts +10 -10
- package/src/storage/sandbox/rules-values.ts +0 -8
- package/src/storage/sandbox/rules.ts +7 -9
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Firebase AI Logic's App Check gate, as the sandbox plays it.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* a
|
|
9
|
-
*
|
|
4
|
+
* What AI Logic answers a request without a valid App Check token depends on
|
|
5
|
+
* the project. Enforcement is required from a date each project can set, up to
|
|
6
|
+
* January 21, 2027, and an unenforced project may answer 200 until then. The
|
|
7
|
+
* sandbox always refuses, so an app finds the missing token before production
|
|
8
|
+
* does: a request with no `X-Firebase-AppCheck` header, a malformed one, the web
|
|
9
|
+
* SDK's placeholder token, or a token whose signature fails gets HTTP 403
|
|
10
|
+
* `PERMISSION_DENIED`, the envelope captured from another unenforced project
|
|
11
|
+
* (`earlier-captures/ai-logic-refusal-unenforced.json`), before any engine runs.
|
|
12
|
+
* A valid token answers. See #1300.
|
|
10
13
|
*
|
|
11
14
|
* The App Check claim a request carries comes from the handle: `getAI(app)`
|
|
12
15
|
* reads the app's App Check activation when it builds the handle, as the SDK's
|
|
@@ -27,13 +30,13 @@
|
|
|
27
30
|
*/
|
|
28
31
|
import type { FirebaseApp } from '../app/types.js';
|
|
29
32
|
import type { AppCheckClaim, WireErrorEnvelope } from './broker/types.js';
|
|
30
|
-
/** Production's message for a refused request (
|
|
33
|
+
/** Production's message for a refused request (`earlier-captures/ai-logic-refusal-unenforced.json`), verbatim. */
|
|
31
34
|
export declare const APP_CHECK_REQUIRED_MESSAGE = "Firebase AI Logic has been deactivated in this project. To resume using Firebase AI Logic, you must enforce Firebase App Check. Learn more: https://firebase.google.com/docs/ai-logic/app-check";
|
|
32
35
|
/** Pyric's guidance for a page, printed beside production's error, never in place of it. */
|
|
33
36
|
export declare const APP_CHECK_HINT = "Firebase AI Logic refuses requests without an App Check token, and so does the sandbox. Call initializeAppCheck(app, { provider }) before getAI(app). For local development, set self.FIREBASE_APPCHECK_DEBUG_TOKEN = true before initializeAppCheck to use the debug provider; the sandbox accepts its tokens. https://firebase.google.com/docs/ai-logic/app-check";
|
|
34
37
|
/** Pyric's guidance for a server process, where reCAPTCHA throws and `self` does not exist. */
|
|
35
38
|
export declare const APP_CHECK_SERVER_HINT = "Firebase AI Logic refuses requests without an App Check token, and so does the sandbox. This process has no document, so the reCAPTCHA providers throw here. For local development, set globalThis.FIREBASE_APPCHECK_DEBUG_TOKEN = true, then call initializeAppCheck(app, { provider: new CustomProvider({ getToken }) }) before getAI(app). The sandbox does not call getToken while the debug token is set. Without the debug token, getToken returns { token, expireTimeMillis: Date.now() + ttlMillis } from a token your server mints with firebase-admin's getAppCheck().createToken(appId). https://firebase.google.com/docs/ai-logic/app-check";
|
|
36
|
-
/** The captured refusal envelope (`
|
|
39
|
+
/** The captured refusal envelope (`earlier-captures/ai-logic-refusal-unenforced.json`). */
|
|
37
40
|
export declare function appCheckRequired(): WireErrorEnvelope;
|
|
38
41
|
/**
|
|
39
42
|
* Whether AI Logic would accept this token: one the sandbox signed (the web
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app-check-gate.d.ts","sourceRoot":"","sources":["../../src/ai/app-check-gate.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"app-check-gate.d.ts","sourceRoot":"","sources":["../../src/ai/app-check-gate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAGnD,OAAO,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAG1E,kHAAkH;AAClH,eAAO,MAAM,0BAA0B,oMAC4J,CAAC;AAEpM,4FAA4F;AAC5F,eAAO,MAAM,cAAc,wWAC4U,CAAC;AAExW,+FAA+F;AAC/F,eAAO,MAAM,qBAAqB,4nBACylB,CAAC;AAgB5nB,2FAA2F;AAC3F,wBAAgB,gBAAgB,IAAI,iBAAiB,CAEpD;AAOD;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAAE,SAAS,GAAE,MAAmB,GAAG,OAAO,CAAC,OAAO,CAAC,CAOhH;AAED,oGAAoG;AACpG,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CASzD;AAED,2DAA2D;AAC3D,MAAM,WAAW,kBAAkB;IACjC,mFAAmF;IACnF,KAAK,IAAI,OAAO,CAAC,aAAa,CAAC,CAAC;IAChC,0FAA0F;IAC1F,WAAW,IAAI,IAAI,CAAC;CACrB;AAwBD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,GAAG,kBAAkB,CAM/F"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { appCheckActivationOf, appCheckTokenFor } from '../sandbox/internal/app-check-activation.js';
|
|
2
2
|
import { APP_CHECK_PLACEHOLDER_TOKEN, checkAppCheckToken } from '../sandbox/internal/app-check-token.js';
|
|
3
3
|
import { RequestHeadersFailure } from './errors.js';
|
|
4
|
-
/** Production's message for a refused request (
|
|
4
|
+
/** Production's message for a refused request (`earlier-captures/ai-logic-refusal-unenforced.json`), verbatim. */
|
|
5
5
|
export const APP_CHECK_REQUIRED_MESSAGE = 'Firebase AI Logic has been deactivated in this project. To resume using Firebase AI Logic, you must enforce Firebase App Check. Learn more: https://firebase.google.com/docs/ai-logic/app-check';
|
|
6
6
|
/** Pyric's guidance for a page, printed beside production's error, never in place of it. */
|
|
7
7
|
export const APP_CHECK_HINT = 'Firebase AI Logic refuses requests without an App Check token, and so does the sandbox. Call initializeAppCheck(app, { provider }) before getAI(app). For local development, set self.FIREBASE_APPCHECK_DEBUG_TOKEN = true before initializeAppCheck to use the debug provider; the sandbox accepts its tokens. https://firebase.google.com/docs/ai-logic/app-check';
|
|
@@ -21,7 +21,7 @@ function appCheckHintForThisRealm() {
|
|
|
21
21
|
return APP_CHECK_HINT;
|
|
22
22
|
return APP_CHECK_SERVER_HINT;
|
|
23
23
|
}
|
|
24
|
-
/** The captured refusal envelope (`
|
|
24
|
+
/** The captured refusal envelope (`earlier-captures/ai-logic-refusal-unenforced.json`). */
|
|
25
25
|
export function appCheckRequired() {
|
|
26
26
|
return { error: { code: 403, message: APP_CHECK_REQUIRED_MESSAGE, status: 'PERMISSION_DENIED' } };
|
|
27
27
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app-check-gate.js","sourceRoot":"","sources":["../../src/ai/app-check-gate.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"app-check-gate.js","sourceRoot":"","sources":["../../src/ai/app-check-gate.ts"],"names":[],"mappings":"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"}
|
|
@@ -48,6 +48,13 @@ export declare class GeminiEngine implements AnswerEngine {
|
|
|
48
48
|
* (`upstream-error-redaction.ts`, #1660).
|
|
49
49
|
*/
|
|
50
50
|
private checkStatus;
|
|
51
|
+
/**
|
|
52
|
+
* One read of an upstream stream. A read that fails mid-stream becomes an
|
|
53
|
+
* {@link AiBrokerError} whose message has the request's credentials masked,
|
|
54
|
+
* as a failed fetch's does (#1737): the broker logs the message and the
|
|
55
|
+
* caller receives it, and a read error can quote upstream text.
|
|
56
|
+
*/
|
|
57
|
+
private readStream;
|
|
51
58
|
generateContent(req: GenerateContentRequest, model: string): Promise<WireResponse>;
|
|
52
59
|
streamGenerateContent(req: GenerateContentRequest, model: string): AsyncIterable<WireChunk>;
|
|
53
60
|
countTokens(req: CountTokensRequest, model: string): Promise<CountTokensResponse>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gemini-engine.d.ts","sourceRoot":"","sources":["../../../src/ai/broker/gemini-engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAkB,KAAK,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAElF,OAAO,KAAK,EACV,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,eAAe,EACf,SAAS,EACT,YAAY,EACb,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAuCnF,MAAM,MAAM,mBAAmB,GAAG,qBAAqB,CAAC;AAExD,qBAAa,YAAa,YAAW,YAAY;IAC/C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiB;gBAE9B,OAAO,CAAC,EAAE,mBAAmB;IAIzC;;;;;OAKG;IACH,gBAAgB,IAAI,OAAO;IAI3B,oFAAoF;YACtE,IAAI;IAUlB;;;;;OAKG;IACH,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe;IAIrD,OAAO,CAAC,cAAc;IAItB;;;;;;;;OAQG;YACW,WAAW;
|
|
1
|
+
{"version":3,"file":"gemini-engine.d.ts","sourceRoot":"","sources":["../../../src/ai/broker/gemini-engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAkB,KAAK,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAElF,OAAO,KAAK,EACV,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,eAAe,EACf,SAAS,EACT,YAAY,EACb,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAuCnF,MAAM,MAAM,mBAAmB,GAAG,qBAAqB,CAAC;AAExD,qBAAa,YAAa,YAAW,YAAY;IAC/C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiB;gBAE9B,OAAO,CAAC,EAAE,mBAAmB;IAIzC;;;;;OAKG;IACH,gBAAgB,IAAI,OAAO;IAI3B,oFAAoF;YACtE,IAAI;IAUlB;;;;;OAKG;IACH,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe;IAIrD,OAAO,CAAC,cAAc;IAItB;;;;;;;;OAQG;YACW,WAAW;IAiBzB;;;;;OAKG;YACW,UAAU;IAclB,eAAe,CAAC,GAAG,EAAE,sBAAsB,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAKjF,qBAAqB,CAC1B,GAAG,EAAE,sBAAsB,EAC3B,KAAK,EAAE,MAAM,GACZ,aAAa,CAAC,SAAS,CAAC;IA2DrB,WAAW,CAAC,GAAG,EAAE,kBAAkB,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;CAIxF"}
|
|
@@ -103,6 +103,24 @@ export class GeminiEngine {
|
|
|
103
103
|
}
|
|
104
104
|
throw new AiBrokerError(errorEnvelope(response.status, `Gemini API returned status ${response.status}: ${redactUpstreamText(errorText, credentials)}`, 'INTERNAL'));
|
|
105
105
|
}
|
|
106
|
+
/**
|
|
107
|
+
* One read of an upstream stream. A read that fails mid-stream becomes an
|
|
108
|
+
* {@link AiBrokerError} whose message has the request's credentials masked,
|
|
109
|
+
* as a failed fetch's does (#1737): the broker logs the message and the
|
|
110
|
+
* caller receives it, and a read error can quote upstream text.
|
|
111
|
+
*/
|
|
112
|
+
async readStream(reader, credentials) {
|
|
113
|
+
try {
|
|
114
|
+
return await reader.read();
|
|
115
|
+
}
|
|
116
|
+
catch (err) {
|
|
117
|
+
if (err instanceof AiBrokerError)
|
|
118
|
+
throw err;
|
|
119
|
+
const rawMessage = err instanceof Error ? err.message : String(err);
|
|
120
|
+
const message = `Gemini API stream aborted mid-response: ${redactUpstreamText(rawMessage, credentials)}`;
|
|
121
|
+
throw new AiBrokerError(errorEnvelope(502, message, 'UNAVAILABLE'));
|
|
122
|
+
}
|
|
123
|
+
}
|
|
106
124
|
async generateContent(req, model) {
|
|
107
125
|
const { response } = await this.send(model, 'generateContent', req);
|
|
108
126
|
return (await response.json());
|
|
@@ -118,7 +136,7 @@ export class GeminiEngine {
|
|
|
118
136
|
let buffer = '';
|
|
119
137
|
try {
|
|
120
138
|
while (true) {
|
|
121
|
-
const { done, value } = await
|
|
139
|
+
const { done, value } = await this.readStream(reader, credentials);
|
|
122
140
|
const isDone = done === true;
|
|
123
141
|
if (isDone) {
|
|
124
142
|
break;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gemini-engine.js","sourceRoot":"","sources":["../../../src/ai/broker/gemini-engine.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"gemini-engine.js","sourceRoot":"","sources":["../../../src/ai/broker/gemini-engine.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gemini-upstream.d.ts","sourceRoot":"","sources":["../../../src/ai/broker/gemini-upstream.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;
|
|
1
|
+
{"version":3,"file":"gemini-upstream.d.ts","sourceRoot":"","sources":["../../../src/ai/broker/gemini-upstream.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAKH;;gDAEgD;AAChD,eAAO,MAAM,uBAAuB,8CAA8C,CAAC;AAqBnF;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAG3E;AAyDD,MAAM,WAAW,qBAAqB;IACpC,6EAA6E;IAC7E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uFAAuF;IACvF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2DAA2D;IAC3D,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IACrB;gEAC4D;IAC5D,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IACtC,iFAAiF;IACjF,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB;oEACgE;IAChE,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAmBD,qBAAa,cAAc;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,sEAAsE;IACtE,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC;IACrC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAsE;IAChG,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAwB;IACtD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAe;IACnC,OAAO,CAAC,QAAQ,CAAmD;IACnE,OAAO,CAAC,SAAS,CAA8B;gBAEnC,OAAO,CAAC,EAAE,qBAAqB;IAS3C;;;;;OAKG;IACH,gBAAgB,IAAI,OAAO;IAI3B;;;;;;OAMG;IACG,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC;IAIvG;;;;;OAKG;IACG,mBAAmB,CACvB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,GAAG,UAAU,CAAC,WAAW,CAAC,GACrC,OAAO,CAAC;QAAE,QAAQ,EAAE,QAAQ,CAAC;QAAC,WAAW,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAgBzD;;;;OAIG;YACW,gBAAgB;IAyB9B;;;;;OAKG;IACH,OAAO,CAAC,cAAc;YAkBR,cAAc;IAa5B;;;OAGG;IACH,OAAO,CAAC,qBAAqB;YAuBf,IAAI;CAyBnB"}
|
|
@@ -12,7 +12,8 @@
|
|
|
12
12
|
* `/__pyric/ai-proxy/gemini`, which attaches the credentials itself, so none
|
|
13
13
|
* are sent and the browser never holds the key.
|
|
14
14
|
*/
|
|
15
|
-
import { AiBrokerError, errorEnvelope
|
|
15
|
+
import { AiBrokerError, errorEnvelope } from './synthesizer.js';
|
|
16
|
+
import { redactUpstreamText } from './upstream-error-redaction.js';
|
|
16
17
|
/** Where the gemini engine talks when no `baseUrl` overrides it. Published
|
|
17
18
|
* through `pyric/ai/internal` so the CLI's startup banner can name the same
|
|
18
19
|
* endpoint instead of keeping its own copy. */
|
|
@@ -150,14 +151,14 @@ export class GeminiUpstream {
|
|
|
150
151
|
const auth = await this.resolveAuthToken();
|
|
151
152
|
const credentials = credentialsOf(auth);
|
|
152
153
|
const first = this.formatUpstreamRequest(resource, action, auth);
|
|
153
|
-
const response = await this.post(first.url, first.headers, body);
|
|
154
|
+
const response = await this.post(first.url, first.headers, body, credentials);
|
|
154
155
|
if (response.status === 401 && auth.isAdc) {
|
|
155
156
|
await response.body?.cancel().catch(() => { });
|
|
156
157
|
this.adcToken = undefined;
|
|
157
158
|
const retryAuth = await this.resolveAuthToken();
|
|
158
159
|
credentials.push(...credentialsOf(retryAuth));
|
|
159
160
|
const retry = this.formatUpstreamRequest(resource, action, retryAuth);
|
|
160
|
-
return { response: await this.post(retry.url, retry.headers, body), credentials };
|
|
161
|
+
return { response: await this.post(retry.url, retry.headers, body, credentials), credentials };
|
|
161
162
|
}
|
|
162
163
|
return { response, credentials };
|
|
163
164
|
}
|
|
@@ -241,17 +242,18 @@ export class GeminiUpstream {
|
|
|
241
242
|
const separator = url.includes('?') ? '&' : '?';
|
|
242
243
|
return { url: `${url}${separator}key=${encodeURIComponent(auth.token)}`, headers };
|
|
243
244
|
}
|
|
244
|
-
async post(url, headers, body) {
|
|
245
|
+
async post(url, headers, body, credentials) {
|
|
245
246
|
try {
|
|
246
247
|
return await this.fetchImpl(url, { method: 'POST', headers, body });
|
|
247
248
|
}
|
|
248
249
|
catch (err) {
|
|
249
|
-
//
|
|
250
|
-
// (
|
|
251
|
-
//
|
|
250
|
+
// Mask both with the request's exact credentials, as an error body is
|
|
251
|
+
// masked (#1737): `url` carries a static key, and a fetch error can
|
|
252
|
+
// quote the URL or a header, such as Node's refusal of an invalid
|
|
253
|
+
// `Authorization` value, which quotes the bearer token.
|
|
252
254
|
const rawMessage = err instanceof Error ? err.message : String(err);
|
|
253
|
-
const safeUrl =
|
|
254
|
-
const safeMessage =
|
|
255
|
+
const safeUrl = redactUpstreamText(url, credentials);
|
|
256
|
+
const safeMessage = redactUpstreamText(rawMessage, credentials);
|
|
255
257
|
throw new AiBrokerError(errorEnvelope(502, `Failed to connect to Gemini API at ${safeUrl}: ${safeMessage}`, 'UNAVAILABLE'));
|
|
256
258
|
}
|
|
257
259
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gemini-upstream.js","sourceRoot":"","sources":["../../../src/ai/broker/gemini-upstream.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"gemini-upstream.js","sourceRoot":"","sources":["../../../src/ai/broker/gemini-upstream.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upstream-error-redaction.d.ts","sourceRoot":"","sources":["../../../src/ai/broker/upstream-error-redaction.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"upstream-error-redaction.d.ts","sourceRoot":"","sources":["../../../src/ai/broker/upstream-error-redaction.ts"],"names":[],"mappings":"AAkCA;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAIvF;AAqBD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAIxF"}
|
|
@@ -19,9 +19,14 @@
|
|
|
19
19
|
*/
|
|
20
20
|
import { redactUrl } from './synthesizer.js';
|
|
21
21
|
const MASK = '***';
|
|
22
|
-
/**
|
|
23
|
-
|
|
24
|
-
|
|
22
|
+
/**
|
|
23
|
+
* Every form every credential can appear in, raw and percent-encoded,
|
|
24
|
+
* longest first. One credential can contain another, such as an ADC token
|
|
25
|
+
* and the refreshed token that extends it, so the longer is masked first:
|
|
26
|
+
* masking the shorter first would leave the rest of the longer behind.
|
|
27
|
+
*/
|
|
28
|
+
function quotedForms(credentials) {
|
|
29
|
+
const forms = new Set(credentials.flatMap((credential) => [encodeURIComponent(credential), credential]));
|
|
25
30
|
return [...forms].sort((a, b) => b.length - a.length);
|
|
26
31
|
}
|
|
27
32
|
/**
|
|
@@ -31,10 +36,8 @@ function quotedForms(credential) {
|
|
|
31
36
|
*/
|
|
32
37
|
export function redactUpstreamText(text, credentials) {
|
|
33
38
|
let masked = text;
|
|
34
|
-
for (const
|
|
35
|
-
|
|
36
|
-
masked = masked.split(form).join(MASK);
|
|
37
|
-
}
|
|
39
|
+
for (const form of quotedForms(credentials))
|
|
40
|
+
masked = masked.split(form).join(MASK);
|
|
38
41
|
return redactUrl(masked);
|
|
39
42
|
}
|
|
40
43
|
function redactValue(value, credentials) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upstream-error-redaction.js","sourceRoot":"","sources":["../../../src/ai/broker/upstream-error-redaction.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7C,MAAM,IAAI,GAAG,KAAK,CAAC;AAEnB
|
|
1
|
+
{"version":3,"file":"upstream-error-redaction.js","sourceRoot":"","sources":["../../../src/ai/broker/upstream-error-redaction.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7C,MAAM,IAAI,GAAG,KAAK,CAAC;AAEnB;;;;;GAKG;AACH,SAAS,WAAW,CAAC,WAA8B;IACjD,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,kBAAkB,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;IACzG,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC;AACxD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAY,EAAE,WAA8B;IAC7E,IAAI,MAAM,GAAG,IAAI,CAAC;IAClB,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,WAAW,CAAC;QAAE,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpF,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC;AAC3B,CAAC;AAED,SAAS,WAAW,CAAC,KAAc,EAAE,WAA8B;IACjE,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,kBAAkB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IAC7E,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC;IACrF,MAAM,QAAQ,GAAG,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC;IAC7D,IAAI,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC;SAC7D,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,WAAW,CAAC,EAAE,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IAChG,OAAO,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;AACrC,CAAC;AAED,qEAAqE;AACrE,SAAS,SAAS,CAAC,IAAY;IAC7B,IAAI,CAAC;QACH,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAY,EAAE,CAAC;IAChD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAY,EAAE,WAA8B;IAC9E,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAC7B,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,kBAAkB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IACrE,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC;AAC9D,CAAC"}
|
|
@@ -1,25 +1,4 @@
|
|
|
1
1
|
/** Runtime values from the installed Firebase SDK. */
|
|
2
|
-
export declare const ImagenAspectRatio: {
|
|
3
|
-
readonly SQUARE: "1:1";
|
|
4
|
-
readonly LANDSCAPE_3x4: "3:4";
|
|
5
|
-
readonly PORTRAIT_4x3: "4:3";
|
|
6
|
-
readonly LANDSCAPE_16x9: "16:9";
|
|
7
|
-
readonly PORTRAIT_9x16: "9:16";
|
|
8
|
-
};
|
|
9
|
-
export type ImagenAspectRatio = (typeof ImagenAspectRatio)[keyof typeof ImagenAspectRatio];
|
|
10
|
-
export declare const ImagenPersonFilterLevel: {
|
|
11
|
-
readonly BLOCK_ALL: "dont_allow";
|
|
12
|
-
readonly ALLOW_ADULT: "allow_adult";
|
|
13
|
-
readonly ALLOW_ALL: "allow_all";
|
|
14
|
-
};
|
|
15
|
-
export type ImagenPersonFilterLevel = (typeof ImagenPersonFilterLevel)[keyof typeof ImagenPersonFilterLevel];
|
|
16
|
-
export declare const ImagenSafetyFilterLevel: {
|
|
17
|
-
readonly BLOCK_LOW_AND_ABOVE: "block_low_and_above";
|
|
18
|
-
readonly BLOCK_MEDIUM_AND_ABOVE: "block_medium_and_above";
|
|
19
|
-
readonly BLOCK_ONLY_HIGH: "block_only_high";
|
|
20
|
-
readonly BLOCK_NONE: "block_none";
|
|
21
|
-
};
|
|
22
|
-
export type ImagenSafetyFilterLevel = (typeof ImagenSafetyFilterLevel)[keyof typeof ImagenSafetyFilterLevel];
|
|
23
2
|
export declare const InferenceMode: {
|
|
24
3
|
readonly PREFER_ON_DEVICE: "prefer_on_device";
|
|
25
4
|
readonly ONLY_ON_DEVICE: "only_on_device";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generation-enums.d.ts","sourceRoot":"","sources":["../../src/ai/generation-enums.ts"],"names":[],"mappings":"AAAA,sDAAsD;AAEtD,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"generation-enums.d.ts","sourceRoot":"","sources":["../../src/ai/generation-enums.ts"],"names":[],"mappings":"AAAA,sDAAsD;AAEtD,eAAO,MAAM,aAAa;;;;;CAKhB,CAAC;AACX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;AAE/E,eAAO,MAAM,eAAe;;;CAGlB,CAAC;AACX,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAErF,eAAO,MAAM,gBAAgB;;;;;;CAMnB,CAAC;AACX,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,OAAO,gBAAgB,CAAC,CAAC"}
|
|
@@ -1,22 +1,4 @@
|
|
|
1
1
|
/** Runtime values from the installed Firebase SDK. */
|
|
2
|
-
export const ImagenAspectRatio = {
|
|
3
|
-
SQUARE: "1:1",
|
|
4
|
-
LANDSCAPE_3x4: "3:4",
|
|
5
|
-
PORTRAIT_4x3: "4:3",
|
|
6
|
-
LANDSCAPE_16x9: "16:9",
|
|
7
|
-
PORTRAIT_9x16: "9:16",
|
|
8
|
-
};
|
|
9
|
-
export const ImagenPersonFilterLevel = {
|
|
10
|
-
BLOCK_ALL: "dont_allow",
|
|
11
|
-
ALLOW_ADULT: "allow_adult",
|
|
12
|
-
ALLOW_ALL: "allow_all",
|
|
13
|
-
};
|
|
14
|
-
export const ImagenSafetyFilterLevel = {
|
|
15
|
-
BLOCK_LOW_AND_ABOVE: "block_low_and_above",
|
|
16
|
-
BLOCK_MEDIUM_AND_ABOVE: "block_medium_and_above",
|
|
17
|
-
BLOCK_ONLY_HIGH: "block_only_high",
|
|
18
|
-
BLOCK_NONE: "block_none",
|
|
19
|
-
};
|
|
20
2
|
export const InferenceMode = {
|
|
21
3
|
PREFER_ON_DEVICE: "prefer_on_device",
|
|
22
4
|
ONLY_ON_DEVICE: "only_on_device",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generation-enums.js","sourceRoot":"","sources":["../../src/ai/generation-enums.ts"],"names":[],"mappings":"AAAA,sDAAsD;AAEtD,MAAM,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"generation-enums.js","sourceRoot":"","sources":["../../src/ai/generation-enums.ts"],"names":[],"mappings":"AAAA,sDAAsD;AAEtD,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,gBAAgB,EAAE,kBAAkB;IACpC,cAAc,EAAE,gBAAgB;IAChC,aAAa,EAAE,eAAe;IAC9B,eAAe,EAAE,iBAAiB;CAC1B,CAAC;AAGX,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,SAAS,EAAE,WAAW;IACtB,QAAQ,EAAE,UAAU;CACZ,CAAC;AAGX,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,cAAc,EAAE,eAAe;IAC/B,SAAS,EAAE,UAAU;IACrB,sBAAsB,EAAE,sBAAsB;IAC9C,iBAAiB,EAAE,iBAAiB;IACpC,yBAAyB,EAAE,yBAAyB;CAC5C,CAAC"}
|
package/dist/ai/index.d.ts
CHANGED
|
@@ -28,5 +28,5 @@ export type { GenerateContentResult, GenerateContentStreamResult, SingleRequestO
|
|
|
28
28
|
export { BlockReason, FinishReason, FunctionCallingMode, HarmBlockMethod, HarmBlockThreshold, HarmCategory, HarmProbability, HarmSeverity, ImageConfigAspectRatio, ImageConfigImageSize, Language, Modality, Outcome, POSSIBLE_ROLES, ResponseModality, SchemaType, ThinkingLevel, URLRetrievalStatus, } from './enums.js';
|
|
29
29
|
export type { Role } from './enums.js';
|
|
30
30
|
export type { Citation, CitationMetadata, CodeExecutionResult, CodeExecutionResultPart, CodeExecutionTool, Content, CountTokensRequest, CountTokensResponse, Date, EnhancedGenerateContentResponse, ErrorDetails, ExecutableCode, ExecutableCodePart, FileData, FileDataPart, FunctionCall, FunctionCallingConfig, FunctionCallPart, FunctionDeclaration, FunctionDeclarationsTool, FunctionResponse, FunctionResponsePart, GenerateContentCandidate, GenerateContentRequest, GenerateContentResponse, GenerationConfig, GenerativeContentBlob, GoogleMaps, GoogleMapsGroundingChunk, GoogleMapsTool, GoogleSearch, GoogleSearchTool, GroundingChunk, GroundingMetadata, GroundingSupport, ImageConfig, InlineDataPart, LatLng, ModalityTokenCount, ObjectSchemaRequest, Part, PromptFeedback, RetrievalConfig, SafetyRating, SafetySetting, SchemaInterface, SchemaRequest, SchemaShared, SearchEntrypoint, Segment, TextPart, ThinkingConfig, Tool, ToolConfig, URLContext, URLContextMetadata, URLContextTool, URLMetadata, UsageMetadata, VideoMetadata, WebGroundingChunk, AI, AIOptions, } from './types.js';
|
|
31
|
-
export {
|
|
31
|
+
export { InferenceMode, InferenceSource, LiveResponseType, } from './generation-enums.js';
|
|
32
32
|
//# sourceMappingURL=index.d.ts.map
|
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;;;;;;;;;;;;;;;;GAgBG;AAIH,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACnD,YAAY,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACtF,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACzG,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC5F,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EACL,WAAW,EACX,WAAW,EACX,aAAa,EACb,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,MAAM,EACN,YAAY,GACb,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,YAAY,EACV,qBAAqB,EACrB,2BAA2B,EAC3B,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAI5B,OAAO,EACL,WAAW,EACX,YAAY,EACZ,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,sBAAsB,EACtB,oBAAoB,EACpB,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,cAAc,EACd,gBAAgB,EAChB,UAAU,EACV,aAAa,EACb,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAQvC,YAAY,EACV,QAAQ,EACR,gBAAgB,EAChB,mBAAmB,EACnB,uBAAuB,EACvB,iBAAiB,EACjB,OAAO,EACP,kBAAkB,EAClB,mBAAmB,EACnB,IAAI,EACJ,+BAA+B,EAC/B,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,QAAQ,EACR,YAAY,EACZ,YAAY,EACZ,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,EACnB,wBAAwB,EACxB,gBAAgB,EAChB,oBAAoB,EACpB,wBAAwB,EACxB,sBAAsB,EACtB,uBAAuB,EACvB,gBAAgB,EAChB,qBAAqB,EACrB,UAAU,EACV,wBAAwB,EACxB,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACX,cAAc,EACd,MAAM,EACN,kBAAkB,EAClB,mBAAmB,EACnB,IAAI,EACJ,cAAc,EACd,eAAe,EACf,YAAY,EACZ,aAAa,EACb,eAAe,EACf,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,OAAO,EACP,QAAQ,EACR,cAAc,EACd,IAAI,EACJ,UAAU,EACV,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,WAAW,EACX,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,EAAE,EACF,SAAS,GACV,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ai/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAIH,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACnD,YAAY,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACtF,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACzG,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC5F,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EACL,WAAW,EACX,WAAW,EACX,aAAa,EACb,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,MAAM,EACN,YAAY,GACb,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,YAAY,EACV,qBAAqB,EACrB,2BAA2B,EAC3B,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAI5B,OAAO,EACL,WAAW,EACX,YAAY,EACZ,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,sBAAsB,EACtB,oBAAoB,EACpB,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,cAAc,EACd,gBAAgB,EAChB,UAAU,EACV,aAAa,EACb,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAQvC,YAAY,EACV,QAAQ,EACR,gBAAgB,EAChB,mBAAmB,EACnB,uBAAuB,EACvB,iBAAiB,EACjB,OAAO,EACP,kBAAkB,EAClB,mBAAmB,EACnB,IAAI,EACJ,+BAA+B,EAC/B,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,QAAQ,EACR,YAAY,EACZ,YAAY,EACZ,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,EACnB,wBAAwB,EACxB,gBAAgB,EAChB,oBAAoB,EACpB,wBAAwB,EACxB,sBAAsB,EACtB,uBAAuB,EACvB,gBAAgB,EAChB,qBAAqB,EACrB,UAAU,EACV,wBAAwB,EACxB,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACX,cAAc,EACd,MAAM,EACN,kBAAkB,EAClB,mBAAmB,EACnB,IAAI,EACJ,cAAc,EACd,eAAe,EACf,YAAY,EACZ,aAAa,EACb,eAAe,EACf,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,OAAO,EACP,QAAQ,EACR,cAAc,EACd,IAAI,EACJ,UAAU,EACV,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,WAAW,EACX,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,EAAE,EACF,SAAS,GACV,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,aAAa,EACb,eAAe,EACf,gBAAgB,GACjB,MAAM,uBAAuB,CAAC"}
|
package/dist/ai/index.js
CHANGED
|
@@ -24,5 +24,5 @@ export { AnyOfSchema, ArraySchema, BooleanSchema, IntegerSchema, NumberSchema, O
|
|
|
24
24
|
export { TARGET_SYMBOL } from './target.js';
|
|
25
25
|
// ─── Re-exports: enums (const/type pairs, values verbatim from 2.12.0) ─
|
|
26
26
|
export { BlockReason, FinishReason, FunctionCallingMode, HarmBlockMethod, HarmBlockThreshold, HarmCategory, HarmProbability, HarmSeverity, ImageConfigAspectRatio, ImageConfigImageSize, Language, Modality, Outcome, POSSIBLE_ROLES, ResponseModality, SchemaType, ThinkingLevel, URLRetrievalStatus, } from './enums.js';
|
|
27
|
-
export {
|
|
27
|
+
export { InferenceMode, InferenceSource, LiveResponseType, } from './generation-enums.js';
|
|
28
28
|
//# sourceMappingURL=index.js.map
|
package/dist/ai/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ai/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,yEAAyE;AAEzE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAEnD,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACtF,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEzG,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EACL,WAAW,EACX,WAAW,EACX,aAAa,EACb,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,MAAM,EACN,YAAY,GACb,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAO5C,0EAA0E;AAE1E,OAAO,EACL,WAAW,EACX,YAAY,EACZ,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,sBAAsB,EACtB,oBAAoB,EACpB,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,cAAc,EACd,gBAAgB,EAChB,UAAU,EACV,aAAa,EACb,kBAAkB,GACnB,MAAM,YAAY,CAAC;AA2EpB,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ai/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,yEAAyE;AAEzE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAEnD,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACtF,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEzG,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EACL,WAAW,EACX,WAAW,EACX,aAAa,EACb,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,MAAM,EACN,YAAY,GACb,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAO5C,0EAA0E;AAE1E,OAAO,EACL,WAAW,EACX,YAAY,EACZ,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,sBAAsB,EACtB,oBAAoB,EACpB,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,cAAc,EACd,gBAAgB,EAChB,UAAU,EACV,aAAa,EACb,kBAAkB,GACnB,MAAM,YAAY,CAAC;AA2EpB,OAAO,EACL,aAAa,EACb,eAAe,EACf,gBAAgB,GACjB,MAAM,uBAAuB,CAAC"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Firebase JS SDK version whose public app behavior the current oracle records.
|
|
3
3
|
* The app conformance replay makes this pin fail visibly when observations move.
|
|
4
4
|
*/
|
|
5
|
-
export declare const SDK_VERSION = "12.
|
|
5
|
+
export declare const SDK_VERSION = "12.19.0";
|
|
6
6
|
export type LogLevel = 'debug' | 'verbose' | 'info' | 'warn' | 'error' | 'silent';
|
|
7
7
|
export interface LogEntry {
|
|
8
8
|
level: LogLevel;
|
package/dist/app/diagnostics.js
CHANGED
|
@@ -3,7 +3,7 @@ import { FirebaseError } from '../sandbox/internal/firebase-error.js';
|
|
|
3
3
|
* Firebase JS SDK version whose public app behavior the current oracle records.
|
|
4
4
|
* The app conformance replay makes this pin fail visibly when observations move.
|
|
5
5
|
*/
|
|
6
|
-
export const SDK_VERSION = '12.
|
|
6
|
+
export const SDK_VERSION = '12.19.0';
|
|
7
7
|
const LOGGER_NAME = '@firebase/app';
|
|
8
8
|
const LEVELS = {
|
|
9
9
|
debug: 0,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/app/registry.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAQpF,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAkBxD,iFAAiF;AACjF,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAAC,GAAG,IAAI,CAK1F;AAED,sFAAsF;AACtF,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,KAAK,GAAG,IAAI,CAKjE;
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/app/registry.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAQpF,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAkBxD,iFAAiF;AACjF,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAAC,GAAG,IAAI,CAK1F;AAED,sFAAsF;AACtF,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,KAAK,GAAG,IAAI,CAKjE;AAyGD,wBAAgB,aAAa,CAC3B,OAAO,CAAC,EAAE,eAAe,EACzB,WAAW,CAAC,EAAE,MAAM,GAAG,mBAAmB,GACzC,WAAW,CA0Cb;AAED,wBAAgB,MAAM,CAAC,IAAI,GAAE,MAAyB,GAAG,WAAW,CAInE;AAED,wBAAgB,OAAO,IAAI,WAAW,EAAE,CAEvC;AAED,wBAAsB,SAAS,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAO/D;AAED,8EAA8E;AAC9E,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,IAAI,CAAC,CAO9D"}
|
package/dist/app/registry.js
CHANGED
|
@@ -29,8 +29,13 @@ function appError(code, message) {
|
|
|
29
29
|
function noAppError(name) {
|
|
30
30
|
return appError('no-app', `No Firebase App '${name}' has been created - call initializeApp() first`);
|
|
31
31
|
}
|
|
32
|
-
|
|
33
|
-
|
|
32
|
+
/**
|
|
33
|
+
* firebase/app 12.19.0 names the mismatched parameter and embeds both values,
|
|
34
|
+
* each serialized with JSON.stringify, in the duplicate-app message.
|
|
35
|
+
*/
|
|
36
|
+
function duplicateAppError(name, mismatchedParam, oldValue, newValue) {
|
|
37
|
+
const values = `Existing: '${JSON.stringify(oldValue)}'. New: '${JSON.stringify(newValue)}'.`;
|
|
38
|
+
return appError('duplicate-app', `Firebase App named '${name}' already exists with different ${mismatchedParam}. ${values}`);
|
|
34
39
|
}
|
|
35
40
|
function appDeletedError(name) {
|
|
36
41
|
return appError('app-deleted', `Firebase App named '${name}' already deleted`);
|
|
@@ -104,11 +109,13 @@ export function initializeApp(options, rawSettings) {
|
|
|
104
109
|
const optionsSnapshot = cloneValue(options);
|
|
105
110
|
const existing = appRegistry.get(settings.name);
|
|
106
111
|
if (existing) {
|
|
107
|
-
if (firebaseOptionsEqual(existing.options, optionsSnapshot)
|
|
108
|
-
|
|
109
|
-
return existing.app;
|
|
112
|
+
if (!firebaseOptionsEqual(existing.options, optionsSnapshot)) {
|
|
113
|
+
throw duplicateAppError(settings.name, 'options', existing.options, optionsSnapshot);
|
|
110
114
|
}
|
|
111
|
-
|
|
115
|
+
if (!firebaseOptionsEqual(existing.settings, settings)) {
|
|
116
|
+
throw duplicateAppError(settings.name, 'config', existing.settings, settings);
|
|
117
|
+
}
|
|
118
|
+
return existing.app;
|
|
112
119
|
}
|
|
113
120
|
const refusal = backendRefusal;
|
|
114
121
|
const isRefused = refusal !== undefined;
|
package/dist/app/registry.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/app/registry.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,uBAAuB,EACvB,gBAAgB,EAChB,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEpD,MAAM,gBAAgB,GAAG,WAAW,CAAC;AAQrC,MAAM,WAAW,GAAG,IAAI,GAAG,EAAyB,CAAC;AACrD,MAAM,WAAW,GAAG,IAAI,OAAO,EAAe,CAAC;AAC/C,MAAM,QAAQ,GAAG,IAAI,OAAO,EAAuB,CAAC;AACpD,IAAI,cAA2C,CAAC;AAChD,IAAI,cAAgE,CAAC;AACrE,IAAI,cAAyC,CAAC;AAE9C,iFAAiF;AACjF,MAAM,UAAU,sBAAsB,CAAC,OAA6C;IAClF,IAAI,cAAc,KAAK,SAAS,IAAI,CAAC,cAAc,KAAK,SAAS,IAAI,cAAc,KAAK,OAAO,CAAC,EAAE,CAAC;QACjG,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;IACnF,CAAC;IACD,cAAc,GAAG,OAAO,CAAC;AAC3B,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,sBAAsB,CAAC,OAAoB;IACzD,IAAI,cAAc,KAAK,SAAS,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;QACjE,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;IACnF,CAAC;IACD,cAAc,GAAG,OAAO,CAAC;AAC3B,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY,EAAE,OAAe;IAC7C,OAAO,IAAI,aAAa,CAAC,OAAO,IAAI,EAAE,EAAE,aAAa,OAAO,SAAS,IAAI,IAAI,CAAC,CAAC;AACjF,CAAC;AAED,SAAS,UAAU,CAAC,IAAY;IAC9B,OAAO,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,IAAI,iDAAiD,CAAC,CAAC;AACvG,CAAC;AAED,SAAS,iBAAiB,
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/app/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/app-check/index.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEnD,OAAO,EAAE,cAAc,EAAE,2BAA2B,EAAE,mBAAmB,EAAgB,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACvI,OAAO,EAOL,KAAK,mBAAmB,EAEzB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,cAAc,EAAE,2BAA2B,EAAE,mBAAmB,EAAE,CAAC;AAC5E,YAAY,EAAE,qBAAqB,EAAE,yBAAyB,IAAI,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACxG,YAAY,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEtD,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAC;CAC3B;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,yBAAyB,CAAC,EAAE,OAAO,CAAC;CACrC;AAED,MAAM,MAAM,qBAAqB,GAAG,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;AACzE,MAAM,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC;AACrC,MAAM,WAAW,eAAe,CAAC,CAAC;IAChC,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IAC1B,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;CACvB;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/app-check/index.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEnD,OAAO,EAAE,cAAc,EAAE,2BAA2B,EAAE,mBAAmB,EAAgB,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACvI,OAAO,EAOL,KAAK,mBAAmB,EAEzB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,cAAc,EAAE,2BAA2B,EAAE,mBAAmB,EAAE,CAAC;AAC5E,YAAY,EAAE,qBAAqB,EAAE,yBAAyB,IAAI,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACxG,YAAY,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEtD,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAC;CAC3B;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,yBAAyB,CAAC,EAAE,OAAO,CAAC;CACrC;AAED,MAAM,MAAM,qBAAqB,GAAG,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;AACzE,MAAM,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC;AACrC,MAAM,WAAW,eAAe,CAAC,CAAC;IAChC,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IAC1B,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;CACvB;AAiBD,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,WAAW,GAAG,SAAS,EAAE,OAAO,EAAE,eAAe,GAAG,QAAQ,CAcnG;AAQD,wBAAsB,QAAQ,CAAC,QAAQ,EAAE,QAAQ,EAAE,YAAY,UAAQ,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAGrG;AAED,wBAAsB,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAEzF;AAED,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,QAAQ,EAAE,yBAAyB,EAAE,OAAO,GAAG,IAAI,CAEvG;AAaD,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,qBAAqB,GAAG,eAAe,CAAC,mBAAmB,CAAC,EAC9E,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,EAChC,YAAY,CAAC,EAAE,MAAM,IAAI,GACxB,WAAW,CAEb"}
|
package/dist/app-check/index.js
CHANGED
|
@@ -24,9 +24,12 @@ class AppCheckHandle {
|
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
26
|
const handles = new WeakMap();
|
|
27
|
-
/**
|
|
27
|
+
/**
|
|
28
|
+
* Upstream (`@firebase/app-check` 0.13.1, firebase 12.19.0) compares the flags
|
|
29
|
+
* as booleans, `!!initial === !!next`, so an omitted flag equals `false`.
|
|
30
|
+
*/
|
|
28
31
|
function hasSameOptions(state, options) {
|
|
29
|
-
const sameRefresh = state.initialAutoRefresh === options.isTokenAutoRefreshEnabled;
|
|
32
|
+
const sameRefresh = Boolean(state.initialAutoRefresh) === Boolean(options.isTokenAutoRefreshEnabled);
|
|
30
33
|
return sameRefresh && sameProvider(state.provider, options.provider);
|
|
31
34
|
}
|
|
32
35
|
export function initializeAppCheck(app, options) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/app-check/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,2BAA2B,EAAE,mBAAmB,EAAE,YAAY,EAAyB,MAAM,gBAAgB,CAAC;AACvI,OAAO,EACL,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,cAAc,EACd,OAAO,GAIR,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,cAAc,EAAE,2BAA2B,EAAE,mBAAmB,EAAE,CAAC;AAqB5E,MAAM,cAAc;IACG;IAArB,YAAqB,GAAgB;QAAhB,QAAG,GAAH,GAAG,CAAa;IAAG,CAAC;CAC1C;AAED,MAAM,OAAO,GAAG,IAAI,OAAO,EAA+B,CAAC;AAE3D
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/app-check/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/app-check/state.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAGL,KAAK,mBAAmB,IAAI,WAAW,EACxC,MAAM,wCAAwC,CAAC;AAGhD,OAAO,EAAE,cAAc,EAAE,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/app-check/state.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAGL,KAAK,mBAAmB,IAAI,WAAW,EACxC,MAAM,wCAAwC,CAAC;AAGhD,OAAO,EAAE,cAAc,EAAE,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAOvE,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAC5C,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;CACvB;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,qHAAqH;IACrH,QAAQ,CAAC,kBAAkB,EAAE,OAAO,GAAG,SAAS,CAAC;IACjD,yBAAyB,EAAE,OAAO,CAAC;IACnC,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,4HAA4H;IAC5H,QAAQ,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC;IACtC,SAAS,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC;IAC9B,+FAA+F;IAC/F,QAAQ,CAAC,UAAU,EAAE,cAAc,GAAG,IAAI,CAAC;IAC3C,iFAAiF;IACjF,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;CAC7B;AAED,yGAAyG;AACzG,wBAAgB,OAAO,CAAC,GAAG,EAAE,WAAW,GAAG,aAAa,GAAG,SAAS,CAEnE;AAqCD,wBAAgB,QAAQ,CAAC,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,OAAO,GAAG,SAAS,GAAG,aAAa,CAcpI;AAoDD,wBAAsB,YAAY,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,OAAO,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAM9H;AAeD,oGAAoG;AACpG,wBAAsB,cAAc,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAGzG;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,aAAa,GAAG,MAAM,IAAI,CAMrF"}
|