@aehrc/smart-forms-renderer 0.9.1 → 0.9.2
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/lib/components/Renderer/SmartFormsRenderer.js.map +1 -1
- package/lib/stores/selector.d.ts +10 -0
- package/lib/stores/selector.js +11 -0
- package/lib/stores/selector.js.map +1 -0
- package/package.json +2 -2
- package/src/components/Renderer/SmartFormsRenderer.tsx +0 -1
- package/src/stores/selector.ts +16 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SmartFormsRenderer.js","sourceRoot":"","sources":["../../../src/components/Renderer/SmartFormsRenderer.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,aAAa,MAAM,mBAAmB,CAAC;AAE9C,OAAO,qBAAqB,MAAM,mCAAmC,CAAC;AACtE,OAAO,GAAG,MAAM,mBAAmB,CAAC;AACpC,OAAO,gBAAgB,MAAM,gCAAgC,CAAC;AAC9D,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAElD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,cAAc,MAAM,4BAA4B,CAAC;AACxD,OAAO,YAAY,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"SmartFormsRenderer.js","sourceRoot":"","sources":["../../../src/components/Renderer/SmartFormsRenderer.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,aAAa,MAAM,mBAAmB,CAAC;AAE9C,OAAO,qBAAqB,MAAM,mCAAmC,CAAC;AACtE,OAAO,GAAG,MAAM,mBAAmB,CAAC;AACpC,OAAO,gBAAgB,MAAM,gCAAgC,CAAC;AAC9D,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAElD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,cAAc,MAAM,4BAA4B,CAAC;AACxD,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAW1C,SAAS,kBAAkB,CAAC,KAA8B;IACxD,MAAM,EACJ,aAAa,EACb,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,UAAU,EACX,GAAG,KAAK,CAAC;IAEV,MAAM,SAAS,GAAG,qBAAqB,CACrC,aAAa,EACb,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,UAAU,CACX,CAAC;IACF,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IAErC,IAAI,SAAS,EAAE;QACb,OAAO,CACL,oBAAC,GAAG,IAAC,OAAO,EAAC,MAAM,EAAC,UAAU,EAAC,QAAQ,EAAC,SAAS,EAAE,CAAC;YAClD,oBAAC,gBAAgB,OAAG;YACpB,oBAAC,UAAU,mCAAsC,CAC7C,CACP,CAAC;KACH;IAED,OAAO,CACL,oBAAC,aAAa;QACZ,oBAAC,mBAAmB,IAAC,MAAM,EAAE,WAAW;YACtC,oBAAC,YAAY,OAAG,CACI,CACR,CACjB,CAAC;AACJ,CAAC;AAED,eAAe,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { StoreApi } from 'zustand';
|
|
2
|
+
type WithSelectors<S> = S extends {
|
|
3
|
+
getState: () => infer T;
|
|
4
|
+
} ? S & {
|
|
5
|
+
use: {
|
|
6
|
+
[K in keyof T]: () => T[K];
|
|
7
|
+
};
|
|
8
|
+
} : never;
|
|
9
|
+
export declare const createSelectors: <S extends StoreApi<object>>(_store: S) => WithSelectors<S>;
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { useStore } from 'zustand';
|
|
2
|
+
export const createSelectors = (_store) => {
|
|
3
|
+
const store = _store;
|
|
4
|
+
store.use = {};
|
|
5
|
+
for (const k of Object.keys(store.getState())) {
|
|
6
|
+
// eslint-disable-next-line react-hooks/rules-of-hooks
|
|
7
|
+
store.use[k] = () => useStore(_store, (s) => s[k]);
|
|
8
|
+
}
|
|
9
|
+
return store;
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=selector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"selector.js","sourceRoot":"","sources":["../../src/stores/selector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,QAAQ,EAAE,MAAM,SAAS,CAAC;AAM7C,MAAM,CAAC,MAAM,eAAe,GAAG,CAA6B,MAAS,EAAE,EAAE;IACvE,MAAM,KAAK,GAAG,MAAsC,CAAC;IACrD,KAAK,CAAC,GAAG,GAAG,EAAE,CAAC;IACf,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE;QAC7C,sDAAsD;QACrD,KAAK,CAAC,GAAW,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAmB,CAAC,CAAC,CAAC;KAC/E;IAED,OAAO,KAAK,CAAC;AACf,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aehrc/smart-forms-renderer",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.2",
|
|
4
4
|
"description": "FHIR Structured Data Captured (SDC) rendering engine for Smart Forms",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
"deep-diff": "^1.0.2",
|
|
31
31
|
"fhirclient": "^2.5.2",
|
|
32
32
|
"fhirpath": "^3.7.1",
|
|
33
|
-
"html-react-parser": "^5.0.
|
|
33
|
+
"html-react-parser": "^5.0.6",
|
|
34
34
|
"lodash.clonedeep": "^4.5.0",
|
|
35
35
|
"lodash.debounce": "^4.0.8",
|
|
36
36
|
"nanoid": "^5.0.1",
|
|
@@ -34,7 +34,6 @@ interface SmartFormsRendererProps {
|
|
|
34
34
|
additionalVariables?: Record<string, object>;
|
|
35
35
|
terminologyServerUrl?: string;
|
|
36
36
|
fhirClient?: Client;
|
|
37
|
-
// getResponseCallback: (response: QuestionnaireResponse) => void;
|
|
38
37
|
}
|
|
39
38
|
|
|
40
39
|
function SmartFormsRenderer(props: SmartFormsRendererProps) {
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { StoreApi, useStore } from 'zustand';
|
|
2
|
+
|
|
3
|
+
type WithSelectors<S> = S extends { getState: () => infer T }
|
|
4
|
+
? S & { use: { [K in keyof T]: () => T[K] } }
|
|
5
|
+
: never;
|
|
6
|
+
|
|
7
|
+
export const createSelectors = <S extends StoreApi<object>>(_store: S) => {
|
|
8
|
+
const store = _store as WithSelectors<typeof _store>;
|
|
9
|
+
store.use = {};
|
|
10
|
+
for (const k of Object.keys(store.getState())) {
|
|
11
|
+
// eslint-disable-next-line react-hooks/rules-of-hooks
|
|
12
|
+
(store.use as any)[k] = () => useStore(_store, (s) => s[k as keyof typeof s]);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
return store;
|
|
16
|
+
};
|