# Getting Origin of "Change" Event out of v6

**URL:** https://discuss.codemirror.net/t/getting-origin-of-change-event-out-of-v6/5498
**Category:** v6
**Created:** [December 30, 2022, 10:21pm UTC](https://discuss.codemirror.net/t/getting-origin-of-change-event-out-of-v6/5498 "2022-12-30T22:21:11Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![NaralChaler](https://discuss.codemirror.net/user_avatar/discuss.codemirror.net/naralchaler/32/2833_2.png) [@NaralChaler](https://discuss.codemirror.net/u/NaralChaler)
#### Post date: [December 30, 2022, 10:21pm UTC](https://discuss.codemirror.net/t/getting-origin-of-change-event-out-of-v6/5498/1 "2022-12-30T22:21:12Z")

</div>

Hi!

I’ve building a real-time multiplayer code editor with web sockets and I could use some help.

I’ve tried using a React component for CodeMirror (@uiw/react-codemirror) and the vanilla V6 itself. I can’t figure out a way to get the origin input type (i.e., “+input”, “setValue”) — are there any ways around this?

Here are my snippets:

```auto
The React Version
import CodeMirror from "@uiw/react-codemirror";
import { ViewUpdate, EditorView } from "@codemirror/view";

const CodeMirrorEditor: FC = () => {

  const onChange = useCallback((value: string, viewUpdate: ViewUpdate) => {
    console.log(viewUpdate);
  }, []);

return (
<CodeMirror
        value="console.log('hello world!');"
        height="200px"
        extensions={[javascript({ jsx: true })]}
        onChange={onChange}
      />
)

}

```

```auto
The Vanilla V6
import Codemirror from "codemirror";

const CodeMirrorEditor: FC = () => {

  const editor = useRef<any>();
  const { setContainer } = useCodeMirror({
    container: editor.current,
    extensions: [javascript()],
    value: 'console.log("yay")',
  });

return (
  <textarea ref={editor} id="realtimeEditor"></textarea>
)
}

```

Thank you for your time.

---

<div class="post-metadata">

### Author: ![marijn](https://discuss.codemirror.net/user_avatar/discuss.codemirror.net/marijn/32/136_2.png) [@marijn](https://discuss.codemirror.net/u/marijn)
#### Post date: [December 30, 2022, 11:37pm UTC](https://discuss.codemirror.net/t/getting-origin-of-change-event-out-of-v6/5498/2 "2022-12-30T23:37:14Z")

</div>

`origin` doesn’t exist anymore, but [`Transaction.userEvent`](https://codemirror.net/docs/ref/#state.Transaction%5EuserEvent) serves a similar purpose.

---

<div class="post-metadata">

### Author: ![NaralChaler](https://discuss.codemirror.net/user_avatar/discuss.codemirror.net/naralchaler/32/2833_2.png) [@NaralChaler](https://discuss.codemirror.net/u/NaralChaler)
#### Post date: [December 31, 2022, 12:33am UTC](https://discuss.codemirror.net/t/getting-origin-of-change-event-out-of-v6/5498/3 "2022-12-31T00:33:59Z")

</div>

Thanks for the enlightenment!
