diff options
| author | Michael Williamson <mike@zwobble.org> | 2013-05-04 10:59:50 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2013-05-04 10:59:50 +0100 |
| commit | abcdc7a5c4b66a4fc5d7f7f605e2d64d44767bf1 (patch) | |
| tree | aa8bdfcbeec32387f3e83fdf272865c7f4818218 | |
| parent | a78d8242d2be4377accfb95447d549828f08dbd0 (diff) | |
Add list method to document matcher
| -rw-r--r-- | lib/document-matchers.js | 14 | ||||
| -rw-r--r-- | lib/style-reader.js | 9 |
2 files changed, 12 insertions, 11 deletions
diff --git a/lib/document-matchers.js b/lib/document-matchers.js index 820d6c2..58b3204 100644 --- a/lib/document-matchers.js +++ b/lib/document-matchers.js @@ -22,17 +22,19 @@ Matcher.prototype.matches = function(element) { } Matcher.prototype.orderedList = function(levelIndex) { - this._listIndex = levelIndex; - this._listIsOrdered = true; - return this; + return this.list({isOrdered: true, levelIndex: levelIndex}); } Matcher.prototype.unorderedList = function(levelIndex) { - this._listIndex = levelIndex; - this._listIsOrdered = false; - return this; + return this.list({isOrdered: false, levelIndex: levelIndex}); } +Matcher.prototype.list = function(options) { + this._listIndex = options.levelIndex; + this._listIsOrdered = options.isOrdered; + return this; +}; + function isList(element, levelIndex, isOrdered) { return element.numbering && element.numbering.level == levelIndex && diff --git a/lib/style-reader.js b/lib/style-reader.js index c18cf00..2f3fcf3 100644 --- a/lib/style-reader.js +++ b/lib/style-reader.js @@ -67,11 +67,10 @@ function documentMatcherRule() { lop.rules.tokenOfType("close-paren") ).map(function(listType, levelNumber) { return function(matcher) { - if (listType.isOrdered) { - return matcher.orderedList(levelNumber - 1); - } else { - return matcher.unorderedList(levelNumber - 1); - } + return matcher.list({ + isOrdered: listType.isOrdered, + levelIndex: levelNumber - 1 + }); }; }); |
