Change the Checks fetch API to send a data object

... instead of individual parameters. We were asked to add the `repo`,
but more parameters may be added later. So it is easier to make the
breaking change now, and later have an easier time to add new
properties.

Change-Id: I866c7a210b1e0bd50d3fa68ac8d0d338818f4f6c
diff --git a/polygerrit-ui/app/api/checks.ts b/polygerrit-ui/app/api/checks.ts
index 361b8e0..799d1f7 100644
--- a/polygerrit-ui/app/api/checks.ts
+++ b/polygerrit-ui/app/api/checks.ts
@@ -43,6 +43,12 @@
   fetchPollingIntervalSeconds: number;
 }
 
+export interface ChangeData {
+  changeNumber: number;
+  patchsetNumber: number;
+  repo: string;
+}
+
 export interface ChecksProvider {
   /**
    * Gerrit calls this method when ...
@@ -51,7 +57,7 @@
    * - ... while the tab is visible in a regular polling interval, see
    *       ChecksApiConfig.
    */
-  fetch(change: number, patchset: number): Promise<FetchResponse>;
+  fetch(change: ChangeData): Promise<FetchResponse>;
 }
 
 export interface FetchResponse {
diff --git a/polygerrit-ui/app/services/checks/checks-service.ts b/polygerrit-ui/app/services/checks/checks-service.ts
index 6b106ad..2e63f98 100644
--- a/polygerrit-ui/app/services/checks/checks-service.ts
+++ b/polygerrit-ui/app/services/checks/checks-service.ts
@@ -23,6 +23,7 @@
   withLatestFrom,
 } from 'rxjs/operators';
 import {
+  ChangeData,
   ChecksApiConfig,
   ChecksProvider,
   FetchResponse,
@@ -77,9 +78,12 @@
                 runs: [],
               });
             }
-            return from(
-              this.providers[pluginName].fetch(change._number, patchNum)
-            );
+            const data: ChangeData = {
+              changeNumber: change._number,
+              patchsetNumber: patchNum,
+              repo: change.project,
+            };
+            return from(this.providers[pluginName].fetch(data));
           }
         ),
         tap(response => {