/home/vianto5/hidalgoresidences.mx/wp-content/plugins/code-snippets/js/utils
Edit: /home/vianto5/hidalgoresidences.mx/wp-content/plugins/code-snippets/js/utils/bootstrap.tsx (876B)
import React, { createContext, useContext } from 'react'
import { createRoot } from 'react-dom/client'
import type { Context, FunctionComponent } from 'react'
export const loadComponent = (containerId: string, Component: FunctionComponent): void => {
const container = document.getElementById(containerId)
if (container) {
const root = createRoot(container)
root.render(
)
} else {
console.error(`Could not find element #${containerId}.`)
}
}
export const createContextHook =
(hookName: string): [
Context,
() => T
] => {
const Context = createContext(undefined)
const useContextHook = (): T => {
const value = useContext(Context)
if (value === undefined) {
throw Error(`${hookName} can only be used within a corresponding context provider.`)
}
return value
}
return [Context, useContextHook]
}