UNPKG

24.6 kBJavaScriptView Raw
1(function webpackUniversalModuleDefinition(root, factory) {
2 if(typeof exports === 'object' && typeof module === 'object')
3 module.exports = factory(require("react"), require("react-redux"), require("lodash/lang"), require("./actions.js"), require("./pageUtils.js"), require("./router.js"), require("reselect"), require("./shouldGoBack.js"));
4 else if(typeof define === 'function' && define.amd)
5 define(["react", "react-redux", "lodash/lang", "./actions.js", "./pageUtils.js", "./router.js", "reselect", "./shouldGoBack.js"], factory);
6 else if(typeof exports === 'object')
7 exports["components.js"] = factory(require("react"), require("react-redux"), require("lodash/lang"), require("./actions.js"), require("./pageUtils.js"), require("./router.js"), require("reselect"), require("./shouldGoBack.js"));
8 else
9 root["components.js"] = factory(root["react"], root["react-redux"], root["lodash/lang"], root["./actions.js"], root["./pageUtils.js"], root["./router.js"], root["reselect"], root["./shouldGoBack.js"]);
10})(this, function(__WEBPACK_EXTERNAL_MODULE_2__, __WEBPACK_EXTERNAL_MODULE_5__, __WEBPACK_EXTERNAL_MODULE_12__, __WEBPACK_EXTERNAL_MODULE_13__, __WEBPACK_EXTERNAL_MODULE_14__, __WEBPACK_EXTERNAL_MODULE_15__, __WEBPACK_EXTERNAL_MODULE_16__, __WEBPACK_EXTERNAL_MODULE_17__) {
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 exports.UrlSync = exports._UrlSync = exports.JSForm = exports.Form = exports._Form = exports.LinkHijacker = exports._LinkHijacker = exports.BackAnchor = exports.Anchor = exports._BackAnchor = exports._Anchor = undefined;
63
64 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
65
66 var _react = __webpack_require__(2);
67
68 var _react2 = _interopRequireDefault(_react);
69
70 var _reactRedux = __webpack_require__(5);
71
72 var _reselect = __webpack_require__(16);
73
74 var _lang = __webpack_require__(12);
75
76 var _actions = __webpack_require__(13);
77
78 var navigationActions = _interopRequireWildcard(_actions);
79
80 var _router = __webpack_require__(15);
81
82 var _pageUtils = __webpack_require__(14);
83
84 var _shouldGoBack = __webpack_require__(17);
85
86 var _shouldGoBack2 = _interopRequireDefault(_shouldGoBack);
87
88 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; } }
89
90 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
91
92 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
93
94 function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
95
96 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
97
98 var T = _react2.default.PropTypes;
99
100 var isNewTabClick = function isNewTabClick(e) {
101 return e.metaKey || e.ctrlKey || e.button === 1 || e.button === 4;
102 };
103
104 var findLinkParent = function findLinkParent(el) {
105 if (el.tagName === 'A') {
106 return el;
107 }
108
109 if (el.parentNode) {
110 return findLinkParent(el.parentNode);
111 }
112 };
113
114 // ****** Anchor
115
116 var _Anchor = exports._Anchor = function (_React$Component) {
117 _inherits(_Anchor, _React$Component);
118
119 function _Anchor() {
120 var _Object$getPrototypeO;
121
122 var _temp, _this, _ret;
123
124 _classCallCheck(this, _Anchor);
125
126 for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
127 args[_key] = arguments[_key];
128 }
129
130 return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_Object$getPrototypeO = Object.getPrototypeOf(_Anchor)).call.apply(_Object$getPrototypeO, [this].concat(args))), _this), _this.handleClick = function (e) {
131 if (isNewTabClick(e)) {
132 return;
133 }
134
135 _this.props.onClick(e);
136 if (e.defaultPrevented) {
137 return;
138 }
139
140 e.stopPropagation();
141 e.preventDefault();
142
143 var url = _this.props.href.split('?')[0];
144 var queryParams = (0, _pageUtils.extractQuery)(_this.props.href);
145
146 _this.props.navigateToPage(url, queryParams);
147 }, _temp), _possibleConstructorReturn(_this, _ret);
148 }
149
150 _createClass(_Anchor, [{
151 key: 'render',
152 value: function render() {
153 var _props = this.props;
154 var href = _props.href;
155 var className = _props.className;
156 var style = _props.style;
157 var children = _props.children;
158
159
160 return _react2.default.createElement(
161 'a',
162 {
163 href: href,
164 className: className,
165 style: style,
166 onClick: this.handleClick
167 },
168 children
169 );
170 }
171 }]);
172
173 return _Anchor;
174 }(_react2.default.Component);
175
176 _Anchor.propTypes = {
177 href: T.string,
178 noop: T.bool,
179 className: T.string,
180 style: T.object,
181 navigateToPage: T.func,
182 onClick: T.func
183 };
184 _Anchor.defaultProps = {
185 href: '#',
186 noop: false,
187 navigateToPage: function navigateToPage() {},
188 onClick: function onClick() {}
189 };
190
191 var _BackAnchor = exports._BackAnchor = function (_React$Component2) {
192 _inherits(_BackAnchor, _React$Component2);
193
194 function _BackAnchor() {
195 var _Object$getPrototypeO2;
196
197 var _temp2, _this2, _ret2;
198
199 _classCallCheck(this, _BackAnchor);
200
201 for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
202 args[_key2] = arguments[_key2];
203 }
204
205 return _ret2 = (_temp2 = (_this2 = _possibleConstructorReturn(this, (_Object$getPrototypeO2 = Object.getPrototypeOf(_BackAnchor)).call.apply(_Object$getPrototypeO2, [this].concat(args))), _this2), _this2.handleClick = function (e) {
206 if (isNewTabClick(e)) {
207 return;
208 }
209
210 _this2.props.onClick(e);
211 if (e.defaultPrevented) {
212 return;
213 }
214
215 e.stopPropagation();
216 e.preventDefault();
217
218 var _this2$props = _this2.props;
219 var urlHistory = _this2$props.urlHistory;
220 var currentIndex = _this2$props.currentIndex;
221 var href = _this2$props.href;
222 var referrer = _this2$props.referrer;
223 var backupHref = _this2$props.backupHref;
224
225
226 var unParsedUrl = href === _BackAnchor.AUTO_ROUTE ? referrer || backupHref : href;
227 var url = unParsedUrl.split('?')[0];
228 var queryParams = (0, _pageUtils.extractQuery)(unParsedUrl);
229
230 if ((0, _shouldGoBack2.default)(urlHistory, currentIndex, url, queryParams)) {
231 history.back();
232 } else {
233 _this2.props.navigateToPage(url, queryParams);
234 }
235 }, _temp2), _possibleConstructorReturn(_this2, _ret2);
236 }
237
238 _createClass(_BackAnchor, [{
239 key: 'render',
240 value: function render() {
241 var _props2 = this.props;
242 var href = _props2.href;
243 var className = _props2.className;
244 var style = _props2.style;
245 var children = _props2.children;
246 var referrer = _props2.referrer;
247 var backupHref = _props2.backupHref;
248
249 var renderHref = href === _BackAnchor.AUTO_ROUTE ? referrer || backupHref : href;
250
251 return _react2.default.createElement(
252 'a',
253 {
254 href: renderHref,
255 className: className,
256 style: style,
257 onClick: this.handleClick
258 },
259 children
260 );
261 }
262 }]);
263
264 return _BackAnchor;
265 }(_react2.default.Component);
266
267 _BackAnchor.propTypes = {
268 href: T.string,
269 backupHref: T.string,
270 noop: T.bool,
271 className: T.string,
272 style: T.object,
273 referrer: T.string,
274 navigateToPage: T.func,
275 onClick: T.func
276 };
277 _BackAnchor.defaultProps = {
278 href: '#',
279 backupHref: '#',
280 noop: false,
281 referrer: '',
282 navigateToPage: function navigateToPage() {},
283 onClick: function onClick() {}
284 };
285 _BackAnchor.AUTO_ROUTE = '__backanchor-auto-route';
286
287
288 var anchorSelector = (0, _reselect.createSelector)(function (state) {
289 return state.platform.history;
290 }, function (state) {
291 return state.platform.currentPageIndex;
292 }, function (state) {
293 return state.platform.currentPage.referrer;
294 }, function (urlHistory, currentIndex, referrer) {
295 return { urlHistory: urlHistory, currentIndex: currentIndex, referrer: referrer };
296 });
297
298 var anchorDispatcher = function anchorDispatcher(dispatch) {
299 return {
300 navigateToPage: function navigateToPage(url, queryParams) {
301 return dispatch(navigationActions.navigateToUrl(_router.METHODS.GET, url, { queryParams: queryParams }));
302 }
303 };
304 };
305
306 var Anchor = exports.Anchor = (0, _reactRedux.connect)(null, anchorDispatcher)(_Anchor);
307 var BackAnchor = exports.BackAnchor = (0, _reactRedux.connect)(anchorSelector, anchorDispatcher)(_BackAnchor);
308 BackAnchor.AUTO_ROUTE = _BackAnchor.AUTO_ROUTE;
309
310 // ****** LinkJacker
311
312 // _LinkHijacker is a component used to explicitly hijack all link clicks
313 // in a given area and transform them into calls to navigationActions.navigateToUrl.
314 // This is useful in situations where you have content thats created
315 // outside of your app's react templates (e.g., user generated content or pages
316 // stored in a wiki).
317 // It purposefully doesn't render any markup and attaches its handlers to the child
318 // element you pass in, allowing full control of the markup.
319
320 var _LinkHijacker = exports._LinkHijacker = function (_React$Component3) {
321 _inherits(_LinkHijacker, _React$Component3);
322
323 function _LinkHijacker() {
324 var _Object$getPrototypeO3;
325
326 var _temp3, _this3, _ret3;
327
328 _classCallCheck(this, _LinkHijacker);
329
330 for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
331 args[_key3] = arguments[_key3];
332 }
333
334 return _ret3 = (_temp3 = (_this3 = _possibleConstructorReturn(this, (_Object$getPrototypeO3 = Object.getPrototypeOf(_LinkHijacker)).call.apply(_Object$getPrototypeO3, [this].concat(args))), _this3), _this3.onClick = function (e) {
335 // let the content node's click handler run first and allow it call
336 // preventDefault if desired.
337 var child = _this3.props.children;
338
339 if (child && child.props.onClick) {
340 child.props.onClick(e);
341 if (e.defaultPrevented) {
342 return;
343 }
344 }
345
346 var $link = findLinkParent(e.target);
347 if (!$link) {
348 return;
349 }
350
351 if (isNewTabClick(e)) {
352 return;
353 }
354
355 var path = _this3.extractValidPath($link);
356 if (!path) {
357 return;
358 }
359
360 _this3.props.onLinkClick(path, e, $link);
361 if (e.defaultPrevented) {
362 return;
363 }
364
365 e.stopPropagation();
366 e.preventDefault();
367
368 var url = path.split('?')[0];
369 var queryParams = (0, _pageUtils.extractQuery)(path);
370
371 _this3.props.navigateToPage(url, queryParams);
372 }, _temp3), _possibleConstructorReturn(_this3, _ret3);
373 } // intended to supplied by connect
374
375
376 _createClass(_LinkHijacker, [{
377 key: 'extractValidPath',
378 value: function extractValidPath($link) {
379 var href = $link.getAttribute('href');
380 if (!href) {
381 return;
382 }
383
384 // if its a relative link, use it without validation
385 if (href.indexOf('//') === -1) {
386 return href;
387 }
388
389 // if we have a regexp to validate and extract paths, return it
390 var urlRegexp = this.props.urlRegexp;
391
392 if (urlRegexp) {
393 var match = href.match(urlRegexp);
394 if (match && match[1]) {
395 return match[1];
396 }
397 }
398 }
399 }, {
400 key: 'render',
401 value: function render() {
402 var child = this.props.children;
403
404
405 return _react2.default.cloneElement(_react2.default.Children.only(child), {
406 onClick: this.onClick
407 });
408 }
409 }]);
410
411 return _LinkHijacker;
412 }(_react2.default.Component);
413
414 _LinkHijacker.propTypes = {
415 children: T.element.isRequired,
416 onLinkClick: T.func, // you can use a normal onclick handler attached
417 // to your content node. Or, if you'd like to only run a click handler
418 // when a an a tag within this element tree has been clicked,
419 // you can use `onLinkClick`
420 urlRegexp: T.instanceOf(RegExp), // a regexp used to validate a url for
421 // navigating to. It is expected that the regexp will handle capturing
422 // the proper path we want to navigate to, in the first match. (match[1]);
423 // (note: non-capturing groups might be helpful in doing so).
424 navigateToPage: T.func.isRequired };
425 _LinkHijacker.defaultProps = {
426 navigateToPage: function navigateToPage() {},
427 onLinkClick: function onLinkClick() {}
428 };
429 var LinkHijacker = exports.LinkHijacker = (0, _reactRedux.connect)(null, anchorDispatcher)(_LinkHijacker);
430
431 // ****** Form
432 var getValues = function getValues(form) {
433 if (!form || form.nodeName.toLowerCase() !== 'form') {
434 return {};
435 }
436
437 return Array.from(form.elements).reduce(function (values, el) {
438 if (el.name) {
439 switch (el.type) {
440 case 'checkbox':
441 {
442 if (!values[el.name]) {
443 values[el.name] = [];
444 }
445 if (el.checked) {
446 values[el.name].push(el.value);
447 }
448 break;
449 }
450 case 'select-multiple':
451 {
452 values[el.name] = Array.from(el.options).map(function (o) {
453 return o.value;
454 });
455 break;
456 }
457 case 'radio':
458 {
459 if (el.checked) {
460 values[el.name] = el.value;
461 }
462 break;
463 }
464 default:
465 {
466 values[el.name] = el.value;
467 break;
468 }
469 }
470 }
471 return values;
472 }, {});
473 };
474
475 var preventFormSubmit = function preventFormSubmit(e) {
476 e.preventDefault();
477
478 // iOS doesn't automatically unfocus form inputs, this leaves the keyboard
479 // open and can create weird states where clicking anything on the page
480 // re-opens the keyboard
481 if (document.activeElement) {
482 document.activeElement.blur();
483 }
484 };
485
486 var _Form = exports._Form = function (_React$Component4) {
487 _inherits(_Form, _React$Component4);
488
489 function _Form() {
490 var _Object$getPrototypeO4;
491
492 var _temp4, _this4, _ret4;
493
494 _classCallCheck(this, _Form);
495
496 for (var _len4 = arguments.length, args = Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
497 args[_key4] = arguments[_key4];
498 }
499
500 return _ret4 = (_temp4 = (_this4 = _possibleConstructorReturn(this, (_Object$getPrototypeO4 = Object.getPrototypeOf(_Form)).call.apply(_Object$getPrototypeO4, [this].concat(args))), _this4), _this4.handleSubmit = function (e) {
501 preventFormSubmit(e);
502
503 var form = e.target;
504 _this4.props.onSubmit(_this4.props.action, _this4.props.method, getValues(form));
505 }, _temp4), _possibleConstructorReturn(_this4, _ret4);
506 }
507
508 _createClass(_Form, [{
509 key: 'render',
510 value: function render() {
511 var _props3 = this.props;
512 var className = _props3.className;
513 var action = _props3.action;
514 var method = _props3.method;
515 var style = _props3.style;
516 var children = _props3.children;
517
518
519 return _react2.default.createElement(
520 'form',
521 {
522 className: className,
523 action: action,
524 method: method,
525 style: style,
526 onSubmit: this.handleSubmit
527 },
528 children
529 );
530 }
531 }]);
532
533 return _Form;
534 }(_react2.default.Component);
535
536 _Form.propTypes = {
537 action: T.string.isRequired,
538 method: T.oneOf([_router.METHODS.POST, _router.METHODS.GET]),
539 className: T.string,
540 style: T.object,
541 onSubmit: T.func
542 };
543 _Form.defaultProps = {
544 method: _router.METHODS.POST,
545 onSubmit: function onSubmit() {}
546 };
547
548
549 var formDispatcher = function formDispatcher(dispatch) {
550 return {
551 onSubmit: function onSubmit(url, method, bodyParams) {
552 return dispatch(navigationActions.navigateToUrl(method, url, { bodyParams: bodyParams }));
553 }
554 };
555 };
556
557 var Form = exports.Form = (0, _reactRedux.connect)(null, formDispatcher)(_Form);
558
559 var JSForm = exports.JSForm = function (_React$Component5) {
560 _inherits(JSForm, _React$Component5);
561
562 function JSForm() {
563 var _Object$getPrototypeO5;
564
565 var _temp5, _this5, _ret5;
566
567 _classCallCheck(this, JSForm);
568
569 for (var _len5 = arguments.length, args = Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {
570 args[_key5] = arguments[_key5];
571 }
572
573 return _ret5 = (_temp5 = (_this5 = _possibleConstructorReturn(this, (_Object$getPrototypeO5 = Object.getPrototypeOf(JSForm)).call.apply(_Object$getPrototypeO5, [this].concat(args))), _this5), _this5.handleSubmit = function (e) {
574 preventFormSubmit(e);
575 var form = e.target;
576 _this5.props.onSubmit(getValues(form));
577 }, _temp5), _possibleConstructorReturn(_this5, _ret5);
578 }
579
580 _createClass(JSForm, [{
581 key: 'render',
582 value: function render() {
583 var _props4 = this.props;
584 var className = _props4.className;
585 var style = _props4.style;
586 var children = _props4.children;
587
588
589 return _react2.default.createElement(
590 'form',
591 { className: className, style: style, onSubmit: this.handleSubmit },
592 children
593 );
594 }
595 }]);
596
597 return JSForm;
598 }(_react2.default.Component);
599
600 // ****** UrlSync
601
602
603 JSForm.propTypes = {
604 onSubmit: T.func.isRequired,
605 className: T.string,
606 style: T.object
607 };
608
609 var _UrlSync = exports._UrlSync = function (_React$Component6) {
610 _inherits(_UrlSync, _React$Component6);
611
612 function _UrlSync() {
613 _classCallCheck(this, _UrlSync);
614
615 return _possibleConstructorReturn(this, Object.getPrototypeOf(_UrlSync).apply(this, arguments));
616 }
617
618 _createClass(_UrlSync, [{
619 key: 'componentDidMount',
620 value: function componentDidMount() {
621 var _this7 = this;
622
623 var handlePopstate = function handlePopstate() {
624 var pathname = self.location.pathname;
625 var currentQuery = (0, _pageUtils.extractQuery)(self.location.search);
626 var currentHash = {}; // TODO: address how hashes are displayed
627 var pageIndex = -1;
628 var hist = {};
629
630 for (var i = _this7.props.history.length - 1; i >= 0; i--) {
631 hist = _this7.props.history[i];
632 if (hist.url === pathname && (0, _lang.isEqual)(hist.queryParams, currentQuery)) {
633 pageIndex = i;
634 break;
635 }
636 }
637
638 if (pageIndex > -1) {
639 var _hist = hist;
640 var url = _hist.url;
641 var queryParams = _hist.queryParams;
642 var hashParams = _hist.hashParams;
643 var urlParams = _hist.urlParams;
644 var referrer = _hist.referrer;
645
646 _this7.props.gotoPageIndex(pageIndex, url, { queryParams: queryParams, hashParams: hashParams, urlParams: urlParams, referrer: referrer });
647 } else {
648 // can't find the url, just navigate
649 _this7.props.navigateToPage(pathname, currentQuery, currentHash);
650 }
651 };
652
653 self.addEventListener('popstate', handlePopstate);
654 self.addEventListener('hashchange', handlePopstate);
655 }
656 }, {
657 key: 'componentWillUpdate',
658 value: function componentWillUpdate(nextProps) {
659 var currentQuery = (0, _pageUtils.extractQuery)(self.location.search);
660 var pageIndex = nextProps.pageIndex;
661 var history = nextProps.history;
662
663 var page = history[pageIndex];
664 var newUrl = page.url;
665 var newQuery = page.queryParams;
666
667 if (self.location.pathname !== newUrl || !(0, _lang.isEqual)(currentQuery, newQuery)) {
668 if (self.history && self.history.pushState) {
669 var newHref = newUrl;
670 if (!(0, _lang.isEmpty)(newQuery)) {
671 newHref += (0, _pageUtils.createQuery)(newQuery);
672 }
673 self.history.pushState({}, '', newHref);
674 } else {
675 self.location = newUrl;
676 }
677 }
678 }
679 }, {
680 key: 'render',
681 value: function render() {
682 return false;
683 }
684 }]);
685
686 return _UrlSync;
687 }(_react2.default.Component);
688
689 _UrlSync.propTypes = {
690 pageIndex: T.number.isRequired,
691 history: T.array.isRequired,
692 gotoPageIndex: T.func,
693 navigateToPage: T.func
694 };
695 _UrlSync.defaultProps = {
696 gotoPageIndex: function gotoPageIndex() {},
697 navigateToPage: function navigateToPage() {}
698 };
699
700
701 var urlSelector = (0, _reselect.createSelector)(function (state) {
702 return state.platform.currentPageIndex;
703 }, function (state) {
704 return state.platform.history;
705 }, function (pageIndex, history) {
706 return { pageIndex: pageIndex, history: history };
707 });
708
709 var urlDispatcher = function urlDispatcher(dispatch) {
710 return {
711 gotoPageIndex: function gotoPageIndex(index, url, data) {
712 return dispatch(navigationActions.gotoPageIndex(index, url, data));
713 },
714 navigateToPage: function navigateToPage(url, queryParams, hashParams) {
715 return dispatch(navigationActions.navigateToUrl(_router.METHODS.GET, url, { queryParams: queryParams, hashParams: hashParams }));
716 }
717 };
718 };
719
720 var UrlSync = exports.UrlSync = (0, _reactRedux.connect)(urlSelector, urlDispatcher)(_UrlSync);
721
722/***/ },
723/* 1 */,
724/* 2 */
725/***/ function(module, exports) {
726
727 module.exports = require("react");
728
729/***/ },
730/* 3 */,
731/* 4 */,
732/* 5 */
733/***/ function(module, exports) {
734
735 module.exports = require("react-redux");
736
737/***/ },
738/* 6 */,
739/* 7 */,
740/* 8 */,
741/* 9 */,
742/* 10 */,
743/* 11 */,
744/* 12 */
745/***/ function(module, exports) {
746
747 module.exports = require("lodash/lang");
748
749/***/ },
750/* 13 */
751/***/ function(module, exports) {
752
753 module.exports = __WEBPACK_EXTERNAL_MODULE_13__;
754
755/***/ },
756/* 14 */
757/***/ function(module, exports) {
758
759 module.exports = __WEBPACK_EXTERNAL_MODULE_14__;
760
761/***/ },
762/* 15 */
763/***/ function(module, exports) {
764
765 module.exports = __WEBPACK_EXTERNAL_MODULE_15__;
766
767/***/ },
768/* 16 */
769/***/ function(module, exports) {
770
771 module.exports = require("reselect");
772
773/***/ },
774/* 17 */
775/***/ function(module, exports) {
776
777 module.exports = __WEBPACK_EXTERNAL_MODULE_17__;
778
779/***/ }
780/******/ ])
781});
782;
\No newline at end of file