55 lines
1.3 KiB
TypeScript
55 lines
1.3 KiB
TypeScript
import type { GoToPageEvent } from "../Events/GoToPageEvent";
|
|
import type { OpenTabEvent } from "../Events/OpenTabEvent";
|
|
import { IframeApiContribution, sendToWorkadventure } from "./IframeApiContribution";
|
|
import type { OpenCoWebSiteEvent } from "../Events/OpenCoWebSiteEvent";
|
|
import type { LoadPageEvent } from "../Events/LoadPageEvent";
|
|
|
|
class WorkadventureNavigationCommands extends IframeApiContribution<WorkadventureNavigationCommands> {
|
|
callbacks = [];
|
|
|
|
openTab(url: string): void {
|
|
sendToWorkadventure({
|
|
type: "openTab",
|
|
data: {
|
|
url,
|
|
},
|
|
});
|
|
}
|
|
|
|
goToPage(url: string): void {
|
|
sendToWorkadventure({
|
|
type: "goToPage",
|
|
data: {
|
|
url,
|
|
},
|
|
});
|
|
}
|
|
|
|
goToRoom(url: string): void {
|
|
sendToWorkadventure({
|
|
type: "loadPage",
|
|
data: {
|
|
url,
|
|
},
|
|
});
|
|
}
|
|
|
|
openCoWebSite(url: string): void {
|
|
sendToWorkadventure({
|
|
type: "openCoWebSite",
|
|
data: {
|
|
url,
|
|
},
|
|
});
|
|
}
|
|
|
|
closeCoWebSite(): void {
|
|
sendToWorkadventure({
|
|
type: "closeCoWebSite",
|
|
data: null,
|
|
});
|
|
}
|
|
}
|
|
|
|
export default new WorkadventureNavigationCommands();
|