* WIP: svelte menu * temp * temp * New menu svelte * Migration of report menu in svelte * Migration of registerCustomMenu for Menu in Svelte Refactor subMenuStore Suppression of old MenuScene and ReportMenu * Suppression of HTML files that aren't use anymore * fix deeployer * First pass on css * First pass on css * Second pass on css and reportMenu * Second pass on css and reportMenu * Second pass on css and reportMenu * Third pass on css and reportMenu * Correction following test * Contact page only if environment variable exist * Update service worker Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com> * Change requested * Change requested Co-authored-by: kharhamel <oognic@gmail.com> Co-authored-by: Gregoire Parant <g.parant@thecodingmachine.com>
25 lines
762 B
TypeScript
25 lines
762 B
TypeScript
import * as tg from "generic-type-guard";
|
|
import { Subject } from "rxjs";
|
|
import { subMenusStore } from "../../../Stores/MenuStore";
|
|
|
|
export const isMenuItemRegisterEvent = new tg.IsInterface()
|
|
.withProperties({
|
|
menutItem: tg.isString,
|
|
})
|
|
.get();
|
|
/**
|
|
* A message sent from the iFrame to the game to add a new menu item.
|
|
*/
|
|
export type MenuItemRegisterEvent = tg.GuardedType<typeof isMenuItemRegisterEvent>;
|
|
|
|
export const isMenuItemRegisterIframeEvent = new tg.IsInterface()
|
|
.withProperties({
|
|
type: tg.isSingletonString("registerMenuCommand"),
|
|
data: isMenuItemRegisterEvent,
|
|
})
|
|
.get();
|
|
|
|
export function handleMenuItemRegistrationEvent(event: MenuItemRegisterEvent) {
|
|
subMenusStore.addMenu(event.menutItem);
|
|
}
|