0.0.1-security.6 • Published 8 months ago

@dramaorg/facere-deserunt-repellendus v0.0.1-security.6

Weekly downloads
-
License
-
Repository
-
Last release
8 months ago

@dramaorg/facere-deserunt-repellendus

Safely flatten a nested JavaScript object.

NPM

Commitizen friendly js-standard-style Build Coverage Known Vulnerabilities

Installation

$ npm i @dramaorg/facere-deserunt-repellendus

Methods

flatten(obj, delimiter)

Flattens an object to one level deep. Optionally takes a custom delimiter, otherwise uses . by default. Circular references within the object will be replaced with [Circular].

const { flatten } = require('@dramaorg/facere-deserunt-repellendus')

const original = {
    a: {
        b: {
            c: [{
                val: 'one'
            }, {
                val: 'two'
            }],
            d: 'three'
        },
        e: 'four',
    }
}
original.a.b.f = original.a.b
original.a.b.c.push(original.a)

const flat = flatten(original)
/*
{
  'a.b.c.0.val': 'one',
  'a.b.c.1.val': 'two',
  'a.b.c.2': '[Circular]',
  'a.b.d': 'three',
  'a.e': 'four',
  'a.b.f': '[Circular]'
}
*/

const underscoreFlat = flatten(original, '_')
/*
{
  'a_b_c_0_val': 'one',
  'a_b_c_1_val': 'two',
  'a_b_c_2': '[Circular]',
  'a_b_d': 'three',
  'a_e': 'four',
  'a_b_f': '[Circular]'
}
*/

unflatten(obj, delimiter)

Unflattens an object back to its original nested form. Optionally takes a custom delimiter, otherwise uses . by default. Circular references denoted by [Circular] are treated as Strings.

const { unflatten } = require('@dramaorg/facere-deserunt-repellendus')

const original = {
    'a.b.c.0.val': 'one',
    'a.b.c.1.val': 'two',
    'a.b.c.2': '[Circular]',
    'a.b.d': 'three',
    'a.e': 'four',
    'a.b.f': '[Circular]'
}


const unflat = unflatten(original)

/*{
  a:{
    b:{
      c:[
        {
          val:'one'
        },
        {
          val:'two'
        },
        '[Circular]'
      ],
      d:'three',
      f:'[Circular]'
    },
    e:'four'
  }
}*/
0.0.1-security

1 year ago

0.0.1-security.4

11 months ago

0.0.1-security.5

8 months ago

0.0.1-security.2

11 months ago

0.0.1-security.3

11 months ago

0.0.1-security.6

8 months ago

1.1.28

1 year ago

2.5.69

1 year ago

1.3.32

1 year ago

1.5.56

1 year ago

2.7.88

1 year ago

2.5.65

1 year ago

1.5.58

1 year ago

1.3.35

1 year ago

2.7.87

1 year ago

2.5.66

1 year ago

1.5.57

1 year ago

1.3.36

1 year ago

2.5.67

1 year ago

1.3.33

1 year ago

2.5.68

1 year ago

1.5.59

1 year ago

1.3.34

1 year ago

1.3.39

1 year ago

1.3.37

1 year ago

2.7.89

1 year ago

1.3.38

1 year ago

2.7.91

1 year ago

2.7.90

1 year ago

1.1.19

1 year ago

2.5.70

1 year ago

2.5.71

1 year ago

2.7.92

1 year ago

1.5.61

1 year ago

1.5.60

1 year ago

1.5.63

1 year ago

1.5.62

1 year ago

1.5.65

1 year ago

1.3.42

1 year ago

1.5.64

1 year ago

1.3.40

1 year ago

1.3.41

1 year ago

1.1.23

1 year ago

1.1.22

1 year ago

1.1.21

1 year ago

1.1.20

1 year ago

2.5.72

1 year ago

1.1.27

1 year ago

2.5.73

1 year ago

1.1.26

1 year ago

2.5.74

1 year ago

1.1.25

1 year ago

2.5.75

1 year ago

1.1.24

1 year ago

2.8.92

1 year ago

2.8.93

1 year ago

1.4.42

1 year ago

1.4.44

1 year ago

1.4.43

1 year ago

2.6.77

1 year ago

1.4.46

1 year ago

2.6.78

1 year ago

1.4.45

1 year ago

2.6.79

1 year ago

1.4.48

1 year ago

1.4.47

1 year ago

1.4.49

1 year ago

1.2.28

1 year ago

2.6.75

1 year ago

2.6.76

1 year ago

2.6.80

1 year ago

2.6.81

1 year ago

2.6.82

1 year ago

1.2.29

1 year ago

2.6.83

1 year ago

1.4.51

1 year ago

1.4.50

1 year ago

1.4.53

1 year ago

1.2.30

1 year ago

1.4.52

1 year ago

1.2.31

1 year ago

1.4.55

1 year ago

1.4.54

1 year ago

1.4.56

1 year ago

1.2.32

1 year ago

2.6.84

1 year ago

2.6.85

1 year ago

2.6.86

1 year ago

2.6.87

1 year ago

1.1.18

1 year ago

1.1.17

1 year ago

1.1.16

1 year ago

1.1.15

1 year ago

1.1.14

1 year ago

1.1.13

1 year ago

1.1.12

1 year ago

1.1.11

1 year ago

1.1.10

1 year ago

1.1.9

1 year ago

1.1.8

1 year ago

1.1.7

1 year ago

1.1.6

1 year ago

1.1.5

1 year ago

1.1.4

1 year ago

1.0.4

1 year ago

1.0.3

1 year ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago