MCPcopy Create free account
hub / github.com/anomalyco/opencode / createAxisConstraint

Function createAxisConstraint

packages/app/src/utils/solid-dnd.tsx:25–45  ·  view source on GitHub ↗
(axis: "x" | "y", transformerId: string)

Source from the content-addressed store, hash-verified

23})
24
25const createAxisConstraint = (axis: "x" | "y", transformerId: string) => (): JSXElement => {
26 const context = useDragDropContext()
27 if (!context) return null
28 const [, { onDragStart, onDragEnd, addTransformer, removeTransformer }] = context
29 const transformer = createTransformer(transformerId, axis)
30 const dispose = createRoot((dispose) => {
31 onDragStart((event) => {
32 const id = getDraggableId(event)
33 if (!id) return
34 addTransformer("draggables", id, transformer)
35 })
36 onDragEnd((event) => {
37 const id = getDraggableId(event)
38 if (!id) return
39 removeTransformer("draggables", id, transformer.id)
40 })
41 return dispose
42 })
43 onCleanup(dispose)
44 return null
45}
46
47export const ConstrainDragXAxis = createAxisConstraint("x", "constrain-x-axis")
48

Callers 1

solid-dnd.tsxFile · 0.85

Calls 2

createTransformerFunction · 0.85
getDraggableIdFunction · 0.85

Tested by

no test coverage detected