From 9c1a0dca23559d78b51c35b988defd0fb6cb93d4 Mon Sep 17 00:00:00 2001
From: Sergei Zharinov <zharinov@users.noreply.github.com>
Date: Mon, 26 Jun 2023 00:22:39 +0300
Subject: [PATCH] refactor: Restrict `releaseTimestamp` type (#22971)

---
 .../datasource/jenkins-plugins/index.ts       | 21 +++++++++++--------
 lib/modules/datasource/types.ts               |  2 +-
 2 files changed, 13 insertions(+), 10 deletions(-)

diff --git a/lib/modules/datasource/jenkins-plugins/index.ts b/lib/modules/datasource/jenkins-plugins/index.ts
index d8f717c28d..c0cb43fdd3 100644
--- a/lib/modules/datasource/jenkins-plugins/index.ts
+++ b/lib/modules/datasource/jenkins-plugins/index.ts
@@ -70,15 +70,18 @@ export class JenkinsPluginsDatasource extends Datasource {
 
     const versions: Record<string, Release[]> = {};
     for (const name of Object.keys(plugins ?? [])) {
-      versions[name] = Object.keys(plugins[name]).map((version) => ({
-        version,
-        downloadUrl: plugins[name][version]?.url,
-        releaseTimestamp: plugins[name][version]?.buildDate
-          ? // TODO: types (#7154)
-            // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
-            new Date(`${plugins[name][version].buildDate} UTC`)
-          : null,
-      }));
+      versions[name] = Object.keys(plugins[name]).map((version) => {
+        const downloadUrl = plugins[name][version]?.url;
+        const buildDate = plugins[name][version]?.buildDate;
+        const releaseTimestamp = buildDate
+          ? new Date(`${buildDate} UTC`).toISOString()
+          : null;
+        return {
+          version,
+          downloadUrl,
+          releaseTimestamp,
+        };
+      });
     }
     return versions;
   }
diff --git a/lib/modules/datasource/types.ts b/lib/modules/datasource/types.ts
index f8023d3d92..458221f14c 100644
--- a/lib/modules/datasource/types.ts
+++ b/lib/modules/datasource/types.ts
@@ -46,7 +46,7 @@ export interface Release {
   gitRef?: string;
   isDeprecated?: boolean;
   isStable?: boolean;
-  releaseTimestamp?: any;
+  releaseTimestamp?: string | null;
   version: string;
   newDigest?: string | undefined;
   constraints?: Record<string, string[]>;
-- 
GitLab