diff --git a/tsp-typescript-client/src/models/query/query-helper.ts b/tsp-typescript-client/src/models/query/query-helper.ts index 8a1bfaa..2257c7e 100644 --- a/tsp-typescript-client/src/models/query/query-helper.ts +++ b/tsp-typescript-client/src/models/query/query-helper.ts @@ -59,6 +59,14 @@ export class QueryHelper { return new Query({ ...timeObj, ...additionalProperties }); } + public static selectionQuery(items: number[], additionalProperties?: { [key: string]: any }): Query { + const selectionObj = { + [this.REQUESTED_ITEMS_KEY]: items + }; + + return new Query({ ...selectionObj, ...additionalProperties }); + } + /** * Build a simple time query with selected items * @param requestedTimes Array of requested times diff --git a/tsp-typescript-client/src/protocol/http-tsp-client.ts b/tsp-typescript-client/src/protocol/http-tsp-client.ts index 3233432..ef3a8a0 100644 --- a/tsp-typescript-client/src/protocol/http-tsp-client.ts +++ b/tsp-typescript-client/src/protocol/http-tsp-client.ts @@ -301,6 +301,28 @@ export class HttpTspClient implements ITspClient { ); } + /** + * Fetch Time Graph tree, Model extends TimeGraphEntry + * @param expUUID Experiment UUID + * @param outputID Output ID + * @param parameters Query object + * @returns Time graph entry response with entries of type TimeGraphEntry + */ + public async fetchTimeGraphTreeContext( + expUUID: string, + outputID: string, + parameters: Query + ): Promise>> { + const url = + this.baseUrl + + "/experiments/" + + expUUID + + "/outputs/timeGraph/" + + outputID + + "/tree:context"; + return RestClient.post(url, parameters); + } + /** * Fetch Time Graph states. Model extends TimeGraphModel * @param expUUID Experiment UUID diff --git a/tsp-typescript-client/src/protocol/tsp-client.ts b/tsp-typescript-client/src/protocol/tsp-client.ts index e35900f..997609a 100644 --- a/tsp-typescript-client/src/protocol/tsp-client.ts +++ b/tsp-typescript-client/src/protocol/tsp-client.ts @@ -179,6 +179,19 @@ export interface ITspClient { parameters: Query ): Promise>>>; + /** + * Fetch Time Graph tree, Model extends TimeGraphEntry + * @param expUUID Experiment UUID + * @param outputID Output ID + * @param parameters Query object + * @returns Time graph entry response with entries of type TimeGraphEntry + */ + fetchTimeGraphTreeContext( + expUUID: string, + outputID: string, + parameters: Query + ): Promise>>; + /** * Fetch Time Graph states. Model extends TimeGraphModel * @param expUUID Experiment UUID