# How to get folded source code inside foldWidget.toDOM() from @codemirror/fold

**URL:** <https://discuss.codemirror.net/t/how-to-get-folded-source-code-inside-foldwidget-todom-from-codemirror-fold/3527>\
**Category:** v6\
**Created:** [September 15, 2021, 4:15pm UTC](https://discuss.codemirror.net/t/how-to-get-folded-source-code-inside-foldwidget-todom-from-codemirror-fold/3527 "2021-09-15T16:15:32Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![loredanacirstea](https://discuss.codemirror.net/user_avatar/discuss.codemirror.net/loredanacirstea/32/1475_2.png) [@loredanacirstea](https://discuss.codemirror.net/u/loredanacirstea)\
**Post date:** [September 15, 2021, 7:34pm UTC](https://discuss.codemirror.net/t/how-to-get-folded-source-code-inside-foldwidget-todom-from-codemirror-fold/3527/2 "2021-09-15T19:34:44Z")

</div>

I figured it out. I wrapped `foldWidget` in a function that receives the folded source code as a parameter.  
And changed `folded = folded.update({add: [foldWidget.range(e.value.from, e.value.to)]})` to:

```auto
let code = tr.state.doc.slice(e.value.from, e.value.to);
folded = folded.update({add: [foldWidget({code}).range(e.value.from, e.value.to)]})

```

> <https://github.com/codemirror/fold/blob/9674d8e783483524708cee4b268e4cbbce098571/src/fold.ts#L42>

---

_[View the full topic](https://discuss.codemirror.net/t/how-to-get-folded-source-code-inside-foldwidget-todom-from-codemirror-fold/3527)._
