From ebbb92136ef834a8d1b923ed4a4e8c0a11505924 Mon Sep 17 00:00:00 2001
From: angrykoala <angrykoala@outlook.es>
Date: Fri, 24 Jan 2025 12:16:07 +0000
Subject: [PATCH] Fix for CalVer

---
 .changeset/serious-paws-hunt.md                        | 5 +++++
 packages/graphql/src/classes/Neo4jDatabaseInfo.test.ts | 5 +++++
 packages/graphql/src/classes/Neo4jDatabaseInfo.ts      | 2 ++
 3 files changed, 12 insertions(+)
 create mode 100644 .changeset/serious-paws-hunt.md

diff --git a/.changeset/serious-paws-hunt.md b/.changeset/serious-paws-hunt.md
new file mode 100644
index 0000000000..8ea7aa189a
--- /dev/null
+++ b/.changeset/serious-paws-hunt.md
@@ -0,0 +1,5 @@
+---
+"@neo4j/graphql": patch
+---
+
+Add support for CalVer editions of neo4j
diff --git a/packages/graphql/src/classes/Neo4jDatabaseInfo.test.ts b/packages/graphql/src/classes/Neo4jDatabaseInfo.test.ts
index b58dde9e5a..ceb291c151 100644
--- a/packages/graphql/src/classes/Neo4jDatabaseInfo.test.ts
+++ b/packages/graphql/src/classes/Neo4jDatabaseInfo.test.ts
@@ -29,4 +29,9 @@ describe("Neo4jDatabaseInfo", () => {
             return new Neo4jDatabaseInfo("this_seems_not_valid", "enterprise");
         }).toThrow();
     });
+
+    test("should accept CalVar", () => {
+        const dbInfo = new Neo4jDatabaseInfo("2025.01.0-aura", "enterprise");
+        expect(dbInfo).toBeInstanceOf(Neo4jDatabaseInfo);
+    });
 });
diff --git a/packages/graphql/src/classes/Neo4jDatabaseInfo.ts b/packages/graphql/src/classes/Neo4jDatabaseInfo.ts
index 70e2924cd5..9b5d2dec6a 100644
--- a/packages/graphql/src/classes/Neo4jDatabaseInfo.ts
+++ b/packages/graphql/src/classes/Neo4jDatabaseInfo.ts
@@ -29,6 +29,8 @@ export class Neo4jDatabaseInfo {
     public edition: Neo4jEdition | undefined;
 
     constructor(version: string, edition?: Neo4jEdition) {
+        // Quick hack to support CalVar
+        version = version.replace(/\.0([0-9]+)/, ".$1");
         this.version = this.toSemVer(version);
         this.rawVersion = version;
         this.edition = edition;