svg-table 0.0.1 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGES.md +5 -0
- package/README.md +447 -1
- package/{tableData.ts → TableData.ts} +2 -3
- package/TableFormatter.ts +587 -0
- package/{tableStyler.ts → TableStyler.ts} +75 -6
- package/dist/{tableData.d.ts → TableData.d.ts} +2 -2
- package/dist/{tableData.d.ts.map → TableData.d.ts.map} +1 -1
- package/dist/{tableData.js → TableData.js} +10 -10
- package/dist/{tableData.js.map → TableData.js.map} +1 -1
- package/dist/TableFormatter.d.ts +459 -0
- package/dist/TableFormatter.d.ts.map +1 -0
- package/dist/TableFormatter.js +579 -0
- package/dist/TableFormatter.js.map +1 -0
- package/dist/{tableStyler.d.ts → TableStyler.d.ts} +58 -3
- package/dist/TableStyler.d.ts.map +1 -0
- package/dist/{tableStyler.js → TableStyler.js} +90 -31
- package/dist/TableStyler.js.map +1 -0
- package/dist/index.d.ts +5 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -12
- package/dist/index.js.map +1 -1
- package/dist/tableData.test.js +15 -15
- package/dist/tableFormatter.test.js +54 -15
- package/dist/tableFormatter.test.js.map +1 -1
- package/dist/tableStyler.test.js +236 -20
- package/dist/tableStyler.test.js.map +1 -1
- package/dist/tableSvg.d.ts +2 -2
- package/dist/tableSvg.js +7 -7
- package/index.ts +13 -12
- package/package.json +2 -2
- package/svg-table-0.0.1.tgz +0 -0
- package/tableData.test.ts +1 -1
- package/tableFormatter.test.ts +48 -4
- package/tableStyler.test.ts +133 -10
- package/tableSvg.ts +3 -3
- package/dist/tableFormatter.d.ts +0 -179
- package/dist/tableFormatter.d.ts.map +0 -1
- package/dist/tableFormatter.js +0 -298
- package/dist/tableFormatter.js.map +0 -1
- package/dist/tableStyler.d.ts.map +0 -1
- package/dist/tableStyler.js.map +0 -1
- package/svg-table-0.0.1-snapshot.tgz +0 -0
- package/tableFormatter.ts +0 -306
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {TableData} from "./
|
|
1
|
+
import {TableData} from "./TableData";
|
|
2
2
|
import {CellCoordinate, ColumnCoordinate, DataFrame, RowCoordinate, type Tag, type TagValue} from "data-frame-ts";
|
|
3
3
|
import {failureResult, type Result, successResult} from "result-fn";
|
|
4
4
|
import {
|
|
@@ -7,6 +7,7 @@ import {
|
|
|
7
7
|
type CellStyle,
|
|
8
8
|
type ColumnHeaderStyle,
|
|
9
9
|
type ColumnStyle,
|
|
10
|
+
defaultBorder,
|
|
10
11
|
defaultCellStyle,
|
|
11
12
|
defaultColumnHeaderStyle,
|
|
12
13
|
defaultColumnStyle,
|
|
@@ -20,6 +21,7 @@ import {
|
|
|
20
21
|
defaultTablePadding,
|
|
21
22
|
type Dimension,
|
|
22
23
|
type FooterStyle,
|
|
24
|
+
Margin,
|
|
23
25
|
type Padding,
|
|
24
26
|
type RowHeaderStyle,
|
|
25
27
|
type RowStyle,
|
|
@@ -28,7 +30,7 @@ import {
|
|
|
28
30
|
type Stylings,
|
|
29
31
|
type TableFont,
|
|
30
32
|
type TableStylerProps,
|
|
31
|
-
TableStyleType
|
|
33
|
+
TableStyleType
|
|
32
34
|
} from "./stylings";
|
|
33
35
|
|
|
34
36
|
/**
|
|
@@ -168,14 +170,26 @@ export class StyledTable<V> {
|
|
|
168
170
|
return successResult(tags[0])
|
|
169
171
|
}
|
|
170
172
|
|
|
173
|
+
/**
|
|
174
|
+
* Checks if the table has a row header.
|
|
175
|
+
* @returns `true` if the table has a row header, `false` otherwise
|
|
176
|
+
*/
|
|
171
177
|
hasRowHeader(): boolean {
|
|
172
178
|
return TableData.hasRowHeader(this.dataFrame)
|
|
173
179
|
}
|
|
174
180
|
|
|
181
|
+
/**
|
|
182
|
+
* Checks if the table has a column header.
|
|
183
|
+
* @returns `true` if the table has a row header, `false` otherwise
|
|
184
|
+
*/
|
|
175
185
|
hasColumnHeader(): boolean {
|
|
176
186
|
return TableData.hasColumnHeader(this.dataFrame)
|
|
177
187
|
}
|
|
178
188
|
|
|
189
|
+
/**
|
|
190
|
+
* Checks if the table has a footer header.
|
|
191
|
+
* @returns `true` if the table has a row header, `false` otherwise
|
|
192
|
+
*/
|
|
179
193
|
hasFooter(): boolean {
|
|
180
194
|
return TableData.hasFooter(this.dataFrame)
|
|
181
195
|
}
|
|
@@ -206,6 +220,10 @@ export class StyledTable<V> {
|
|
|
206
220
|
.map(tag => tag.value as Styling<ColumnHeaderStyle>)
|
|
207
221
|
}
|
|
208
222
|
|
|
223
|
+
/**
|
|
224
|
+
* Gets the style for the footer.
|
|
225
|
+
* @returns A Result containing the footer style if found, or an error message
|
|
226
|
+
*/
|
|
209
227
|
footerStyle(): Result<Styling<FooterStyle>, string> {
|
|
210
228
|
if (!TableData.hasFooter(this.dataFrame)) {
|
|
211
229
|
return failureResult("(StyledTable::footerStyle) The table data does not have a footer")
|
|
@@ -493,6 +511,14 @@ export class TableStyler<V> {
|
|
|
493
511
|
)
|
|
494
512
|
}
|
|
495
513
|
|
|
514
|
+
/**
|
|
515
|
+
* Applies the specified font settings for the table and returns a new {@link TableStyler}
|
|
516
|
+
* instance with the updated font configuration.
|
|
517
|
+
*
|
|
518
|
+
* @param font - The font configuration to be applied. This object can include partial
|
|
519
|
+
* properties of the TableFont.
|
|
520
|
+
* @return A new {@link TableStyler} instance with the updated font settings.
|
|
521
|
+
*/
|
|
496
522
|
withTableFont(font: Partial<TableFont>): TableStyler<V> {
|
|
497
523
|
const builder = this.copy()
|
|
498
524
|
builder.font = {...defaultTableFont, ...font}
|
|
@@ -670,8 +696,25 @@ export class TableStyler<V> {
|
|
|
670
696
|
.getOrElse(this)
|
|
671
697
|
}
|
|
672
698
|
|
|
673
|
-
|
|
674
|
-
|
|
699
|
+
/**
|
|
700
|
+
* Applies specific styles to rows in a table based on the provided row indexes.
|
|
701
|
+
*
|
|
702
|
+
* @param rowIndexes - An array of row indexes to which the styles will be applied. If the
|
|
703
|
+
* array is empty, all rows will be styled.
|
|
704
|
+
* @param rowStyle - An object representing the styles to apply to the specified rows.
|
|
705
|
+
* @param [priority=0] - An optional priority value for the styles. Higher priority values
|
|
706
|
+
* override lower ones.
|
|
707
|
+
* @return A new TableStyler instance with the specified row styles applied.
|
|
708
|
+
* @see withRowStyle
|
|
709
|
+
*/
|
|
710
|
+
withRowStyles(
|
|
711
|
+
rowIndexes: Array<number>,
|
|
712
|
+
rowStyle: Partial<RowStyle>,
|
|
713
|
+
priority: number = 0
|
|
714
|
+
): TableStyler<V> {
|
|
715
|
+
const indexes = rowIndexes.length > 0 ?
|
|
716
|
+
rowIndexes :
|
|
717
|
+
new Array(this.dataFrame.rowCount()).fill(0).map((_, i) => i)
|
|
675
718
|
return TableStyler.withRowStyles(this, indexes, rowStyle, priority)
|
|
676
719
|
}
|
|
677
720
|
|
|
@@ -712,8 +755,24 @@ export class TableStyler<V> {
|
|
|
712
755
|
.getOrElse(this)
|
|
713
756
|
}
|
|
714
757
|
|
|
715
|
-
|
|
716
|
-
|
|
758
|
+
/**
|
|
759
|
+
* Applies specified styles to the columns of a table.
|
|
760
|
+
*
|
|
761
|
+
* @param columnIndexes - Array of column indexes to which the style should be applied. If the array
|
|
762
|
+
* is empty, styles will be applied to all columns.
|
|
763
|
+
* @param columnStyle - Partial column style configuration object defining the styles to be applied.
|
|
764
|
+
* @param [priority=0] - Optional priority value to determine the precedence of this style over others.
|
|
765
|
+
* @return Returns an instance of TableStyler with the updated column styles applied.
|
|
766
|
+
* @see withColumnStyle
|
|
767
|
+
*/
|
|
768
|
+
withColumnStyles(
|
|
769
|
+
columnIndexes: Array<number>,
|
|
770
|
+
columnStyle: Partial<ColumnStyle>,
|
|
771
|
+
priority: number = 0
|
|
772
|
+
): TableStyler<V> {
|
|
773
|
+
const indexes = columnIndexes.length > 0 ?
|
|
774
|
+
columnIndexes :
|
|
775
|
+
new Array(this.dataFrame.columnCount()).fill(0).map((_, i) => i)
|
|
717
776
|
return TableStyler.withColumnStyles(this, indexes, columnStyle, priority)
|
|
718
777
|
}
|
|
719
778
|
|
|
@@ -762,6 +821,16 @@ export class TableStyler<V> {
|
|
|
762
821
|
.getOrElse(this)
|
|
763
822
|
}
|
|
764
823
|
|
|
824
|
+
/**
|
|
825
|
+
* Sets the style for a specific cell based on a predicate.
|
|
826
|
+
* @param predicate A function that accepts the value, row-index, and column-index of the cell, and
|
|
827
|
+
* returns `true` if the cell should be styled, or `false` otherwise.
|
|
828
|
+
* @param cellStyle The style to apply to the cell if the predicate is `true`.
|
|
829
|
+
* @param priority The style's priority. Higher priority values override lower ones.
|
|
830
|
+
* @returns A new TableStyler instance with the cell style applied.
|
|
831
|
+
* @see withCellStyle
|
|
832
|
+
* @see withCellStyles
|
|
833
|
+
*/
|
|
765
834
|
withCellStyleWhen(
|
|
766
835
|
predicate: (value: V, rowIndex: number, columnIndex: number) => boolean,
|
|
767
836
|
cellStyle: Partial<CellStyle>,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { DataFrame } from "data-frame-ts";
|
|
2
2
|
import { type Result } from "result-fn";
|
|
3
|
-
import { type Formatting } from "./
|
|
3
|
+
import { type Formatting } from "./TableFormatter";
|
|
4
4
|
/**
|
|
5
5
|
* The types of tags the {@link TableData} supports
|
|
6
6
|
*/
|
|
@@ -165,4 +165,4 @@ export declare class TableData<V> {
|
|
|
165
165
|
*/
|
|
166
166
|
unwrapDataFrame(): DataFrame<V>;
|
|
167
167
|
}
|
|
168
|
-
//# sourceMappingURL=
|
|
168
|
+
//# sourceMappingURL=TableData.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"TableData.d.ts","sourceRoot":"","sources":["../TableData.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.TableData = exports.TableTagType = void 0;
|
|
4
|
+
var data_frame_ts_1 = require("data-frame-ts");
|
|
4
5
|
var result_fn_1 = require("result-fn");
|
|
5
|
-
var
|
|
6
|
-
var tableFormatter_1 = require("./tableFormatter");
|
|
6
|
+
var TableFormatter_1 = require("./TableFormatter");
|
|
7
7
|
/**
|
|
8
8
|
* The types of tags the {@link TableData} supports
|
|
9
9
|
*/
|
|
@@ -39,7 +39,7 @@ var TableData = /** @class */ (function () {
|
|
|
39
39
|
* @return A {@link TableData} which represents the next step in the guided builder
|
|
40
40
|
*/
|
|
41
41
|
TableData.prototype.withColumnHeader = function (header, formatting, rowHeaderProvider) {
|
|
42
|
-
if (formatting === void 0) { formatting = (0,
|
|
42
|
+
if (formatting === void 0) { formatting = (0, TableFormatter_1.defaultFormatting)(); }
|
|
43
43
|
if (rowHeaderProvider === void 0) { rowHeaderProvider = function () { return undefined; }; }
|
|
44
44
|
// just return a copy of the data table if the header is empty
|
|
45
45
|
if (header.length === 0) {
|
|
@@ -60,11 +60,11 @@ var TableData = /** @class */ (function () {
|
|
|
60
60
|
return this.dataFrame
|
|
61
61
|
.insertRowBefore(0, updatedHeader)
|
|
62
62
|
.flatMap(function (df) { return df.tagRow(0, "column-header", TableTagType.COLUMN_HEADER); })
|
|
63
|
-
.flatMap(function (df) { return df.tagRow(0,
|
|
63
|
+
.flatMap(function (df) { return df.tagRow(0, TableFormatter_1.TableFormatterType.COLUMN, formatting); })
|
|
64
64
|
.map(function (df) { return new TableData(df); });
|
|
65
65
|
};
|
|
66
66
|
TableData.prototype.withRowHeader = function (header, formatting, columnHeaderProvider, footerProvider) {
|
|
67
|
-
if (formatting === void 0) { formatting = (0,
|
|
67
|
+
if (formatting === void 0) { formatting = (0, TableFormatter_1.defaultFormatting)(); }
|
|
68
68
|
if (columnHeaderProvider === void 0) { columnHeaderProvider = function () { return undefined; }; }
|
|
69
69
|
if (footerProvider === void 0) { footerProvider = function () { return undefined; }; }
|
|
70
70
|
// just return a copy of the data table if the header is empty
|
|
@@ -91,11 +91,11 @@ var TableData = /** @class */ (function () {
|
|
|
91
91
|
return this.dataFrame
|
|
92
92
|
.insertColumnBefore(0, updatedHeader)
|
|
93
93
|
.flatMap(function (df) { return df.tagColumn(0, "row-header", TableTagType.ROW_HEADER); })
|
|
94
|
-
.flatMap(function (df) { return df.tagColumn(0,
|
|
94
|
+
.flatMap(function (df) { return df.tagColumn(0, TableFormatter_1.TableFormatterType.COLUMN, formatting); })
|
|
95
95
|
.map(function (df) { return TableData.fromDataFrame(df); });
|
|
96
96
|
};
|
|
97
97
|
TableData.prototype.withFooter = function (footer, formatting, rowHeaderProvider) {
|
|
98
|
-
if (formatting === void 0) { formatting = (0,
|
|
98
|
+
if (formatting === void 0) { formatting = (0, TableFormatter_1.defaultFormatting)(); }
|
|
99
99
|
if (rowHeaderProvider === void 0) { rowHeaderProvider = function () { return undefined; }; }
|
|
100
100
|
// just return a copy of the data table if the footer is empty
|
|
101
101
|
if (footer.length === 0) {
|
|
@@ -116,7 +116,7 @@ var TableData = /** @class */ (function () {
|
|
|
116
116
|
return this.dataFrame
|
|
117
117
|
.pushRow(updatedFooter)
|
|
118
118
|
.flatMap(function (df) { return df.tagRow(df.rowCount() - 1, "footer", TableTagType.FOOTER); })
|
|
119
|
-
.flatMap(function (df) { return df.tagRow(df.rowCount() - 1,
|
|
119
|
+
.flatMap(function (df) { return df.tagRow(df.rowCount() - 1, TableFormatter_1.TableFormatterType.ROW, formatting); })
|
|
120
120
|
.map(function (df) { return TableData.fromDataFrame(df); });
|
|
121
121
|
};
|
|
122
122
|
TableData.hasColumnHeader = function (dataFrame) {
|
|
@@ -314,7 +314,7 @@ var TableData = /** @class */ (function () {
|
|
|
314
314
|
var endRow = this.hasFooter() ? this.dataFrame.rowCount() - 2 : this.dataFrame.rowCount() - 1;
|
|
315
315
|
var startColumn = this.hasRowHeader() ? 1 : 0;
|
|
316
316
|
return this.dataFrame
|
|
317
|
-
.subFrame((0,
|
|
317
|
+
.subFrame((0, data_frame_ts_1.indexFrom)(startRow, startColumn), (0, data_frame_ts_1.indexFrom)(endRow, this.dataFrame.columnCount() - 1))
|
|
318
318
|
.mapFailure(function (err) { return "(TableData::data) Failed to retrieve data.\n" + err; });
|
|
319
319
|
};
|
|
320
320
|
/**
|
|
@@ -326,4 +326,4 @@ var TableData = /** @class */ (function () {
|
|
|
326
326
|
return TableData;
|
|
327
327
|
}());
|
|
328
328
|
exports.TableData = TableData;
|
|
329
|
-
//# sourceMappingURL=
|
|
329
|
+
//# sourceMappingURL=TableData.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"TableData.js","sourceRoot":"","sources":["../TableData.ts"],"names":[],"mappings":"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"}
|