UNPKG

attadux

Version:

Implementation of the redux-modular-ducks, forked from the extensible-duck implementation and extended to include spected validators, state machines, helpers, web workers, effect handling, action multipliers, action enhancers, action throttling/debouncing

95 lines (57 loc) 3.24 kB
'use strict'; exports.__esModule = true; exports.copyRawQueriesToConsts = exports.getRawQueries = exports.makeQueries = exports.getQueries = undefined; var _assocPath = require('ramda/src/assocPath'); var _assocPath2 = _interopRequireDefault(_assocPath); var _prop = require('ramda/src/prop'); var _prop2 = _interopRequireDefault(_prop); var _always = require('ramda/src/always'); var _always2 = _interopRequireDefault(_always); var _ifElse = require('ramda/src/ifElse'); var _ifElse2 = _interopRequireDefault(_ifElse); var _filter = require('ramda/src/filter'); var _filter2 = _interopRequireDefault(_filter); var _map = require('ramda/src/map'); var _map2 = _interopRequireDefault(_map); var _isNil = require('ramda/src/isNil'); var _isNil2 = _interopRequireDefault(_isNil); var _reject = require('ramda/src/reject'); var _reject2 = _interopRequireDefault(_reject); var _pathOr = require('ramda/src/pathOr'); var _pathOr2 = _interopRequireDefault(_pathOr); var _compose = require('ramda/src/compose'); var _compose2 = _interopRequireDefault(_compose); var _call = require('ramda/src/call'); var _call2 = _interopRequireDefault(_call); var _converge = require('ramda/src/converge'); var _converge2 = _interopRequireDefault(_converge); var _identity = require('ramda/src/identity'); var _identity2 = _interopRequireDefault(_identity); var _find = require('ramda/src/find'); var _find2 = _interopRequireDefault(_find); var _is = require('ramda/src/is'); var _is2 = _interopRequireDefault(_is); var _util = require('../util'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } var makeQuery = function makeQuery(query) { if ((0, _is2['default'])(Array, query)) { var buildQuery = (0, _find2['default'])((0, _is2['default'])(Function), query) || _identity2['default']; var raw = (0, _find2['default'])((0, _is2['default'])(String), query) || ''; return buildQuery(raw); } else if ((0, _is2['default'])(String, query)) { return query; } return null; }; var getQueries = exports.getQueries = (0, _converge2['default'])(_call2['default'], [(0, _compose2['default'])(_util.coerceToFn, (0, _pathOr2['default'])({}, ['options', 'queries'])), _identity2['default']]); var makeQueries = exports.makeQueries = (0, _compose2['default'])((0, _reject2['default'])(_isNil2['default']), (0, _map2['default'])(makeQuery), getQueries); var getRawQueries = exports.getRawQueries = (0, _compose2['default'])((0, _filter2['default'])((0, _is2['default'])(String)), (0, _map2['default'])((0, _ifElse2['default'])((0, _is2['default'])(Array), (0, _find2['default'])((0, _is2['default'])(String)), (0, _always2['default'])(null))), (0, _prop2['default'])('queries')); /** * Copies the string values from the Duck's queries into `consts.queries`. * * @func * @sig {k: v} -> {k: v} * @param {Object} duck A duck which (may) contain queries (inside of its 'options') * @returns {Object} A clone of the duck, but now with `consts.queries`. */ var copyRawQueriesToConsts = exports.copyRawQueriesToConsts = (0, _converge2['default'])((0, _assocPath2['default'])(['consts', 'queries']), [getRawQueries, _identity2['default']]);