@rsc-labs/medusa-store-analytics
Version:
Get analytics data about your store
31 lines (30 loc) • 2.72 kB
JavaScript
;
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;