• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

nodeplusplus / xregex-json / 95

pending completion
95

Pull #12

circleci

Unknown Committer
Unknown Commit Message
Pull Request #12: Bump json5 from 2.1.2 to 2.2.3

29 of 29 branches covered (100.0%)

Branch coverage included in aggregate %.

38 of 38 relevant lines covered (100.0%)

11.68 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

100.0
/src/stringify.ts
1
import flatten from "flat";
2✔
2

3
import { ParseSeperators } from "./types/XJSON";
4
import { SEPERATOR_SEGMENT, SEPERATOR_KEY_VALUE } from "./constants";
2✔
5

6
export function stringify(data: any, seperators?: ParseSeperators): string {
2✔
7
  if (!data) return "";
8✔
8

9
  const isTruthyArray = Array.isArray(data) && data.length;
5✔
10
  const isTruthyObject = typeof data === "object" && Object.keys(data).length;
5✔
11
  if (!isTruthyArray && !isTruthyObject) return "";
5✔
12

13
  const flatObject = flatten<any, any>(data);
3✔
14
  const { segment: segmentSeperator, keyValue: keyValueSeperator } = {
3✔
15
    segment: SEPERATOR_SEGMENT,
16
    keyValue: SEPERATOR_KEY_VALUE,
17
    ...seperators,
18
  };
19

20
  return Object.keys(flatObject)
3✔
21
    .map((key) => {
22
      let value = flatObject[key];
36✔
23
      if (value instanceof Date) value = value.toISOString();
36✔
24
      return [key, value].join(keyValueSeperator);
36✔
25
    })
26
    .join(segmentSeperator);
27
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc