hunk.code_window:   // For void nodes, the element with the offset key will be a cousin, not an
     // ancestor, so find it by going down from the nearest void parent.
     if (!closest) {
       const closestVoid = parentNode.closest(VOID_SELECTOR)
       closest = closestVoid.querySelector(SELECTOR)
       offset = closest.textContent.length
     }
     // Get the string value of the offset key attribute.
  
hunk.labels: keep keep keep add keep keep keep keep keep
hunk.after_edit:     if (!closestVoid) return null
  
hunk.file_path: src/utils/offset-key.js
hunk.type: add
file: 
  import assert from 'assert'
  
  export default function (state) {
    const { document, selection } = state
    const texts = document.getTexts()
    const first = texts.first()
    const range = selection.merge({
      anchorKey: first.key,
      anchorOffset: 0,
      focusKey: first.key,
      focusOffset: 0
    })
  
    const next = state
      .transform()
      .moveTo(range)
      .deleteForward(3)
      .apply()
  
    assert.deepEqual(
      next.selection.toJS(),
      range.collapseToStart().toJS()
    )
  
    return next
  }
  