Skip to content
This repository was archived by the owner on Sep 12, 2020. It is now read-only.

Commit ed35bcb

Browse files
author
Devajit Asem
committed
Latest dist changes
1 parent 26a6b0a commit ed35bcb

File tree

5 files changed

+298
-32
lines changed

5 files changed

+298
-32
lines changed

dist/HelperComponents.js

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
(function (global, factory) {
2+
if (typeof define === "function" && define.amd) {
3+
define(['exports', 'react'], factory);
4+
} else if (typeof exports !== "undefined") {
5+
factory(exports, require('react'));
6+
} else {
7+
var mod = {
8+
exports: {}
9+
};
10+
factory(mod.exports, global.react);
11+
global.HelperComponents = mod.exports;
12+
}
13+
})(this, function (exports, _react) {
14+
'use strict';
15+
16+
Object.defineProperty(exports, "__esModule", {
17+
value: true
18+
});
19+
exports.TriggerComponent = exports.WrappedComponent = undefined;
20+
21+
var _react2 = _interopRequireDefault(_react);
22+
23+
function _interopRequireDefault(obj) {
24+
return obj && obj.__esModule ? obj : {
25+
default: obj
26+
};
27+
}
28+
29+
var _extends = Object.assign || function (target) {
30+
for (var i = 1; i < arguments.length; i++) {
31+
var source = arguments[i];
32+
33+
for (var key in source) {
34+
if (Object.prototype.hasOwnProperty.call(source, key)) {
35+
target[key] = source[key];
36+
}
37+
}
38+
}
39+
40+
return target;
41+
};
42+
43+
var WrappedComponent = function WrappedComponent(_ref) {
44+
var toggleMenus = _ref.toggleMenus,
45+
component = _ref.component,
46+
label = _ref.label;
47+
48+
var TriggerComponent = component;
49+
return _react2.default.createElement(TriggerComponent, { toggleMenus: toggleMenus, label: label });
50+
};
51+
52+
var TriggerComponent = function TriggerComponent(_ref2) {
53+
var toggleMenus = _ref2.toggleMenus,
54+
label = _ref2.label;
55+
return _react2.default.createElement(
56+
'div',
57+
{ onClick: toggleMenus },
58+
label
59+
);
60+
};
61+
62+
TriggerComponent.propTypes = {
63+
toggleMenus: _react.PropTypes.func.isRequired,
64+
label: _react.PropTypes.string.isRequired
65+
};
66+
67+
WrappedComponent.propTypes = _extends({
68+
component: _react.PropTypes.func.isRequired
69+
}, TriggerComponent.propTypes);
70+
71+
exports.WrappedComponent = WrappedComponent;
72+
exports.TriggerComponent = TriggerComponent;
73+
});

dist/Menus.js

Lines changed: 142 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
(function (global, factory) {
22
if (typeof define === "function" && define.amd) {
3-
define(['exports', 'react', './Menu', './menus.css'], factory);
3+
define(['exports', 'react', 'react-dom', './Menu', './SubMenus', './HelperComponents', './menus.css'], factory);
44
} else if (typeof exports !== "undefined") {
5-
factory(exports, require('react'), require('./Menu'), require('./menus.css'));
5+
factory(exports, require('react'), require('react-dom'), require('./Menu'), require('./SubMenus'), require('./HelperComponents'), require('./menus.css'));
66
} else {
77
var mod = {
88
exports: {}
99
};
10-
factory(mod.exports, global.react, global.Menu, global.menus);
10+
factory(mod.exports, global.react, global.reactDom, global.Menu, global.SubMenus, global.HelperComponents, global.menus);
1111
global.Menus = mod.exports;
1212
}
13-
})(this, function (exports, _react, _Menu) {
13+
})(this, function (exports, _react, _reactDom, _Menu, _SubMenus, _HelperComponents) {
1414
'use strict';
1515

1616
Object.defineProperty(exports, "__esModule", {
@@ -19,45 +19,162 @@
1919

2020
var _react2 = _interopRequireDefault(_react);
2121

22+
var _reactDom2 = _interopRequireDefault(_reactDom);
23+
2224
var _Menu2 = _interopRequireDefault(_Menu);
2325

26+
var _SubMenus2 = _interopRequireDefault(_SubMenus);
27+
2428
function _interopRequireDefault(obj) {
2529
return obj && obj.__esModule ? obj : {
2630
default: obj
2731
};
2832
}
2933

30-
var Menus = function Menus(props) {
31-
var list = props.list,
32-
children = props.children,
33-
style = props.style;
34-
35-
var className = 'Menus';
36-
var MenuList = _react2.default.createElement(
37-
'ul',
38-
{ className: className, style: style },
39-
children
40-
);
41-
42-
if (!list) {
43-
MenuList = _react2.default.createElement(
44-
'div',
45-
{ className: className, style: style },
46-
children
47-
);
34+
function _classCallCheck(instance, Constructor) {
35+
if (!(instance instanceof Constructor)) {
36+
throw new TypeError("Cannot call a class as a function");
4837
}
49-
return MenuList;
50-
};
38+
}
39+
40+
var _createClass = function () {
41+
function defineProperties(target, props) {
42+
for (var i = 0; i < props.length; i++) {
43+
var descriptor = props[i];
44+
descriptor.enumerable = descriptor.enumerable || false;
45+
descriptor.configurable = true;
46+
if ("value" in descriptor) descriptor.writable = true;
47+
Object.defineProperty(target, descriptor.key, descriptor);
48+
}
49+
}
50+
51+
return function (Constructor, protoProps, staticProps) {
52+
if (protoProps) defineProperties(Constructor.prototype, protoProps);
53+
if (staticProps) defineProperties(Constructor, staticProps);
54+
return Constructor;
55+
};
56+
}();
57+
58+
function _possibleConstructorReturn(self, call) {
59+
if (!self) {
60+
throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
61+
}
62+
63+
return call && (typeof call === "object" || typeof call === "function") ? call : self;
64+
}
65+
66+
function _inherits(subClass, superClass) {
67+
if (typeof superClass !== "function" && superClass !== null) {
68+
throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);
69+
}
70+
71+
subClass.prototype = Object.create(superClass && superClass.prototype, {
72+
constructor: {
73+
value: subClass,
74+
enumerable: false,
75+
writable: true,
76+
configurable: true
77+
}
78+
});
79+
if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;
80+
}
81+
82+
var Menus = function (_React$Component) {
83+
_inherits(Menus, _React$Component);
84+
85+
function Menus(props) {
86+
_classCallCheck(this, Menus);
87+
88+
var _this = _possibleConstructorReturn(this, (Menus.__proto__ || Object.getPrototypeOf(Menus)).call(this, props));
89+
90+
_this.state = {
91+
visible: false
92+
};
93+
94+
_this.onDOMClick = _this.onDOMClick.bind(_this);
95+
_this.onClickedAway = _this.onClickedAway.bind(_this);
96+
_this.toggleMenus = _this.toggleMenus.bind(_this);
97+
return _this;
98+
}
99+
100+
_createClass(Menus, [{
101+
key: 'componentDidMount',
102+
value: function componentDidMount() {
103+
this.element = _reactDom2.default.findDOMNode(this);
104+
window.addEventListener('click', this.onDOMClick);
105+
}
106+
}, {
107+
key: 'componentWillUnmount',
108+
value: function componentWillUnmount() {
109+
window.removeEventListener('click', this.onDOMClick);
110+
}
111+
}, {
112+
key: 'onDOMClick',
113+
value: function onDOMClick(event) {
114+
if (this.element !== event.target && !this.element.contains(event.target)) {
115+
this.onClickedAway();
116+
}
117+
}
118+
}, {
119+
key: 'onClickedAway',
120+
value: function onClickedAway() {
121+
this.setState({ visible: false });
122+
}
123+
}, {
124+
key: 'toggleMenus',
125+
value: function toggleMenus() {
126+
this.setState({ visible: !this.state.visible });
127+
}
128+
}, {
129+
key: 'render',
130+
value: function render() {
131+
var _props = this.props,
132+
list = _props.list,
133+
children = _props.children,
134+
style = _props.style,
135+
label = _props.label,
136+
triggerComponent = _props.triggerComponent;
137+
138+
return _react2.default.createElement(
139+
'div',
140+
{ className: 'Menus-wrapper' },
141+
_react2.default.createElement(_HelperComponents.WrappedComponent, {
142+
toggleMenus: this.toggleMenus,
143+
component: triggerComponent,
144+
label: label
145+
}),
146+
_react2.default.createElement(
147+
'div',
148+
{ className: '' + (this.state.visible ? 'show' : 'hide') },
149+
_react2.default.createElement(
150+
_SubMenus2.default,
151+
{
152+
list: list,
153+
style: style
154+
},
155+
children
156+
)
157+
)
158+
);
159+
}
160+
}]);
161+
162+
return Menus;
163+
}(_react2.default.Component);
51164

52165
Menus.propTypes = {
53166
list: _react2.default.PropTypes.bool,
167+
label: _react2.default.PropTypes.string,
54168
style: _react2.default.PropTypes.object,
169+
triggerComponent: _react2.default.PropTypes.func,
55170
children: _react2.default.PropTypes.oneOfType([_react2.default.PropTypes.element, _react2.default.PropTypes.func, _react2.default.PropTypes.arrayOf(_Menu2.default)]).isRequired
56171
};
57172

58173
Menus.defaultProps = {
59174
list: true,
60-
style: null
175+
style: null,
176+
label: null,
177+
triggerComponent: _HelperComponents.TriggerComponent
61178
};
62179

63180
exports.default = Menus;

dist/SubMenus.js

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
(function (global, factory) {
2+
if (typeof define === "function" && define.amd) {
3+
define(['exports', 'react', './Menu', './menus.css'], factory);
4+
} else if (typeof exports !== "undefined") {
5+
factory(exports, require('react'), require('./Menu'), require('./menus.css'));
6+
} else {
7+
var mod = {
8+
exports: {}
9+
};
10+
factory(mod.exports, global.react, global.Menu, global.menus);
11+
global.SubMenus = mod.exports;
12+
}
13+
})(this, function (exports, _react, _Menu) {
14+
'use strict';
15+
16+
Object.defineProperty(exports, "__esModule", {
17+
value: true
18+
});
19+
20+
var _react2 = _interopRequireDefault(_react);
21+
22+
var _Menu2 = _interopRequireDefault(_Menu);
23+
24+
function _interopRequireDefault(obj) {
25+
return obj && obj.__esModule ? obj : {
26+
default: obj
27+
};
28+
}
29+
30+
var SubMenus = function SubMenus(props) {
31+
var list = props.list,
32+
children = props.children,
33+
style = props.style;
34+
35+
var className = 'Menus';
36+
var MenuList = _react2.default.createElement(
37+
'ul',
38+
{
39+
className: className,
40+
style: style
41+
},
42+
children
43+
);
44+
45+
if (!list) {
46+
MenuList = _react2.default.createElement(
47+
'div',
48+
{
49+
className: className,
50+
style: style
51+
},
52+
children
53+
);
54+
}
55+
return MenuList;
56+
};
57+
58+
SubMenus.propTypes = {
59+
list: _react2.default.PropTypes.bool,
60+
label: _react2.default.PropTypes.string,
61+
style: _react2.default.PropTypes.object,
62+
children: _react2.default.PropTypes.oneOfType([_react2.default.PropTypes.element, _react2.default.PropTypes.func, _react2.default.PropTypes.arrayOf(_Menu2.default)]).isRequired
63+
};
64+
65+
SubMenus.defaultProps = {
66+
list: true,
67+
style: null,
68+
label: null
69+
};
70+
71+
exports.default = SubMenus;
72+
});

dist/index.js

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,29 @@
11
(function (global, factory) {
22
if (typeof define === "function" && define.amd) {
3-
define(['exports', './Menus', './Menu'], factory);
3+
define(['exports', './Menus', './Menu', './SubMenus'], factory);
44
} else if (typeof exports !== "undefined") {
5-
factory(exports, require('./Menus'), require('./Menu'));
5+
factory(exports, require('./Menus'), require('./Menu'), require('./SubMenus'));
66
} else {
77
var mod = {
88
exports: {}
99
};
10-
factory(mod.exports, global.Menus, global.Menu);
10+
factory(mod.exports, global.Menus, global.Menu, global.SubMenus);
1111
global.index = mod.exports;
1212
}
13-
})(this, function (exports, _Menus, _Menu) {
13+
})(this, function (exports, _Menus, _Menu, _SubMenus) {
1414
'use strict';
1515

1616
Object.defineProperty(exports, "__esModule", {
1717
value: true
1818
});
19-
exports.Menu = exports.Menus = undefined;
19+
exports.SubMenus = exports.Menu = exports.Menus = undefined;
2020

2121
var _Menus2 = _interopRequireDefault(_Menus);
2222

2323
var _Menu2 = _interopRequireDefault(_Menu);
2424

25+
var _SubMenus2 = _interopRequireDefault(_SubMenus);
26+
2527
function _interopRequireDefault(obj) {
2628
return obj && obj.__esModule ? obj : {
2729
default: obj
@@ -30,4 +32,5 @@
3032

3133
exports.Menus = _Menus2.default;
3234
exports.Menu = _Menu2.default;
35+
exports.SubMenus = _SubMenus2.default;
3336
});

0 commit comments

Comments
 (0)