UNPKG

zmp-vue

Version:

Build full featured iOS & Android apps using ZMP & Vue

71 lines (64 loc) 2.26 kB
"use strict"; exports.__esModule = true; exports.default = void 0; var _vue = require("vue"); var _utils = require("../shared/utils"); var _mixins = require("../shared/mixins"); function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } function render(_ctx, _cache) { return _ctx.animated || _ctx.swipeable ? ((0, _vue.openBlock)(), (0, _vue.createBlock)("div", { key: 0, ref: "elRef", class: _ctx.classNames(_ctx.wrapClasses, _ctx.classes) }, [(0, _vue.createVNode)("div", { class: _ctx.tabsClasses }, [(0, _vue.renderSlot)(_ctx.$slots, "default")], 2)], 2)) : ((0, _vue.openBlock)(), (0, _vue.createBlock)("div", { key: 1, ref: "elRef", class: _ctx.classNames(_ctx.tabsClasses, _ctx.classes) }, [(0, _vue.renderSlot)(_ctx.$slots, "default")], 2)); } var _default = { name: 'zmp-tabs', render: render, props: _extends({ animated: Boolean, swipeable: Boolean, routable: Boolean, swiperParams: { type: Object, default: undefined } }, _mixins.colorProps), setup: function setup(props) { var elRef = (0, _vue.ref)(null); (0, _vue.onMounted)(function () { if (!props.swipeable || !props.swiperParams) return; if (!elRef.value) return; elRef.value.zmpSwiperParams = props.swiperParams; }); var classes = (0, _vue.computed)(function () { return (0, _utils.classNames)((0, _mixins.colorClasses)(props)); }); var wrapClasses = (0, _vue.computed)(function () { return (0, _utils.classNames)({ 'tabs-animated-wrap': props.animated, 'tabs-swipeable-wrap': props.swipeable }); }); var tabsClasses = (0, _vue.computed)(function () { return (0, _utils.classNames)({ tabs: true, 'tabs-routable': props.routable }); }); return { elRef: elRef, classes: classes, wrapClasses: wrapClasses, tabsClasses: tabsClasses, classNames: _utils.classNames }; } }; exports.default = _default;