poi-plugin-ship-info
Advanced tools
Comparing version 4.2.2 to 4.3.0
{ | ||
"name": "poi-plugin-ship-info", | ||
"version": "4.2.2", | ||
"version": "4.3.0", | ||
"description": "Show detailed information of all owned ship girls", | ||
@@ -5,0 +5,0 @@ "main": "index.es", |
@@ -49,3 +49,4 @@ 'use strict'; | ||
toTop: true, | ||
activeDropdown: '' | ||
activeDropdown: '', | ||
isExtend: true | ||
}; | ||
@@ -160,3 +161,3 @@ | ||
const uiReducer = (state = uiInitState, action) => { | ||
const { type, toTop, activeDropdown } = action; | ||
const { isExtend, type, toTop, activeDropdown } = action; | ||
if (type === `@@${PLUGIN_KEY}@scroll`) { | ||
@@ -170,2 +171,6 @@ return _extends({}, state, { | ||
}); | ||
} else if (type === `@@${PLUGIN_KEY}@extend`) { | ||
return _extends({}, state, { | ||
isExtend | ||
}); | ||
} | ||
@@ -270,3 +275,3 @@ return state; | ||
// observers | ||
const dataObserver = exports.dataObserver = (0, _reduxObservers.observer)((0, _selectors.extensionSelectorFactory)(PLUGIN_KEY), (dispatch, current = {}, previous) => { | ||
const dataObserver = exports.dataObserver = (0, _reduxObservers.observer)((0, _selectors.extensionSelectorFactory)(PLUGIN_KEY), (dispatch, current = {}) => { | ||
// avoid initial state overwrites file | ||
@@ -273,0 +278,0 @@ if (current.ready) { |
@@ -29,6 +29,2 @@ 'use strict'; | ||
var _fsExtra = require('fs-extra'); | ||
var _bluebird = require('bluebird'); | ||
var _selectors = require('views/utils/selectors'); | ||
@@ -87,3 +83,6 @@ | ||
}); | ||
}, _temp; | ||
}, this.updateCollapseComponentExtended = isExtend => this.props.dispatch({ | ||
type: '@@poi-plugin-ship-info@extend', | ||
isExtend | ||
}), _temp; | ||
} | ||
@@ -155,3 +154,8 @@ | ||
_reactBootstrap.Collapse, | ||
{ 'in': menuShow || toTop && autoShow }, | ||
{ | ||
'in': menuShow || toTop && autoShow, | ||
timeout: 750, | ||
onEntered: () => this.updateCollapseComponentExtended(true), | ||
onExit: () => this.updateCollapseComponentExtended(false) | ||
}, | ||
_react2.default.createElement( | ||
@@ -158,0 +162,0 @@ 'div', |
@@ -105,3 +105,4 @@ 'use strict'; | ||
}, (0, _selectors2.shipInfoConfigSelector)(state), { | ||
toTop: (0, _lodash.get)((0, _selectors.extensionSelectorFactory)('poi-plugin-ship-info')(state), 'ui.toTop', 0) | ||
toTop: (0, _lodash.get)((0, _selectors.extensionSelectorFactory)('poi-plugin-ship-info')(state), 'ui.toTop', 0), | ||
isExtend: (0, _lodash.get)((0, _selectors.extensionSelectorFactory)('poi-plugin-ship-info')(state), 'ui.isExtend', true) | ||
}))((_temp = _class = class ShipInfoTableArea extends _react.Component { | ||
@@ -120,5 +121,6 @@ | ||
render() { | ||
const { rows } = this.props; | ||
const { windowWidth, activeRow, activeColumn } = this.state; | ||
const { rows, isExtend } = this.props; | ||
const { windowWidth, windowHeight, activeRow, activeColumn } = this.state; | ||
// 526, 85, 115: magic numbers for layout dimensions | ||
const height = Math.max(windowHeight - (isExtend ? 526 : 85), 115); | ||
return _react2.default.createElement( | ||
@@ -131,30 +133,26 @@ 'div', | ||
{ style: { flex: 1 }, className: 'table-container' }, | ||
_react2.default.createElement( | ||
_reactVirtualized.AutoSizer, | ||
null, | ||
({ width, height }) => _react2.default.createElement(_reactVirtualized.MultiGrid, { | ||
rows: rows, | ||
ref: this.setRef, | ||
activeRow: activeRow, | ||
activeColumn: activeColumn, | ||
windowWidth: windowWidth, | ||
columnCount: 18, | ||
columnWidth: this.getColumnWidth, | ||
estimatedRowSize: 100, | ||
fixedColumnCount: windowWidth > this.tableWidth ? 0 : 0, | ||
fixedRowCount: 1, | ||
handleContentRendered: this.handleContentRendered, | ||
height: height, | ||
overscanColumnCount: 10, | ||
overscanRowCount: 5, | ||
cellRenderer: this.cellRenderer, | ||
rowCount: rows.length + 1, | ||
rowHeight: ROW_HEIGHT, | ||
scrollToAlignment: 'start', | ||
width: width, | ||
scrollToColumn: 0, | ||
scrollToRow: 0, | ||
onScroll: this.handleScroll | ||
}) | ||
) | ||
_react2.default.createElement(_reactVirtualized.MultiGrid, { | ||
rows: rows, | ||
ref: this.setRef, | ||
activeRow: activeRow, | ||
activeColumn: activeColumn, | ||
windowWidth: windowWidth, | ||
columnCount: 18, | ||
columnWidth: this.getColumnWidth, | ||
estimatedRowSize: 100, | ||
fixedColumnCount: windowWidth > this.tableWidth ? 0 : 0, | ||
fixedRowCount: 1, | ||
handleContentRendered: this.handleContentRendered, | ||
height: height, | ||
overscanColumnCount: 10, | ||
overscanRowCount: 5, | ||
cellRenderer: this.cellRenderer, | ||
rowCount: rows.length + 1, | ||
rowHeight: ROW_HEIGHT, | ||
scrollToAlignment: 'start', | ||
width: windowWidth - 16 // 16: left and right padding (8 + 8) | ||
, scrollToColumn: 0, | ||
scrollToRow: 0, | ||
onScroll: this.handleScroll | ||
}) | ||
) | ||
@@ -168,2 +166,3 @@ ); | ||
toTop: _propTypes2.default.bool, | ||
isExtend: _propTypes2.default.bool, | ||
dispatch: _propTypes2.default.func | ||
@@ -173,2 +172,3 @@ }, _initialiseProps = function () { | ||
windowWidth: window.innerWidth, | ||
windowHeight: window.innerHeight, | ||
activeColumn: -1, | ||
@@ -198,3 +198,4 @@ activeRow: -1 | ||
this.setState({ | ||
windowWidth: window.innerWidth | ||
windowWidth: window.innerWidth, | ||
windowHeight: window.innerHeight | ||
}, () => { | ||
@@ -304,3 +305,4 @@ if (this.grid) { | ||
this.getColumnWidth = ({ index }) => { | ||
const width = (0, _lodash.floor)((widths[index] || 40) * (this.state.windowWidth > this.tableWidth ? this.state.windowWidth / this.tableWidth : 1)); | ||
// 20: magic number, seems it need to be greater than 16 | ||
const width = (0, _lodash.floor)((widths[index] || 40) * (this.state.windowWidth - 20 > this.tableWidth ? (this.state.windowWidth - 20) / this.tableWidth : 1)); | ||
return width; | ||
@@ -307,0 +309,0 @@ }; |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
390148
4875
5
64