Close active elems (react-query refactor) (#1926)

* Refactor closeAny and closeAllActiveElements

* Add close lightbox

* Switch to hooks

* Fixes
This commit is contained in:
Paul Frazee 2023-11-16 08:18:59 -08:00 committed by GitHub
parent 0de8d40981
commit a84b2f9f2f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
9 changed files with 101 additions and 66 deletions

View file

@ -34,13 +34,15 @@ export interface ComposerOpts {
type StateContext = ComposerOpts | undefined
type ControlsContext = {
openComposer: (opts: ComposerOpts) => void
closeComposer: () => void
closeComposer: () => boolean
}
const stateContext = React.createContext<StateContext>(undefined)
const controlsContext = React.createContext<ControlsContext>({
openComposer(_opts: ComposerOpts) {},
closeComposer() {},
closeComposer() {
return false
},
})
export function Provider({children}: React.PropsWithChildren<{}>) {
@ -51,11 +53,14 @@ export function Provider({children}: React.PropsWithChildren<{}>) {
setState(opts)
},
closeComposer() {
let wasOpen = !!state
setState(undefined)
return wasOpen
},
}),
[setState],
[setState, state],
)
return (
<stateContext.Provider value={state}>
<controlsContext.Provider value={api}>