pyric-admin 0.1.0-alpha.8 → 0.1.0-alpha.9
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/LICENSE +216 -0
- package/README.md +94 -77
- package/README.md.orig +26 -27
- package/dist/app/index.d.ts +23 -134
- package/dist/app/index.d.ts.map +1 -1
- package/dist/app/index.js +69 -202
- package/dist/app/index.js.map +1 -1
- package/dist/app/lifecycle.d.ts +7 -0
- package/dist/app/lifecycle.d.ts.map +1 -0
- package/dist/app/lifecycle.js +15 -0
- package/dist/app/lifecycle.js.map +1 -0
- package/dist/auth/index.d.ts +76 -105
- package/dist/auth/index.d.ts.map +1 -1
- package/dist/auth/index.js +27 -86
- package/dist/auth/index.js.map +1 -1
- package/dist/database/index.d.ts +72 -39
- package/dist/database/index.d.ts.map +1 -1
- package/dist/database/index.js +27 -45
- package/dist/database/index.js.map +1 -1
- package/dist/firestore/index.d.ts.map +1 -1
- package/dist/firestore/index.js +4 -1
- package/dist/firestore/index.js.map +1 -1
- package/dist/messaging/index.d.ts +154 -0
- package/dist/messaging/index.d.ts.map +1 -0
- package/dist/messaging/index.js +238 -0
- package/dist/messaging/index.js.map +1 -0
- package/dist/storage/index.d.ts +19 -38
- package/dist/storage/index.d.ts.map +1 -1
- package/dist/storage/index.js +14 -43
- package/dist/storage/index.js.map +1 -1
- package/package.json +15 -5
package/dist/auth/index.d.ts
CHANGED
|
@@ -1,90 +1,78 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `pyric-admin/auth` — Phase 3 (branded-app dispatch) + Phase 4b
|
|
3
|
-
* (minimal in-memory sandbox backend).
|
|
4
|
-
*
|
|
5
|
-
* Mirrors `firebase-admin/auth` for a useful subset of methods. The
|
|
6
|
-
* `app` argument is the branded handle from `pyric-admin/app`
|
|
7
|
-
* ({@link PyricAdminApp}); the brand symbol picks the backend:
|
|
8
|
-
*
|
|
9
|
-
* - **Prod path** (`app[ADMIN_APP_TARGET] === 'prod'`) — delegates to
|
|
10
|
-
* `firebase-admin/auth`'s `getAuth(app.adminApp)` and returns the
|
|
11
|
-
* production `Auth` instance unchanged. Drop-in replacement for
|
|
12
|
-
* `firebase-admin/auth` so agents already calling it keep their
|
|
13
|
-
* exact behavior (tenants, providers, MFA, session cookies, action
|
|
14
|
-
* codes, all present on the returned handle).
|
|
15
|
-
*
|
|
16
|
-
* - **Sandbox path** (`app[ADMIN_APP_TARGET] === 'sandbox'`) — backed
|
|
17
|
-
* by an in-memory store keyed off `app.sandbox`. Implements the
|
|
18
|
-
* core user-management subset listed below. Tokens are NOT real
|
|
19
|
-
* JWTs — they're deterministic strings the same sandbox backend
|
|
20
|
-
* parses on `verifyIdToken`. The sandbox backend is intentionally
|
|
21
|
-
* minimal: enough to exercise agent code paths that use
|
|
22
|
-
* `createUser` / `getUser` / `setCustomUserClaims` /
|
|
23
|
-
* `createCustomToken` / `verifyIdToken`, not enough to model a
|
|
24
|
-
* real identity platform.
|
|
25
|
-
*
|
|
26
|
-
* - **Remote sandbox arm** — when the sandbox carries `pyric/sandbox`'s
|
|
27
|
-
* remote brand (a Node-side handle onto the browser-hosted
|
|
28
|
-
* SharedWorker sandbox from `pyric-tools`' `connectRemoteSandbox()`),
|
|
29
|
-
* user CRUD relays over the handle's worker channel instead of the
|
|
30
|
-
* in-memory store, so server-created users land in the ONE user pool
|
|
31
|
-
* the browser app + Studio share. See the "Remote sandbox arm"
|
|
32
|
-
* section below for the details (including the extra methods it
|
|
33
|
-
* supports: `updateUser`, `listUsers`).
|
|
34
|
-
*
|
|
35
|
-
* Surface scope on the sandbox backend (what works):
|
|
36
|
-
*
|
|
37
|
-
* - {@link getAuth}
|
|
38
|
-
* - `Auth.createCustomToken(uid, claims?)` — returns a deterministic
|
|
39
|
-
* `pyric-sandbox-custom:${uid}:${json}` string; no signing.
|
|
40
|
-
* - `Auth.verifyIdToken(token)` — parses tokens minted by
|
|
41
|
-
* `createCustomToken`; returns a {@link DecodedIdToken}-shaped
|
|
42
|
-
* object.
|
|
43
|
-
* - `Auth.createUser(properties)` — stores a {@link UserRecord}
|
|
44
|
-
* in an in-memory `Map<uid, UserRecord>`. Auto-generates a `uid`
|
|
45
|
-
* when one is not supplied.
|
|
46
|
-
* - `Auth.getUser(uid)` — Map lookup.
|
|
47
|
-
* - `Auth.getUserByEmail(email)` — linear scan.
|
|
48
|
-
* - `Auth.deleteUser(uid)` — Map delete.
|
|
49
|
-
* - `Auth.setCustomUserClaims(uid, claims)` — updates the stored
|
|
50
|
-
* `UserRecord.customClaims`.
|
|
51
|
-
*
|
|
52
|
-
* Sandbox backend — explicitly NOT implemented (throws
|
|
53
|
-
* `'not implemented in pyric-admin/auth sandbox backend'` so callers
|
|
54
|
-
* get a clear remediation message):
|
|
55
|
-
*
|
|
56
|
-
* - Tenancy: `tenantManager` and any per-tenant call.
|
|
57
|
-
* - Identity providers: `createProviderConfig`, `getProviderConfig`,
|
|
58
|
-
* `listProviderConfigs`, `updateProviderConfig`,
|
|
59
|
-
* `deleteProviderConfig`.
|
|
60
|
-
* - Multi-factor: `MultiFactorSettings` on UserRecord is always
|
|
61
|
-
* `undefined`; MFA enrollment is unsupported.
|
|
62
|
-
* - Session cookies: `createSessionCookie`, `verifySessionCookie`.
|
|
63
|
-
* - Action codes / password reset / email link sign-in:
|
|
64
|
-
* `generatePasswordResetLink`, `generateEmailVerificationLink`,
|
|
65
|
-
* `generateSignInWithEmailLink`, `generateVerifyAndChangeEmailLink`.
|
|
66
|
-
* - Bulk operations: `listUsers`, `getUsers`, `deleteUsers`,
|
|
67
|
-
* `importUsers`.
|
|
68
|
-
* - Revocation: `revokeRefreshTokens`.
|
|
69
|
-
* - `getUserByPhoneNumber`, `getUserByProviderUid`.
|
|
70
|
-
* - `updateUser` — not required by the brief.
|
|
71
|
-
*
|
|
72
|
-
* Real `firebase-admin` types are imported with `import type` so
|
|
73
|
-
* signatures stay identical to upstream — there's no shape drift to
|
|
74
|
-
* keep in sync.
|
|
75
|
-
*/
|
|
76
|
-
import type { Auth as AdminAuth, CreateRequest, DecodedIdToken, UserRecord } from 'firebase-admin/auth';
|
|
77
1
|
import { type PyricAdminApp } from '../app/index.js';
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
2
|
+
export interface CreateRequest {
|
|
3
|
+
uid?: string;
|
|
4
|
+
email?: string;
|
|
5
|
+
emailVerified?: boolean;
|
|
6
|
+
displayName?: string | null;
|
|
7
|
+
photoURL?: string | null;
|
|
8
|
+
phoneNumber?: string | null;
|
|
9
|
+
disabled?: boolean;
|
|
10
|
+
password?: string;
|
|
11
|
+
}
|
|
12
|
+
export interface UpdateRequest extends Omit<CreateRequest, 'uid'> {
|
|
13
|
+
multiFactor?: unknown;
|
|
14
|
+
providerToLink?: unknown;
|
|
15
|
+
providersToUnlink?: unknown;
|
|
16
|
+
}
|
|
17
|
+
export interface DecodedIdToken extends Record<string, unknown> {
|
|
18
|
+
aud: string;
|
|
19
|
+
auth_time: number;
|
|
20
|
+
exp: number;
|
|
21
|
+
firebase: {
|
|
22
|
+
identities: Record<string, unknown>;
|
|
23
|
+
sign_in_provider: string;
|
|
24
|
+
};
|
|
25
|
+
iat: number;
|
|
26
|
+
iss: string;
|
|
27
|
+
sub: string;
|
|
28
|
+
uid: string;
|
|
29
|
+
}
|
|
30
|
+
export interface UserMetadata {
|
|
31
|
+
creationTime: string;
|
|
32
|
+
lastSignInTime: string;
|
|
33
|
+
toJSON(): Record<string, unknown>;
|
|
34
|
+
}
|
|
35
|
+
export interface UserInfo {
|
|
36
|
+
providerId: string;
|
|
37
|
+
uid: string;
|
|
38
|
+
displayName?: string;
|
|
39
|
+
email?: string;
|
|
40
|
+
photoURL?: string;
|
|
41
|
+
phoneNumber?: string;
|
|
42
|
+
toJSON(): Record<string, unknown>;
|
|
43
|
+
}
|
|
44
|
+
export interface UserRecord {
|
|
45
|
+
readonly uid: string;
|
|
46
|
+
readonly email?: string;
|
|
47
|
+
readonly emailVerified: boolean;
|
|
48
|
+
readonly displayName?: string;
|
|
49
|
+
readonly photoURL?: string;
|
|
50
|
+
readonly phoneNumber?: string;
|
|
51
|
+
readonly disabled: boolean;
|
|
52
|
+
readonly metadata: UserMetadata;
|
|
53
|
+
readonly providerData: UserInfo[];
|
|
54
|
+
readonly customClaims?: Record<string, unknown>;
|
|
55
|
+
readonly tenantId: string | null;
|
|
56
|
+
toJSON(): Record<string, unknown>;
|
|
57
|
+
}
|
|
58
|
+
export interface ListUsersResult {
|
|
59
|
+
users: UserRecord[];
|
|
60
|
+
pageToken?: string;
|
|
61
|
+
}
|
|
62
|
+
/** Sandbox Auth interface intentionally limited to implemented behavior. */
|
|
63
|
+
export interface Auth {
|
|
64
|
+
readonly app: PyricAdminApp;
|
|
65
|
+
createCustomToken(uid: string, developerClaims?: object): Promise<string>;
|
|
66
|
+
verifyIdToken(idToken: string, checkRevoked?: boolean): Promise<DecodedIdToken>;
|
|
67
|
+
createUser(properties: CreateRequest): Promise<UserRecord>;
|
|
68
|
+
getUser(uid: string): Promise<UserRecord>;
|
|
69
|
+
getUserByEmail(email: string): Promise<UserRecord>;
|
|
70
|
+
deleteUser(uid: string): Promise<void>;
|
|
71
|
+
setCustomUserClaims(uid: string, customUserClaims: object | null): Promise<void>;
|
|
72
|
+
updateUser(uid: string, properties: UpdateRequest): Promise<UserRecord>;
|
|
73
|
+
listUsers(maxResults?: number, pageToken?: string): Promise<ListUsersResult>;
|
|
74
|
+
[key: string]: unknown;
|
|
75
|
+
}
|
|
88
76
|
/**
|
|
89
77
|
* Token format minted by `createCustomToken` and parsed by
|
|
90
78
|
* `verifyIdToken`. Exported as a constant so tests can lock the shape.
|
|
@@ -106,25 +94,8 @@ export declare const SANDBOX_TOKEN_PREFIX = "pyric-sandbox-custom";
|
|
|
106
94
|
* Return an `Auth` handle for the given app — or for the DEFAULT app when
|
|
107
95
|
* called with no argument (mirrors firebase-admin's no-arg `getAuth()`:
|
|
108
96
|
* resolves `'[DEFAULT]'` through `pyric-admin/app`'s registry and throws
|
|
109
|
-
* `app/no-app` when nothing has been initialized).
|
|
110
|
-
*
|
|
111
|
-
* whatever brand the resolved app carries.
|
|
112
|
-
*
|
|
113
|
-
* Dispatches on the brand symbol set by `pyric-admin/app`'s
|
|
114
|
-
* `initializeApp`:
|
|
115
|
-
* - `'prod'` → delegates to `firebase-admin/auth`'s `getAuth` against
|
|
116
|
-
* `app.adminApp`. The returned `Auth` is the production object,
|
|
117
|
-
* unmodified.
|
|
118
|
-
* - `'sandbox'` → returns an in-memory `Auth` handle backed by an
|
|
119
|
-
* {@link AuthStore} keyed off `app.sandbox`. Repeat calls for the
|
|
120
|
-
* same sandbox share the store, so writes are visible across
|
|
121
|
-
* handles (matches upstream `getAuth(app)` idempotency).
|
|
122
|
-
*
|
|
123
|
-
* The firebase-admin import is dynamic (`require` at call time) so the
|
|
124
|
-
* module's top-level evaluation stays cheap and so sandbox-only
|
|
125
|
-
* consumers do not pay the firebase-admin initialization cost. Mirrors
|
|
126
|
-
* how `pyric/firestore` defers its firebase init: backends are
|
|
127
|
-
* pay-for-what-you-use.
|
|
97
|
+
* `app/no-app` when nothing has been initialized). Local sandboxes use the
|
|
98
|
+
* in-memory store; remote sandboxes relay to the browser-hosted worker.
|
|
128
99
|
*
|
|
129
100
|
* @example
|
|
130
101
|
* ```ts
|
package/dist/auth/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AA0EA,OAAO,EAGL,KAAK,aAAa,EACnB,MAAM,iBAAiB,CAAC;AAGzB,MAAM,WAAW,aAAa;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC;IAC/D,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,cAAe,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC7D,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,gBAAgB,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5E,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,YAAY;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,QAAQ;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAChC,QAAQ,CAAC,YAAY,EAAE,QAAQ,EAAE,CAAC;IAClC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChD,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,4EAA4E;AAC5E,MAAM,WAAW,IAAI;IACnB,QAAQ,CAAC,GAAG,EAAE,aAAa,CAAC;IAC5B,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1E,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAChF,UAAU,CAAC,UAAU,EAAE,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAC1C,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IACnD,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvC,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjF,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IACxE,SAAS,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAC7E,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAkFD;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,oBAAoB,yBAAyB,CAAC;AA6lB3D;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,OAAO,CAAC,GAAG,CAAC,EAAE,aAAa,GAAG,IAAI,CAoBjD"}
|
package/dist/auth/index.js
CHANGED
|
@@ -1,31 +1,20 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* `pyric-admin/auth` —
|
|
3
|
-
* (minimal in-memory sandbox backend).
|
|
2
|
+
* `pyric-admin/auth` — the sandbox mirror for the Firebase Admin Auth shape.
|
|
4
3
|
*
|
|
5
4
|
* Mirrors `firebase-admin/auth` for a useful subset of methods. The
|
|
6
5
|
* `app` argument is the branded handle from `pyric-admin/app`
|
|
7
|
-
* ({@link PyricAdminApp});
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
* - **Sandbox path** (`app[ADMIN_APP_TARGET] === 'sandbox'`) — backed
|
|
17
|
-
* by an in-memory store keyed off `app.sandbox`. Implements the
|
|
18
|
-
* core user-management subset listed below. Tokens are NOT real
|
|
19
|
-
* JWTs — they're deterministic strings the same sandbox backend
|
|
20
|
-
* parses on `verifyIdToken`. The sandbox backend is intentionally
|
|
21
|
-
* minimal: enough to exercise agent code paths that use
|
|
22
|
-
* `createUser` / `getUser` / `setCustomUserClaims` /
|
|
23
|
-
* `createCustomToken` / `verifyIdToken`, not enough to model a
|
|
24
|
-
* real identity platform.
|
|
6
|
+
* ({@link PyricAdminApp}); only sandbox-branded apps enter this package.
|
|
7
|
+
* The local sandbox path uses an in-memory store keyed off `app.sandbox`
|
|
8
|
+
* and implements the core user-management subset below. Tokens are NOT
|
|
9
|
+
* real JWTs — they are deterministic strings parsed by the same sandbox
|
|
10
|
+
* backend. This is enough to exercise agent code paths that use
|
|
11
|
+
* `createUser` / `getUser` / `setCustomUserClaims` /
|
|
12
|
+
* `createCustomToken` / `verifyIdToken`, not enough to model a real
|
|
13
|
+
* identity platform.
|
|
25
14
|
*
|
|
26
15
|
* - **Remote sandbox arm** — when the sandbox carries `pyric/sandbox`'s
|
|
27
16
|
* remote brand (a Node-side handle onto the browser-hosted
|
|
28
|
-
* SharedWorker sandbox from
|
|
17
|
+
* SharedWorker sandbox from `@pyric/cli`' `connectRemoteSandbox()`),
|
|
29
18
|
* user CRUD relays over the handle's worker channel instead of the
|
|
30
19
|
* in-memory store, so server-created users land in the ONE user pool
|
|
31
20
|
* the browser app + Studio share. See the "Remote sandbox arm"
|
|
@@ -69,12 +58,12 @@
|
|
|
69
58
|
* - `getUserByPhoneNumber`, `getUserByProviderUid`.
|
|
70
59
|
* - `updateUser` — not required by the brief.
|
|
71
60
|
*
|
|
72
|
-
*
|
|
73
|
-
*
|
|
74
|
-
* keep in sync.
|
|
61
|
+
* Public types are mirror-owned structural types. Production applications
|
|
62
|
+
* load `firebase-admin/auth` directly, outside this package graph.
|
|
75
63
|
*/
|
|
76
64
|
import { isRemoteSandbox, } from 'pyric/sandbox';
|
|
77
65
|
import { ADMIN_APP_TARGET, getApp, } from '../app/index.js';
|
|
66
|
+
import { assertAdminAppActive } from '../app/lifecycle.js';
|
|
78
67
|
// ─── Sandbox backend ────────────────────────────────────────────────────
|
|
79
68
|
/**
|
|
80
69
|
* Per-sandbox in-memory store. One instance per `Sandbox` (tracked in
|
|
@@ -98,7 +87,7 @@ class AuthStore {
|
|
|
98
87
|
* collision resistance — it needs a stable, debuggable identifier
|
|
99
88
|
* that doesn't collide *within one sandbox session*. A counter plus
|
|
100
89
|
* a constant prefix is enough; padding keeps the visual width
|
|
101
|
-
|
|
90
|
+
* roughly consistent with Firebase Auth uids.
|
|
102
91
|
*/
|
|
103
92
|
mintUid() {
|
|
104
93
|
const n = String(this.nextAutoUid++).padStart(20, '0');
|
|
@@ -182,7 +171,7 @@ function mintSandboxCustomToken(uid, developerClaims) {
|
|
|
182
171
|
* `DecodedIdToken`-shaped object — every required field is filled with a
|
|
183
172
|
* sandbox-appropriate placeholder (`iss`/`aud` = `pyric-sandbox`, time
|
|
184
173
|
* fields = now), and the developer claims are spread onto the result so
|
|
185
|
-
* `decoded.role` etc.
|
|
174
|
+
* `decoded.role` etc. retain the familiar Firebase Admin shape.
|
|
186
175
|
*
|
|
187
176
|
* Throws on any token that doesn't match the
|
|
188
177
|
* `${SANDBOX_TOKEN_PREFIX}:${uid}:${json}` shape — including real JWTs
|
|
@@ -291,9 +280,8 @@ function makeSandboxAuth(sandbox) {
|
|
|
291
280
|
// rest throw via `notImplemented`. Cast to `Auth` at return.
|
|
292
281
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
293
282
|
const handle = {
|
|
294
|
-
/**
|
|
295
|
-
*
|
|
296
|
-
* shape keeps consumers that inspect `auth.app` from breaking. */
|
|
283
|
+
/** Preserve the upstream `auth.app` property shape while failing loudly
|
|
284
|
+
* because the minimal local backend does not expose an app handle. */
|
|
297
285
|
get app() {
|
|
298
286
|
throw notImplemented('auth.app');
|
|
299
287
|
},
|
|
@@ -692,44 +680,13 @@ function makeRemoteAuth(sandbox) {
|
|
|
692
680
|
};
|
|
693
681
|
return handle;
|
|
694
682
|
}
|
|
695
|
-
// ───
|
|
696
|
-
/**
|
|
697
|
-
* Type guard for the prod arm of {@link PyricAdminApp}. Reads the
|
|
698
|
-
* brand symbol from `pyric-admin/app` — no structural sniffing.
|
|
699
|
-
*/
|
|
700
|
-
function isProdAdminApp(app) {
|
|
701
|
-
return app[ADMIN_APP_TARGET] === 'prod';
|
|
702
|
-
}
|
|
703
|
-
/**
|
|
704
|
-
* Type guard for the sandbox arm of {@link PyricAdminApp}. Brand-based,
|
|
705
|
-
* symmetric with {@link isProdAdminApp}.
|
|
706
|
-
*/
|
|
707
|
-
function isSandboxAdminApp(app) {
|
|
708
|
-
return app[ADMIN_APP_TARGET] === 'sandbox';
|
|
709
|
-
}
|
|
683
|
+
// ─── Sandbox selection ──────────────────────────────────────────────────
|
|
710
684
|
/**
|
|
711
685
|
* Return an `Auth` handle for the given app — or for the DEFAULT app when
|
|
712
686
|
* called with no argument (mirrors firebase-admin's no-arg `getAuth()`:
|
|
713
687
|
* resolves `'[DEFAULT]'` through `pyric-admin/app`'s registry and throws
|
|
714
|
-
* `app/no-app` when nothing has been initialized).
|
|
715
|
-
*
|
|
716
|
-
* whatever brand the resolved app carries.
|
|
717
|
-
*
|
|
718
|
-
* Dispatches on the brand symbol set by `pyric-admin/app`'s
|
|
719
|
-
* `initializeApp`:
|
|
720
|
-
* - `'prod'` → delegates to `firebase-admin/auth`'s `getAuth` against
|
|
721
|
-
* `app.adminApp`. The returned `Auth` is the production object,
|
|
722
|
-
* unmodified.
|
|
723
|
-
* - `'sandbox'` → returns an in-memory `Auth` handle backed by an
|
|
724
|
-
* {@link AuthStore} keyed off `app.sandbox`. Repeat calls for the
|
|
725
|
-
* same sandbox share the store, so writes are visible across
|
|
726
|
-
* handles (matches upstream `getAuth(app)` idempotency).
|
|
727
|
-
*
|
|
728
|
-
* The firebase-admin import is dynamic (`require` at call time) so the
|
|
729
|
-
* module's top-level evaluation stays cheap and so sandbox-only
|
|
730
|
-
* consumers do not pay the firebase-admin initialization cost. Mirrors
|
|
731
|
-
* how `pyric/firestore` defers its firebase init: backends are
|
|
732
|
-
* pay-for-what-you-use.
|
|
688
|
+
* `app/no-app` when nothing has been initialized). Local sandboxes use the
|
|
689
|
+
* in-memory store; remote sandboxes relay to the browser-hosted worker.
|
|
733
690
|
*
|
|
734
691
|
* @example
|
|
735
692
|
* ```ts
|
|
@@ -756,30 +713,14 @@ export function getAuth(app) {
|
|
|
756
713
|
if (app === null || typeof app !== 'object' || !(ADMIN_APP_TARGET in app)) {
|
|
757
714
|
throw new TypeError('pyric-admin/auth: getAuth expected a PyricAdminApp (from pyric-admin/app#initializeApp). ' +
|
|
758
715
|
'Received a value with no ADMIN_APP_TARGET brand. Pass the handle returned by ' +
|
|
759
|
-
'`initializeApp({
|
|
760
|
-
}
|
|
761
|
-
if (isSandboxAdminApp(app)) {
|
|
762
|
-
// Remote-branded sandboxes dispatch BEFORE the local arm: the local
|
|
763
|
-
// in-memory store would be a private server-side user table the
|
|
764
|
-
// browser never sees (and its `sandbox.onEvent` reset wiring throws
|
|
765
|
-
// on remote handles by design).
|
|
766
|
-
if (isRemoteSandbox(app.sandbox)) {
|
|
767
|
-
return makeRemoteAuth(app.sandbox);
|
|
768
|
-
}
|
|
769
|
-
return makeSandboxAuth(app.sandbox);
|
|
716
|
+
'`initializeApp({ sandbox })`.');
|
|
770
717
|
}
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
// module-interop and avoids top-level `await` (which would force
|
|
775
|
-
// every consumer to live in an async module graph).
|
|
776
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
777
|
-
const { getAuth: getAdminAuth } = require('firebase-admin/auth');
|
|
778
|
-
return getAdminAuth(app.adminApp);
|
|
718
|
+
assertAdminAppActive(app);
|
|
719
|
+
if (app[ADMIN_APP_TARGET] !== 'sandbox') {
|
|
720
|
+
throw new TypeError('pyric-admin/auth: getAuth expected a sandbox admin app.');
|
|
779
721
|
}
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
throw new TypeError(`pyric-admin/auth: getAuth received a PyricAdminApp with an unrecognized ADMIN_APP_TARGET value: ${String(app[ADMIN_APP_TARGET])}`);
|
|
722
|
+
return isRemoteSandbox(app.sandbox)
|
|
723
|
+
? makeRemoteAuth(app.sandbox)
|
|
724
|
+
: makeSandboxAuth(app.sandbox);
|
|
784
725
|
}
|
|
785
726
|
//# sourceMappingURL=index.js.map
|
package/dist/auth/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"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"}
|
package/dist/database/index.d.ts
CHANGED
|
@@ -1,22 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* `pyric-admin/database` —
|
|
2
|
+
* `pyric-admin/database` — sandbox mirror for the admin-shape RTDB surface.
|
|
3
3
|
*
|
|
4
4
|
* Mirrors `firebase-admin/database` for the admin-shape RTDB surface,
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* `ADMIN_APP_TARGET`):
|
|
8
|
-
*
|
|
9
|
-
* - **Prod path** (`ADMIN_APP_TARGET === 'prod'`) — `getDatabase`
|
|
10
|
-
* delegates to `firebase-admin/database`. The returned
|
|
11
|
-
* `Database` / `Reference` instances are the genuine firebase-admin
|
|
12
|
-
* objects, so every instance method (`set`, `get`, `update`,
|
|
13
|
-
* `remove`, `push`, `transaction`, `onDisconnect`, `child`, query
|
|
14
|
-
* builders, …) is present and identical in behavior to calling
|
|
15
|
-
* firebase-admin directly.
|
|
16
|
-
*
|
|
17
|
-
* - **Sandbox path** (`ADMIN_APP_TARGET === 'sandbox'`) — a minimal
|
|
18
|
-
* in-memory RTDB implemented in this file. Backs the load-bearing
|
|
19
|
-
* data-plane subset:
|
|
5
|
+
* selected by the sandbox brand on {@link PyricAdminApp}. The local path is
|
|
6
|
+
* an in-memory RTDB implementing this load-bearing data-plane subset:
|
|
20
7
|
*
|
|
21
8
|
* - `Database.ref(path?)` returns a {@link Reference}.
|
|
22
9
|
* - `Reference#set(value)` writes into the in-memory tree.
|
|
@@ -61,7 +48,7 @@
|
|
|
61
48
|
*
|
|
62
49
|
* - **Remote sandbox arm** (sandbox target whose `Sandbox` carries the
|
|
63
50
|
* `pyric/sandbox` remote brand — a Node-side handle onto the
|
|
64
|
-
* browser-hosted SharedWorker sandbox, built by
|
|
51
|
+
* browser-hosted SharedWorker sandbox, built by `@pyric/cli`'
|
|
65
52
|
* `connectRemoteSandbox()`) — every `Reference` data operation routes
|
|
66
53
|
* through the handle's worker-relay channel (`rtdb.get/set/update/
|
|
67
54
|
* remove/push` ops with `actAs: { mode: 'admin' }` pinned — firebase-
|
|
@@ -74,7 +61,7 @@
|
|
|
74
61
|
* channel's RTDB value subscription; other event types still
|
|
75
62
|
* throw "not implemented").
|
|
76
63
|
* - `update()` relays to the worker's full multi-path update
|
|
77
|
-
* (`pyric/database
|
|
64
|
+
* (`pyric/database` semantics) rather than the local
|
|
78
65
|
* arm's shallow per-key merge.
|
|
79
66
|
* - Server-side writes run through the real worker RTDB backend,
|
|
80
67
|
* so they emit `SandboxEvent`s into the unified stream (visible
|
|
@@ -83,37 +70,83 @@
|
|
|
83
70
|
* `push()` keeps its sync `.key`: the client mints the push id and
|
|
84
71
|
* sends it with the `rtdb.push` op (the worker-protocol contract).
|
|
85
72
|
*/
|
|
86
|
-
import type { Database as AdminDatabase, Reference as AdminReference, DataSnapshot as AdminDataSnapshot, ThenableReference as AdminThenableReference, Query as AdminQuery, OnDisconnect as AdminOnDisconnect, EventType as AdminEventType } from 'firebase-admin/database';
|
|
87
73
|
import { type PyricAdminApp } from '../app/index.js';
|
|
88
|
-
|
|
74
|
+
/** Mirror-owned structural types for the implemented admin RTDB surface. */
|
|
75
|
+
export type EventType = 'value' | 'child_added' | 'child_changed' | 'child_removed' | 'child_moved';
|
|
76
|
+
export interface Database {
|
|
77
|
+
ref(path?: string): Reference;
|
|
78
|
+
refFromURL(url: string): Reference;
|
|
79
|
+
goOffline(): void;
|
|
80
|
+
goOnline(): void;
|
|
81
|
+
getRules(): Promise<string>;
|
|
82
|
+
getRulesJSON(): Promise<object>;
|
|
83
|
+
setRules(source: string | object): Promise<void>;
|
|
84
|
+
readonly app: unknown;
|
|
85
|
+
}
|
|
86
|
+
export interface DataSnapshot {
|
|
87
|
+
readonly key: string | null;
|
|
88
|
+
readonly ref: Reference;
|
|
89
|
+
val(): unknown;
|
|
90
|
+
exists(): boolean;
|
|
91
|
+
child(path: string): DataSnapshot;
|
|
92
|
+
hasChild(path: string): boolean;
|
|
93
|
+
hasChildren(children?: string[]): boolean;
|
|
94
|
+
numChildren(): number;
|
|
95
|
+
forEach(action: (child: DataSnapshot) => boolean | void): boolean;
|
|
96
|
+
exportVal(): unknown;
|
|
97
|
+
getPriority(): string | number | null;
|
|
98
|
+
toJSON(): unknown;
|
|
99
|
+
}
|
|
100
|
+
export interface Reference {
|
|
101
|
+
readonly key: string | null;
|
|
102
|
+
readonly parent: Reference | null;
|
|
103
|
+
readonly root: Reference;
|
|
104
|
+
readonly database: Database;
|
|
105
|
+
readonly ref: Reference;
|
|
106
|
+
toString(): string;
|
|
107
|
+
get(): Promise<DataSnapshot>;
|
|
108
|
+
once(eventType: EventType, successCallback?: (snapshot: DataSnapshot) => unknown, failureCallback?: (error: Error) => unknown): Promise<DataSnapshot>;
|
|
109
|
+
set(value: unknown, onComplete?: (error: Error | null) => void): Promise<void>;
|
|
110
|
+
update(values: object, onComplete?: (error: Error | null) => void): Promise<void>;
|
|
111
|
+
remove(onComplete?: (error: Error | null) => void): Promise<void>;
|
|
112
|
+
push(value?: unknown, onComplete?: (error: Error | null) => void): ThenableReference;
|
|
113
|
+
child(path: string): Reference;
|
|
114
|
+
on(eventType: EventType, callback: (snapshot: DataSnapshot, previousChildKey?: string | null) => unknown, cancelCallback?: (error: Error) => unknown): unknown;
|
|
115
|
+
off(eventType?: EventType, callback?: (snapshot: DataSnapshot, previousChildKey?: string | null) => unknown): void;
|
|
116
|
+
[key: string]: unknown;
|
|
117
|
+
}
|
|
118
|
+
export type ThenableReference = Reference & PromiseLike<Reference>;
|
|
119
|
+
export type Query = Reference;
|
|
120
|
+
export interface OnDisconnect {
|
|
121
|
+
[key: string]: unknown;
|
|
122
|
+
}
|
|
123
|
+
type AdminDatabase = Database;
|
|
89
124
|
/**
|
|
90
125
|
* Returns the {@link AdminDatabase} service for the supplied app.
|
|
91
126
|
*
|
|
92
|
-
* Signature mirrors `firebase-admin/database`'s `getDatabase(app?)
|
|
93
|
-
* `getDatabaseWithUrl(url, app)` collapsed into a single function:
|
|
127
|
+
* Signature mirrors `firebase-admin/database`'s `getDatabase(app?)`.
|
|
94
128
|
*
|
|
95
129
|
* - `getDatabase()` — default database for the DEFAULT app (resolved
|
|
96
130
|
* through `pyric-admin/app`'s registry, exactly like firebase-admin's
|
|
97
131
|
* no-arg `getDatabase()`; throws `app/no-app` when no default app has
|
|
98
|
-
* been initialized). Works
|
|
99
|
-
* sandbox, and prod — since it dispatches on whatever brand the
|
|
100
|
-
* registered default app carries.
|
|
132
|
+
* been initialized). Works for local and remote sandbox apps.
|
|
101
133
|
* - `getDatabase(app)` — default database for the app.
|
|
102
|
-
* - `getDatabase(app, url)` —
|
|
103
|
-
*
|
|
104
|
-
* sandbox path ignores `url` since the sandbox has no notion of
|
|
105
|
-
* multiple database instances per project).
|
|
106
|
-
*
|
|
107
|
-
* Backend dispatch is by `ADMIN_APP_TARGET` brand on the
|
|
108
|
-
* {@link PyricAdminApp} handle:
|
|
134
|
+
* - `getDatabase(app, url)` — legacy Pyric-only compatibility form. New
|
|
135
|
+
* code should use the upstream-shaped {@link getDatabaseWithUrl} export.
|
|
109
136
|
*
|
|
110
|
-
*
|
|
111
|
-
*
|
|
112
|
-
|
|
113
|
-
|
|
137
|
+
* The sandbox brand returns the local or remote `Database` backed by the
|
|
138
|
+
* per-`Sandbox` state described in the module-level docs.
|
|
139
|
+
*/
|
|
140
|
+
export declare function getDatabase(app?: PyricAdminApp, _url?: string): AdminDatabase;
|
|
141
|
+
/**
|
|
142
|
+
* Returns the {@link AdminDatabase} service selected by an upstream-shaped
|
|
143
|
+
* database URL.
|
|
114
144
|
*
|
|
115
|
-
*
|
|
116
|
-
*
|
|
145
|
+
* This is the exact `firebase-admin/database` argument order used by the
|
|
146
|
+
* Firebase Functions SDK: `getDatabaseWithUrl(url, app?)`. The first Pyric
|
|
147
|
+
* Functions slice has one shared RTDB instance, so the URL selects that
|
|
148
|
+
* instance rather than creating a second sandbox database.
|
|
117
149
|
*/
|
|
118
|
-
export declare function
|
|
150
|
+
export declare function getDatabaseWithUrl(_url: string, app?: PyricAdminApp): AdminDatabase;
|
|
151
|
+
export {};
|
|
119
152
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/database/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/database/index.ts"],"names":[],"mappings":"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"}
|