@devgateway/dvz-ui-react 1.1.1 → 1.2.1

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.
Files changed (34) hide show
  1. package/dist/cjs/embeddable/big-number/index.js +1 -1
  2. package/dist/cjs/embeddable/chart/Bar.js +1 -1
  3. package/dist/cjs/embeddable/chart/index.js +1 -1
  4. package/dist/cjs/embeddable/d3Map/BaseLayer.js +1 -1
  5. package/dist/cjs/embeddable/d3Map/DataLayer.js +1 -1
  6. package/dist/cjs/embeddable/d3Map/FlowLayer.js +1 -1
  7. package/dist/cjs/embeddable/d3Map/ZoomControl.js +1 -1
  8. package/dist/cjs/embeddable/d3Map/index.js +1 -1
  9. package/dist/cjs/embeddable/posts-with-filters/DropDownFilter.js +1 -0
  10. package/dist/cjs/embeddable/posts-with-filters/Post.js +1 -1
  11. package/dist/cjs/embeddable/posts-with-filters/index.js +1 -1
  12. package/dist/cjs/embeddable/reducers/data-api.js +1 -1
  13. package/dist/cjs/layout/containers/SlugPostContainer.js +1 -1
  14. package/dist/cjs/styles.css +1 -1
  15. package/dist/esm/embeddable/big-number/index.js +92 -85
  16. package/dist/esm/embeddable/chart/Bar.js +128 -123
  17. package/dist/esm/embeddable/chart/index.js +229 -225
  18. package/dist/esm/embeddable/d3Map/BaseLayer.js +40 -27
  19. package/dist/esm/embeddable/d3Map/DataLayer.js +196 -204
  20. package/dist/esm/embeddable/d3Map/FlowLayer.js +104 -101
  21. package/dist/esm/embeddable/d3Map/ZoomControl.js +64 -54
  22. package/dist/esm/embeddable/d3Map/index.js +110 -99
  23. package/dist/esm/embeddable/posts-with-filters/DropDownFilter.js +25 -0
  24. package/dist/esm/embeddable/posts-with-filters/Post.js +49 -24
  25. package/dist/esm/embeddable/posts-with-filters/index.js +120 -119
  26. package/dist/esm/embeddable/reducers/data-api.js +13 -11
  27. package/dist/esm/layout/containers/SlugPostContainer.js +3 -3
  28. package/dist/esm/styles.css +1 -1
  29. package/dist/types/embeddable/chart/Bar.d.ts +2 -0
  30. package/dist/types/embeddable/d3Map/BaseLayer.d.ts +1 -0
  31. package/dist/types/embeddable/d3Map/ZoomControl.d.ts +2 -1
  32. package/dist/types/embeddable/posts-with-filters/DropDownFilter.d.ts +4 -0
  33. package/dist/types/embeddable/posts-with-filters/Post.d.ts +4 -2
  34. package/package.json +4 -2
@@ -1,129 +1,136 @@
1
- import { jsx as o, jsxs as T } from "react/jsx-runtime";
2
- import { useRef as E, useState as O } from "react";
1
+ import { jsx as o, jsxs as E } from "react/jsx-runtime";
2
+ import { useRef as V, useState as T, useEffect as O } from "react";
3
3
  import { Container as q } from "semantic-ui-react";
4
4
  import H from "../data/DataProvider.js";
5
5
  import J from "../data/DataConsumer.js";
6
6
  import "@devgateway/wp-react-lib";
7
7
  import { connect as $ } from "react-redux";
8
- const k = (l) => {
8
+ import { useSpring as k, animated as B } from "@react-spring/web";
9
+ const G = (l) => {
9
10
  const {
10
- editing: a = !1,
11
+ editing: n = !1,
11
12
  unique: c,
12
- intl: e,
13
- childContent: n,
13
+ intl: t,
14
+ childContent: a,
14
15
  "data-csv": f = "",
15
- "data-dvz-proxy-dataset-id": b,
16
- "data-no-data-message": z = "No data matches your selection",
17
- "data-view-mode": g = "info",
16
+ "data-dvz-proxy-dataset-id": g,
17
+ "data-no-data-message": P = "No data matches your selection",
18
+ "data-view-mode": y = "info",
18
19
  "data-height": m,
19
20
  "data-app": d,
20
- "data-measures": h = "{}",
21
- "data-format": u = "{}",
22
- "data-group": i,
23
- "data-filters": p = "[]",
24
- "data-number-font-size": x = 20,
25
- "data-label-font-size": y = 20,
26
- "data-number-color": s = "#000000",
27
- "data-label-color": F = "#000000",
28
- "data-label": j = "",
29
- "data-wait-for-filters": N = "false",
30
- "data-no-data-text": M = "-"
31
- } = l, w = e.locale, P = E(null), R = (t) => a ? t : decodeURIComponent(t), D = (t) => {
21
+ "data-measures": F = "{}",
22
+ "data-format": b = "{}",
23
+ "data-group": s,
24
+ "data-filters": u = "[]",
25
+ "data-number-font-size": r = 20,
26
+ "data-label-font-size": v = 20,
27
+ "data-number-color": D = "#000000",
28
+ "data-label-color": S = "#000000",
29
+ "data-label": C = "",
30
+ "data-wait-for-filters": z = "false",
31
+ "data-no-data-text": I = "-"
32
+ } = l, h = t.locale, x = V(null), p = (e) => n ? e : decodeURIComponent(e), N = (e) => {
32
33
  try {
33
- return JSON.parse(R(t));
34
+ return JSON.parse(p(e));
34
35
  } catch {
35
- console.error("error parsing value:" + t);
36
+ console.error("error parsing value:" + e);
36
37
  }
37
38
  return null;
38
- }, r = D(u), U = r ? {
39
- style: r.style === "compacted" ? "decimal" : r.style,
40
- notation: r.style === "compacted" ? "compact" : "standard",
41
- currency: r.currency,
42
- minimumFractionDigits: parseInt(r.minimumFractionDigits),
43
- maximumFractionDigits: parseInt(r.maximumFractionDigits)
39
+ }, i = N(b), U = i ? {
40
+ style: i.style === "compacted" ? "decimal" : i.style,
41
+ notation: i.style === "compacted" ? "compact" : "standard",
42
+ currency: i.currency,
43
+ minimumFractionDigits: parseInt(i.minimumFractionDigits),
44
+ maximumFractionDigits: parseInt(i.maximumFractionDigits)
44
45
  } : {
45
46
  notation: "standard",
46
47
  currency: "USD",
47
48
  minimumFractionDigits: 2,
48
49
  maximumFractionDigits: 2
49
- }, [L, Q] = O(g), A = a ? m - 80 : m - 40, v = {}, S = D(p) || {};
50
- S && S.forEach && S.forEach((t) => {
51
- t.value != null && t.value.filter((C) => C != null && C.toString().trim() != "").length > 0 && (v[t.param] = t.value);
52
- }), b && (v.dvzProxyDatasetId = b);
53
- const I = [];
54
- return /* @__PURE__ */ o("div", { ref: P, children: /* @__PURE__ */ o(q, { className: "chart container big-number-container", style: { height: m + "px" }, fluid: !0, children: /* @__PURE__ */ o(
50
+ }, [W, X] = T(y), A = n ? m - 80 : m - 40, j = {}, w = N(u) || {};
51
+ w && w.forEach && w.forEach((e) => {
52
+ e.value != null && e.value.filter((M) => M != null && M.toString().trim() != "").length > 0 && (j[e.param] = e.value);
53
+ }), g && (j.dvzProxyDatasetId = g);
54
+ const R = [];
55
+ return /* @__PURE__ */ o("div", { ref: x, children: /* @__PURE__ */ o(q, { className: "chart container big-number-container", style: { height: m + "px" }, fluid: !0, children: /* @__PURE__ */ o(
55
56
  H,
56
57
  {
57
58
  style: { height: `${A}px` },
58
- params: v,
59
+ params: j,
59
60
  app: d,
60
- group: i,
61
+ group: s,
61
62
  csv: f,
62
- editing: a,
63
- waitForFilters: N === "true",
64
- store: [d, c, ...I],
65
- source: I.join("/"),
63
+ editing: n,
64
+ waitForFilters: z === "true",
65
+ store: [d, c, ...R],
66
+ source: R.join("/"),
66
67
  children: /* @__PURE__ */ o(J, { children: /* @__PURE__ */ o(
67
- B,
68
+ K,
68
69
  {
69
- locale: w,
70
- intl: e,
70
+ locale: h,
71
+ intl: t,
71
72
  app: d,
72
73
  format: U,
73
- measure: D(h)[0] || null,
74
- label: j,
75
- numberFontSize: x,
76
- numberColor: s,
77
- labelFontSize: y,
78
- labelColor: F,
79
- noDataText: M
74
+ measure: N(F)[0] || null,
75
+ label: C,
76
+ numberFontSize: r,
77
+ numberColor: D,
78
+ labelFontSize: v,
79
+ labelColor: S,
80
+ noDataText: I
80
81
  }
81
82
  ) })
82
83
  }
83
84
  ) }) });
84
- }, B = (l) => {
85
+ }, K = (l) => {
86
+ var h, x;
85
87
  const {
86
- app: a,
88
+ app: n,
87
89
  measure: c,
88
- data: e,
89
- format: n,
90
+ data: t,
91
+ format: a,
90
92
  label: f,
91
- numberColor: b,
92
- numberFontSize: z,
93
- labelColor: g,
93
+ numberColor: g,
94
+ numberFontSize: P,
95
+ labelColor: y,
94
96
  labelFontSize: m,
95
- noDataText: d,
96
- intl: h
97
+ noDataText: d = "-",
98
+ intl: F
97
99
  } = l;
98
- let u = c, i = e;
99
- if (a == "csv") {
100
- const { data: s, meta: { fields: F } } = e;
101
- u = F[0], i = e.data[0];
102
- }
103
- let p = "";
104
- if (i) {
105
- let s = i[u] ? i[u] : 0;
106
- s ? p = h.formatNumber(n.style === "percent" ? s / 100 : s, { ...n }) : p = d;
107
- }
108
- const x = {
109
- color: decodeURIComponent(b),
110
- fontSize: z + "px",
111
- textAlign: "center"
112
- }, y = {
100
+ let b = c, s = t;
101
+ n === "csv" && ((h = t == null ? void 0 : t.meta) != null && h.fields) && ((x = t == null ? void 0 : t.data) != null && x.length) && (b = t.meta.fields[0], s = t.data[0]);
102
+ const u = (s == null ? void 0 : s[b]) ?? null, r = u ? (a == null ? void 0 : a.style) === "percent" ? u / 100 : u : null, [v, D] = T(r);
103
+ O(() => {
104
+ r != null && D(r);
105
+ }, [r]);
106
+ const { number: S } = k({
107
+ from: { number: 0 },
108
+ to: { number: v ?? 0 },
109
+ // reset: true,
110
+ config: {
111
+ mass: 1,
112
+ tension: 120,
113
+ friction: 30
114
+ }
115
+ }), C = {
113
116
  color: decodeURIComponent(g),
117
+ fontSize: P + "px",
118
+ textAlign: "center"
119
+ }, z = {
120
+ color: decodeURIComponent(y),
114
121
  fontSize: m + "px",
115
122
  textAlign: "center"
116
- };
117
- return /* @__PURE__ */ T("div", { children: [
118
- /* @__PURE__ */ o("div", { style: x, className: "big-number", children: p }),
119
- f && /* @__PURE__ */ o("div", { style: y, className: "big-number-label", children: f })
123
+ }, I = (p) => F.formatNumber(p, { ...a });
124
+ return /* @__PURE__ */ E("div", { children: [
125
+ /* @__PURE__ */ o("div", { style: C, className: "big-number", children: r === null ? d : /* @__PURE__ */ o(B.span, { children: S.to((p) => I(p)) }) }),
126
+ f && /* @__PURE__ */ o("div", { style: z, className: "big-number-label", children: f })
120
127
  ] });
121
- }, G = (l, a) => {
122
- const { "data-app": c, "data-group": e } = a, n = l.getIn(["data", "measures", c, e]);
123
- return n ? {
124
- injectedMeasures: n
128
+ }, L = (l, n) => {
129
+ const { "data-app": c, "data-group": t } = n, a = l.getIn(["data", "measures", c, t]);
130
+ return a ? {
131
+ injectedMeasures: a
125
132
  } : {};
126
- }, K = {}, et = $(G, K)(k);
133
+ }, Q = {}, nt = $(L, Q)(G);
127
134
  export {
128
- et as default
135
+ nt as default
129
136
  };