Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 | 4x 4x 35x 35x 35x 35x 35x 35x 35x 35x 35x 35x 30x 450x 450x 450x 450x 5x 5x 2x 2x 2x 2x 2x 2x 2x 35x 35x 35x 35x 35x 35x 4x 4x 2760x 2760x 2760x 2760x 2760x 2760x 2760x 1980x 780x 780x 2760x 450x | import chalk from 'chalk'; const highlight = chalk.grey.bold; export const generateOptions = (inputData, isMultiChoice = false, mapping, renderMethod) => { let asString = ''; const valuesAsObject = {}; const valuesAsArray = []; const keysAsObject = {}; const keysAsArray = []; const isArray = Array.isArray(inputData); const output = {}; const renderer = renderMethod || _generateOptionString; if (isArray) { inputData.map((v, i) => { asString += renderer(i, v, mapping, v); valuesAsArray.push(v); E if (!mapping) keysAsArray.push(v); E if (!mapping) valuesAsObject[v] = v; }); } else { let i = 0; for (const k in inputData) { const v = inputData[k]; asString += renderer(i, v, mapping, k); keysAsArray.push(k); keysAsObject[k] = true; valuesAsObject[k] = v; valuesAsArray.push(v); i++; } } output.keysAsArray = keysAsArray.sort(_sort); output.valuesAsArray = valuesAsArray.sort(_sort); output.keysAsObject = keysAsObject; output.valuesAsObject = valuesAsObject; output.asString = asString; return output; }; const _sort = (a, b) => { let aStr = ''; let bStr = ''; E if (typeof a === 'string') { aStr = a.toLowerCase(); bStr = b.toLowerCase(); } else { if (a && a.name) aStr = a.name.toLowerCase(); if (b && b.name) bStr = b.name.toLowerCase(); } let com = 0; if (aStr > bStr) { com = 1; } elsEe if (aStr < bStr) { com = -1; } return com; }; const _generateOptionString = (i, obj, mapping, defaultVal) => ` [${highlight(i + 1)}]> ${highlight(mapping ? '' : defaultVal)} \n`; |