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/cvetdv.ru/bitrix/js/im/v2/component/elements/button/src/ |
Upload File : |
import { Type } from 'main.core'; import './css/segment-button.css'; type Button = { id: string, title: string, }; // @vue/component export const SegmentButton = { name: 'SegmentButton', props: { tabs: { type: Array, required: true, validator(value): boolean { return Type.isArrayFilled(value); }, }, activeTabId: { type: String, required: true, }, }, emits: ['segmentSelected'], methods: { isTabActive(tab: Button): boolean { return this.activeTabId === tab.id; }, onTabClick(tab: Button): void { this.$emit('segmentSelected', tab.id); }, }, template: ` <div class="bx-im-segment-button__container"> <button v-for="tab in tabs" :class="{'--active': isTabActive(tab)}" class="--ellipsis" @click="onTabClick(tab)" > {{ tab.title }} </button> </div> `, };