@s-hiroshi/bks
Version:
Cli bookmarks application
37 lines • 1.16 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.HistoryReader = void 0;
const fs = require("fs");
const readLinesToArray_1 = require("../service/readLinesToArray");
class HistoryReader {
constructor(filePath) {
this.filePath = filePath;
}
async init() {
const rawHistories = await (0, readLinesToArray_1.readLinesToArray)(this.filePath);
this.histories = rawHistories.reverse();
}
getRows() {
return this.histories.length;
}
read(start, offset) {
const targetHistories = [];
this.histories.forEach((history, i) => {
if (start <= i && i < start + offset) {
targetHistories.push(history);
}
});
return targetHistories;
}
readReverse(start, offset) {
const targetHistories = [];
this.histories.forEach((history, i) => {
if (start - offset <= i && i < start) {
targetHistories.push(history);
}
});
return targetHistories;
}
}
exports.HistoryReader = HistoryReader;
//# sourceMappingURL=HistoryReader.js.map