From 779db5635b329fda20652fb56a5b47acff975b9e Mon Sep 17 00:00:00 2001 From: Roland Osborne Date: Fri, 26 Aug 2022 15:18:20 -0700 Subject: [PATCH] opps forgot to add src file --- .../imageAsset/useImageAsset.hook.js | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 net/web/src/session/conversation/topicItem/imageAsset/useImageAsset.hook.js diff --git a/net/web/src/session/conversation/topicItem/imageAsset/useImageAsset.hook.js b/net/web/src/session/conversation/topicItem/imageAsset/useImageAsset.hook.js new file mode 100644 index 00000000..b53f78eb --- /dev/null +++ b/net/web/src/session/conversation/topicItem/imageAsset/useImageAsset.hook.js @@ -0,0 +1,34 @@ +import { useContext, useState, useEffect, useRef } from 'react'; +import { ViewportContext } from 'context/ViewportContext'; + +export function useImageAsset() { + + const [state, setState] = useState({ + display: null, + popout: false, + width: 0, + height: 0, + }); + + const viewport = useContext(ViewportContext); + + const updateState = (value) => { + setState((s) => ({ ...s, ...value })); + } + + useEffect(() => { + updateState({ display: viewport.state.display }); + }, []); + + const actions = { + setPopout: (width, height) => { + updateState({ popout: true, width, height }); + }, + clearPopout: () => { +console.log("CLEAR POPOUT"); + updateState({ popout: false }); + }, + }; + + return { state, actions }; +}