Server IP : 80.87.202.40 / Your IP : 216.73.216.169 Web Server : Apache System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64 User : bitrix ( 600) PHP Version : 8.2.27 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/ui/vue3/components/menu/src/ |
Upload File : |
import { Text } from 'main.core'; import { Menu, type MenuOptions } from 'ui.system.menu'; export * from 'ui.system.menu'; export const BMenu = { name: 'BMenu', props: { id: { type: String, default: () => `ui-vue3-menu-${Text.getRandom()}`, }, options: { /** @type MenuOptions */ type: Object, required: true, }, }, emits: ['close'], computed: { menuOptions(): MenuOptions { return { ...this.defaultOptions, ...this.options }; }, defaultOptions(): MenuOptions { return { id: this.id, cacheable: false, animation: 'fading', events: { onClose: this.handleClose, onDestroy: this.handleClose, }, }; }, }, mounted(): void { this.menu = new Menu(this.menuOptions); this.menu.show(); }, unmounted(): void { this.menu?.close(); }, methods: { handleClose(): void { this.$emit('close'); }, }, template: ` <div v-if="false"></div> `, };