sort cryp names

This commit is contained in:
ntr 2018-10-17 13:22:48 +11:00
parent 523840a101
commit 7d70a864fd
6 changed files with 69 additions and 44 deletions

View File

@ -4,11 +4,17 @@ module.exports = {
'plugin:react/recommended', 'plugin:react/recommended',
], ],
env: { env: {
"browser": true, browser: true,
"node": true node: true
}, },
parserOptions: { parserOptions: {
"ecmaVersion": 6 ecmaVersion: 6
},
settings: {
react: {
pragma: "preact",
version: "15.0",
}
}, },
rules: { rules: {
// prevents stupid complaints a la // prevents stupid complaints a la

View File

@ -17,6 +17,7 @@
"jdenticon": "^2.1.0", "jdenticon": "^2.1.0",
"key": "^0.1.11", "key": "^0.1.11",
"keymaster": "^1.6.2", "keymaster": "^1.6.2",
"lodash": "^4.17.11",
"preact": "^8.3.1", "preact": "^8.3.1",
"preact-redux": "^2.0.3", "preact-redux": "^2.0.3",
"redux": "^4.0.0" "redux": "^4.0.0"

View File

@ -1,9 +1,11 @@
// eslint-disable-next-line
const preact = require('preact'); const preact = require('preact');
const { stringSort } = require('./../utils');
const nameSort = stringSort('name');
function CrypList({ cryps, activeItem, sendCombatPve, sendItemUse }) { function CrypList({ cryps, activeItem, sendCombatPve, sendItemUse }) {
if (!cryps) return <div>not ready</div>; if (!cryps) return <div>not ready</div>;
const crypPanels = cryps.map(cryp => ( const crypPanels = cryps.sort(nameSort).map(cryp => (
<div key={cryp.id} <div key={cryp.id}
className="tile is-vertical box" className="tile is-vertical box"

View File

@ -1,4 +1,3 @@
// eslint-disable-next-line
const preact = require('preact'); const preact = require('preact');
function renderSpawnButton({ account, sendCrypSpawn }) { function renderSpawnButton({ account, sendCrypSpawn }) {

View File

@ -1,9 +1,6 @@
const key = require('keymaster'); const key = require('keymaster');
const { connect } = require('preact-redux');
const actions = require('./actions'); const actions = require('./actions');
console.log(key);
function setupKeys(store) { function setupKeys(store) {
store.subscribe(function mapKeys() { store.subscribe(function mapKeys() {
const state = store.getState(); const state = store.getState();

20
client/src/utils.jsx Normal file
View File

@ -0,0 +1,20 @@
const get = require('lodash/get');
const stringSort = (k, desc) => {
if (desc) {
return (a, b) => {
if (!get(a, k)) return 1;
if (!get(b, k)) return -1;
return get(b, k).localeCompare(get(a, k));
};
}
return (a, b) => {
if (!get(a, k)) return 1;
if (!get(b, k)) return -1;
return get(a, k).localeCompare(get(b, k));
};
};
module.exports = {
stringSort,
}