4.3.1 • Published 8 months ago

@lowdefy/helpers v4.3.1

Weekly downloads
223
License
Apache-2.0
Repository
github
Last release
8 months ago

@lowdefy/helpers

Lowdefy helper functions

Usage

applyArrayIndices

(arrayIndices: number[], name: string): string

Apply arrayIndices to a object id. Substitutes all instances of $ character in name with a index from arrayIndices, until there are no more indices or $'s.

applyArrayIndices([1, 2], 'array.$.subArr.$'); // returns 'array.1.subArr.2'

get

(
  target: any,
  path: string | number,
  options?: {
    default?: any,
  }
): any

Get a value from a target object, using path with dot-notation. Returns undefined or the optional default value if the value is not found.

get({ a: [{ b: 1 }] }, 'a.0.b'); // returns 1
get({ a: [{ b: 1 }] }, 'a.7.b', { default: 4 }); // returns 4

mergeObjects

(objects: objects[]): object

Merges an array of objects using lodash.merge

mergeObjects([
  { a: 1, c: 4 },
  { a: 2, b: 3 },
]); // returns { a: 2, b: 3, c: 4 }

omit

(object: object, list: string[]): object

Remove an array of keys from a object. Uses unset from this package.

omit({ a: 1, b: 2, c: 3, d: 4 }, ['a', 'd']); // returns { b: 2, c: 3 }

serializer

serializer.copy
serializer.deserialize
serializer.deserializeFromString
serializer.serialize
serializer.serializeToString

set

(
  target: any,
  path: string,
  value: any
): void

Sets a value in a object at a key given by path.

const obj = { a: 1 };
set(obj, 'b.c', 2);
// obj becomes { a: 1, b: { c: 2 } }

stableStringify

(
  object: any
  options?: {
    cmp?: function,
    cycles?: boolean,
    space?: string | number,
    replacer?: function
  }
)

Derived from https://github.com/substack/json-stable-stringify

Returns a deterministic JSON stringified object.

swap

(
  arr: any[],
  from: number,
  to: number
)

Swaps the object at the from index with the object at the to index.

swap([0, 1, 2, 3, 4], 2, 3); // returns [0, 1, 3, 2, 4]

type

unset

(object: object, property: 'string')

Unset a property on a object. Supports dot-notation.

const obj = { a: { b: [] } };
unset(obj, 'a.b'); //
// obj becomes { a: {} }

urlQuery

urlQuery.parse
(string: string): object

Parse a urlQuery serialized by urlQuery.stringify.

urlQuery.parse('a=%7B%22b%22%3A%221%22%7D'); // returns { a: { b: '1' } }
urlQuery.stringify
(object: object): string

Serialize a urlQuery object to use as URL query parameters. Nested objects are serialized using serializer.serializeToString.

urlQuery.stringify({ a: { b: '1' } }); // returns 'a=%7B%22b%22%3A%221%22%7D'

More Lowdefy resources

Licence

Apache-2.0

4.3.1

8 months ago

4.3.0

11 months ago

4.2.2

11 months ago

4.2.1

12 months ago

4.2.0

12 months ago

4.1.0

1 year ago

4.0.2

1 year ago

4.0.1

1 year ago

4.0.0

1 year ago

4.0.0-rc.15

2 years ago

4.0.0-rc.10

2 years ago

4.0.0-rc.12

2 years ago

4.0.0-rc.11

2 years ago

4.0.0-rc.14

2 years ago

4.0.0-rc.13

2 years ago

4.0.0-rc.9

2 years ago

4.0.0-rc.8

2 years ago

4.0.0-rc.7

2 years ago

4.0.0-rc.6

2 years ago

4.0.0-rc.1

2 years ago

4.0.0-rc.3

2 years ago

4.0.0-rc.2

2 years ago

4.0.0-rc.5

2 years ago

4.0.0-rc.4

2 years ago

4.0.0-alpha.37

3 years ago

4.0.0-rc.0

2 years ago

4.0.0-alpha.36

3 years ago

4.0.0-alpha.35

3 years ago

4.0.0-alpha.34

3 years ago

4.0.0-alpha.31

3 years ago

4.0.0-alpha.30

3 years ago

4.0.0-alpha.33

3 years ago

4.0.0-alpha.32

3 years ago

4.0.0-alpha.28

3 years ago

4.0.0-alpha.27

3 years ago

4.0.0-alpha.26

3 years ago

4.0.0-alpha.25

3 years ago

4.0.0-alpha.29

3 years ago

4.0.0-alpha.17

3 years ago

4.0.0-alpha.16

3 years ago

4.0.0-alpha.15

3 years ago

4.0.0-alpha.14

3 years ago

4.0.0-alpha.19

3 years ago

4.0.0-alpha.18

3 years ago

4.0.0-alpha.13

3 years ago

4.0.0-alpha.20

3 years ago

4.0.0-alpha.24

3 years ago

4.0.0-alpha.23

3 years ago

4.0.0-alpha.22

3 years ago

4.0.0-alpha.21

3 years ago

4.0.0-alpha.9

3 years ago

4.0.0-alpha.12

3 years ago

4.0.0-alpha.11

3 years ago

4.0.0-alpha.10

3 years ago

3.23.3

3 years ago

4.0.0-alpha.8

3 years ago

4.0.0-alpha.7

3 years ago

4.0.0-alpha.6

3 years ago

4.0.0-alpha.5

4 years ago

4.0.0-alpha.4

4 years ago

4.0.0-alpha.1

4 years ago

3.23.1

4 years ago

3.23.0

4 years ago

3.23.0-alpha.0

4 years ago

3.23.2

4 years ago

3.22.0

4 years ago

3.22.0-alpha.1

4 years ago

3.22.0-alpha.0

4 years ago

3.21.2-alpha.0

4 years ago

3.21.2

4 years ago

3.21.1

4 years ago

3.21.0

4 years ago

3.20.0

4 years ago

3.20.2

4 years ago

3.20.1

4 years ago

3.20.4

4 years ago

3.20.3

4 years ago

3.19.0

4 years ago

3.18.1

4 years ago

3.18.0

4 years ago

3.17.2

4 years ago

3.17.1

4 years ago

3.17.0

4 years ago

3.17.0-alpha.3

4 years ago

3.17.0-alpha.2

4 years ago

3.17.0-alpha.1

4 years ago

3.16.5

4 years ago

3.16.4

4 years ago

3.16.3

4 years ago

3.16.2

4 years ago

3.16.1

4 years ago

3.16.0

4 years ago

3.15.0

4 years ago

3.14.1

4 years ago

3.14.0

4 years ago

3.13.0

4 years ago

3.12.6

4 years ago

3.12.5

4 years ago

3.12.4

4 years ago

3.12.3

4 years ago

3.12.2

4 years ago

3.12.1

4 years ago

3.12.0

4 years ago

3.11.4

4 years ago

3.11.3

4 years ago

3.11.0

4 years ago

3.11.2

4 years ago

3.11.1

4 years ago

3.10.2

4 years ago

3.10.1

4 years ago

3.10.0

4 years ago

3.9.0

4 years ago

3.8.0

4 years ago

3.7.1

4 years ago

3.7.0

4 years ago

3.7.2

4 years ago

3.6.0

4 years ago

3.5.0

4 years ago

3.4.0

4 years ago

3.3.0

4 years ago

3.1.1

5 years ago

1.2.2

5 years ago

1.2.0

5 years ago

1.1.0

5 years ago

1.0.0

5 years ago