dtd
Version:
根据数梦工场视觉规范打造的组件库,感谢react-components和ant design
1 lines • 6.73 kB
JavaScript
Object.defineProperty(exports,"__esModule",{value:!0});var _toConsumableArray2=require("babel-runtime/helpers/toConsumableArray"),_toConsumableArray3=_interopRequireDefault(_toConsumableArray2),_extends2=require("babel-runtime/helpers/extends"),_extends3=_interopRequireDefault(_extends2),_defineProperty2=require("babel-runtime/helpers/defineProperty"),_defineProperty3=_interopRequireDefault(_defineProperty2),_classCallCheck2=require("babel-runtime/helpers/classCallCheck"),_classCallCheck3=_interopRequireDefault(_classCallCheck2),_createClass2=require("babel-runtime/helpers/createClass"),_createClass3=_interopRequireDefault(_createClass2),_possibleConstructorReturn2=require("babel-runtime/helpers/possibleConstructorReturn"),_possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2),_inherits2=require("babel-runtime/helpers/inherits"),_inherits3=_interopRequireDefault(_inherits2),_react=require("react"),React=_interopRequireWildcard(_react),_classnames=require("classnames"),_classnames2=_interopRequireDefault(_classnames),_rcTable=require("rc-table"),_rcTable2=_interopRequireDefault(_rcTable),_shallowequal=require("shallowequal"),_shallowequal2=_interopRequireDefault(_shallowequal);function _interopRequireWildcard(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var __rest=function(e,t){var r={};for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&t.indexOf(a)<0&&(r[a]=e[a]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(a=Object.getOwnPropertySymbols(e);o<a.length;o++)t.indexOf(a[o])<0&&(r[a[o]]=e[a[o]])}return r},noop=function(){},Timeline=function(e){function t(e){(0,_classCallCheck3.default)(this,t);var f=(0,_possibleConstructorReturn3.default)(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return f.handleShow=function(e){f.setState({maxShow:e},f.setDataSource)},f.getCurrentStep=function(e){var t=e.current,r=e.reverse,a=e.data;return r?void 0===t?0:a.length-1-t:void 0===t?a.length:t},f.getLineClass=function(e,t,r,a){var o,l,n=e.prefixCls,s=e.reverse,u=e.dot,i=f.state.data.length,c=f.getCustomDot(u,t,r);return s?(0,_classnames2.default)((l={},(0,_defineProperty3.default)(l,n+"-item",!0),(0,_defineProperty3.default)(l,n+"-item-last",i-1===r),(0,_defineProperty3.default)(l,n+"-item-finish",a<r),(0,_defineProperty3.default)(l,n+"-item-current",r===a),(0,_defineProperty3.default)(l,n+"-item-process",r===a&&!c),(0,_defineProperty3.default)(l,n+"-item-wait",r<a),(0,_defineProperty3.default)(l,n+"-item-next-more",r+1<i&&f.state.data[r+1]["dt-showMoreBtn"]),l)):(0,_classnames2.default)((o={},(0,_defineProperty3.default)(o,n+"-item",!0),(0,_defineProperty3.default)(o,n+"-item-last",i-1===r),(0,_defineProperty3.default)(o,n+"-item-finish",r<a),(0,_defineProperty3.default)(o,n+"-item-current",r===a),(0,_defineProperty3.default)(o,n+"-item-process",r===a&&!c),(0,_defineProperty3.default)(o,n+"-item-next-wait",a<=r),(0,_defineProperty3.default)(o,n+"-item-next-more",r+1<i&&f.state.data[r+1]["dt-showMoreBtn"]),o))},f.getBorderColor=function(e,t){var r=2<arguments.length&&void 0!==arguments[2]?arguments[2]:f.props.color,a="",o="blue",l="";return"function"==typeof r?a=r(e,t):"string"==typeof r&&(a=r),/^(blue|red|green)$/.test(a)?o=a:l=a,{baseColor:o,extraColor:l}},f.firstColumnReRender=function(e,t,r,a){var o=e.columns,l=e.more,n=o[0].render;if(r["dt-showMoreBtn"]){var s=f.props.prefixCls+"-more-btn";return{children:"string"==typeof l?React.createElement("div",{className:s},React.createElement("span",{onClick:function(){return f.handleShow(0)}},l)):l,props:{colSpan:o.length}}}return"function"==typeof n?n(t,r,a):r[o[0].dataIndex]},f.setColumns=function(){var n=0<arguments.length&&void 0!==arguments[0]?arguments[0]:f.props,s=n.prefixCls,e=n.columns,u=f.getCurrentStep(n),t=[(0,_extends3.default)({},e[0],{render:function(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return f.firstColumnReRender.apply(f,[(0,_extends3.default)({},n)].concat(t))}})].concat(e.slice(1)),r=[{key:"line",className:s+"-line",render:function(e,t,r){noop(e);var a=f.getLineClass(n,t,r,u),o=f.getDot(n,t,r,u),l=s+"-item-tail";return React.createElement("div",{className:a},React.createElement("div",{className:l}),o)}}];f.setState({columns:[].concat(r,t)})},f.setDataSource=function(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:f.props,t=e.data,r=e.more,a=e.reverse,o=f.state.maxShow,l=a?[].concat((0,_toConsumableArray3.default)(t)).reverse():[].concat((0,_toConsumableArray3.default)(t));0!==o&&t.length>o&&(l=[].concat((0,_toConsumableArray3.default)(l.filter(function(e,t){return noop(e),t<o}))),l=r?l.concat([{"dt-showMoreBtn":!0}]):l),f.setState({data:l})},f.getDot=function(e,t,r,a){var o,l=f.props.prefixCls,n=e.color,s=e.dot,u=e.reverse;n=f.getBorderColor(t,r,n),s=f.getCustomDot(s,t,r);var i=(0,_classnames2.default)((o={},(0,_defineProperty3.default)(o,l+"-item-head",!0),(0,_defineProperty3.default)(o,l+"-item-head-custom",s),(0,_defineProperty3.default)(o,l+"-item-head-"+n.baseColor,!n.extraColor&&n.baseColor),o)),c={borderColor:n.extraColor?u?a<r?n.extraColor:null:r<=a?n.extraColor:null:null,backgroundColor:a===r&&n.extraColor?n.extraColor:null};return React.createElement("div",{className:i,style:c},s)},f.state={maxShow:f.props.maxShow},f}return(0,_inherits3.default)(t,e),(0,_createClass3.default)(t,[{key:"getCustomDot",value:function(e,t,r){if("function"==typeof e)return e(t,r)}},{key:"updateState",value:function(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:this.props;this.setDataSource(e),this.setColumns(e)}},{key:"componentWillMount",value:function(){this.updateState()}},{key:"componentWillReceiveProps",value:function(e){var t=this;(0,_shallowequal2.default)(this.props.maxShow,e.maxShow)?(0,_shallowequal2.default)(e,this.props)||this.updateState(e):this.setState({maxShow:e.maxShow},function(){t.updateState(e)})}},{key:"shouldComponentUpdate",value:function(e,t){return!(0,_shallowequal2.default)(this.props,e)||!(0,_shallowequal2.default)(this.state,t)}},{key:"render",value:function(){var e=this.props,t=e.prefixCls,r=e.className,a=__rest(e,["prefixCls","className"]),o=(0,_classnames2.default)(t,r);return React.createElement(_rcTable2.default,(0,_extends3.default)({key:"table"},a,{prefixCls:t,showHeader:!1,data:this.state.data,columns:this.state.columns,className:o}))}}]),t}(React.Component);(exports.default=Timeline).defaultProps={prefixCls:"dt-timeline",data:[],columns:[],maxShow:10,more:"展开全部",color:"blue",reverse:!1},module.exports=exports.default;
;