UNPKG

6.8 kBJavaScriptView Raw
1(function webpackUniversalModuleDefinition(root, factory) {
2 if(typeof exports === 'object' && typeof module === 'object')
3 module.exports = factory(require("@r/middleware"), require("react"), require("react-dom"), require("redux"), require("react-redux"), require("./navigationMiddleware.js"), require("./reducer.js"));
4 else if(typeof define === 'function' && define.amd)
5 define(["@r/middleware", "react", "react-dom", "redux", "react-redux", "./navigationMiddleware.js", "./reducer.js"], factory);
6 else if(typeof exports === 'object')
7 exports["Client.js"] = factory(require("@r/middleware"), require("react"), require("react-dom"), require("redux"), require("react-redux"), require("./navigationMiddleware.js"), require("./reducer.js"));
8 else
9 root["Client.js"] = factory(root["@r/middleware"], root["react"], root["react-dom"], root["redux"], root["react-redux"], root["./navigationMiddleware.js"], root["./reducer.js"]);
10})(this, function(__WEBPACK_EXTERNAL_MODULE_1__, __WEBPACK_EXTERNAL_MODULE_2__, __WEBPACK_EXTERNAL_MODULE_3__, __WEBPACK_EXTERNAL_MODULE_4__, __WEBPACK_EXTERNAL_MODULE_5__, __WEBPACK_EXTERNAL_MODULE_6__, __WEBPACK_EXTERNAL_MODULE_7__) {
11return /******/ (function(modules) { // webpackBootstrap
12/******/ // The module cache
13/******/ var installedModules = {};
14
15/******/ // The require function
16/******/ function __webpack_require__(moduleId) {
17
18/******/ // Check if module is in cache
19/******/ if(installedModules[moduleId])
20/******/ return installedModules[moduleId].exports;
21
22/******/ // Create a new module (and put it into the cache)
23/******/ var module = installedModules[moduleId] = {
24/******/ exports: {},
25/******/ id: moduleId,
26/******/ loaded: false
27/******/ };
28
29/******/ // Execute the module function
30/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
31
32/******/ // Flag the module as loaded
33/******/ module.loaded = true;
34
35/******/ // Return the exports of the module
36/******/ return module.exports;
37/******/ }
38
39
40/******/ // expose the modules object (__webpack_modules__)
41/******/ __webpack_require__.m = modules;
42
43/******/ // expose the module cache
44/******/ __webpack_require__.c = installedModules;
45
46/******/ // __webpack_public_path__
47/******/ __webpack_require__.p = "";
48
49/******/ // Load entry module and return exports
50/******/ return __webpack_require__(0);
51/******/ })
52/************************************************************************/
53/******/ ([
54/* 0 */
55/***/ function(module, exports, __webpack_require__) {
56
57 'use strict';
58
59 Object.defineProperty(exports, "__esModule", {
60 value: true
61 });
62
63 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; };
64
65 var _middleware = __webpack_require__(1);
66
67 var _react = __webpack_require__(2);
68
69 var _react2 = _interopRequireDefault(_react);
70
71 var _reactDom = __webpack_require__(3);
72
73 var _reactDom2 = _interopRequireDefault(_reactDom);
74
75 var _redux = __webpack_require__(4);
76
77 var _reactRedux = __webpack_require__(5);
78
79 var _navigationMiddleware = __webpack_require__(6);
80
81 var _navigationMiddleware2 = _interopRequireDefault(_navigationMiddleware);
82
83 var _reducer = __webpack_require__(7);
84
85 var _reducer2 = _interopRequireDefault(_reducer);
86
87 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
88
89 function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }
90
91 exports.default = function (config) {
92 var _config$container = config.container;
93 var container = _config$container === undefined ? 'container' : _config$container;
94 var _config$dataVar = config.dataVar;
95 var dataVar = _config$dataVar === undefined ? '___r' : _config$dataVar;
96 var _config$modifyData = config.modifyData;
97 var modifyData = _config$modifyData === undefined ? function (data) {
98 return data;
99 } : _config$modifyData;
100 var _config$appComponent = config.appComponent;
101 var appComponent = _config$appComponent === undefined ? _react2.default.createElement('div', null) : _config$appComponent;
102 var _config$reducers = config.reducers;
103 var reducers = _config$reducers === undefined ? {} : _config$reducers;
104 var _config$reduxMiddlewa = config.reduxMiddleware;
105 var reduxMiddleware = _config$reduxMiddlewa === undefined ? [] : _config$reduxMiddlewa;
106 var _config$routes = config.routes;
107 var routes = _config$routes === undefined ? [] : _config$routes;
108 var _config$debug = config.debug;
109 var debug = _config$debug === undefined ? false : _config$debug;
110 var _config$onHandlerComp = config.onHandlerComplete;
111 var onHandlerComplete = _config$onHandlerComp === undefined ? function () {} : _config$onHandlerComp;
112
113
114 var well = _middleware.PromiseWell.create();
115 var thunk = _middleware.Thunker.create();
116 var nav = _navigationMiddleware2.default.create(routes, false, onHandlerComplete);
117
118 var reds = (0, _redux.combineReducers)(_extends({}, reducers, { platform: _reducer2.default }));
119 var wares = reduxMiddleware.concat([nav, thunk, well.middleware]);
120
121 if (debug && !window.devToolsExtension) {
122 wares.push(_middleware.Logger);
123 }
124
125 return function () {
126 var $container = document.getElementById(container);
127
128 var data = void 0;
129 try {
130 var temp = window[dataVar];
131 data = modifyData(temp);
132 } catch (e) {
133 data = {};
134 }
135
136 var store = (0, _redux.createStore)(reds, data, (0, _redux.compose)(_redux.applyMiddleware.apply(undefined, _toConsumableArray(wares)), window.devToolsExtension ? window.devToolsExtension() : function (f) {
137 return f;
138 }));
139
140 _reactDom2.default.render(_react2.default.createElement(
141 _reactRedux.Provider,
142 { store: store },
143 appComponent
144 ), $container);
145
146 return store;
147 };
148 };
149
150/***/ },
151/* 1 */
152/***/ function(module, exports) {
153
154 module.exports = require("@r/middleware");
155
156/***/ },
157/* 2 */
158/***/ function(module, exports) {
159
160 module.exports = require("react");
161
162/***/ },
163/* 3 */
164/***/ function(module, exports) {
165
166 module.exports = require("react-dom");
167
168/***/ },
169/* 4 */
170/***/ function(module, exports) {
171
172 module.exports = require("redux");
173
174/***/ },
175/* 5 */
176/***/ function(module, exports) {
177
178 module.exports = require("react-redux");
179
180/***/ },
181/* 6 */
182/***/ function(module, exports) {
183
184 module.exports = __WEBPACK_EXTERNAL_MODULE_6__;
185
186/***/ },
187/* 7 */
188/***/ function(module, exports) {
189
190 module.exports = __WEBPACK_EXTERNAL_MODULE_7__;
191
192/***/ }
193/******/ ])
194});
195;
\No newline at end of file