@rowsncolumns/toolkit 24.4.4 → 24.5.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/dist/cjs/autofilter-condition.d.ts +45 -1
- package/dist/cjs/autofilter-condition.d.ts.map +1 -1
- package/dist/cjs/autofilter-condition.js +135 -12
- package/dist/cjs/excel-parser/helpers.d.ts +15 -1
- package/dist/cjs/excel-parser/helpers.d.ts.map +1 -1
- package/dist/cjs/excel-parser/helpers.js +119 -5
- package/dist/cjs/excel-parser/interface.d.ts +3 -1
- package/dist/cjs/excel-parser/interface.d.ts.map +1 -1
- package/dist/cjs/excel-parser/plugins/ods/index.d.ts.map +1 -1
- package/dist/cjs/excel-parser/plugins/ods/index.js +186 -97
- package/dist/cjs/excel-parser/plugins/ods/styles.d.ts +15 -0
- package/dist/cjs/excel-parser/plugins/ods/styles.d.ts.map +1 -1
- package/dist/cjs/excel-parser/plugins/ods/styles.js +80 -6
- package/dist/cjs/excel-parser/plugins/xlsb/index.d.ts.map +1 -1
- package/dist/cjs/excel-parser/plugins/xlsb/index.js +107 -103
- package/dist/cjs/excel-parser/plugins/xlsx/charts.d.ts +77 -1
- package/dist/cjs/excel-parser/plugins/xlsx/charts.d.ts.map +1 -1
- package/dist/cjs/excel-parser/plugins/xlsx/charts.js +920 -122
- package/dist/cjs/excel-parser/plugins/xlsx/drawing.d.ts +7 -1
- package/dist/cjs/excel-parser/plugins/xlsx/drawing.d.ts.map +1 -1
- package/dist/cjs/excel-parser/plugins/xlsx/drawing.js +24 -9
- package/dist/cjs/excel-parser/plugins/xlsx/form-controls.d.ts +24 -3
- package/dist/cjs/excel-parser/plugins/xlsx/form-controls.d.ts.map +1 -1
- package/dist/cjs/excel-parser/plugins/xlsx/form-controls.js +25 -3
- package/dist/cjs/excel-parser/plugins/xlsx/index.d.ts +24 -1
- package/dist/cjs/excel-parser/plugins/xlsx/index.d.ts.map +1 -1
- package/dist/cjs/excel-parser/plugins/xlsx/index.js +561 -394
- package/dist/cjs/excel-parser/plugins/xlsx/pivots.d.ts +8 -2
- package/dist/cjs/excel-parser/plugins/xlsx/pivots.d.ts.map +1 -1
- package/dist/cjs/excel-parser/plugins/xlsx/pivots.js +312 -21
- package/dist/cjs/excel-parser/plugins/xlsx/relationships.d.ts +6 -0
- package/dist/cjs/excel-parser/plugins/xlsx/relationships.d.ts.map +1 -1
- package/dist/cjs/excel-parser/plugins/xlsx/relationships.js +9 -0
- package/dist/cjs/excel-parser/plugins/xlsx/theme.d.ts +1 -1
- package/dist/cjs/excel-parser/types.d.ts +9 -1
- package/dist/cjs/excel-parser/types.d.ts.map +1 -1
- package/dist/cjs/excel-parser/workbook.d.ts +1 -0
- package/dist/cjs/excel-parser/workbook.d.ts.map +1 -1
- package/dist/cjs/excel-parser/workbook.js +5 -0
- package/dist/cjs/excel-parser/worker.js +2 -0
- package/dist/cjs/exporter/ods/ods-export.d.ts.map +1 -1
- package/dist/cjs/exporter/ods/ods-export.js +255 -80
- package/dist/cjs/exporter/xlsx/chart-builder.d.ts +7 -1
- package/dist/cjs/exporter/xlsx/chart-builder.d.ts.map +1 -1
- package/dist/cjs/exporter/xlsx/chart-builder.js +902 -119
- package/dist/cjs/exporter/xlsx/form-controls-builder.d.ts +16 -3
- package/dist/cjs/exporter/xlsx/form-controls-builder.d.ts.map +1 -1
- package/dist/cjs/exporter/xlsx/form-controls-builder.js +30 -8
- package/dist/cjs/exporter/xlsx/pivot-builder.d.ts.map +1 -1
- package/dist/cjs/exporter/xlsx/pivot-builder.js +206 -162
- package/dist/cjs/exporter/xlsx/style-builder.d.ts +8 -2
- package/dist/cjs/exporter/xlsx/style-builder.d.ts.map +1 -1
- package/dist/cjs/exporter/xlsx/style-builder.js +25 -0
- package/dist/cjs/exporter/xlsx/xlsx-export.d.ts +2 -2
- package/dist/cjs/exporter/xlsx/xlsx-export.d.ts.map +1 -1
- package/dist/cjs/exporter/xlsx/xlsx-export.js +728 -452
- package/dist/esm/autofilter-condition.d.ts +45 -1
- package/dist/esm/autofilter-condition.d.ts.map +1 -1
- package/dist/esm/autofilter-condition.js +131 -11
- package/dist/esm/excel-parser/helpers.d.ts +15 -1
- package/dist/esm/excel-parser/helpers.d.ts.map +1 -1
- package/dist/esm/excel-parser/helpers.js +94 -4
- package/dist/esm/excel-parser/interface.d.ts +3 -1
- package/dist/esm/excel-parser/interface.d.ts.map +1 -1
- package/dist/esm/excel-parser/plugins/ods/index.d.ts.map +1 -1
- package/dist/esm/excel-parser/plugins/ods/index.js +105 -22
- package/dist/esm/excel-parser/plugins/ods/styles.d.ts +15 -0
- package/dist/esm/excel-parser/plugins/ods/styles.d.ts.map +1 -1
- package/dist/esm/excel-parser/plugins/ods/styles.js +79 -5
- package/dist/esm/excel-parser/plugins/xlsb/index.d.ts.map +1 -1
- package/dist/esm/excel-parser/plugins/xlsb/index.js +15 -7
- package/dist/esm/excel-parser/plugins/xlsx/charts.d.ts +77 -1
- package/dist/esm/excel-parser/plugins/xlsx/charts.d.ts.map +1 -1
- package/dist/esm/excel-parser/plugins/xlsx/charts.js +708 -16
- package/dist/esm/excel-parser/plugins/xlsx/drawing.d.ts +7 -1
- package/dist/esm/excel-parser/plugins/xlsx/drawing.d.ts.map +1 -1
- package/dist/esm/excel-parser/plugins/xlsx/drawing.js +23 -0
- package/dist/esm/excel-parser/plugins/xlsx/form-controls.d.ts +24 -3
- package/dist/esm/excel-parser/plugins/xlsx/form-controls.d.ts.map +1 -1
- package/dist/esm/excel-parser/plugins/xlsx/form-controls.js +21 -3
- package/dist/esm/excel-parser/plugins/xlsx/index.d.ts +24 -1
- package/dist/esm/excel-parser/plugins/xlsx/index.d.ts.map +1 -1
- package/dist/esm/excel-parser/plugins/xlsx/index.js +192 -54
- package/dist/esm/excel-parser/plugins/xlsx/pivots.d.ts +8 -2
- package/dist/esm/excel-parser/plugins/xlsx/pivots.d.ts.map +1 -1
- package/dist/esm/excel-parser/plugins/xlsx/pivots.js +220 -4
- package/dist/esm/excel-parser/plugins/xlsx/relationships.d.ts +6 -0
- package/dist/esm/excel-parser/plugins/xlsx/relationships.d.ts.map +1 -1
- package/dist/esm/excel-parser/plugins/xlsx/relationships.js +9 -0
- package/dist/esm/excel-parser/plugins/xlsx/theme.d.ts +1 -1
- package/dist/esm/excel-parser/types.d.ts +9 -1
- package/dist/esm/excel-parser/types.d.ts.map +1 -1
- package/dist/esm/excel-parser/workbook.d.ts +1 -0
- package/dist/esm/excel-parser/workbook.d.ts.map +1 -1
- package/dist/esm/excel-parser/workbook.js +4 -0
- package/dist/esm/excel-parser/worker.js +2 -0
- package/dist/esm/exporter/ods/ods-export.d.ts.map +1 -1
- package/dist/esm/exporter/ods/ods-export.js +238 -72
- package/dist/esm/exporter/xlsx/chart-builder.d.ts +7 -1
- package/dist/esm/exporter/xlsx/chart-builder.d.ts.map +1 -1
- package/dist/esm/exporter/xlsx/chart-builder.js +674 -58
- package/dist/esm/exporter/xlsx/form-controls-builder.d.ts +16 -3
- package/dist/esm/exporter/xlsx/form-controls-builder.d.ts.map +1 -1
- package/dist/esm/exporter/xlsx/form-controls-builder.js +29 -8
- package/dist/esm/exporter/xlsx/pivot-builder.d.ts.map +1 -1
- package/dist/esm/exporter/xlsx/pivot-builder.js +187 -139
- package/dist/esm/exporter/xlsx/style-builder.d.ts +8 -2
- package/dist/esm/exporter/xlsx/style-builder.d.ts.map +1 -1
- package/dist/esm/exporter/xlsx/style-builder.js +28 -0
- package/dist/esm/exporter/xlsx/xlsx-export.d.ts +2 -2
- package/dist/esm/exporter/xlsx/xlsx-export.d.ts.map +1 -1
- package/dist/esm/exporter/xlsx/xlsx-export.js +451 -197
- package/package.json +11 -4
|
@@ -21,10 +21,44 @@ export type AutoFilterCondition = {
|
|
|
21
21
|
type: ConditionType;
|
|
22
22
|
values: ConditionValue[];
|
|
23
23
|
};
|
|
24
|
+
/**
|
|
25
|
+
* The condition part of a column's `filterCriteria` as `<filterColumn>`
|
|
26
|
+
* carries it: one clause, or two clauses joined by Excel's Custom AutoFilter
|
|
27
|
+
* And / Or (`<customFilters and="1">` with two `<customFilter>` children).
|
|
28
|
+
*/
|
|
29
|
+
export type AutoFilterCriteriaConditions = {
|
|
30
|
+
condition: AutoFilterCondition;
|
|
31
|
+
condition2?: AutoFilterCondition;
|
|
32
|
+
conditionJoin?: "AND" | "OR";
|
|
33
|
+
};
|
|
24
34
|
export type RawCustomFilter = {
|
|
25
35
|
operator?: string;
|
|
26
36
|
val?: string;
|
|
27
37
|
};
|
|
38
|
+
/** `<top10 top percent val>` attributes as parsed from the sheet XML. */
|
|
39
|
+
export type RawTop10Filter = {
|
|
40
|
+
top?: string;
|
|
41
|
+
percent?: string;
|
|
42
|
+
val?: string;
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* `<filterColumn>` condition XML for a column's criteria: a two-clause Custom
|
|
46
|
+
* AutoFilter becomes `<customFilters [and="1"]>` with both clauses when each
|
|
47
|
+
* has a single-element form; otherwise the first clause alone is written the
|
|
48
|
+
* way `buildAutoFilterConditionXml` does (the second is dropped — say so in
|
|
49
|
+
* the PR when this asymmetry matters).
|
|
50
|
+
*/
|
|
51
|
+
export declare const buildAutoFilterCriteriaXml: (criteria: {
|
|
52
|
+
condition?: {
|
|
53
|
+
type?: ConditionType | null;
|
|
54
|
+
values?: ConditionValue[] | null;
|
|
55
|
+
} | null;
|
|
56
|
+
condition2?: {
|
|
57
|
+
type?: ConditionType | null;
|
|
58
|
+
values?: ConditionValue[] | null;
|
|
59
|
+
} | null;
|
|
60
|
+
conditionJoin?: "AND" | "OR" | null;
|
|
61
|
+
}) => string | null;
|
|
28
62
|
/**
|
|
29
63
|
* Build the `<customFilters>` / `<dynamicFilter>` XML for a filter condition,
|
|
30
64
|
* or `null` when the condition type has no AutoFilter representation (BLANK /
|
|
@@ -35,9 +69,19 @@ export declare const buildAutoFilterConditionXml: (condition: {
|
|
|
35
69
|
type?: ConditionType | null;
|
|
36
70
|
values?: ConditionValue[] | null;
|
|
37
71
|
} | null | undefined) => string | null;
|
|
72
|
+
/** Map an Excel `<top10 top percent val>` back to a condition, or null. */
|
|
73
|
+
export declare const top10FilterToCondition: (raw: RawTop10Filter | undefined) => AutoFilterCondition | null;
|
|
38
74
|
/** Map an Excel `<dynamicFilter type=…>` back to a condition, or null. */
|
|
39
75
|
export declare const dynamicFilterToCondition: (type: string | undefined) => AutoFilterCondition | null;
|
|
40
|
-
/**
|
|
76
|
+
/**
|
|
77
|
+
* Map Excel `<customFilters>` children back to a column's condition(s), or
|
|
78
|
+
* null. Two children are a `NUMBER_BETWEEN` (`and`, `>=` then `<=`) or
|
|
79
|
+
* `NUMBER_NOT_BETWEEN` (or, `<` then `>`) range when they have that exact
|
|
80
|
+
* shape — the form the exporter writes for those types — and otherwise a
|
|
81
|
+
* Custom AutoFilter's two clauses joined by And / Or.
|
|
82
|
+
*/
|
|
83
|
+
export declare const customFiltersToCriteria: (filters: RawCustomFilter[], and: boolean) => AutoFilterCriteriaConditions | null;
|
|
84
|
+
/** Map Excel `<customFilters>` children back to a single condition, or null. */
|
|
41
85
|
export declare const customFiltersToCondition: (filters: RawCustomFilter[], and: boolean) => AutoFilterCondition | null;
|
|
42
86
|
export {};
|
|
43
87
|
//# sourceMappingURL=autofilter-condition.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autofilter-condition.d.ts","sourceRoot":"","sources":["../../autofilter-condition.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEhE;;;;;;;;;;;;;;GAcG;AAEH,KAAK,cAAc,GAAG;IAAE,gBAAgB,EAAE,MAAM,CAAA;CAAE,CAAC;AACnD,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,aAAa,CAAC;IACpB,MAAM,EAAE,cAAc,EAAE,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"autofilter-condition.d.ts","sourceRoot":"","sources":["../../autofilter-condition.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEhE;;;;;;;;;;;;;;GAcG;AAEH,KAAK,cAAc,GAAG;IAAE,gBAAgB,EAAE,MAAM,CAAA;CAAE,CAAC;AACnD,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,aAAa,CAAC;IACpB,MAAM,EAAE,cAAc,EAAE,CAAC;CAC1B,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,4BAA4B,GAAG;IACzC,SAAS,EAAE,mBAAmB,CAAC;IAC/B,UAAU,CAAC,EAAE,mBAAmB,CAAC;IACjC,aAAa,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAClE,yEAAyE;AACzE,MAAM,MAAM,cAAc,GAAG;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAoH9E;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,GAAI,UAAU;IACnD,SAAS,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;QAAC,MAAM,CAAC,EAAE,cAAc,EAAE,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC;IACrF,UAAU,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;QAAC,MAAM,CAAC,EAAE,cAAc,EAAE,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC;IACtF,aAAa,CAAC,EAAE,KAAK,GAAG,IAAI,GAAG,IAAI,CAAC;CACrC,KAAG,MAAM,GAAG,IAUZ,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B,GACtC,WAAW;IAAE,IAAI,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IAAC,MAAM,CAAC,EAAE,cAAc,EAAE,GAAG,IAAI,CAAA;CAAE,GAAG,IAAI,GAAG,SAAS,KAC9F,MAAM,GAAG,IAmCX,CAAC;AAEF,2EAA2E;AAC3E,eAAO,MAAM,sBAAsB,GACjC,KAAK,cAAc,GAAG,SAAS,KAC9B,mBAAmB,GAAG,IAexB,CAAC;AAEF,0EAA0E;AAC1E,eAAO,MAAM,wBAAwB,GACnC,MAAM,MAAM,GAAG,SAAS,KACvB,mBAAmB,GAAG,IAIxB,CAAC;AAIF;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,GAClC,SAAS,eAAe,EAAE,EAC1B,KAAK,OAAO,KACX,4BAA4B,GAAG,IA8BjC,CAAC;AAEF,gFAAgF;AAChF,eAAO,MAAM,wBAAwB,GACnC,SAAS,eAAe,EAAE,EAC1B,KAAK,OAAO,KACX,mBAAmB,GAAG,IAAgE,CAAC"}
|
|
@@ -20,6 +20,36 @@ var DYNAMIC_BY_TYPE = {
|
|
|
20
20
|
DATE_NEXT_MONTH: "nextMonth",
|
|
21
21
|
NUMBER_ABOVE_AVERAGE: "aboveAverage",
|
|
22
22
|
NUMBER_BELOW_AVERAGE: "belowAverage",
|
|
23
|
+
DATE_THIS_QUARTER: "thisQuarter",
|
|
24
|
+
DATE_LAST_QUARTER: "lastQuarter",
|
|
25
|
+
DATE_NEXT_QUARTER: "nextQuarter",
|
|
26
|
+
DATE_THIS_YEAR: "thisYear",
|
|
27
|
+
DATE_LAST_YEAR: "lastYear",
|
|
28
|
+
DATE_NEXT_YEAR: "nextYear",
|
|
29
|
+
DATE_YEAR_TO_DATE: "yearToDate",
|
|
30
|
+
DATE_IN_Q1: "Q1",
|
|
31
|
+
DATE_IN_Q2: "Q2",
|
|
32
|
+
DATE_IN_Q3: "Q3",
|
|
33
|
+
DATE_IN_Q4: "Q4",
|
|
34
|
+
DATE_IN_M1: "M1",
|
|
35
|
+
DATE_IN_M2: "M2",
|
|
36
|
+
DATE_IN_M3: "M3",
|
|
37
|
+
DATE_IN_M4: "M4",
|
|
38
|
+
DATE_IN_M5: "M5",
|
|
39
|
+
DATE_IN_M6: "M6",
|
|
40
|
+
DATE_IN_M7: "M7",
|
|
41
|
+
DATE_IN_M8: "M8",
|
|
42
|
+
DATE_IN_M9: "M9",
|
|
43
|
+
DATE_IN_M10: "M10",
|
|
44
|
+
DATE_IN_M11: "M11",
|
|
45
|
+
DATE_IN_M12: "M12",
|
|
46
|
+
};
|
|
47
|
+
// Excel's "Top 10…" AutoFilter: `<top10 top="1|0" percent="1|0" val="N"/>`.
|
|
48
|
+
var TOP10_BY_TYPE = {
|
|
49
|
+
NUMBER_TOP_N: { top: true, percent: false },
|
|
50
|
+
NUMBER_BOTTOM_N: { top: false, percent: false },
|
|
51
|
+
NUMBER_TOP_PERCENT: { top: true, percent: true },
|
|
52
|
+
NUMBER_BOTTOM_PERCENT: { top: false, percent: true },
|
|
23
53
|
};
|
|
24
54
|
var TYPE_BY_DYNAMIC = Object.fromEntries(Object.entries(DYNAMIC_BY_TYPE).map(function (_a) {
|
|
25
55
|
var _b = __read(_a, 2), k = _b[0], v = _b[1];
|
|
@@ -60,6 +90,45 @@ var TEXT_WRAP = {
|
|
|
60
90
|
var customFilterXml = function (operator, val) {
|
|
61
91
|
return "<customFilter operator=\"".concat(operator, "\" val=\"").concat(escapeXml(val), "\"/>");
|
|
62
92
|
};
|
|
93
|
+
/**
|
|
94
|
+
* A single `<customFilter>` for one comparison clause (number / date / text),
|
|
95
|
+
* or `null` when the clause has no single-element form (between, dynamic, …).
|
|
96
|
+
*/
|
|
97
|
+
var singleCustomFilterXml = function (condition) {
|
|
98
|
+
var _a, _b;
|
|
99
|
+
var type = condition === null || condition === void 0 ? void 0 : condition.type;
|
|
100
|
+
if (!type)
|
|
101
|
+
return null;
|
|
102
|
+
var v0 = (_b = (_a = condition === null || condition === void 0 ? void 0 : condition.values) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.userEnteredValue;
|
|
103
|
+
if (v0 == null)
|
|
104
|
+
return null;
|
|
105
|
+
var op = OPERATOR_BY_TYPE[type];
|
|
106
|
+
if (op)
|
|
107
|
+
return customFilterXml(op, v0);
|
|
108
|
+
var text = TEXT_WRAP[type];
|
|
109
|
+
if (text)
|
|
110
|
+
return customFilterXml(text.op, text.wrap(v0));
|
|
111
|
+
return null;
|
|
112
|
+
};
|
|
113
|
+
/**
|
|
114
|
+
* `<filterColumn>` condition XML for a column's criteria: a two-clause Custom
|
|
115
|
+
* AutoFilter becomes `<customFilters [and="1"]>` with both clauses when each
|
|
116
|
+
* has a single-element form; otherwise the first clause alone is written the
|
|
117
|
+
* way `buildAutoFilterConditionXml` does (the second is dropped — say so in
|
|
118
|
+
* the PR when this asymmetry matters).
|
|
119
|
+
*/
|
|
120
|
+
export var buildAutoFilterCriteriaXml = function (criteria) {
|
|
121
|
+
var _a;
|
|
122
|
+
if ((_a = criteria.condition2) === null || _a === void 0 ? void 0 : _a.type) {
|
|
123
|
+
var first = singleCustomFilterXml(criteria.condition);
|
|
124
|
+
var second = singleCustomFilterXml(criteria.condition2);
|
|
125
|
+
if (first && second) {
|
|
126
|
+
var and = criteria.conditionJoin === "OR" ? "" : " and=\"1\"";
|
|
127
|
+
return "<customFilters".concat(and, ">").concat(first).concat(second, "</customFilters>");
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
return buildAutoFilterConditionXml(criteria.condition);
|
|
131
|
+
};
|
|
63
132
|
/**
|
|
64
133
|
* Build the `<customFilters>` / `<dynamicFilter>` XML for a filter condition,
|
|
65
134
|
* or `null` when the condition type has no AutoFilter representation (BLANK /
|
|
@@ -77,6 +146,13 @@ export var buildAutoFilterConditionXml = function (condition) {
|
|
|
77
146
|
var dynamic = DYNAMIC_BY_TYPE[type];
|
|
78
147
|
if (dynamic)
|
|
79
148
|
return "<dynamicFilter type=\"".concat(dynamic, "\"/>");
|
|
149
|
+
var top10 = TOP10_BY_TYPE[type];
|
|
150
|
+
if (top10) {
|
|
151
|
+
var n = Number(v0);
|
|
152
|
+
if (!Number.isFinite(n) || n <= 0)
|
|
153
|
+
return null;
|
|
154
|
+
return "<top10 top=\"".concat(top10.top ? 1 : 0, "\" percent=\"").concat(top10.percent ? 1 : 0, "\" val=\"").concat(n, "\"/>");
|
|
155
|
+
}
|
|
80
156
|
if (type === "NUMBER_BETWEEN" || type === "DATE_BETWEEN") {
|
|
81
157
|
if (v0 == null || v1 == null)
|
|
82
158
|
return null;
|
|
@@ -97,6 +173,25 @@ export var buildAutoFilterConditionXml = function (condition) {
|
|
|
97
173
|
}
|
|
98
174
|
return null;
|
|
99
175
|
};
|
|
176
|
+
/** Map an Excel `<top10 top percent val>` back to a condition, or null. */
|
|
177
|
+
export var top10FilterToCondition = function (raw) {
|
|
178
|
+
if (!raw)
|
|
179
|
+
return null;
|
|
180
|
+
var n = Number(raw.val);
|
|
181
|
+
if (!Number.isFinite(n) || n <= 0)
|
|
182
|
+
return null;
|
|
183
|
+
// Both attributes default to true/false per the schema: `top` defaults to 1, `percent` to 0.
|
|
184
|
+
var top = raw.top === undefined || raw.top === "1" || raw.top === "true";
|
|
185
|
+
var percent = raw.percent === "1" || raw.percent === "true";
|
|
186
|
+
var type = top
|
|
187
|
+
? percent
|
|
188
|
+
? "NUMBER_TOP_PERCENT"
|
|
189
|
+
: "NUMBER_TOP_N"
|
|
190
|
+
: percent
|
|
191
|
+
? "NUMBER_BOTTOM_PERCENT"
|
|
192
|
+
: "NUMBER_BOTTOM_N";
|
|
193
|
+
return { type: type, values: [{ userEnteredValue: String(n) }] };
|
|
194
|
+
};
|
|
100
195
|
/** Map an Excel `<dynamicFilter type=…>` back to a condition, or null. */
|
|
101
196
|
export var dynamicFilterToCondition = function (type) {
|
|
102
197
|
if (!type)
|
|
@@ -105,23 +200,51 @@ export var dynamicFilterToCondition = function (type) {
|
|
|
105
200
|
return conditionType ? { type: conditionType, values: [] } : null;
|
|
106
201
|
};
|
|
107
202
|
var isNumeric = function (v) { return v !== "" && !Number.isNaN(Number(v)); };
|
|
108
|
-
/**
|
|
109
|
-
|
|
110
|
-
|
|
203
|
+
/**
|
|
204
|
+
* Map Excel `<customFilters>` children back to a column's condition(s), or
|
|
205
|
+
* null. Two children are a `NUMBER_BETWEEN` (`and`, `>=` then `<=`) or
|
|
206
|
+
* `NUMBER_NOT_BETWEEN` (or, `<` then `>`) range when they have that exact
|
|
207
|
+
* shape — the form the exporter writes for those types — and otherwise a
|
|
208
|
+
* Custom AutoFilter's two clauses joined by And / Or.
|
|
209
|
+
*/
|
|
210
|
+
export var customFiltersToCriteria = function (filters, and) {
|
|
211
|
+
var _a, _b;
|
|
111
212
|
var valid = filters.filter(function (f) { return f && f.val !== undefined; });
|
|
112
213
|
if (valid.length === 0)
|
|
113
214
|
return null;
|
|
114
|
-
// Two filters => a range (between when AND, not-between when OR).
|
|
115
215
|
if (valid.length >= 2) {
|
|
116
|
-
var
|
|
117
|
-
var
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
216
|
+
var _c = __read(valid, 2), first = _c[0], second = _c[1];
|
|
217
|
+
var v0 = String((_a = first.val) !== null && _a !== void 0 ? _a : "");
|
|
218
|
+
var v1 = String((_b = second.val) !== null && _b !== void 0 ? _b : "");
|
|
219
|
+
var isRange = and
|
|
220
|
+
? first.operator === "greaterThanOrEqual" &&
|
|
221
|
+
second.operator === "lessThanOrEqual"
|
|
222
|
+
: first.operator === "lessThan" && second.operator === "greaterThan";
|
|
223
|
+
if (isRange && isNumeric(v0) && isNumeric(v1)) {
|
|
224
|
+
return {
|
|
225
|
+
condition: {
|
|
226
|
+
type: and ? "NUMBER_BETWEEN" : "NUMBER_NOT_BETWEEN",
|
|
227
|
+
values: [{ userEnteredValue: v0 }, { userEnteredValue: v1 }],
|
|
228
|
+
},
|
|
229
|
+
};
|
|
230
|
+
}
|
|
231
|
+
var condition_1 = singleCustomFilterToCondition(first);
|
|
232
|
+
var condition2 = singleCustomFilterToCondition(second);
|
|
233
|
+
if (!condition_1)
|
|
234
|
+
return condition2 ? { condition: condition2 } : null;
|
|
235
|
+
return condition2
|
|
236
|
+
? { condition: condition_1, condition2: condition2, conditionJoin: and ? "AND" : "OR" }
|
|
237
|
+
: { condition: condition_1 };
|
|
122
238
|
}
|
|
123
|
-
var
|
|
124
|
-
|
|
239
|
+
var condition = singleCustomFilterToCondition(valid[0]);
|
|
240
|
+
return condition ? { condition: condition } : null;
|
|
241
|
+
};
|
|
242
|
+
/** Map Excel `<customFilters>` children back to a single condition, or null. */
|
|
243
|
+
export var customFiltersToCondition = function (filters, and) { var _a, _b; return (_b = (_a = customFiltersToCriteria(filters, and)) === null || _a === void 0 ? void 0 : _a.condition) !== null && _b !== void 0 ? _b : null; };
|
|
244
|
+
var singleCustomFilterToCondition = function (filter) {
|
|
245
|
+
var _a, _b;
|
|
246
|
+
var operator = (_a = filter.operator) !== null && _a !== void 0 ? _a : "equal";
|
|
247
|
+
var val = String((_b = filter.val) !== null && _b !== void 0 ? _b : "");
|
|
125
248
|
// Text wildcards: equal/notEqual carrying * map back to contains/starts/ends.
|
|
126
249
|
if ((operator === "equal" || operator === "notEqual") && /[*?]/.test(val)) {
|
|
127
250
|
var negated = operator === "notEqual";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { GridRange } from "@rowsncolumns/common-types";
|
|
2
|
-
import type { Column, FilterSpec, TableTotalsRowFunction } from "@rowsncolumns/spreadsheet";
|
|
2
|
+
import type { Column, FilterSpec, SortSpecs, TableTotalsRowFunction } from "@rowsncolumns/spreadsheet";
|
|
3
3
|
export declare const getRangeFromAddressRef: (ref: string) => GridRange | undefined;
|
|
4
4
|
/**
|
|
5
5
|
* Convert an xlsx column width (in units of max-digit-width of the
|
|
@@ -29,6 +29,20 @@ export declare function createFilterSpecsFromAutoFilter(autoFilter: any,
|
|
|
29
29
|
* (caller doesn't have access to workbook dxfs).
|
|
30
30
|
*/
|
|
31
31
|
resolveDxfColor?: (dxfId: number, cellColor: boolean) => string | undefined): FilterSpec[];
|
|
32
|
+
/**
|
|
33
|
+
* The table-relative column ids whose header shows NO filter button —
|
|
34
|
+
* `<filterColumn colId="n" hiddenButton="1"/>` (Excel's per-column toggle;
|
|
35
|
+
* the table-level toggle is the presence of `<autoFilter>` itself).
|
|
36
|
+
*/
|
|
37
|
+
export declare function hiddenFilterButtonColumns(autoFilter: any): Set<number>;
|
|
38
|
+
/**
|
|
39
|
+
* A table's persisted sort levels — `<sortState><sortCondition ref
|
|
40
|
+
* descending sortBy dxfId iconSet iconId customList/></sortState>` — as
|
|
41
|
+
* range-relative `SortSpecs` (the inverse of the exporter's
|
|
42
|
+
* `buildTableSortStateXml`). A colour level's `dxfId` resolves through
|
|
43
|
+
* `resolveDxfColor` (skipped when the caller has no dxf table).
|
|
44
|
+
*/
|
|
45
|
+
export declare function createSortSpecsFromSortState(sortState: any, range: GridRange, resolveDxfColor?: (dxfId: number, cellColor: boolean) => string | undefined): SortSpecs[];
|
|
32
46
|
/**
|
|
33
47
|
* Reads an Excel file and extracts sheet metadata
|
|
34
48
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../excel-parser/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,KAAK,EAEV,MAAM,EACN,UAAU,EACV,sBAAsB,EACvB,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../excel-parser/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,KAAK,EAEV,MAAM,EACN,UAAU,EACV,SAAS,EACT,sBAAsB,EACvB,MAAM,2BAA2B,CAAC;AAUnC,eAAO,MAAM,sBAAsB,GAAI,KAAK,MAAM,KAAG,SAAS,GAAG,SAIhE,CAAC;AAEF;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,UAIrD;AAED,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,UAMpC;AAmBD,eAAO,MAAM,wBAAwB,GACnC,OAAO,OAAO,KACb,KAAK,IAAI,sBACwD,CAAC;AAErE;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,GACjC,QAAQ,GAAG,KACV,IAAI,CAAC,MAAM,EAAE,mBAAmB,GAAG,gBAAgB,GAAG,kBAAkB,CAmB1E,CAAC;AAqBF,wBAAgB,+BAA+B,CAC7C,UAAU,EAAE,GAAG;AACf;;;;GAIG;AACH,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,KAAK,MAAM,GAAG,SAAS,gBA0G5E;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,CAgBtE;AAED;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CAC1C,SAAS,EAAE,GAAG,EACd,KAAK,EAAE,SAAS,EAChB,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,KAAK,MAAM,GAAG,SAAS,GAC1E,SAAS,EAAE,CA2Cb;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,WAAW,wBAkB3D"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { __awaiter, __generator, __values } from "tslib";
|
|
2
|
-
import {
|
|
2
|
+
import { customFiltersToCriteria, dynamicFilterToCondition, top10FilterToCondition, } from "../autofilter-condition";
|
|
3
3
|
import { addressToSelection } from "@rowsncolumns/utils";
|
|
4
4
|
export var getRangeFromAddressRef = function (ref) {
|
|
5
5
|
var selection = addressToSelection(ref);
|
|
@@ -94,7 +94,7 @@ export function createFilterSpecsFromAutoFilter(autoFilter,
|
|
|
94
94
|
*/
|
|
95
95
|
resolveDxfColor) {
|
|
96
96
|
var e_1, _a;
|
|
97
|
-
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
|
97
|
+
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
|
|
98
98
|
var filterSpecs = [];
|
|
99
99
|
// Handle both with and without namespace prefix
|
|
100
100
|
var filterColumn = (_b = autoFilter === null || autoFilter === void 0 ? void 0 : autoFilter.filterColumn) !== null && _b !== void 0 ? _b : autoFilter === null || autoFilter === void 0 ? void 0 : autoFilter["x:filterColumn"];
|
|
@@ -162,9 +162,9 @@ resolveDxfColor) {
|
|
|
162
162
|
var a = (_a = f.a$) !== null && _a !== void 0 ? _a : f;
|
|
163
163
|
return { operator: a === null || a === void 0 ? void 0 : a.operator, val: a === null || a === void 0 ? void 0 : a.val };
|
|
164
164
|
});
|
|
165
|
-
var
|
|
166
|
-
if (
|
|
167
|
-
criteria
|
|
165
|
+
var conditions = customFiltersToCriteria(cfArray, and);
|
|
166
|
+
if (conditions)
|
|
167
|
+
Object.assign(criteria, conditions);
|
|
168
168
|
}
|
|
169
169
|
// <dynamicFilter type="thisMonth"/> etc.
|
|
170
170
|
var dynamicNode = (_m = col.dynamicFilter) !== null && _m !== void 0 ? _m : col["x:dynamicFilter"];
|
|
@@ -174,6 +174,18 @@ resolveDxfColor) {
|
|
|
174
174
|
if (condition)
|
|
175
175
|
criteria.condition = condition;
|
|
176
176
|
}
|
|
177
|
+
// <top10 top="1" percent="0" val="10"/> (Excel's "Top 10…")
|
|
178
|
+
var top10Node = (_p = col.top10) !== null && _p !== void 0 ? _p : col["x:top10"];
|
|
179
|
+
if (top10Node && !criteria.condition) {
|
|
180
|
+
var a = (_q = top10Node.a$) !== null && _q !== void 0 ? _q : top10Node;
|
|
181
|
+
var condition = top10FilterToCondition({
|
|
182
|
+
top: (a === null || a === void 0 ? void 0 : a.top) !== undefined ? String(a.top) : undefined,
|
|
183
|
+
percent: (a === null || a === void 0 ? void 0 : a.percent) !== undefined ? String(a.percent) : undefined,
|
|
184
|
+
val: (a === null || a === void 0 ? void 0 : a.val) !== undefined ? String(a.val) : undefined,
|
|
185
|
+
});
|
|
186
|
+
if (condition)
|
|
187
|
+
criteria.condition = condition;
|
|
188
|
+
}
|
|
177
189
|
if (Object.keys(criteria).length > 0) {
|
|
178
190
|
filterSpecs.push({ columnIndex: columnIndex, filterCriteria: criteria });
|
|
179
191
|
}
|
|
@@ -188,6 +200,108 @@ resolveDxfColor) {
|
|
|
188
200
|
}
|
|
189
201
|
return filterSpecs.sort(function (a, b) { return a.columnIndex - b.columnIndex; });
|
|
190
202
|
}
|
|
203
|
+
/**
|
|
204
|
+
* The table-relative column ids whose header shows NO filter button —
|
|
205
|
+
* `<filterColumn colId="n" hiddenButton="1"/>` (Excel's per-column toggle;
|
|
206
|
+
* the table-level toggle is the presence of `<autoFilter>` itself).
|
|
207
|
+
*/
|
|
208
|
+
export function hiddenFilterButtonColumns(autoFilter) {
|
|
209
|
+
var e_2, _a;
|
|
210
|
+
var _b, _c;
|
|
211
|
+
var hidden = new Set();
|
|
212
|
+
var filterColumn = (_b = autoFilter === null || autoFilter === void 0 ? void 0 : autoFilter.filterColumn) !== null && _b !== void 0 ? _b : autoFilter === null || autoFilter === void 0 ? void 0 : autoFilter["x:filterColumn"];
|
|
213
|
+
if (!filterColumn)
|
|
214
|
+
return hidden;
|
|
215
|
+
var filterColumns = Array.isArray(filterColumn)
|
|
216
|
+
? filterColumn
|
|
217
|
+
: [filterColumn];
|
|
218
|
+
try {
|
|
219
|
+
for (var filterColumns_2 = __values(filterColumns), filterColumns_2_1 = filterColumns_2.next(); !filterColumns_2_1.done; filterColumns_2_1 = filterColumns_2.next()) {
|
|
220
|
+
var col = filterColumns_2_1.value;
|
|
221
|
+
var attrs = (_c = col === null || col === void 0 ? void 0 : col.a$) !== null && _c !== void 0 ? _c : {};
|
|
222
|
+
var hiddenButton = attrs.hiddenButton;
|
|
223
|
+
if (hiddenButton !== "1" && hiddenButton !== "true")
|
|
224
|
+
continue;
|
|
225
|
+
var columnIndex = parseInt(String(attrs.colId), 10);
|
|
226
|
+
if (Number.isFinite(columnIndex))
|
|
227
|
+
hidden.add(columnIndex);
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
231
|
+
finally {
|
|
232
|
+
try {
|
|
233
|
+
if (filterColumns_2_1 && !filterColumns_2_1.done && (_a = filterColumns_2.return)) _a.call(filterColumns_2);
|
|
234
|
+
}
|
|
235
|
+
finally { if (e_2) throw e_2.error; }
|
|
236
|
+
}
|
|
237
|
+
return hidden;
|
|
238
|
+
}
|
|
239
|
+
/**
|
|
240
|
+
* A table's persisted sort levels — `<sortState><sortCondition ref
|
|
241
|
+
* descending sortBy dxfId iconSet iconId customList/></sortState>` — as
|
|
242
|
+
* range-relative `SortSpecs` (the inverse of the exporter's
|
|
243
|
+
* `buildTableSortStateXml`). A colour level's `dxfId` resolves through
|
|
244
|
+
* `resolveDxfColor` (skipped when the caller has no dxf table).
|
|
245
|
+
*/
|
|
246
|
+
export function createSortSpecsFromSortState(sortState, range, resolveDxfColor) {
|
|
247
|
+
var e_3, _a;
|
|
248
|
+
var _b, _c, _d;
|
|
249
|
+
var raw = (_b = sortState === null || sortState === void 0 ? void 0 : sortState.sortCondition) !== null && _b !== void 0 ? _b : sortState === null || sortState === void 0 ? void 0 : sortState["x:sortCondition"];
|
|
250
|
+
if (!raw)
|
|
251
|
+
return [];
|
|
252
|
+
var conditions = Array.isArray(raw) ? raw : [raw];
|
|
253
|
+
var specs = [];
|
|
254
|
+
try {
|
|
255
|
+
for (var conditions_1 = __values(conditions), conditions_1_1 = conditions_1.next(); !conditions_1_1.done; conditions_1_1 = conditions_1.next()) {
|
|
256
|
+
var condition = conditions_1_1.value;
|
|
257
|
+
var attrs = (_c = condition === null || condition === void 0 ? void 0 : condition.a$) !== null && _c !== void 0 ? _c : {};
|
|
258
|
+
var conditionRange = attrs.ref
|
|
259
|
+
? getRangeFromAddressRef(String(attrs.ref))
|
|
260
|
+
: undefined;
|
|
261
|
+
if (!conditionRange)
|
|
262
|
+
continue;
|
|
263
|
+
var dimensionIndex = conditionRange.startColumnIndex - range.startColumnIndex;
|
|
264
|
+
if (dimensionIndex < 0)
|
|
265
|
+
continue;
|
|
266
|
+
var spec = {
|
|
267
|
+
dimensionIndex: dimensionIndex,
|
|
268
|
+
sortOrder: attrs.descending === "1" || attrs.descending === "true"
|
|
269
|
+
? "DESCENDING"
|
|
270
|
+
: "ASCENDING",
|
|
271
|
+
};
|
|
272
|
+
var sortBy = attrs.sortBy;
|
|
273
|
+
if (sortBy === "cellColor" || sortBy === "fontColor") {
|
|
274
|
+
spec.sortBy = sortBy;
|
|
275
|
+
var dxfId = parseInt(String(attrs.dxfId), 10);
|
|
276
|
+
var color = Number.isFinite(dxfId)
|
|
277
|
+
? resolveDxfColor === null || resolveDxfColor === void 0 ? void 0 : resolveDxfColor(dxfId, sortBy === "cellColor")
|
|
278
|
+
: undefined;
|
|
279
|
+
if (color)
|
|
280
|
+
spec.sortColor = color;
|
|
281
|
+
}
|
|
282
|
+
else if (sortBy === "icon" && typeof attrs.iconSet === "string") {
|
|
283
|
+
var iconId = parseInt(String((_d = attrs.iconId) !== null && _d !== void 0 ? _d : 0), 10);
|
|
284
|
+
spec.sortBy = "icon";
|
|
285
|
+
spec.sortIcon = {
|
|
286
|
+
iconSet: attrs.iconSet,
|
|
287
|
+
iconId: Number.isFinite(iconId) ? iconId : 0,
|
|
288
|
+
};
|
|
289
|
+
}
|
|
290
|
+
if (typeof attrs.customList === "string" && attrs.customList.length) {
|
|
291
|
+
spec.customList = attrs.customList.split(",");
|
|
292
|
+
}
|
|
293
|
+
specs.push(spec);
|
|
294
|
+
}
|
|
295
|
+
}
|
|
296
|
+
catch (e_3_1) { e_3 = { error: e_3_1 }; }
|
|
297
|
+
finally {
|
|
298
|
+
try {
|
|
299
|
+
if (conditions_1_1 && !conditions_1_1.done && (_a = conditions_1.return)) _a.call(conditions_1);
|
|
300
|
+
}
|
|
301
|
+
finally { if (e_3) throw e_3.error; }
|
|
302
|
+
}
|
|
303
|
+
return specs;
|
|
304
|
+
}
|
|
191
305
|
/**
|
|
192
306
|
* Reads an Excel file and extracts sheet metadata
|
|
193
307
|
*/
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ConditionalFormatRule, DataValidationRuleRecord, EmbeddedChart, NamedRange, ProtectedRange, Sheet, Slicer, SpreadsheetTheme, TableView } from "@rowsncolumns/spreadsheet";
|
|
1
|
+
import type { ConditionalFormatRule, DataValidationRuleRecord, EmbeddedChart, NamedRange, ProtectedRange, Sheet, Slicer, SpreadsheetTheme, TableView, CustomTableStyle } from "@rowsncolumns/spreadsheet";
|
|
2
2
|
import type { CommentThread, IterativeCalculationOptions, NamedCellStyle, TextFormat, TextFormatRun } from "@rowsncolumns/common-types";
|
|
3
3
|
import type { EmbeddedObjectWithPosition, ExternalLink, ProcessSheetDataForSheetOptions, ProcessSheetDataResult, SheetCatalogEntry, WorkbookProperties } from "./types";
|
|
4
4
|
export interface IWorkbookPlugin {
|
|
@@ -62,6 +62,8 @@ export interface IWorkbookPlugin {
|
|
|
62
62
|
* Workbook named cell styles (`<cellStyles>`) resolved to cell formats.
|
|
63
63
|
*/
|
|
64
64
|
getNamedCellStyles?(): NamedCellStyle[];
|
|
65
|
+
/** Custom `<tableStyle>`s resolved to banding — the `customTableStyles` facet (#668 T-103). */
|
|
66
|
+
getCustomTableStyles?(): CustomTableStyle[];
|
|
65
67
|
/**
|
|
66
68
|
* Get the workbook default font (styles.xml fonts[0]) when the source
|
|
67
69
|
* format has one; null/undefined otherwise.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../../excel-parser/interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,wBAAwB,EACxB,aAAa,EACb,UAAU,EACV,cAAc,EACd,KAAK,EACL,MAAM,EACN,gBAAgB,EAChB,SAAS,
|
|
1
|
+
{"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../../excel-parser/interface.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../excel-parser/plugins/ods/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAKV,qBAAqB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../excel-parser/plugins/ods/index.ts"],"names":[],"mappings":"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"}
|