@ukon1990/js-utilities
Advanced tools
@@ -50,2 +50,11 @@ import { Match } from '../models/match.model'; | ||
| /** | ||
| * Converts an array of objects to a CSV string. | ||
| * @param list an array of objects | ||
| * @param delimiter the separation character to use. If none are provided, comma will be used. | ||
| * @param useKeys The keys from the object to use. If not provided, all the keys will be used. | ||
| * Providing a list of keys will improve performance. | ||
| */ | ||
| static objectsToCSV(list: any[], delimiter?: string, useKeys?: string[]): string; | ||
| private static handleObjectToCSVRow; | ||
| /** | ||
| * | ||
@@ -52,0 +61,0 @@ * @param input The input string |
@@ -135,2 +135,30 @@ import { Match } from '../models/match.model'; | ||
| /** | ||
| * Converts an array of objects to a CSV string. | ||
| * @param list an array of objects | ||
| * @param delimiter the separation character to use. If none are provided, comma will be used. | ||
| * @param useKeys The keys from the object to use. If not provided, all the keys will be used. | ||
| * Providing a list of keys will improve performance. | ||
| */ | ||
| static objectsToCSV(list, delimiter = ',', useKeys) { | ||
| let body = ''; | ||
| const keyMap = {}; | ||
| if (useKeys) { | ||
| useKeys.forEach(key => keyMap[key] = true); | ||
| } | ||
| list.forEach((obj) => body = this.handleObjectToCSVRow(useKeys, obj, keyMap, delimiter, body)); | ||
| useKeys = Object.keys(keyMap).map(key => this.camelCaseToSentence(key)); | ||
| return `${useKeys.join(delimiter)}\n\r${body}`; | ||
| } | ||
| static handleObjectToCSVRow(useKeys, obj, keyMap, delimiter, body) { | ||
| if (!useKeys) { | ||
| Object.keys(obj).forEach(key => keyMap[key] = true); | ||
| } | ||
| let row = ''; | ||
| row += Object.keys(keyMap) | ||
| .map((key) => obj[key]) | ||
| .join(delimiter); | ||
| body += row + '\n\r'; | ||
| return body; | ||
| } | ||
| /** | ||
| * | ||
@@ -137,0 +165,0 @@ * @param input The input string |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"text.util.js","sourceRoot":"","sources":["../../src/utils/text.util.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"text.util.js","sourceRoot":"","sources":["../../src/utils/text.util.ts"],"names":[],"mappings":"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"} |
@@ -93,2 +93,18 @@ import { TextUtil } from './text.util'; | ||
| }); | ||
| describe('objectsToCSV', () => { | ||
| it('can convert a list of objects with identical keys', () => { | ||
| const list = [ | ||
| { name: 'John', age: 90 }, | ||
| { name: 'Aga', age: 12 } | ||
| ]; | ||
| expect(TextUtil.objectsToCSV(list, ';')) | ||
| .toEqual('Name;Age\n\r' + | ||
| 'John;90\n\r' + | ||
| 'Aga;12\n\r'); | ||
| expect(TextUtil.objectsToCSV(list, ';', ['name'])) | ||
| .toEqual('Name\n\r' + | ||
| 'John\n\r' + | ||
| 'Aga\n\r'); | ||
| }); | ||
| }); | ||
| describe('csvToObjects', () => { | ||
@@ -95,0 +111,0 @@ it('can generate object from csv', () => { |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"text.util.spec.js","sourceRoot":"","sources":["../../src/utils/text.util.spec.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"text.util.spec.js","sourceRoot":"","sources":["../../src/utils/text.util.spec.ts"],"names":[],"mappings":"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"} |
+3
-2
| { | ||
| "name": "@ukon1990/js-utilities", | ||
| "version": "1.4.0", | ||
| "version": "1.5.0", | ||
| "description": "A light weight package for object and array manipulation. As well as some utilities for matching text.", | ||
@@ -22,3 +22,4 @@ "main": "dist/index.js", | ||
| "Equality", | ||
| "isEmpty" | ||
| "isEmpty", | ||
| "CSV" | ||
| ], | ||
@@ -25,0 +26,0 @@ "author": "Jonas Munthe Flønes", |
+2
-0
@@ -39,2 +39,4 @@ # Javascript utilities | ||
| Generates an array of objects from a CSV string. | ||
| * `objectsToCSV(list, delimiter?: string = ',', useKeys?: string[])` - Converts a list of objects to a CSV string. If provided with the | ||
| keys that is supposed to be used from the objects, it will increase performance. | ||
@@ -41,0 +43,0 @@ ## EmptyUtil |
@@ -119,2 +119,19 @@ import {TextUtil} from './text.util'; | ||
| describe('objectsToCSV', () => { | ||
| it('can convert a list of objects with identical keys', () => { | ||
| const list = [ | ||
| {name: 'John', age: 90}, | ||
| {name: 'Aga', age: 12} | ||
| ]; | ||
| expect(TextUtil.objectsToCSV(list, ';')) | ||
| .toEqual('Name;Age\n\r' + | ||
| 'John;90\n\r' + | ||
| 'Aga;12\n\r'); | ||
| expect(TextUtil.objectsToCSV(list, ';', ['name'])) | ||
| .toEqual('Name\n\r' + | ||
| 'John\n\r' + | ||
| 'Aga\n\r'); | ||
| }); | ||
| }); | ||
| describe('csvToObjects', () => { | ||
@@ -121,0 +138,0 @@ it('can generate object from csv', () => { |
@@ -160,2 +160,45 @@ import {Match} from '../models/match.model'; | ||
| /** | ||
| * Converts an array of objects to a CSV string. | ||
| * @param list an array of objects | ||
| * @param delimiter the separation character to use. If none are provided, comma will be used. | ||
| * @param useKeys The keys from the object to use. If not provided, all the keys will be used. | ||
| * Providing a list of keys will improve performance. | ||
| */ | ||
| public static objectsToCSV(list: any[], delimiter: string = ',', useKeys?: string[]): string { | ||
| let body = ''; | ||
| const keyMap = {}; | ||
| if (useKeys) { | ||
| useKeys.forEach(key => | ||
| keyMap[key] = true); | ||
| } | ||
| list.forEach((obj) => | ||
| body = this.handleObjectToCSVRow(useKeys, obj, keyMap, delimiter, body)); | ||
| useKeys = Object.keys(keyMap).map(key => | ||
| this.camelCaseToSentence(key)); | ||
| return `${ | ||
| useKeys.join(delimiter) | ||
| }\n\r${ | ||
| body}`; | ||
| } | ||
| private static handleObjectToCSVRow(useKeys: string[], obj, keyMap, delimiter: string, body: string) { | ||
| if (!useKeys) { | ||
| Object.keys(obj).forEach(key => | ||
| keyMap[key] = true); | ||
| } | ||
| let row = ''; | ||
| row += Object.keys(keyMap) | ||
| .map((key: string) => | ||
| obj[key]) | ||
| .join(delimiter); | ||
| body += row + '\n\r'; | ||
| return body; | ||
| } | ||
| /** | ||
| * | ||
@@ -162,0 +205,0 @@ * @param input The input string |
203386
3.04%3048
3.57%54
3.85%