Fixing more stuff

This commit is contained in:
2024-04-19 23:21:54 +02:00
parent 4c7cfb44ce
commit 8c0555b02f
5 changed files with 14 additions and 12 deletions

View File

@ -9,7 +9,7 @@ export const script = (app: Editor) => (...args: number[]): void => {
blinkScript(app, "local", arg);
tryEvaluate(
app,
app.universes[app.selected_universe].locals[arg],
app.universes[app.selected_universe]!.locals[arg]!,
);
}
});
@ -18,7 +18,7 @@ export const script = (app: Editor) => (...args: number[]): void => {
export const s = script;
export const delete_script = (app: Editor) => (script: number): void => {
app.universes[app.selected_universe].locals[script] = {
app.universes[app.selected_universe]!.locals[script] = {
candidate: "",
committed: "",
evaluations: 0,
@ -27,7 +27,7 @@ export const delete_script = (app: Editor) => (script: number): void => {
export const copy_script = (app: Editor) => (from: number, to: number): void => {
app.universes[app.selected_universe].locals[to] = {
...app.universes[app.selected_universe].locals[from],
...app.universes[app.selected_universe]!.locals[from],
};
};

View File

@ -44,6 +44,7 @@ export const singleElements = {
error_line: "error_line",
hydra_canvas: "hydra-bg",
feedback: "feedback",
scope: "scope",
} as const;
export type SingleElementsKeys = keyof typeof singleElements;

View File

@ -38,15 +38,12 @@ export const installWindowBehaviors = (
window: Window,
preventMultipleTabs: boolean = false,
) => {
window.addEventListener("resize", () =>
handleResize(app.interface.feedback as HTMLCanvasElement),
);
window.addEventListener("resize", () =>
handleResize(app.interface.scope as HTMLCanvasElement),
);
window.addEventListener("resize", () =>
handleResize(app.interface.feedback as HTMLCanvasElement),
);
window.addEventListener("resize", () =>
handleResize(app.interface.feedback as HTMLCanvasElement),
);
window.addEventListener("beforeunload", (event) => {
event.preventDefault();
saveBeforeExit(app);
@ -57,13 +54,13 @@ export const installWindowBehaviors = (
});
if (preventMultipleTabs) {
localStorage.openpages = Date.now();
localStorage["openpages"] = Date.now();
window.addEventListener(
"storage",
function(e) {
if (e.key == "openpages") {
// Listen if anybody else is opening the same page!
localStorage.page_available = Date.now();
localStorage["page_available"] = Date.now();
}
if (e.key == "page_available") {
document.getElementById("all")!.classList.add("invisible");

View File

@ -250,6 +250,7 @@ export class Player extends AbstractEvent {
} else {
return SkipEvent.createSkipProxy();
}
return
}
public midi(value: number | undefined = undefined) {
@ -282,6 +283,7 @@ export class Player extends AbstractEvent {
} else {
return SkipEvent.createSkipProxy();
}
return null;
}
scale(name: string|number[]) {
@ -475,6 +477,7 @@ export class Player extends AbstractEvent {
}
return this;
}
return this
}
wait(value: number | string | Function) {

View File

@ -69,7 +69,8 @@ export class Editor {
show_error: boolean = false;
currentThemeName: string = "Everblush";
buttonElements: Record<string, HTMLButtonElement[]> = {};
interface!: ElementMap;
// @ts-ignore
interface: ElementMap = {};
blinkTimeouts: Record<number, number> = {};
osc: OscilloscopeConfig = {
enabled: false,