/** * Initializes graphs on the website. * * @param {Array<[id: string, commands: string[], initializer: (any) => void]>} graphs * The graphs to initialize. */ window.graphs = (graphs) => { window.addEventListener( "load", () => { for (let entry of graphs) { new GGBApplet( { height: 250, preventFocus: true, perspective: "G", enableFileFeatures: false, appletOnLoad: (api) => { for (let command of entry[1]) { api.evalCommand(command); } for (let object of api.getAllObjectNames()) { api.evalCommand(`ShowLabel(${object}, true)`); } (entry[2] ?? (() => {}))(api); api.evalCommand("ZoomIn()"); (entry[3] ?? (() => {}))(api); }, ...(entry[2] ?? {}) }, true).inject(entry[0]); } }); }