import { element } from "./element.js"; import { submission } from "./submission.js"; import { project } from "./project.js"; import { is_string } from "./functions.js"; class database { #content; constructor(content) { if (!(content instanceof project)) { throw "Content must be instance of an project."; } this.#content = content; } get content() { return this.#content; } search(input) { if (!is_string(input)) { throw "Phrase to search must be string."; } const content = this.#content; const phrase = input.trim().toLowerCase(); const result = []; content.submissions.forEach(submission => { if (submission.name.toLowerCase().search(phrase) !== -1 ) { result.push(submission); } submission.elements.forEach(element => { if (element.name.toLowerCase().search(phrase) !== -1) { result.push(element); } }); }); return result; } } export { database };