diff --git a/dist/index.js b/dist/index.js index 984b0ce..f53fd34 100644 --- a/dist/index.js +++ b/dist/index.js @@ -1 +1 @@ -!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react"),require("moment"),require("react-sizeme")):"function"==typeof define&&define.amd?define("react-gantt-timeline",["React","moment","ReactDOM"],t):"object"==typeof exports?exports["react-gantt-timeline"]=t(require("react"),require("moment"),require("react-sizeme")):e["react-gantt-timeline"]=t(e.React,e.moment,e.ReactDOM)}(window,function(e,t,n){return function(e){var t={};function n(o){if(t[o])return t[o].exports;var r=t[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,n),r.l=!0,r.exports}return n.m=e,n.c=t,n.d=function(e,t,o){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(o,r,function(t){return e[t]}.bind(null,r));return o},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=8)}([function(t,n){t.exports=e},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=function(){function e(e,t){for(var n=0;n=0&&c.splice(t,1)}function y(e){var t=document.createElement("style");return void 0===e.attrs.type&&(e.attrs.type="text/css"),g(t,e.attrs),h(e,t),t}function g(e,t){Object.keys(t).forEach(function(n){e.setAttribute(n,t[n])})}function v(e,t){var n,o,r,i;if(t.transform&&e.css){if(!(i=t.transform(e.css)))return function(){};e.css=i}if(t.singleton){var a=u++;n=l||(l=y(t)),o=k.bind(null,n,a,!1),r=k.bind(null,n,a,!0)}else e.sourceMap&&"function"==typeof URL&&"function"==typeof URL.createObjectURL&&"function"==typeof URL.revokeObjectURL&&"function"==typeof Blob&&"function"==typeof btoa?(n=function(e){var t=document.createElement("link");return void 0===e.attrs.type&&(e.attrs.type="text/css"),e.attrs.rel="stylesheet",g(t,e.attrs),h(e,t),t}(t),o=function(e,t,n){var o=n.css,r=n.sourceMap,i=void 0===t.convertToAbsoluteUrls&&r;(t.convertToAbsoluteUrls||i)&&(o=d(o));r&&(o+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(r))))+" */");var a=new Blob([o],{type:"text/css"}),s=e.href;e.href=URL.createObjectURL(a),s&&URL.revokeObjectURL(s)}.bind(null,n,t),r=function(){m(n),n.href&&URL.revokeObjectURL(n.href)}):(n=y(t),o=function(e,t){var n=t.css,o=t.media;o&&e.setAttribute("media",o);if(e.styleSheet)e.styleSheet.cssText=n;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(n))}}.bind(null,n),r=function(){m(n)});return o(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap)return;o(e=t)}else r()}}e.exports=function(e,t){if("undefined"!=typeof DEBUG&&DEBUG&&"object"!=typeof document)throw new Error("The style-loader cannot be used in a non-browser environment");(t=t||{}).attrs="object"==typeof t.attrs?t.attrs:{},t.singleton||"boolean"==typeof t.singleton||(t.singleton=a()),t.insertInto||(t.insertInto="head"),t.insertAt||(t.insertAt="bottom");var n=f(e,t);return p(n,t),function(e){for(var o=[],r=0;rn.props.end.x?(e=n.calcSCoordinates(),"M"+n.props.start.x+" "+n.props.start.y+" "+e.cpt1.x+" "+e.cpt1.y+" "+e.cpt2.x+" "+e.cpt2.y+" "+e.cpt3.x+" "+e.cpt3.y+" "+e.cpt4.x+" "+e.cpt4.y+" "+n.props.end.x+" "+n.props.end.y):(e=n.calcNormCoordinates(),"M"+n.props.start.x+" "+n.props.start.y+" "+e.cpt1.x+" "+e.cpt1.y+" "+e.cpt2.x+" "+e.cpt2.y+" "+n.props.end.x+" "+n.props.end.y)},n.onSelect=function(e){n.props.onSelectItem&&n.props.onSelectItem(n.props.item)},n}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,r.Component),o(t,[{key:"render",value:function(){var e=this.props.isSelected?a.default.values.links.selectedColor:a.default.values.links.color;return i.default.createElement("g",{className:"timeline-link"},i.default.createElement("path",{pointerEvents:"stroke",onMouseDown:this.onSelect,stroke:"white",d:this.getPath(),strokeLinejoin:"round",fill:"transparent",strokeWidth:"4",cursor:"pointer"}),i.default.createElement("path",{pointerEvents:"stroke",onMouseDown:this.onSelect,stroke:e,d:this.getPath(),strokeLinejoin:"round",fill:"transparent",strokeWidth:"1",cursor:"pointer",markerEnd:"url(#arrow)"}))}}]),t}();t.default=u},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=Object.assign||function(e){for(var t=1;t=t.length?t.length:r+e}},n.setStartEnd=function(){n.dc.setStartEnd(n.state.scrollLeft,n.state.scrollLeft+n.state.size.width,n.state.nowposition,n.state.dayWidth)},n.horizontalChange=function(e){var t=n.state.nowposition,o=-1,r=n.state.headerData,i=n.state.startRow,a=n.state.endRow;e>n.pxToScroll?(t=n.state.nowposition-n.pxToScroll,o=0):e<=0?(t=n.state.nowposition+n.pxToScroll,o=n.pxToScroll):o=e;var s=Math.trunc((e-n.state.nowposition)/n.state.dayWidth);a=(i=Math.trunc(n.state.scrollTop/n.props.itemheight))+n.state.numVisibleRows>=n.props.data.length?n.props.data.length-1:i+n.state.numVisibleRows,n.setStartEnd(),n.setState(n.state={currentday:s,nowposition:t,headerData:r,scrollLeft:o,startRow:i,endRow:a})},n.calculateVerticalScrollVariables=function(e){n.pxToScroll=(1-e.width/h.DATA_CONTAINER_WIDTH)*h.DATA_CONTAINER_WIDTH-1},n.onHorizonChange=function(e,t){n.props.onHorizonChange&&n.props.onHorizonChange(e,t)},n.doMouseDown=function(e){n.dragging=!0,n.draggingPosition=e.clientX},n.doMouseMove=function(e){if(n.dragging){var t=n.draggingPosition-e.clientX;0!==t&&(n.draggingPosition=e.clientX,n.horizontalChange(n.state.scrollLeft+t))}},n.doMouseUp=function(e){n.dragging=!1},n.doMouseLeave=function(e){n.dragging=!1},n.doTouchStart=function(e){n.dragging=!0,n.draggingPosition=e.touches[0].clientX},n.doTouchEnd=function(e){n.dragging=!1},n.doTouchMove=function(e){if(n.dragging){var t=n.draggingPosition-e.touches[0].clientX;0!==t&&(n.draggingPosition=e.touches[0].clientX,n.horizontalChange(n.state.scrollLeft+t))}},n.doTouchCancel=function(e){n.dragging=!1},n.doMouseLeave=function(e){n.dragging=!1},n.onTaskListSizing=function(e){n.setState(function(t){var n=o({},t);return n.sideStyle={width:n.sideStyle.width-e},n})},n.onSelectItem=function(e){n.props.onSelectItem&&e!=n.props.selectedItem&&n.props.onSelectItem(e)},n.onStartCreateLink=function(e,t){n.setState({interactiveMode:!0,taskToCreate:{task:e,position:t}})},n.onFinishCreateLink=function(e,t){n.props.onCreateLink&&e&&n.props.onCreateLink({start:n.state.taskToCreate,end:{task:e,position:t}}),n.setState({interactiveMode:!1,taskToCreate:null})},n.onTaskChanging=function(e){n.setState({changingTask:e})},n.calcNumVisibleDays=function(e){return Math.ceil(e.width/n.state.dayWidth)+h.BUFFER_DAYS},n.checkNeeeData=function(){if(n.props.data!=n.state.data){n.state.data=n.props.data;var e=n.calculateStartEndRows(n.state.numVisibleRows,n.props.data,n.state.scrollTop);n.state.startRow=e.start,n.state.endRow=e.end,f.default.registerData(n.state.data)}n.props.links!=n.state.links&&(n.state.links=n.props.links,f.default.registerLinks(n.props.links))},n.dragging=!1,n.draggingPosition=0,n.dc=new m.default,n.dc.onHorizonChange=n.onHorizonChange,n.initialise=!1,n.pxToScroll=1900;var r=n.getDayWidth(n.props.mode);return y.default.load(n.props.config),n.state={currentday:0,nowposition:0,startRow:0,endRow:10,sideStyle:{width:200},scrollLeft:0,scrollTop:0,numVisibleRows:40,numVisibleDays:60,dayWidth:r,interactiveMode:!1,taskToCreate:null,links:[],mode:n.props.mode?n.props.mode:h.VIEW_MODE_MONTH,size:{width:1,height:1},changingTask:null},n}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,i.Component),r(t,[{key:"getDayWidth",value:function(e){switch(e){case h.VIEW_MODE_DAY:return h.DAY_DAY_MODE;case h.VIEW_MODE_WEEK:return h.DAY_WEEK_MODE;case h.VIEW_MODE_MONTH:return h.DAY_MONTH_MODE;case h.VIEW_MODE_YEAR:return h.DAY_YEAR_MODE;default:return h.DAY_MONTH_MODE}}},{key:"checkMode",value:function(){if(this.props.mode!=this.state.mode&&this.props.mode){this.state.mode=this.props.mode;var e=this.getDayWidth(this.state.mode);this.state.dayWidth=e,this.state.numVisibleDays=this.calcNumVisibleDays(this.state.size);var t=Math.ceil(-this.state.currentday*this.state.dayWidth/this.pxToScroll);this.state.nowposition=t*this.pxToScroll;var n=(this.state.currentday*this.state.dayWidth+this.state.nowposition)%this.pxToScroll;this.state.scrollLeft=n}}},{key:"render",value:function(){var e;return this.checkMode(),this.checkNeeeData(),a.default.createElement("div",{className:"timeLine"},a.default.createElement("div",{className:"timeLine-side-main",style:this.state.sideStyle},a.default.createElement(p.default,{ref:"taskViewPort",itemheight:this.props.itemheight,startRow:this.state.startRow,endRow:this.state.endRow,data:this.props.data,selectedItem:this.props.selectedItem,onSelectItem:this.onSelectItem,onUpdateTask:this.props.onUpdateTask,onScroll:this.verticalChange}),a.default.createElement(l.default,{onTaskListSizing:this.onTaskListSizing})),a.default.createElement("div",{className:"timeLine-main"},a.default.createElement(u.default,{headerData:this.state.headerData,numVisibleDays:this.state.numVisibleDays,currentday:this.state.currentday,nowposition:this.state.nowposition,dayWidth:this.state.dayWidth,mode:this.state.mode,scrollLeft:this.state.scrollLeft}),a.default.createElement(c.default,{ref:"dataViewPort",scrollLeft:this.state.scrollLeft,scrollTop:this.state.scrollTop,itemheight:this.props.itemheight,nowposition:this.state.nowposition,startRow:this.state.startRow,endRow:this.state.endRow,data:this.props.data,selectedItem:this.props.selectedItem,dayWidth:this.state.dayWidth,onScroll:this.scrollData,onMouseDown:this.doMouseDown,onMouseMove:this.doMouseMove,onMouseUp:this.doMouseUp,onMouseLeave:this.doMouseLeave,onTouchStart:this.doTouchStart,onTouchMove:this.doTouchMove,onTouchEnd:this.doTouchEnd,onTouchCancel:this.doTouchCancel,onSelectItem:this.onSelectItem,onUpdateTask:this.props.onUpdateTask,onTaskChanging:this.onTaskChanging,onStartCreateLink:this.onStartCreateLink,onFinishCreateLink:this.onFinishCreateLink,boundaries:{lower:this.state.scrollLeft,upper:this.state.scrollLeft+this.state.size.width},onSize:this.onSize}),a.default.createElement(d.default,(v(e={scrollLeft:this.state.scrollLeft,scrollTop:this.state.scrollTop,startRow:this.state.startRow,endRow:this.state.endRow,data:this.props.data,nowposition:this.state.nowposition,dayWidth:this.state.dayWidth,interactiveMode:this.state.interactiveMode,taskToCreate:this.state.taskToCreate,onFinishCreateLink:this.onFinishCreateLink,changingTask:this.state.changingTask,selectedItem:this.props.selectedItem,onSelectItem:this.onSelectItem,itemheight:this.props.itemheight},"onSelectItem",this.onSelectItem),v(e,"links",this.props.links),e))))}}]),t}();b.propTypes={itemheight:s.default.number.isRequired,dayWidth:s.default.number.isRequired},b.defaultProps={itemheight:20,dayWidth:24},t.default=b},function(e,t,n){e.exports=n(10)()},function(e,t,n){"use strict";var o=n(11);function r(){}function i(){}i.resetWarningCache=r,e.exports=function(){function e(e,t,n,r,i,a){if(a!==o){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var n={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:i,resetWarningCache:r};return n.PropTypes=n,n}},function(e,t,n){"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=function(){function e(e,t){for(var n=0;nn.end},n.setBoundaries(),n}return h(t,i.PureComponent),r(t,[{key:"getFormat",value:function(e,t){switch(e){case"year":return"YYYY";case"month":return"top"==t?"MMMM YYYY":"MMMM";case"week":return"top"==t?"ww MMMM YYYY":"ww";case"dayweek":return"dd";case"daymonth":return"D"}}},{key:"getModeIncrement",value:function(e,t){switch(t){case"year":return c.default.daysInYear(e.year());case"month":return e.daysInMonth();case"week":return 7;default:return 1}}},{key:"getBox",value:function(e,t,n){var o=this.getModeIncrement(e,t)*this.props.dayWidth;if(!n){var r=this.getStartDate(e,t);r=r.startOf("day");var i=(0,s.default)().startOf("day"),a=r.diff(i,"days");n=c.default.dayToPosition(a,this.props.nowposition,this.props.dayWidth)}return{left:n,width:o}}},{key:"render",value:function(){return this.refs.Header&&(this.refs.Header.scrollLeft=this.props.scrollLeft),a.default.createElement("div",{id:"timeline-header",ref:"Header",className:"timeLine-main-header-viewPort"},this.renderHeader())}}]),t}();t.default=y},function(e,n){e.exports=t},function(e,t,n){var o=n(16);"string"==typeof o&&(o=[[e.i,o,""]]);var r={hmr:!0,transform:void 0,insertInto:void 0};n(5)(o,r);o.locals&&(e.exports=o.locals)},function(e,t,n){(e.exports=n(4)(!1)).push([e.i,".header-top{\n height: 20px;\n\n border-bottom: solid 0.5px silver;\n}\n\n.header-middle{\n height: 20px;\n background-color: chocolate;\n color: white;\n font-size:10px;\n border-bottom: solid 0.5px silver;\n \n}\n.header-bottom{\n height: 20px;\n font-size:10px;\n border-bottom: solid 0.5px silver;\n}\n",""])},function(e,t){e.exports=function(e){var t="undefined"!=typeof window&&window.location;if(!t)throw new Error("fixUrls requires window.location");if(!e||"string"!=typeof e)return e;var n=t.protocol+"//"+t.host,o=n+t.pathname.replace(/\/[^\/]*$/,"/");return e.replace(/url\s*\(((?:[^)(]|\((?:[^)(]+|\([^)(]*\))*\))*)\)/gi,function(e,t){var r,i=t.trim().replace(/^"(.*)"$/,function(e,t){return t}).replace(/^'(.*)'$/,function(e,t){return t});return/^(#|data:|http:\/\/|https:\/\/|file:\/\/\/|\s*$)/i.test(i)?e:(r=0===i.indexOf("//")?i:0===i.indexOf("/")?n+i:o+i.replace(/^\.\//,""),"url("+JSON.stringify(r)+")")})}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DataViewPort=t.DataRow=void 0;var o=Object.assign||function(e){for(var t=1;t0?e*this.props.itemheight:10}},{key:"componentDidMount",value:function(){this.refs.dataViewPort.scrollLeft=0}},{key:"render",value:function(){this.refs.dataViewPort&&(this.refs.dataViewPort.scrollLeft=this.props.scrollLeft,this.refs.dataViewPort.scrollTop=this.props.scrollTop);var e=this.getContainerHeight(this.props.data.length);return a.default.createElement("div",{ref:"dataViewPort",id:"timeLinedataViewPort",className:"timeLine-main-data-viewPort",onMouseDown:this.doMouseDown,onMouseMove:this.doMouseMove,onMouseUp:this.props.onMouseUp,onMouseLeave:this.props.onMouseLeave,onTouchStart:this.doTouchStart,onTouchMove:this.doTouchMove,onTouchEnd:this.props.onTouchEnd,onTouchCancel:this.props.onTouchCancel},a.default.createElement("div",{className:"timeLine-main-data-container",style:{height:e,width:s.DATA_CONTAINER_WIDTH,maxWidth:s.DATA_CONTAINER_WIDTH}},this.renderRows()))}}]),t}();t.default=(0,c.default)({monitorWidth:!0,monitorHeight:!0})(g)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=Object.assign||function(e){for(var t=1;t0?e*this.props.itemheight:10}}},{key:"renderTaskRow",value:function(e){for(var t=[],n=this.props.startRow;nt.upper_data_limit},this.setLimits=function(e,n){t.lower_limit=e-1e3,t.lower_data_limit=e-750,t.upper_limit=n+1e3,t.upper_data_limit=n+750},this.loadDataHorizon=function(){var e=i.default.pixelToDate(t.lower_limit,t.nowposition,t.daywidth),n=i.default.pixelToDate(t.upper_limit,t.nowposition,t.daywidth);t.onHorizonChange(e,n)},this.lower_limit=0,this.upper_limit=0,this._dataToRender=[]}},function(e,t,n){var o=n(27);"string"==typeof o&&(o=[[e.i,o,""]]);var r={hmr:!0,transform:void 0,insertInto:void 0};n(5)(o,r);o.locals&&(e.exports=o.locals)},function(e,t,n){(e.exports=n(4)(!1)).push([e.i,".timeLine{\n display: flex;\n flex-direction: row;\n width:100%;\n height: 100%;\n border:solid 1px rgb(207, 207, 205);\n font-size: 12px;\n user-select: none;\n -moz-user-select: none;\n -webkit-user-select: none;\n -ms-user-select: none;\n}\n\n/* Main Area */\n\n.timeLine-main{\n flex: 1 1 100%;\n position: relative;\n display: flex;\n flex-direction: column;\n overflow-y: hidden;\n}\n/* Main Area Header*/\n\n.timeLine-main-header-viewPort{\n flex: 0 0 60px;\n position: relative;\n height: 60px ;\n width: 100%;\n background-color: rgb(112, 112, 112);\n overflow: hidden;\n \n}\n\n.timeLine-main-header-container{\n flex: 0 0 60px;\n position: relative;\n top:0;\n left:0;\n height: 100% ;\n display:flex;\n flex-direction: column;\n background-color: #333333;\n overflow: hidden;\n user-select: none;\n}\n\n.timeLine-main-header-day-item{\n position: absolute;\n display: flex;\n flex-direction: column;\n justify-content: center;\n background-color:rgb(112, 112, 112);\n font-size: 10px;\n text-align: center;\n border-right:solid 1px;\n border-top:solid 1px;\n border-bottom:solid 1px;\n top:20px;\n height:40px;\n color: white;\n text-align: center;\n}\n\n\n.timeLine-main-header-top-item{\n position: absolute;\n display: flex;\n flex-direction: column;\n justify-content: center;\n border-right:solid 1px white;\n height:20px;\n z-index: 91;\n}\n\n.timeLine-main-header-day-week{\n flex:0 0 12px;\n padding: 4px;\n z-index: 90;\n}\n\n.timeLine-main-header-day-month{\n top:0px;\n position: sticky;\n flex:0 0 15px;\n padding: 5px;\n z-index: 90;\n}\n\n.timeLine-main-header-time{\n display: flex;\n flex-direction: row;\n align-items: stretch;\n height: 22px;\n justify-content: stretch;\n}\n\n.timeLine-main-header-time-item{\n border-left: solid 1px silver;\n border-bottom: solid 1px silver;\n border-top: solid 1px silver;\n text-align: center;\n padding-top: 5px;\n}\n/* Main Area Data*/\n\n.timeLine-main-data-viewPort{\n flex: 1 1 auto;\n position: relative;\n overflow: hidden;\n background-color:#fbf9f9;;\n \n \n}\n.timeLine-main-data-container{\n position: relative;\n top:0;\n left:0;\n height: 100% ;\n background-color: rgb(255, 255, 255);\n}\n\n.timeLine-main-data-row{\n position: absolute;\n width: 100%;\n height: 50px;\n \n}\n\n.timeLine-main-data-task{\n position: absolute;\n background-color:darkorchid;\n border-radius: 14px;\n color: white;\n text-align: center;\n}\n\n.timeLine-main-data-task-side{\n position: absolute;\n width: 10px;\n cursor: col-resize;\n display:flex;\n flex-direction: column;\n justify-content: center;\n}\n.timeLine-main-data-task-side-linker{\n width:8px;\n height: 8px;\n border-radius: 4px;\n cursor: default;\n z-index: 100;\n \n}\n.timeLine-main-data-task-side-linker:hover{\n background-color: black;\n border: solid 0.5px grey\n}\n/* .timeLine-main-data-task:hover {\n background-color:chocolate;\n border:solid 2px darkorchid;\n cursor: move;\n} */\n\n\n\n.timeLine-main-data-verticalLine{\n flex:1 1 auto;\n height: 100%;\n width: 24px;\n background-color:white;\n border-left-width: 0.5px;\n border-left-color: rgb(207, 207, 205);\n border-left-style: dashed;\n}\n\n/* Side Area */\n\n.timeLine-side-main{\n flex: 0 0 auto;\n width:108px;\n min-width: 108px;\n display: flex;\n flex-direction: row;\n \n}\n\n.timeLine-side{\n flex: 1 0 100px;\n display: flex;\n flex-direction: column;\n border-right:solid 1px rgb(207, 207, 205);\n}\n\n.verticalResizer{\n flex: 0 0 8px;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n cursor: col-resize;\n border-right:solid 1px rgb(207, 207, 205);\n height: 100%;\n\n}\n.squareGrip{\n flex: 0 0 auto;\n \n border-radius: 50%;\n height: 5px;\n width: 5px;\n margin: 3px 0;\n}\n\n.timeLine-side-title{\n flex: 0 0 60px;\n display: flex;\n justify-content: center;\n align-items: center;\n \n}\n\n.timeLine-side-task-viewPort{\n position: relative;\n flex: 1 1 auto;\n height:100% ;\n background-color:#fbf9f9;\n overflow-x: hidden;\n overflow-y: auto;\n}\n\n.timeLine-side-task-container{\n position: relative;\n overflow-x: hidden;\n overflow-y: hidden;\n}\n\n.timeLine-side-task-row{\n position: absolute;\n width: 100%;\n background-color: rgb(112, 112, 112);\n border-bottom-width: 0.5px;\n border-bottom-color: rgb(207, 207, 205);\n border-bottom-style: solid;\n height: 30px;\n color: grey;\n text-align: center;\n overflow: hidden;\n text-overflow: ellipsis; \n outline: none;\n display: flex;\n justify-content: center;\n align-items: center;\n}\n\n",""])}])}); \ No newline at end of file +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react"),require("moment"),require("react-sizeme")):"function"==typeof define&&define.amd?define("react-gantt-timeline",["React","moment","ReactDOM"],t):"object"==typeof exports?exports["react-gantt-timeline"]=t(require("react"),require("moment"),require("react-sizeme")):e["react-gantt-timeline"]=t(e.React,e.moment,e.ReactDOM)}(window,function(e,t,n){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=8)}([function(t,n){t.exports=e},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(e,t){for(var n=0;n=0&&c.splice(t,1)}function y(e){var t=document.createElement("style");return void 0===e.attrs.type&&(e.attrs.type="text/css"),g(t,e.attrs),h(e,t),t}function g(e,t){Object.keys(t).forEach(function(n){e.setAttribute(n,t[n])})}function v(e,t){var n,r,o,i;if(t.transform&&e.css){if(!(i=t.transform(e.css)))return function(){};e.css=i}if(t.singleton){var a=u++;n=l||(l=y(t)),r=k.bind(null,n,a,!1),o=k.bind(null,n,a,!0)}else e.sourceMap&&"function"==typeof URL&&"function"==typeof URL.createObjectURL&&"function"==typeof URL.revokeObjectURL&&"function"==typeof Blob&&"function"==typeof btoa?(n=function(e){var t=document.createElement("link");return void 0===e.attrs.type&&(e.attrs.type="text/css"),e.attrs.rel="stylesheet",g(t,e.attrs),h(e,t),t}(t),r=function(e,t,n){var r=n.css,o=n.sourceMap,i=void 0===t.convertToAbsoluteUrls&&o;(t.convertToAbsoluteUrls||i)&&(r=d(r));o&&(r+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(o))))+" */");var a=new Blob([r],{type:"text/css"}),s=e.href;e.href=URL.createObjectURL(a),s&&URL.revokeObjectURL(s)}.bind(null,n,t),o=function(){m(n),n.href&&URL.revokeObjectURL(n.href)}):(n=y(t),r=function(e,t){var n=t.css,r=t.media;r&&e.setAttribute("media",r);if(e.styleSheet)e.styleSheet.cssText=n;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(n))}}.bind(null,n),o=function(){m(n)});return r(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap)return;r(e=t)}else o()}}e.exports=function(e,t){if("undefined"!=typeof DEBUG&&DEBUG&&"object"!=typeof document)throw new Error("The style-loader cannot be used in a non-browser environment");(t=t||{}).attrs="object"==typeof t.attrs?t.attrs:{},t.singleton||"boolean"==typeof t.singleton||(t.singleton=a()),t.insertInto||(t.insertInto="head"),t.insertAt||(t.insertAt="bottom");var n=f(e,t);return p(n,t),function(e){for(var r=[],o=0;on.props.end.x?(e=n.calcSCoordinates(),"M"+n.props.start.x+" "+n.props.start.y+" "+e.cpt1.x+" "+e.cpt1.y+" "+e.cpt2.x+" "+e.cpt2.y+" "+e.cpt3.x+" "+e.cpt3.y+" "+e.cpt4.x+" "+e.cpt4.y+" "+n.props.end.x+" "+n.props.end.y):(e=n.calcNormCoordinates(),"M"+n.props.start.x+" "+n.props.start.y+" "+e.cpt1.x+" "+e.cpt1.y+" "+e.cpt2.x+" "+e.cpt2.y+" "+n.props.end.x+" "+n.props.end.y)},n.onSelect=function(e){n.props.onSelectItem&&n.props.onSelectItem(n.props.item)},n}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,o.Component),r(t,[{key:"render",value:function(){var e=this.props.isSelected?a.default.values.links.selectedColor:a.default.values.links.color;return i.default.createElement("g",{className:"timeline-link"},i.default.createElement("path",{pointerEvents:"stroke",onMouseDown:this.onSelect,stroke:"white",d:this.getPath(),strokeLinejoin:"round",fill:"transparent",strokeWidth:"4",cursor:"pointer"}),i.default.createElement("path",{pointerEvents:"stroke",onMouseDown:this.onSelect,stroke:e,d:this.getPath(),strokeLinejoin:"round",fill:"transparent",strokeWidth:"1",cursor:"pointer",markerEnd:"url(#arrow)"}))}}]),t}();t.default=u},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t=t.length?t.length:o+e}},n.setStartEnd=function(){n.dc.setStartEnd(n.state.scrollLeft,n.state.scrollLeft+n.state.size.width,n.state.nowposition,n.state.dayWidth)},n.horizontalChange=function(e){var t=n.state.nowposition,r=-1,o=n.state.headerData,i=n.state.startRow,a=n.state.endRow;e>n.pxToScroll?(t=n.state.nowposition-n.pxToScroll,r=0):e<=0?(t=n.state.nowposition+n.pxToScroll,r=n.pxToScroll):r=e;var s=Math.trunc((e-n.state.nowposition)/n.state.dayWidth);a=(i=Math.trunc(n.state.scrollTop/n.props.itemheight))+n.state.numVisibleRows>=n.props.data.length?n.props.data.length-1:i+n.state.numVisibleRows,n.setStartEnd(),n.setState(n.state={currentday:s,nowposition:t,headerData:o,scrollLeft:r,startRow:i,endRow:a})},n.calculateVerticalScrollVariables=function(e){n.pxToScroll=(1-e.width/h.DATA_CONTAINER_WIDTH)*h.DATA_CONTAINER_WIDTH-1},n.onHorizonChange=function(e,t){n.props.onHorizonChange&&n.props.onHorizonChange(e,t)},n.doMouseDown=function(e){n.dragging=!0,n.draggingPosition=e.clientX},n.doMouseMove=function(e){if(n.dragging){var t=n.draggingPosition-e.clientX;0!==t&&(n.draggingPosition=e.clientX,n.horizontalChange(n.state.scrollLeft+t))}},n.doMouseUp=function(e){n.dragging=!1},n.doMouseLeave=function(e){n.dragging=!1},n.doTouchStart=function(e){n.dragging=!0,n.draggingPosition=e.touches[0].clientX},n.doTouchEnd=function(e){n.dragging=!1},n.doTouchMove=function(e){if(n.dragging){var t=n.draggingPosition-e.touches[0].clientX;0!==t&&(n.draggingPosition=e.touches[0].clientX,n.horizontalChange(n.state.scrollLeft+t))}},n.doTouchCancel=function(e){n.dragging=!1},n.doMouseLeave=function(e){n.dragging=!1},n.onTaskListSizing=function(e){n.setState(function(t){var n=r({},t);return n.sideStyle={width:n.sideStyle.width-e},n})},n.onSelectItem=function(e){n.props.onSelectItem&&e!=n.props.selectedItem&&n.props.onSelectItem(e)},n.onStartCreateLink=function(e,t){n.setState({interactiveMode:!0,taskToCreate:{task:e,position:t}})},n.onFinishCreateLink=function(e,t){n.props.onCreateLink&&e&&n.props.onCreateLink({start:n.state.taskToCreate,end:{task:e,position:t}}),n.setState({interactiveMode:!1,taskToCreate:null})},n.onTaskChanging=function(e){n.setState({changingTask:e})},n.calcNumVisibleDays=function(e){return Math.ceil(e.width/n.state.dayWidth)+h.BUFFER_DAYS},n.checkNeeeData=function(){if(n.props.data!=n.state.data){n.state.data=n.props.data;var e=n.calculateStartEndRows(n.state.numVisibleRows,n.props.data,n.state.scrollTop);n.state.startRow=e.start,n.state.endRow=e.end,f.default.registerData(n.state.data)}n.props.links!=n.state.links&&(n.state.links=n.props.links,f.default.registerLinks(n.props.links))},n.dragging=!1,n.draggingPosition=0,n.dc=new m.default,n.dc.onHorizonChange=n.onHorizonChange,n.initialise=!1,n.pxToScroll=1900;var o=n.getDayWidth(n.props.mode);return y.default.load(n.props.config),n.state={currentday:0,nowposition:0,startRow:0,endRow:10,sideStyle:{width:200},scrollLeft:0,scrollTop:0,numVisibleRows:40,numVisibleDays:60,dayWidth:o,interactiveMode:!1,taskToCreate:null,links:[],mode:n.props.mode?n.props.mode:h.VIEW_MODE_MONTH,size:{width:1,height:1},changingTask:null},n}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,i.Component),o(t,[{key:"getDayWidth",value:function(e){switch(e){case h.VIEW_MODE_DAY:return h.DAY_DAY_MODE;case h.VIEW_MODE_WEEK:return h.DAY_WEEK_MODE;case h.VIEW_MODE_MONTH:return h.DAY_MONTH_MODE;case h.VIEW_MODE_YEAR:return h.DAY_YEAR_MODE;default:return h.DAY_MONTH_MODE}}},{key:"checkMode",value:function(){if(this.props.mode!=this.state.mode&&this.props.mode){this.state.mode=this.props.mode;var e=this.getDayWidth(this.state.mode);this.state.dayWidth=e,this.state.numVisibleDays=this.calcNumVisibleDays(this.state.size);var t=Math.ceil(-this.state.currentday*this.state.dayWidth/this.pxToScroll);this.state.nowposition=t*this.pxToScroll;var n=(this.state.currentday*this.state.dayWidth+this.state.nowposition)%this.pxToScroll;this.state.scrollLeft=n}}},{key:"render",value:function(){var e;return this.checkMode(),this.checkNeeeData(),a.default.createElement("div",{className:"timeLine"},a.default.createElement("div",{className:"timeLine-side-main",style:this.state.sideStyle},a.default.createElement(p.default,{ref:"taskViewPort",itemheight:this.props.itemheight,startRow:this.state.startRow,endRow:this.state.endRow,data:this.props.data,selectedItem:this.props.selectedItem,onSelectItem:this.onSelectItem,onUpdateTask:this.props.onUpdateTask,onScroll:this.verticalChange,nonEditable:this.props.nonEditableName}),a.default.createElement(l.default,{onTaskListSizing:this.onTaskListSizing})),a.default.createElement("div",{className:"timeLine-main"},a.default.createElement(u.default,{headerData:this.state.headerData,numVisibleDays:this.state.numVisibleDays,currentday:this.state.currentday,nowposition:this.state.nowposition,dayWidth:this.state.dayWidth,mode:this.state.mode,scrollLeft:this.state.scrollLeft}),a.default.createElement(c.default,{ref:"dataViewPort",scrollLeft:this.state.scrollLeft,scrollTop:this.state.scrollTop,itemheight:this.props.itemheight,nowposition:this.state.nowposition,startRow:this.state.startRow,endRow:this.state.endRow,data:this.props.data,selectedItem:this.props.selectedItem,dayWidth:this.state.dayWidth,onScroll:this.scrollData,onMouseDown:this.doMouseDown,onMouseMove:this.doMouseMove,onMouseUp:this.doMouseUp,onMouseLeave:this.doMouseLeave,onTouchStart:this.doTouchStart,onTouchMove:this.doTouchMove,onTouchEnd:this.doTouchEnd,onTouchCancel:this.doTouchCancel,onSelectItem:this.onSelectItem,onUpdateTask:this.props.onUpdateTask,onTaskChanging:this.onTaskChanging,onStartCreateLink:this.onStartCreateLink,onFinishCreateLink:this.onFinishCreateLink,boundaries:{lower:this.state.scrollLeft,upper:this.state.scrollLeft+this.state.size.width},onSize:this.onSize}),a.default.createElement(d.default,(v(e={scrollLeft:this.state.scrollLeft,scrollTop:this.state.scrollTop,startRow:this.state.startRow,endRow:this.state.endRow,data:this.props.data,nowposition:this.state.nowposition,dayWidth:this.state.dayWidth,interactiveMode:this.state.interactiveMode,taskToCreate:this.state.taskToCreate,onFinishCreateLink:this.onFinishCreateLink,changingTask:this.state.changingTask,selectedItem:this.props.selectedItem,onSelectItem:this.onSelectItem,itemheight:this.props.itemheight},"onSelectItem",this.onSelectItem),v(e,"links",this.props.links),e))))}}]),t}();b.propTypes={itemheight:s.default.number.isRequired,dayWidth:s.default.number.isRequired,nonEditableName:s.default.bool},b.defaultProps={itemheight:20,dayWidth:24,nonEditableName:!1},t.default=b},function(e,t,n){e.exports=n(10)()},function(e,t,n){"use strict";var r=n(11);function o(){}e.exports=function(){function e(e,t,n,o,i,a){if(a!==r){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var n={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t};return n.checkPropTypes=o,n.PropTypes=n,n}},function(e,t,n){"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(e,t){for(var n=0;nn.end},n.setBoundaries(),n}return h(t,i.PureComponent),o(t,[{key:"getFormat",value:function(e,t){switch(e){case"year":return"YYYY";case"month":return"top"==t?"MMMM YYYY":"MMMM";case"week":return"top"==t?"ww MMMM YYYY":"ww";case"dayweek":return"dd";case"daymonth":return"D"}}},{key:"getModeIncrement",value:function(e,t){switch(t){case"year":return c.default.daysInYear(e.year());case"month":return e.daysInMonth();case"week":return 7;default:return 1}}},{key:"getBox",value:function(e,t,n){var r=this.getModeIncrement(e,t)*this.props.dayWidth;if(!n){var o=this.getStartDate(e,t);o=o.startOf("day");var i=(0,s.default)().startOf("day"),a=o.diff(i,"days");n=c.default.dayToPosition(a,this.props.nowposition,this.props.dayWidth)}return{left:n,width:r}}},{key:"render",value:function(){return this.refs.Header&&(this.refs.Header.scrollLeft=this.props.scrollLeft),a.default.createElement("div",{id:"timeline-header",ref:"Header",className:"timeLine-main-header-viewPort"},this.renderHeader())}}]),t}();t.default=y},function(e,n){e.exports=t},function(e,t,n){var r=n(16);"string"==typeof r&&(r=[[e.i,r,""]]);var o={hmr:!0,transform:void 0,insertInto:void 0};n(5)(r,o);r.locals&&(e.exports=r.locals)},function(e,t,n){(e.exports=n(4)(!1)).push([e.i,".header-top{\r\n height: 20px;\r\n\r\n border-bottom: solid 0.5px silver;\r\n}\r\n\r\n.header-middle{\r\n height: 20px;\r\n background-color: chocolate;\r\n color: white;\r\n font-size:10px;\r\n border-bottom: solid 0.5px silver;\r\n \r\n}\r\n.header-bottom{\r\n height: 20px;\r\n font-size:10px;\r\n border-bottom: solid 0.5px silver;\r\n}\r\n",""])},function(e,t){e.exports=function(e){var t="undefined"!=typeof window&&window.location;if(!t)throw new Error("fixUrls requires window.location");if(!e||"string"!=typeof e)return e;var n=t.protocol+"//"+t.host,r=n+t.pathname.replace(/\/[^\/]*$/,"/");return e.replace(/url\s*\(((?:[^)(]|\((?:[^)(]+|\([^)(]*\))*\))*)\)/gi,function(e,t){var o,i=t.trim().replace(/^"(.*)"$/,function(e,t){return t}).replace(/^'(.*)'$/,function(e,t){return t});return/^(#|data:|http:\/\/|https:\/\/|file:\/\/\/|\s*$)/i.test(i)?e:(o=0===i.indexOf("//")?i:0===i.indexOf("/")?n+i:r+i.replace(/^\.\//,""),"url("+JSON.stringify(o)+")")})}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DataViewPort=t.DataRow=void 0;var r=Object.assign||function(e){for(var t=1;t0?e*this.props.itemheight:10}},{key:"componentDidMount",value:function(){this.refs.dataViewPort.scrollLeft=0}},{key:"render",value:function(){this.refs.dataViewPort&&(this.refs.dataViewPort.scrollLeft=this.props.scrollLeft,this.refs.dataViewPort.scrollTop=this.props.scrollTop);var e=this.getContainerHeight(this.props.data.length);return a.default.createElement("div",{ref:"dataViewPort",id:"timeLinedataViewPort",className:"timeLine-main-data-viewPort",onMouseDown:this.doMouseDown,onMouseMove:this.doMouseMove,onMouseUp:this.props.onMouseUp,onMouseLeave:this.props.onMouseLeave,onTouchStart:this.doTouchStart,onTouchMove:this.doTouchMove,onTouchEnd:this.props.onTouchEnd,onTouchCancel:this.props.onTouchCancel},a.default.createElement("div",{className:"timeLine-main-data-container",style:{height:e,width:s.DATA_CONTAINER_WIDTH,maxWidth:s.DATA_CONTAINER_WIDTH}},this.renderRows()))}}]),t}();t.default=(0,c.default)({monitorWidth:!0,monitorHeight:!0})(g)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t0?e*this.props.itemheight:10}}},{key:"renderTaskRow",value:function(e){for(var t=[],n=this.props.startRow;nt.upper_data_limit},this.setLimits=function(e,n){t.lower_limit=e-1e3,t.lower_data_limit=e-750,t.upper_limit=n+1e3,t.upper_data_limit=n+750},this.loadDataHorizon=function(){var e=i.default.pixelToDate(t.lower_limit,t.nowposition,t.daywidth),n=i.default.pixelToDate(t.upper_limit,t.nowposition,t.daywidth);t.onHorizonChange(e,n)},this.lower_limit=0,this.upper_limit=0,this._dataToRender=[]}},function(e,t,n){var r=n(27);"string"==typeof r&&(r=[[e.i,r,""]]);var o={hmr:!0,transform:void 0,insertInto:void 0};n(5)(r,o);r.locals&&(e.exports=r.locals)},function(e,t,n){(e.exports=n(4)(!1)).push([e.i,".timeLine {\r\n display: flex;\r\n flex-direction: row;\r\n width: 100%;\r\n height: 100%;\r\n border: solid 1px rgb(207, 207, 205);\r\n font-size: 12px;\r\n user-select: none;\r\n -moz-user-select: none;\r\n -webkit-user-select: none;\r\n -ms-user-select: none;\r\n}\r\n\r\n/* Main Area */\r\n\r\n.timeLine-main {\r\n flex: 1 1 100%;\r\n position: relative;\r\n display: flex;\r\n flex-direction: column;\r\n overflow-y: hidden;\r\n}\r\n/* Main Area Header*/\r\n\r\n.timeLine-main-header-viewPort {\r\n flex: 0 0 60px;\r\n position: relative;\r\n height: 60px;\r\n width: 100%;\r\n background-color: rgb(112, 112, 112);\r\n overflow: hidden;\r\n}\r\n\r\n.timeLine-main-header-container {\r\n flex: 0 0 60px;\r\n position: relative;\r\n top: 0;\r\n left: 0;\r\n height: 100%;\r\n display: flex;\r\n flex-direction: column;\r\n background-color: #333333;\r\n overflow: hidden;\r\n user-select: none;\r\n}\r\n\r\n.timeLine-main-header-day-item {\r\n position: absolute;\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n background-color: rgb(112, 112, 112);\r\n font-size: 10px;\r\n text-align: center;\r\n border-right: solid 1px;\r\n border-top: solid 1px;\r\n border-bottom: solid 1px;\r\n top: 20px;\r\n height: 40px;\r\n color: white;\r\n text-align: center;\r\n}\r\n\r\n.timeLine-main-header-top-item {\r\n position: absolute;\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n border-right: solid 1px white;\r\n height: 20px;\r\n z-index: 91;\r\n}\r\n\r\n.timeLine-main-header-day-week {\r\n flex: 0 0 12px;\r\n padding: 4px;\r\n z-index: 90;\r\n}\r\n\r\n.timeLine-main-header-day-month {\r\n top: 0px;\r\n position: sticky;\r\n flex: 0 0 15px;\r\n padding: 5px;\r\n z-index: 90;\r\n}\r\n\r\n.timeLine-main-header-time {\r\n display: flex;\r\n flex-direction: row;\r\n align-items: stretch;\r\n height: 22px;\r\n justify-content: stretch;\r\n}\r\n\r\n.timeLine-main-header-time-item {\r\n border-left: solid 1px silver;\r\n border-bottom: solid 1px silver;\r\n border-top: solid 1px silver;\r\n text-align: center;\r\n padding-top: 5px;\r\n}\r\n/* Main Area Data*/\r\n\r\n.timeLine-main-data-viewPort {\r\n flex: 1 1 auto;\r\n position: relative;\r\n overflow: hidden;\r\n background-color: #fbf9f9;\r\n}\r\n.timeLine-main-data-container {\r\n position: relative;\r\n top: 0;\r\n left: 0;\r\n height: 100%;\r\n background-color: rgb(255, 255, 255);\r\n}\r\n\r\n.timeLine-main-data-row {\r\n position: absolute;\r\n width: 100%;\r\n height: 50px;\r\n}\r\n\r\n.timeLine-main-data-task {\r\n position: absolute;\r\n background-color: darkorchid;\r\n border-radius: 14px;\r\n color: white;\r\n text-align: center;\r\n}\r\n\r\n.timeLine-main-data-task-side {\r\n position: absolute;\r\n width: 10px;\r\n cursor: col-resize;\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n}\r\n.timeLine-main-data-task-side-linker {\r\n width: 8px;\r\n height: 8px;\r\n border-radius: 4px;\r\n cursor: default;\r\n z-index: 100;\r\n}\r\n.timeLine-main-data-task-side-linker:hover {\r\n background-color: black;\r\n border: solid 0.5px grey;\r\n}\r\n/* .timeLine-main-data-task:hover {\r\n background-color:chocolate;\r\n border:solid 2px darkorchid;\r\n cursor: move;\r\n} */\r\n\r\n.timeLine-main-data-verticalLine {\r\n flex: 1 1 auto;\r\n height: 100%;\r\n width: 24px;\r\n background-color: white;\r\n border-left-width: 0.5px;\r\n border-left-color: rgb(207, 207, 205);\r\n border-left-style: dashed;\r\n}\r\n\r\n/* Side Area */\r\n\r\n.timeLine-side-main {\r\n flex: 0 0 auto;\r\n width: 108px;\r\n min-width: 108px;\r\n display: flex;\r\n flex-direction: row;\r\n}\r\n\r\n.timeLine-side {\r\n flex: 1 0 100px;\r\n display: flex;\r\n flex-direction: column;\r\n border-right: solid 1px rgb(207, 207, 205);\r\n}\r\n\r\n.verticalResizer {\r\n flex: 0 0 8px;\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: center;\r\n cursor: col-resize;\r\n border-right: solid 1px rgb(207, 207, 205);\r\n height: 100%;\r\n}\r\n.squareGrip {\r\n flex: 0 0 auto;\r\n\r\n border-radius: 50%;\r\n height: 5px;\r\n width: 5px;\r\n margin: 3px 0;\r\n}\r\n\r\n.timeLine-side-title {\r\n flex: 0 0 60px;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n}\r\n\r\n.timeLine-side-task-viewPort {\r\n position: relative;\r\n flex: 1 1 auto;\r\n height: 100%;\r\n background-color: #fbf9f9;\r\n overflow-x: hidden;\r\n overflow-y: auto;\r\n}\r\n\r\n.timeLine-side-task-container {\r\n position: relative;\r\n overflow-x: hidden;\r\n overflow-y: hidden;\r\n}\r\n\r\n.timeLine-side-task-row {\r\n position: absolute;\r\n width: 100%;\r\n background-color: rgb(112, 112, 112);\r\n border-bottom-width: 0.5px;\r\n border-bottom-color: rgb(207, 207, 205);\r\n border-bottom-style: solid;\r\n height: 30px;\r\n color: grey;\r\n text-align: center;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n outline: none;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n cursor: pointer;\r\n}\r\n",""])}])}); \ No newline at end of file diff --git a/src/lib/components/viewport/DataTask.js b/src/lib/components/viewport/DataTask.js index 77b1b97..8212231 100644 --- a/src/lib/components/viewport/DataTask.js +++ b/src/lib/components/viewport/DataTask.js @@ -124,6 +124,10 @@ export default class DataTask extends Component{ console.log('end') this.dragEnd(); } + + getClass(){ + return this.props.className; + } calculateStyle(){ let configStyle=this.props.isSelected?Config.values.dataViewPort.task.selectedStyle:Config.values.dataViewPort.task.style; @@ -138,9 +142,10 @@ export default class DataTask extends Component{ } render(){ - let style=this.calculateStyle() + let style=this.calculateStyle(); + let className=this.getClass(); return ( -
this.doMouseDown(e,MODE_MOVE)} onTouchStart={(e)=>this.doTouchStart(e,MODE_MOVE)} onClick={(e)=>{this.props.onSelectItem(this.props.item)}} diff --git a/src/lib/components/viewport/DataViewPort.js b/src/lib/components/viewport/DataViewPort.js index 1c583ef..218e7f6 100644 --- a/src/lib/components/viewport/DataViewPort.js +++ b/src/lib/components/viewport/DataViewPort.js @@ -64,7 +64,7 @@ export class DataViewPort extends Component{ let new_position=DateHelper.dateToPixel(item.start,this.props.nowposition,this.props.dayWidth); let new_width=DateHelper.dateToPixel(item.end,this.props.nowposition,this.props.dayWidth)-new_position; result.push( -