UNPKG

@rsc-labs/medusa-store-analytics

Version:
31 lines (30 loc) 2.72 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.RepeatCustomerRateNummber = 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 ui_1 = require("@medusajs/ui"); const material_1 = require("@mui/material"); const percentage_comparison_1 = require("../../common/percentage-comparison"); const icon_comparison_1 = require("../../common/icon-comparison"); const RepeatCustomerRateNummber = ({ repeatCustomerRateResponse, compareEnabled }) => { const currentPercentage = repeatCustomerRateResponse.analytics.current !== undefined && repeatCustomerRateResponse.analytics.current.returnCustomerRate !== undefined ? parseInt(repeatCustomerRateResponse.analytics.current.returnCustomerRate) : undefined; const previousPercentage = repeatCustomerRateResponse.analytics.previous !== undefined && repeatCustomerRateResponse.analytics.previous.returnCustomerRate !== undefined ? parseInt(repeatCustomerRateResponse.analytics.previous.returnCustomerRate) : undefined; return ((0, jsx_runtime_1.jsxs)(material_1.Grid, { container: true, alignItems: 'center', spacing: 2, children: [(0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, children: currentPercentage !== undefined ? (0, jsx_runtime_1.jsx)(ui_1.Heading, { level: "h1", children: `${currentPercentage}%` }) : (0, jsx_runtime_1.jsx)(ui_1.Heading, { level: "h3", children: `No orders or customers` }) }), compareEnabled && repeatCustomerRateResponse.analytics.dateRangeFromCompareTo && currentPercentage !== undefined && (0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, children: (0, jsx_runtime_1.jsxs)(material_1.Grid, { container: true, alignItems: 'center', children: [(0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, children: (0, jsx_runtime_1.jsx)(icon_comparison_1.IconComparison, { current: currentPercentage, previous: previousPercentage ? previousPercentage : undefined }) }), previousPercentage !== undefined && (0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, children: (0, jsx_runtime_1.jsx)(percentage_comparison_1.PercentageComparison, { current: currentPercentage.toString(), previous: previousPercentage.toString(), label: "%" }) })] }) })] })); }; exports.RepeatCustomerRateNummber = RepeatCustomerRateNummber;