/** * Copyright (c) 2022 Amorphous * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ import { StringParserPlugin } from '../../../types' import eol from 'eol' export const parseNewlines: StringParserPlugin = (raw: string): string => { const lfRaw = eol.lf(raw) const intermediate = lfRaw.replace(/\n\n/gm, '\n').replace(/\n/gm, '\n\n') return intermediate.replace(/\n\n\n+/gm, '\n\n') }