Socket
Socket
Sign inDemoInstall

@eknkc/dux

Package Overview
Dependencies
1
Maintainers
1
Versions
21
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 3.1.1 to 3.2.0

112

build.js

@@ -6,10 +6,9 @@ 'use strict';

});
exports.Immutable = undefined;
exports.createReducer = exports.createAction = exports.Immutable = undefined;
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol ? "symbol" : typeof obj; };
exports.createAction = createAction;
exports.createActions = createActions;
exports.createReducer = createReducer;
exports.combineReducers = combineReducers;
exports.factory = factory;
exports.bindAction = bindAction;

@@ -29,25 +28,68 @@ exports.bindActions = bindActions;

exports.Immutable = _seamlessImmutable2.default;
function createAction(name) {
var mapper = arguments.length <= 1 || arguments[1] === undefined ? function (x) {
return x;
} : arguments[1];
var metaMapper = arguments.length <= 2 || arguments[2] === undefined ? function (x) {
return x;
} : arguments[2];
var symbol = Symbol(name);
var action = function action(payload, meta) {
return {
type: symbol,
payload: mapper(payload),
meta: metaMapper(meta)
var IDENTITY = function IDENTITY(x) {
return x;
};
var DUX_ACTION = Symbol();
function _createAction(name) {
var _ref = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1];
var _ref$map = _ref.map;
var map = _ref$map === undefined ? IDENTITY : _ref$map;
var _ref$mapMeta = _ref.mapMeta;
var mapMeta = _ref$mapMeta === undefined ? IDENTITY : _ref$mapMeta;
var _ref$mapState = _ref.mapState;
var mapState = _ref$mapState === undefined ? IDENTITY : _ref$mapState;
var action = void 0;
if (typeof name === 'function') {
action = function action(payload, meta) {
var inner = name(payload, meta);
if (typeof inner === 'function') {
return function (dispatch, getState) {
return inner(dispatch, function () {
var root = arguments.length <= 0 || arguments[0] === undefined ? false : arguments[0];
return root ? getState() : mapState(getState());
});
};
}
return inner;
};
};
action.type = symbol;
action[DUX_ACTION] = {
thunk: true,
mapState: mapState,
original: name
};
} else {
(function () {
var symbol = Symbol(name);
action = function action(payload, meta) {
return {
type: symbol,
payload: map(payload),
meta: mapMeta(meta)
};
};
action.type = symbol;
action[DUX_ACTION] = {
basic: true,
type: symbol,
name: name
};
})();
}
return action;
}
exports.createAction = _createAction;
function createActions(options) {

@@ -66,7 +108,7 @@ for (var _len = arguments.length, names = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {

return names.reduce(function (actions, name) {
return Object.assign(actions, _defineProperty({}, name, createAction(options.prefix + ":" + name)));
return Object.assign(actions, _defineProperty({}, name, _createAction(options.prefix + ":" + name)));
}, {});
}
function createReducer(defState) {
function _createReducer(defState) {
var reducers = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1];

@@ -98,2 +140,3 @@ var combine = arguments[2];

exports.createReducer = _createReducer;
function combineReducers(reducers) {

@@ -117,2 +160,31 @@ return function () {

function getter(path) {
return function (obj) {
for (var i = 0; i < path.length; i++) {
if (typeof obj === 'undefined' || obj === null) return obj;
obj = obj[path[i]];
}
return obj;
};
}
function factory(path) {
var options = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1];
var mapper = getter(path);
return {
createAction: function createAction(name) {
var opt = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1];
return _createAction(typeof name === 'string' ? [].concat(_toConsumableArray(path), [name]).join(':') : name, Object.assign({ mapState: mapper }, options, opt));
},
createReducer: function createReducer() {
return _createReducer.apply(undefined, arguments);
},
path: path,
map: mapper
};
}
function bindAction(action, dispatch) {

@@ -119,0 +191,0 @@ var meta = arguments.length <= 2 || arguments[2] === undefined ? {} : arguments[2];

@@ -5,15 +5,46 @@ import Immutable from 'seamless-immutable'

export function createAction(name, mapper = x => x, metaMapper = x => x) {
var symbol = Symbol(name);
const IDENTITY = x => x;
const DUX_ACTION = Symbol()
var action = function(payload, meta) {
return {
export function createAction(name, { map = IDENTITY, mapMeta = IDENTITY, mapState = IDENTITY } = {}) {
let action;
if (typeof name === 'function') {
action = function(payload, meta) {
let inner = name(payload, meta);
if (typeof inner === 'function') {
return function (dispatch, getState) {
return inner(dispatch, (root = false) => root ? getState() : mapState(getState()))
}
}
return inner;
}
action[DUX_ACTION] = {
thunk: true,
mapState: mapState,
original: name
};
} else {
let symbol = Symbol(name);
action = function(payload, meta) {
return {
type: symbol,
payload: map(payload),
meta: mapMeta(meta)
}
}
action.type = symbol;
action[DUX_ACTION] = {
basic: true,
type: symbol,
payload: mapper(payload),
meta: metaMapper(meta)
name: name
}
}
action.type = symbol;
return action;

@@ -75,2 +106,24 @@ }

function getter(path) {
return function(obj) {
for (var i = 0; i < path.length; i++) {
if (typeof obj === 'undefined' || obj === null) return obj;
obj = obj[path[i]]
}
return obj;
}
}
export function factory(path, options = {}) {
let mapper = getter(path);
return {
createAction: (name, opt = {}) => createAction(typeof name === 'string' ? [...path, name].join(':') : name, Object.assign({ mapState: mapper }, options, opt)),
createReducer: (...args) => createReducer(...args),
path,
map: mapper
}
}
export function bindAction(action, dispatch, meta = {}) {

@@ -77,0 +130,0 @@ return (payload, ameta = {}) => dispatch(action(payload, Object.assign({}, meta, ameta)));

2

package.json
{
"name": "@eknkc/dux",
"version": "3.1.1",
"version": "3.2.0",
"description": "Redux helpers",

@@ -5,0 +5,0 @@ "main": "build.js",

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc