/** @typedef { import('types/CreditsObject.js').CreditsObject} CreditsObject */ export function Credits(){ return { /** * Credits. Preloaded at startup. * @type {CreditsObject[]} */ credits: [], /** * * @param {string|null} jsonCredits */ init( jsonCredits= null ){ if( jsonCredits !== null ){ this.credits = JSON.parse(jsonCredits); } }, /** * Add an empty credit. */ addEmptyCredits() { this.credits.push({name: '', description: ''}); }, /** * Remove a specific credits. * @param {number} index index of credit. */ removeCredits( index ){ this.credits.splice(index, 1); } } }