mirror of
https://git.mirrors.martin98.com/https://github.com/langgenius/dify.git
synced 2025-07-08 05:31:46 +08:00
46 lines
960 B
TypeScript
46 lines
960 B
TypeScript
'use client'
|
|
|
|
import type { ReactNode } from 'react'
|
|
import {
|
|
useState,
|
|
} from 'react'
|
|
import {
|
|
createContext,
|
|
useContextSelector,
|
|
} from 'use-context-selector'
|
|
|
|
export type MarketplaceContextValue = {
|
|
intersected: boolean
|
|
setIntersected: (intersected: boolean) => void
|
|
}
|
|
|
|
export const MarketplaceContext = createContext<MarketplaceContextValue>({
|
|
intersected: true,
|
|
setIntersected: () => {},
|
|
})
|
|
|
|
type MarketplaceContextProviderProps = {
|
|
children: ReactNode
|
|
}
|
|
|
|
export function useMarketplaceContext(selector: (value: MarketplaceContextValue) => any) {
|
|
return useContextSelector(MarketplaceContext, selector)
|
|
}
|
|
|
|
export const MarketplaceContextProvider = ({
|
|
children,
|
|
}: MarketplaceContextProviderProps) => {
|
|
const [intersected, setIntersected] = useState(true)
|
|
|
|
return (
|
|
<MarketplaceContext.Provider
|
|
value={{
|
|
intersected,
|
|
setIntersected,
|
|
}}
|
|
>
|
|
{children}
|
|
</MarketplaceContext.Provider>
|
|
)
|
|
}
|