@x12i/catalox 3.7.1 → 3.7.2

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/README.md CHANGED
@@ -130,6 +130,45 @@ import { createCataloxFromEnv } from "@x12i/catalox/firebase";
130
130
  const { catalox } = createCataloxFromEnv();
131
131
  ```
132
132
 
133
+ Lifecycle-aware helper (recommended for long-lived hosts that may swap env/credentials at runtime):
134
+
135
+ ```ts
136
+ import { createCataloxHostFromEnv } from "@x12i/catalox/firebase";
137
+
138
+ // Tip: set `appName` so you can safely replace the same Admin app instance.
139
+ const host = await createCataloxHostFromEnv({
140
+ appName: "catalox-host",
141
+ replaceExistingApp: true,
142
+ });
143
+
144
+ // Use the current runtime:
145
+ await host.catalox.listAppCatalogs({ appId: "myAppId" }, { appId: "myAppId" });
146
+
147
+ // Later, if credentials/project/database identity changes:
148
+ await host.rebuild({
149
+ appName: "catalox-host",
150
+ replaceExistingApp: true,
151
+ env: {
152
+ FIREBASE_SERVICE_ACCOUNT_PATH: "/new/service-account.json",
153
+ FIREBASE_PROJECT_ID: "other-project",
154
+ FIRESTORE_DATABASE_ID: "(default)",
155
+ },
156
+ });
157
+
158
+ // Optional: on shutdown.
159
+ await host.dispose();
160
+ ```
161
+
162
+ Construction helper (avoid implicit “default app” binding; use your own Admin app):
163
+
164
+ ```ts
165
+ import { initializeApp, cert, type App } from "firebase-admin/app";
166
+ import { createCataloxFromFirebaseApp } from "@x12i/catalox/firebase";
167
+
168
+ const app: App = initializeApp({ credential: cert(serviceAccountJson) }, "my-admin-app");
169
+ const { catalox } = createCataloxFromFirebaseApp({ app, databaseId: "(default)" });
170
+ ```
171
+
133
172
  ### Google Cloud Storage (optional export / import / compare)
134
173
 
135
174
  When you use **`catalox firestore export-gcs`**, **`import-gcs`**, **`compare-gcs`**, **`firestore backup --mode gcs`**, or the matching **`Catalox`** methods, the runtime needs a GCS bucket and a credential that can **read/write objects** there (typically the same service account as Firestore, with **Storage** roles on that bucket). GCS **backup** uses **`@x12i/helpers/gcs`** (ADC); export/import/compare still use **`@google-cloud/storage`** directly. See [`docs/firestore-gcs-export.md`](docs/firestore-gcs-export.md), [`docs/backup.md`](docs/backup.md), and [`docs/environment.md`](docs/environment.md).
@@ -20,6 +20,19 @@ export type FirebaseBootstrapOptions = {
20
20
  * Prefer setting this when your process may initialize multiple Admin apps.
21
21
  */
22
22
  appName?: string;
23
+ /**
24
+ * When `true`, and an Admin app with the selected name already exists, delete it before creating a new one.
25
+ *
26
+ * This is useful for long-lived hosts that may need to swap credentials/project/database identity at runtime
27
+ * (e.g. dev server reload, multi-tenant playgrounds, test harnesses).
28
+ *
29
+ * Notes:
30
+ * - If `appName` is omitted, the target name is the Admin SDK default (`[DEFAULT]`).
31
+ * - Only the Admin app is disposed; higher-level singletons in your host (if any) are your responsibility.
32
+ *
33
+ * @default false
34
+ */
35
+ replaceExistingApp?: boolean;
23
36
  /**
24
37
  * Optional Firestore database id (named database). If omitted, uses `(default)`.
25
38
  * When set, this is passed to `getFirestore(app, databaseId)`.
@@ -65,6 +78,7 @@ export type CreateFirebaseAdminAppFromEnvResult = {
65
78
  credentialSource: FirebaseAdminCredentialSource;
66
79
  };
67
80
  export declare function createFirebaseAdminAppFromEnv(options?: FirebaseBootstrapOptions): CreateFirebaseAdminAppFromEnvResult;
81
+ export declare function createFirebaseAdminAppFromEnvAsync(options?: FirebaseBootstrapOptions): Promise<CreateFirebaseAdminAppFromEnvResult>;
68
82
  export type GetFirestoreFromEnvResult = {
69
83
  app: App;
70
84
  firestore: Firestore;
@@ -72,6 +86,7 @@ export type GetFirestoreFromEnvResult = {
72
86
  databaseId?: string;
73
87
  };
74
88
  export declare function getFirestoreFromEnv(options?: FirebaseBootstrapOptions): GetFirestoreFromEnvResult;
89
+ export declare function getFirestoreFromEnvAsync(options?: FirebaseBootstrapOptions): Promise<GetFirestoreFromEnvResult>;
75
90
  export type CreateCataloxFromEnvOptions = FirebaseBootstrapOptions & {
76
91
  /**
77
92
  * Optional Catalox runtime overrides. `firestore`/`firebaseApp` are always set from env bootstrap.
@@ -92,4 +107,51 @@ export type CreateCataloxFromEnvResult = {
92
107
  databaseId?: string;
93
108
  };
94
109
  export declare function createCataloxFromEnv(options?: CreateCataloxFromEnvOptions): CreateCataloxFromEnvResult;
110
+ export type CreateCataloxFromFirebaseAppOptions = {
111
+ /**
112
+ * An already-initialized Firebase Admin app. This is the preferred way to avoid implicit binding
113
+ * to whatever the Admin SDK considers “default” in a given host process.
114
+ */
115
+ app: App;
116
+ /**
117
+ * Optional explicit Firestore instance. When omitted, uses `getFirestore(app, databaseId?)`.
118
+ */
119
+ firestore?: Firestore;
120
+ /**
121
+ * Optional Firestore database id (named database). When set, used for `getFirestore(app, databaseId)`.
122
+ */
123
+ databaseId?: string;
124
+ /**
125
+ * Optional Catalox runtime overrides.
126
+ */
127
+ catalox?: Omit<CataloxRuntimeConfig, "firestore" | "firebaseApp">;
128
+ /**
129
+ * Optional explicit Mongo URI override.
130
+ */
131
+ mongoUri?: string;
132
+ };
133
+ export type CreateCataloxFromFirebaseAppResult = {
134
+ catalox: Catalox;
135
+ app: App;
136
+ firestore: Firestore;
137
+ databaseId?: string;
138
+ };
139
+ export declare function createCataloxFromFirebaseApp(options: CreateCataloxFromFirebaseAppOptions): CreateCataloxFromFirebaseAppResult;
140
+ export type CataloxFirebaseHost = {
141
+ catalox: Catalox;
142
+ app: App;
143
+ firestore: Firestore;
144
+ credentialSource: FirebaseAdminCredentialSource;
145
+ databaseId?: string;
146
+ dispose: () => Promise<void>;
147
+ rebuild: (options?: CreateCataloxFromEnvOptions) => Promise<void>;
148
+ };
149
+ /**
150
+ * Lifecycle-aware bootstrap for long-lived hosts.
151
+ *
152
+ * - Provides a supported `dispose()` for the underlying Admin app.
153
+ * - Provides `rebuild()` that deletes/recreates the Admin app + Firestore + Catalox in one place.
154
+ * - Avoids every embedder reimplementing `deleteApp(...)` + singleton invalidation.
155
+ */
156
+ export declare function createCataloxHostFromEnv(options?: CreateCataloxFromEnvOptions): Promise<CataloxFirebaseHost>;
95
157
  //# sourceMappingURL=bootstrap.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../../src/firebase/bootstrap.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAuB,KAAK,GAAG,EAAE,MAAM,oBAAoB,CAAC;AACvF,OAAO,EAAgB,KAAK,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAExE,OAAO,EAAiB,KAAK,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACxF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAErD,MAAM,MAAM,6BAA6B,GAAG,sBAAsB,GAAG,wBAAwB,GAAG,KAAK,CAAC;AAEtG,MAAM,MAAM,wBAAwB,GAAG;IACrC,6BAA6B,CAAC,EAAE,MAAM,CAAC;IACvC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,6BAA6B,CAAC,EAAE,MAAM,CAAC;IACvC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC;;OAEG;IACH,GAAG,CAAC,EAAE,wBAAwB,CAAC;IAC/B;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;OAEG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,+BAA+B,GAAG;IAC5C,MAAM,EAAE,6BAA6B,CAAC;CACvC,GAAG,CACA;IAAE,MAAM,EAAE,KAAK,CAAC;IAAC,UAAU,EAAE,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAA;CAAE,GACpE;IAAE,MAAM,EAAE,sBAAsB,CAAC;IAAC,kBAAkB,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,OAAO,CAAA;CAAE,GAC3F;IAAE,MAAM,EAAE,wBAAwB,CAAC;IAAC,kBAAkB,EAAE,OAAO,CAAA;CAAE,CACpE,CAAC;AAkBF;;;;;;;GAOG;AACH,wBAAgB,qCAAqC,CACnD,OAAO,CAAC,EAAE,wBAAwB,GACjC,+BAA+B,CAgBjC;AAED,MAAM,MAAM,mCAAmC,GAAG;IAChD,GAAG,EAAE,GAAG,CAAC;IACT,gBAAgB,EAAE,6BAA6B,CAAC;CACjD,CAAC;AAEF,wBAAgB,6BAA6B,CAAC,OAAO,CAAC,EAAE,wBAAwB,GAAG,mCAAmC,CAYrH;AAED,MAAM,MAAM,yBAAyB,GAAG;IACtC,GAAG,EAAE,GAAG,CAAC;IACT,SAAS,EAAE,SAAS,CAAC;IACrB,gBAAgB,EAAE,6BAA6B,CAAC;IAChD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,wBAAgB,mBAAmB,CAAC,OAAO,CAAC,EAAE,wBAAwB,GAAG,yBAAyB,CAQjG;AAED,MAAM,MAAM,2BAA2B,GAAG,wBAAwB,GAAG;IACnE;;;;OAIG;IACH,OAAO,CAAC,EAAE,IAAI,CAAC,oBAAoB,EAAE,WAAW,GAAG,aAAa,CAAC,CAAC;IAClE;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,GAAG,CAAC;IACT,SAAS,EAAE,SAAS,CAAC;IACrB,gBAAgB,EAAE,6BAA6B,CAAC;IAChD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,wBAAgB,oBAAoB,CAAC,OAAO,CAAC,EAAE,2BAA2B,GAAG,0BAA0B,CAatG"}
1
+ {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../../src/firebase/bootstrap.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { readFileSync } from "node:fs";
2
- import { applicationDefault, cert, initializeApp } from "firebase-admin/app";
2
+ import { applicationDefault, cert, deleteApp, getApps, initializeApp } from "firebase-admin/app";
3
3
  import { getFirestore } from "firebase-admin/firestore";
4
4
  import { createCatalox } from "../catalox/create-catalox.js";
5
5
  function resolvedEnv(opts) {
@@ -47,6 +47,29 @@ export function createFirebaseAdminAppFromEnv(options) {
47
47
  const projectId = String(options?.projectId ?? env.FIREBASE_PROJECT_ID ?? "").trim() || undefined;
48
48
  const resolved = resolveFirebaseAdminCredentialFromEnv(options);
49
49
  const credential = resolved.source === "adc" ? resolved.credential : cert(resolved.serviceAccountJson);
50
+ if (options?.replaceExistingApp) {
51
+ const targetName = options.appName ?? "[DEFAULT]";
52
+ const existing = getApps().find((a) => a.name === targetName);
53
+ if (existing) {
54
+ throw new Error("createFirebaseAdminAppFromEnv(replaceExistingApp: true) requires async disposal; use createFirebaseAdminAppFromEnvAsync or createCataloxHostFromEnv.");
55
+ }
56
+ }
57
+ const app = options?.appName
58
+ ? initializeApp({ credential, ...(projectId ? { projectId } : {}) }, options.appName)
59
+ : initializeApp({ credential, ...(projectId ? { projectId } : {}) });
60
+ return { app, credentialSource: resolved.source };
61
+ }
62
+ export async function createFirebaseAdminAppFromEnvAsync(options) {
63
+ const env = resolvedEnv(options);
64
+ const projectId = String(options?.projectId ?? env.FIREBASE_PROJECT_ID ?? "").trim() || undefined;
65
+ const resolved = resolveFirebaseAdminCredentialFromEnv(options);
66
+ const credential = resolved.source === "adc" ? resolved.credential : cert(resolved.serviceAccountJson);
67
+ if (options?.replaceExistingApp) {
68
+ const targetName = options.appName ?? "[DEFAULT]";
69
+ const existing = getApps().find((a) => a.name === targetName);
70
+ if (existing)
71
+ await deleteApp(existing);
72
+ }
50
73
  const app = options?.appName
51
74
  ? initializeApp({ credential, ...(projectId ? { projectId } : {}) }, options.appName)
52
75
  : initializeApp({ credential, ...(projectId ? { projectId } : {}) });
@@ -59,6 +82,13 @@ export function getFirestoreFromEnv(options) {
59
82
  const firestore = databaseId ? getFirestore(app, databaseId) : getFirestore(app);
60
83
  return { app, firestore, credentialSource, ...(databaseId ? { databaseId } : {}) };
61
84
  }
85
+ export async function getFirestoreFromEnvAsync(options) {
86
+ const env = resolvedEnv(options);
87
+ const databaseId = String(options?.databaseId ?? env.FIRESTORE_DATABASE_ID ?? "").trim() || undefined;
88
+ const { app, credentialSource } = await createFirebaseAdminAppFromEnvAsync(options);
89
+ const firestore = databaseId ? getFirestore(app, databaseId) : getFirestore(app);
90
+ return { app, firestore, credentialSource, ...(databaseId ? { databaseId } : {}) };
91
+ }
62
92
  export function createCataloxFromEnv(options) {
63
93
  const env = resolvedEnv(options);
64
94
  const { app, firestore, credentialSource, databaseId } = getFirestoreFromEnv(options);
@@ -71,4 +101,64 @@ export function createCataloxFromEnv(options) {
71
101
  });
72
102
  return { catalox, app, firestore, credentialSource, ...(databaseId ? { databaseId } : {}) };
73
103
  }
104
+ export function createCataloxFromFirebaseApp(options) {
105
+ const firestore = options.firestore ??
106
+ (options.databaseId ? getFirestore(options.app, options.databaseId) : getFirestore(options.app));
107
+ const catalox = createCatalox({
108
+ firestore,
109
+ firebaseApp: options.app,
110
+ ...(options.mongoUri ? { mongoUri: options.mongoUri } : {}),
111
+ ...(options.catalox ? options.catalox : {}),
112
+ });
113
+ return { catalox, app: options.app, firestore, ...(options.databaseId ? { databaseId: options.databaseId } : {}) };
114
+ }
115
+ /**
116
+ * Lifecycle-aware bootstrap for long-lived hosts.
117
+ *
118
+ * - Provides a supported `dispose()` for the underlying Admin app.
119
+ * - Provides `rebuild()` that deletes/recreates the Admin app + Firestore + Catalox in one place.
120
+ * - Avoids every embedder reimplementing `deleteApp(...)` + singleton invalidation.
121
+ */
122
+ export async function createCataloxHostFromEnv(options) {
123
+ // We always go through the async path so `replaceExistingApp` can be honored safely.
124
+ const env = resolvedEnv(options);
125
+ const { app, firestore, credentialSource, databaseId } = await getFirestoreFromEnvAsync(options);
126
+ const mongoUri = String(options?.mongoUri ?? env.CATALOX_MONGO_URI ?? "").trim() || undefined;
127
+ const catalox = createCatalox({
128
+ firestore,
129
+ firebaseApp: app,
130
+ ...(mongoUri ? { mongoUri } : {}),
131
+ ...(options?.catalox ? options.catalox : {}),
132
+ });
133
+ const host = {
134
+ catalox,
135
+ app,
136
+ firestore,
137
+ credentialSource,
138
+ ...(databaseId ? { databaseId } : {}),
139
+ dispose: async () => {
140
+ await deleteApp(host.app);
141
+ },
142
+ rebuild: async (next) => {
143
+ await host.dispose();
144
+ const e = resolvedEnv(next);
145
+ const res = await getFirestoreFromEnvAsync(next);
146
+ const nextMongoUri = String(next?.mongoUri ?? e.CATALOX_MONGO_URI ?? "").trim() || undefined;
147
+ const nextCatalox = createCatalox({
148
+ firestore: res.firestore,
149
+ firebaseApp: res.app,
150
+ ...(nextMongoUri ? { mongoUri: nextMongoUri } : {}),
151
+ ...(next?.catalox ? next.catalox : {}),
152
+ });
153
+ host.app = res.app;
154
+ host.firestore = res.firestore;
155
+ host.credentialSource = res.credentialSource;
156
+ // `databaseId` is optional; keep property stable.
157
+ if (res.databaseId)
158
+ host.databaseId = res.databaseId;
159
+ host.catalox = nextCatalox;
160
+ },
161
+ };
162
+ return host;
163
+ }
74
164
  //# sourceMappingURL=bootstrap.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../../src/firebase/bootstrap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../../src/firebase/bootstrap.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@x12i/catalox",
3
- "version": "3.7.1",
3
+ "version": "3.7.2",
4
4
  "description": "Platform infrastructure for reusable, interoperable catalogs across apps and data sources.",
5
5
  "license": "MIT",
6
6
  "private": false,