|
@@ -7,23 +7,48 @@ function loopData(block) {
|
|
|
|
|
|
if (this.loopList[data.loopId]) {
|
|
|
this.loopList[data.loopId].index += 1;
|
|
|
- this.loopData[data.loopId] =
|
|
|
- this.loopList[data.loopId].data[this.loopList[data.loopId].index];
|
|
|
+
|
|
|
+ let currentLoopData;
|
|
|
+
|
|
|
+ if (data.loopThrough === 'numbers') {
|
|
|
+ currentLoopData = this.loopData[data.loopId] + 1;
|
|
|
+ } else {
|
|
|
+ currentLoopData =
|
|
|
+ this.loopList[data.loopId].data[this.loopList[data.loopId].index];
|
|
|
+ }
|
|
|
+
|
|
|
+ this.loopData[data.loopId] = currentLoopData;
|
|
|
} else {
|
|
|
- const currLoopData =
|
|
|
- data.loopThrough === 'data-columns'
|
|
|
- ? generateJSON(Object.keys(this.data), this.data)
|
|
|
- : JSON.parse(data.loopData);
|
|
|
+ let currLoopData;
|
|
|
+
|
|
|
+ switch (data.loopThrough) {
|
|
|
+ case 'numbers':
|
|
|
+ currLoopData = data.fromNumber;
|
|
|
+ break;
|
|
|
+ case 'data-columns':
|
|
|
+ currLoopData = generateJSON(Object.keys(this.data), this.data);
|
|
|
+ break;
|
|
|
+ case 'custom-data':
|
|
|
+ currLoopData = JSON.parse(data.loopData);
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ }
|
|
|
|
|
|
this.loopList[data.loopId] = {
|
|
|
index: 0,
|
|
|
data: currLoopData,
|
|
|
id: data.loopId,
|
|
|
blockId: block.id,
|
|
|
- maxLoop: data.maxLoop || currLoopData.length,
|
|
|
+ type: data.loopThrough,
|
|
|
+ maxLoop:
|
|
|
+ data.loopThrough === 'numbers'
|
|
|
+ ? data.toNumber + 1 - data.fromNumber
|
|
|
+ : data.maxLoop || currLoopData.length,
|
|
|
};
|
|
|
/* eslint-disable-next-line */
|
|
|
- this.loopData[data.loopId] = currLoopData[0];
|
|
|
+ this.loopData[data.loopId] = data.loopThrough === 'numbers' ? data.fromNumber : currLoopData[0];
|
|
|
+
|
|
|
+ console.log(this.loopList, this.loopData);
|
|
|
}
|
|
|
|
|
|
resolve({
|