summaryrefslogtreecommitdiffhomepage
path: root/packages/ui/src/context/diff.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'packages/ui/src/context/diff.tsx')
-rw-r--r--packages/ui/src/context/diff.tsx19
1 files changed, 8 insertions, 11 deletions
diff --git a/packages/ui/src/context/diff.tsx b/packages/ui/src/context/diff.tsx
index 630437de6..747de9cc8 100644
--- a/packages/ui/src/context/diff.tsx
+++ b/packages/ui/src/context/diff.tsx
@@ -1,13 +1,10 @@
-import { createContext, useContext, type ParentProps, type ValidComponent } from "solid-js"
+import type { ValidComponent } from "solid-js"
+import { createSimpleContext } from "./helper"
-const DiffComponentContext = createContext<ValidComponent>()
+const ctx = createSimpleContext<ValidComponent, { component: ValidComponent }>({
+ name: "DiffComponent",
+ init: (props) => props.component,
+})
-export function DiffComponentProvider(props: ParentProps<{ component: ValidComponent }>) {
- return <DiffComponentContext.Provider value={props.component}>{props.children}</DiffComponentContext.Provider>
-}
-
-export function useDiffComponent() {
- const component = useContext(DiffComponentContext)
- if (!component) throw new Error("DiffComponentProvider must be used to provide a diff component")
- return component
-}
+export const DiffComponentProvider = ctx.provider
+export const useDiffComponent = ctx.use