summaryrefslogtreecommitdiffstats
path: root/lib/modifiers/summary/insertPart.js
diff options
context:
space:
mode:
Diffstat (limited to 'lib/modifiers/summary/insertPart.js')
-rw-r--r--lib/modifiers/summary/insertPart.js19
1 files changed, 19 insertions, 0 deletions
diff --git a/lib/modifiers/summary/insertPart.js b/lib/modifiers/summary/insertPart.js
new file mode 100644
index 0000000..ff36e27
--- /dev/null
+++ b/lib/modifiers/summary/insertPart.js
@@ -0,0 +1,19 @@
+var SummaryPart = require('../../models/summaryPart');
+var indexLevels = require('./indexLevels');
+
+/**
+ Returns a new Summary with a part inserted at given index
+
+ @param {Summary} summary
+ @param {Number} index
+ @param {Part} part
+ @return {Summary}
+*/
+function insertPart(summary, index, part) {
+ part = SummaryPart(part);
+
+ var parts = summary.getParts().insert(index, part);
+ return indexLevels(summary.set('parts', parts));
+}
+
+module.exports = insertPart;