aidbox-react 1.4.0 → 1.5.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/CHANGELOG.md ADDED
@@ -0,0 +1,28 @@
1
+ ## 1.5.0
2
+
3
+ - Fix useService hook performance
4
+
5
+ ## 1.4.0
6
+
7
+ - Add softReloadAsync ans reloadAsync to useService manager
8
+
9
+ ## 1.3.3
10
+
11
+ - Adjust the code for new ts
12
+
13
+ ## 1.3.2
14
+
15
+ - Fix build
16
+
17
+ ## 1.3.0
18
+
19
+ - findFHIRResources uses getFHIRResources under the hood
20
+ - formatError respects OperationOutcome.issue.diagnostics in addition to OperationOutcome.issue.details.text
21
+
22
+ ## 1.2.0
23
+
24
+ - All requests helpers from FHIR module returns Resources wrapped with WithId type-wrapper.
25
+
26
+ ## 1.1.1
27
+
28
+ - Stable release
@@ -68,22 +68,22 @@ function useService(asyncFunction, deps) {
68
68
  }); })();
69
69
  // eslint-disable-next-line react-hooks/exhaustive-deps
70
70
  }, tslib_1.__spreadArrays(deps, [reloadsCount, load]));
71
- return [
72
- remoteData,
73
- {
74
- reload: reload,
75
- reloadAsync: reloadAsync,
76
- softReloadAsync: softReloadAsync,
77
- set: function (dataOrFn) {
78
- if (typeof dataOrFn === 'function') {
79
- setRemoteData(function (rd) { return (remoteData_1.isSuccess(rd) ? remoteData_1.success(dataOrFn(rd.data)) : rd); });
80
- }
81
- else {
82
- setRemoteData(remoteData_1.success(dataOrFn));
83
- }
84
- },
85
- },
86
- ];
71
+ var set = react_1.useCallback(function (dataOrFn) {
72
+ if (typeof dataOrFn === 'function') {
73
+ setRemoteData(function (rd) { return (remoteData_1.isSuccess(rd) ? remoteData_1.success(dataOrFn(rd.data)) : rd); });
74
+ }
75
+ else {
76
+ setRemoteData(remoteData_1.success(dataOrFn));
77
+ }
78
+ // eslint-disable-next-line react-hooks/exhaustive-deps
79
+ }, deps);
80
+ var manager = react_1.useMemo(function () { return ({
81
+ reload: reload,
82
+ reloadAsync: reloadAsync,
83
+ softReloadAsync: softReloadAsync,
84
+ set: set,
85
+ }); }, [reload, reloadAsync, softReloadAsync, set]);
86
+ return [remoteData, manager];
87
87
  }
88
88
  exports.useService = useService;
89
89
  //# sourceMappingURL=service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/hooks/service.ts"],"names":[],"mappings":";;;;AAAA,+BAAyD;AAEzD,iDAAkH;AAalH,SAAgB,UAAU,CACtB,aAAoD,EACpD,IAA6B;IAFjC,iBAyDC;IAvDG,qBAAA,EAAA,SAA6B;IAEvB,IAAA,KAA8B,gBAAQ,CAAmB,qBAAQ,CAAC,EAAjE,UAAU,QAAA,EAAE,aAAa,QAAwC,CAAC;IACnE,IAAA,KAAkC,gBAAQ,CAAC,CAAC,CAAC,EAA5C,YAAY,QAAA,EAAE,eAAe,QAAe,CAAC;IACpD,IAAM,MAAM,GAAG,mBAAW,CAAC,cAAM,OAAA,eAAe,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,GAAG,CAAC,EAAL,CAAK,CAAC,EAA7B,CAA6B,EAAE,EAAE,CAAC,CAAC;IAEpE,IAAM,IAAI,GAAG,mBAAW,CAAC;;;;;;oBAEV,qBAAM,aAAa,EAAE,EAAA;wBAA5B,sBAAO,SAAqB,EAAC;;;oBAE7B,sBAAO,oBAAO,CAAC,KAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,KAAG,CAAC,OAAO,CAAC,EAAC;;;;SAGtE,EAAE,IAAI,CAAC,CAAC;IAET,IAAM,eAAe,GAAG,mBAAW,CAAC;;;;wBACf,qBAAM,IAAI,EAAE,EAAA;;oBAAvB,QAAQ,GAAG,SAAY;oBAC7B,aAAa,CAAC,QAAQ,CAAC,CAAC;oBAExB,sBAAO,QAAQ,EAAC;;;SAEnB,yBAAM,IAAI,GAAE,IAAI,GAAE,CAAC;IAEpB,IAAM,WAAW,GAAG,mBAAW,CAAC;;;;;oBAC5B,aAAa,CAAC,oBAAO,CAAC,CAAC;oBACN,qBAAM,IAAI,EAAE,EAAA;;oBAAvB,QAAQ,GAAG,SAAY;oBAC7B,aAAa,CAAC,QAAQ,CAAC,CAAC;oBAExB,sBAAO,QAAQ,EAAC;;;SAEnB,yBAAM,IAAI,GAAE,IAAI,GAAE,CAAC;IAEpB,iBAAS,CAAC;QACN,CAAC;;;;;wBACG,aAAa,CAAC,oBAAO,CAAC,CAAC;wBACvB,KAAA,aAAa,CAAA;wBAAC,qBAAM,IAAI,EAAE,EAAA;;wBAA1B,kBAAc,SAAY,EAAC,CAAC;;;;aAC/B,CAAC,EAAE,CAAC;QACL,uDAAuD;IAC3D,CAAC,yBAAM,IAAI,GAAE,YAAY,EAAE,IAAI,GAAE,CAAC;IAElC,OAAO;QACH,UAAU;QACV;YACI,MAAM,QAAA;YACN,WAAW,aAAA;YACX,eAAe,iBAAA;YACf,GAAG,EAAE,UAAC,QAA8B;gBAChC,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE;oBAChC,aAAa,CAAC,UAAC,EAAE,IAAK,OAAA,CAAC,sBAAS,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,oBAAO,CAAE,QAA2B,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAArE,CAAqE,CAAC,CAAC;iBAChG;qBAAM;oBACH,aAAa,CAAC,oBAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;iBACpC;YACL,CAAC;SACJ;KACJ,CAAC;AACN,CAAC;AAzDD,gCAyDC"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/hooks/service.ts"],"names":[],"mappings":";;;;AAAA,+BAAkE;AAElE,iDAAkH;AAalH,SAAgB,UAAU,CACtB,aAAoD,EACpD,IAA6B;IAFjC,iBA8DC;IA5DG,qBAAA,EAAA,SAA6B;IAEvB,IAAA,KAA8B,gBAAQ,CAAmB,qBAAQ,CAAC,EAAjE,UAAU,QAAA,EAAE,aAAa,QAAwC,CAAC;IACnE,IAAA,KAAkC,gBAAQ,CAAC,CAAC,CAAC,EAA5C,YAAY,QAAA,EAAE,eAAe,QAAe,CAAC;IACpD,IAAM,MAAM,GAAG,mBAAW,CAAC,cAAM,OAAA,eAAe,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,GAAG,CAAC,EAAL,CAAK,CAAC,EAA7B,CAA6B,EAAE,EAAE,CAAC,CAAC;IAEpE,IAAM,IAAI,GAAG,mBAAW,CAAC;;;;;;oBAEV,qBAAM,aAAa,EAAE,EAAA;wBAA5B,sBAAO,SAAqB,EAAC;;;oBAE7B,sBAAO,oBAAO,CAAC,KAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,KAAG,CAAC,OAAO,CAAC,EAAC;;;;SAGtE,EAAE,IAAI,CAAC,CAAC;IAET,IAAM,eAAe,GAAG,mBAAW,CAAC;;;;wBACf,qBAAM,IAAI,EAAE,EAAA;;oBAAvB,QAAQ,GAAG,SAAY;oBAC7B,aAAa,CAAC,QAAQ,CAAC,CAAC;oBAExB,sBAAO,QAAQ,EAAC;;;SAEnB,yBAAM,IAAI,GAAE,IAAI,GAAE,CAAC;IAEpB,IAAM,WAAW,GAAG,mBAAW,CAAC;;;;;oBAC5B,aAAa,CAAC,oBAAO,CAAC,CAAC;oBACN,qBAAM,IAAI,EAAE,EAAA;;oBAAvB,QAAQ,GAAG,SAAY;oBAC7B,aAAa,CAAC,QAAQ,CAAC,CAAC;oBAExB,sBAAO,QAAQ,EAAC;;;SAEnB,yBAAM,IAAI,GAAE,IAAI,GAAE,CAAC;IAEpB,iBAAS,CAAC;QACN,CAAC;;;;;wBACG,aAAa,CAAC,oBAAO,CAAC,CAAC;wBACvB,KAAA,aAAa,CAAA;wBAAC,qBAAM,IAAI,EAAE,EAAA;;wBAA1B,kBAAc,SAAY,EAAC,CAAC;;;;aAC/B,CAAC,EAAE,CAAC;QACL,uDAAuD;IAC3D,CAAC,yBAAM,IAAI,GAAE,YAAY,EAAE,IAAI,GAAE,CAAC;IAElC,IAAM,GAAG,GAAG,mBAAW,CAAC,UAAC,QAA8B;QACnD,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE;YAChC,aAAa,CAAC,UAAC,EAAE,IAAK,OAAA,CAAC,sBAAS,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,oBAAO,CAAE,QAA2B,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAArE,CAAqE,CAAC,CAAC;SAChG;aAAM;YACH,aAAa,CAAC,oBAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;SACpC;QACD,uDAAuD;IAC3D,CAAC,EAAE,IAAI,CAAC,CAAC;IAET,IAAM,OAAO,GAAG,eAAO,CACnB,cAAM,OAAA,CAAC;QACH,MAAM,QAAA;QACN,WAAW,aAAA;QACX,eAAe,iBAAA;QACf,GAAG,KAAA;KACN,CAAC,EALI,CAKJ,EACF,CAAC,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,GAAG,CAAC,CAC9C,CAAC;IAEF,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;AACjC,CAAC;AA9DD,gCA8DC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "aidbox-react",
3
- "version": "1.4.0",
3
+ "version": "1.5.0",
4
4
  "scripts": {
5
5
  "build": "tsc",
6
6
  "coverage": "jest --config=./jest.config.json --coverage --coverageReporters=text-lcov | coveralls",
@@ -1,4 +1,4 @@
1
- import { useEffect, useState, useCallback } from 'react';
1
+ import { useEffect, useState, useCallback, useMemo } from 'react';
2
2
 
3
3
  import { loading, notAsked, RemoteData, RemoteDataResult, success, failure, isSuccess } from '../libs/remoteData';
4
4
 
@@ -55,19 +55,24 @@ export function useService<S = any, F = any>(
55
55
  // eslint-disable-next-line react-hooks/exhaustive-deps
56
56
  }, [...deps, reloadsCount, load]);
57
57
 
58
- return [
59
- remoteData,
60
- {
58
+ const set = useCallback((dataOrFn: S | ((data: S) => S)) => {
59
+ if (typeof dataOrFn === 'function') {
60
+ setRemoteData((rd) => (isSuccess(rd) ? success((dataOrFn as (data: S) => S)(rd.data)) : rd));
61
+ } else {
62
+ setRemoteData(success(dataOrFn));
63
+ }
64
+ // eslint-disable-next-line react-hooks/exhaustive-deps
65
+ }, deps);
66
+
67
+ const manager = useMemo(
68
+ () => ({
61
69
  reload,
62
70
  reloadAsync,
63
71
  softReloadAsync,
64
- set: (dataOrFn: S | ((data: S) => S)) => {
65
- if (typeof dataOrFn === 'function') {
66
- setRemoteData((rd) => (isSuccess(rd) ? success((dataOrFn as (data: S) => S)(rd.data)) : rd));
67
- } else {
68
- setRemoteData(success(dataOrFn));
69
- }
70
- },
71
- },
72
- ];
72
+ set,
73
+ }),
74
+ [reload, reloadAsync, softReloadAsync, set]
75
+ );
76
+
77
+ return [remoteData, manager];
73
78
  }