diff --git a/.changeset/friendly-spiders-obey.md b/.changeset/friendly-spiders-obey.md new file mode 100644 index 0000000..f01323a --- /dev/null +++ b/.changeset/friendly-spiders-obey.md @@ -0,0 +1,5 @@ +--- +"@mondokit/gcp-firestore": patch +--- + +Try to resolve issue with invalid ESM import for firestore AGAIN diff --git a/packages/gcp-firestore/src/firestore/connect.ts b/packages/gcp-firestore/src/firestore/connect.ts index 9c2ac3a..79bf7fa 100644 --- a/packages/gcp-firestore/src/firestore/connect.ts +++ b/packages/gcp-firestore/src/firestore/connect.ts @@ -1,8 +1,8 @@ -import { Firestore, Settings } from "@google-cloud/firestore"; -import { FirestoreAdminClient } from "@google-cloud/firestore/types/v1/firestore_admin_client.js"; +import firestore, { Firestore, Settings } from "@google-cloud/firestore"; import { configurationProvider, createLogger, runningOnGcp } from "@mondokit/gcp-core"; import { GcpFirestoreConfiguration } from "../configuration/schema.js"; +const { v1: firestoreV1 } = firestore; export interface FirestoreConnectOptions { configuration?: GcpFirestoreConfiguration; firestoreSettings?: Settings; @@ -47,7 +47,7 @@ export const connectFirestore = (options?: FirestoreConnectOptions): Firestore = // The proper typings from google-gax can be flaky depending on which version gets resolved // It's safer to extract the types from client sdk -type AdminClientOptions = ConstructorParameters[0]; +type AdminClientOptions = ConstructorParameters[0]; export interface FirestoreAdminConnectOptions { configuration?: GcpFirestoreConfiguration; @@ -58,7 +58,7 @@ export interface FirestoreAdminConnectOptions { * Creates a Firestore Admin Client. e.g. for admin operations like imports/exports. * NOTE: This currently only works for real Firestore - i.e. not the emulator */ -export const connectFirestoreAdmin = (options?: FirestoreAdminConnectOptions): FirestoreAdminClient => { +export const connectFirestoreAdmin = (options?: FirestoreAdminConnectOptions) => { const logger = createLogger("connectFirestoreAdmin"); const config = options?.configuration || configurationProvider.get(); @@ -67,5 +67,5 @@ export const connectFirestoreAdmin = (options?: FirestoreAdminConnectOptions): F ...options?.clientOptions, }; logger.info(`Connecting Firestore Admin Client for project ${clientOptions.projectId || "(default)"}`); - return new FirestoreAdminClient(clientOptions); + return new firestoreV1.FirestoreAdminClient(clientOptions); };