UNPKG

bananas-commerce-admin

Version:

What's this, an admin for apes?

40 lines 3.95 kB
import React from "react"; import { FormHelperText } from "@mui/material"; import Grid from "@mui/material/Grid2"; import Stack from "@mui/material/Stack"; import TextField from "@mui/material/TextField"; import Typography from "@mui/material/Typography"; import { useCardContext } from "../../contexts/CardContext"; import { useI18n } from "../../contexts/I18nContext"; import { countryCodeFormatter } from "../../util/country_code_formatter"; import LabeledValue from "../LabeledValue"; export const CardFieldAddress = ({ label, value: defaultValue, required = false, isDisabled = false, size = "grow", isReadable = true, isEditable = true, helperText, isCompany = false, fieldErrors = {}, }) => { const { isEditing } = useCardContext(); const { t } = useI18n(); label ??= t("Address"); const addressString = [ defaultValue?.street_address, defaultValue?.street_address2, defaultValue?.care_of, [defaultValue?.postal_code, defaultValue?.city].filter(Boolean).join(" "), defaultValue?.region, defaultValue?.country_code ? countryCodeFormatter.of(defaultValue.country_code) : undefined, ] .filter(Boolean) .join("\n"); return (React.createElement(Grid, { size: size }, isEditing && isEditable ? (React.createElement(Stack, { direction: "column", spacing: 2 }, React.createElement(Typography, { sx: { fontWeight: 700 }, variant: "body1" }, label), React.createElement(TextField, { fullWidth: true, defaultValue: defaultValue?.street_address ?? "", disabled: isDisabled, error: Boolean(fieldErrors.street_address), helperText: fieldErrors.street_address, label: t("Street Address"), name: "street_address", required: required || isCompany, variant: "outlined" }), React.createElement(TextField, { fullWidth: true, defaultValue: defaultValue?.street_address2 ?? "", disabled: isDisabled, error: Boolean(fieldErrors.street_address2), helperText: fieldErrors.street_address2, label: t("Street Address 2"), name: "street_address2", required: false, variant: "outlined" }), React.createElement(TextField, { fullWidth: true, defaultValue: defaultValue?.care_of ?? "", disabled: isDisabled, error: Boolean(fieldErrors.care_of), helperText: fieldErrors.care_of, label: t("C/O"), name: "care_of", required: false, variant: "outlined" }), React.createElement(Stack, { direction: "row", spacing: 2 }, React.createElement(TextField, { fullWidth: true, defaultValue: defaultValue?.postal_code ?? "", disabled: isDisabled, error: Boolean(fieldErrors.postal_code), helperText: fieldErrors.postal_code, label: t("Postal Code"), name: "postal_code", required: isCompany, variant: "outlined" }), React.createElement(TextField, { fullWidth: true, defaultValue: defaultValue?.city ?? "", disabled: isDisabled, error: Boolean(fieldErrors.city), helperText: fieldErrors.city, label: t("City"), name: "city", required: isCompany, variant: "outlined" })), React.createElement(Stack, { direction: "row", spacing: 2 }, React.createElement(TextField, { fullWidth: true, defaultValue: defaultValue?.region ?? "", disabled: isDisabled, error: Boolean(fieldErrors.region), helperText: fieldErrors.region, label: t("Region"), name: "region", required: false, variant: "outlined" }), React.createElement(TextField, { fullWidth: true, defaultValue: defaultValue?.country_code ?? "", disabled: isDisabled, error: Boolean(fieldErrors.country_code), helperText: fieldErrors.country_code, label: t("Country"), name: "country_code", required: isCompany, variant: "outlined" })), helperText != null && React.createElement(FormHelperText, { sx: { mb: 1 } }, helperText))) : (isReadable && (isEditing || addressString.length > 0) && (React.createElement(LabeledValue, { label: label, value: addressString }))))); }; export default CardFieldAddress; //# sourceMappingURL=CardFieldAddress.js.map