From 3103e035035f88b0151575bc65ec218b47496ce0 Mon Sep 17 00:00:00 2001
From: RahulGautamSingh <rahultesnik@gmail.com>
Date: Fri, 28 Feb 2025 02:59:13 +0530
Subject: [PATCH] refactor: use jsonata manager for biomeVersions preset
 (#34372)

---
 lib/config/presets/internal/custom-managers.spec.ts | 11 +++++++++--
 lib/config/presets/internal/custom-managers.ts      |  7 +++----
 2 files changed, 12 insertions(+), 6 deletions(-)

diff --git a/lib/config/presets/internal/custom-managers.spec.ts b/lib/config/presets/internal/custom-managers.spec.ts
index 7708620b11..e6a47c9f95 100644
--- a/lib/config/presets/internal/custom-managers.spec.ts
+++ b/lib/config/presets/internal/custom-managers.spec.ts
@@ -1,6 +1,6 @@
 import { codeBlock } from 'common-tags';
 import { regexMatches } from '../../../../test/util';
-import { extractPackageFile } from '../../../modules/manager/custom/regex';
+import { extractPackageFile } from '../../../modules/manager';
 import { presets } from './custom-managers';
 
 describe('config/presets/internal/custom-managers', () => {
@@ -15,6 +15,7 @@ describe('config/presets/internal/custom-managers', () => {
       `;
 
       const res = await extractPackageFile(
+        'jsonata',
         fileContent,
         'biome.json',
         customManager!,
@@ -25,7 +26,6 @@ describe('config/presets/internal/custom-managers', () => {
           currentValue: '1.7.3',
           datasource: 'npm',
           depName: '@biomejs/biome',
-          replaceString: '"https://biomejs.dev/schemas/1.7.3/schema.json"',
         },
       ]);
     });
@@ -79,6 +79,7 @@ describe('config/presets/internal/custom-managers', () => {
       `;
 
       const res = await extractPackageFile(
+        'regex',
         fileContent,
         'bitbucket-pipelines.yml',
         customManager!,
@@ -194,6 +195,7 @@ describe('config/presets/internal/custom-managers', () => {
       `;
 
       const res = await extractPackageFile(
+        'regex',
         fileContent,
         'Dockerfile',
         customManager!,
@@ -302,6 +304,7 @@ describe('config/presets/internal/custom-managers', () => {
       `;
 
       const res = await extractPackageFile(
+        'regex',
         fileContent,
         'github-workflow.yaml',
         customManager!,
@@ -401,6 +404,7 @@ describe('config/presets/internal/custom-managers', () => {
       `;
 
       const res = await extractPackageFile(
+        'regex',
         fileContent,
         'gitlab-ci.yml',
         customManager!,
@@ -471,6 +475,7 @@ describe('config/presets/internal/custom-managers', () => {
       `;
 
       const res = await extractPackageFile(
+        'regex',
         fileContent,
         'Chart.yaml',
         customManager!,
@@ -533,6 +538,7 @@ describe('config/presets/internal/custom-managers', () => {
       `;
 
       const res = await extractPackageFile(
+        'regex',
         fileContent,
         'gitlab-ci.yml',
         customManager!,
@@ -603,6 +609,7 @@ describe('config/presets/internal/custom-managers', () => {
       `;
 
       const res = await extractPackageFile(
+        'regex',
         fileContent,
         'pom.xml',
         customManager!,
diff --git a/lib/config/presets/internal/custom-managers.ts b/lib/config/presets/internal/custom-managers.ts
index 63ceefda71..c03f04d1c1 100644
--- a/lib/config/presets/internal/custom-managers.ts
+++ b/lib/config/presets/internal/custom-managers.ts
@@ -6,13 +6,12 @@ export const presets: Record<string, Preset> = {
   biomeVersions: {
     customManagers: [
       {
-        customType: 'regex',
+        customType: 'jsonata',
         datasourceTemplate: 'npm',
         depNameTemplate: '@biomejs/biome',
+        fileFormat: 'json',
         fileMatch: ['(^|/)biome.jsonc?$'],
-        matchStrings: [
-          '"https://biomejs.dev/schemas/(?<currentValue>[^"]+)/schema.json"',
-        ],
+        matchStrings: ['{"currentValue": $split($."$schema",("/"))[-2]}'],
       },
     ],
     description:
-- 
GitLab