dotfast
v1.0.4
Published
Dotfast helps to play with the keys nested in the objects, in a very easy way, and with very little code !
Downloads
16
Maintainers
Readme
dotfast
Dotfast
is a function that allows you to enter an object, by means of points, and very easily, and is compatible with typescript
🍉 Installation
First we will have to install, in order to use this wonderful package.
# Using npm
npm install --save dotfast
# Using yarn
yarn add dotfast
🌎 Usage
First we import the function, as follows, You can call the function as d
or also as dotfast
// For Typescript
import dotfast from 'dotfast';
// Or
import { d } from 'dotfast';
// For Javascript
const dotfast = require('dotfast');
// or
const { d } = require('dotfast');
- First we create an object with data, for this example !
const data = {
app: {
name: 'Dotfast',
port: 8080,
db: {
dialect: 'mysql',
localhost: 'localhost',
username: 'root',
password: '',
port: 3306,
tables: [
{
name: 'first_table',
},
{
name: 'second_table',
},
],
},
},
};
d(data, 'app.db.tables[0].name');
// => first_table
d(data, 'app.port');
//=> 8080
d(data, 'app.url');
//=> undefined
// Default option
d(data, 'app.url', 'http://website.com');
//=> http://website.com
Array return
dotfast
also allows to return several selections, within an array
d(data, ['app.port', 'app.db.port', 'app.name', 'app.db.tables[0]']);
//=> [8080, 3306, "Application", {name: "first_table"}]
- Let's try ES6+ or typescript
const [appPort, dbPort, appName, firstTable] = d(data, [
'app.port',
'app.db.port',
'app.name',
'app.db.tables[0]',
]);
/**
* appPort => 8080
* dbPort => 3306
* appName => "Application"
* firstTable => {name: "first_table"}
* */
Object return
dotfast
also returns as an object !
d(data, {
appPort: 'app.port',
dbPort: "app.db.port",
appName: 'app.name',
secondTable: 'app.db.tables[1]',
});
/**
* {
* appPort: 8080,
* dbPort: 3306,
* appName: "Application",
* secondTable: {name: "secondTable"}
* }
* *
- Let's try ES6+ or typescript
const { appPort, dbPort, appName } = d(data, {
appPort: 'app.port',
dbPort: 'app.db.port',
appName: 'app.name',
secondTable: 'app.db.tables[1]',
});
/**
* appPort => 8080
* dbPort => 3306
* appName => "Application",
* secondTable => {name: "secondTable"}
* */
⭐ Support for
dotfast
is an open source project licensed by MIT. You can grow thanks to the sponsors and the support of the amazing sponsors. If you want to join them, contact me here.
🎩 Stay in touch
- Github @yonicalsin
- Twitter @yonicalsin
- Instagram @yoni_calsin
- Medium @yonicalsin
- Dev @yonicalsin
🚀 Contributors
Thanks to the wonderful people who collaborate with me !
📜 License
dotfast
under License MIT.