From e9c8aac6ea9e67027c9a81c20297dc487842d10f Mon Sep 17 00:00:00 2001 From: Jerel Miller Date: Thu, 3 Sep 2020 12:50:20 -0700 Subject: [PATCH] feat: add a useTreatment hook --- src/hooks/useTreatment.js | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 src/hooks/useTreatment.js diff --git a/src/hooks/useTreatment.js b/src/hooks/useTreatment.js new file mode 100644 index 000000000..8b71286f6 --- /dev/null +++ b/src/hooks/useTreatment.js @@ -0,0 +1,20 @@ +import { useMemo } from 'react'; +import { useTreatments } from '@splitsoftware/splitio-react'; + +const useTreatment = (name) => { + const treatments = useTreatments([name]); + const { treatment, config } = treatments[name]; + + return { + treatment, + config: useMemo(() => { + try { + return JSON.parse(config); + } catch (e) { + return {}; + } + }, [config]), + }; +}; + +export default useTreatment;