Avatar.js 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
  2. import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
  3. import { createVNode as _createVNode } from "vue";
  4. import { computed, defineComponent } from 'vue';
  5. import classNames from '../_util/classNames';
  6. import initDefaultProps from '../_util/props-util/initDefaultProps';
  7. import useConfigInject from '../_util/hooks/useConfigInject';
  8. import Element, { skeletonElementProps } from './Element';
  9. export var avatarProps = function avatarProps() {
  10. return _objectSpread(_objectSpread({}, skeletonElementProps()), {}, {
  11. shape: String
  12. });
  13. };
  14. var SkeletonAvatar = defineComponent({
  15. compatConfig: {
  16. MODE: 3
  17. },
  18. name: 'ASkeletonAvatar',
  19. props: initDefaultProps(avatarProps(), {
  20. size: 'default',
  21. shape: 'circle'
  22. }),
  23. setup: function setup(props) {
  24. var _useConfigInject = useConfigInject('skeleton', props),
  25. prefixCls = _useConfigInject.prefixCls;
  26. var cls = computed(function () {
  27. return classNames(prefixCls.value, "".concat(prefixCls.value, "-element"), _defineProperty({}, "".concat(prefixCls.value, "-active"), props.active));
  28. });
  29. return function () {
  30. return _createVNode("div", {
  31. "class": cls.value
  32. }, [_createVNode(Element, _objectSpread(_objectSpread({}, props), {}, {
  33. "prefixCls": "".concat(prefixCls.value, "-avatar")
  34. }), null)]);
  35. };
  36. }
  37. });
  38. export default SkeletonAvatar;