rawKeyValue.ts 632 B

123456789101112131415161718192021222324
  1. import * as E from "fp-ts/Either"
  2. import { strictParseRawKeyValueEntriesE } from "@hoppscotch/data"
  3. import { convertIndexToLineCh } from "../utils"
  4. import { LinterDefinition, LinterResult } from "./linter"
  5. const linter: LinterDefinition = (text) => {
  6. const result = strictParseRawKeyValueEntriesE(text)
  7. if (E.isLeft(result)) {
  8. const pos = convertIndexToLineCh(text, result.left.pos)
  9. return Promise.resolve([
  10. <LinterResult>{
  11. from: pos,
  12. to: pos,
  13. message: result.left.message,
  14. severity: "error",
  15. },
  16. ])
  17. } else {
  18. return Promise.resolve([])
  19. }
  20. }
  21. export default linter