12345678910111213141516171819202122232425262728293031 |
- var documents = require("../documents");
- var Result = require("../results").Result;
- function createCommentsReader(bodyReader) {
- function readCommentsXml(element) {
- return Result.combine(element.getElementsByTagName("w:comment")
- .map(readCommentElement));
- }
- function readCommentElement(element) {
- var id = element.attributes["w:id"];
- function readOptionalAttribute(name) {
- return (element.attributes[name] || "").trim() || null;
- }
- return bodyReader.readXmlElements(element.children)
- .map(function(body) {
- return documents.comment({
- commentId: id,
- body: body,
- authorName: readOptionalAttribute("w:author"),
- authorInitials: readOptionalAttribute("w:initials")
- });
- });
- }
-
- return readCommentsXml;
- }
- exports.createCommentsReader = createCommentsReader;
|