code: function stripOkurigana(input = '', options = { all: false }) {
    if (isEmpty(input) || !isJapanese(input) || isKana(input)) return input;
    const chars = [...input];
  
    // strip every kana
    if (options.all) return chars.filter((char) => !isCharKana(char)).join('');
  
    // strip trailing only
    const reverseChars = chars.reverse();
    for (let i = 0, len = reverseChars.length; i < len; i += 1) {
      const char = reverseChars[i];
      // pass if it's punctuation
      if (isCharPunctuation(char)) continue; // eslint-disable-line no-continue
      // blank out if not kanji
      if (!isKanji(char)) {
        reverseChars[i] = '';
      } else break; // stop when we hit a kanji char
    }
  
    return reverseChars.reverse().join('');
  }
docs: Strips trailing [Okurigana](https://en.wikipedia.org/wiki/Okurigana) if `input` is a mix of [Kanji](https://en.wikipedia.org/wiki/Kanji) and [Kana](https://en.wikipedia.org/wiki/Kana)
  @param  {String} input text
  @param  {Object} [options={ all: false }] config object specifying if *all* kana should be removed, not just trailing okurigana
  @return {String} text with okurigana removed
  @example
  stripOkurigana('踏み込む')
  // => '踏み込'
  stripOkurigana('粘り。')
  // => '粘。'
  stripOkurigana('お祝い')
  // => 'お祝'
  stripOkurigana('踏み込む', { all: true })
  // => '踏込'
  stripOkurigana('お祝い', { all: true })
  // => '祝'