aidbox-react 1.7.1 → 1.10.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.
Files changed (78) hide show
  1. package/dist/cjs/components/RenderRemoteData/index.d.ts +1 -0
  2. package/dist/cjs/hooks/bus.d.ts +1 -0
  3. package/dist/cjs/hooks/crud.d.ts +1 -0
  4. package/dist/cjs/hooks/pager.d.ts +1 -0
  5. package/dist/cjs/hooks/service.d.ts +1 -0
  6. package/dist/cjs/hooks/shared-state.d.ts +1 -0
  7. package/dist/cjs/index.d.ts +1 -0
  8. package/dist/cjs/index.js +112 -118
  9. package/dist/cjs/libs/remoteData.d.ts +3 -35
  10. package/dist/cjs/services/fhir.d.ts +1 -0
  11. package/dist/cjs/services/instance.d.ts +1 -0
  12. package/dist/cjs/services/search.d.ts +1 -0
  13. package/dist/cjs/services/service.d.ts +1 -0
  14. package/dist/cjs/services/token.d.ts +1 -0
  15. package/dist/cjs/utils/date.d.ts +1 -0
  16. package/dist/cjs/utils/error.d.ts +1 -0
  17. package/dist/cjs/utils/tests.d.ts +1 -0
  18. package/dist/cjs/utils/uuid.d.ts +1 -0
  19. package/dist/esm/components/RenderRemoteData/index.d.ts +1 -0
  20. package/dist/esm/hooks/bus.d.ts +1 -0
  21. package/dist/esm/hooks/crud.d.ts +1 -0
  22. package/dist/esm/hooks/pager.d.ts +1 -0
  23. package/dist/esm/hooks/service.d.ts +1 -0
  24. package/dist/esm/hooks/shared-state.d.ts +1 -0
  25. package/dist/esm/index.d.ts +1 -0
  26. package/dist/esm/index.js +11 -52
  27. package/dist/esm/libs/remoteData.d.ts +3 -35
  28. package/dist/esm/services/fhir.d.ts +1 -0
  29. package/dist/esm/services/instance.d.ts +1 -0
  30. package/dist/esm/services/search.d.ts +1 -0
  31. package/dist/esm/services/service.d.ts +1 -0
  32. package/dist/esm/services/token.d.ts +1 -0
  33. package/dist/esm/utils/date.d.ts +1 -0
  34. package/dist/esm/utils/error.d.ts +1 -0
  35. package/dist/esm/utils/tests.d.ts +1 -0
  36. package/dist/esm/utils/uuid.d.ts +1 -0
  37. package/dist/index.d.ts +3 -36
  38. package/lib/components/RenderRemoteData/index.d.ts +1 -0
  39. package/lib/components/RenderRemoteData/index.d.ts.map +1 -0
  40. package/lib/hooks/bus.d.ts +1 -0
  41. package/lib/hooks/bus.d.ts.map +1 -0
  42. package/lib/hooks/crud.d.ts +1 -0
  43. package/lib/hooks/crud.d.ts.map +1 -0
  44. package/lib/hooks/pager.d.ts +1 -0
  45. package/lib/hooks/pager.d.ts.map +1 -0
  46. package/lib/hooks/service.d.ts +1 -0
  47. package/lib/hooks/service.d.ts.map +1 -0
  48. package/lib/hooks/service.js +11 -5
  49. package/lib/hooks/service.js.map +1 -1
  50. package/lib/hooks/shared-state.d.ts +1 -0
  51. package/lib/hooks/shared-state.d.ts.map +1 -0
  52. package/lib/index.d.ts +1 -0
  53. package/lib/index.d.ts.map +1 -0
  54. package/lib/libs/remoteData.d.ts +3 -35
  55. package/lib/libs/remoteData.d.ts.map +1 -0
  56. package/lib/libs/remoteData.js +13 -59
  57. package/lib/libs/remoteData.js.map +1 -1
  58. package/lib/services/fhir.d.ts +1 -0
  59. package/lib/services/fhir.d.ts.map +1 -0
  60. package/lib/services/instance.d.ts +1 -0
  61. package/lib/services/instance.d.ts.map +1 -0
  62. package/lib/services/search.d.ts +1 -0
  63. package/lib/services/search.d.ts.map +1 -0
  64. package/lib/services/service.d.ts +1 -0
  65. package/lib/services/service.d.ts.map +1 -0
  66. package/lib/services/token.d.ts +1 -0
  67. package/lib/services/token.d.ts.map +1 -0
  68. package/lib/utils/date.d.ts +1 -0
  69. package/lib/utils/date.d.ts.map +1 -0
  70. package/lib/utils/error.d.ts +1 -0
  71. package/lib/utils/error.d.ts.map +1 -0
  72. package/lib/utils/tests.d.ts +1 -0
  73. package/lib/utils/tests.d.ts.map +1 -0
  74. package/lib/utils/uuid.d.ts +1 -0
  75. package/lib/utils/uuid.d.ts.map +1 -0
  76. package/package.json +4 -3
  77. package/src/hooks/service.ts +10 -1
  78. package/src/libs/remoteData.ts +15 -81
@@ -13,3 +13,4 @@ type RenderRemoteDataProps<S, E = any> = RenderRemoteDataBasicProps<S> & RenderC
13
13
  export declare function RenderRemoteData<S, E = any>(props: RenderRemoteDataProps<S, E>): JSX.Element | null;
14
14
  export declare function withRender<E = any>(config: RenderConfig<E>): <S>(props: RenderRemoteDataProps<S, E>) => JSX.Element;
15
15
  export {};
16
+ //# sourceMappingURL=index.d.ts.map
@@ -15,3 +15,4 @@ export declare function createBus<T extends BaseAction = never>(): {
15
15
  dispatch: Dispatch<T>;
16
16
  };
17
17
  export {};
18
+ //# sourceMappingURL=bus.d.ts.map
@@ -5,3 +5,4 @@ export interface CRUDManager<T> {
5
5
  handleDelete: (resourceToDelete: T) => void;
6
6
  }
7
7
  export declare function useCRUD<T extends AidboxResource>(resourceType: T['resourceType'], id?: string, getOrCreate?: boolean, defaultResource?: Partial<T>): [RemoteData<T>, CRUDManager<T>];
8
+ //# sourceMappingURL=crud.d.ts.map
@@ -11,3 +11,4 @@ export interface PagerManager {
11
11
  currentPage: number;
12
12
  }
13
13
  export declare function usePager<T extends AidboxResource>(resourceType: T['resourceType'], resourcesOnPage?: number, searchParams?: SearchParams): [RemoteData<Bundle<T>>, PagerManager];
14
+ //# sourceMappingURL=pager.d.ts.map
@@ -6,3 +6,4 @@ export interface ServiceManager<S, F> {
6
6
  set: (dataOrFn: S | ((data: S) => S)) => void;
7
7
  }
8
8
  export declare function useService<S = any, F = any>(asyncFunction: () => Promise<RemoteDataResult<S, F>>, deps?: ReadonlyArray<any>): [RemoteData<S, F>, ServiceManager<S, F>];
9
+ //# sourceMappingURL=service.d.ts.map
@@ -7,3 +7,4 @@ export declare class SharedStateInitializationError extends Error {
7
7
  constructor(message?: string);
8
8
  }
9
9
  export declare function createSharedState<S>(initial?: S): StateManager<S>;
10
+ //# sourceMappingURL=shared-state.d.ts.map
@@ -14,3 +14,4 @@ export * from './hooks/crud';
14
14
  export * from './hooks/shared-state';
15
15
  export * from './hooks/pager';
16
16
  export * from './components/RenderRemoteData';
17
+ //# sourceMappingURL=index.d.ts.map
package/dist/cjs/index.js CHANGED
@@ -1,58 +1,9 @@
1
1
  'use strict';
2
2
 
3
+ var remoteData = require('@beda.software/remote-data');
3
4
  var axios = require('axios');
4
5
  var moment = require('moment');
5
6
 
6
- var Status;
7
- (function (Status) {
8
- Status["Success"] = "Success";
9
- Status["Failure"] = "Failure";
10
- Status["Loading"] = "Loading";
11
- Status["NotAsked"] = "NotAsked";
12
- })(Status || (Status = {}));
13
- const notAsked = {
14
- status: Status.NotAsked,
15
- };
16
- const loading = {
17
- status: Status.Loading,
18
- };
19
- function success(data) {
20
- return {
21
- status: Status.Success,
22
- data,
23
- };
24
- }
25
- function failure(error) {
26
- return {
27
- status: Status.Failure,
28
- error,
29
- };
30
- }
31
- function isNotAsked(remoteData) {
32
- return remoteData.status === Status.NotAsked;
33
- }
34
- function isLoading(remoteData) {
35
- return remoteData.status === Status.Loading;
36
- }
37
- function isSuccess(remoteData) {
38
- return remoteData.status === Status.Success;
39
- }
40
- function isSuccessAll(responses) {
41
- return responses.every(isSuccess);
42
- }
43
- function isFailure(remoteData) {
44
- return remoteData.status === Status.Failure;
45
- }
46
- function isFailureAny(responses) {
47
- return responses.some(isFailure);
48
- }
49
- function isLoadingAny(responses) {
50
- return responses.some(isLoading);
51
- }
52
- function isNotAskedAny(responses) {
53
- return responses.some(isNotAsked);
54
- }
55
-
56
7
  const flatten = (list) => list.reduce((a, b) => a.concat(Array.isArray(b) ? flatten(b) : b), []);
57
8
  const encodeEntry = (key, value) => encodeURIComponent(key) + '=' + encodeURIComponent(value);
58
9
  const packEntry = (accumulator, [key, value]) => {
@@ -120,10 +71,10 @@ function service(config) {
120
71
  return __awaiter(this, void 0, void 0, function* () {
121
72
  try {
122
73
  const response = yield axiosInstance(config);
123
- return success(response.data);
74
+ return remoteData.success(response.data);
124
75
  }
125
76
  catch (err) {
126
- return failure(err.response ? err.response.data : err.message);
77
+ return remoteData.failure(err.response ? err.response.data : err.message);
127
78
  }
128
79
  });
129
80
  }
@@ -139,17 +90,17 @@ function applyErrorTransformer(servicePromise, transformer) {
139
90
  return mapFailure(response, transformer);
140
91
  });
141
92
  }
142
- function mapSuccess(remoteData, transformer) {
143
- if (isSuccess(remoteData)) {
144
- return success(transformer(remoteData.data));
93
+ function mapSuccess(remoteData$1, transformer) {
94
+ if (remoteData.isSuccess(remoteData$1)) {
95
+ return remoteData.success(transformer(remoteData$1.data));
145
96
  }
146
- return remoteData;
97
+ return remoteData$1;
147
98
  }
148
- function mapFailure(remoteData, transformer) {
149
- if (isFailure(remoteData)) {
150
- return failure(transformer(remoteData.error));
99
+ function mapFailure(remoteData$1, transformer) {
100
+ if (remoteData.isFailure(remoteData$1)) {
101
+ return remoteData.failure(transformer(remoteData$1.error));
151
102
  }
152
- return remoteData;
103
+ return remoteData$1;
153
104
  }
154
105
  function createKeysMapTransformer(keys) {
155
106
  return (data) => keys.reduce((transformed, key, index) => {
@@ -158,21 +109,21 @@ function createKeysMapTransformer(keys) {
158
109
  }, {});
159
110
  }
160
111
  function sequenceArray(remoteDataArray) {
161
- if (isSuccessAll(remoteDataArray)) {
162
- return success(remoteDataArray.map((remoteDataResult) => remoteDataResult.data));
112
+ if (remoteData.isSuccessAll(remoteDataArray)) {
113
+ return remoteData.success(remoteDataArray.map((remoteDataResult) => remoteDataResult.data));
163
114
  }
164
- if (isFailureAny(remoteDataArray)) {
165
- return failure(remoteDataArray.reduce((accumulator, remoteDataResult) => {
166
- if (isFailure(remoteDataResult)) {
115
+ if (remoteData.isFailureAny(remoteDataArray)) {
116
+ return remoteData.failure(remoteDataArray.reduce((accumulator, remoteDataResult) => {
117
+ if (remoteData.isFailure(remoteDataResult)) {
167
118
  accumulator.push(remoteDataResult.error);
168
119
  }
169
120
  return accumulator;
170
121
  }, []));
171
122
  }
172
- if (isLoadingAny(remoteDataArray)) {
173
- return loading;
123
+ if (remoteData.isLoadingAny(remoteDataArray)) {
124
+ return remoteData.loading;
174
125
  }
175
- return notAsked;
126
+ return remoteData.notAsked;
176
127
  }
177
128
  function sequenceMap(remoteDataMap) {
178
129
  const keys = Object.keys(remoteDataMap);
@@ -316,7 +267,7 @@ function getAllFHIRResources(resourceType, params, extraPath) {
316
267
  var _a;
317
268
  return __awaiter(this, void 0, void 0, function* () {
318
269
  const resultBundleResponse = yield getFHIRResources(resourceType, params, extraPath);
319
- if (isFailure(resultBundleResponse)) {
270
+ if (remoteData.isFailure(resultBundleResponse)) {
320
271
  return resultBundleResponse;
321
272
  }
322
273
  let resultBundle = resultBundleResponse.data;
@@ -331,12 +282,12 @@ function getAllFHIRResources(resourceType, params, extraPath) {
331
282
  method: 'GET',
332
283
  url: nextLink.url,
333
284
  });
334
- if (isFailure(response)) {
285
+ if (remoteData.isFailure(response)) {
335
286
  return response;
336
287
  }
337
288
  resultBundle = Object.assign(Object.assign({}, response.data), { entry: [...resultBundle.entry, ...response.data.entry] });
338
289
  }
339
- return success(resultBundle);
290
+ return remoteData.success(resultBundle);
340
291
  });
341
292
  }
342
293
  function list(resourceType, searchParams, extraPath) {
@@ -349,18 +300,18 @@ function list(resourceType, searchParams, extraPath) {
349
300
  function findFHIRResource(resourceType, params, extraPath) {
350
301
  return __awaiter(this, void 0, void 0, function* () {
351
302
  const response = yield getFHIRResources(resourceType, params, extraPath);
352
- if (isFailure(response)) {
303
+ if (remoteData.isFailure(response)) {
353
304
  return response;
354
305
  }
355
306
  const resources = extractBundleResources(response.data)[resourceType];
356
307
  if (resources.length === 1) {
357
- return success(resources[0]);
308
+ return remoteData.success(resources[0]);
358
309
  }
359
310
  else if (resources.length === 0) {
360
- return failure({ error_description: 'No resources found', error: 'no_resources_found' });
311
+ return remoteData.failure({ error_description: 'No resources found', error: 'no_resources_found' });
361
312
  }
362
313
  else {
363
- return failure({
314
+ return remoteData.failure({
364
315
  error_description: 'Too many resources found',
365
316
  error: 'too_many_resources_found',
366
317
  });
@@ -666,13 +617,13 @@ function withRootAccess(fn) {
666
617
  });
667
618
  }
668
619
  function ensure(result) {
669
- if (isSuccess(result)) {
620
+ if (remoteData.isSuccess(result)) {
670
621
  return result.data;
671
622
  }
672
623
  throw new Error(`Network error ${JSON.stringify(result)}`);
673
624
  }
674
625
  function investigate(result) {
675
- if (isFailure(result)) {
626
+ if (remoteData.isFailure(result)) {
676
627
  return result.error;
677
628
  }
678
629
  throw new Error(`Nothing to investigate for ${JSON.stringify(result)}`);
@@ -3024,7 +2975,7 @@ function createBus() {
3024
2975
  // b.useBus('__super_error__', () => {}, []);
3025
2976
 
3026
2977
  function useService(asyncFunction, deps = []) {
3027
- const [remoteData, setRemoteData] = react.exports.useState(notAsked);
2978
+ const [remoteData$1, setRemoteData] = react.exports.useState(remoteData.notAsked);
3028
2979
  const [reloadsCount, setReloadsCount] = react.exports.useState(0);
3029
2980
  const reload = react.exports.useCallback(() => setReloadsCount((x) => x + 1), []);
3030
2981
  const load = react.exports.useCallback(() => __awaiter(this, void 0, void 0, function* () {
@@ -3032,7 +2983,7 @@ function useService(asyncFunction, deps = []) {
3032
2983
  return yield asyncFunction();
3033
2984
  }
3034
2985
  catch (err) {
3035
- return failure(err.response ? err.response.data : err.message);
2986
+ return remoteData.failure(err.response ? err.response.data : err.message);
3036
2987
  }
3037
2988
  // eslint-disable-next-line react-hooks/exhaustive-deps
3038
2989
  }), deps);
@@ -3043,25 +2994,32 @@ function useService(asyncFunction, deps = []) {
3043
2994
  // eslint-disable-next-line react-hooks/exhaustive-deps
3044
2995
  }), [...deps, load]);
3045
2996
  const reloadAsync = react.exports.useCallback(() => __awaiter(this, void 0, void 0, function* () {
3046
- setRemoteData(loading);
2997
+ setRemoteData(remoteData.loading);
3047
2998
  const response = yield load();
3048
2999
  setRemoteData(response);
3049
3000
  return response;
3050
3001
  // eslint-disable-next-line react-hooks/exhaustive-deps
3051
3002
  }), [...deps, load]);
3052
3003
  react.exports.useEffect(() => {
3004
+ let cancelled = false;
3053
3005
  (() => __awaiter(this, void 0, void 0, function* () {
3054
- setRemoteData(loading);
3055
- setRemoteData(yield load());
3006
+ setRemoteData(remoteData.loading);
3007
+ const response = yield load();
3008
+ if (!cancelled) {
3009
+ setRemoteData(response);
3010
+ }
3056
3011
  }))();
3012
+ return () => {
3013
+ cancelled = true;
3014
+ };
3057
3015
  // eslint-disable-next-line react-hooks/exhaustive-deps
3058
3016
  }, [...deps, reloadsCount, load]);
3059
3017
  const set = react.exports.useCallback((dataOrFn) => {
3060
3018
  if (typeof dataOrFn === 'function') {
3061
- setRemoteData((rd) => (isSuccess(rd) ? success(dataOrFn(rd.data)) : rd));
3019
+ setRemoteData((rd) => (remoteData.isSuccess(rd) ? remoteData.success(dataOrFn(rd.data)) : rd));
3062
3020
  }
3063
3021
  else {
3064
- setRemoteData(success(dataOrFn));
3022
+ setRemoteData(remoteData.success(dataOrFn));
3065
3023
  }
3066
3024
  // eslint-disable-next-line react-hooks/exhaustive-deps
3067
3025
  }, deps);
@@ -3071,47 +3029,47 @@ function useService(asyncFunction, deps = []) {
3071
3029
  softReloadAsync,
3072
3030
  set,
3073
3031
  }), [reload, reloadAsync, softReloadAsync, set]);
3074
- return [remoteData, manager];
3032
+ return [remoteData$1, manager];
3075
3033
  }
3076
3034
 
3077
3035
  function useCRUD(resourceType, id, getOrCreate, defaultResource) {
3078
- const [remoteData, setRemoteData] = react.exports.useState(notAsked);
3036
+ const [remoteData$1, setRemoteData] = react.exports.useState(remoteData.notAsked);
3079
3037
  const makeDefaultResource = react.exports.useCallback(() => (Object.assign(Object.assign({ resourceType }, (id && getOrCreate ? { id } : {})), defaultResource)), [resourceType, defaultResource, id, getOrCreate]);
3080
3038
  react.exports.useEffect(() => {
3081
3039
  (() => __awaiter(this, void 0, void 0, function* () {
3082
3040
  if (id) {
3083
- setRemoteData(loading);
3041
+ setRemoteData(remoteData.loading);
3084
3042
  const response = yield getFHIRResource(makeReference(resourceType, id));
3085
- if (isFailure(response) && getOrCreate) {
3086
- setRemoteData(success(makeDefaultResource()));
3043
+ if (remoteData.isFailure(response) && getOrCreate) {
3044
+ setRemoteData(remoteData.success(makeDefaultResource()));
3087
3045
  }
3088
3046
  else {
3089
3047
  setRemoteData(response);
3090
3048
  }
3091
3049
  }
3092
3050
  else {
3093
- setRemoteData(success(makeDefaultResource()));
3051
+ setRemoteData(remoteData.success(makeDefaultResource()));
3094
3052
  }
3095
3053
  }))();
3096
3054
  }, [getOrCreate, id, makeDefaultResource, resourceType]);
3097
3055
  return [
3098
- remoteData,
3056
+ remoteData$1,
3099
3057
  {
3100
3058
  handleSave: (updatedResource, relatedResources) => __awaiter(this, void 0, void 0, function* () {
3101
3059
  // Why do we need relatedResource here?
3102
3060
  // TODO refactor
3103
- setRemoteData(loading);
3061
+ setRemoteData(remoteData.loading);
3104
3062
  if (relatedResources && relatedResources.length) {
3105
3063
  const bundleResponse = yield saveFHIRResources([updatedResource, ...relatedResources], 'transaction');
3106
- if (isSuccess(bundleResponse)) {
3064
+ if (remoteData.isSuccess(bundleResponse)) {
3107
3065
  const extracted = extractBundleResources(bundleResponse.data);
3108
3066
  if (extracted) {
3109
- const resource = success(extracted[resourceType][0]);
3067
+ const resource = remoteData.success(extracted[resourceType][0]);
3110
3068
  setRemoteData(resource);
3111
3069
  return resource;
3112
3070
  }
3113
3071
  else {
3114
- return failure({ message: 'empty response from server' });
3072
+ return remoteData.failure({ message: 'empty response from server' });
3115
3073
  }
3116
3074
  }
3117
3075
  else {
@@ -3126,7 +3084,7 @@ function useCRUD(resourceType, id, getOrCreate, defaultResource) {
3126
3084
  }
3127
3085
  }),
3128
3086
  handleDelete: (resourceToDelete) => __awaiter(this, void 0, void 0, function* () {
3129
- setRemoteData(loading);
3087
+ setRemoteData(remoteData.loading);
3130
3088
  setRemoteData(yield deleteFHIRResource(getReference(resourceToDelete)));
3131
3089
  }),
3132
3090
  },
@@ -3172,8 +3130,8 @@ function usePager(resourceType, resourcesOnPage = 15, searchParams = {}) {
3172
3130
  const [pageToLoad, setPageToLoad] = react.exports.useState((_a = searchParams._page) !== null && _a !== void 0 ? _a : 1);
3173
3131
  const [reloadsCount, setReloadsCount] = react.exports.useState(0);
3174
3132
  const [resources] = useService(() => getFHIRResources(resourceType, Object.assign(Object.assign({}, searchParams), { _count: resourcesOnPage, _page: pageToLoad })), [pageToLoad, reloadsCount, resourcesOnPage]);
3175
- const hasNext = react.exports.useMemo(() => { var _a; return (isSuccess(resources) ? Boolean((_a = resources.data.link) === null || _a === void 0 ? void 0 : _a.some((link) => link.relation === 'next')) : false); }, [resources]);
3176
- const hasPrevious = react.exports.useMemo(() => { var _a; return isSuccess(resources) ? Boolean((_a = resources.data.link) === null || _a === void 0 ? void 0 : _a.some((link) => link.relation === 'previous')) : false; }, [resources]);
3133
+ const hasNext = react.exports.useMemo(() => { var _a; return (remoteData.isSuccess(resources) ? Boolean((_a = resources.data.link) === null || _a === void 0 ? void 0 : _a.some((link) => link.relation === 'next')) : false); }, [resources]);
3134
+ const hasPrevious = react.exports.useMemo(() => { var _a; return remoteData.isSuccess(resources) ? Boolean((_a = resources.data.link) === null || _a === void 0 ? void 0 : _a.some((link) => link.relation === 'previous')) : false; }, [resources]);
3177
3135
  const loadNext = react.exports.useCallback(() => setPageToLoad((currentPage) => currentPage + 1), []);
3178
3136
  const loadPrevious = react.exports.useCallback(() => setPageToLoad((currentPage) => (hasPrevious ? currentPage - 1 : currentPage)), [hasPrevious]);
3179
3137
  const reload = react.exports.useCallback(() => {
@@ -3201,21 +3159,21 @@ function renderLoadingDefault() {
3201
3159
  return React.createElement(React.Fragment, null, "Loading...");
3202
3160
  }
3203
3161
  function RenderRemoteData(props) {
3204
- const { remoteData, children, renderFailure, renderLoading, renderNotAsked } = props;
3205
- if (isNotAsked(remoteData)) {
3162
+ const { remoteData: remoteData$1, children, renderFailure, renderLoading, renderNotAsked } = props;
3163
+ if (remoteData.isNotAsked(remoteData$1)) {
3206
3164
  return renderNotAsked ? renderNotAsked() : null;
3207
3165
  }
3208
- else if (isLoading(remoteData)) {
3166
+ else if (remoteData.isLoading(remoteData$1)) {
3209
3167
  return (renderLoading !== null && renderLoading !== void 0 ? renderLoading : renderLoadingDefault)();
3210
3168
  }
3211
- else if (isFailure(remoteData)) {
3212
- return (renderFailure !== null && renderFailure !== void 0 ? renderFailure : renderFailureDefault)(remoteData.error);
3169
+ else if (remoteData.isFailure(remoteData$1)) {
3170
+ return (renderFailure !== null && renderFailure !== void 0 ? renderFailure : renderFailureDefault)(remoteData$1.error);
3213
3171
  }
3214
- else if (isSuccess(remoteData)) {
3215
- return children(remoteData.data);
3172
+ else if (remoteData.isSuccess(remoteData$1)) {
3173
+ return children(remoteData$1.data);
3216
3174
  }
3217
3175
  else {
3218
- const n = remoteData;
3176
+ const n = remoteData$1;
3219
3177
  throw new Error(n);
3220
3178
  }
3221
3179
  }
@@ -3225,6 +3183,54 @@ function withRender(config) {
3225
3183
  };
3226
3184
  }
3227
3185
 
3186
+ Object.defineProperty(exports, 'failure', {
3187
+ enumerable: true,
3188
+ get: function () { return remoteData.failure; }
3189
+ });
3190
+ Object.defineProperty(exports, 'isFailure', {
3191
+ enumerable: true,
3192
+ get: function () { return remoteData.isFailure; }
3193
+ });
3194
+ Object.defineProperty(exports, 'isFailureAny', {
3195
+ enumerable: true,
3196
+ get: function () { return remoteData.isFailureAny; }
3197
+ });
3198
+ Object.defineProperty(exports, 'isLoading', {
3199
+ enumerable: true,
3200
+ get: function () { return remoteData.isLoading; }
3201
+ });
3202
+ Object.defineProperty(exports, 'isLoadingAny', {
3203
+ enumerable: true,
3204
+ get: function () { return remoteData.isLoadingAny; }
3205
+ });
3206
+ Object.defineProperty(exports, 'isNotAsked', {
3207
+ enumerable: true,
3208
+ get: function () { return remoteData.isNotAsked; }
3209
+ });
3210
+ Object.defineProperty(exports, 'isNotAskedAny', {
3211
+ enumerable: true,
3212
+ get: function () { return remoteData.isNotAskedAny; }
3213
+ });
3214
+ Object.defineProperty(exports, 'isSuccess', {
3215
+ enumerable: true,
3216
+ get: function () { return remoteData.isSuccess; }
3217
+ });
3218
+ Object.defineProperty(exports, 'isSuccessAll', {
3219
+ enumerable: true,
3220
+ get: function () { return remoteData.isSuccessAll; }
3221
+ });
3222
+ Object.defineProperty(exports, 'loading', {
3223
+ enumerable: true,
3224
+ get: function () { return remoteData.loading; }
3225
+ });
3226
+ Object.defineProperty(exports, 'notAsked', {
3227
+ enumerable: true,
3228
+ get: function () { return remoteData.notAsked; }
3229
+ });
3230
+ Object.defineProperty(exports, 'success', {
3231
+ enumerable: true,
3232
+ get: function () { return remoteData.success; }
3233
+ });
3228
3234
  exports.FHIRDateFormat = FHIRDateFormat;
3229
3235
  exports.FHIRDateTimeFormat = FHIRDateTimeFormat;
3230
3236
  exports.FHIRTimeFormat = FHIRTimeFormat;
@@ -3247,7 +3253,6 @@ exports.extractErrorCode = extractErrorCode;
3247
3253
  exports.extractErrorDescription = extractErrorDescription;
3248
3254
  exports.extractFHIRDate = extractFHIRDate;
3249
3255
  exports.extractFHIRTime = extractFHIRTime;
3250
- exports.failure = failure;
3251
3256
  exports.findFHIRResource = findFHIRResource;
3252
3257
  exports.forceDelete = forceDelete;
3253
3258
  exports.forceDeleteFHIRResource = forceDeleteFHIRResource;
@@ -3269,25 +3274,15 @@ exports.getUserInfo = getUserInfo;
3269
3274
  exports.investigate = investigate;
3270
3275
  exports.isBackendError = isBackendError;
3271
3276
  exports.isFHIRDateEqual = isFHIRDateEqual;
3272
- exports.isFailure = isFailure;
3273
- exports.isFailureAny = isFailureAny;
3274
- exports.isLoading = isLoading;
3275
- exports.isLoadingAny = isLoadingAny;
3276
- exports.isNotAsked = isNotAsked;
3277
- exports.isNotAskedAny = isNotAskedAny;
3278
3277
  exports.isOperationOutcome = isOperationOutcome;
3279
3278
  exports.isReference = isReference;
3280
- exports.isSuccess = isSuccess;
3281
- exports.isSuccessAll = isSuccessAll;
3282
3279
  exports.list = list;
3283
- exports.loading = loading;
3284
3280
  exports.login = login;
3285
3281
  exports.makeFHIRDateTime = makeFHIRDateTime;
3286
3282
  exports.makeReference = makeReference;
3287
3283
  exports.mapFailure = mapFailure;
3288
3284
  exports.mapSuccess = mapSuccess;
3289
3285
  exports.markAsDeleted = markAsDeleted;
3290
- exports.notAsked = notAsked;
3291
3286
  exports.parseFHIRDate = parseFHIRDate;
3292
3287
  exports.parseFHIRDateTime = parseFHIRDateTime;
3293
3288
  exports.parseFHIRTime = parseFHIRTime;
@@ -3305,7 +3300,6 @@ exports.sequenceMap = sequenceMap;
3305
3300
  exports.service = service;
3306
3301
  exports.setInstanceBaseURL = setInstanceBaseURL;
3307
3302
  exports.setInstanceToken = setInstanceToken;
3308
- exports.success = success;
3309
3303
  exports.transformToBundleEntry = transformToBundleEntry;
3310
3304
  exports.update = update;
3311
3305
  exports.updateFHIRResource = updateFHIRResource;
@@ -1,35 +1,3 @@
1
- declare enum Status {
2
- Success = "Success",
3
- Failure = "Failure",
4
- Loading = "Loading",
5
- NotAsked = "NotAsked"
6
- }
7
- interface RemoteDataNotAsked {
8
- status: Status.NotAsked;
9
- }
10
- export declare const notAsked: RemoteDataNotAsked;
11
- interface RemoteDataLoading {
12
- status: Status.Loading;
13
- }
14
- export declare const loading: RemoteDataLoading;
15
- interface RemoteDataSuccess<s> {
16
- status: Status.Success;
17
- data: s;
18
- }
19
- export declare function success<S = any>(data: S): RemoteDataSuccess<S>;
20
- interface RemoteDataFailure<F> {
21
- status: Status.Failure;
22
- error: F;
23
- }
24
- export declare function failure<F = any>(error: F): RemoteDataFailure<F>;
25
- export type RemoteDataResult<S = any, F = any> = RemoteDataSuccess<S> | RemoteDataFailure<F>;
26
- export type RemoteData<S = any, F = any> = RemoteDataNotAsked | RemoteDataLoading | RemoteDataResult<S, F>;
27
- export declare function isNotAsked(remoteData: RemoteData): remoteData is RemoteDataNotAsked;
28
- export declare function isLoading(remoteData: RemoteData): remoteData is RemoteDataLoading;
29
- export declare function isSuccess<S>(remoteData: RemoteData<S>): remoteData is RemoteDataSuccess<S>;
30
- export declare function isSuccessAll<S>(responses: Array<RemoteData<S>>): responses is Array<RemoteDataSuccess<S>>;
31
- export declare function isFailure<F>(remoteData: RemoteData<any, F>): remoteData is RemoteDataFailure<F>;
32
- export declare function isFailureAny<F>(responses: Array<RemoteData<any, F>>): responses is Array<RemoteDataFailure<F>>;
33
- export declare function isLoadingAny(responses: Array<RemoteData>): responses is Array<RemoteDataLoading>;
34
- export declare function isNotAskedAny(responses: Array<RemoteData>): responses is Array<RemoteDataNotAsked>;
35
- export {};
1
+ export type { RemoteDataResult, RemoteData } from '@beda.software/remote-data';
2
+ export { notAsked, loading, success, failure, isNotAsked, isLoading, isSuccess, isSuccessAll, isFailure, isFailureAny, isLoadingAny, isNotAskedAny, } from '@beda.software/remote-data';
3
+ //# sourceMappingURL=remoteData.d.ts.map
@@ -42,3 +42,4 @@ export declare function applyFHIRService<T extends AidboxResource, F = any>(requ
42
42
  export declare function transformToBundleEntry<R extends AidboxResource>(config: AxiosRequestConfig): BundleEntry<R> | null;
43
43
  export declare function applyFHIRServices<T extends AidboxResource, F = any>(requests: Array<AxiosRequestConfig>, type?: 'transaction' | 'batch'): Promise<RemoteDataResult<Bundle<WithId<T>>, F>>;
44
44
  export {};
45
+ //# sourceMappingURL=fhir.d.ts.map
@@ -4,3 +4,4 @@ export declare const axiosInstance: import("axios").AxiosInstance;
4
4
  export declare function setInstanceBaseURL(baseURL: string): void;
5
5
  export declare function setInstanceToken(token: Token): void;
6
6
  export declare function resetInstanceToken(): void;
7
+ //# sourceMappingURL=instance.d.ts.map
@@ -2,3 +2,4 @@ export type SearchParam<T> = T | T[] | undefined;
2
2
  export interface SearchParams {
3
3
  [key: string]: SearchParam<string | number | boolean>;
4
4
  }
5
+ //# sourceMappingURL=search.d.ts.map
@@ -31,3 +31,4 @@ export declare function resolveMap<I, F>(promiseMap: PromiseRemoteDataResultMap<
31
31
  export declare function resolveMap<I, F>(promiseMap: PromiseRemoteDataMap<I, F>): Promise<RemoteData<I, F[]>>;
32
32
  export declare function resolveServiceMap<I, F>(promiseMap: PromiseRemoteDataResultMap<I, F>): Promise<RemoteDataResult<I, F[]>>;
33
33
  export declare function resolveServiceMap<I, F>(promiseMap: PromiseRemoteDataMap<I, F>): Promise<RemoteData<I, F[]>>;
34
+ //# sourceMappingURL=service.d.ts.map
@@ -3,3 +3,4 @@ export interface Token {
3
3
  token_type: string;
4
4
  refresh_token?: string;
5
5
  }
6
+ //# sourceMappingURL=token.d.ts.map
@@ -12,3 +12,4 @@ export declare const makeFHIRDateTime: (date: string, time?: string) => string;
12
12
  export declare const extractFHIRDate: (date: string) => string;
13
13
  export declare const extractFHIRTime: (date: string) => string;
14
14
  export declare const isFHIRDateEqual: (date1: string, date2: string) => boolean;
15
+ //# sourceMappingURL=date.d.ts.map
@@ -28,3 +28,4 @@ export declare function extractErrorCode(error: any): string;
28
28
  export declare function isOperationOutcome(error: any): error is OperationOutcome;
29
29
  export declare function isBackendError(error: any): error is BackendError;
30
30
  export {};
31
+ //# sourceMappingURL=error.d.ts.map
@@ -8,3 +8,4 @@ export declare function investigate<R = any>(result: RemoteData<unknown, R>): R;
8
8
  export declare function getToken(user: User, loginService: LoginService): Promise<Token>;
9
9
  export declare function login(user: User, loginService: LoginService): Promise<Token>;
10
10
  export declare function getUserInfo(): Promise<User>;
11
+ //# sourceMappingURL=tests.d.ts.map
@@ -1 +1,2 @@
1
1
  export declare function uuid4(): string;
2
+ //# sourceMappingURL=uuid.d.ts.map
@@ -13,3 +13,4 @@ type RenderRemoteDataProps<S, E = any> = RenderRemoteDataBasicProps<S> & RenderC
13
13
  export declare function RenderRemoteData<S, E = any>(props: RenderRemoteDataProps<S, E>): JSX.Element | null;
14
14
  export declare function withRender<E = any>(config: RenderConfig<E>): <S>(props: RenderRemoteDataProps<S, E>) => JSX.Element;
15
15
  export {};
16
+ //# sourceMappingURL=index.d.ts.map
@@ -15,3 +15,4 @@ export declare function createBus<T extends BaseAction = never>(): {
15
15
  dispatch: Dispatch<T>;
16
16
  };
17
17
  export {};
18
+ //# sourceMappingURL=bus.d.ts.map
@@ -5,3 +5,4 @@ export interface CRUDManager<T> {
5
5
  handleDelete: (resourceToDelete: T) => void;
6
6
  }
7
7
  export declare function useCRUD<T extends AidboxResource>(resourceType: T['resourceType'], id?: string, getOrCreate?: boolean, defaultResource?: Partial<T>): [RemoteData<T>, CRUDManager<T>];
8
+ //# sourceMappingURL=crud.d.ts.map
@@ -11,3 +11,4 @@ export interface PagerManager {
11
11
  currentPage: number;
12
12
  }
13
13
  export declare function usePager<T extends AidboxResource>(resourceType: T['resourceType'], resourcesOnPage?: number, searchParams?: SearchParams): [RemoteData<Bundle<T>>, PagerManager];
14
+ //# sourceMappingURL=pager.d.ts.map
@@ -6,3 +6,4 @@ export interface ServiceManager<S, F> {
6
6
  set: (dataOrFn: S | ((data: S) => S)) => void;
7
7
  }
8
8
  export declare function useService<S = any, F = any>(asyncFunction: () => Promise<RemoteDataResult<S, F>>, deps?: ReadonlyArray<any>): [RemoteData<S, F>, ServiceManager<S, F>];
9
+ //# sourceMappingURL=service.d.ts.map
@@ -7,3 +7,4 @@ export declare class SharedStateInitializationError extends Error {
7
7
  constructor(message?: string);
8
8
  }
9
9
  export declare function createSharedState<S>(initial?: S): StateManager<S>;
10
+ //# sourceMappingURL=shared-state.d.ts.map
@@ -14,3 +14,4 @@ export * from './hooks/crud';
14
14
  export * from './hooks/shared-state';
15
15
  export * from './hooks/pager';
16
16
  export * from './components/RenderRemoteData';
17
+ //# sourceMappingURL=index.d.ts.map