@devgateway/dvz-ui-react 1.6.19 → 1.7.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/_virtual/_commonjsHelpers.js +1 -0
- package/dist/cjs/_virtual/debounce.js +1 -0
- package/dist/cjs/api/commons.js +1 -1
- package/dist/cjs/embeddable/big-filter/BigNumberGroup.js +1 -0
- package/dist/cjs/embeddable/big-filter/BigNumberItem.js +1 -0
- package/dist/cjs/embeddable/big-filter/DataProvider.js +1 -0
- package/dist/cjs/embeddable/big-filter/index.js +1 -0
- package/dist/cjs/embeddable/big-number/index.js +1 -1
- package/dist/cjs/embeddable/big-number-trend/Alternative.js +1 -0
- package/dist/cjs/embeddable/big-number-trend/Classic.js +1 -0
- package/dist/cjs/embeddable/big-number-trend/index.js +1 -1
- package/dist/cjs/embeddable/chart/Bar.js +1 -1
- package/dist/cjs/embeddable/chart/Line.js +1 -1
- package/dist/cjs/embeddable/chart/data/Bar.js +1 -1
- package/dist/cjs/embeddable/chart/index.js +1 -1
- package/dist/cjs/embeddable/d3Map/BaseLayer.js +1 -1
- package/dist/cjs/embeddable/d3Map/BreaksStyles.js +1 -1
- package/dist/cjs/embeddable/d3Map/DataLayer.js +1 -1
- package/dist/cjs/embeddable/d3Map/FlowLayer.js +1 -1
- package/dist/cjs/embeddable/d3Map/GradientColors.js +1 -1
- package/dist/cjs/embeddable/d3Map/LatLongLayer.js +1 -1
- package/dist/cjs/embeddable/d3Map/Layer.js +1 -1
- package/dist/cjs/embeddable/d3Map/Legends.js +1 -1
- package/dist/cjs/embeddable/d3Map/ProjectedContainer.js +1 -1
- package/dist/cjs/embeddable/d3Map/Utils.js +1 -1
- package/dist/cjs/embeddable/d3Map/ZoomControl.js +1 -1
- package/dist/cjs/embeddable/d3Map/index.js +1 -1
- package/dist/cjs/embeddable/data/CategoriesProvider.js +1 -1
- package/dist/cjs/embeddable/data/D3MapDataConsumer.js +1 -0
- package/dist/cjs/embeddable/data/D3MapDataProvider.js +1 -0
- package/dist/cjs/embeddable/data/DataContext.js +1 -1
- package/dist/cjs/embeddable/data/DataProvider.js +1 -1
- package/dist/cjs/embeddable/data-paragraph/index.js +1 -0
- package/dist/cjs/embeddable/download/dom-to-image.js +2 -2
- package/dist/cjs/embeddable/download/index.js +5 -5
- package/dist/cjs/embeddable/filter/index.js +1 -1
- package/dist/cjs/embeddable/grouped-bars/GroupedBars.js +1 -0
- package/dist/cjs/embeddable/grouped-bars/index.js +1 -0
- package/dist/cjs/embeddable/index.js +1 -1
- package/dist/cjs/embeddable/reducers/data-api.js +1 -1
- package/dist/cjs/embeddable/reducers/data.js +1 -1
- package/dist/cjs/embeddable/utils/common.js +1 -1
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/layout/Customizer.js +1 -1
- package/dist/cjs/layout/PreviewComponent.js +1 -1
- package/dist/cjs/layout/containers/SlugPostContainer.js +1 -1
- package/dist/cjs/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Symbol.js +1 -0
- package/dist/cjs/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseGetTag.js +1 -0
- package/dist/cjs/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseTrim.js +1 -0
- package/dist/cjs/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_freeGlobal.js +1 -0
- package/dist/cjs/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getRawTag.js +1 -0
- package/dist/cjs/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_objectToString.js +1 -0
- package/dist/cjs/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_root.js +1 -0
- package/dist/cjs/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_trimmedEndIndex.js +1 -0
- package/dist/cjs/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/debounce.js +1 -0
- package/dist/cjs/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isObject.js +1 -0
- package/dist/cjs/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isObjectLike.js +1 -0
- package/dist/cjs/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isSymbol.js +1 -0
- package/dist/cjs/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/now.js +1 -0
- package/dist/cjs/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/toNumber.js +1 -0
- package/dist/cjs/styles.css +1 -1
- package/dist/esm/_virtual/_commonjsHelpers.js +8 -0
- package/dist/esm/_virtual/debounce.js +7 -0
- package/dist/esm/api/commons.js +26 -17
- package/dist/esm/embeddable/big-filter/BigNumberGroup.js +129 -0
- package/dist/esm/embeddable/big-filter/BigNumberItem.js +107 -0
- package/dist/esm/embeddable/big-filter/DataProvider.js +53 -0
- package/dist/esm/embeddable/big-filter/index.js +130 -0
- package/dist/esm/embeddable/big-number/index.js +154 -102
- package/dist/esm/embeddable/big-number-trend/Alternative.js +227 -0
- package/dist/esm/embeddable/big-number-trend/Classic.js +190 -0
- package/dist/esm/embeddable/big-number-trend/index.js +12 -147
- package/dist/esm/embeddable/chart/Bar.js +450 -395
- package/dist/esm/embeddable/chart/Line.js +216 -184
- package/dist/esm/embeddable/chart/data/Bar.js +16 -18
- package/dist/esm/embeddable/chart/index.js +168 -162
- package/dist/esm/embeddable/d3Map/BaseLayer.js +25 -28
- package/dist/esm/embeddable/d3Map/BreaksStyles.js +17 -10
- package/dist/esm/embeddable/d3Map/DataLayer.js +290 -289
- package/dist/esm/embeddable/d3Map/FlowLayer.js +122 -136
- package/dist/esm/embeddable/d3Map/GradientColors.js +27 -20
- package/dist/esm/embeddable/d3Map/LatLongLayer.js +62 -62
- package/dist/esm/embeddable/d3Map/Layer.js +31 -27
- package/dist/esm/embeddable/d3Map/Legends.js +204 -190
- package/dist/esm/embeddable/d3Map/ProjectedContainer.js +1 -3
- package/dist/esm/embeddable/d3Map/Utils.js +12 -8
- package/dist/esm/embeddable/d3Map/ZoomControl.js +41 -41
- package/dist/esm/embeddable/d3Map/index.js +135 -117
- package/dist/esm/embeddable/data/CategoriesProvider.js +39 -26
- package/dist/esm/embeddable/data/D3MapDataConsumer.js +7 -0
- package/dist/esm/embeddable/data/D3MapDataProvider.js +83 -0
- package/dist/esm/embeddable/data/DataContext.js +2 -2
- package/dist/esm/embeddable/data/DataProvider.js +125 -56
- package/dist/esm/embeddable/data-paragraph/index.js +168 -0
- package/dist/esm/embeddable/download/dom-to-image.js +163 -148
- package/dist/esm/embeddable/download/index.js +102 -76
- package/dist/esm/embeddable/filter/index.js +335 -298
- package/dist/esm/embeddable/grouped-bars/GroupedBars.js +549 -0
- package/dist/esm/embeddable/grouped-bars/index.js +16 -0
- package/dist/esm/embeddable/index.js +33 -30
- package/dist/esm/embeddable/reducers/data-api.js +44 -35
- package/dist/esm/embeddable/reducers/data.js +141 -182
- package/dist/esm/embeddable/utils/common.js +3 -3
- package/dist/esm/index.js +111 -94
- package/dist/esm/layout/Customizer.js +10 -9
- package/dist/esm/layout/PreviewComponent.js +23 -26
- package/dist/esm/layout/containers/SlugPostContainer.js +9 -8
- package/dist/esm/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_Symbol.js +11 -0
- package/dist/esm/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseGetTag.js +16 -0
- package/dist/esm/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_baseTrim.js +14 -0
- package/dist/esm/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_freeGlobal.js +11 -0
- package/dist/esm/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_getRawTag.js +21 -0
- package/dist/esm/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_objectToString.js +13 -0
- package/dist/esm/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_root.js +11 -0
- package/dist/esm/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/_trimmedEndIndex.js +15 -0
- package/dist/esm/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/debounce.js +60 -0
- package/dist/esm/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isObject.js +13 -0
- package/dist/esm/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isObjectLike.js +12 -0
- package/dist/esm/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/isSymbol.js +15 -0
- package/dist/esm/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/now.js +13 -0
- package/dist/esm/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/toNumber.js +28 -0
- package/dist/esm/styles.css +1 -1
- package/dist/types/api/commons.d.ts +4 -1
- package/dist/types/embeddable/big-filter/BigNumberGroup.d.ts +3 -0
- package/dist/types/embeddable/big-filter/BigNumberItem.d.ts +2 -0
- package/dist/types/embeddable/big-filter/DataProvider.d.ts +7 -0
- package/dist/types/embeddable/big-filter/index.d.ts +5 -0
- package/dist/types/embeddable/big-number-trend/Alternative.d.ts +5 -0
- package/dist/types/embeddable/big-number-trend/Classic.d.ts +5 -0
- package/dist/types/embeddable/big-number-trend/index.d.ts +2 -4
- package/dist/types/embeddable/chart/Bar.d.ts +3 -0
- package/dist/types/embeddable/chart/Line.d.ts +6 -0
- package/dist/types/embeddable/d3Map/GradientColors.d.ts +6 -2
- package/dist/types/embeddable/d3Map/Layer.d.ts +1 -1
- package/dist/types/embeddable/d3Map/Utils.d.ts +1 -1
- package/dist/types/embeddable/data/D3MapDataProvider.d.ts +7 -0
- package/dist/types/embeddable/data/index.d.ts +6 -0
- package/dist/types/embeddable/data-paragraph/index.d.ts +5 -0
- package/dist/types/embeddable/filter/index.d.ts +13 -1
- package/dist/types/embeddable/grouped-bars/GroupedBars.d.ts +5 -0
- package/dist/types/embeddable/grouped-bars/index.d.ts +3 -0
- package/dist/types/embeddable/reducers/data-api.d.ts +5 -0
- package/dist/types/embeddable/reducers/data.d.ts +16 -9
- package/dist/types/embeddable/utils/index.d.ts +1 -0
- package/dist/types/embeddable/utils/parseUtils.d.ts +0 -6
- package/dist/types/index.d.ts +6 -0
- package/dist/types/layout/Customizer.d.ts +1 -0
- package/dist/types/layout/containers/PageContainer.d.ts +8 -0
- package/dist/types/layout/containers/PostContainer.d.ts +0 -0
- package/dist/types/layout/index.d.ts +1 -0
- package/dist/types/utils/Logger.d.ts +1 -0
- package/package.json +4 -3
- /package/dist/types/embeddable/data/{DataConsumerMap.d.ts → D3MapDataConsumer.d.ts} +0 -0
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import { jsx as E, jsxs as G } from "react/jsx-runtime";
|
|
2
|
+
import { useState as X, useRef as ee, useEffect as T } from "react";
|
|
3
|
+
import { Container as te, Grid as I } from "semantic-ui-react";
|
|
4
|
+
import { BigNumberItem as re } from "./BigNumberItem.js";
|
|
5
|
+
import { decode as le } from "../utils/parseUtils.js";
|
|
6
|
+
import ne from "lodash";
|
|
7
|
+
const pe = (_) => {
|
|
8
|
+
const {
|
|
9
|
+
group: s,
|
|
10
|
+
app: r,
|
|
11
|
+
parent: i,
|
|
12
|
+
nColumns: k,
|
|
13
|
+
height: y,
|
|
14
|
+
blockName: m,
|
|
15
|
+
measures: p,
|
|
16
|
+
dimension1: n,
|
|
17
|
+
dimension2: B,
|
|
18
|
+
data: o,
|
|
19
|
+
numberFontSize: L,
|
|
20
|
+
backgroundColor: M,
|
|
21
|
+
numberColor: j,
|
|
22
|
+
labelColor: P,
|
|
23
|
+
unselectedBackgroundColor: D,
|
|
24
|
+
unselectedNumberColor: O,
|
|
25
|
+
unselectedLabelColor: w,
|
|
26
|
+
labelFontSize: z,
|
|
27
|
+
intl: K,
|
|
28
|
+
onUnSetFilter: d,
|
|
29
|
+
onSetFilter: a,
|
|
30
|
+
appliedFilters: g,
|
|
31
|
+
///self applied filters
|
|
32
|
+
hasParentFilters: h,
|
|
33
|
+
//util flag
|
|
34
|
+
effectiveFilter: oe,
|
|
35
|
+
//all filter toghether
|
|
36
|
+
parentAppliedFilters: f,
|
|
37
|
+
//parent applied filter
|
|
38
|
+
sort: U,
|
|
39
|
+
order: Y,
|
|
40
|
+
showZeroValues: Z
|
|
41
|
+
} = _, u = p[r] ? Object.keys(p[r]).find((e) => p[r][e].selected) : null, N = m, [F, b] = X([]), $ = p[r] && p[r].format ? p[r].format : {
|
|
42
|
+
style: "percent",
|
|
43
|
+
minimumFractionDigits: 1,
|
|
44
|
+
maximumFractionDigits: 1
|
|
45
|
+
}, q = (e, t) => {
|
|
46
|
+
const l = e[u], c = t[u], R = Y === "asc" ? 1 : -1;
|
|
47
|
+
if (U === "alpha") {
|
|
48
|
+
const C = S(e.value) || "", A = S(t.value) || "";
|
|
49
|
+
return R * C.localeCompare(A);
|
|
50
|
+
} else {
|
|
51
|
+
const C = parseFloat(l) || 0, A = parseFloat(c) || 0;
|
|
52
|
+
return R * (C - A);
|
|
53
|
+
}
|
|
54
|
+
}, S = (e) => {
|
|
55
|
+
var l;
|
|
56
|
+
if (!o || !o.metadata || !o.metadata.types) return null;
|
|
57
|
+
const t = o.metadata.types.filter((c) => c.dimension == n);
|
|
58
|
+
return t && t.length > 0 ? (l = t[0].items.filter((c) => c.code == e)[0]) == null ? void 0 : l.value : null;
|
|
59
|
+
}, H = ee(
|
|
60
|
+
ne.debounce((e, t) => {
|
|
61
|
+
e.length == 0 ? (a({ app: r, group: s, parent: i, param: t, value: [] }), d({ app: r, group: m, parent: i, param: t })) : (a({ app: r, group: s, param: t, parent: i, value: [...e] }), a({ app: r, group: m, param: t, parent: i, value: [...e] }));
|
|
62
|
+
}, 400)
|
|
63
|
+
// 400ms delay
|
|
64
|
+
).current, J = (e, t) => {
|
|
65
|
+
if (h && (!f || f.length === 0)) return;
|
|
66
|
+
let l = [...F];
|
|
67
|
+
l.includes(e) ? l = l.filter((c) => c !== e) : l.push(e), b(l), H(l, t);
|
|
68
|
+
}, v = o.children.filter((e) => Z === "true" ? e[u] !== null && e[u] !== void 0 : e[u] && e[u] > 0).sort(q);
|
|
69
|
+
T(() => {
|
|
70
|
+
a({ app: r, group: s, param: n, value: [Number.MIN_SAFE_INTEGER] }), d({ app: r, group: m, parent: i, param: n });
|
|
71
|
+
}, []), o.children.map((e) => e.value);
|
|
72
|
+
const x = v.map((e) => e.value);
|
|
73
|
+
T(() => {
|
|
74
|
+
const e = g ? g.filter((t) => !x.includes(t)) : [];
|
|
75
|
+
if (h && f.length == 0)
|
|
76
|
+
console.log(m, "RESETING FILTER; PARENT IS EMPTY"), a({ app: r, group: s, param: n, value: [Number.MIN_SAFE_INTEGER] }), d({ app: r, group: N, param: n }), b([]);
|
|
77
|
+
else if (e.length > 0) {
|
|
78
|
+
const t = g.filter((l) => x.indexOf(l) > -1);
|
|
79
|
+
t.length == 0 ? (b([]), a({ app: r, group: s, param: n, value: [Number.MIN_SAFE_INTEGER] }), d({ app: r, group: N, param: n })) : (a({ app: r, group: s, param: n, value: t }), a({ app: r, group: N, parent: i, param: n, value: t }));
|
|
80
|
+
} else
|
|
81
|
+
b(g);
|
|
82
|
+
}, [o]);
|
|
83
|
+
const Q = F ? F.length : 0, V = v ? v.length : 0, W = h && (!f || f.length === 0);
|
|
84
|
+
return n == null ? /* @__PURE__ */ E("h2", { children: "Select a dimension to start configuring the component" }) : /* @__PURE__ */ E(te, { fluid: !0, style: { padding: "0px", margin: "0px", height: `${y}px` }, children: /* @__PURE__ */ G(I, { fluid: !0, celled: !0, stackable: !0, columns: k, style: { border: "1px solid #EEE" }, children: [
|
|
85
|
+
/* @__PURE__ */ E(I.Row, { children: /* @__PURE__ */ G(I.Column, { width: 16, textAlign: "right", children: [
|
|
86
|
+
"Selected ",
|
|
87
|
+
Q,
|
|
88
|
+
"/",
|
|
89
|
+
V
|
|
90
|
+
] }) }),
|
|
91
|
+
o.children && v.map((e, t) => /* @__PURE__ */ E(
|
|
92
|
+
re,
|
|
93
|
+
{
|
|
94
|
+
idx: t,
|
|
95
|
+
child: e,
|
|
96
|
+
isDisabled: W,
|
|
97
|
+
selectedKey: u,
|
|
98
|
+
appliedFilters: F,
|
|
99
|
+
dimension1: n,
|
|
100
|
+
dimension2: B,
|
|
101
|
+
app: r,
|
|
102
|
+
group: s,
|
|
103
|
+
parent: i,
|
|
104
|
+
blockName: m,
|
|
105
|
+
hasParentFilters: h,
|
|
106
|
+
onSetFilter: (l) => {
|
|
107
|
+
},
|
|
108
|
+
handleClick: () => J(e.value, e.type),
|
|
109
|
+
onUnSetFilter: d,
|
|
110
|
+
intl: K,
|
|
111
|
+
numberFontSize: L,
|
|
112
|
+
labelFontSize: z,
|
|
113
|
+
backgroundColor: M,
|
|
114
|
+
numberColor: j,
|
|
115
|
+
labelColor: P,
|
|
116
|
+
unselectedBackgroundColor: D,
|
|
117
|
+
unselectedNumberColor: O,
|
|
118
|
+
unselectedLabelColor: w,
|
|
119
|
+
formatObject: $,
|
|
120
|
+
decode: le,
|
|
121
|
+
getLabel: S
|
|
122
|
+
},
|
|
123
|
+
t
|
|
124
|
+
))
|
|
125
|
+
] }) });
|
|
126
|
+
};
|
|
127
|
+
export {
|
|
128
|
+
pe as default
|
|
129
|
+
};
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { jsxs as $, jsx as a } from "react/jsx-runtime";
|
|
2
|
+
import "react";
|
|
3
|
+
import { Grid as j } from "semantic-ui-react";
|
|
4
|
+
function E(t) {
|
|
5
|
+
if (typeof t == "boolean") return t;
|
|
6
|
+
if (typeof t != "string") return !!t;
|
|
7
|
+
switch (t.trim().toLowerCase()) {
|
|
8
|
+
case "true":
|
|
9
|
+
case "yes":
|
|
10
|
+
case "1":
|
|
11
|
+
case "on":
|
|
12
|
+
return !0;
|
|
13
|
+
case "false":
|
|
14
|
+
case "no":
|
|
15
|
+
case "0":
|
|
16
|
+
case "off":
|
|
17
|
+
return !1;
|
|
18
|
+
default:
|
|
19
|
+
return !1;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
const q = (t) => {
|
|
23
|
+
const {
|
|
24
|
+
isDisabled: n,
|
|
25
|
+
// 1. ADDED: New prop to check if we are locked
|
|
26
|
+
child: r,
|
|
27
|
+
selectedKey: u,
|
|
28
|
+
appliedFilters: p,
|
|
29
|
+
dimension1: I,
|
|
30
|
+
dimension2: d,
|
|
31
|
+
app: v,
|
|
32
|
+
group: A,
|
|
33
|
+
parent: O,
|
|
34
|
+
blockName: G,
|
|
35
|
+
hasParentFilters: K,
|
|
36
|
+
onSetFilter: P,
|
|
37
|
+
onUnSetFilter: R,
|
|
38
|
+
intl: g,
|
|
39
|
+
numberFontSize: b,
|
|
40
|
+
labelFontSize: f,
|
|
41
|
+
backgroundColor: h,
|
|
42
|
+
numberColor: y,
|
|
43
|
+
labelColor: x,
|
|
44
|
+
unselectedBackgroundColor: C,
|
|
45
|
+
unselectedNumberColor: F,
|
|
46
|
+
unselectedLabelColor: S,
|
|
47
|
+
formatObject: i,
|
|
48
|
+
decode: o,
|
|
49
|
+
getLabel: m,
|
|
50
|
+
idx: N
|
|
51
|
+
} = t, l = p.indexOf(r.value) > -1, k = r[u], w = () => {
|
|
52
|
+
n || t.handleClick && t.handleClick();
|
|
53
|
+
}, D = (e) => ({
|
|
54
|
+
cursor: n ? "not-allowed" : "pointer",
|
|
55
|
+
// 3. UPDATED: Change cursor
|
|
56
|
+
color: o(e ? y : F),
|
|
57
|
+
fontSize: b + "px",
|
|
58
|
+
textAlign: "center",
|
|
59
|
+
paddingTop: "3%",
|
|
60
|
+
paddingLeft: "1%",
|
|
61
|
+
paddingRight: "1%",
|
|
62
|
+
paddingBottom: "0px",
|
|
63
|
+
margin: "0px"
|
|
64
|
+
}), z = (e) => ({
|
|
65
|
+
cursor: n ? "not-allowed" : "pointer",
|
|
66
|
+
// 3. UPDATED: Change cursor
|
|
67
|
+
color: o(e ? x : S),
|
|
68
|
+
fontSize: f + "px",
|
|
69
|
+
textAlign: "center",
|
|
70
|
+
padding: "0px",
|
|
71
|
+
margin: "0px"
|
|
72
|
+
}), B = (e) => ({
|
|
73
|
+
border: "1px solid #EEE",
|
|
74
|
+
backgroundColor: o(e ? h : C),
|
|
75
|
+
opacity: n ? 0.4 : 1,
|
|
76
|
+
// 4. ADDED: Dim the card to 40% if disabled
|
|
77
|
+
cursor: n ? "not-allowed" : "pointer"
|
|
78
|
+
// 4. ADDED: Change cursor on the whole cell
|
|
79
|
+
}), L = (e) => {
|
|
80
|
+
const s = {
|
|
81
|
+
style: i.style === "compacted" ? "decimal" : i.style,
|
|
82
|
+
notation: i.style === "compacted" ? "compact" : "standard",
|
|
83
|
+
currency: i.currency,
|
|
84
|
+
minimumFractionDigits: parseInt(i.minimumFractionDigits),
|
|
85
|
+
maximumFractionDigits: parseInt(i.maximumFractionDigits)
|
|
86
|
+
};
|
|
87
|
+
return g.formatNumber(e, { ...s });
|
|
88
|
+
};
|
|
89
|
+
let c = !1;
|
|
90
|
+
return d !== "none" && (c = r && r.children ? r.children.map((e) => E(e.value)).reduce((e, s) => e && s, !0) : !1), /* @__PURE__ */ $(
|
|
91
|
+
j.Column,
|
|
92
|
+
{
|
|
93
|
+
className: `big filter item ${l ? "selected" : "unselected"} ${c ? `highlighted ${d}` : ""} ${n ? "disabled" : ""}`,
|
|
94
|
+
onClick: w,
|
|
95
|
+
style: B(l),
|
|
96
|
+
children: [
|
|
97
|
+
/* @__PURE__ */ a("p", { style: D(l), className: "big-number", children: L(k) }),
|
|
98
|
+
c && /* @__PURE__ */ a("p", { children: /* @__PURE__ */ a("div", { className: "highlighted-pill", children: "Zoonotic" }) }),
|
|
99
|
+
/* @__PURE__ */ a("p", { style: z(l), className: "big-number-label", children: m ? m(r.value) : r.label || r.value })
|
|
100
|
+
]
|
|
101
|
+
},
|
|
102
|
+
N
|
|
103
|
+
);
|
|
104
|
+
};
|
|
105
|
+
export {
|
|
106
|
+
q as BigNumberItem
|
|
107
|
+
};
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { jsx as f } from "react/jsx-runtime";
|
|
2
|
+
import u from "react";
|
|
3
|
+
import { connect as h } from "react-redux";
|
|
4
|
+
import { injectIntl as D } from "react-intl";
|
|
5
|
+
import "semantic-ui-react";
|
|
6
|
+
import { DataContext as S } from "../data/DataContext.js";
|
|
7
|
+
import { getData as I, setData as J } from "../reducers/data.js";
|
|
8
|
+
class v extends u.Component {
|
|
9
|
+
constructor(t) {
|
|
10
|
+
super(t), this.debounces = [];
|
|
11
|
+
}
|
|
12
|
+
componentDidMount() {
|
|
13
|
+
const { app: t, useAncestor: e, parent: s, source: r, store: a, params: i, csv: d, group: n, editing: l, waitForFilters: p = !1 } = this.props;
|
|
14
|
+
this.props.onLoadData({ app: t, source: r, store: a, params: i, group: n });
|
|
15
|
+
}
|
|
16
|
+
componentDidUpdate(t, e, s) {
|
|
17
|
+
const { app: r, filters: a, useAncestor: i, parent: d, source: n, store: l, params: p, csv: c, group: g, editing: x } = this.props;
|
|
18
|
+
(a != t.filters || JSON.stringify(p) != JSON.stringify(t.params) || r != t.app || JSON.stringify(t.source) != JSON.stringify(n) || c != t.csv) && this.props.onLoadData({ app: r, source: n, store: l, params: p, group: g });
|
|
19
|
+
}
|
|
20
|
+
componentWillUnmount() {
|
|
21
|
+
}
|
|
22
|
+
render() {
|
|
23
|
+
const { data: t, style: e, loading: s, time: r, error: a, editing: i } = this.props;
|
|
24
|
+
return /* @__PURE__ */ f(S.Provider, { value: t, children: this.props.children });
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
const m = (o, t, e) => {
|
|
28
|
+
const s = [t], r = o.getIn(["data", "filters-settings", e]) ? o.getIn(["data", "filters-settings", e]).toJS() : null;
|
|
29
|
+
if (r) {
|
|
30
|
+
const a = r[t];
|
|
31
|
+
a && a.parent && s.push(...m(o, a.parent, e));
|
|
32
|
+
}
|
|
33
|
+
return s;
|
|
34
|
+
}, y = (o, t) => {
|
|
35
|
+
const { store: e, readGroup: s, app: r, blockName: a, params: i, parent: d } = t;
|
|
36
|
+
let n = { ...i };
|
|
37
|
+
return d && m(o, d, r).forEach((p) => {
|
|
38
|
+
const c = o.getIn(["data", "filters", r, p]);
|
|
39
|
+
c && c.size > 0 && (n = { ...n, ...c.toJS() });
|
|
40
|
+
}), {
|
|
41
|
+
params: n,
|
|
42
|
+
data: o.getIn(["data", ...e, "data"]),
|
|
43
|
+
filters: o.getIn(["data", "filters", r, s]),
|
|
44
|
+
error: o.getIn(["data", ...e, "error"]),
|
|
45
|
+
loading: o.getIn(["data", ...e, "loading"])
|
|
46
|
+
};
|
|
47
|
+
}, N = {
|
|
48
|
+
onSetData: J,
|
|
49
|
+
onLoadData: I
|
|
50
|
+
}, w = h(y, N)(D(v));
|
|
51
|
+
export {
|
|
52
|
+
w as default
|
|
53
|
+
};
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
import { jsx as a, jsxs as F } from "react/jsx-runtime";
|
|
2
|
+
import { useRef as Z } from "react";
|
|
3
|
+
import { Container as K } from "semantic-ui-react";
|
|
4
|
+
import { connect as Q } from "react-redux";
|
|
5
|
+
import W from "../data/DataConsumer.js";
|
|
6
|
+
import { unsetFilter as X, setFilter as Y } from "../reducers/data.js";
|
|
7
|
+
import { parse as k } from "../utils/parseUtils.js";
|
|
8
|
+
import _ from "./DataProvider.js";
|
|
9
|
+
import ee from "./BigNumberGroup.js";
|
|
10
|
+
const te = (r) => {
|
|
11
|
+
const {
|
|
12
|
+
editing: d = !1,
|
|
13
|
+
unique: o,
|
|
14
|
+
intl: u,
|
|
15
|
+
"data-csv": m = "",
|
|
16
|
+
"data-dimension1": e = "none",
|
|
17
|
+
"data-dimension2": l = "none",
|
|
18
|
+
"data-dvz-proxy-dataset-id": c,
|
|
19
|
+
"data-no-data-message": b = "No data matches your selection",
|
|
20
|
+
"data-view-mode": v = "info",
|
|
21
|
+
"data-height": n,
|
|
22
|
+
"data-app": t,
|
|
23
|
+
"data-measures": f = "{}",
|
|
24
|
+
"data-group": S,
|
|
25
|
+
"data-parent": i,
|
|
26
|
+
"data-block-name": s,
|
|
27
|
+
"data-filters": P = "[]",
|
|
28
|
+
"data-number-font-size": w = 20,
|
|
29
|
+
"data-label-font-size": z = 20,
|
|
30
|
+
"data-unselected-number-color": I = "#000000",
|
|
31
|
+
"data-unselected-label-color": A = "#000000",
|
|
32
|
+
"data-unselected-background-color": B = "#fdfdfdff",
|
|
33
|
+
"data-number-color": N = "#000000",
|
|
34
|
+
"data-label-color": y = "#000000",
|
|
35
|
+
"data-background-color": D = "#ffffffff",
|
|
36
|
+
"data-label": j = "",
|
|
37
|
+
"data-wait-for-filters": G = "false",
|
|
38
|
+
"data-n-columns": M = 4,
|
|
39
|
+
"data-sort": J = "alpha",
|
|
40
|
+
"data-order": E = "asc",
|
|
41
|
+
"data-show-zero-values": U = "false",
|
|
42
|
+
hasParentFilters: $,
|
|
43
|
+
effectiveFilter: q,
|
|
44
|
+
appliedFilters: H,
|
|
45
|
+
parentAppliedFilters: L,
|
|
46
|
+
onSetFilter: O,
|
|
47
|
+
onUnSetFilter: R
|
|
48
|
+
} = r, T = Z(null), V = d ? n - 80 : n - 40, x = { dvzProxyDatasetId: c }, h = k(P) || {};
|
|
49
|
+
h && h.forEach && h.forEach((p) => {
|
|
50
|
+
p.value != null && p.value.filter((C) => C != null && C.toString().trim() != "").length > 0 && (x[p.param] = p.value);
|
|
51
|
+
});
|
|
52
|
+
const g = [];
|
|
53
|
+
return e != "none" && g.push(e), l != "none" && g.push(l), /* @__PURE__ */ a("div", { ref: T, children: /* @__PURE__ */ F(K, { fluid: !0, style: { padding: "0px", margin: "0px", height: `${n}px` }, children: [
|
|
54
|
+
(!t || t === "csv") && /* @__PURE__ */ F("p", { children: [
|
|
55
|
+
/* @__PURE__ */ a("h2", { children: "Big Filter:" }),
|
|
56
|
+
/* @__PURE__ */ a("h4", { children: "Please select an API! " })
|
|
57
|
+
] }),
|
|
58
|
+
t !== "csv" && e == "none" && /* @__PURE__ */ F("p", { children: [
|
|
59
|
+
/* @__PURE__ */ a("h2", { children: "Big Filter:" }),
|
|
60
|
+
/* @__PURE__ */ a("h4", { children: "Please select dimension! " })
|
|
61
|
+
] }),
|
|
62
|
+
t && e != "none" && /* @__PURE__ */ a(
|
|
63
|
+
_,
|
|
64
|
+
{
|
|
65
|
+
style: { height: `${V}px` },
|
|
66
|
+
blockName: s,
|
|
67
|
+
params: x,
|
|
68
|
+
app: t,
|
|
69
|
+
useAncestor: !0,
|
|
70
|
+
parent: i,
|
|
71
|
+
editing: d,
|
|
72
|
+
waitForFilters: G === "true",
|
|
73
|
+
store: [t, o],
|
|
74
|
+
source: g.join("/"),
|
|
75
|
+
children: /* @__PURE__ */ a(W, { noDataMessage: /* @__PURE__ */ a("h1", { children: "No data" }), children: /* @__PURE__ */ a(
|
|
76
|
+
ee,
|
|
77
|
+
{
|
|
78
|
+
nColumns: M,
|
|
79
|
+
parent: i,
|
|
80
|
+
sort: J,
|
|
81
|
+
order: E,
|
|
82
|
+
showZeroValues: U,
|
|
83
|
+
onSetFilter: O,
|
|
84
|
+
onUnSetFilter: R,
|
|
85
|
+
appliedFilters: H,
|
|
86
|
+
height: n,
|
|
87
|
+
intl: u,
|
|
88
|
+
app: t,
|
|
89
|
+
group: S,
|
|
90
|
+
blockName: s,
|
|
91
|
+
measures: k(f),
|
|
92
|
+
label: j,
|
|
93
|
+
numberFontSize: w,
|
|
94
|
+
labelFontSize: z,
|
|
95
|
+
numberColor: N,
|
|
96
|
+
labelColor: y,
|
|
97
|
+
backgroundColor: D,
|
|
98
|
+
unselectedNumberColor: I,
|
|
99
|
+
unselectedLabelColor: A,
|
|
100
|
+
unselectedBackgroundColor: B,
|
|
101
|
+
hasParentFilters: $,
|
|
102
|
+
effectiveFilter: q,
|
|
103
|
+
parentAppliedFilters: L,
|
|
104
|
+
dimension1: e,
|
|
105
|
+
dimension2: l
|
|
106
|
+
}
|
|
107
|
+
) })
|
|
108
|
+
}
|
|
109
|
+
)
|
|
110
|
+
] }) });
|
|
111
|
+
}, ae = (r, d) => {
|
|
112
|
+
const { "data-app": o, "data-group": u, "data-block-name": m, "data-parent": e, "data-dimension1": l } = d, c = u, b = e || m + Math.random(0, 1), v = m, n = r.getIn(["data", "filters", o, v]), t = e != "" && e != null, f = r.getIn(["data", "filters", o, c]) ? r.getIn(["data", "filters", o, c]).toJS() : {};
|
|
113
|
+
let i = (t ? r.getIn(["data", "filters", o, b]) : null) ? Object.values(r.getIn(["data", "filters", o, e]).toJS())[0] : [], s = n ? n.toJS()[l] : [];
|
|
114
|
+
return {
|
|
115
|
+
hasParentFilters: t,
|
|
116
|
+
//util flag
|
|
117
|
+
effectiveFilter: f,
|
|
118
|
+
//all filter toghether
|
|
119
|
+
parentAppliedFilters: i || [],
|
|
120
|
+
//parent applied filter
|
|
121
|
+
appliedFilters: s || []
|
|
122
|
+
//self applied filters
|
|
123
|
+
};
|
|
124
|
+
}, re = {
|
|
125
|
+
onSetFilter: Y,
|
|
126
|
+
onUnSetFilter: X
|
|
127
|
+
}, me = Q(ae, re)(te);
|
|
128
|
+
export {
|
|
129
|
+
me as default
|
|
130
|
+
};
|