@rsc-labs/medusa-store-analytics-v2
Version:
Get analytics data about your store
57 lines • 6.29 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.OrdersPaymentProviderPieChart = void 0;
const jsx_runtime_1 = require("react/jsx-runtime");
/*
* Copyright 2024 RSC-Labs, https://rsoftcon.com/
*
* MIT License
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
const chartUtils_1 = require("../common/utils/chartUtils");
const recharts_1 = require("recharts");
const ui_1 = require("@medusajs/ui");
function convertToChartData(ordersPaymentProviders) {
if (ordersPaymentProviders.length) {
return ordersPaymentProviders.map(ordersPaymentProvider => {
return {
name: ordersPaymentProvider.paymentProviderId,
value: parseFloat(ordersPaymentProvider.percentage),
displayValue: ordersPaymentProvider.paymentProviderId,
orderCount: ordersPaymentProvider.orderCount,
};
});
}
return undefined;
}
const ChartCustomTooltip = ({ active, payload, label }) => {
if (active && payload && payload.length) {
return ((0, jsx_runtime_1.jsxs)(ui_1.Container, { children: [(0, jsx_runtime_1.jsx)(ui_1.Text, { children: `${payload[0].payload.value}%` }), (0, jsx_runtime_1.jsx)(ui_1.Text, { children: `Provider: ${payload[0].payload.name}` }), (0, jsx_runtime_1.jsx)(ui_1.Text, { children: `Order count: ${payload[0].payload.orderCount}` })] }));
}
return null;
};
const OrdersPaymentProviderPieChart = ({ ordersPaymentProviderResponse, compareEnabled }) => {
const currentData = convertToChartData(ordersPaymentProviderResponse.analytics.current);
const previousData = convertToChartData(ordersPaymentProviderResponse.analytics.previous);
const renderLabel = function (entry) {
return entry.displayValue;
};
return ((0, jsx_runtime_1.jsxs)(recharts_1.PieChart, { width: 500, height: 300, children: [(0, jsx_runtime_1.jsx)(recharts_1.Pie, { data: currentData, dataKey: "value", cx: "50%", cy: "50%", innerRadius: 40, outerRadius: 90, fill: "#82ca9d", label: renderLabel }), compareEnabled && ordersPaymentProviderResponse.analytics.dateRangeFromCompareTo &&
(0, jsx_runtime_1.jsx)(recharts_1.Pie, { data: previousData, dataKey: "value", cx: "50%", cy: "50%", outerRadius: 30, fill: "#8884d8" }), (compareEnabled && ordersPaymentProviderResponse.analytics.dateRangeFromCompareTo) && (0, jsx_runtime_1.jsx)(recharts_1.Legend, { payload: [
{
value: (0, chartUtils_1.getLegendName)(true),
color: "#82ca9d"
},
{
value: (0, chartUtils_1.getLegendName)(false),
color: "#8884d8"
}
], iconType: "circle" }), (0, jsx_runtime_1.jsx)(recharts_1.Tooltip, { content: (0, jsx_runtime_1.jsx)(ChartCustomTooltip, { active: false, payload: [], label: "" }) })] }));
};
exports.OrdersPaymentProviderPieChart = OrdersPaymentProviderPieChart;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXJzLXBheW1lbnQtcHJvdmlkZXItY2hhcnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvdWktY29tcG9uZW50cy9vcmRlcnMvb3JkZXJzLXBheW1lbnQtcHJvdmlkZXItY2hhcnQudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQTs7Ozs7Ozs7OztHQVVHO0FBRUgsMkRBQWdGO0FBQ2hGLHVDQUEwRDtBQUUxRCxxQ0FBK0M7QUFFL0MsU0FBUyxrQkFBa0IsQ0FBQyxzQkFBK0M7SUFDekUsSUFBSSxzQkFBc0IsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNsQyxPQUFPLHNCQUFzQixDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFO1lBQ3hELE9BQU87Z0JBQ0wsSUFBSSxFQUFFLHFCQUFxQixDQUFDLGlCQUFpQjtnQkFDN0MsS0FBSyxFQUFFLFVBQVUsQ0FBQyxxQkFBcUIsQ0FBQyxVQUFVLENBQUM7Z0JBQ25ELFlBQVksRUFBRSxxQkFBcUIsQ0FBQyxpQkFBaUI7Z0JBQ3JELFVBQVUsRUFBRSxxQkFBcUIsQ0FBQyxVQUFVO2FBQzdDLENBQUE7UUFDSCxDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFDRCxPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDO0FBQ0QsTUFBTSxrQkFBa0IsR0FBRyxDQUFDLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFO0lBQ3hELElBQUksTUFBTSxJQUFJLE9BQU8sSUFBSSxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDeEMsT0FBTyxDQUNILHdCQUFDLGNBQVMsZUFDUix1QkFBQyxTQUFJLGNBQUUsR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxHQUFRLEVBQzdDLHVCQUFDLFNBQUksY0FBRSxhQUFhLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEdBQVEsRUFDckQsdUJBQUMsU0FBSSxjQUFFLGdCQUFnQixPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxHQUFRLElBQ3BELENBQ2IsQ0FBQTtJQUNMLENBQUM7SUFDRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUMsQ0FBQztBQUVLLE1BQU0sNkJBQTZCLEdBQUcsQ0FBQyxFQUFDLDZCQUE2QixFQUFFLGNBQWMsRUFBNEYsRUFBRSxFQUFFO0lBRTFMLE1BQU0sV0FBVyxHQUFHLGtCQUFrQixDQUFDLDZCQUE2QixDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN4RixNQUFNLFlBQVksR0FBRyxrQkFBa0IsQ0FBQyw2QkFBNkIsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFMUYsTUFBTSxXQUFXLEdBQUcsVUFBUyxLQUFLO1FBQ2hDLE9BQU8sS0FBSyxDQUFDLFlBQVksQ0FBQztJQUM1QixDQUFDLENBQUE7SUFFRCxPQUFPLENBQ0wsd0JBQUMsbUJBQVEsSUFBQyxLQUFLLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxHQUFHLGFBQy9CLHVCQUFDLGNBQUcsSUFBQyxJQUFJLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBQyxPQUFPLEVBQUMsRUFBRSxFQUFDLEtBQUssRUFBQyxFQUFFLEVBQUMsS0FBSyxFQUFDLFdBQVcsRUFBRSxFQUFFLEVBQUUsV0FBVyxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBRSxXQUFXLEdBQUksRUFDaEksY0FBYyxJQUFJLDZCQUE2QixDQUFDLFNBQVMsQ0FBQyxzQkFBc0I7Z0JBQy9FLHVCQUFDLGNBQUcsSUFBQyxJQUFJLEVBQUUsWUFBWSxFQUFFLE9BQU8sRUFBQyxPQUFPLEVBQUMsRUFBRSxFQUFDLEtBQUssRUFBQyxFQUFFLEVBQUMsS0FBSyxFQUFDLFdBQVcsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFDLFNBQVMsR0FBRSxFQUU3RixDQUFDLGNBQWMsSUFBSSw2QkFBNkIsQ0FBQyxTQUFTLENBQUMsc0JBQXNCLENBQUMsSUFBSSx1QkFBQyxpQkFBTSxJQUFDLE9BQU8sRUFBRTtvQkFDdEc7d0JBQ0UsS0FBSyxFQUFFLElBQUEsMEJBQWEsRUFBQyxJQUFJLENBQUM7d0JBQzFCLEtBQUssRUFBRSxTQUFTO3FCQUNqQjtvQkFDRDt3QkFDRSxLQUFLLEVBQUUsSUFBQSwwQkFBYSxFQUFDLEtBQUssQ0FBQzt3QkFDM0IsS0FBSyxFQUFFLFNBQVM7cUJBQ2pCO2lCQUNGLEVBQUUsUUFBUSxFQUFDLFFBQVEsR0FBRSxFQUN0Qix1QkFBQyxrQkFBTyxJQUFDLE9BQU8sRUFBRSx1QkFBQyxrQkFBa0IsSUFBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsR0FBRyxHQUFJLElBQ3pFLENBQ1osQ0FBQztBQUNKLENBQUMsQ0FBQTtBQTVCWSxRQUFBLDZCQUE2QixpQ0E0QnpDIn0=