From 53f78f303464b5eaebfb756a93955c30b9c5ce92 Mon Sep 17 00:00:00 2001 From: Arnau Sanchez Date: Fri, 13 Sep 2024 11:31:02 +0200 Subject: [PATCH] fix: Add fields inference to new Tracker entities --- src/api/trackerEnrollments.ts | 8 ++++---- src/api/trackerEvents.ts | 10 +++++----- src/api/trackerTrackedEntities.ts | 10 +++++----- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/src/api/trackerEnrollments.ts b/src/api/trackerEnrollments.ts index 152ee39..a3c1afd 100644 --- a/src/api/trackerEnrollments.ts +++ b/src/api/trackerEnrollments.ts @@ -10,8 +10,8 @@ export class TrackerEnrollments { get( params: TrackerEnrollmentsParams - ): D2ApiResponse { - return this.api.get("/tracker/enrollments", { + ): D2ApiResponse> { + return this.api.get>("/tracker/enrollments", { ..._.omit(params, ["fields"]), fields: getFieldsAsString(params.fields), }); @@ -88,10 +88,10 @@ type TrackerEnrollmentsParamsBase = { type SemiColonDelimitedListOfUid = string; type CommaDelimitedListOfUid = string; -export interface TrackerEnrollmentsResponse { +export interface TrackerEnrollmentsResponse { page: number; pageSize: number; - instances: D2TrackerEnrollment[]; + instances: SelectedPick; total?: number; // Only if requested with totalPages=true } diff --git a/src/api/trackerEvents.ts b/src/api/trackerEvents.ts index d9d3e6e..29975bf 100644 --- a/src/api/trackerEvents.ts +++ b/src/api/trackerEvents.ts @@ -1,5 +1,5 @@ import { D2ApiGeneric } from "./d2Api"; -import { Id, Selector, D2ApiResponse } from "./base"; +import { Id, Selector, D2ApiResponse, SelectedPick } from "./base"; import { Preset, FieldPresets, D2Geometry } from "../schemas"; import { getFieldsAsString } from "./common"; import _ from "lodash"; @@ -9,8 +9,8 @@ export class TrackerEvents { get( params: EventsParams - ): D2ApiResponse { - return this.api.get("/tracker/events", { + ): D2ApiResponse> { + return this.api.get>("/tracker/events", { ..._.omit(params, ["fields"]), fields: getFieldsAsString(params.fields), }); @@ -151,10 +151,10 @@ export interface DataValue { providedElsewhere?: boolean; } -export interface TrackerEventsResponse { +export interface TrackerEventsResponse { page: number; pageSize: number; - instances: D2TrackerEvent[]; + instances: SelectedPick[]; total?: number; // Only if requested with totalPages=true } diff --git a/src/api/trackerTrackedEntities.ts b/src/api/trackerTrackedEntities.ts index 47bb7b2..8bf118e 100644 --- a/src/api/trackerTrackedEntities.ts +++ b/src/api/trackerTrackedEntities.ts @@ -1,6 +1,6 @@ import _ from "lodash"; import { D2Geometry, FieldPresets, Preset } from "../schemas"; -import { Id, Selector } from "./base"; +import { Id, Selector, SelectedPick } from "./base"; import { D2ApiResponse, getFieldsAsString } from "./common"; import { D2ApiGeneric } from "./d2Api"; import { D2TrackerEnrollment } from "./trackerEnrollments"; @@ -10,8 +10,8 @@ export class TrackedEntities { get( params: TrackerTrackedEntitiesParams - ): D2ApiResponse { - return this.d2Api.get("/tracker/trackedEntities", { + ): D2ApiResponse> { + return this.d2Api.get>("/tracker/trackedEntities", { ..._.omit(params, ["fields"]), fields: getFieldsAsString(params.fields), }); @@ -131,10 +131,10 @@ export type TrackedEntitiesParamsBase = { potentialDuplicate: boolean; }; -export interface TrackedEntitiesGetResponse { +export interface TrackedEntitiesGetResponse { page: number; pageSize: number; - instances: D2TrackerTrackedEntity[]; + instances: SelectedPick[]; total?: number; // Only if requested with totalPages=true }