export default function createDraftAutosave(initialDraft = ''){
  let draft = initialDraft;

  return {
    setDraft(nextDraft){
      draft = nextDraft;
    },
    install(register, save){
      const snapshot = draft;
      return register(() => save(snapshot));
    }
  };
}
Run tests to see results.