diff --git a/packages/react-utils/src/helpers/dataLoaders.ts b/packages/react-utils/src/helpers/dataLoaders.ts index c191d76cc..44dd6cb77 100644 --- a/packages/react-utils/src/helpers/dataLoaders.ts +++ b/packages/react-utils/src/helpers/dataLoaders.ts @@ -116,13 +116,16 @@ export class FHIRServiceClass { const accessToken = await OpenSRPService.processAcessToken(this.accessTokenOrCallBack); const queryStr = this.buildQueryParams(params); const serve = FHIR.client(this.buildState(accessToken)); - return serve.request(queryStr); + return serve.request({ url: queryStr, headers: { 'cache-control': 'no-cache' } }); } public async read(id: string) { const accessToken = await OpenSRPService.processAcessToken(this.accessTokenOrCallBack); const serve = FHIR.client(this.buildState(accessToken)); - return serve.request(`${this.resourceType}/${id}`); + return serve.request({ + url: `${this.resourceType}/${id}`, + headers: { 'cache-control': 'no-cache' }, + }); } public async delete(id: string) { diff --git a/packages/react-utils/src/helpers/tests/dataLoaders.test.ts b/packages/react-utils/src/helpers/tests/dataLoaders.test.ts index 1736667e4..022165ba0 100644 --- a/packages/react-utils/src/helpers/tests/dataLoaders.test.ts +++ b/packages/react-utils/src/helpers/tests/dataLoaders.test.ts @@ -219,7 +219,16 @@ describe('dataloaders/FHIRService', () => { const fhir = new FHIRServiceClass('https://test.fhir.org', 'CareTeam'); const result = await fhir.list(); await flushPromises(); - expect(requestMock.mock.calls).toEqual([['CareTeam']]); + expect(requestMock.mock.calls).toEqual([ + [ + { + headers: { + 'cache-control': 'no-cache', + }, + url: 'CareTeam', + }, + ], + ]); expect(result).toEqual(fixtures.careTeams); // make sure every item of fhirlist returns the CareTeam expect(result.entry.every((e) => e.resource.resourceType === 'CareTeam')).toBeTruthy(); @@ -239,7 +248,16 @@ describe('dataloaders/FHIRService', () => { // without url params const result = await fhir.list({ _count: '100' }); await flushPromises(); - expect(requestMock.mock.calls).toEqual([['CareTeam/_search?_count=100']]); + expect(requestMock.mock.calls).toEqual([ + [ + { + headers: { + 'cache-control': 'no-cache', + }, + url: 'CareTeam/_search?_count=100', + }, + ], + ]); expect(result).toEqual(fixtures.careTeams); // make sure every item of fhirlist returns the CareTeam expect(result.entry.every((e) => e.resource.resourceType === 'CareTeam')).toBeTruthy();