UNPKG

@difizen/mana-core

Version:

31 lines 1.14 kB
import { ManaModule } from "../module"; import { DefaultActionMenuItem, DefaultGeneralMenuItem } from "./default-menu-node"; import { GeneralMenuItemFactory } from "./menu-protocol"; import { ActionMenuItemFactory } from "./menu-protocol"; import { MenuSymbol } from "./menu-protocol"; import { MenuRegistry, MenuContribution } from "./menu-registry"; export var MenuModule = ManaModule.create().contribution(MenuContribution).register(MenuRegistry, DefaultGeneralMenuItem, DefaultActionMenuItem).register({ token: GeneralMenuItemFactory, useDynamic: function useDynamic(ctx) { return function (item) { var child = ctx.container.createChild(); child.register({ token: MenuSymbol.MenuNodeSymbol, useValue: item }); return child.get(DefaultGeneralMenuItem); }; } }).register({ token: ActionMenuItemFactory, useDynamic: function useDynamic(ctx) { return function (item) { var child = ctx.container.createChild(); child.register({ token: MenuSymbol.ActionMenuNodeSymbol, useValue: item }); return child.get(DefaultActionMenuItem); }; } });