UNPKG

vant-fork

Version:

Lightweight Mobile UI Components built on Vue

82 lines (73 loc) 2.7 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = void 0; var _create = _interopRequireDefault(require("../utils/create")); var _checkbox = _interopRequireDefault(require("../checkbox")); var _default = (0, _create.default)({ render: function render() { var _vm = this; var _h = _vm.$createElement; var _c = _vm._self._c || _h; return _c('div', { class: _vm.b({ disabled: _vm.disabled }) }, [_c('div', { class: _vm.b('content') }, [_c('div', { class: _vm.b('head') }, [_c('h2', { domProps: { "innerHTML": _vm._s(_vm.faceAmount) } }), _c('p', [_vm._v(_vm._s(_vm.conditionMessage))])]), _c('div', { class: _vm.b('body') }, [_c('h2', [_vm._v(_vm._s(_vm.data.name))]), _c('p', [_vm._v(_vm._s(_vm.validPeriod))]), _vm.chosen ? _c('checkbox', { class: _vm.b('corner'), attrs: { "value": true } }) : _vm._e()], 1)]), _vm.disabled && _vm.data.reason ? _c('p', { class: _vm.b('reason') }, [_vm._v(_vm._s(_vm.data.reason))]) : _vm._e()]); }, name: 'coupon-item', props: { data: Object, chosen: Boolean, disabled: Boolean }, components: { Checkbox: _checkbox.default }, computed: { validPeriod: function validPeriod() { return this.$t('valid') + "\uFF1A" + this.getDate(this.data.startAt) + " - " + this.getDate(this.data.endAt); }, faceAmount: function faceAmount() { return this.data.denominations !== 0 ? "<span>\xA5</span> " + this.formatAmount(this.data.denominations) : this.data.discount !== 0 ? this.formatDiscount(this.data.discount) : ''; }, conditionMessage: function conditionMessage() { var condition = this.data.originCondition; condition = condition % 100 === 0 ? Math.round(condition / 100) : (condition / 100).toFixed(2); return this.data.originCondition === 0 ? this.$t('unlimited') : this.$t('condition', condition); } }, methods: { getDate: function getDate(timeStamp) { var date = new Date(timeStamp * 1000); return date.getFullYear() + "." + this.padZero(date.getMonth() + 1) + "." + this.padZero(date.getDate()); }, padZero: function padZero(num) { return (num < 10 ? '0' : '') + num; }, formatDiscount: function formatDiscount(discount) { return this.$t('discount', "" + (discount / 10).toFixed(discount % 10 === 0 ? 0 : 1)); }, formatAmount: function formatAmount(amount) { return (amount / 100).toFixed(amount % 100 === 0 ? 0 : amount % 10 === 0 ? 1 : 2); } } }); exports.default = _default;