index.js 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. "use strict";
  2. var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
  3. exports.__esModule = true;
  4. exports["default"] = void 0;
  5. var _babelHelperVueJsxMergeProps = _interopRequireDefault(require("@vue/babel-helper-vue-jsx-merge-props"));
  6. var _utils = require("../utils");
  7. var _cell = _interopRequireDefault(require("../cell"));
  8. var _cellGroup = _interopRequireDefault(require("../cell-group"));
  9. var _functional = require("../utils/functional");
  10. var _use = (0, _utils.use)('panel'),
  11. sfc = _use[0],
  12. bem = _use[1];
  13. function Panel(h, props, slots, ctx) {
  14. var Content = function Content() {
  15. return [slots.header ? slots.header() : h(_cell["default"], {
  16. "attrs": {
  17. "icon": props.icon,
  18. "label": props.desc,
  19. "title": props.title,
  20. "value": props.status,
  21. "valueClass": bem('header-value')
  22. },
  23. "class": bem('header')
  24. }), h("div", {
  25. "class": bem('content')
  26. }, [slots["default"] && slots["default"]()]), slots.footer && h("div", {
  27. "class": [bem('footer'), 'van-hairline--top']
  28. }, [slots.footer()])];
  29. };
  30. return h(_cellGroup["default"], (0, _babelHelperVueJsxMergeProps["default"])([{
  31. "class": bem(),
  32. "scopedSlots": {
  33. "default": Content
  34. }
  35. }, (0, _functional.inherit)(ctx, true)]));
  36. }
  37. Panel.props = {
  38. icon: String,
  39. desc: String,
  40. title: String,
  41. status: String
  42. };
  43. var _default = sfc(Panel);
  44. exports["default"] = _default;