aidbox-react 1.11.0 → 1.11.2-0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.js +44 -59
- package/dist/cjs/services/fhir.d.ts +5 -5
- package/dist/cjs/utils/fhir.d.ts +1 -2
- package/dist/esm/index.js +44 -58
- package/dist/esm/services/fhir.d.ts +5 -5
- package/dist/esm/utils/fhir.d.ts +1 -2
- package/dist/index.d.ts +7 -8
- package/lib/services/fhir.d.ts +5 -5
- package/lib/services/fhir.d.ts.map +1 -1
- package/lib/services/fhir.js +20 -23
- package/lib/services/fhir.js.map +1 -1
- package/lib/utils/fhir.d.ts +1 -2
- package/lib/utils/fhir.d.ts.map +1 -1
- package/lib/utils/fhir.js +31 -42
- package/lib/utils/fhir.js.map +1 -1
- package/package.json +1 -1
- package/src/services/fhir.ts +17 -20
- package/src/utils/fhir.ts +33 -41
package/dist/cjs/index.js
CHANGED
|
@@ -150,54 +150,44 @@ function resolveServiceMap(promiseMap) {
|
|
|
150
150
|
});
|
|
151
151
|
}
|
|
152
152
|
|
|
153
|
-
function isEmpty(data) {
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
153
|
+
// function isEmpty(data: any): boolean {
|
|
154
|
+
// if (Array.isArray(data)) {
|
|
155
|
+
// return data.length === 0;
|
|
156
|
+
// }
|
|
157
|
+
// if (typeof data === 'object' && data !== null) {
|
|
158
|
+
// return Object.keys(data).length === 0;
|
|
159
|
+
// }
|
|
160
|
+
// return false;
|
|
161
|
+
// }
|
|
162
|
+
function isEmptyObject(data) {
|
|
163
|
+
return typeof data === 'object' && !Array.isArray(data) && data !== null && Object.keys(data).length === 0;
|
|
161
164
|
}
|
|
162
|
-
function
|
|
165
|
+
function cleanObject(data, topLevel = true) {
|
|
163
166
|
if (Array.isArray(data)) {
|
|
164
|
-
|
|
165
|
-
|
|
167
|
+
const cleanedArray = data.map((item) => {
|
|
168
|
+
const cleaned = cleanObject(item, false);
|
|
169
|
+
//NOTE: convert undefined → null
|
|
170
|
+
return cleaned === undefined ? null : cleaned;
|
|
166
171
|
});
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
for (const [key, value] of Object.entries(data)) {
|
|
171
|
-
const cleanedValue = cleanEmptyValues(value);
|
|
172
|
-
if (!isEmpty(cleanedValue)) {
|
|
173
|
-
cleaned[key] = cleanedValue;
|
|
174
|
-
}
|
|
172
|
+
//NOTE: Trim trailing nulls
|
|
173
|
+
while (cleanedArray.length > 0 && cleanedArray[cleanedArray.length - 1] === null) {
|
|
174
|
+
cleanedArray.pop();
|
|
175
175
|
}
|
|
176
|
-
return
|
|
177
|
-
}
|
|
178
|
-
if (typeof data === 'undefined') {
|
|
179
|
-
return null;
|
|
180
|
-
}
|
|
181
|
-
return data;
|
|
182
|
-
}
|
|
183
|
-
function isNull(value) {
|
|
184
|
-
return value === null || value === undefined;
|
|
185
|
-
}
|
|
186
|
-
function removeNullsFromDicts(data) {
|
|
187
|
-
if (Array.isArray(data)) {
|
|
188
|
-
return data.map(removeNullsFromDicts);
|
|
176
|
+
return cleanedArray.length > 0 ? cleanedArray : undefined;
|
|
189
177
|
}
|
|
190
178
|
if (typeof data === 'object' && data !== null) {
|
|
191
179
|
const result = {};
|
|
192
180
|
for (const [key, value] of Object.entries(data)) {
|
|
193
|
-
|
|
194
|
-
|
|
181
|
+
const cleanedValue = cleanObject(value, false);
|
|
182
|
+
if (cleanedValue !== undefined && cleanedValue !== null && !isEmptyObject(cleanedValue)) {
|
|
183
|
+
result[key] = cleanedValue;
|
|
195
184
|
}
|
|
196
185
|
}
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
186
|
+
const isEmptyResult = Object.keys(result).length === 0;
|
|
187
|
+
if (topLevel && isEmptyResult) {
|
|
188
|
+
return {};
|
|
189
|
+
}
|
|
190
|
+
return isEmptyResult ? undefined : result;
|
|
201
191
|
}
|
|
202
192
|
return data;
|
|
203
193
|
}
|
|
@@ -271,12 +261,11 @@ function createFHIRResource(resource, searchParams, dropNullsFromDicts = true) {
|
|
|
271
261
|
return service(create(resource, searchParams, dropNullsFromDicts));
|
|
272
262
|
});
|
|
273
263
|
}
|
|
274
|
-
function create(resource, searchParams,
|
|
264
|
+
function create(resource, searchParams, needToCleanResource = true) {
|
|
275
265
|
let cleanedResource = resource;
|
|
276
|
-
if (
|
|
277
|
-
cleanedResource =
|
|
266
|
+
if (needToCleanResource) {
|
|
267
|
+
cleanedResource = cleanObject(cleanedResource);
|
|
278
268
|
}
|
|
279
|
-
cleanedResource = cleanEmptyValues(cleanedResource);
|
|
280
269
|
return {
|
|
281
270
|
method: 'POST',
|
|
282
271
|
url: `/${cleanedResource.resourceType}`,
|
|
@@ -284,17 +273,16 @@ function create(resource, searchParams, dropNullsFromDicts = true) {
|
|
|
284
273
|
data: cleanedResource,
|
|
285
274
|
};
|
|
286
275
|
}
|
|
287
|
-
function updateFHIRResource(resource, searchParams) {
|
|
276
|
+
function updateFHIRResource(resource, searchParams, dropNullsFromDicts = true) {
|
|
288
277
|
return __awaiter(this, void 0, void 0, function* () {
|
|
289
|
-
return service(update(resource, searchParams));
|
|
278
|
+
return service(update(resource, searchParams, dropNullsFromDicts));
|
|
290
279
|
});
|
|
291
280
|
}
|
|
292
|
-
function update(resource, searchParams,
|
|
281
|
+
function update(resource, searchParams, needToCleanResource = true) {
|
|
293
282
|
let cleanedResource = resource;
|
|
294
|
-
if (
|
|
295
|
-
cleanedResource =
|
|
283
|
+
if (needToCleanResource) {
|
|
284
|
+
cleanedResource = cleanObject(cleanedResource);
|
|
296
285
|
}
|
|
297
|
-
cleanedResource = cleanEmptyValues(cleanedResource);
|
|
298
286
|
if (searchParams) {
|
|
299
287
|
return {
|
|
300
288
|
method: 'PUT',
|
|
@@ -385,16 +373,15 @@ function saveFHIRResource(resource, dropNullsFromDicts = true) {
|
|
|
385
373
|
return service(save(resource, dropNullsFromDicts));
|
|
386
374
|
});
|
|
387
375
|
}
|
|
388
|
-
function save(resource,
|
|
389
|
-
const versionId = resource.meta && resource.meta.versionId;
|
|
376
|
+
function save(resource, needToCleanResource = true) {
|
|
390
377
|
let cleanedResource = resource;
|
|
391
|
-
if (
|
|
392
|
-
cleanedResource =
|
|
378
|
+
if (needToCleanResource) {
|
|
379
|
+
cleanedResource = cleanObject(cleanedResource);
|
|
393
380
|
}
|
|
394
|
-
|
|
381
|
+
const versionId = cleanedResource.meta && cleanedResource.meta.versionId;
|
|
395
382
|
return Object.assign({ method: resource.id ? 'PUT' : 'POST', data: cleanedResource, url: `/${resource.resourceType}${resource.id ? '/' + resource.id : ''}` }, (resource.id && versionId ? { headers: { 'If-Match': versionId } } : {}));
|
|
396
383
|
}
|
|
397
|
-
function saveFHIRResources(resources, bundleType,
|
|
384
|
+
function saveFHIRResources(resources, bundleType, needToCleanResource = true) {
|
|
398
385
|
return __awaiter(this, void 0, void 0, function* () {
|
|
399
386
|
return service({
|
|
400
387
|
method: 'POST',
|
|
@@ -403,10 +390,9 @@ function saveFHIRResources(resources, bundleType, dropNullsFromDicts = true) {
|
|
|
403
390
|
type: bundleType,
|
|
404
391
|
entry: resources.map((resource) => {
|
|
405
392
|
let cleanedResource = resource;
|
|
406
|
-
if (
|
|
407
|
-
cleanedResource =
|
|
393
|
+
if (needToCleanResource) {
|
|
394
|
+
cleanedResource = cleanObject(cleanedResource);
|
|
408
395
|
}
|
|
409
|
-
cleanedResource = cleanEmptyValues(cleanedResource);
|
|
410
396
|
const versionId = cleanedResource.meta && cleanedResource.meta.versionId;
|
|
411
397
|
return {
|
|
412
398
|
resource: cleanedResource,
|
|
@@ -3314,7 +3300,7 @@ exports.applyFHIRService = applyFHIRService;
|
|
|
3314
3300
|
exports.applyFHIRServices = applyFHIRServices;
|
|
3315
3301
|
exports.axiosInstance = axiosInstance;
|
|
3316
3302
|
exports.buildQueryParams = buildQueryParams;
|
|
3317
|
-
exports.
|
|
3303
|
+
exports.cleanObject = cleanObject;
|
|
3318
3304
|
exports.create = create;
|
|
3319
3305
|
exports.createBus = createBus;
|
|
3320
3306
|
exports.createFHIRResource = createFHIRResource;
|
|
@@ -3361,7 +3347,6 @@ exports.parseFHIRDateTime = parseFHIRDateTime;
|
|
|
3361
3347
|
exports.parseFHIRTime = parseFHIRTime;
|
|
3362
3348
|
exports.patch = patch;
|
|
3363
3349
|
exports.patchFHIRResource = patchFHIRResource;
|
|
3364
|
-
exports.removeNullsFromDicts = removeNullsFromDicts;
|
|
3365
3350
|
exports.resetInstanceToken = resetInstanceToken;
|
|
3366
3351
|
exports.resolveArray = resolveArray;
|
|
3367
3352
|
exports.resolveMap = resolveMap;
|
|
@@ -4,9 +4,9 @@ import { RemoteDataResult } from '../libs/remoteData';
|
|
|
4
4
|
import { SearchParams } from './search';
|
|
5
5
|
export type WithId<T extends AidboxResource> = T & Required<Pick<T, 'id'>>;
|
|
6
6
|
export declare function createFHIRResource<R extends AidboxResource>(resource: R, searchParams?: SearchParams, dropNullsFromDicts?: boolean): Promise<RemoteDataResult<WithId<R>>>;
|
|
7
|
-
export declare function create<R extends AidboxResource>(resource: R, searchParams?: SearchParams,
|
|
8
|
-
export declare function updateFHIRResource<R extends AidboxResource>(resource: R, searchParams?: SearchParams): Promise<RemoteDataResult<WithId<R>>>;
|
|
9
|
-
export declare function update<R extends AidboxResource>(resource: R, searchParams?: SearchParams,
|
|
7
|
+
export declare function create<R extends AidboxResource>(resource: R, searchParams?: SearchParams, needToCleanResource?: boolean): AxiosRequestConfig;
|
|
8
|
+
export declare function updateFHIRResource<R extends AidboxResource>(resource: R, searchParams?: SearchParams, dropNullsFromDicts?: boolean): Promise<RemoteDataResult<WithId<R>>>;
|
|
9
|
+
export declare function update<R extends AidboxResource>(resource: R, searchParams?: SearchParams, needToCleanResource?: boolean): AxiosRequestConfig;
|
|
10
10
|
export declare function getFHIRResource<R extends AidboxResource>(reference: AidboxReference<R>): Promise<RemoteDataResult<WithId<R>>>;
|
|
11
11
|
export declare function get<R extends AidboxResource>(reference: AidboxReference<R>): AxiosRequestConfig;
|
|
12
12
|
export declare function getFHIRResources<R extends AidboxResource>(resourceType: R['resourceType'], searchParams: SearchParams, extraPath?: string): Promise<RemoteDataResult<Bundle<WithId<R>>>>;
|
|
@@ -14,8 +14,8 @@ export declare function getAllFHIRResources<R extends AidboxResource>(resourceTy
|
|
|
14
14
|
export declare function list<R extends AidboxResource>(resourceType: R['resourceType'], searchParams: SearchParams, extraPath?: string): AxiosRequestConfig;
|
|
15
15
|
export declare function findFHIRResource<R extends AidboxResource>(resourceType: R['resourceType'], params: SearchParams, extraPath?: string): Promise<RemoteDataResult<WithId<R>>>;
|
|
16
16
|
export declare function saveFHIRResource<R extends AidboxResource>(resource: R, dropNullsFromDicts?: boolean): Promise<RemoteDataResult<WithId<R>>>;
|
|
17
|
-
export declare function save<R extends AidboxResource>(resource: R,
|
|
18
|
-
export declare function saveFHIRResources<R extends AidboxResource>(resources: R[], bundleType: 'transaction' | 'batch',
|
|
17
|
+
export declare function save<R extends AidboxResource>(resource: R, needToCleanResource?: boolean): AxiosRequestConfig;
|
|
18
|
+
export declare function saveFHIRResources<R extends AidboxResource>(resources: R[], bundleType: 'transaction' | 'batch', needToCleanResource?: boolean): Promise<RemoteDataResult<Bundle<WithId<R>>>>;
|
|
19
19
|
type NullableRecursivePartial<T> = {
|
|
20
20
|
[P in keyof T]?: NullableRecursivePartial<T[P]> | null;
|
|
21
21
|
};
|
package/dist/cjs/utils/fhir.d.ts
CHANGED
package/dist/esm/index.js
CHANGED
|
@@ -149,54 +149,44 @@ function resolveServiceMap(promiseMap) {
|
|
|
149
149
|
});
|
|
150
150
|
}
|
|
151
151
|
|
|
152
|
-
function isEmpty(data) {
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
152
|
+
// function isEmpty(data: any): boolean {
|
|
153
|
+
// if (Array.isArray(data)) {
|
|
154
|
+
// return data.length === 0;
|
|
155
|
+
// }
|
|
156
|
+
// if (typeof data === 'object' && data !== null) {
|
|
157
|
+
// return Object.keys(data).length === 0;
|
|
158
|
+
// }
|
|
159
|
+
// return false;
|
|
160
|
+
// }
|
|
161
|
+
function isEmptyObject(data) {
|
|
162
|
+
return typeof data === 'object' && !Array.isArray(data) && data !== null && Object.keys(data).length === 0;
|
|
160
163
|
}
|
|
161
|
-
function
|
|
164
|
+
function cleanObject(data, topLevel = true) {
|
|
162
165
|
if (Array.isArray(data)) {
|
|
163
|
-
|
|
164
|
-
|
|
166
|
+
const cleanedArray = data.map((item) => {
|
|
167
|
+
const cleaned = cleanObject(item, false);
|
|
168
|
+
//NOTE: convert undefined → null
|
|
169
|
+
return cleaned === undefined ? null : cleaned;
|
|
165
170
|
});
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
for (const [key, value] of Object.entries(data)) {
|
|
170
|
-
const cleanedValue = cleanEmptyValues(value);
|
|
171
|
-
if (!isEmpty(cleanedValue)) {
|
|
172
|
-
cleaned[key] = cleanedValue;
|
|
173
|
-
}
|
|
171
|
+
//NOTE: Trim trailing nulls
|
|
172
|
+
while (cleanedArray.length > 0 && cleanedArray[cleanedArray.length - 1] === null) {
|
|
173
|
+
cleanedArray.pop();
|
|
174
174
|
}
|
|
175
|
-
return
|
|
176
|
-
}
|
|
177
|
-
if (typeof data === 'undefined') {
|
|
178
|
-
return null;
|
|
179
|
-
}
|
|
180
|
-
return data;
|
|
181
|
-
}
|
|
182
|
-
function isNull(value) {
|
|
183
|
-
return value === null || value === undefined;
|
|
184
|
-
}
|
|
185
|
-
function removeNullsFromDicts(data) {
|
|
186
|
-
if (Array.isArray(data)) {
|
|
187
|
-
return data.map(removeNullsFromDicts);
|
|
175
|
+
return cleanedArray.length > 0 ? cleanedArray : undefined;
|
|
188
176
|
}
|
|
189
177
|
if (typeof data === 'object' && data !== null) {
|
|
190
178
|
const result = {};
|
|
191
179
|
for (const [key, value] of Object.entries(data)) {
|
|
192
|
-
|
|
193
|
-
|
|
180
|
+
const cleanedValue = cleanObject(value, false);
|
|
181
|
+
if (cleanedValue !== undefined && cleanedValue !== null && !isEmptyObject(cleanedValue)) {
|
|
182
|
+
result[key] = cleanedValue;
|
|
194
183
|
}
|
|
195
184
|
}
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
185
|
+
const isEmptyResult = Object.keys(result).length === 0;
|
|
186
|
+
if (topLevel && isEmptyResult) {
|
|
187
|
+
return {};
|
|
188
|
+
}
|
|
189
|
+
return isEmptyResult ? undefined : result;
|
|
200
190
|
}
|
|
201
191
|
return data;
|
|
202
192
|
}
|
|
@@ -270,12 +260,11 @@ function createFHIRResource(resource, searchParams, dropNullsFromDicts = true) {
|
|
|
270
260
|
return service(create(resource, searchParams, dropNullsFromDicts));
|
|
271
261
|
});
|
|
272
262
|
}
|
|
273
|
-
function create(resource, searchParams,
|
|
263
|
+
function create(resource, searchParams, needToCleanResource = true) {
|
|
274
264
|
let cleanedResource = resource;
|
|
275
|
-
if (
|
|
276
|
-
cleanedResource =
|
|
265
|
+
if (needToCleanResource) {
|
|
266
|
+
cleanedResource = cleanObject(cleanedResource);
|
|
277
267
|
}
|
|
278
|
-
cleanedResource = cleanEmptyValues(cleanedResource);
|
|
279
268
|
return {
|
|
280
269
|
method: 'POST',
|
|
281
270
|
url: `/${cleanedResource.resourceType}`,
|
|
@@ -283,17 +272,16 @@ function create(resource, searchParams, dropNullsFromDicts = true) {
|
|
|
283
272
|
data: cleanedResource,
|
|
284
273
|
};
|
|
285
274
|
}
|
|
286
|
-
function updateFHIRResource(resource, searchParams) {
|
|
275
|
+
function updateFHIRResource(resource, searchParams, dropNullsFromDicts = true) {
|
|
287
276
|
return __awaiter(this, void 0, void 0, function* () {
|
|
288
|
-
return service(update(resource, searchParams));
|
|
277
|
+
return service(update(resource, searchParams, dropNullsFromDicts));
|
|
289
278
|
});
|
|
290
279
|
}
|
|
291
|
-
function update(resource, searchParams,
|
|
280
|
+
function update(resource, searchParams, needToCleanResource = true) {
|
|
292
281
|
let cleanedResource = resource;
|
|
293
|
-
if (
|
|
294
|
-
cleanedResource =
|
|
282
|
+
if (needToCleanResource) {
|
|
283
|
+
cleanedResource = cleanObject(cleanedResource);
|
|
295
284
|
}
|
|
296
|
-
cleanedResource = cleanEmptyValues(cleanedResource);
|
|
297
285
|
if (searchParams) {
|
|
298
286
|
return {
|
|
299
287
|
method: 'PUT',
|
|
@@ -384,16 +372,15 @@ function saveFHIRResource(resource, dropNullsFromDicts = true) {
|
|
|
384
372
|
return service(save(resource, dropNullsFromDicts));
|
|
385
373
|
});
|
|
386
374
|
}
|
|
387
|
-
function save(resource,
|
|
388
|
-
const versionId = resource.meta && resource.meta.versionId;
|
|
375
|
+
function save(resource, needToCleanResource = true) {
|
|
389
376
|
let cleanedResource = resource;
|
|
390
|
-
if (
|
|
391
|
-
cleanedResource =
|
|
377
|
+
if (needToCleanResource) {
|
|
378
|
+
cleanedResource = cleanObject(cleanedResource);
|
|
392
379
|
}
|
|
393
|
-
|
|
380
|
+
const versionId = cleanedResource.meta && cleanedResource.meta.versionId;
|
|
394
381
|
return Object.assign({ method: resource.id ? 'PUT' : 'POST', data: cleanedResource, url: `/${resource.resourceType}${resource.id ? '/' + resource.id : ''}` }, (resource.id && versionId ? { headers: { 'If-Match': versionId } } : {}));
|
|
395
382
|
}
|
|
396
|
-
function saveFHIRResources(resources, bundleType,
|
|
383
|
+
function saveFHIRResources(resources, bundleType, needToCleanResource = true) {
|
|
397
384
|
return __awaiter(this, void 0, void 0, function* () {
|
|
398
385
|
return service({
|
|
399
386
|
method: 'POST',
|
|
@@ -402,10 +389,9 @@ function saveFHIRResources(resources, bundleType, dropNullsFromDicts = true) {
|
|
|
402
389
|
type: bundleType,
|
|
403
390
|
entry: resources.map((resource) => {
|
|
404
391
|
let cleanedResource = resource;
|
|
405
|
-
if (
|
|
406
|
-
cleanedResource =
|
|
392
|
+
if (needToCleanResource) {
|
|
393
|
+
cleanedResource = cleanObject(cleanedResource);
|
|
407
394
|
}
|
|
408
|
-
cleanedResource = cleanEmptyValues(cleanedResource);
|
|
409
395
|
const versionId = cleanedResource.meta && cleanedResource.meta.versionId;
|
|
410
396
|
return {
|
|
411
397
|
resource: cleanedResource,
|
|
@@ -3254,4 +3240,4 @@ function withRender(config) {
|
|
|
3254
3240
|
};
|
|
3255
3241
|
}
|
|
3256
3242
|
|
|
3257
|
-
export { FHIRDateFormat, FHIRDateTimeFormat, FHIRTimeFormat, RenderRemoteData, SharedStateInitializationError, applyDataTransformer, applyErrorTransformer, applyFHIRService, applyFHIRServices, axiosInstance, buildQueryParams,
|
|
3243
|
+
export { FHIRDateFormat, FHIRDateTimeFormat, FHIRTimeFormat, RenderRemoteData, SharedStateInitializationError, applyDataTransformer, applyErrorTransformer, applyFHIRService, applyFHIRServices, axiosInstance, buildQueryParams, cleanObject, create, createBus, createFHIRResource, createSharedState, deleteFHIRResource, ensure, extractBundleResources, extractErrorCode, extractErrorDescription, extractFHIRDate, extractFHIRTime, findFHIRResource, forceDelete, forceDeleteFHIRResource, formatError, formatFHIRDate, formatFHIRDateTime, formatFHIRTime, get, getAllFHIRResources, getConcepts, getFHIRResource, getFHIRResources, getIncludedResource, getIncludedResources, getMainResources, getReference, getToken, getUserInfo, investigate, isBackendError, isFHIRDateEqual, isOperationOutcome, isReference, list, login, makeFHIRDateTime, makeReference, mapFailure, mapSuccess, markAsDeleted, parseFHIRDate, parseFHIRDateTime, parseFHIRTime, patch, patchFHIRResource, resetInstanceToken, resolveArray, resolveMap, resolveServiceMap, save, saveFHIRResource, saveFHIRResources, sequenceArray, sequenceMap, service, setInstanceBaseURL, setInstanceToken, transformToBundleEntry, update, updateFHIRResource, useCRUD, usePager, useService, uuid4, withRender, withRootAccess };
|
|
@@ -4,9 +4,9 @@ import { RemoteDataResult } from '../libs/remoteData';
|
|
|
4
4
|
import { SearchParams } from './search';
|
|
5
5
|
export type WithId<T extends AidboxResource> = T & Required<Pick<T, 'id'>>;
|
|
6
6
|
export declare function createFHIRResource<R extends AidboxResource>(resource: R, searchParams?: SearchParams, dropNullsFromDicts?: boolean): Promise<RemoteDataResult<WithId<R>>>;
|
|
7
|
-
export declare function create<R extends AidboxResource>(resource: R, searchParams?: SearchParams,
|
|
8
|
-
export declare function updateFHIRResource<R extends AidboxResource>(resource: R, searchParams?: SearchParams): Promise<RemoteDataResult<WithId<R>>>;
|
|
9
|
-
export declare function update<R extends AidboxResource>(resource: R, searchParams?: SearchParams,
|
|
7
|
+
export declare function create<R extends AidboxResource>(resource: R, searchParams?: SearchParams, needToCleanResource?: boolean): AxiosRequestConfig;
|
|
8
|
+
export declare function updateFHIRResource<R extends AidboxResource>(resource: R, searchParams?: SearchParams, dropNullsFromDicts?: boolean): Promise<RemoteDataResult<WithId<R>>>;
|
|
9
|
+
export declare function update<R extends AidboxResource>(resource: R, searchParams?: SearchParams, needToCleanResource?: boolean): AxiosRequestConfig;
|
|
10
10
|
export declare function getFHIRResource<R extends AidboxResource>(reference: AidboxReference<R>): Promise<RemoteDataResult<WithId<R>>>;
|
|
11
11
|
export declare function get<R extends AidboxResource>(reference: AidboxReference<R>): AxiosRequestConfig;
|
|
12
12
|
export declare function getFHIRResources<R extends AidboxResource>(resourceType: R['resourceType'], searchParams: SearchParams, extraPath?: string): Promise<RemoteDataResult<Bundle<WithId<R>>>>;
|
|
@@ -14,8 +14,8 @@ export declare function getAllFHIRResources<R extends AidboxResource>(resourceTy
|
|
|
14
14
|
export declare function list<R extends AidboxResource>(resourceType: R['resourceType'], searchParams: SearchParams, extraPath?: string): AxiosRequestConfig;
|
|
15
15
|
export declare function findFHIRResource<R extends AidboxResource>(resourceType: R['resourceType'], params: SearchParams, extraPath?: string): Promise<RemoteDataResult<WithId<R>>>;
|
|
16
16
|
export declare function saveFHIRResource<R extends AidboxResource>(resource: R, dropNullsFromDicts?: boolean): Promise<RemoteDataResult<WithId<R>>>;
|
|
17
|
-
export declare function save<R extends AidboxResource>(resource: R,
|
|
18
|
-
export declare function saveFHIRResources<R extends AidboxResource>(resources: R[], bundleType: 'transaction' | 'batch',
|
|
17
|
+
export declare function save<R extends AidboxResource>(resource: R, needToCleanResource?: boolean): AxiosRequestConfig;
|
|
18
|
+
export declare function saveFHIRResources<R extends AidboxResource>(resources: R[], bundleType: 'transaction' | 'batch', needToCleanResource?: boolean): Promise<RemoteDataResult<Bundle<WithId<R>>>>;
|
|
19
19
|
type NullableRecursivePartial<T> = {
|
|
20
20
|
[P in keyof T]?: NullableRecursivePartial<T[P]> | null;
|
|
21
21
|
};
|
package/dist/esm/utils/fhir.d.ts
CHANGED
package/dist/index.d.ts
CHANGED
|
@@ -57,9 +57,9 @@ declare function resolveServiceMap<I, F>(promiseMap: PromiseRemoteDataMap<I, F>)
|
|
|
57
57
|
|
|
58
58
|
type WithId<T extends AidboxResource> = T & Required<Pick<T, 'id'>>;
|
|
59
59
|
declare function createFHIRResource<R extends AidboxResource>(resource: R, searchParams?: SearchParams, dropNullsFromDicts?: boolean): Promise<RemoteDataResult<WithId<R>>>;
|
|
60
|
-
declare function create<R extends AidboxResource>(resource: R, searchParams?: SearchParams,
|
|
61
|
-
declare function updateFHIRResource<R extends AidboxResource>(resource: R, searchParams?: SearchParams): Promise<RemoteDataResult<WithId<R>>>;
|
|
62
|
-
declare function update<R extends AidboxResource>(resource: R, searchParams?: SearchParams,
|
|
60
|
+
declare function create<R extends AidboxResource>(resource: R, searchParams?: SearchParams, needToCleanResource?: boolean): AxiosRequestConfig;
|
|
61
|
+
declare function updateFHIRResource<R extends AidboxResource>(resource: R, searchParams?: SearchParams, dropNullsFromDicts?: boolean): Promise<RemoteDataResult<WithId<R>>>;
|
|
62
|
+
declare function update<R extends AidboxResource>(resource: R, searchParams?: SearchParams, needToCleanResource?: boolean): AxiosRequestConfig;
|
|
63
63
|
declare function getFHIRResource<R extends AidboxResource>(reference: AidboxReference<R>): Promise<RemoteDataResult<WithId<R>>>;
|
|
64
64
|
declare function get<R extends AidboxResource>(reference: AidboxReference<R>): AxiosRequestConfig;
|
|
65
65
|
declare function getFHIRResources<R extends AidboxResource>(resourceType: R['resourceType'], searchParams: SearchParams, extraPath?: string): Promise<RemoteDataResult<Bundle<WithId<R>>>>;
|
|
@@ -67,8 +67,8 @@ declare function getAllFHIRResources<R extends AidboxResource>(resourceType: str
|
|
|
67
67
|
declare function list<R extends AidboxResource>(resourceType: R['resourceType'], searchParams: SearchParams, extraPath?: string): AxiosRequestConfig;
|
|
68
68
|
declare function findFHIRResource<R extends AidboxResource>(resourceType: R['resourceType'], params: SearchParams, extraPath?: string): Promise<RemoteDataResult<WithId<R>>>;
|
|
69
69
|
declare function saveFHIRResource<R extends AidboxResource>(resource: R, dropNullsFromDicts?: boolean): Promise<RemoteDataResult<WithId<R>>>;
|
|
70
|
-
declare function save<R extends AidboxResource>(resource: R,
|
|
71
|
-
declare function saveFHIRResources<R extends AidboxResource>(resources: R[], bundleType: 'transaction' | 'batch',
|
|
70
|
+
declare function save<R extends AidboxResource>(resource: R, needToCleanResource?: boolean): AxiosRequestConfig;
|
|
71
|
+
declare function saveFHIRResources<R extends AidboxResource>(resources: R[], bundleType: 'transaction' | 'batch', needToCleanResource?: boolean): Promise<RemoteDataResult<Bundle<WithId<R>>>>;
|
|
72
72
|
type NullableRecursivePartial<T> = {
|
|
73
73
|
[P in keyof T]?: NullableRecursivePartial<T[P]> | null;
|
|
74
74
|
};
|
|
@@ -148,8 +148,7 @@ declare function getUserInfo(): Promise<User>;
|
|
|
148
148
|
|
|
149
149
|
declare function uuid4(): string;
|
|
150
150
|
|
|
151
|
-
declare function
|
|
152
|
-
declare function removeNullsFromDicts(data: any): any;
|
|
151
|
+
declare function cleanObject(data: any, topLevel?: boolean): any;
|
|
153
152
|
|
|
154
153
|
interface BaseAction {
|
|
155
154
|
type: unknown;
|
|
@@ -216,4 +215,4 @@ type RenderRemoteDataProps<S, E = any> = RenderRemoteDataBasicProps<S> & RenderC
|
|
|
216
215
|
declare function RenderRemoteData<S, E = any>(props: RenderRemoteDataProps<S, E>): JSX.Element | null;
|
|
217
216
|
declare function withRender<E = any>(config: RenderConfig<E>): <S>(props: RenderRemoteDataProps<S, E>) => JSX.Element;
|
|
218
217
|
|
|
219
|
-
export { CRUDManager, FHIRDateFormat, FHIRDateTimeFormat, FHIRTimeFormat, LoginService, PagerManager, PromiseRemoteDataMap, PromiseRemoteDataResultMap, RemoteDataMap, RemoteDataResultMap, RenderRemoteData, ResourcesMap, SearchParam, SearchParams, ServiceManager, SharedStateInitializationError, StateManager, Token, WithId, applyDataTransformer, applyErrorTransformer, applyFHIRService, applyFHIRServices, axiosInstance, buildQueryParams,
|
|
218
|
+
export { CRUDManager, FHIRDateFormat, FHIRDateTimeFormat, FHIRTimeFormat, LoginService, PagerManager, PromiseRemoteDataMap, PromiseRemoteDataResultMap, RemoteDataMap, RemoteDataResultMap, RenderRemoteData, ResourcesMap, SearchParam, SearchParams, ServiceManager, SharedStateInitializationError, StateManager, Token, WithId, applyDataTransformer, applyErrorTransformer, applyFHIRService, applyFHIRServices, axiosInstance, buildQueryParams, cleanObject, create, createBus, createFHIRResource, createSharedState, deleteFHIRResource, ensure, extractBundleResources, extractErrorCode, extractErrorDescription, extractFHIRDate, extractFHIRTime, findFHIRResource, forceDelete, forceDeleteFHIRResource, formatError, formatFHIRDate, formatFHIRDateTime, formatFHIRTime, get, getAllFHIRResources, getConcepts, getFHIRResource, getFHIRResources, getIncludedResource, getIncludedResources, getMainResources, getReference, getToken, getUserInfo, investigate, isBackendError, isFHIRDateEqual, isOperationOutcome, isReference, list, login, makeFHIRDateTime, makeReference, mapFailure, mapSuccess, markAsDeleted, parseFHIRDate, parseFHIRDateTime, parseFHIRTime, patch, patchFHIRResource, resetInstanceToken, resolveArray, resolveMap, resolveServiceMap, save, saveFHIRResource, saveFHIRResources, sequenceArray, sequenceMap, service, setInstanceBaseURL, setInstanceToken, transformToBundleEntry, update, updateFHIRResource, useCRUD, usePager, useService, uuid4, withRender, withRootAccess };
|
package/lib/services/fhir.d.ts
CHANGED
|
@@ -4,9 +4,9 @@ import { RemoteDataResult } from '../libs/remoteData';
|
|
|
4
4
|
import { SearchParams } from './search';
|
|
5
5
|
export type WithId<T extends AidboxResource> = T & Required<Pick<T, 'id'>>;
|
|
6
6
|
export declare function createFHIRResource<R extends AidboxResource>(resource: R, searchParams?: SearchParams, dropNullsFromDicts?: boolean): Promise<RemoteDataResult<WithId<R>>>;
|
|
7
|
-
export declare function create<R extends AidboxResource>(resource: R, searchParams?: SearchParams,
|
|
8
|
-
export declare function updateFHIRResource<R extends AidboxResource>(resource: R, searchParams?: SearchParams): Promise<RemoteDataResult<WithId<R>>>;
|
|
9
|
-
export declare function update<R extends AidboxResource>(resource: R, searchParams?: SearchParams,
|
|
7
|
+
export declare function create<R extends AidboxResource>(resource: R, searchParams?: SearchParams, needToCleanResource?: boolean): AxiosRequestConfig;
|
|
8
|
+
export declare function updateFHIRResource<R extends AidboxResource>(resource: R, searchParams?: SearchParams, dropNullsFromDicts?: boolean): Promise<RemoteDataResult<WithId<R>>>;
|
|
9
|
+
export declare function update<R extends AidboxResource>(resource: R, searchParams?: SearchParams, needToCleanResource?: boolean): AxiosRequestConfig;
|
|
10
10
|
export declare function getFHIRResource<R extends AidboxResource>(reference: AidboxReference<R>): Promise<RemoteDataResult<WithId<R>>>;
|
|
11
11
|
export declare function get<R extends AidboxResource>(reference: AidboxReference<R>): AxiosRequestConfig;
|
|
12
12
|
export declare function getFHIRResources<R extends AidboxResource>(resourceType: R['resourceType'], searchParams: SearchParams, extraPath?: string): Promise<RemoteDataResult<Bundle<WithId<R>>>>;
|
|
@@ -14,8 +14,8 @@ export declare function getAllFHIRResources<R extends AidboxResource>(resourceTy
|
|
|
14
14
|
export declare function list<R extends AidboxResource>(resourceType: R['resourceType'], searchParams: SearchParams, extraPath?: string): AxiosRequestConfig;
|
|
15
15
|
export declare function findFHIRResource<R extends AidboxResource>(resourceType: R['resourceType'], params: SearchParams, extraPath?: string): Promise<RemoteDataResult<WithId<R>>>;
|
|
16
16
|
export declare function saveFHIRResource<R extends AidboxResource>(resource: R, dropNullsFromDicts?: boolean): Promise<RemoteDataResult<WithId<R>>>;
|
|
17
|
-
export declare function save<R extends AidboxResource>(resource: R,
|
|
18
|
-
export declare function saveFHIRResources<R extends AidboxResource>(resources: R[], bundleType: 'transaction' | 'batch',
|
|
17
|
+
export declare function save<R extends AidboxResource>(resource: R, needToCleanResource?: boolean): AxiosRequestConfig;
|
|
18
|
+
export declare function saveFHIRResources<R extends AidboxResource>(resources: R[], bundleType: 'transaction' | 'batch', needToCleanResource?: boolean): Promise<RemoteDataResult<Bundle<WithId<R>>>>;
|
|
19
19
|
type NullableRecursivePartial<T> = {
|
|
20
20
|
[P in keyof T]?: NullableRecursivePartial<T[P]> | null;
|
|
21
21
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fhir.d.ts","sourceRoot":"","sources":["../../src/services/fhir.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,2BAA2B,CAAC;AAE/G,OAAO,EAAa,gBAAgB,EAAoB,MAAM,oBAAoB,CAAC;AAGnF,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAiBxC,MAAM,MAAM,MAAM,CAAC,CAAC,SAAS,cAAc,IAAI,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;AAuE3E,wBAAsB,kBAAkB,CAAC,CAAC,SAAS,cAAc,EAC7D,QAAQ,EAAE,CAAC,EACX,YAAY,CAAC,EAAE,YAAY,EAC3B,kBAAkB,UAAO,GAC1B,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAEtC;AAED,wBAAgB,MAAM,CAAC,CAAC,SAAS,cAAc,EAC3C,QAAQ,EAAE,CAAC,EACX,YAAY,CAAC,EAAE,YAAY,EAC3B,
|
|
1
|
+
{"version":3,"file":"fhir.d.ts","sourceRoot":"","sources":["../../src/services/fhir.ts"],"names":[],"mappings":"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"}
|
package/lib/services/fhir.js
CHANGED
|
@@ -80,13 +80,12 @@ function createFHIRResource(resource, searchParams, dropNullsFromDicts) {
|
|
|
80
80
|
});
|
|
81
81
|
}
|
|
82
82
|
exports.createFHIRResource = createFHIRResource;
|
|
83
|
-
function create(resource, searchParams,
|
|
84
|
-
if (
|
|
83
|
+
function create(resource, searchParams, needToCleanResource) {
|
|
84
|
+
if (needToCleanResource === void 0) { needToCleanResource = true; }
|
|
85
85
|
var cleanedResource = resource;
|
|
86
|
-
if (
|
|
87
|
-
cleanedResource = (0, fhir_1.
|
|
86
|
+
if (needToCleanResource) {
|
|
87
|
+
cleanedResource = (0, fhir_1.cleanObject)(cleanedResource);
|
|
88
88
|
}
|
|
89
|
-
cleanedResource = (0, fhir_1.cleanEmptyValues)(cleanedResource);
|
|
90
89
|
return {
|
|
91
90
|
method: 'POST',
|
|
92
91
|
url: "/".concat(cleanedResource.resourceType),
|
|
@@ -95,21 +94,21 @@ function create(resource, searchParams, dropNullsFromDicts) {
|
|
|
95
94
|
};
|
|
96
95
|
}
|
|
97
96
|
exports.create = create;
|
|
98
|
-
function updateFHIRResource(resource, searchParams) {
|
|
97
|
+
function updateFHIRResource(resource, searchParams, dropNullsFromDicts) {
|
|
98
|
+
if (dropNullsFromDicts === void 0) { dropNullsFromDicts = true; }
|
|
99
99
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
100
100
|
return tslib_1.__generator(this, function (_a) {
|
|
101
|
-
return [2 /*return*/, (0, service_1.service)(update(resource, searchParams))];
|
|
101
|
+
return [2 /*return*/, (0, service_1.service)(update(resource, searchParams, dropNullsFromDicts))];
|
|
102
102
|
});
|
|
103
103
|
});
|
|
104
104
|
}
|
|
105
105
|
exports.updateFHIRResource = updateFHIRResource;
|
|
106
|
-
function update(resource, searchParams,
|
|
107
|
-
if (
|
|
106
|
+
function update(resource, searchParams, needToCleanResource) {
|
|
107
|
+
if (needToCleanResource === void 0) { needToCleanResource = true; }
|
|
108
108
|
var cleanedResource = resource;
|
|
109
|
-
if (
|
|
110
|
-
cleanedResource = (0, fhir_1.
|
|
109
|
+
if (needToCleanResource) {
|
|
110
|
+
cleanedResource = (0, fhir_1.cleanObject)(cleanedResource);
|
|
111
111
|
}
|
|
112
|
-
cleanedResource = (0, fhir_1.cleanEmptyValues)(cleanedResource);
|
|
113
112
|
if (searchParams) {
|
|
114
113
|
return {
|
|
115
114
|
method: 'PUT',
|
|
@@ -234,19 +233,18 @@ function saveFHIRResource(resource, dropNullsFromDicts) {
|
|
|
234
233
|
});
|
|
235
234
|
}
|
|
236
235
|
exports.saveFHIRResource = saveFHIRResource;
|
|
237
|
-
function save(resource,
|
|
238
|
-
if (
|
|
239
|
-
var versionId = resource.meta && resource.meta.versionId;
|
|
236
|
+
function save(resource, needToCleanResource) {
|
|
237
|
+
if (needToCleanResource === void 0) { needToCleanResource = true; }
|
|
240
238
|
var cleanedResource = resource;
|
|
241
|
-
if (
|
|
242
|
-
cleanedResource = (0, fhir_1.
|
|
239
|
+
if (needToCleanResource) {
|
|
240
|
+
cleanedResource = (0, fhir_1.cleanObject)(cleanedResource);
|
|
243
241
|
}
|
|
244
|
-
|
|
242
|
+
var versionId = cleanedResource.meta && cleanedResource.meta.versionId;
|
|
245
243
|
return tslib_1.__assign({ method: resource.id ? 'PUT' : 'POST', data: cleanedResource, url: "/".concat(resource.resourceType).concat(resource.id ? '/' + resource.id : '') }, (resource.id && versionId ? { headers: { 'If-Match': versionId } } : {}));
|
|
246
244
|
}
|
|
247
245
|
exports.save = save;
|
|
248
|
-
function saveFHIRResources(resources, bundleType,
|
|
249
|
-
if (
|
|
246
|
+
function saveFHIRResources(resources, bundleType, needToCleanResource) {
|
|
247
|
+
if (needToCleanResource === void 0) { needToCleanResource = true; }
|
|
250
248
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
251
249
|
return tslib_1.__generator(this, function (_a) {
|
|
252
250
|
return [2 /*return*/, (0, service_1.service)({
|
|
@@ -256,10 +254,9 @@ function saveFHIRResources(resources, bundleType, dropNullsFromDicts) {
|
|
|
256
254
|
type: bundleType,
|
|
257
255
|
entry: resources.map(function (resource) {
|
|
258
256
|
var cleanedResource = resource;
|
|
259
|
-
if (
|
|
260
|
-
cleanedResource = (0, fhir_1.
|
|
257
|
+
if (needToCleanResource) {
|
|
258
|
+
cleanedResource = (0, fhir_1.cleanObject)(cleanedResource);
|
|
261
259
|
}
|
|
262
|
-
cleanedResource = (0, fhir_1.cleanEmptyValues)(cleanedResource);
|
|
263
260
|
var versionId = cleanedResource.meta && cleanedResource.meta.versionId;
|
|
264
261
|
return {
|
|
265
262
|
resource: cleanedResource,
|
package/lib/services/fhir.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fhir.js","sourceRoot":"","sources":["../../src/services/fhir.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fhir.js","sourceRoot":"","sources":["../../src/services/fhir.ts"],"names":[],"mappings":"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"}
|
package/lib/utils/fhir.d.ts
CHANGED
package/lib/utils/fhir.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fhir.d.ts","sourceRoot":"","sources":["../../src/utils/fhir.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"fhir.d.ts","sourceRoot":"","sources":["../../src/utils/fhir.ts"],"names":[],"mappings":"AAgBA,wBAAgB,WAAW,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,UAAO,GAAG,GAAG,CAqC3D"}
|
package/lib/utils/fhir.js
CHANGED
|
@@ -1,59 +1,48 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
// function isEmpty(data: any): boolean {
|
|
3
|
+
// if (Array.isArray(data)) {
|
|
4
|
+
// return data.length === 0;
|
|
5
|
+
// }
|
|
2
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
return false;
|
|
7
|
+
exports.cleanObject = void 0;
|
|
8
|
+
// if (typeof data === 'object' && data !== null) {
|
|
9
|
+
// return Object.keys(data).length === 0;
|
|
10
|
+
// }
|
|
11
|
+
// return false;
|
|
12
|
+
// }
|
|
13
|
+
function isEmptyObject(data) {
|
|
14
|
+
return typeof data === 'object' && !Array.isArray(data) && data !== null && Object.keys(data).length === 0;
|
|
12
15
|
}
|
|
13
|
-
function
|
|
16
|
+
function cleanObject(data, topLevel) {
|
|
17
|
+
if (topLevel === void 0) { topLevel = true; }
|
|
14
18
|
if (Array.isArray(data)) {
|
|
15
|
-
|
|
16
|
-
|
|
19
|
+
var cleanedArray = data.map(function (item) {
|
|
20
|
+
var cleaned = cleanObject(item, false);
|
|
21
|
+
//NOTE: convert undefined → null
|
|
22
|
+
return cleaned === undefined ? null : cleaned;
|
|
17
23
|
});
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
for (var _i = 0, _a = Object.entries(data); _i < _a.length; _i++) {
|
|
22
|
-
var _b = _a[_i], key = _b[0], value = _b[1];
|
|
23
|
-
var cleanedValue = cleanEmptyValues(value);
|
|
24
|
-
if (!isEmpty(cleanedValue)) {
|
|
25
|
-
cleaned[key] = cleanedValue;
|
|
26
|
-
}
|
|
24
|
+
//NOTE: Trim trailing nulls
|
|
25
|
+
while (cleanedArray.length > 0 && cleanedArray[cleanedArray.length - 1] === null) {
|
|
26
|
+
cleanedArray.pop();
|
|
27
27
|
}
|
|
28
|
-
return
|
|
29
|
-
}
|
|
30
|
-
if (typeof data === 'undefined') {
|
|
31
|
-
return null;
|
|
32
|
-
}
|
|
33
|
-
return data;
|
|
34
|
-
}
|
|
35
|
-
exports.cleanEmptyValues = cleanEmptyValues;
|
|
36
|
-
function isNull(value) {
|
|
37
|
-
return value === null || value === undefined;
|
|
38
|
-
}
|
|
39
|
-
function removeNullsFromDicts(data) {
|
|
40
|
-
if (Array.isArray(data)) {
|
|
41
|
-
return data.map(removeNullsFromDicts);
|
|
28
|
+
return cleanedArray.length > 0 ? cleanedArray : undefined;
|
|
42
29
|
}
|
|
43
30
|
if (typeof data === 'object' && data !== null) {
|
|
44
31
|
var result = {};
|
|
45
32
|
for (var _i = 0, _a = Object.entries(data); _i < _a.length; _i++) {
|
|
46
33
|
var _b = _a[_i], key = _b[0], value = _b[1];
|
|
47
|
-
|
|
48
|
-
|
|
34
|
+
var cleanedValue = cleanObject(value, false);
|
|
35
|
+
if (cleanedValue !== undefined && cleanedValue !== null && !isEmptyObject(cleanedValue)) {
|
|
36
|
+
result[key] = cleanedValue;
|
|
49
37
|
}
|
|
50
38
|
}
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
39
|
+
var isEmptyResult = Object.keys(result).length === 0;
|
|
40
|
+
if (topLevel && isEmptyResult) {
|
|
41
|
+
return {};
|
|
42
|
+
}
|
|
43
|
+
return isEmptyResult ? undefined : result;
|
|
55
44
|
}
|
|
56
45
|
return data;
|
|
57
46
|
}
|
|
58
|
-
exports.
|
|
47
|
+
exports.cleanObject = cleanObject;
|
|
59
48
|
//# sourceMappingURL=fhir.js.map
|
package/lib/utils/fhir.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fhir.js","sourceRoot":"","sources":["../../src/utils/fhir.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"fhir.js","sourceRoot":"","sources":["../../src/utils/fhir.ts"],"names":[],"mappings":";AAAA,yCAAyC;AACzC,iCAAiC;AACjC,oCAAoC;AACpC,QAAQ;;;AAER,uDAAuD;AACvD,iDAAiD;AACjD,QAAQ;AAER,oBAAoB;AACpB,IAAI;AAEJ,SAAS,aAAa,CAAC,IAAS;IAC5B,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;AAC/G,CAAC;AAED,SAAgB,WAAW,CAAC,IAAS,EAAE,QAAe;IAAf,yBAAA,EAAA,eAAe;IAClD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACrB,IAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,UAAC,IAAI;YAC/B,IAAM,OAAO,GAAG,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACzC,gCAAgC;YAChC,OAAO,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;QAClD,CAAC,CAAC,CAAC;QAEH,2BAA2B;QAC3B,OAAO,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,IAAI,EAAE;YAC9E,YAAY,CAAC,GAAG,EAAE,CAAC;SACtB;QAED,OAAO,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC;KAC7D;IAED,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,EAAE;QAC3C,IAAM,MAAM,GAAwB,EAAE,CAAC;QAEvC,KAA2B,UAAoB,EAApB,KAAA,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAApB,cAAoB,EAApB,IAAoB,EAAE;YAAtC,IAAA,WAAY,EAAX,GAAG,QAAA,EAAE,KAAK,QAAA;YAClB,IAAM,YAAY,GAAG,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAE/C,IAAI,YAAY,KAAK,SAAS,IAAI,YAAY,KAAK,IAAI,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,EAAE;gBACrF,MAAM,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC;aAC9B;SACJ;QAED,IAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;QAEvD,IAAI,QAAQ,IAAI,aAAa,EAAE;YAC3B,OAAO,EAAE,CAAC;SACb;QAED,OAAO,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;KAC7C;IAED,OAAO,IAAI,CAAC;AAChB,CAAC;AArCD,kCAqCC"}
|
package/package.json
CHANGED
package/src/services/fhir.ts
CHANGED
|
@@ -2,7 +2,7 @@ import { AxiosRequestConfig } from 'axios';
|
|
|
2
2
|
import { AidboxReference, AidboxResource, ValueSet, Bundle, BundleEntry, id } from 'shared/src/contrib/aidbox';
|
|
3
3
|
|
|
4
4
|
import { isFailure, RemoteDataResult, success, failure } from '../libs/remoteData';
|
|
5
|
-
import {
|
|
5
|
+
import { cleanObject } from '../utils/fhir';
|
|
6
6
|
import { buildQueryParams } from './instance';
|
|
7
7
|
import { SearchParams } from './search';
|
|
8
8
|
import { service } from './service';
|
|
@@ -103,13 +103,12 @@ export async function createFHIRResource<R extends AidboxResource>(
|
|
|
103
103
|
export function create<R extends AidboxResource>(
|
|
104
104
|
resource: R,
|
|
105
105
|
searchParams?: SearchParams,
|
|
106
|
-
|
|
106
|
+
needToCleanResource = true
|
|
107
107
|
): AxiosRequestConfig {
|
|
108
108
|
let cleanedResource = resource;
|
|
109
|
-
if (
|
|
110
|
-
cleanedResource =
|
|
109
|
+
if (needToCleanResource) {
|
|
110
|
+
cleanedResource = cleanObject(cleanedResource);
|
|
111
111
|
}
|
|
112
|
-
cleanedResource = cleanEmptyValues(cleanedResource);
|
|
113
112
|
|
|
114
113
|
return {
|
|
115
114
|
method: 'POST',
|
|
@@ -121,21 +120,21 @@ export function create<R extends AidboxResource>(
|
|
|
121
120
|
|
|
122
121
|
export async function updateFHIRResource<R extends AidboxResource>(
|
|
123
122
|
resource: R,
|
|
124
|
-
searchParams?: SearchParams
|
|
123
|
+
searchParams?: SearchParams,
|
|
124
|
+
dropNullsFromDicts = true
|
|
125
125
|
): Promise<RemoteDataResult<WithId<R>>> {
|
|
126
|
-
return service(update(resource, searchParams));
|
|
126
|
+
return service(update(resource, searchParams, dropNullsFromDicts));
|
|
127
127
|
}
|
|
128
128
|
|
|
129
129
|
export function update<R extends AidboxResource>(
|
|
130
130
|
resource: R,
|
|
131
131
|
searchParams?: SearchParams,
|
|
132
|
-
|
|
132
|
+
needToCleanResource = true
|
|
133
133
|
): AxiosRequestConfig {
|
|
134
134
|
let cleanedResource = resource;
|
|
135
|
-
if (
|
|
136
|
-
cleanedResource =
|
|
135
|
+
if (needToCleanResource) {
|
|
136
|
+
cleanedResource = cleanObject(cleanedResource);
|
|
137
137
|
}
|
|
138
|
-
cleanedResource = cleanEmptyValues(cleanedResource);
|
|
139
138
|
|
|
140
139
|
if (searchParams) {
|
|
141
140
|
return {
|
|
@@ -265,13 +264,12 @@ export async function saveFHIRResource<R extends AidboxResource>(
|
|
|
265
264
|
return service(save(resource, dropNullsFromDicts));
|
|
266
265
|
}
|
|
267
266
|
|
|
268
|
-
export function save<R extends AidboxResource>(resource: R,
|
|
269
|
-
const versionId = resource.meta && resource.meta.versionId;
|
|
267
|
+
export function save<R extends AidboxResource>(resource: R, needToCleanResource = true): AxiosRequestConfig {
|
|
270
268
|
let cleanedResource = resource;
|
|
271
|
-
if (
|
|
272
|
-
cleanedResource =
|
|
269
|
+
if (needToCleanResource) {
|
|
270
|
+
cleanedResource = cleanObject(cleanedResource);
|
|
273
271
|
}
|
|
274
|
-
|
|
272
|
+
const versionId = cleanedResource.meta && cleanedResource.meta.versionId;
|
|
275
273
|
|
|
276
274
|
return {
|
|
277
275
|
method: resource.id ? 'PUT' : 'POST',
|
|
@@ -284,7 +282,7 @@ export function save<R extends AidboxResource>(resource: R, dropNullsFromDicts:
|
|
|
284
282
|
export async function saveFHIRResources<R extends AidboxResource>(
|
|
285
283
|
resources: R[],
|
|
286
284
|
bundleType: 'transaction' | 'batch',
|
|
287
|
-
|
|
285
|
+
needToCleanResource = true
|
|
288
286
|
): Promise<RemoteDataResult<Bundle<WithId<R>>>> {
|
|
289
287
|
return service({
|
|
290
288
|
method: 'POST',
|
|
@@ -293,10 +291,9 @@ export async function saveFHIRResources<R extends AidboxResource>(
|
|
|
293
291
|
type: bundleType,
|
|
294
292
|
entry: resources.map((resource) => {
|
|
295
293
|
let cleanedResource = resource;
|
|
296
|
-
if (
|
|
297
|
-
cleanedResource =
|
|
294
|
+
if (needToCleanResource) {
|
|
295
|
+
cleanedResource = cleanObject(cleanedResource);
|
|
298
296
|
}
|
|
299
|
-
cleanedResource = cleanEmptyValues(cleanedResource);
|
|
300
297
|
const versionId = cleanedResource.meta && cleanedResource.meta.versionId;
|
|
301
298
|
|
|
302
299
|
return {
|
package/src/utils/fhir.ts
CHANGED
|
@@ -1,61 +1,53 @@
|
|
|
1
|
-
function isEmpty(data: any): boolean {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
// function isEmpty(data: any): boolean {
|
|
2
|
+
// if (Array.isArray(data)) {
|
|
3
|
+
// return data.length === 0;
|
|
4
|
+
// }
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
// if (typeof data === 'object' && data !== null) {
|
|
7
|
+
// return Object.keys(data).length === 0;
|
|
8
|
+
// }
|
|
9
|
+
|
|
10
|
+
// return false;
|
|
11
|
+
// }
|
|
9
12
|
|
|
10
|
-
|
|
13
|
+
function isEmptyObject(data: any) {
|
|
14
|
+
return typeof data === 'object' && !Array.isArray(data) && data !== null && Object.keys(data).length === 0;
|
|
11
15
|
}
|
|
12
16
|
|
|
13
|
-
export function
|
|
17
|
+
export function cleanObject(data: any, topLevel = true): any {
|
|
14
18
|
if (Array.isArray(data)) {
|
|
15
|
-
|
|
16
|
-
|
|
19
|
+
const cleanedArray = data.map((item) => {
|
|
20
|
+
const cleaned = cleanObject(item, false);
|
|
21
|
+
//NOTE: convert undefined → null
|
|
22
|
+
return cleaned === undefined ? null : cleaned;
|
|
17
23
|
});
|
|
18
|
-
}
|
|
19
24
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
const cleanedValue = cleanEmptyValues(value);
|
|
24
|
-
if (!isEmpty(cleanedValue)) {
|
|
25
|
-
cleaned[key] = cleanedValue;
|
|
26
|
-
}
|
|
25
|
+
//NOTE: Trim trailing nulls
|
|
26
|
+
while (cleanedArray.length > 0 && cleanedArray[cleanedArray.length - 1] === null) {
|
|
27
|
+
cleanedArray.pop();
|
|
27
28
|
}
|
|
28
|
-
return cleaned;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
if (typeof data === 'undefined') {
|
|
32
|
-
return null;
|
|
33
|
-
}
|
|
34
29
|
|
|
35
|
-
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
function isNull(value: any): boolean {
|
|
39
|
-
return value === null || value === undefined;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
export function removeNullsFromDicts(data: any): any {
|
|
43
|
-
if (Array.isArray(data)) {
|
|
44
|
-
return data.map(removeNullsFromDicts);
|
|
30
|
+
return cleanedArray.length > 0 ? cleanedArray : undefined;
|
|
45
31
|
}
|
|
46
32
|
|
|
47
33
|
if (typeof data === 'object' && data !== null) {
|
|
48
34
|
const result: Record<string, any> = {};
|
|
35
|
+
|
|
49
36
|
for (const [key, value] of Object.entries(data)) {
|
|
50
|
-
|
|
51
|
-
|
|
37
|
+
const cleanedValue = cleanObject(value, false);
|
|
38
|
+
|
|
39
|
+
if (cleanedValue !== undefined && cleanedValue !== null && !isEmptyObject(cleanedValue)) {
|
|
40
|
+
result[key] = cleanedValue;
|
|
52
41
|
}
|
|
53
42
|
}
|
|
54
|
-
return result;
|
|
55
|
-
}
|
|
56
43
|
|
|
57
|
-
|
|
58
|
-
|
|
44
|
+
const isEmptyResult = Object.keys(result).length === 0;
|
|
45
|
+
|
|
46
|
+
if (topLevel && isEmptyResult) {
|
|
47
|
+
return {};
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
return isEmptyResult ? undefined : result;
|
|
59
51
|
}
|
|
60
52
|
|
|
61
53
|
return data;
|