UNPKG

@rsc-labs/medusa-store-analytics

Version:
30 lines (29 loc) 2.64 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.SalesNumber = 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 helpers_1 = require("../utils/helpers"); const SalesNumber = ({ salesHistoryResponse, compareEnabled }) => { const overallCurrentSum = salesHistoryResponse.analytics.current.reduce((sum, order) => sum + parseInt(order.total), 0); const overallPreviousSum = salesHistoryResponse.analytics.previous.length > 0 ? salesHistoryResponse.analytics.previous.reduce((sum, order) => sum + parseInt(order.total), 0) : 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: (0, jsx_runtime_1.jsxs)(ui_1.Heading, { level: "h1", children: [(0, helpers_1.amountToDisplay)(overallCurrentSum, salesHistoryResponse.analytics.currencyDecimalDigits), " ", salesHistoryResponse.analytics.currencyCode.toUpperCase()] }) }), compareEnabled && salesHistoryResponse.analytics.dateRangeFromCompareTo && (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: overallCurrentSum, previous: overallPreviousSum ? overallPreviousSum : undefined }) }), overallPreviousSum !== undefined && (0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, children: (0, jsx_runtime_1.jsx)(percentage_comparison_1.PercentageComparison, { current: (0, helpers_1.amountToDisplay)(overallCurrentSum, salesHistoryResponse.analytics.currencyDecimalDigits), label: salesHistoryResponse.analytics.currencyCode.toUpperCase(), previous: (0, helpers_1.amountToDisplay)(overallPreviousSum, salesHistoryResponse.analytics.currencyDecimalDigits) }) })] }) })] })); }; exports.SalesNumber = SalesNumber;