@fesjs/fes-design
Version:
fes-design for PC
90 lines (87 loc) • 2.08 kB
JavaScript
import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
import { COMMON_PROPS } from '../scrollbar/const';
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
const virtualProps = _objectSpread({
dataKey: {
type: [String, Function],
required: true
},
dataSources: {
type: Array,
required: true,
default: () => []
},
keeps: {
type: Number,
default: 30
},
extraProps: {
type: Object
},
estimateSize: {
type: Number,
default: 50
},
observeResize: {
type: Boolean,
default: true
},
direction: {
type: String,
default: 'vertical' // the other value is horizontal
},
start: {
type: Number,
default: 0
},
offset: {
type: Number,
default: 0
},
topThreshold: {
type: Number,
default: 0
},
bottomThreshold: {
type: Number,
default: 0
},
pageMode: {
type: Boolean,
default: false
},
wrapTag: {
type: String,
default: 'div'
},
wrapClass: {
type: String,
default: ''
},
wrapStyle: {
type: Object
},
renderItemList: {
type: Function
}
}, COMMON_PROPS);
const itemProps = {
index: {
type: Number
},
horizontal: {
type: Boolean
},
source: {
type: [Object, String, Number]
},
uniqueKey: {
type: [String, Number]
},
observeResize: {
type: Boolean,
default: true
}
};
export { itemProps, virtualProps };