UNPKG

zmp-vue

Version:

Build full featured iOS & Android apps using ZMP & Vue

79 lines (65 loc) 2.65 kB
"use strict"; exports.__esModule = true; exports.default = void 0; var _vue = require("vue"); var _constants = require("../../common/constants"); var _navLeft = _interopRequireDefault(require("../components/nav-left")); var _link = _interopRequireDefault(require("../components/link")); var _mixins = require("../shared/mixins"); var _utils = require("../shared/utils"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 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) { var _component_Link = (0, _vue.resolveComponent)("Link"); var _component_NavLeft = (0, _vue.resolveComponent)("NavLeft"); return (0, _vue.openBlock)(), (0, _vue.createBlock)(_component_NavLeft, (0, _vue.mergeProps)(_extends({}, _ctx.$props, _ctx.$attrs), { backLink: false }), { default: (0, _vue.withCtx)(function () { return [_ctx.backLink ? ((0, _vue.openBlock)(), (0, _vue.createBlock)(_component_Link, { key: 0, back: "", href: _ctx.backLinkUrl || '#', "no-link-class": "", "icon-zmp": _ctx.ICON_CHEVRON_LEFT, force: _ctx.backLinkForce || undefined, class: _ctx.classes, text: _ctx.backLink !== true && _ctx.backLinkShowText ? _ctx.backLink : undefined, onClick: _cache[1] || (_cache[1] = function ($event) { _ctx.$emit('click:back', $event); _ctx.$emit('click:back', $event); }) }, null, 8, ["href", "icon-zmp", "force", "class", "text"])) : (0, _vue.createCommentVNode)("", true), (0, _vue.renderSlot)(_ctx.$slots, "default")]; }), _: 3 }, 16); } var _default = { name: 'zmp-nav-left', render: render, components: { NavLeft: _navLeft.default, Link: _link.default }, props: _extends({ backLink: [Boolean, String], backLinkUrl: String, backLinkForce: Boolean, backLinkShowText: Boolean, sliding: Boolean }, _mixins.colorProps), emits: ['click:back', 'click:back'], setup: function setup(props) { var classes = (0, _vue.computed)(function () { return (0, _utils.classNames)({ 'icon-only': !props.text, 'no-ripple': !props.text }, (0, _mixins.colorClasses)(props)); }); return { classes: classes, ICON_CHEVRON_LEFT: _constants.ICON_CHEVRON_LEFT }; } }; exports.default = _default;