@rest-api/react-models
Version:
[](https://www.npmjs.com/package/@rest-api/react-models) [](https://codecov.io/gh/hector7/rest-
50 lines (49 loc) • 2.21 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.filterNulls = exports.getProvider = exports.createAction = exports.HttpError = exports.useDispatch = exports.useSelector = exports.idOnly = exports.required = void 0;
const react_1 = __importDefault(require("react"));
const react_redux_1 = require("react-redux");
const redux_thunk_1 = __importDefault(require("redux-thunk"));
const redux_1 = require("redux");
const ReducerStorage_1 = __importDefault(require("./src/models/ReducerStorage"));
var DataTypes_1 = require("./src/DataTypes");
Object.defineProperty(exports, "Model", { enumerable: true, get: function () { return DataTypes_1.default; } });
Object.defineProperty(exports, "Schema", { enumerable: true, get: function () { return DataTypes_1.Schema; } });
Object.defineProperty(exports, "SchemaClass", { enumerable: true, get: function () { return DataTypes_1.SchemaClass; } });
const TRUE = true;
exports.required = TRUE;
exports.idOnly = TRUE;
const initialContext = null;
const Context = react_1.default.createContext(initialContext);
exports.useSelector = react_redux_1.createSelectorHook(Context);
exports.useDispatch = react_redux_1.createDispatchHook(Context);
class HttpError {
constructor(status, message) {
this.codeNumber = status;
this.date = new Date();
this.message = message;
}
}
exports.HttpError = HttpError;
function createAction(type, payload) {
if (payload) {
return Object.assign({ type }, payload);
}
return { type };
}
exports.createAction = createAction;
function getProvider() {
const store = redux_1.createStore(ReducerStorage_1.default.generalReducer, {}, redux_1.applyMiddleware(redux_thunk_1.default));
const Provider = (props) => {
return react_1.default.createElement(react_redux_1.Provider, Object.assign({}, props, { store: store, context: Context }));
};
return Provider;
}
exports.getProvider = getProvider;
function filterNulls(array) {
return array.filter(el => el !== null);
}
exports.filterNulls = filterNulls;