1.0.4 • Published 4 years ago

dotfast v1.0.4

Weekly downloads
79
License
MIT
Repository
github
Last release
4 years ago

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

🚀 Contributors

Thanks to the wonderful people who collaborate with me !

📜 License

dotfast under License MIT.