blixify-ui-web 1.2.192 → 1.2.194
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/lib/components/data/dataGraph/chartResults.d.ts +9 -0
- package/lib/components/data/dataGraph/chartResults.d.ts.map +1 -1
- package/lib/components/data/dataGraph/chartResults.js +23 -1
- package/lib/components/data/dataGraph/chartResults.js.map +1 -1
- package/lib/components/data/dataGraph/index.d.ts +2 -1
- package/lib/components/data/dataGraph/index.d.ts.map +1 -1
- package/lib/components/data/dataGraph/index.js +178 -29
- package/lib/components/data/dataGraph/index.js.map +1 -1
- package/lib/components/data/dataTemplate/chartView.d.ts.map +1 -1
- package/lib/components/data/dataTemplate/chartView.js +44 -3
- package/lib/components/data/dataTemplate/chartView.js.map +1 -1
- package/lib/components/data/dataTemplate/spaceModel.d.ts +11 -0
- package/lib/components/data/dataTemplate/spaceModel.d.ts.map +1 -1
- package/lib/components/data/dataTemplate/spaceModel.js +8 -0
- package/lib/components/data/dataTemplate/spaceModel.js.map +1 -1
- package/lib/tail.css +2 -2
- package/package.json +1 -1
|
@@ -78,4 +78,13 @@ export declare const handleShapeChartPoints: (points: ChartPoint[], options: Cha
|
|
|
78
78
|
* group of its own
|
|
79
79
|
*/
|
|
80
80
|
export declare const handleGroupKeyQuery: (columnId: string, key: any) => Query[];
|
|
81
|
+
export interface ChartChange {
|
|
82
|
+
direction: "up" | "down" | "flat";
|
|
83
|
+
percent: number | null;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* The last complete period against the one before it — the period still under
|
|
87
|
+
* way is left out, as a part-period would always read as a drop.
|
|
88
|
+
*/
|
|
89
|
+
export declare const handleChangeSummary: (values: number[], isComplete: boolean[]) => ChartChange | null;
|
|
81
90
|
//# sourceMappingURL=chartResults.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chartResults.d.ts","sourceRoot":"","sources":["../../../../src/components/data/dataGraph/chartResults.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAErC;;;;GAIG;AAEH,MAAM,MAAM,iBAAiB,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC;AAEzD,MAAM,WAAW,UAAU;IACzB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IAEV,GAAG,CAAC,EAAE,GAAG,CAAC;IACV,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IAC3B,aAAa,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,GAAG,KAAK,GAAG,KAAK,GAAG,OAAO,CAAC;CAC7C;AAED,eAAO,MAAM,YAAY,WAAW,CAAC;AACrC,eAAO,MAAM,iBAAiB,aAAa,CAAC;AAC5C,eAAO,MAAM,gBAAgB,KAAK,CAAC;AAGnC;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,UAAW,OAAO,KAAG,MAAM,GAAG,IAM7D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,UAC3B,IAAI,OACN,IAAI,YACC,iBAAiB;WAEH,MAAM;WAAS,IAAI;SAAO,IAAI;WAAS,MAAM;GAoBtE,CAAC;AAEF,eAAO,MAAM,uBAAuB,SAC5B,IAAI,YACA,iBAAiB,WAU5B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,QAChC,OAAO,KACX;IAAE,GAAG,EAAE,GAAG,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,EAmBpC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,QACzB,GAAG,WACC,aAAa,WACb;IAAE,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,KAChC,MAkBF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,WACzB,UAAU,EAAE,WACX,iBAAiB,KACzB;IAAE,MAAM,EAAE,UAAU,EAAE,CAAC;IAAC,UAAU,EAAE,GAAG,EAAE,CAAA;CA2C3C,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,aAAc,MAAM,OAAO,GAAG,KAAG,KAAK,EAErE,CAAC"}
|
|
1
|
+
{"version":3,"file":"chartResults.d.ts","sourceRoot":"","sources":["../../../../src/components/data/dataGraph/chartResults.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAErC;;;;GAIG;AAEH,MAAM,MAAM,iBAAiB,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC;AAEzD,MAAM,WAAW,UAAU;IACzB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IAEV,GAAG,CAAC,EAAE,GAAG,CAAC;IACV,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IAC3B,aAAa,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,GAAG,KAAK,GAAG,KAAK,GAAG,OAAO,CAAC;CAC7C;AAED,eAAO,MAAM,YAAY,WAAW,CAAC;AACrC,eAAO,MAAM,iBAAiB,aAAa,CAAC;AAC5C,eAAO,MAAM,gBAAgB,KAAK,CAAC;AAGnC;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,UAAW,OAAO,KAAG,MAAM,GAAG,IAM7D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,UAC3B,IAAI,OACN,IAAI,YACC,iBAAiB;WAEH,MAAM;WAAS,IAAI;SAAO,IAAI;WAAS,MAAM;GAoBtE,CAAC;AAEF,eAAO,MAAM,uBAAuB,SAC5B,IAAI,YACA,iBAAiB,WAU5B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,QAChC,OAAO,KACX;IAAE,GAAG,EAAE,GAAG,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,EAmBpC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,QACzB,GAAG,WACC,aAAa,WACb;IAAE,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,KAChC,MAkBF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,WACzB,UAAU,EAAE,WACX,iBAAiB,KACzB;IAAE,MAAM,EAAE,UAAU,EAAE,CAAC;IAAC,UAAU,EAAE,GAAG,EAAE,CAAA;CA2C3C,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,aAAc,MAAM,OAAO,GAAG,KAAG,KAAK,EAErE,CAAC;AAEF,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC;IAElC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED;;;GAGG;AACH,eAAO,MAAM,mBAAmB,WACtB,MAAM,EAAE,cACJ,OAAO,EAAE,KACpB,WAAW,GAAG,IAchB,CAAC"}
|
|
@@ -23,7 +23,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
23
23
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.handleGroupKeyQuery = exports.handleShapeChartPoints = exports.handleGroupKeyLabel = exports.handleFlattenGroupedResult = exports.handleFormatBucketLabel = exports.handleSplitDateInterval = exports.handleToChartNumber = exports.MAX_DATE_BUCKETS = exports.EMPTY_GROUP_LABEL = exports.OTHERS_LABEL = void 0;
|
|
26
|
+
exports.handleChangeSummary = exports.handleGroupKeyQuery = exports.handleShapeChartPoints = exports.handleGroupKeyLabel = exports.handleFlattenGroupedResult = exports.handleFormatBucketLabel = exports.handleSplitDateInterval = exports.handleToChartNumber = exports.MAX_DATE_BUCKETS = exports.EMPTY_GROUP_LABEL = exports.OTHERS_LABEL = void 0;
|
|
27
27
|
var dayjs_1 = __importDefault(require("../../dayjs"));
|
|
28
28
|
exports.OTHERS_LABEL = "Others";
|
|
29
29
|
exports.EMPTY_GROUP_LABEL = "No Value";
|
|
@@ -197,4 +197,26 @@ var handleGroupKeyQuery = function (columnId, key) { return [
|
|
|
197
197
|
{ type: "=", queryId: columnId, value: key !== null && key !== void 0 ? key : null },
|
|
198
198
|
]; };
|
|
199
199
|
exports.handleGroupKeyQuery = handleGroupKeyQuery;
|
|
200
|
+
/**
|
|
201
|
+
* The last complete period against the one before it — the period still under
|
|
202
|
+
* way is left out, as a part-period would always read as a drop.
|
|
203
|
+
*/
|
|
204
|
+
var handleChangeSummary = function (values, isComplete) {
|
|
205
|
+
var _a, _b;
|
|
206
|
+
var complete = values
|
|
207
|
+
.map(function (_, index) { return index; })
|
|
208
|
+
.filter(function (index) { return isComplete[index]; });
|
|
209
|
+
if (complete.length < 2)
|
|
210
|
+
return null;
|
|
211
|
+
var last = (_a = values[complete[complete.length - 1]]) !== null && _a !== void 0 ? _a : 0;
|
|
212
|
+
var previous = (_b = values[complete[complete.length - 2]]) !== null && _b !== void 0 ? _b : 0;
|
|
213
|
+
if (previous === 0)
|
|
214
|
+
return { direction: last > 0 ? "up" : last < 0 ? "down" : "flat", percent: null };
|
|
215
|
+
var percent = Math.round(((last - previous) / Math.abs(previous)) * 100);
|
|
216
|
+
return {
|
|
217
|
+
direction: percent > 0 ? "up" : percent < 0 ? "down" : "flat",
|
|
218
|
+
percent: percent,
|
|
219
|
+
};
|
|
220
|
+
};
|
|
221
|
+
exports.handleChangeSummary = handleChangeSummary;
|
|
200
222
|
//# sourceMappingURL=chartResults.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chartResults.js","sourceRoot":"","sources":["../../../../src/components/data/dataGraph/chartResults.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"chartResults.js","sourceRoot":"","sources":["../../../../src/components/data/dataGraph/chartResults.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Option } from "../../input/select";
|
|
2
2
|
import { DataStructure } from "../dataTemplate/model";
|
|
3
|
-
import { Charts } from "../dataTemplate/spaceModel";
|
|
3
|
+
import { ChartHighlight, Charts } from "../dataTemplate/spaceModel";
|
|
4
4
|
import { WorkspaceDevSettings } from "../dataTemplate/workspaceModel";
|
|
5
5
|
import { Query } from "../readQuery";
|
|
6
6
|
export interface ChartDrillDown {
|
|
@@ -16,6 +16,7 @@ interface Props {
|
|
|
16
16
|
structure?: DataStructure[];
|
|
17
17
|
personOptions?: Option[];
|
|
18
18
|
onDrillDown?: (drillDown: ChartDrillDown) => void;
|
|
19
|
+
onHighlightRow?: (chart: Charts, row: string, highlight: Omit<ChartHighlight, "row"> | null) => void;
|
|
19
20
|
}
|
|
20
21
|
/**
|
|
21
22
|
* A chart drawn from new-style options — group by any column, date buckets,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/data/dataGraph/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/data/dataGraph/index.tsx"],"names":[],"mappings":"AAaA,OAAO,EAAE,MAAM,EAAU,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAc,MAAM,uBAAuB,CAAC;AAElE,OAAO,EAEL,cAAc,EACd,MAAM,EACP,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,KAAK,EAAa,MAAM,cAAc,CAAC;AA6BhD,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IAGd,KAAK,EAAE,KAAK,EAAE,CAAC;CAChB;AAED,UAAU,KAAK;IACb,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,oBAAoB,CAAC;IAChC,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACjB,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,KAAK,GAAG,CAAC;IAGlD,SAAS,CAAC,EAAE,aAAa,EAAE,CAAC;IAE5B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,cAAc,KAAK,IAAI,CAAC;IAGlD,cAAc,CAAC,EAAE,CACf,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,SAAS,EAAE,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,GAAG,IAAI,KAC1C,IAAI,CAAC;CACX;AA6CD;;;GAGG;AACH,eAAO,MAAM,mBAAmB,UAAW,MAAM,YAEgB,CAAC;AAElE,wBAAgB,SAAS,CAAC,KAAK,EAAE,KAAK,OA0uDrC"}
|
|
@@ -85,6 +85,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
85
85
|
exports.handleIsShapedChart = void 0;
|
|
86
86
|
exports.DataGraph = DataGraph;
|
|
87
87
|
var solid_1 = require("@heroicons/react/24/solid");
|
|
88
|
+
var outline_1 = require("@heroicons/react/24/outline");
|
|
88
89
|
var axios_1 = __importDefault(require("axios"));
|
|
89
90
|
var dayjs_1 = __importDefault(require("../../dayjs"));
|
|
90
91
|
var react_1 = __importStar(require("react"));
|
|
@@ -98,6 +99,7 @@ var textButton_1 = require("../../action/textButton");
|
|
|
98
99
|
var loading_1 = require("../../display/loading");
|
|
99
100
|
var select_1 = require("../../input/select");
|
|
100
101
|
var chartBuilder_1 = require("../dataTemplate/chartBuilder");
|
|
102
|
+
var spaceModel_1 = require("../dataTemplate/spaceModel");
|
|
101
103
|
var readQuery_1 = require("../readQuery");
|
|
102
104
|
var stories_1 = require("../stories");
|
|
103
105
|
var utils_1 = require("../utils");
|
|
@@ -134,7 +136,11 @@ function DataGraph(props) {
|
|
|
134
136
|
var _c = (0, react_1.useState)({}), graphAnalyticsError = _c[0], setGraphAnalyticsError = _c[1];
|
|
135
137
|
var _d = (0, react_1.useState)({}), graphSeries = _d[0], setGraphSeries = _d[1];
|
|
136
138
|
var _e = (0, react_1.useState)({}), retryCount = _e[0], setRetryCount = _e[1];
|
|
137
|
-
|
|
139
|
+
// INFO: a chart reading again — after a filter or range change — keeps its
|
|
140
|
+
// last numbers on screen, dimmed, so they are not taken for the new ones
|
|
141
|
+
var _f = (0, react_1.useState)({}), reloading = _f[0], setReloading = _f[1];
|
|
142
|
+
var _g = (0, react_1.useState)(null), highlightBar = _g[0], setHighlightBar = _g[1];
|
|
143
|
+
var _h = (0, react_1.useState)({}), detailsOpen = _h[0], setDetailsOpen = _h[1];
|
|
138
144
|
var oldGraphAnalyticsFilterRef = (0, react_1.useRef)({});
|
|
139
145
|
// INFO: the latest load of each chart; an older answer arriving after a
|
|
140
146
|
// newer one is dropped, so the builder preview never shows past settings
|
|
@@ -188,6 +194,15 @@ function DataGraph(props) {
|
|
|
188
194
|
/* eslint-disable */
|
|
189
195
|
}, [graphAnalyticsFilter]);
|
|
190
196
|
/* eslint-enable */
|
|
197
|
+
// INFO: an open highlight bar closes on any click outside it; its own clicks
|
|
198
|
+
// and the button that opens it stop at themselves
|
|
199
|
+
(0, react_1.useEffect)(function () {
|
|
200
|
+
if (!highlightBar)
|
|
201
|
+
return;
|
|
202
|
+
var handleClose = function () { return setHighlightBar(null); };
|
|
203
|
+
window.addEventListener("click", handleClose);
|
|
204
|
+
return function () { return window.removeEventListener("click", handleClose); };
|
|
205
|
+
}, [highlightBar]);
|
|
191
206
|
var handleIsGraphAnalyticsDataChanged = function (prevFilter, newFilter) {
|
|
192
207
|
for (var key in newFilter) {
|
|
193
208
|
if (!prevFilter[key] ||
|
|
@@ -841,6 +856,10 @@ function DataGraph(props) {
|
|
|
841
856
|
case 0:
|
|
842
857
|
sequence = ((_e = loadSequenceRef.current[eachChart.title]) !== null && _e !== void 0 ? _e : 0) + 1;
|
|
843
858
|
loadSequenceRef.current[eachChart.title] = sequence;
|
|
859
|
+
setReloading(function (prev) {
|
|
860
|
+
var _a;
|
|
861
|
+
return (__assign(__assign({}, prev), (_a = {}, _a[eachChart.title] = true, _a)));
|
|
862
|
+
});
|
|
844
863
|
data = undefined;
|
|
845
864
|
series = undefined;
|
|
846
865
|
error = undefined;
|
|
@@ -885,6 +904,10 @@ function DataGraph(props) {
|
|
|
885
904
|
case 13:
|
|
886
905
|
if (loadSequenceRef.current[eachChart.title] !== sequence)
|
|
887
906
|
return [2 /*return*/];
|
|
907
|
+
setReloading(function (prev) {
|
|
908
|
+
var _a;
|
|
909
|
+
return (__assign(__assign({}, prev), (_a = {}, _a[eachChart.title] = false, _a)));
|
|
910
|
+
});
|
|
888
911
|
setGraphAnalyticsData(function (prev) {
|
|
889
912
|
var _a;
|
|
890
913
|
return (__assign(__assign({}, prev), (_a = {}, _a[eachChart.title] = data, _a)));
|
|
@@ -1146,8 +1169,104 @@ function DataGraph(props) {
|
|
|
1146
1169
|
handleUpdateChartData(index, dateRange);
|
|
1147
1170
|
} }))));
|
|
1148
1171
|
};
|
|
1172
|
+
// INFO: written out in full so Tailwind keeps every class in a consumer's build
|
|
1173
|
+
var HIGHLIGHT_ROW_CLASS = {
|
|
1174
|
+
red: "bg-red-50 text-red-700",
|
|
1175
|
+
amber: "bg-amber-50 text-amber-700",
|
|
1176
|
+
green: "bg-green-50 text-green-700",
|
|
1177
|
+
blue: "bg-blue-50 text-blue-700",
|
|
1178
|
+
purple: "bg-purple-50 text-purple-700",
|
|
1179
|
+
};
|
|
1180
|
+
var HIGHLIGHT_DOT_CLASS = {
|
|
1181
|
+
red: "bg-red-500",
|
|
1182
|
+
amber: "bg-amber-500",
|
|
1183
|
+
green: "bg-green-500",
|
|
1184
|
+
blue: "bg-blue-500",
|
|
1185
|
+
purple: "bg-purple-500",
|
|
1186
|
+
};
|
|
1187
|
+
var handleFindHighlight = function (item, row) { var _a; return ((_a = item.highlights) !== null && _a !== void 0 ? _a : []).find(function (each) { return each.row === row; }); };
|
|
1188
|
+
// INFO: the row's tint and weight, and the background its pinned label
|
|
1189
|
+
// needs so the tint carries under it
|
|
1190
|
+
var handleHighlightClass = function (item, row) {
|
|
1191
|
+
var _a;
|
|
1192
|
+
var highlight = handleFindHighlight(item, row);
|
|
1193
|
+
if (!highlight)
|
|
1194
|
+
return { row: "", label: "bg-white" };
|
|
1195
|
+
var colour = highlight.colour
|
|
1196
|
+
? (_a = HIGHLIGHT_ROW_CLASS[highlight.colour]) !== null && _a !== void 0 ? _a : ""
|
|
1197
|
+
: "";
|
|
1198
|
+
var weight = highlight.bold ? "font-semibold" : "";
|
|
1199
|
+
return {
|
|
1200
|
+
row: "".concat(colour, " ").concat(weight),
|
|
1201
|
+
label: colour ? colour.split(" ")[0] : "bg-white",
|
|
1202
|
+
};
|
|
1203
|
+
};
|
|
1204
|
+
var handleSetHighlight = function (item, row, update) {
|
|
1205
|
+
var _a;
|
|
1206
|
+
setHighlightBar(null);
|
|
1207
|
+
(_a = props.onHighlightRow) === null || _a === void 0 ? void 0 : _a.call(props, item, row, update);
|
|
1208
|
+
};
|
|
1209
|
+
var renderHighlightBar = function (item, row) {
|
|
1210
|
+
var current = handleFindHighlight(item, row);
|
|
1211
|
+
return (react_1.default.createElement("div", {
|
|
1212
|
+
// INFO: opens beside the label, inside the row's own height — the card
|
|
1213
|
+
// clips what spills out of it, so a bar below the last row was cut off
|
|
1214
|
+
className: "absolute left-full top-1/2 z-20 ml-2 flex -translate-y-1/2 items-center gap-1.5 whitespace-nowrap rounded-md border border-gray-200 bg-white px-2 py-1 shadow-lg", "data-testid": "chart-highlight-bar", onClick: function (e) { return e.stopPropagation(); } },
|
|
1215
|
+
react_1.default.createElement("button", { type: "button", "aria-label": "Bold", className: "rounded px-1.5 text-sm font-bold ".concat((current === null || current === void 0 ? void 0 : current.bold) ? "bg-gray-200 text-gray-900" : "text-gray-600"), onClick: function () {
|
|
1216
|
+
return handleSetHighlight(item, row, {
|
|
1217
|
+
colour: current === null || current === void 0 ? void 0 : current.colour,
|
|
1218
|
+
bold: !(current === null || current === void 0 ? void 0 : current.bold) || undefined,
|
|
1219
|
+
});
|
|
1220
|
+
} }, "B"),
|
|
1221
|
+
spaceModel_1.CHART_HIGHLIGHT_COLOURS.map(function (eachColour) { return (react_1.default.createElement("button", { key: eachColour, type: "button", "aria-label": eachColour, className: "h-4 w-4 rounded-full ".concat(HIGHLIGHT_DOT_CLASS[eachColour], " ").concat((current === null || current === void 0 ? void 0 : current.colour) === eachColour
|
|
1222
|
+
? "ring-2 ring-gray-400 ring-offset-1"
|
|
1223
|
+
: ""), onClick: function () {
|
|
1224
|
+
return handleSetHighlight(item, row, {
|
|
1225
|
+
colour: (current === null || current === void 0 ? void 0 : current.colour) === eachColour ? undefined : eachColour,
|
|
1226
|
+
bold: current === null || current === void 0 ? void 0 : current.bold,
|
|
1227
|
+
});
|
|
1228
|
+
} })); }),
|
|
1229
|
+
react_1.default.createElement("button", { type: "button", className: "ml-1 text-xs text-gray-500 hover:text-gray-800", onClick: function () { return handleSetHighlight(item, row, null); } }, "Clear")));
|
|
1230
|
+
};
|
|
1231
|
+
// INFO: a row's name — in the primary colour when it opens records, and with
|
|
1232
|
+
// the highlight control beside it for an editor
|
|
1233
|
+
var renderRowLabel = function (item, row, isClickable) {
|
|
1234
|
+
var isBarOpen = (highlightBar === null || highlightBar === void 0 ? void 0 : highlightBar.chart) === item.title && (highlightBar === null || highlightBar === void 0 ? void 0 : highlightBar.row) === row;
|
|
1235
|
+
return (react_1.default.createElement("span", { className: "relative inline-flex items-center gap-1.5" },
|
|
1236
|
+
react_1.default.createElement("span", { className: isClickable
|
|
1237
|
+
? "text-primary-600 hover:underline"
|
|
1238
|
+
: "" }, row),
|
|
1239
|
+
props.onHighlightRow && row !== chartResults_1.OTHERS_LABEL && (react_1.default.createElement("button", { type: "button", "aria-label": "Highlight ".concat(row), className: "text-gray-400 hover:text-gray-700 ".concat(isBarOpen ? "" : "sm:opacity-0 sm:group-hover:opacity-100"), onClick: function (e) {
|
|
1240
|
+
e.stopPropagation();
|
|
1241
|
+
setHighlightBar(isBarOpen ? null : { chart: item.title, row: row });
|
|
1242
|
+
} },
|
|
1243
|
+
react_1.default.createElement(outline_1.SwatchIcon, { className: "h-3.5 w-3.5" }))),
|
|
1244
|
+
isBarOpen && renderHighlightBar(item, row)));
|
|
1245
|
+
};
|
|
1246
|
+
var renderChange = function (item, change) {
|
|
1247
|
+
if (!change)
|
|
1248
|
+
return "–";
|
|
1249
|
+
var arrow = change.direction === "up" ? "▲" : change.direction === "down" ? "▼" : "";
|
|
1250
|
+
var isGood = item.higherIsBetter === undefined || change.direction === "flat"
|
|
1251
|
+
? undefined
|
|
1252
|
+
: (change.direction === "up") === item.higherIsBetter;
|
|
1253
|
+
var colour = isGood === undefined
|
|
1254
|
+
? "text-gray-500"
|
|
1255
|
+
: isGood
|
|
1256
|
+
? "text-green-600"
|
|
1257
|
+
: "text-red-600";
|
|
1258
|
+
var amount = change.percent === null
|
|
1259
|
+
? change.direction === "flat"
|
|
1260
|
+
? "0%"
|
|
1261
|
+
: "new"
|
|
1262
|
+
: "".concat(Math.abs(change.percent), "%");
|
|
1263
|
+
return (react_1.default.createElement("span", { className: "whitespace-nowrap ".concat(colour) },
|
|
1264
|
+
arrow ? "".concat(arrow, " ") : "",
|
|
1265
|
+
amount));
|
|
1266
|
+
};
|
|
1149
1267
|
// INFO: the same points and segments turned on their side — one column per
|
|
1150
|
-
// date bucket, one row per segment, each row and each date totalled
|
|
1268
|
+
// date bucket, one row per segment, each row and each date totalled, with
|
|
1269
|
+
// the last complete bucket against the one before it in Change
|
|
1151
1270
|
var renderDatesAcrossTable = function (item, points, segments, handleFormat, showTotal) {
|
|
1152
1271
|
var _a, _b, _c, _d;
|
|
1153
1272
|
var canDrill = !!props.onDrillDown;
|
|
@@ -1158,33 +1277,50 @@ function DataGraph(props) {
|
|
|
1158
1277
|
var rows = segments !== null && segments !== void 0 ? segments : [
|
|
1159
1278
|
{ name: measureLabel, data: points.map(function (eachPoint) { return eachPoint.y; }) },
|
|
1160
1279
|
];
|
|
1280
|
+
// INFO: a bucket whose end is still ahead is under way — its count is a
|
|
1281
|
+
// part-period, so it is marked and left out of Change
|
|
1282
|
+
var now = Date.now();
|
|
1283
|
+
var isComplete = points.map(function (eachPoint) {
|
|
1284
|
+
var _a, _b, _c;
|
|
1285
|
+
var end = ((_c = (_b = (_a = eachPoint.query) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.value) !== null && _c !== void 0 ? _c : [])[1];
|
|
1286
|
+
return !end || (0, dayjs_1.default)(end).valueOf() <= now;
|
|
1287
|
+
});
|
|
1288
|
+
var showChange = points.length > 2 && !item.cumulative;
|
|
1161
1289
|
// INFO: the row names stay in view while the dates scroll sideways
|
|
1162
|
-
var pinnedClass = "sticky left-0 z-10
|
|
1290
|
+
var pinnedClass = "sticky left-0 z-10";
|
|
1163
1291
|
var handleRowTotal = function (data) {
|
|
1164
1292
|
return Math.round(data.reduce(function (sum, each) { return sum + each; }, 0) * 100) / 100;
|
|
1165
1293
|
};
|
|
1166
1294
|
return (react_1.default.createElement("table", { className: "min-w-full divide-y divide-gray-200 text-sm" },
|
|
1167
1295
|
react_1.default.createElement("thead", null,
|
|
1168
1296
|
react_1.default.createElement("tr", null,
|
|
1169
|
-
react_1.default.createElement("th", { className: pinnedClass }),
|
|
1170
|
-
points.map(function (eachPoint, pointIndex) { return (react_1.default.createElement("th", { key: "".concat(pointIndex, "-").concat(eachPoint.x), className: "whitespace-nowrap py-2 pl-4 text-right font-medium
|
|
1171
|
-
? "cursor-pointer
|
|
1172
|
-
: ""), onClick: function () {
|
|
1297
|
+
react_1.default.createElement("th", { className: "".concat(pinnedClass, " bg-white") }),
|
|
1298
|
+
points.map(function (eachPoint, pointIndex) { return (react_1.default.createElement("th", { key: "".concat(pointIndex, "-").concat(eachPoint.x), className: "whitespace-nowrap py-2 pl-4 text-right font-medium ".concat(canDrill && eachPoint.query
|
|
1299
|
+
? "cursor-pointer text-primary-600 hover:underline"
|
|
1300
|
+
: "text-gray-500"), onClick: function () {
|
|
1173
1301
|
return eachPoint.query && handleDrillDown(item, eachPoint);
|
|
1174
|
-
} },
|
|
1175
|
-
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
|
|
1180
|
-
|
|
1181
|
-
|
|
1182
|
-
|
|
1302
|
+
} },
|
|
1303
|
+
eachPoint.x,
|
|
1304
|
+
!isComplete[pointIndex] && (react_1.default.createElement("span", { className: "block text-xs font-normal text-gray-400" }, "so far")))); }),
|
|
1305
|
+
showTotal && (react_1.default.createElement("th", { className: "py-2 pl-4 text-right font-medium text-gray-500" }, "Total")),
|
|
1306
|
+
showChange && (react_1.default.createElement("th", { className: "py-2 pl-4 text-right font-medium text-gray-500" }, "Change")))),
|
|
1307
|
+
react_1.default.createElement("tbody", { className: "divide-y divide-gray-100" }, rows.map(function (eachRow) {
|
|
1308
|
+
var highlight = handleHighlightClass(item, eachRow.name);
|
|
1309
|
+
return (react_1.default.createElement("tr", { key: eachRow.name, className: "group ".concat(highlight.row), "data-testid": "chart-row-".concat(eachRow.name) },
|
|
1310
|
+
react_1.default.createElement("td", { className: "".concat(pinnedClass, " ").concat(highlight.label, " whitespace-nowrap py-2 pr-4 ").concat(highlight.row ? "" : "text-gray-600") }, renderRowLabel(item, eachRow.name, false)),
|
|
1311
|
+
points.map(function (eachPoint, pointIndex) {
|
|
1312
|
+
var _a;
|
|
1313
|
+
return (react_1.default.createElement("td", { key: "".concat(pointIndex, "-").concat(eachPoint.x), className: "py-2 pl-4 text-right ".concat(highlight.row ? "" : "text-gray-700") }, handleFormat((_a = eachRow.data[pointIndex]) !== null && _a !== void 0 ? _a : 0)));
|
|
1314
|
+
}),
|
|
1315
|
+
showTotal && (react_1.default.createElement("td", { className: "py-2 pl-4 text-right font-medium text-gray-900" }, handleFormat(handleRowTotal(eachRow.data)))),
|
|
1316
|
+
showChange && (react_1.default.createElement("td", { className: "py-2 pl-4 text-right" }, renderChange(item, (0, chartResults_1.handleChangeSummary)(eachRow.data, isComplete))))));
|
|
1317
|
+
})),
|
|
1183
1318
|
showTotal && segments && (react_1.default.createElement("tfoot", null,
|
|
1184
1319
|
react_1.default.createElement("tr", { className: "border-t border-gray-300" },
|
|
1185
|
-
react_1.default.createElement("td", { className: "".concat(pinnedClass, " py-2 pr-4 font-semibold text-gray-900") }, "Total"),
|
|
1320
|
+
react_1.default.createElement("td", { className: "".concat(pinnedClass, " bg-white py-2 pr-4 font-semibold text-gray-900") }, "Total"),
|
|
1186
1321
|
points.map(function (eachPoint, pointIndex) { return (react_1.default.createElement("td", { key: "".concat(pointIndex, "-").concat(eachPoint.x), className: "py-2 pl-4 text-right font-semibold text-gray-900" }, handleFormat(eachPoint.y))); }),
|
|
1187
|
-
react_1.default.createElement("td", { className: "py-2 pl-4 text-right font-semibold text-gray-900" }, handleFormat(handleRowTotal(points.map(function (eachPoint) { return eachPoint.y; }))))
|
|
1322
|
+
react_1.default.createElement("td", { className: "py-2 pl-4 text-right font-semibold text-gray-900" }, handleFormat(handleRowTotal(points.map(function (eachPoint) { return eachPoint.y; })))),
|
|
1323
|
+
showChange && (react_1.default.createElement("td", { className: "py-2 pl-4 text-right font-semibold" }, renderChange(item, (0, chartResults_1.handleChangeSummary)(points.map(function (eachPoint) { return eachPoint.y; }), isComplete)))))))));
|
|
1188
1324
|
};
|
|
1189
1325
|
var renderTableChart = function (item, points, index, customDate, segments) {
|
|
1190
1326
|
var total = points.reduce(function (sum, eachPoint) { return sum + eachPoint.y; }, 0);
|
|
@@ -1203,17 +1339,19 @@ function DataGraph(props) {
|
|
|
1203
1339
|
react_1.default.createElement("th", null),
|
|
1204
1340
|
segments.map(function (eachSegment) { return (react_1.default.createElement("th", { key: eachSegment.name, className: "py-2 pl-4 text-right font-medium text-gray-500" }, eachSegment.name)); }),
|
|
1205
1341
|
react_1.default.createElement("th", { className: "py-2 pl-4 text-right font-medium text-gray-500" }, "Total")))),
|
|
1206
|
-
react_1.default.createElement("tbody", { className: "divide-y divide-gray-100" }, points.map(function (eachPoint, pointIndex) {
|
|
1207
|
-
|
|
1208
|
-
|
|
1209
|
-
|
|
1210
|
-
|
|
1211
|
-
|
|
1212
|
-
|
|
1213
|
-
|
|
1214
|
-
|
|
1215
|
-
|
|
1216
|
-
|
|
1342
|
+
react_1.default.createElement("tbody", { className: "divide-y divide-gray-100" }, points.map(function (eachPoint, pointIndex) {
|
|
1343
|
+
var highlight = handleHighlightClass(item, eachPoint.x);
|
|
1344
|
+
var isClickable = canDrill && !!eachPoint.query;
|
|
1345
|
+
return (react_1.default.createElement("tr", { key: "".concat(pointIndex, "-").concat(eachPoint.x), "data-testid": "chart-row-".concat(eachPoint.x), className: "group ".concat(highlight.row, " ").concat(isClickable ? "cursor-pointer hover:bg-gray-50" : ""), onClick: function () {
|
|
1346
|
+
return eachPoint.query && handleDrillDown(item, eachPoint);
|
|
1347
|
+
} },
|
|
1348
|
+
react_1.default.createElement("td", { className: "py-2 pr-4 ".concat(highlight.row ? "" : "text-gray-600") }, renderRowLabel(item, eachPoint.x, isClickable)), segments === null || segments === void 0 ? void 0 :
|
|
1349
|
+
segments.map(function (eachSegment) {
|
|
1350
|
+
var _a;
|
|
1351
|
+
return (react_1.default.createElement("td", { key: eachSegment.name, className: "py-2 pl-4 text-right text-gray-700" }, handleFormat((_a = eachSegment.data[pointIndex]) !== null && _a !== void 0 ? _a : 0)));
|
|
1352
|
+
}),
|
|
1353
|
+
react_1.default.createElement("td", { className: "py-2 pl-4 text-right font-medium text-gray-900" }, handleFormat(eachPoint.y))));
|
|
1354
|
+
})),
|
|
1217
1355
|
showTotal && !isPercent && (react_1.default.createElement("tfoot", null,
|
|
1218
1356
|
react_1.default.createElement("tr", { className: "border-t border-gray-300" },
|
|
1219
1357
|
react_1.default.createElement("td", { className: "py-2 pr-4 font-semibold text-gray-900" }, "Total"), segments === null || segments === void 0 ? void 0 :
|
|
@@ -1246,6 +1384,17 @@ function DataGraph(props) {
|
|
|
1246
1384
|
var renderEachChart = function (eachChart, index) {
|
|
1247
1385
|
var _a;
|
|
1248
1386
|
var spanClass = (_a = GRID_SPAN_CLASS[eachChart.gridSize]) !== null && _a !== void 0 ? _a : "col-span-1";
|
|
1387
|
+
var hasNumbers = graphSeries[eachChart.title] !== undefined ||
|
|
1388
|
+
graphAnalyticsData[eachChart.title] !== undefined;
|
|
1389
|
+
var isReloading = !!reloading[eachChart.title] && hasNumbers;
|
|
1390
|
+
// INFO: the wrapper is always drawn and only its classes change, so the
|
|
1391
|
+
// chart inside is not remounted — and redrawn — as a reload starts and ends
|
|
1392
|
+
return (react_1.default.createElement("div", { className: "".concat(spanClass, " relative"), "aria-busy": isReloading, "data-testid": isReloading ? "chart-reloading" : undefined },
|
|
1393
|
+
react_1.default.createElement("div", { className: "h-full ".concat(isReloading ? "pointer-events-none opacity-50" : "") }, renderLoadedChart(eachChart, index, spanClass)),
|
|
1394
|
+
isReloading && (react_1.default.createElement("div", { className: "absolute right-3 top-3" },
|
|
1395
|
+
react_1.default.createElement(loading_1.Loading, { sizeClassName: "h-5 w-5" })))));
|
|
1396
|
+
};
|
|
1397
|
+
var renderLoadedChart = function (eachChart, index, spanClass) {
|
|
1249
1398
|
var error = graphAnalyticsError[eachChart.title];
|
|
1250
1399
|
if (error)
|
|
1251
1400
|
return renderChartError(eachChart, error, spanClass);
|