@ammarkhalidfarooq/dashboard-package 0.6.36 → 0.6.38
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/index.cjs.js +94 -53
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.es.js +94 -53
- package/dist/index.es.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs.js
CHANGED
|
@@ -10,49 +10,6 @@ var Box = require('@mui/material/Box');
|
|
|
10
10
|
var Typography = require('@mui/material/Typography');
|
|
11
11
|
var ReactApexChart = require('react-apexcharts');
|
|
12
12
|
|
|
13
|
-
var theme = styles.createTheme({
|
|
14
|
-
cssVariables: true,
|
|
15
|
-
// Enable CSS variables for better SSR support
|
|
16
|
-
typography: {
|
|
17
|
-
fontFamily: ["var(--font-league-spartan)", "var(--font-noto-sans-arabic)",
|
|
18
|
-
// Added as a fallback for Arabic text
|
|
19
|
-
"-apple-system", "BlinkMacSystemFont", "Segoe UI", "Roboto", "Helvetica Neue", "Arial", "sans-serif", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"].join(",")
|
|
20
|
-
},
|
|
21
|
-
palette: {
|
|
22
|
-
primary: {
|
|
23
|
-
main: "#6363E6",
|
|
24
|
-
mainLight: "#F7F7FF",
|
|
25
|
-
light: "#FFFFFF",
|
|
26
|
-
gray: "#A1A1A8",
|
|
27
|
-
lightGreen: "#E1FBF2",
|
|
28
|
-
green: "#0CAB72",
|
|
29
|
-
red: "#E61D1D",
|
|
30
|
-
lightRed: "#FFEDED",
|
|
31
|
-
lightGray: "#E9E9EB",
|
|
32
|
-
darkGray: "#606062",
|
|
33
|
-
dark: "#090909"
|
|
34
|
-
},
|
|
35
|
-
text: {
|
|
36
|
-
primary: "#666666"
|
|
37
|
-
},
|
|
38
|
-
secondary: {
|
|
39
|
-
main: "#E0C2FF",
|
|
40
|
-
light: "#F5EBFF",
|
|
41
|
-
// dark: will be calculated from palette.secondary.main,
|
|
42
|
-
contrastText: "#47008F"
|
|
43
|
-
},
|
|
44
|
-
white: {
|
|
45
|
-
main: "#FFFFFF",
|
|
46
|
-
light: "#F8F8F8"
|
|
47
|
-
},
|
|
48
|
-
gradients: {
|
|
49
|
-
primary: "linear-gradient(90deg, #6363E6 0.05%, #59C9F9 99.96%)",
|
|
50
|
-
secondary: "linear-gradient(180deg, #E9E9FF 0%, #C9EEFF 100%)"
|
|
51
|
-
// You can add more gradients if needed
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
});
|
|
55
|
-
|
|
56
13
|
function _arrayLikeToArray(r, a) {
|
|
57
14
|
(null == a || a > r.length) && (a = r.length);
|
|
58
15
|
for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
|
|
@@ -299,6 +256,49 @@ function _unsupportedIterableToArray(r, a) {
|
|
|
299
256
|
}
|
|
300
257
|
}
|
|
301
258
|
|
|
259
|
+
var theme = styles.createTheme({
|
|
260
|
+
cssVariables: true,
|
|
261
|
+
// Enable CSS variables for better SSR support
|
|
262
|
+
typography: {
|
|
263
|
+
fontFamily: ["var(--font-league-spartan)", "var(--font-noto-sans-arabic)",
|
|
264
|
+
// Added as a fallback for Arabic text
|
|
265
|
+
"-apple-system", "BlinkMacSystemFont", "Segoe UI", "Roboto", "Helvetica Neue", "Arial", "sans-serif", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"].join(",")
|
|
266
|
+
},
|
|
267
|
+
palette: {
|
|
268
|
+
primary: {
|
|
269
|
+
main: "#6363E6",
|
|
270
|
+
mainLight: "#F7F7FF",
|
|
271
|
+
light: "#FFFFFF",
|
|
272
|
+
gray: "#A1A1A8",
|
|
273
|
+
lightGreen: "#E1FBF2",
|
|
274
|
+
green: "#0CAB72",
|
|
275
|
+
red: "#E61D1D",
|
|
276
|
+
lightRed: "#FFEDED",
|
|
277
|
+
lightGray: "#E9E9EB",
|
|
278
|
+
darkGray: "#606062",
|
|
279
|
+
dark: "#090909"
|
|
280
|
+
},
|
|
281
|
+
text: {
|
|
282
|
+
primary: "#666666"
|
|
283
|
+
},
|
|
284
|
+
secondary: {
|
|
285
|
+
main: "#E0C2FF",
|
|
286
|
+
light: "#F5EBFF",
|
|
287
|
+
// dark: will be calculated from palette.secondary.main,
|
|
288
|
+
contrastText: "#47008F"
|
|
289
|
+
},
|
|
290
|
+
white: {
|
|
291
|
+
main: "#FFFFFF",
|
|
292
|
+
light: "#F8F8F8"
|
|
293
|
+
},
|
|
294
|
+
gradients: {
|
|
295
|
+
primary: "linear-gradient(90deg, #6363E6 0.05%, #59C9F9 99.96%)",
|
|
296
|
+
secondary: "linear-gradient(180deg, #E9E9FF 0%, #C9EEFF 100%)"
|
|
297
|
+
// You can add more gradients if needed
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
});
|
|
301
|
+
|
|
302
302
|
var MetricSelector = function MetricSelector(_ref) {
|
|
303
303
|
var metric = _ref.metric,
|
|
304
304
|
onMetricChange = _ref.onMetricChange,
|
|
@@ -934,6 +934,12 @@ var Dashboard = function Dashboard(_ref) {
|
|
|
934
934
|
numberOfDays = _ref$numberOfDays === void 0 ? 1 : _ref$numberOfDays,
|
|
935
935
|
_ref$activeFilters = _ref.activeFilters,
|
|
936
936
|
activeFilters = _ref$activeFilters === void 0 ? [] : _ref$activeFilters;
|
|
937
|
+
console.log("[Dashboard] activeFilters prop:", {
|
|
938
|
+
value: activeFilters,
|
|
939
|
+
type: _typeof(activeFilters),
|
|
940
|
+
isArray: Array.isArray(activeFilters),
|
|
941
|
+
length: Array.isArray(activeFilters) ? activeFilters.length : undefined
|
|
942
|
+
});
|
|
937
943
|
return /*#__PURE__*/jsxRuntime.jsx(material.ThemeProvider, {
|
|
938
944
|
theme: theme,
|
|
939
945
|
children: /*#__PURE__*/jsxRuntime.jsx(React.Suspense, {
|
|
@@ -2125,24 +2131,26 @@ var PageHeader = function PageHeader(_ref9) {
|
|
|
2125
2131
|
}), !!"".concat(activeFilters || "").trim() && /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
2126
2132
|
style: {
|
|
2127
2133
|
marginTop: 7,
|
|
2128
|
-
display: "inline-
|
|
2129
|
-
gap: 5,
|
|
2134
|
+
display: "inline-block",
|
|
2130
2135
|
background: "#EEF2FF",
|
|
2131
2136
|
border: "1px solid #D7DEFF",
|
|
2132
2137
|
borderRadius: 4,
|
|
2133
|
-
padding: "
|
|
2134
|
-
fontSize:
|
|
2138
|
+
padding: "4px 9px",
|
|
2139
|
+
fontSize: 9,
|
|
2140
|
+
lineHeight: 1.35,
|
|
2141
|
+
color: "#374151",
|
|
2142
|
+
maxWidth: "100%"
|
|
2135
2143
|
},
|
|
2136
2144
|
children: [/*#__PURE__*/jsxRuntime.jsx("span", {
|
|
2137
2145
|
style: {
|
|
2138
2146
|
fontWeight: 700,
|
|
2139
|
-
|
|
2140
|
-
letterSpacing: "0.4px"
|
|
2147
|
+
letterSpacing: "0.3px"
|
|
2141
2148
|
},
|
|
2142
|
-
children: "ACTIVE FILTERS"
|
|
2143
|
-
}), /*#__PURE__*/jsxRuntime.jsx("span", {
|
|
2149
|
+
children: "ACTIVE FILTERS:"
|
|
2150
|
+
}), " ", /*#__PURE__*/jsxRuntime.jsx("span", {
|
|
2144
2151
|
style: {
|
|
2145
|
-
|
|
2152
|
+
fontWeight: 500,
|
|
2153
|
+
color: "#334155"
|
|
2146
2154
|
},
|
|
2147
2155
|
children: activeFilters
|
|
2148
2156
|
})]
|
|
@@ -2229,6 +2237,13 @@ var ExportPdfLayout = /*#__PURE__*/React.forwardRef(function (_ref1, ref) {
|
|
|
2229
2237
|
return "";
|
|
2230
2238
|
};
|
|
2231
2239
|
var formattedActiveFilters = _normalizeFiltersText(activeFilters);
|
|
2240
|
+
console.log("[ExportPdfLayout] activeFilters prop received:", {
|
|
2241
|
+
value: activeFilters,
|
|
2242
|
+
type: _typeof(activeFilters),
|
|
2243
|
+
isArray: Array.isArray(activeFilters),
|
|
2244
|
+
length: Array.isArray(activeFilters) ? activeFilters.length : undefined
|
|
2245
|
+
});
|
|
2246
|
+
console.log("[ExportPdfLayout] formattedActiveFilters:", formattedActiveFilters);
|
|
2232
2247
|
var report = buildReportData(apiData, dateName);
|
|
2233
2248
|
var hero = report.hero,
|
|
2234
2249
|
metrics = report.metrics,
|
|
@@ -3213,6 +3228,14 @@ var NewOverview = function NewOverview(_ref) {
|
|
|
3213
3228
|
exportFiltersSnapshot = _useState8[0],
|
|
3214
3229
|
setExportFiltersSnapshot = _useState8[1];
|
|
3215
3230
|
var exportLayoutRef = React.useRef(null);
|
|
3231
|
+
React.useEffect(function () {
|
|
3232
|
+
console.log("[NewOverview] activeFilters prop changed:", {
|
|
3233
|
+
value: activeFilters,
|
|
3234
|
+
type: _typeof(activeFilters),
|
|
3235
|
+
isArray: Array.isArray(activeFilters),
|
|
3236
|
+
length: Array.isArray(activeFilters) ? activeFilters.length : undefined
|
|
3237
|
+
});
|
|
3238
|
+
}, [activeFilters]);
|
|
3216
3239
|
React.useEffect(function () {
|
|
3217
3240
|
if (activeSectionProp) {
|
|
3218
3241
|
var capitalized = activeSectionProp.charAt(0).toUpperCase() + activeSectionProp.slice(1).toLowerCase();
|
|
@@ -3223,10 +3246,25 @@ var NewOverview = function NewOverview(_ref) {
|
|
|
3223
3246
|
// Step 1 – mount the off-screen export layout whenever the trigger fires
|
|
3224
3247
|
React.useEffect(function () {
|
|
3225
3248
|
if (exportTrigger > 0) {
|
|
3249
|
+
console.log("[NewOverview] exportTrigger received:", exportTrigger);
|
|
3250
|
+
console.log("[NewOverview] snapshotting filters for export:", {
|
|
3251
|
+
value: activeFilters,
|
|
3252
|
+
type: _typeof(activeFilters),
|
|
3253
|
+
isArray: Array.isArray(activeFilters),
|
|
3254
|
+
length: Array.isArray(activeFilters) ? activeFilters.length : undefined
|
|
3255
|
+
});
|
|
3226
3256
|
setExportFiltersSnapshot(activeFilters);
|
|
3227
3257
|
setShowExportLayout(true);
|
|
3228
3258
|
}
|
|
3229
3259
|
}, [exportTrigger, activeFilters]);
|
|
3260
|
+
React.useEffect(function () {
|
|
3261
|
+
console.log("[NewOverview] exportFiltersSnapshot updated:", {
|
|
3262
|
+
value: exportFiltersSnapshot,
|
|
3263
|
+
type: _typeof(exportFiltersSnapshot),
|
|
3264
|
+
isArray: Array.isArray(exportFiltersSnapshot),
|
|
3265
|
+
length: Array.isArray(exportFiltersSnapshot) ? exportFiltersSnapshot.length : undefined
|
|
3266
|
+
});
|
|
3267
|
+
}, [exportFiltersSnapshot]);
|
|
3230
3268
|
|
|
3231
3269
|
// Step 2 – once the layout is in the DOM, capture each page and build the PDF
|
|
3232
3270
|
React.useEffect(function () {
|
|
@@ -3238,6 +3276,8 @@ var NewOverview = function NewOverview(_ref) {
|
|
|
3238
3276
|
while (1) switch (_context.p = _context.n) {
|
|
3239
3277
|
case 0:
|
|
3240
3278
|
_context.p = 0;
|
|
3279
|
+
console.log("[NewOverview] starting PDF export with snapshot:", exportFiltersSnapshot);
|
|
3280
|
+
// Allow SVG layout to paint before capture
|
|
3241
3281
|
_context.n = 1;
|
|
3242
3282
|
return new Promise(function (r) {
|
|
3243
3283
|
return requestAnimationFrame(function () {
|
|
@@ -3261,6 +3301,7 @@ var NewOverview = function NewOverview(_ref) {
|
|
|
3261
3301
|
_context.n = 4;
|
|
3262
3302
|
return exportReportPdf(container, "DashboardOverview_report_".concat(safeDate, ".pdf"));
|
|
3263
3303
|
case 4:
|
|
3304
|
+
console.log("[NewOverview] PDF export completed");
|
|
3264
3305
|
_context.n = 6;
|
|
3265
3306
|
break;
|
|
3266
3307
|
case 5:
|
|
@@ -3281,7 +3322,7 @@ var NewOverview = function NewOverview(_ref) {
|
|
|
3281
3322
|
};
|
|
3282
3323
|
}();
|
|
3283
3324
|
doPdfExport();
|
|
3284
|
-
}, [showExportLayout]);
|
|
3325
|
+
}, [showExportLayout, exportFiltersSnapshot]);
|
|
3285
3326
|
var currentData = metric === "Revenue" ? revenueData : donationsData;
|
|
3286
3327
|
var oneTimeData = (apiData === null || apiData === void 0 ? void 0 : apiData.oneTimeDonations) || [];
|
|
3287
3328
|
var oneTimeValues = oneTimeData.length > 0 ? oneTimeData.map(function (item) {
|