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/sale/checkout/view/element/input/src/ |
Upload File : |
import { BitrixVue } from 'ui.vue'; import { EventEmitter } from 'main.core.events'; import { Property as Const, EventType } from 'sale.checkout.const'; BitrixVue.component('sale-checkout-view-element-input-property-email', { props: ['item', 'index', 'autocomplete'], methods: { validate() { EventEmitter.emit(EventType.property.validate, { index: this.index }); }, onKeyUp(e) { if (['Esc', 'Tab'].indexOf(e.key) >= 0) { return; } if (e.ctrlKey || e.metaKey) { return; } if (this.isKeyAndroidChrome(e.key)) { this.hideAsteriskAndroid(); return; } this.validate(); }, isKeyAndroidChrome(key) { return key === 'Unidentified'; }, hideAsteriskAndroid() { const asterisk = this.$el.getElementsByTagName('span')[0]; asterisk.style.display = 'none'; }, }, computed: { checkedClassObject() { return { 'is-invalid': this.item.validated === Const.validate.failure, 'is-valid': this.item.validated === Const.validate.successful, }; }, isEmpty() { return this.item.value === ''; }, isRequired() { return this.item.required === 'Y'; }, isAsteriskShown() { return this.isEmpty && this.isRequired; }, }, // language=Vue template: ` <div class="form-wrap form-asterisk" :class="checkedClassObject"> <input class="form-control form-control-lg" :class="checkedClassObject" @blur="validate" type="text" inputmode="email" :placeholder="item.name" :autocomplete="autocomplete" v-model="item.value" @keyup="onKeyUp" /> <span class="asterisk-item" v-if="isAsteriskShown" > {{item.name}} </span> </div> `, });