DefinitelyTyped/types/dot-object/dot-object-tests.ts
Rico Sandyca Novenza 1a3510f39a
🤖 Merge PR #46124 Update @types/dot-object to v2.1.3 by @ricosandyca
* Update dot-object-tests.ts

* Update index.d.ts

* Update dot-object-tests.ts

* Update index.d.ts

* Add files via upload
2020-07-27 15:57:38 -04:00

104 lines
2.2 KiB
TypeScript

var obj = {
'first_name': 'John',
'last_name': 'Doe'
};
dot.move('first_name', 'contact.firstname', obj);
dot.move('last_name', 'contact.lastname', obj);
var src = {
name: 'John',
stuff: {
phone: {
brand: 'iphone',
version: 6
}
}
};
var tgt = { name: 'Brandon' };
dot.copy('stuff.phone', 'wanna.haves.phone', src, tgt, [(arg: any) => {
return arg;
}]);
dot.transfer('stuff.phone', 'wanna.haves.phone', src, tgt);
var row = {
'id': 2,
'contact.name.first': 'John',
'contact.name.last': 'Doe',
'contact.email': 'example@gmail.com',
'contact.info.about.me': 'classified',
'devices[0]': 'mobile',
'devices[1]': 'laptop',
'some.other.things.0': 'this',
'some.other.things.1': 'that'
};
dot.object(row, (arg: any) => {
return arg;
});
dot.str('this.is.my.string', 'value', tgt);
var newObj = {
some: {
nested: {
value: 'Hi there!'
}
},
breath: {
value: 'Hello'
}
};
var val = dot.pick('some.nested.value', newObj);
console.log(val);
// Set a new value
val = dot.str('breath.value', 'World', newObj);
// Replacing with a new object
val = dot.set('breath', { value: 'Goodbye' }, newObj);
// Pick & Remove the value
val = dot.pick('some.nested.value', newObj, true);
// shorthand
val = dot.remove('some.nested.value', newObj);
val = dot.remove(['some.nested.value'], newObj)
// or use the alias `del`
val = dot.del('some.nested.value', newObj);
val = dot.del(['some.nested.value'], newObj);
// delete and get value of the deleted attribute
val = dot.delete('some.nested.value', newObj)
val = dot.delete(['some.nested.value'], newObj)
// convert object to dot object
var result = {};
dot.dot({ test: 'something' }, result);
result = dot.dot({ test: 'something' });
var dotWithArrow = new dot('=>');
var dotWithAnotherSeparator = new dot('->', true, false)
var objWithArray = {
author: 'John Doe',
books: ['A', 'B', 'C'],
about: {
hometown: 'Sampang, Jawa Timur',
skils: ['HTML', 'CSS', 'JS', 'TS']
}
}
var defaultResult = dot.dot(objWithArray)
// set keepArray property
dot.keepArray = true
var keepArrayResult = dot.dot(objWithArray)
console.log('Default:', defaultResult)
console.log('KeepArray:', keepArrayResult)