Skip to content

Commit 888e6d7

Browse files
committed
3.0.0
1 parent bb990e7 commit 888e6d7

3 files changed

Lines changed: 41 additions & 5 deletions

File tree

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
3.0.0 / 2016-11-24
2+
==================
3+
4+
* Allows modules to be nested. Potentially breaking change. Check if your modules are nested before upgrading.
5+
16

27
2.2.2 / 2016-11-02
38
==================

dist/domodule.js

Lines changed: 35 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,15 @@ Object.defineProperty(exports, "__esModule", {
77

88
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
99

10-
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; }; }();
10+
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; }; }(); /* eslint no-new:0 */
1111

12-
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
12+
var _getParentModule = require('../lib/getParentModule');
13+
14+
var _getParentModule2 = _interopRequireDefault(_getParentModule);
1315

14-
/* eslint no-new:0 */
16+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17+
18+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
1519

1620
var Domodule = function () {
1721
// eslint-disable-line no-unused-vars
@@ -24,6 +28,7 @@ var Domodule = function () {
2428
this.els = {};
2529
this.options = this.serializeAttrs('module', this.el);
2630
this.requiredOptions = requiredOptions;
31+
this.moduleName = this.el.dataset.module;
2732

2833
this.verifyOptions();
2934
this.setupActions();
@@ -63,7 +68,9 @@ var Domodule = function () {
6368
for (var _iterator = this.find('[data-action]')[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
6469
var action = _step.value;
6570

66-
this.setupAction(action);
71+
if ((0, _getParentModule2.default)(action).dataset.module === this.moduleName) {
72+
this.setupAction(action);
73+
}
6774
}
6875
} catch (err) {
6976
_didIteratorError = true;
@@ -110,6 +117,10 @@ var Domodule = function () {
110117
for (var _iterator2 = this.find('[data-name]')[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
111118
var named = _step2.value;
112119

120+
if ((0, _getParentModule2.default)(named).dataset.module !== this.moduleName) {
121+
continue;
122+
}
123+
113124
if (!named.dataset.domoduleNameProcessed) {
114125
this.els[named.dataset.name] = named;
115126
named.dataset.domoduleNameProcessed = true;
@@ -285,5 +296,25 @@ var Domodule = function () {
285296

286297
exports.default = Domodule;
287298

299+
},{"../lib/getParentModule":2}],2:[function(require,module,exports){
300+
"use strict";
301+
302+
Object.defineProperty(exports, "__esModule", {
303+
value: true
304+
});
305+
function findParent(elem) {
306+
if (elem.parentNode) {
307+
if (elem.parentNode.dataset.module) {
308+
return elem.parentNode;
309+
}
310+
311+
findParent(elem.parentNode);
312+
}
313+
314+
return elem;
315+
}
316+
317+
exports.default = findParent;
318+
288319
},{}]},{},[1])(1)
289320
});

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "domodule",
3-
"version": "2.2.2",
3+
"version": "3.0.0",
44
"description": "Class based modules",
55
"main": "dist/domodule.js",
66
"keywords": [

0 commit comments

Comments
 (0)