redux-create-actiontype
Micro library for easy Action Types generation in Redux/React.
Install
$ npm install redux-create-actiontype --save
Usage
Basic Usage
Create a basic object with Action Types:
import createActionTypes from 'redux-create-actiotype';
const types = createActionTypes()(
'login',
'logout',
'is fetching'
);
An example which is closer to a a real world project:
const types = createActionTypes('my app')(
'login',
'logout',
createActionTypes('users')(
{ fetch: { api: true } },
{ dialog: { postfixes: ['open', 'close' ]}},
'send email',
'eat borscht'
)
);
Advanced Usage:
Generating API Action Types
const types = createActionTypes('my app')(
'login',
'logout',
{ 'user': { api: true } }
);
Pre-define custom API postfixes
const types = createActionTypes({
prefix: 'my app',
apiPostfixes: ['OK', 'BAD']
})(
'login',
'logout',
{ 'user': { api: true } },
{ 'items': { api: true } }
);
Custom postfixes for a custom Action Type
const types = createActionTypes('my app')(
'login',
'logout',
{ 'dialog': { postfixes: ['open', 'close'] } }
);
(support for another style) Set a lower-case prefix with / as a separator
const types = createActionTypes({
prefix: 'my app',
prefixUpperCase: false,
separator: '/'
})(
'login',
'logout'
);
Options
const types = createActionTypes({
prefix,
separator,
upperCase,
prefixUpperCase
})(arrayOfTypes);
Default API Postfixes
const defaultAPIPostfixes = [
'LOADING',
'ERROR',
'SUCCESS'
];
Full list of examples
You can find more examples in my test file.
Feedback
For any ideas, suggestion or bugs feel free to ping me or create a ticket right here.
License
MIT license; see LICENSE.