@talend/react-cmf
Version:
A framework built on top of best react libraries
72 lines (66 loc) • 2.25 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.mutateCollection = exports.mutate = exports.addOrReplaceCollection = exports.addOrReplace = exports.COLLECTION_REMOVE = exports.COLLECTION_MUTATE = exports.COLLECTION_ADD_OR_REPLACE = void 0;
exports.remove = remove;
exports.removeCollection = void 0;
var _constant = _interopRequireDefault(require("../constant"));
var _lodash = require("lodash");
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
/**
* @module react-cmf/lib/actions/collectionsActions
*/
// keep backward compatibility
const {
COLLECTION_ADD_OR_REPLACE,
COLLECTION_REMOVE,
COLLECTION_MUTATE
} = _constant.default;
/**
* Add or replace collection data in store
* curried function
* @param {string | Array<string>} collectionId - path to collection
* @param {any} data element that represent business data
*/
exports.COLLECTION_MUTATE = COLLECTION_MUTATE;
exports.COLLECTION_REMOVE = COLLECTION_REMOVE;
exports.COLLECTION_ADD_OR_REPLACE = COLLECTION_ADD_OR_REPLACE;
const addOrReplace = exports.addOrReplace = (0, _lodash.curry)((collectionId, data) => ({
type: _constant.default.COLLECTION_ADD_OR_REPLACE,
collectionId,
data
}));
/**
* Remove collection data in store to free space
* @param {string | Array<string>} collectionId - path to collection
*
* @throws if you try to remove non existent collection
*/
function remove(collectionId) {
return {
type: _constant.default.COLLECTION_REMOVE,
collectionId
};
}
/**
* mutateCollection let's you apply operations on a given collection
* curried function
* @param {string | Array<string>} collectionId - path to collection
* @param {object} operations operations to be applied on the collection
* {
* add: [],
* update: {},
* delete: []
* }
*/
const mutate = exports.mutate = (0, _lodash.curry)((id, operations) => ({
type: _constant.default.COLLECTION_MUTATE,
id,
operations
}));
// backward compatibility
const addOrReplaceCollection = exports.addOrReplaceCollection = addOrReplace;
const mutateCollection = exports.mutateCollection = mutate;
const removeCollection = exports.removeCollection = remove;
//# sourceMappingURL=collectionsActions.js.map