@sahabaplus/mushaf-engine
Version:
TypeScript implementation of a Quran Mushaf navigation engine
49 lines (48 loc) • 1.19 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Page = void 0;
/**
* Representation of a single page in the Quran
*
* Contains the page number and all verses that appear on this page,
* with their positions and metadata.
*/
class Page {
/**
* Create a new Page with the specified parameters
*
* @param number - Page number (1-indexed)
* @param verses - Array containing all verses on this page
*/
constructor(number = 1, verses = []) {
this._number = number;
this._verses = verses;
}
/**
* Get the page number
*
* @returns The page number (1-indexed)
*/
get number() {
return this._number;
}
/**
* Get all verses on this page
*
* @returns An array containing all verses on this page
*/
verses() {
return this._verses;
}
/**
* Create a string representation of the page
*/
toString() {
let result = `Page ${this._number}\n`;
this._verses.forEach((verse, index) => {
result += ` ${index + 1}. ${verse}\n`;
});
return result;
}
}
exports.Page = Page;