@ammarkhalidfarooq/dashboard-package 0.6.67 → 0.6.69

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 CHANGED
@@ -1474,7 +1474,7 @@ var getActiveFilterChips = function getActiveFilterChips(apiData) {
1474
1474
  return ["Status: Successful", "Country: United States, UAE", "Amount: $50 – $5,000"];
1475
1475
  };
1476
1476
  var buildReportData = function buildReportData() {
1477
- var _apiData$overviewStat, _overview$totalRevenu, _overview$netRevenue, _overview$totalDonati, _overview$overallAVGD, _overview$conversionR, _apiData$totalVisits, _growth$overallAVGDon, _growth$totalRevenue, _growth$netRevenue, _growth$totalDonation, _growth$overallAVGDon2, _apiData$medianGift, _apiData$topDecileGif, _apiData$roasCard, _apiData$roasCardPrev, _apiData$adSpend, _apiData$attributedRe, _growth$conversionRat, _refundsRaw$refundRat, _refundsRaw$refundRat2, _refundsRaw$refundCou, _apiData$overviewStat2, _growth$totalRevenue2;
1477
+ var _apiData$overviewStat, _overview$totalRevenu, _overview$netRevenue, _overview$totalDonati, _overview$overallAVGD, _overview$conversionR, _apiData$totalVisits, _overview$overallAVGD2, _growth$overallAVGDon, _growth$totalRevenue, _growth$netRevenue, _growth$totalDonation, _growth$overallAVGDon2, _apiData$medianGift, _apiData$topDecileGif, _apiData$roasCard, _apiData$roasCardPrev, _apiData$adSpend, _apiData$attributedRe, _growth$conversionRat, _refundsRaw$refundRat, _refundsRaw$refundRat2, _refundsRaw$refundCou, _apiData$overviewStat2, _growth$totalRevenue2;
1478
1478
  var apiData = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
1479
1479
  var dateName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "Last Period";
1480
1480
  var overview = (apiData === null || apiData === void 0 || (_apiData$overviewStat = apiData.overviewStats) === null || _apiData$overviewStat === void 0 ? void 0 : _apiData$overviewStat.overview) || {};
@@ -1488,10 +1488,8 @@ var buildReportData = function buildReportData() {
1488
1488
  var totalVisits = Number((_apiData$totalVisits = apiData === null || apiData === void 0 ? void 0 : apiData.totalVisits) !== null && _apiData$totalVisits !== void 0 ? _apiData$totalVisits : 12438);
1489
1489
  var passThrough = totalRaised > 0 ? "".concat((netRaised / totalRaised * 100).toFixed(1), "% pass-through") : "92.3% pass-through";
1490
1490
  var donorMixRaw = apiData === null || apiData === void 0 ? void 0 : apiData.donorPieChartData;
1491
- var newDonors = 31;
1492
- var returningDonors = 184;
1493
- var avgGift = avgDonation;
1494
- var donorMixPrev = Number((_growth$overallAVGDon = growth === null || growth === void 0 ? void 0 : growth.overallAVGDonations) !== null && _growth$overallAVGDon !== void 0 ? _growth$overallAVGDon : 8.4);
1491
+ var newDonors = 0;
1492
+ var returningDonors = 0;
1495
1493
  if (Array.isArray(donorMixRaw)) {
1496
1494
  var nd = donorMixRaw.find(function (d) {
1497
1495
  return /new/i.test(d.type);
@@ -1501,18 +1499,15 @@ var buildReportData = function buildReportData() {
1501
1499
  }) || {};
1502
1500
  newDonors = nd.totalDonations || 0;
1503
1501
  returningDonors = rd.totalDonations || 0;
1504
- var totAmt = (nd.totalAmount || 0) + (rd.totalAmount || 0);
1505
- var totCnt = newDonors + returningDonors;
1506
- avgGift = totCnt > 0 ? totAmt / totCnt : avgDonation;
1507
1502
  } else if (donorMixRaw && _typeof(donorMixRaw) === "object") {
1508
1503
  newDonors = donorMixRaw.newDonors || 0;
1509
1504
  returningDonors = donorMixRaw.returningDonors || 0;
1510
- avgGift = donorMixRaw.avgGift || avgDonation;
1511
- donorMixPrev = donorMixRaw.donorMixPrev || donorMixPrev;
1512
1505
  }
1513
- var totalMix = newDonors + returningDonors || 1;
1514
- var newPct = Math.round(newDonors / totalMix * 100);
1515
- var retPct = 100 - newPct;
1506
+ var avgGift = Number(((_overview$overallAVGD2 = overview === null || overview === void 0 ? void 0 : overview.overallAVGDonations) !== null && _overview$overallAVGD2 !== void 0 ? _overview$overallAVGD2 : 0).toFixed(2));
1507
+ var donorMixPrev = Number(((_growth$overallAVGDon = growth === null || growth === void 0 ? void 0 : growth.overallAVGDonations) !== null && _growth$overallAVGDon !== void 0 ? _growth$overallAVGDon : 0).toFixed(2));
1508
+ var totalMix = newDonors + returningDonors;
1509
+ var newPct = totalMix > 0 ? Math.round(newDonors / totalMix * 100) : 0;
1510
+ var retPct = totalMix > 0 ? 100 - newPct : 0;
1516
1511
  var hero = {
1517
1512
  value: "$".concat(formatNumber(totalRaised)),
1518
1513
  trend: "".concat(formatTrend((_growth$totalRevenue = growth === null || growth === void 0 ? void 0 : growth.totalRevenue) !== null && _growth$totalRevenue !== void 0 ? _growth$totalRevenue : 18), " vs ").concat(dateName || "last month"),
@@ -2303,15 +2298,155 @@ var DonationTypePanel = function DonationTypePanel(_ref0) {
2303
2298
  })]
2304
2299
  });
2305
2300
  };
2306
- var KpiCard = function KpiCard(_ref1) {
2301
+ var AcceptanceRaisedPanel = function AcceptanceRaisedPanel(_ref1) {
2307
2302
  var title = _ref1.title,
2308
- value = _ref1.value,
2309
- trend = _ref1.trend,
2310
- detail = _ref1.detail,
2311
- _ref1$variant = _ref1.variant,
2312
- variant = _ref1$variant === void 0 ? "secondary" : _ref1$variant,
2313
- _ref1$trendPositiveWh = _ref1.trendPositiveWhenNegative,
2314
- trendPositiveWhenNegative = _ref1$trendPositiveWh === void 0 ? false : _ref1$trendPositiveWh;
2303
+ subtitle = _ref1.subtitle,
2304
+ _ref1$acceptanceRate = _ref1.acceptanceRate,
2305
+ acceptanceRate = _ref1$acceptanceRate === void 0 ? 0 : _ref1$acceptanceRate,
2306
+ _ref1$acceptanceGrowt = _ref1.acceptanceGrowth,
2307
+ acceptanceGrowth = _ref1$acceptanceGrowt === void 0 ? 0 : _ref1$acceptanceGrowt,
2308
+ _ref1$raised = _ref1.raised,
2309
+ raised = _ref1$raised === void 0 ? 0 : _ref1$raised,
2310
+ _ref1$raisedGrowth = _ref1.raisedGrowth,
2311
+ raisedGrowth = _ref1$raisedGrowth === void 0 ? 0 : _ref1$raisedGrowth,
2312
+ _ref1$primaryColor = _ref1.primaryColor,
2313
+ primaryColor = _ref1$primaryColor === void 0 ? "#6366F1" : _ref1$primaryColor,
2314
+ _ref1$secondaryColor = _ref1.secondaryColor,
2315
+ secondaryColor = _ref1$secondaryColor === void 0 ? "#88bfd290" : _ref1$secondaryColor;
2316
+ return /*#__PURE__*/jsxRuntime.jsx(Panel, {
2317
+ title: title,
2318
+ subtitle: subtitle,
2319
+ children: /*#__PURE__*/jsxRuntime.jsxs("div", {
2320
+ style: {
2321
+ display: "flex",
2322
+ flexDirection: "column",
2323
+ alignItems: "center"
2324
+ },
2325
+ children: [/*#__PURE__*/jsxRuntime.jsx(Donut, {
2326
+ segments: [{
2327
+ value: acceptanceRate,
2328
+ color: primaryColor
2329
+ }, {
2330
+ value: Math.max(0, 100 - acceptanceRate),
2331
+ color: "#E5E7EB"
2332
+ }],
2333
+ size: 88,
2334
+ centerVal: "".concat(formatNumber(acceptanceRate), "%"),
2335
+ centerLabel: "accepted"
2336
+ }), /*#__PURE__*/jsxRuntime.jsxs("div", {
2337
+ style: {
2338
+ width: "100%",
2339
+ marginTop: 6
2340
+ },
2341
+ children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
2342
+ style: {
2343
+ display: "flex",
2344
+ justifyContent: "space-between",
2345
+ alignItems: "center",
2346
+ marginBottom: 5
2347
+ },
2348
+ children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
2349
+ style: {
2350
+ display: "flex",
2351
+ alignItems: "center",
2352
+ gap: 5
2353
+ },
2354
+ children: [/*#__PURE__*/jsxRuntime.jsx("div", {
2355
+ style: {
2356
+ width: 8,
2357
+ height: 8,
2358
+ borderRadius: 2,
2359
+ background: primaryColor,
2360
+ flexShrink: 0
2361
+ }
2362
+ }), /*#__PURE__*/jsxRuntime.jsx("span", {
2363
+ style: {
2364
+ fontSize: 9.5,
2365
+ color: "#6B7280"
2366
+ },
2367
+ children: "Acceptance"
2368
+ })]
2369
+ }), /*#__PURE__*/jsxRuntime.jsxs("div", {
2370
+ style: {
2371
+ display: "flex",
2372
+ alignItems: "baseline",
2373
+ gap: 4
2374
+ },
2375
+ children: [/*#__PURE__*/jsxRuntime.jsxs("span", {
2376
+ style: {
2377
+ fontSize: 9.5,
2378
+ fontWeight: 700,
2379
+ color: "#111827"
2380
+ },
2381
+ children: [formatNumber(acceptanceRate), "%"]
2382
+ }), /*#__PURE__*/jsxRuntime.jsx(TrendText, {
2383
+ style: {
2384
+ fontSize: 9
2385
+ },
2386
+ children: formatArrowTrend(acceptanceGrowth)
2387
+ })]
2388
+ })]
2389
+ }), /*#__PURE__*/jsxRuntime.jsxs("div", {
2390
+ style: {
2391
+ display: "flex",
2392
+ justifyContent: "space-between",
2393
+ alignItems: "center"
2394
+ },
2395
+ children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
2396
+ style: {
2397
+ display: "flex",
2398
+ alignItems: "center",
2399
+ gap: 5
2400
+ },
2401
+ children: [/*#__PURE__*/jsxRuntime.jsx("div", {
2402
+ style: {
2403
+ width: 8,
2404
+ height: 8,
2405
+ borderRadius: 2,
2406
+ background: secondaryColor,
2407
+ flexShrink: 0
2408
+ }
2409
+ }), /*#__PURE__*/jsxRuntime.jsx("span", {
2410
+ style: {
2411
+ fontSize: 9.5,
2412
+ color: "#6B7280"
2413
+ },
2414
+ children: "Raised"
2415
+ })]
2416
+ }), /*#__PURE__*/jsxRuntime.jsxs("div", {
2417
+ style: {
2418
+ display: "flex",
2419
+ alignItems: "baseline",
2420
+ gap: 4
2421
+ },
2422
+ children: [/*#__PURE__*/jsxRuntime.jsx("span", {
2423
+ style: {
2424
+ fontSize: 9.5,
2425
+ fontWeight: 700,
2426
+ color: "#111827"
2427
+ },
2428
+ children: d$(raised)
2429
+ }), /*#__PURE__*/jsxRuntime.jsx(TrendText, {
2430
+ style: {
2431
+ fontSize: 9
2432
+ },
2433
+ children: formatArrowTrend(raisedGrowth)
2434
+ })]
2435
+ })]
2436
+ })]
2437
+ })]
2438
+ })
2439
+ });
2440
+ };
2441
+ var KpiCard = function KpiCard(_ref10) {
2442
+ var title = _ref10.title,
2443
+ value = _ref10.value,
2444
+ trend = _ref10.trend,
2445
+ detail = _ref10.detail,
2446
+ _ref10$variant = _ref10.variant,
2447
+ variant = _ref10$variant === void 0 ? "secondary" : _ref10$variant,
2448
+ _ref10$trendPositiveW = _ref10.trendPositiveWhenNegative,
2449
+ trendPositiveWhenNegative = _ref10$trendPositiveW === void 0 ? false : _ref10$trendPositiveW;
2315
2450
  var displayTrend = withTrendArrow(trend);
2316
2451
  var isPrimary = variant === "primary";
2317
2452
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
@@ -2362,46 +2497,6 @@ var KpiCard = function KpiCard(_ref1) {
2362
2497
  })]
2363
2498
  });
2364
2499
  };
2365
- var StatPair = function StatPair(_ref10) {
2366
- var label = _ref10.label,
2367
- val = _ref10.val,
2368
- trend = _ref10.trend;
2369
- var displayTrend = withTrendArrow(trend);
2370
- return /*#__PURE__*/jsxRuntime.jsxs("div", {
2371
- style: {
2372
- marginBottom: 6
2373
- },
2374
- children: [/*#__PURE__*/jsxRuntime.jsx("div", {
2375
- style: {
2376
- fontSize: 8.5,
2377
- color: THEME.muted,
2378
- marginBottom: 1
2379
- },
2380
- children: label
2381
- }), /*#__PURE__*/jsxRuntime.jsxs("div", {
2382
- style: {
2383
- display: "flex",
2384
- alignItems: "baseline",
2385
- gap: 4
2386
- },
2387
- children: [/*#__PURE__*/jsxRuntime.jsx("span", {
2388
- style: {
2389
- fontSize: 13,
2390
- fontWeight: 700,
2391
- color: "#111827"
2392
- },
2393
- children: val
2394
- }), trend && /*#__PURE__*/jsxRuntime.jsx("span", {
2395
- style: {
2396
- fontSize: 9.5,
2397
- fontWeight: 600,
2398
- color: resolveTrendColor(displayTrend)
2399
- },
2400
- children: displayTrend
2401
- })]
2402
- })]
2403
- });
2404
- };
2405
2500
  var PageHeader = function PageHeader(_ref11) {
2406
2501
  var dateLabel = _ref11.dateLabel,
2407
2502
  generatedLabel = _ref11.generatedLabel,
@@ -2536,7 +2631,7 @@ var PageFooter = function PageFooter(_ref12) {
2536
2631
 
2537
2632
  // ─── Main component ───────────────────────────────────────────────────────────
2538
2633
  var ExportPdfLayout = /*#__PURE__*/React.forwardRef(function (_ref13, ref) {
2539
- var _apiData$overviewStat, _overview$totalRevenu, _overview$netRevenue, _overview$overallAVGD, _overview$conversionR, _apiData$totalVisits, _refundsRaw$refundRat, _refundsRaw$chargebac, _apiData$trafficSourc2, _metricByTitle$NetRa, _metricByTitle$Total, _metricByTitle$Total2, _metricByTitle$Total3, _metricByTitle$AvgDo, _metricByTitle$AvgDo2, _apiData$medianGift, _apiData$topDecileGif, _apiData$roasCard, _metricByTitle$ROAS, _apiData$roasCardPrev, _metricByTitle$ROAS2, _apiData$adSpend, _apiData$attributedRe, _metricByTitle$Conver, _metricByTitle$Conver2, _metricByTitle$Refund, _metricByTitle$Refund2, _refundsRaw$refundCou, _metricByTitle$Refund3, _mainChart$stacked, _ref16, _refundsRaw$refundRat2, _ob$growthPercentage, _ob$peakDay, _refCard$growthPercen;
2634
+ var _apiData$overviewStat, _overview$totalRevenu, _overview$netRevenue, _overview$overallAVGD, _overview$conversionR, _apiData$totalVisits, _refundsRaw$refundRat, _refundsRaw$chargebac, _apiData$trafficSourc, _apiData$trafficSourc2, _apiData$trafficSourc3, _metricByTitle$NetRa, _metricByTitle$Total, _metricByTitle$Total2, _metricByTitle$Total3, _metricByTitle$AvgDo, _metricByTitle$AvgDo2, _apiData$medianGift, _apiData$topDecileGif, _apiData$roasCard, _metricByTitle$ROAS, _apiData$roasCardPrev, _metricByTitle$ROAS2, _apiData$adSpend, _apiData$attributedRe, _metricByTitle$Conver, _metricByTitle$Conver2, _metricByTitle$Refund, _metricByTitle$Refund2, _refundsRaw$refundCou, _metricByTitle$Refund3, _mainChart$stacked, _refundsRaw$refundRat2, _ob$growthPercentage, _ob$peakDay, _up$acceptanceGrowth, _up$raisedGrowth, _dn$acceptanceGrowth, _dn$raisedGrowth, _refCard$growthPercen;
2540
2635
  var _ref13$apiData = _ref13.apiData,
2541
2636
  apiData = _ref13$apiData === void 0 ? {} : _ref13$apiData,
2542
2637
  _ref13$dateName = _ref13.dateName,
@@ -2619,28 +2714,8 @@ var ExportPdfLayout = /*#__PURE__*/React.forwardRef(function (_ref13, ref) {
2619
2714
  mixAvgGift = donorMix.avgGift,
2620
2715
  donorMixPrev = donorMix.donorMixPrev;
2621
2716
  var geoList = report.donorGeographyList;
2622
- var trafficItems = function (_apiData$trafficSourc) {
2623
- var items = Array.isArray(apiData === null || apiData === void 0 || (_apiData$trafficSourc = apiData.trafficSourceData) === null || _apiData$trafficSourc === void 0 ? void 0 : _apiData$trafficSourc.data) ? apiData.trafficSourceData.data : [];
2624
- if (items.length) return items;
2625
- return [{
2626
- source: "Paid Ads",
2627
- revenue: 98400,
2628
- share: 41
2629
- }, {
2630
- source: "Organic",
2631
- revenue: 62100,
2632
- share: 26
2633
- }, {
2634
- source: "Email",
2635
- revenue: 38600,
2636
- share: 16
2637
- }, {
2638
- source: "Direct",
2639
- revenue: 15500,
2640
- share: 6
2641
- }];
2642
- }();
2643
- var trafficTotal = Number((apiData === null || apiData === void 0 || (_apiData$trafficSourc2 = apiData.trafficSourceData) === null || _apiData$trafficSourc2 === void 0 ? void 0 : _apiData$trafficSourc2.totalRevenue) || 240900);
2717
+ var trafficItems = Array.isArray(apiData === null || apiData === void 0 || (_apiData$trafficSourc = apiData.trafficSourceData) === null || _apiData$trafficSourc === void 0 ? void 0 : _apiData$trafficSourc.data) ? apiData.trafficSourceData.data : [];
2718
+ var trafficTotal = Number((_apiData$trafficSourc2 = apiData === null || apiData === void 0 || (_apiData$trafficSourc3 = apiData.trafficSourceData) === null || _apiData$trafficSourc3 === void 0 ? void 0 : _apiData$trafficSourc3.totalRevenue) !== null && _apiData$trafficSourc2 !== void 0 ? _apiData$trafficSourc2 : 0);
2644
2719
  var revSeries = (mainChart.series || []).length ? mainChart.series : [{
2645
2720
  name: "Paid Ads",
2646
2721
  data: []
@@ -3050,7 +3125,7 @@ var ExportPdfLayout = /*#__PURE__*/React.forwardRef(function (_ref13, ref) {
3050
3125
  color: "#111827",
3051
3126
  marginBottom: 2
3052
3127
  },
3053
- children: kpi$(mixAvgGift)
3128
+ children: d$(mixAvgGift)
3054
3129
  }), /*#__PURE__*/jsxRuntime.jsx("div", {
3055
3130
  style: {
3056
3131
  fontSize: 9
@@ -3059,7 +3134,7 @@ var ExportPdfLayout = /*#__PURE__*/React.forwardRef(function (_ref13, ref) {
3059
3134
  style: {
3060
3135
  fontSize: 9
3061
3136
  },
3062
- children: formatArrowTrend((_ref16 = donorMixPrev !== null && donorMixPrev !== void 0 ? donorMixPrev : growth === null || growth === void 0 ? void 0 : growth.overallAVGDonations) !== null && _ref16 !== void 0 ? _ref16 : 0, {
3137
+ children: formatArrowTrend(donorMixPrev, {
3063
3138
  label: "vs last month"
3064
3139
  })
3065
3140
  })
@@ -3232,10 +3307,10 @@ var ExportPdfLayout = /*#__PURE__*/React.forwardRef(function (_ref13, ref) {
3232
3307
  display: "flex",
3233
3308
  gap: 12
3234
3309
  },
3235
- children: [["Avg/day", d$((ob === null || ob === void 0 ? void 0 : ob.averagePerDay) || 0)], ["Peak day", d$((ob === null || ob === void 0 || (_ob$peakDay = ob.peakDay) === null || _ob$peakDay === void 0 ? void 0 : _ob$peakDay.amount) || 0)], ["Orders", formatNumber((ob === null || ob === void 0 ? void 0 : ob.totalOrders) || 0)]].map(function (_ref17) {
3236
- var _ref18 = _slicedToArray(_ref17, 2),
3237
- l = _ref18[0],
3238
- v = _ref18[1];
3310
+ children: [["Avg/day", d$((ob === null || ob === void 0 ? void 0 : ob.averagePerDay) || 0)], ["Peak day", d$((ob === null || ob === void 0 || (_ob$peakDay = ob.peakDay) === null || _ob$peakDay === void 0 ? void 0 : _ob$peakDay.amount) || 0)], ["Orders", formatNumber((ob === null || ob === void 0 ? void 0 : ob.totalOrders) || 0)]].map(function (_ref16) {
3311
+ var _ref17 = _slicedToArray(_ref16, 2),
3312
+ l = _ref17[0],
3313
+ v = _ref17[1];
3239
3314
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
3240
3315
  children: [/*#__PURE__*/jsxRuntime.jsx("div", {
3241
3316
  style: {
@@ -3255,76 +3330,22 @@ var ExportPdfLayout = /*#__PURE__*/React.forwardRef(function (_ref13, ref) {
3255
3330
  }, l);
3256
3331
  })
3257
3332
  })]
3258
- }), /*#__PURE__*/jsxRuntime.jsx(Panel, {
3333
+ }), /*#__PURE__*/jsxRuntime.jsx(AcceptanceRaisedPanel, {
3259
3334
  title: "Upsell",
3260
3335
  subtitle: "Acceptance & raised",
3261
- children: /*#__PURE__*/jsxRuntime.jsxs("div", {
3262
- style: {
3263
- display: "flex",
3264
- alignItems: "center",
3265
- gap: 12
3266
- },
3267
- children: [/*#__PURE__*/jsxRuntime.jsx(Donut, {
3268
- segments: [{
3269
- value: (up === null || up === void 0 ? void 0 : up.acceptanceRate) || 0,
3270
- color: C.indigo
3271
- }, {
3272
- value: Math.max(0, 100 - ((up === null || up === void 0 ? void 0 : up.acceptanceRate) || 0)),
3273
- color: "#E5E7EB"
3274
- }],
3275
- size: 76,
3276
- centerVal: "".concat(formatNumber((up === null || up === void 0 ? void 0 : up.acceptanceRate) || 0), "%"),
3277
- centerLabel: "accepted"
3278
- }), /*#__PURE__*/jsxRuntime.jsxs("div", {
3279
- style: {
3280
- flex: 1
3281
- },
3282
- children: [/*#__PURE__*/jsxRuntime.jsx(StatPair, {
3283
- label: "Acceptance",
3284
- val: pct((up === null || up === void 0 ? void 0 : up.acceptanceRate) || 0, 1),
3285
- trend: formatArrowTrend(up === null || up === void 0 ? void 0 : up.acceptanceGrowth)
3286
- }), /*#__PURE__*/jsxRuntime.jsx(StatPair, {
3287
- label: "Raised",
3288
- val: d$((up === null || up === void 0 ? void 0 : up.raised) || 0),
3289
- trend: formatArrowTrend(up === null || up === void 0 ? void 0 : up.raisedGrowth)
3290
- })]
3291
- })]
3292
- })
3293
- }), /*#__PURE__*/jsxRuntime.jsx(Panel, {
3336
+ acceptanceRate: (up === null || up === void 0 ? void 0 : up.acceptanceRate) || 0,
3337
+ acceptanceGrowth: (_up$acceptanceGrowth = up === null || up === void 0 ? void 0 : up.acceptanceGrowth) !== null && _up$acceptanceGrowth !== void 0 ? _up$acceptanceGrowth : 0,
3338
+ raised: (up === null || up === void 0 ? void 0 : up.raised) || 0,
3339
+ raisedGrowth: (_up$raisedGrowth = up === null || up === void 0 ? void 0 : up.raisedGrowth) !== null && _up$raisedGrowth !== void 0 ? _up$raisedGrowth : 0,
3340
+ primaryColor: C.indigo
3341
+ }), /*#__PURE__*/jsxRuntime.jsx(AcceptanceRaisedPanel, {
3294
3342
  title: "Downsell",
3295
3343
  subtitle: "Acceptance & raised",
3296
- children: /*#__PURE__*/jsxRuntime.jsxs("div", {
3297
- style: {
3298
- display: "flex",
3299
- alignItems: "center",
3300
- gap: 12
3301
- },
3302
- children: [/*#__PURE__*/jsxRuntime.jsx(Donut, {
3303
- segments: [{
3304
- value: (dn === null || dn === void 0 ? void 0 : dn.acceptanceRate) || 0,
3305
- color: C.cyan
3306
- }, {
3307
- value: Math.max(0, 100 - ((dn === null || dn === void 0 ? void 0 : dn.acceptanceRate) || 0)),
3308
- color: "#E5E7EB"
3309
- }],
3310
- size: 76,
3311
- centerVal: "".concat(formatNumber((dn === null || dn === void 0 ? void 0 : dn.acceptanceRate) || 0), "%"),
3312
- centerLabel: "accepted"
3313
- }), /*#__PURE__*/jsxRuntime.jsxs("div", {
3314
- style: {
3315
- flex: 1
3316
- },
3317
- children: [/*#__PURE__*/jsxRuntime.jsx(StatPair, {
3318
- label: "Acceptance",
3319
- val: pct((dn === null || dn === void 0 ? void 0 : dn.acceptanceRate) || 0, 1),
3320
- trend: formatArrowTrend(dn === null || dn === void 0 ? void 0 : dn.acceptanceGrowth)
3321
- }), /*#__PURE__*/jsxRuntime.jsx(StatPair, {
3322
- label: "Raised",
3323
- val: d$((dn === null || dn === void 0 ? void 0 : dn.raised) || 0),
3324
- trend: formatArrowTrend(dn === null || dn === void 0 ? void 0 : dn.raisedGrowth)
3325
- })]
3326
- })]
3327
- })
3344
+ acceptanceRate: (dn === null || dn === void 0 ? void 0 : dn.acceptanceRate) || 0,
3345
+ acceptanceGrowth: (_dn$acceptanceGrowth = dn === null || dn === void 0 ? void 0 : dn.acceptanceGrowth) !== null && _dn$acceptanceGrowth !== void 0 ? _dn$acceptanceGrowth : 0,
3346
+ raised: (dn === null || dn === void 0 ? void 0 : dn.raised) || 0,
3347
+ raisedGrowth: (_dn$raisedGrowth = dn === null || dn === void 0 ? void 0 : dn.raisedGrowth) !== null && _dn$raisedGrowth !== void 0 ? _dn$raisedGrowth : 0,
3348
+ primaryColor: C.cyan
3328
3349
  }), /*#__PURE__*/jsxRuntime.jsxs(Panel, {
3329
3350
  title: "Referrals",
3330
3351
  subtitle: "Revenue trend \xB7 last ".concat(daysLabel),
@@ -3362,10 +3383,10 @@ var ExportPdfLayout = /*#__PURE__*/React.forwardRef(function (_ref13, ref) {
3362
3383
  display: "flex",
3363
3384
  gap: 12
3364
3385
  },
3365
- children: [["Referrers", formatNumber((refCard === null || refCard === void 0 ? void 0 : refCard.totalReferrers) || 0)], ["Avg gift", d$((refCard === null || refCard === void 0 ? void 0 : refCard.averageGift) || 0)], ["Conv. rate", pct((refCard === null || refCard === void 0 ? void 0 : refCard.conversionRate) || 0, 1)]].map(function (_ref19) {
3366
- var _ref20 = _slicedToArray(_ref19, 2),
3367
- l = _ref20[0],
3368
- v = _ref20[1];
3386
+ children: [["Referrers", formatNumber((refCard === null || refCard === void 0 ? void 0 : refCard.totalReferrers) || 0)], ["Avg gift", d$((refCard === null || refCard === void 0 ? void 0 : refCard.averageGift) || 0)], ["Conv. rate", pct((refCard === null || refCard === void 0 ? void 0 : refCard.conversionRate) || 0, 1)]].map(function (_ref18) {
3387
+ var _ref19 = _slicedToArray(_ref18, 2),
3388
+ l = _ref19[0],
3389
+ v = _ref19[1];
3369
3390
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
3370
3391
  children: [/*#__PURE__*/jsxRuntime.jsx("div", {
3371
3392
  style: {