Paragraph.js 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. "use strict";
  2. var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
  3. Object.defineProperty(exports, "__esModule", {
  4. value: true
  5. });
  6. exports.skeletonParagraphProps = exports.default = void 0;
  7. var _vue = require("vue");
  8. var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
  9. var skeletonParagraphProps = function skeletonParagraphProps() {
  10. return {
  11. prefixCls: String,
  12. width: {
  13. type: [Number, String, Array]
  14. },
  15. rows: Number
  16. };
  17. };
  18. exports.skeletonParagraphProps = skeletonParagraphProps;
  19. var SkeletonParagraph = (0, _vue.defineComponent)({
  20. compatConfig: {
  21. MODE: 3
  22. },
  23. name: 'SkeletonParagraph',
  24. props: skeletonParagraphProps(),
  25. setup: function setup(props) {
  26. var getWidth = function getWidth(index) {
  27. var width = props.width,
  28. _props$rows = props.rows,
  29. rows = _props$rows === void 0 ? 2 : _props$rows;
  30. if (Array.isArray(width)) {
  31. return width[index];
  32. }
  33. // last paragraph
  34. if (rows - 1 === index) {
  35. return width;
  36. }
  37. return undefined;
  38. };
  39. return function () {
  40. var prefixCls = props.prefixCls,
  41. rows = props.rows;
  42. var rowList = (0, _toConsumableArray2.default)(Array(rows)).map(function (_, index) {
  43. var width = getWidth(index);
  44. return (0, _vue.createVNode)("li", {
  45. "key": index,
  46. "style": {
  47. width: typeof width === 'number' ? "".concat(width, "px") : width
  48. }
  49. }, null);
  50. });
  51. return (0, _vue.createVNode)("ul", {
  52. "class": prefixCls
  53. }, [rowList]);
  54. };
  55. }
  56. });
  57. var _default = SkeletonParagraph;
  58. exports.default = _default;