in src/services/apiService.ts [373:408]
public async getOperations(apiId: string, searchQuery?: SearchQuery): Promise<Page<Operation>> {
if (!apiId) {
throw new Error(`Parameter "apiId" not specified.`);
}
let query = `${apiId}/operations`;
let top;
if (searchQuery) {
searchQuery.tags.forEach((tag, index) => {
query = Utils.addQueryParameter(query, `tags[${index}]=${tag.name}`);
});
if (searchQuery.pattern) {
const pattern = Utils.encodeURICustomized(searchQuery.pattern, Constants.reservedCharTuplesForOData);
query = Utils.addQueryParameter(query, `$filter=contains(${searchQuery.propertyName || "name"},'${pattern}')`);
}
top = searchQuery && searchQuery.take || Constants.defaultPageSize;
if (searchQuery.skip) {
query = Utils.addQueryParameter(query, `$skip=${searchQuery.skip}`);
}
}
query = Utils.addQueryParameter(query, `$top=${top || 20}`);
const result = await this.apiClient.get<Page<OperationContract>>(query, [Utils.getIsUserResourceHeader(), await this.apiClient.getPortalHeader("getOperations")]);
const page = new Page<Operation>();
page.value = result.value.map(c => new Operation(<any>c));
page.nextLink = result.nextLink;
page.count = result.count;
return page;
}