1.2.0 • Published 4 years ago

vredux-cli v1.2.0

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

redux-cli

it takes hundred of files talking to each others, so that your application can be aware of a user click on a red button. redux cli will help u create boilerplate files.

the thing is these files are generated base on my own need. any suggestion visit:

https://github.com/UVcoder/redux-cli

Note*

this redux-cli is a sub-set of cli-uv; if you want to include all the features, pls visit; https://www.npmjs.com/package/cli-uv or https://github.com/UVcoder/cli-uv

install

npm i -g vredux-cli

Command

Run

vredux all <path>

vredux all redux/users

this will create the following files,

project
└─ node_modules
└─ public
└─ src
│   └─ redux
│   │   └─ users
│   │   │   │ users.action.js
│   │   │   │ users.reducer.js
│   │   │   │ users.selector.js
│   │   │   │ users.type.js
│   │   │   │ users.util.js

action.js

import { UsersType } from "./users.type";

/**
 * @type {(initState:boolean)=>{type:string,payload:any}}
 */
export const UsersToggle = item => {
  return {
    type: UsersType.toggle,
    payload: item
  };
};

reducer.js

import { UsersType } from "./users.type";

const InitState = {
  // items: [],
  // itemsCount: 0
};

/**
 * @typedef {{
 * items:any[],
 * itemsCount:number
 * }} State
 */

/**
 * @typedef {{type:string,payload:any}} Action
 */

/**
 * @type {(state:State,action:Action)=>VoidFunction}
 */
const UsersReducer = (state = InitState, action) => {
  switch (action.type) {
    case UsersType.toggle:
      return {
        ...state
      };
    default:
      return state;
  }
};

export default UsersReducer;

selector.js

import { createSelector } from "reselect";

const baseState = state => state.users;

export const UsersGetState = createSelector([baseState], state => {
  return state;
});

type.js

export const UsersType = {
  toggle: "toggle"
};

util.js

// export const addItem = (existingItems, itemToBeAdded) => {
//   return [...existingItems, itemToBeAdded];
// };

bug-fix

v1.0.2

abort if there is existed file

v1.0.3

fixed title case & camel case

v1.2.0

fixed escape file system name name: admin+user -> admin-user name: admin[user -> admin-user ....