@gisce/ooui 0.6.13 → 0.6.14
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.
|
@@ -16,7 +16,10 @@ export declare const labelsForOperator: {
|
|
|
16
16
|
min: string;
|
|
17
17
|
max: string;
|
|
18
18
|
};
|
|
19
|
-
export declare
|
|
19
|
+
export declare type ProcessGraphDataOpts = {
|
|
20
|
+
uninformedString: string;
|
|
21
|
+
};
|
|
22
|
+
export declare const processGraphData: ({ ooui, values, fields, options, }: {
|
|
20
23
|
ooui: GraphChart;
|
|
21
24
|
values: {
|
|
22
25
|
[key: string]: any;
|
|
@@ -24,6 +27,7 @@ export declare const processGraphData: ({ ooui, values, fields, }: {
|
|
|
24
27
|
fields: {
|
|
25
28
|
[key: string]: any;
|
|
26
29
|
};
|
|
30
|
+
options?: ProcessGraphDataOpts | undefined;
|
|
27
31
|
}) => {
|
|
28
32
|
data: {
|
|
29
33
|
[key: string]: any;
|
|
@@ -40,7 +40,7 @@ export var labelsForOperator = {
|
|
|
40
40
|
max: "max",
|
|
41
41
|
};
|
|
42
42
|
export var processGraphData = function (_a) {
|
|
43
|
-
var ooui = _a.ooui, values = _a.values, fields = _a.fields;
|
|
43
|
+
var ooui = _a.ooui, values = _a.values, fields = _a.fields, options = _a.options;
|
|
44
44
|
// First we group all the results by the x field. This way we will have one or more items in an array for every occurrence of ooui.x.name
|
|
45
45
|
// Result of this will be an object which keys will be unique keys for values of ooui.x.name for each item
|
|
46
46
|
var valuesGroupedByX = getValuesGroupedByField({
|
|
@@ -132,8 +132,24 @@ export var processGraphData = function (_a) {
|
|
|
132
132
|
return __assign(__assign({}, entry), { type: entry.type + " - " + entry.stacked });
|
|
133
133
|
});
|
|
134
134
|
}
|
|
135
|
+
var adjustedUninformedData = __spread(adjustedStackedData);
|
|
136
|
+
// If the type of the graph is pie, we have to check for "false" (uninformed) computes values
|
|
137
|
+
// in order to adjust the description to a localized string for "Unassigned / not introduced"
|
|
138
|
+
// Else, we have to ignore those entries
|
|
139
|
+
if (ooui.type === "pie" &&
|
|
140
|
+
adjustedUninformedData.some(function (entry) { return entry.x === false; })) {
|
|
141
|
+
adjustedUninformedData = adjustedUninformedData.map(function (entry) {
|
|
142
|
+
if (entry.x === false) {
|
|
143
|
+
return __assign(__assign({}, entry), { x: (options === null || options === void 0 ? void 0 : options.uninformedString) || "Not informed" });
|
|
144
|
+
}
|
|
145
|
+
return entry;
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
else if (adjustedStackedData.some(function (entry) { return entry.x === false; })) {
|
|
149
|
+
adjustedUninformedData = adjustedUninformedData.filter(function (entry) { return entry.x !== false; });
|
|
150
|
+
}
|
|
135
151
|
return {
|
|
136
|
-
data:
|
|
152
|
+
data: adjustedUninformedData,
|
|
137
153
|
isGroup: isStack || isGroup,
|
|
138
154
|
isStack: isStack,
|
|
139
155
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graphProcessor.js","sourceRoot":"","sources":["../../../src/Graph/processor/graphProcessor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,OAAO,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC;AAMxD,MAAM,CAAC,IAAM,iBAAiB,GAAG;IAC/B,KAAK,EAAE,OAAO;IACd,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;CACX,CAAC;
|
|
1
|
+
{"version":3,"file":"graphProcessor.js","sourceRoot":"","sources":["../../../src/Graph/processor/graphProcessor.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -15,14 +15,20 @@ export const labelsForOperator = {
|
|
|
15
15
|
max: "max",
|
|
16
16
|
};
|
|
17
17
|
|
|
18
|
+
export type ProcessGraphDataOpts = {
|
|
19
|
+
uninformedString: string;
|
|
20
|
+
};
|
|
21
|
+
|
|
18
22
|
export const processGraphData = ({
|
|
19
23
|
ooui,
|
|
20
24
|
values,
|
|
21
25
|
fields,
|
|
26
|
+
options,
|
|
22
27
|
}: {
|
|
23
28
|
ooui: GraphChart;
|
|
24
29
|
values: { [key: string]: any }[];
|
|
25
30
|
fields: { [key: string]: any };
|
|
31
|
+
options?: ProcessGraphDataOpts;
|
|
26
32
|
}) => {
|
|
27
33
|
// First we group all the results by the x field. This way we will have one or more items in an array for every occurrence of ooui.x.name
|
|
28
34
|
// Result of this will be an object which keys will be unique keys for values of ooui.x.name for each item
|
|
@@ -130,8 +136,28 @@ export const processGraphData = ({
|
|
|
130
136
|
});
|
|
131
137
|
}
|
|
132
138
|
|
|
139
|
+
let adjustedUninformedData = [...adjustedStackedData];
|
|
140
|
+
// If the type of the graph is pie, we have to check for "false" (uninformed) computes values
|
|
141
|
+
// in order to adjust the description to a localized string for "Unassigned / not introduced"
|
|
142
|
+
// Else, we have to ignore those entries
|
|
143
|
+
if (
|
|
144
|
+
ooui.type === "pie" &&
|
|
145
|
+
adjustedUninformedData.some((entry) => entry.x === false)
|
|
146
|
+
) {
|
|
147
|
+
adjustedUninformedData = adjustedUninformedData.map((entry) => {
|
|
148
|
+
if (entry.x === false) {
|
|
149
|
+
return { ...entry, x: options?.uninformedString || "Not informed" };
|
|
150
|
+
}
|
|
151
|
+
return entry;
|
|
152
|
+
});
|
|
153
|
+
} else if (adjustedStackedData.some((entry) => entry.x === false)) {
|
|
154
|
+
adjustedUninformedData = adjustedUninformedData.filter(
|
|
155
|
+
(entry) => entry.x !== false
|
|
156
|
+
);
|
|
157
|
+
}
|
|
158
|
+
|
|
133
159
|
return {
|
|
134
|
-
data:
|
|
160
|
+
data: adjustedUninformedData,
|
|
135
161
|
isGroup: isStack || isGroup,
|
|
136
162
|
isStack,
|
|
137
163
|
};
|
|
@@ -112,6 +112,7 @@ describe("in processGraphData method", () => {
|
|
|
112
112
|
`,
|
|
113
113
|
"polissa"
|
|
114
114
|
);
|
|
115
|
+
expect(data).toBeTruthy();
|
|
115
116
|
|
|
116
117
|
expect(isGroup).toBe(false);
|
|
117
118
|
expect(isStack).toBe(false);
|
|
@@ -166,7 +167,7 @@ describe("in processGraphData method", () => {
|
|
|
166
167
|
d.value === 2 &&
|
|
167
168
|
d.type === "Tarifa Comercialitzadora"
|
|
168
169
|
)
|
|
169
|
-
).
|
|
170
|
+
).toBeUndefined();
|
|
170
171
|
|
|
171
172
|
expect(
|
|
172
173
|
data.find(
|
|
@@ -176,8 +177,25 @@ describe("in processGraphData method", () => {
|
|
|
176
177
|
d.type === "Tarifa Comercialitzadora"
|
|
177
178
|
)
|
|
178
179
|
).toBeUndefined();
|
|
180
|
+
});
|
|
181
|
+
|
|
182
|
+
it("should do basic test with one y axis (line)", () => {
|
|
183
|
+
const { data, isGroup, isStack } = getGraphData(
|
|
184
|
+
`<?xml version="1.0"?>
|
|
185
|
+
<graph type="line">
|
|
186
|
+
<field name="data_alta" axis="x"/>
|
|
187
|
+
<field name="data_alta" operator="count" axis="y"/>
|
|
188
|
+
</graph>
|
|
189
|
+
`,
|
|
190
|
+
"polissa"
|
|
191
|
+
);
|
|
192
|
+
|
|
193
|
+
expect(isGroup).toBe(false);
|
|
194
|
+
expect(isStack).toBe(false);
|
|
179
195
|
|
|
180
196
|
expect(data).toBeTruthy();
|
|
197
|
+
expect(data.length).toBe(13);
|
|
198
|
+
expect(data.some((entry) => entry.x === false)).toBeFalsy();
|
|
181
199
|
});
|
|
182
200
|
|
|
183
201
|
it("should do basic test with one y axis with label", () => {
|