1.12.0 • Published 2 months ago

dtrim v1.12.0

Weekly downloads
6,399
License
MIT
Repository
github
Last release
2 months ago

dtrim Status

dtrim is a tool for trimming deep/lengthy javascript structures. Some potential usages are: debugging, logging or data sanitization. Fully configurable.

Caters for:

  • Big arrays
  • Objects with lots of keys
  • Nested, deep structures
  • Objects with circular references
  • Long strings
  • Buffers
  • Functions

Installation

npm i dtrim

Usage

import * as dtrim from 'dtrim'

const trim = dtrim.trimmer({ depth: 4 });
const nasty = { ... a big, deep and nasty object here ... };
const nice = trim(nasty);

Options

dtrim.trimmer(options)

  • options: <Object>

    • depth: <number> Trim depth - all structures deeper than this will be omitted from output. This is useful for truncating large complicated objects. To make it return full structure, pass Infinity or some arbitrary large number. Default: 4.
    • size: <number> Trim size - all objects and arrays that are longer/bigger than specified size will be trimmed. Note on trimming objects: because order of properties is not guaranteed by javascript spec, objects with number of properties bigger than size will be represented as string "Object(N)". To make it return full structure, pass Infinity or some arbitrary large number. Default: 64.
    • string: <number> Trim strings that are longer than specified number. To make it return full structure, pass Infinity or some arbitrary large number. Default: 512.
    • buffer: <boolean> Substitues instances of a Buffer object with their string representation: "Buffer(N)". Default: true.
    • getters: <boolean> Omits getter fields in objects and classes from the result. Default: true.
    • retain: <Set<string>> A set of root paths to ignore while at depth 0. For example trimming {a: FooClass} with new Set(['a']) will result in {a: FooClass} instead of {a: {}}. Default: new Set()
  • Returns: <Function> - trimmer function that accepts input argument of any type.

License

MIT

1.12.0

2 months ago

1.11.2

11 months ago

1.11.1

1 year ago

1.11.0

1 year ago

1.10.0

1 year ago

1.9.0

5 years ago

1.8.0

5 years ago

1.7.0

5 years ago

1.6.1

5 years ago

1.6.0

5 years ago

1.5.0

5 years ago

1.4.0

5 years ago

1.3.0

5 years ago

1.2.2

5 years ago

1.2.1

5 years ago

1.2.0

5 years ago

1.1.0

5 years ago

1.0.1

5 years ago

1.0.0

5 years ago