"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const promise_1 = __importDefault(require("../utils/promise")); /** Walk over a list of articles @param {List
} articles @param {Function(article)} @return {Promise} */ function walkArticles(articles, fn) { return promise_1.default.forEach(articles, (article) => { return (0, promise_1.default)(fn(article)).then(() => { return walkArticles(article.getArticles(), fn); }); }); } /** Walk over summary and execute "fn" on each article @param {Summary} summary @param {Function(article)} @return {Promise} */ function walkSummary(summary, fn) { const parts = summary.getParts(); return promise_1.default.forEach(parts, (part) => { return walkArticles(part.getArticles(), fn); }); } exports.default = walkSummary;