1 | 'use strict';
|
2 |
|
3 | Object.defineProperty(exports, "__esModule", {
|
4 | value: true
|
5 | });
|
6 | exports.createSimpleReducer = exports.registerWindowResize = exports.fromEmpty = undefined;
|
7 |
|
8 | var _data = require('data.maybe');
|
9 |
|
10 | var _debounce = require('debounce');
|
11 |
|
12 | var _debounce2 = _interopRequireDefault(_debounce);
|
13 |
|
14 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
15 |
|
16 | var fromEmpty = exports.fromEmpty = function fromEmpty(val) {
|
17 | return (0, _data.fromNullable)(val).chain(function (v) {
|
18 | return v == null ? (0, _data.Nothing)() : (0, _data.Just)(v);
|
19 | });
|
20 | };
|
21 |
|
22 |
|
23 | var registerWindowResize = exports.registerWindowResize = function registerWindowResize(_ref) {
|
24 | var store = _ref.store,
|
25 | actionName = _ref.actionName;
|
26 |
|
27 | var changeScreenSize = function changeScreenSize(win) {
|
28 | return {
|
29 | type: actionName,
|
30 | payload: {
|
31 | width: win.innerWidth,
|
32 | height: win.innerHeight
|
33 | }
|
34 | };
|
35 | };
|
36 |
|
37 | if (window) {
|
38 |
|
39 |
|
40 | console.log('registering window size....');
|
41 | var windowSizeListener = (0, _debounce2.default)(function (e) {
|
42 | return store.dispatch(changeScreenSize(e.target));
|
43 | }, 300);
|
44 | window.addEventListener('resize', windowSizeListener);
|
45 | store.dispatch(changeScreenSize(window));
|
46 |
|
47 | }
|
48 | };
|
49 |
|
50 |
|
51 | var createSimpleReducer = exports.createSimpleReducer = function createSimpleReducer(_ref2) {
|
52 | var defaultState = _ref2.defaultState,
|
53 | initialState = _ref2.initialState,
|
54 | actionName = _ref2.actionName;
|
55 | return function () {
|
56 | var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialState || defaultState || [];
|
57 | var action = arguments[1];
|
58 |
|
59 | switch (action.type) {
|
60 | case actionName:
|
61 | return action.payload;
|
62 | }
|
63 | return state;
|
64 | };
|
65 | };
|
66 |
|
\ | No newline at end of file |