1.0.1 • Published 5 years ago

namespace-constants v1.0.1

Weekly downloads
1,270
License
MIT
Repository
github
Last release
5 years ago

namespace-constants build status Coverage Status

NPM

Namespacing Redux action type constant values.

image

Installation

npm install --save namespace-constants

Examples

Global Constants

import constants from 'namespace-constants';

export const {
    ADD_TODO,
    REMOVE_TODO,
    TOGGLE_TODO
} = constants([
    'ADD_TODO',
    'REMOVE_TODO',
    'TOGGLE_TODO'
]);
// {
//   'ADD_TODO': 'ADD_TODO',
//   'REMOVE_TODO': 'REMOVE_TODO'
//   'TOGGLE_TODO': 'TOGGLE_TODO'
// }

Namespace Constants

import constants from 'namespace-constants';

export const {
    ADD_TODO,
    REMOVE_TODO,
    TOGGLE_TODO
} = constants('ns', [
    'ADD_TODO',
    'REMOVE_TODO',
    'TOGGLE_TODO'
]);
// {
//   'ADD_TODO': 'ns:ADD_TODO',
//   'REMOVE_TODO': 'ns:REMOVE_TODO'
//   'TOGGLE_TODO': 'ns:TOGGLE_TODO'
// }

Use a custom separator

export const {
    ADD_TODO,
    REMOVE_TODO,
    TOGGLE_TODO
} = constants('ns', [
    'ADD_TODO',
    'REMOVE_TODO',
    'TOGGLE_TODO'
], { separator: '/' });
// {
//   'ADD_TODO': 'ns/ADD_TODO',
//   'REMOVE_TODO': 'ns/REMOVE_TODO'
//   'TOGGLE_TODO': 'ns/TOGGLE_TODO'
// }

Pass constant values as an array of mixed types

export const {
    ADD_TODO,
    REMOVE_TODO,
    TOGGLE_TODO,
    SHOW_ALL,
    SHOW_COMPLETED,
    SHOW_ACTIVE,
    FETCH,
    EXPORT
} = constants('ns', [
    'ADD_TODO',
    'REMOVE_TODO',
    'TOGGLE_TODO',
    ['SHOW_ALL', 'SHOW_COMPLETED', 'SHOW_ACTIVE'],
    {
      'FETCH': ['REQUEST', 'SUCCESS', 'FAILURE'],
      'EXPORT': 'EXPORT'
    }
]);
// {
//   'ADD_TODO': 'ns:ADD_TODO',
//   'REMOVE_TODO': 'ns:REMOVE_TODO',
//   'TOGGLE_TODO': 'ns:TOGGLE_TODO',
//   'SHOW_ALL': 'ns:SHOW_ALL',
//   'SHOW_COMPLETED': 'ns:SHOW_COMPLETED',
//   'SHOW_ACTIVE': 'ns:SHOW_ACTIVE',
//   'FETCH': {
//     'REQUEST': 'ns:FETCH.REQUEST',
//     'SUCCESS': 'ns:FETCH.SUCCESS',
//     'FAILURE': 'ns:FETCH.FAILURE'
//   },
//   'EXPORT': 'ns:EXPORT'
// }

Pass constant values as an object of mixed types

export const {
    ADD_TODO,
    REMOVE_TODO,
    TOGGLE_TODO,
    SHOW_ALL,
    SHOW_COMPLETED,
    SHOW_ACTIVE,
    FETCH,
    EXPORT
} = constants('ns', {
    'ADD_TODO': 'ADD_TODO',
    'REMOVE_TODO': 'REMOVE_TODO',
    'TOGGLE_TODO': 'TOGGLE_TODO',
    'SHOW_ALL': 'SHOW_ALL',
    'SHOW_COMPLETED': 'SHOW_COMPLETED',
    'SHOW_ACTIVE': 'SHOW_ACTIVE',
    'FETCH': ['REQUEST', 'SUCCESS', 'FAILURE'],
    'EXPORT': 'EXPORT'
});
// {
//   'ADD_TODO': 'ns:ADD_TODO',
//   'REMOVE_TODO': 'ns:REMOVE_TODO',
//   'TOGGLE_TODO': 'ns:TOGGLE_TODO',
//   'SHOW_ALL': 'ns:SHOW_ALL',
//   'SHOW_COMPLETED': 'ns:SHOW_COMPLETED',
//   'SHOW_ACTIVE': 'ns:SHOW_ACTIVE',
//   'FETCH': {
//     'REQUEST': 'ns:FETCH.REQUEST',
//     'SUCCESS': 'ns:FETCH.SUCCESS',
//     'FAILURE': 'ns:FETCH.FAILURE'
//   },
//   'EXPORT': 'ns:EXPORT'
// }

License

MIT