@oneblink/apps-react 6.10.0-beta.3 → 6.10.0-beta.4
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.
@@ -1,6 +1,7 @@
|
|
1
1
|
import { Sentry } from '@oneblink/apps';
|
2
2
|
import * as React from 'react';
|
3
3
|
import { conditionalLogicService } from '@oneblink/sdk-core';
|
4
|
+
import cleanFormSubmissionModel from '../services/cleanFormSubmissionModel';
|
4
5
|
export default function useConditionalLogic(definition, submission) {
|
5
6
|
const [conditionalLogicError, setConditionalLogicError] = React.useState();
|
6
7
|
const errorCallback = React.useCallback((error) => {
|
@@ -20,14 +21,20 @@ export default function useConditionalLogic(definition, submission) {
|
|
20
21
|
return true;
|
21
22
|
}
|
22
23
|
const { requiresAllConditionalPredicates, conditionalPredicates } = definition.enableSubmission;
|
24
|
+
const { model } = cleanFormSubmissionModel(submission, definition.elements, formElementsConditionallyShown, true);
|
23
25
|
return conditionalLogicService.evaluateConditionalPredicates({
|
24
26
|
isConditional: true,
|
25
27
|
requiresAllConditionalPredicates,
|
26
28
|
conditionalPredicates,
|
27
29
|
formElements: definition.elements,
|
28
|
-
submission,
|
30
|
+
submission: model,
|
29
31
|
});
|
30
|
-
}, [
|
32
|
+
}, [
|
33
|
+
definition.elements,
|
34
|
+
definition.enableSubmission,
|
35
|
+
formElementsConditionallyShown,
|
36
|
+
submission,
|
37
|
+
]);
|
31
38
|
return {
|
32
39
|
conditionalLogicError,
|
33
40
|
formElementsConditionallyShown,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useConditionalLogic.js","sourceRoot":"","sources":["../../src/hooks/useConditionalLogic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAEvC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAA;
|
1
|
+
{"version":3,"file":"useConditionalLogic.js","sourceRoot":"","sources":["../../src/hooks/useConditionalLogic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAEvC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAA;AAG5D,OAAO,wBAAwB,MAAM,sCAAsC,CAAA;AAE3E,MAAM,CAAC,OAAO,UAAU,mBAAmB,CACzC,UAA0B,EAC1B,UAA0D;IAE1D,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,CAAC,GAAG,KAAK,CAAC,QAAQ,EAErE,CAAA;IAEH,MAAM,aAAa,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,KAAY,EAAE,EAAE;QACvD,OAAO,CAAC,IAAI,CAAC,wCAAwC,EAAE,KAAK,CAAC,CAAA;QAC7D,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAA;QAC9B,wBAAwB,CAAC,KAAK,CAAC,CAAA;IACjC,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,8BAA8B,GAClC,KAAK,CAAC,OAAO,CAAiC,GAAG,EAAE;QACjD,OAAO,uBAAuB,CAAC,sCAAsC,CAAC;YACpE,YAAY,EAAE,UAAU,CAAC,QAAQ;YACjC,UAAU;YACV,aAAa;SACd,CAAC,CAAA;IACJ,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC,CAAA;IAEtD,MAAM,8BAA8B,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACxD,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC;YACjC,OAAO,IAAI,CAAA;QACb,CAAC;QACD,MAAM,EAAE,gCAAgC,EAAE,qBAAqB,EAAE,GAC/D,UAAU,CAAC,gBAAgB,CAAA;QAC7B,MAAM,EAAE,KAAK,EAAE,GAAG,wBAAwB,CACxC,UAAU,EACV,UAAU,CAAC,QAAQ,EACnB,8BAA8B,EAC9B,IAAI,CACL,CAAA;QACD,OAAO,uBAAuB,CAAC,6BAA6B,CAAC;YAC3D,aAAa,EAAE,IAAI;YACnB,gCAAgC;YAChC,qBAAqB;YACrB,YAAY,EAAE,UAAU,CAAC,QAAQ;YACjC,UAAU,EAAE,KAAK;SAClB,CAAC,CAAA;IACJ,CAAC,EAAE;QACD,UAAU,CAAC,QAAQ;QACnB,UAAU,CAAC,gBAAgB;QAC3B,8BAA8B;QAC9B,UAAU;KACX,CAAC,CAAA;IAEF,OAAO;QACL,qBAAqB;QACrB,8BAA8B;QAC9B,8BAA8B;KAC/B,CAAA;AACH,CAAC","sourcesContent":["import { Sentry } from '@oneblink/apps'\nimport { FormTypes, SubmissionTypes } from '@oneblink/types'\nimport * as React from 'react'\nimport { conditionalLogicService } from '@oneblink/sdk-core'\n\nimport { FormElementsConditionallyShown } from '../types/form'\nimport cleanFormSubmissionModel from '../services/cleanFormSubmissionModel'\n\nexport default function useConditionalLogic(\n definition: FormTypes.Form,\n submission: SubmissionTypes.S3SubmissionData['submission'],\n) {\n const [conditionalLogicError, setConditionalLogicError] = React.useState<\n Error | undefined\n >()\n\n const errorCallback = React.useCallback((error: Error) => {\n console.warn('Error while checking conditional logic', error)\n Sentry.captureException(error)\n setConditionalLogicError(error)\n }, [])\n\n const formElementsConditionallyShown =\n React.useMemo<FormElementsConditionallyShown>(() => {\n return conditionalLogicService.generateFormElementsConditionallyShown({\n formElements: definition.elements,\n submission,\n errorCallback,\n })\n }, [definition.elements, submission, errorCallback])\n\n const submissionConditionallyEnabled = React.useMemo(() => {\n if (!definition.enableSubmission) {\n return true\n }\n const { requiresAllConditionalPredicates, conditionalPredicates } =\n definition.enableSubmission\n const { model } = cleanFormSubmissionModel(\n submission,\n definition.elements,\n formElementsConditionallyShown,\n true,\n )\n return conditionalLogicService.evaluateConditionalPredicates({\n isConditional: true,\n requiresAllConditionalPredicates,\n conditionalPredicates,\n formElements: definition.elements,\n submission: model,\n })\n }, [\n definition.elements,\n definition.enableSubmission,\n formElementsConditionallyShown,\n submission,\n ])\n\n return {\n conditionalLogicError,\n formElementsConditionallyShown,\n submissionConditionallyEnabled,\n }\n}\n"]}
|
package/package.json
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"name": "@oneblink/apps-react",
|
3
3
|
"description": "Helper functions for OneBlink apps in ReactJS.",
|
4
|
-
"version": "6.10.0-beta.
|
4
|
+
"version": "6.10.0-beta.4",
|
5
5
|
"author": "OneBlink <developers@oneblink.io> (https://oneblink.io)",
|
6
6
|
"bugs": {
|
7
7
|
"url": "https://github.com/oneblink/apps-react/issues"
|
@@ -47,7 +47,7 @@
|
|
47
47
|
"@mui/material": "^5.15.6",
|
48
48
|
"@mui/x-date-pickers": "^6.19.2",
|
49
49
|
"@oneblink/apps": "^14.1.0-beta.1",
|
50
|
-
"@oneblink/release-cli": "^3.
|
50
|
+
"@oneblink/release-cli": "^3.3.0",
|
51
51
|
"@oneblink/types": "github:oneblink/types",
|
52
52
|
"@types/blueimp-load-image": "^5.16.6",
|
53
53
|
"@types/color": "^3.0.6",
|