1.2.0 • Published 4 years ago
vredux-cli v1.2.0
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 ....