UNPKG

vue-ant-patterns

Version:

vue-ant-patterns

106 lines (84 loc) 2.84 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _defineProperty2 = require('babel-runtime/helpers/defineProperty'); var _defineProperty3 = _interopRequireDefault(_defineProperty2); var _toConsumableArray2 = require('babel-runtime/helpers/toConsumableArray'); var _toConsumableArray3 = _interopRequireDefault(_toConsumableArray2); var _extends2 = require('babel-runtime/helpers/extends'); var _extends3 = _interopRequireDefault(_extends2); var _classnames = require('classnames'); var _classnames2 = _interopRequireDefault(_classnames); var _generator = require('../_utils/generator'); var _generator2 = _interopRequireDefault(_generator); var _Basic = require('./Basic'); var _Basic2 = _interopRequireDefault(_Basic); var _BasicProps = require('./BasicProps'); var _BasicProps2 = _interopRequireDefault(_BasicProps); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } /* * @Description: * @Autor: w.pengfei * @Date: 2019-09-11 20:00:51 * @LastEditors: w.pengfei * @LastEditTime: 2019-12-12 15:23:06 */ var BasicLayout = { props: (0, _extends3['default'])({}, _BasicProps2['default'], { padding: String, tagName: { type: String, 'default': function _default() { return 'div'; } } }), data: function data() { return { siders: [] }; }, provide: function provide() { var _this = this; return { siderHook: { addSider: function addSider(id) { _this.siders = [].concat((0, _toConsumableArray3['default'])(_this.siders), [id]); }, removeSider: function removeSider(id) { _this.siders = _this.siders.filter(function (currentId) { return currentId !== id; }); } } }; }, render: function render(h) { var prefixCls = this.prefixCls, $slots = this.$slots, $attrs = this.$attrs, hasSider = this.hasSider, $listeners = this.$listeners, padding = this.padding, tagName = this.tagName; var divCls = (0, _classnames2['default'])(prefixCls, (0, _defineProperty3['default'])({}, prefixCls + '-has-sider', hasSider || this.siders.length > 0)); var divProps = { 'class': divCls, on: $listeners, style: padding ? { padding: padding } : null }; return h(tagName, (0, _extends3['default'])({}, divProps, $attrs), $slots['default']); // return <div {...divProps}>{$slots.default}</div>; } }; var Layout = (0, _generator2['default'])({ prefixCls: 'depot-layout', padding: '' }, 'DLayout')(BasicLayout); var Content = (0, _generator2['default'])({ prefixCls: 'depot-layout-content', padding: '' }, 'DLayoutContent')(_Basic2['default']); Layout.Content = Content; exports['default'] = Layout;