UNPKG

vue-ant-patterns

Version:

vue-ant-patterns

138 lines (114 loc) 3.55 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _defineProperty2 = require('babel-runtime/helpers/defineProperty'); var _defineProperty3 = _interopRequireDefault(_defineProperty2); var _extends2 = require('babel-runtime/helpers/extends'); var _extends3 = _interopRequireDefault(_extends2); var _vueTypes = require('ant-design-vue/lib/_util/vue-types'); var _vueTypes2 = _interopRequireDefault(_vueTypes); var _classnames = require('classnames'); var _classnames2 = _interopRequireDefault(_classnames); var _antDesignVue = require('ant-design-vue'); var _drawerProps = require('./drawerProps'); var _drawerProps2 = _interopRequireDefault(_drawerProps); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } var DDrawer = { name: 'DDrawer', props: (0, _extends3['default'])({}, (0, _drawerProps2['default'])()), data: function data() { var visible = this.visible; return { sVisible: visible || false }; }, model: { prop: 'visible', event: 'close' }, watch: { visible: function visible(v) { this.sVisible = v; } }, mounted: function mounted() { // setTimeout(() => { // this.$refs.cnft.style = "100%"; // }, 0); }, methods: { submitBarNode: function submitBarNode() { var h = this.$createElement; var $slots = this.$slots; var submitBar = $slots.submitBar; return submitBar ? h( 'div', { 'class': 'drawer-submit-bar' }, [submitBar] ) : null; }, close: function close() { this.sVisible = false; this.$emit('close', false); }, renderContainer: function renderContainer() { var h = this.$createElement; return h( 'div', { 'class': 'drawer-scroll-container', ref: 'cnft' }, [this.$slots['default']] ); } }, render: function render() { var _cx; var h = arguments[0]; var prefixCls = this.prefixCls, $slots = this.$slots, $listeners = this.$listeners, width = this.width, sVisible = this.sVisible, title = this.title, closable = this.closable, wrapStyle = this.wrapStyle, maskClosable = this.maskClosable, wrapClassName = this.wrapClassName; var wpCls = (0, _classnames2['default'])((_cx = {}, (0, _defineProperty3['default'])(_cx, prefixCls, 1), (0, _defineProperty3['default'])(_cx, wrapClassName, 1), (0, _defineProperty3['default'])(_cx, 'drawer-submit-bar', $slots.submitBar), (0, _defineProperty3['default'])(_cx, prefixCls + '-no-title', !title && !$slots.title), _cx)); var drawerProps = { 'class': prefixCls, props: { visible: sVisible, width: width, maskClosable: maskClosable, closable: closable, wrapStyle: wrapStyle, wrapClassName: wpCls, destroyOnClose: true }, on: (0, _extends3['default'])({}, $listeners, { close: this.close }) }; return h( _antDesignVue.Drawer, drawerProps, [h( 'template', { slot: 'title' }, [title || $slots.title] ), h( 'transition', { attrs: { name: 'fade', mode: 'out-in', appear: true } }, [this.renderContainer()] ), this.submitBarNode()] ); } }; DDrawer.drawerProps = _drawerProps2['default']; DDrawer.install = function (Vue) { Vue.component(DDrawer.name, DDrawer); }; exports['default'] = DDrawer;