Skip to content

Commit cbc8d34

Browse files
committed
Merge ..\old-data-forge-fs
2 parents ecf249f + 683bd11 commit cbc8d34

7 files changed

+29
-20
lines changed

docs/index.html

+8-5
Original file line numberDiff line numberDiff line change
@@ -90,13 +90,13 @@ <h2>Functions</h2>
9090
<a name="ascsv" class="tsd-anchor"></a>
9191
<h3>asCSV</h3>
9292
<ul class="tsd-signatures tsd-kind-function tsd-has-type-parameter">
93-
<li class="tsd-signature tsd-kind-icon">asCSV&lt;IndexT, ValueT&gt;<span class="tsd-signature-symbol">(</span>this<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">IDataFrame</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">IndexT</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">ValueT</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="interfaces/icsvserializer.html" class="tsd-signature-type">ICsvSerializer</a></li>
93+
<li class="tsd-signature tsd-kind-icon">asCSV&lt;IndexT, ValueT&gt;<span class="tsd-signature-symbol">(</span>this<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">IDataFrame</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">IndexT</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">ValueT</span><span class="tsd-signature-symbol">&gt;</span>, options<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">ICSVOutputOptions</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="interfaces/icsvserializer.html" class="tsd-signature-type">ICsvSerializer</a></li>
9494
</ul>
9595
<ul class="tsd-descriptions">
9696
<li class="tsd-description">
9797
<aside class="tsd-sources">
9898
<ul>
99-
<li>Defined in <a href="https://github.com/data-forge/data-forge-fs/blob/f1cad7b/src/index.ts#L339">index.ts:339</a></li>
99+
<li>Defined in <a href="https://github.com/data-forge/data-forge-fs/blob/463368c/src/index.ts#L345">index.ts:345</a></li>
100100
</ul>
101101
</aside>
102102
<div class="tsd-comment tsd-typography">
@@ -133,6 +133,9 @@ <h4 class="tsd-parameters-title">Parameters</h4>
133133
<li>
134134
<h5>this: <span class="tsd-signature-type">IDataFrame</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">IndexT</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">ValueT</span><span class="tsd-signature-symbol">&gt;</span></h5>
135135
</li>
136+
<li>
137+
<h5><span class="tsd-flag ts-flagOptional">Optional</span> options: <span class="tsd-signature-type">ICSVOutputOptions</span></h5>
138+
</li>
136139
</ul>
137140
<h4 class="tsd-returns-title">Returns <a href="interfaces/icsvserializer.html" class="tsd-signature-type">ICsvSerializer</a></h4>
138141
<p>Returns a <a href="interfaces/icsvserializer.html">ICsvSerializer</a> that represents the dataframe for serialization in the CSV format. Call <code>writeFile</code> or <code>writeFileSync</code> to output the CSV data to a text file.</p>
@@ -149,7 +152,7 @@ <h3>asJSON</h3>
149152
<li class="tsd-description">
150153
<aside class="tsd-sources">
151154
<ul>
152-
<li>Defined in <a href="https://github.com/data-forge/data-forge-fs/blob/f1cad7b/src/index.ts#L361">index.ts:361</a></li>
155+
<li>Defined in <a href="https://github.com/data-forge/data-forge-fs/blob/463368c/src/index.ts#L367">index.ts:367</a></li>
153156
</ul>
154157
</aside>
155158
<div class="tsd-comment tsd-typography">
@@ -202,7 +205,7 @@ <h3>read<wbr>File</h3>
202205
<li class="tsd-description">
203206
<aside class="tsd-sources">
204207
<ul>
205-
<li>Defined in <a href="https://github.com/data-forge/data-forge-fs/blob/f1cad7b/src/index.ts#L695">index.ts:695</a></li>
208+
<li>Defined in <a href="https://github.com/data-forge/data-forge-fs/blob/463368c/src/index.ts#L701">index.ts:701</a></li>
206209
</ul>
207210
</aside>
208211
<div class="tsd-comment tsd-typography">
@@ -258,7 +261,7 @@ <h3>read<wbr>File<wbr>Sync</h3>
258261
<li class="tsd-description">
259262
<aside class="tsd-sources">
260263
<ul>
261-
<li>Defined in <a href="https://github.com/data-forge/data-forge-fs/blob/f1cad7b/src/index.ts#L733">index.ts:733</a></li>
264+
<li>Defined in <a href="https://github.com/data-forge/data-forge-fs/blob/463368c/src/index.ts#L739">index.ts:739</a></li>
262265
</ul>
263266
</aside>
264267
<div class="tsd-comment tsd-typography">

docs/interfaces/iasyncfilereader.html

+2-2
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ <h3>parseCSV</h3>
103103
<li class="tsd-description">
104104
<aside class="tsd-sources">
105105
<ul>
106-
<li>Defined in <a href="https://github.com/data-forge/data-forge-fs/blob/f1cad7b/src/index.ts#L413">index.ts:413</a></li>
106+
<li>Defined in <a href="https://github.com/data-forge/data-forge-fs/blob/463368c/src/index.ts#L419">index.ts:419</a></li>
107107
</ul>
108108
</aside>
109109
<div class="tsd-comment tsd-typography">
@@ -150,7 +150,7 @@ <h3>parseJSON</h3>
150150
<li class="tsd-description">
151151
<aside class="tsd-sources">
152152
<ul>
153-
<li>Defined in <a href="https://github.com/data-forge/data-forge-fs/blob/f1cad7b/src/index.ts#L427">index.ts:427</a></li>
153+
<li>Defined in <a href="https://github.com/data-forge/data-forge-fs/blob/463368c/src/index.ts#L433">index.ts:433</a></li>
154154
</ul>
155155
</aside>
156156
<div class="tsd-comment tsd-typography">

docs/interfaces/icsvserializer.html

+2-2
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ <h3>write<wbr>File</h3>
103103
<li class="tsd-description">
104104
<aside class="tsd-sources">
105105
<ul>
106-
<li>Defined in <a href="https://github.com/data-forge/data-forge-fs/blob/f1cad7b/src/index.ts#L25">index.ts:25</a></li>
106+
<li>Defined in <a href="https://github.com/data-forge/data-forge-fs/blob/463368c/src/index.ts#L26">index.ts:26</a></li>
107107
</ul>
108108
</aside>
109109
<div class="tsd-comment tsd-typography">
@@ -144,7 +144,7 @@ <h3>write<wbr>File<wbr>Sync</h3>
144144
<li class="tsd-description">
145145
<aside class="tsd-sources">
146146
<ul>
147-
<li>Defined in <a href="https://github.com/data-forge/data-forge-fs/blob/f1cad7b/src/index.ts#L39">index.ts:39</a></li>
147+
<li>Defined in <a href="https://github.com/data-forge/data-forge-fs/blob/463368c/src/index.ts#L40">index.ts:40</a></li>
148148
</ul>
149149
</aside>
150150
<div class="tsd-comment tsd-typography">

docs/interfaces/ijsonserializer.html

+2-2
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ <h3>write<wbr>File</h3>
103103
<li class="tsd-description">
104104
<aside class="tsd-sources">
105105
<ul>
106-
<li>Defined in <a href="https://github.com/data-forge/data-forge-fs/blob/f1cad7b/src/index.ts#L125">index.ts:125</a></li>
106+
<li>Defined in <a href="https://github.com/data-forge/data-forge-fs/blob/463368c/src/index.ts#L129">index.ts:129</a></li>
107107
</ul>
108108
</aside>
109109
<div class="tsd-comment tsd-typography">
@@ -144,7 +144,7 @@ <h3>write<wbr>File<wbr>Sync</h3>
144144
<li class="tsd-description">
145145
<aside class="tsd-sources">
146146
<ul>
147-
<li>Defined in <a href="https://github.com/data-forge/data-forge-fs/blob/f1cad7b/src/index.ts#L139">index.ts:139</a></li>
147+
<li>Defined in <a href="https://github.com/data-forge/data-forge-fs/blob/463368c/src/index.ts#L143">index.ts:143</a></li>
148148
</ul>
149149
</aside>
150150
<div class="tsd-comment tsd-typography">

docs/interfaces/isyncfilereader.html

+2-2
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ <h3>parseCSV</h3>
103103
<li class="tsd-description">
104104
<aside class="tsd-sources">
105105
<ul>
106-
<li>Defined in <a href="https://github.com/data-forge/data-forge-fs/blob/f1cad7b/src/index.ts#L519">index.ts:519</a></li>
106+
<li>Defined in <a href="https://github.com/data-forge/data-forge-fs/blob/463368c/src/index.ts#L525">index.ts:525</a></li>
107107
</ul>
108108
</aside>
109109
<div class="tsd-comment tsd-typography">
@@ -149,7 +149,7 @@ <h3>parseJSON</h3>
149149
<li class="tsd-description">
150150
<aside class="tsd-sources">
151151
<ul>
152-
<li>Defined in <a href="https://github.com/data-forge/data-forge-fs/blob/f1cad7b/src/index.ts#L532">index.ts:532</a></li>
152+
<li>Defined in <a href="https://github.com/data-forge/data-forge-fs/blob/463368c/src/index.ts#L538">index.ts:538</a></li>
153153
</ul>
154154
</aside>
155155
<div class="tsd-comment tsd-typography">

package.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "data-forge-fs",
3-
"version": "0.0.6",
3+
"version": "0.0.8",
44
"description": "This library contains the file system extensions to Data-Forge that allow it to directly read and write CSV and JSON files in Node.js.",
55
"main": "build/index.js",
66
"types": "build/index.d.ts",
@@ -35,7 +35,7 @@
3535
"chai": "^4.1.2"
3636
},
3737
"peerDependencies": {
38-
"data-forge": "^1.6.9"
38+
"data-forge": "^1.7.2"
3939
},
4040
"devDependencies": {
4141
"@types/chai": "^4.1.4",

src/index.ts

+11-5
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import { assert } from 'chai';
22
import { IDataFrame, DataFrame, fromJSON, fromCSV, ICSVOptions } from 'data-forge';
33
import * as dataForge from 'data-forge';
4+
import { ICSVOutputOptions } from 'data-forge/build/lib/dataframe';
45

56
/**
67
* Packages a dataframe ready for serialization to a CSV format text file.
@@ -47,8 +48,11 @@ class CsvSerializer<IndexT, ValueT> implements ICsvSerializer {
4748

4849
dataframe: IDataFrame<IndexT, ValueT>;
4950

50-
constructor (dataframe: IDataFrame<IndexT, ValueT>) {
51+
options?: ICSVOutputOptions;
52+
53+
constructor (dataframe: IDataFrame<IndexT, ValueT>, options?: ICSVOutputOptions) {
5154
this.dataframe = dataframe;
55+
this.options = options;
5256
}
5357

5458
/**
@@ -71,7 +75,7 @@ class CsvSerializer<IndexT, ValueT> implements ICsvSerializer {
7175

7276
return new Promise((resolve, reject) => {
7377
const fs = require('fs');
74-
fs.writeFile(filePath, this.dataframe.toCSV(), (err: any) => {
78+
fs.writeFile(filePath, this.dataframe.toCSV(this.options), (err: any) => {
7579
if (err) {
7680
reject(err);
7781
return;
@@ -98,7 +102,7 @@ class CsvSerializer<IndexT, ValueT> implements ICsvSerializer {
98102
assert.isString(filePath, "Expected 'filePath' parameter to 'DataFrame.asCSV().writeFileSync' to be a string that specifies the path of the file to write to the local file system.");
99103

100104
const fs = require('fs');
101-
fs.writeFileSync(filePath, this.dataframe.toCSV());
105+
fs.writeFileSync(filePath, this.dataframe.toCSV(this.options));
102106
}
103107
}
104108

@@ -322,6 +326,8 @@ declare module "data-forge/build/lib/dataframe" {
322326
* Treat the dataframe as CSV data for purposes of serialization.
323327
* This is the first step you need in serializing a dataframe to a CSV data file.
324328
*
329+
* @param [options] Optional configuration for CSV output.
330+
*
325331
* @return Returns a {@link ICsvSerializer} that represents the dataframe for serialization in the CSV format. Call `writeFile` or `writeFileSync` to output the CSV data to a text file.
326332
*
327333
* @example
@@ -336,8 +342,8 @@ declare module "data-forge/build/lib/dataframe" {
336342
* await df.asCSV().writeFile("my-data-file.csv");
337343
* </pre>
338344
*/
339-
export function asCSV<IndexT, ValueT>(this: IDataFrame<IndexT, ValueT>): ICsvSerializer {
340-
return new CsvSerializer<IndexT, ValueT>(this);
345+
export function asCSV<IndexT, ValueT>(this: IDataFrame<IndexT, ValueT>, options?: ICSVOutputOptions): ICsvSerializer {
346+
return new CsvSerializer<IndexT, ValueT>(this, options);
341347
}
342348

343349
/**

0 commit comments

Comments
 (0)