UNPKG

@tegrus/formio-react

Version:

React renderer for form.io forms.

101 lines (82 loc) 2.93 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.indexForms = exports.resetForms = undefined; var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; var _formiojs = require('@tegrus/formiojs'); var _root = require('../root'); var _constants = require('./constants'); var types = _interopRequireWildcard(_constants); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } var resetForms = exports.resetForms = function resetForms(name) { return { type: types.FORMS_RESET, name: name }; }; var requestForms = function requestForms(name, page, params) { return { type: types.FORMS_REQUEST, name: name, page: page, params: params }; }; var receiveForms = function receiveForms(name, forms) { return { type: types.FORMS_SUCCESS, name: name, forms: forms }; }; var failForms = function failForms(name, error) { return { type: types.FORMS_FAILURE, name: name, error: error }; }; var indexForms = exports.indexForms = function indexForms(name) { var page = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1; var params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; var done = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : function () {}; return function (dispatch, getState) { dispatch(requestForms(name, page, params)); var _selectRoot = (0, _root.selectRoot)(name, getState()), limit = _selectRoot.limit, query = _selectRoot.query, select = _selectRoot.select, sort = _selectRoot.sort; var formio = new _formiojs.Formio(_formiojs.Formio.getProjectUrl() + '/form'); var requestParams = _extends({}, query, params); // Ten is the default so if set to 10, don't send. if (limit !== 10) { requestParams.limit = limit; } else { delete requestParams.limit; } if (page !== 1) { requestParams.skip = (page - 1) * limit; } else { delete requestParams.skip; } if (select) { requestParams.select = select; } else { delete requestParams.select; } if (sort) { requestParams.sort = sort; } else { delete requestParams.sort; } return formio.loadForms({ params: requestParams }).then(function (result) { dispatch(receiveForms(name, result)); done(null, result); }).catch(function (error) { dispatch(failForms(name, error)); done(error); }); }; };