import { clsx } from 'clsx';
import { logoAssetsDimensions, WisePlatformSecondary, WisePlatformPrimary, WiseBusinessSecondary, WiseBusinessPrimary, WiseLogo, FastFlag } from './logo-assets.mjs';
import '../common/theme.mjs';
import '../common/direction.mjs';
import { Breakpoint } from '@transferwise/neptune-tokens';
import '../common/propsValues/control.mjs';
import '../common/propsValues/size.mjs';
import '../common/propsValues/typography.mjs';
import '../common/propsValues/width.mjs';
import '../common/propsValues/type.mjs';
import '../common/propsValues/dateMode.mjs';
import '../common/propsValues/monthFormat.mjs';
import '../common/propsValues/position.mjs';
import '../common/propsValues/layouts.mjs';
import '../common/propsValues/status.mjs';
import '../common/propsValues/sentiment.mjs';
import '../common/propsValues/profileType.mjs';
import '../common/propsValues/variant.mjs';
import '../common/propsValues/scroll.mjs';
import '../common/propsValues/markdownNodeType.mjs';
import '../common/fileType.mjs';
import '@transferwise/formatting';
import '@transferwise/icons';
import 'react';
import 'react-intl';
import '../common/closeButton/CloseButton.messages.mjs';
import { jsx } from 'react/jsx-runtime';
import { useScreenSize } from '../common/hooks/useScreenSize.mjs';

var LogoType;
(function (LogoType) {
  LogoType["WISE"] = "WISE";
  LogoType["WISE_BUSINESS"] = "WISE_BUSINESS";
  LogoType["WISE_PLATFORM"] = "WISE_PLATFORM";
})(LogoType || (LogoType = {}));
var LogoDisplay;
(function (LogoDisplay) {
  LogoDisplay["RESPONSIVE"] = "responsive";
  LogoDisplay["COMPACT"] = "compact";
  LogoDisplay["FULL"] = "full";
})(LogoDisplay || (LogoDisplay = {}));
var LogoFormat;
(function (LogoFormat) {
  LogoFormat["DEFAULT"] = "default";
  LogoFormat["PRIMARY_LOCKUP"] = "primary-lockup";
  LogoFormat["SECONDARY_LOCKUP"] = "secondary-lockup";
})(LogoFormat || (LogoFormat = {}));
const labelByType = {
  WISE: 'Wise',
  WISE_BUSINESS: 'Wise Business',
  WISE_PLATFORM: 'Wise Platform'
};
const logoAssets = {
  FastFlag,
  WiseLogo,
  WiseBusinessPrimary,
  WiseBusinessSecondary,
  WisePlatformPrimary,
  WisePlatformSecondary
};
/**
 * Renders the Wise wordmark logo. Responsive — shows the flag-only mark on small viewports
 * and the full wordmark on ≥600px (small breakpoint and above).
 *
 * @see {@link https://wise.design/foundations/logo Design Spec}
 */
function Logo({
  className,
  type = 'WISE',
  format = 'default',
  display = 'responsive',
  size = 24,
  'aria-label': ariaLabel
}) {
  const isScreenSm = !useScreenSize(Breakpoint.SMALL);
  const compact = display === 'compact' || display === 'responsive' && isScreenSm;
  const assetName = compact ? 'FastFlag' : getAssetName(type, format);
  const Asset = logoAssets[assetName];
  const sizes = logoAssetsDimensions[assetName];
  const {
    width,
    height
  } = logoAssetsDimensions[assetName][Number(size)] ?? sizes[24];
  return /*#__PURE__*/jsx("span", {
    className: clsx('np-logo', className),
    role: "img",
    "aria-label": ariaLabel ?? labelByType[type],
    style: {
      '--wds-logo-width': `${width}px`,
      '--wds-logo-height': `${height}px`
    },
    children: /*#__PURE__*/jsx(Asset, {})
  });
}
function getAssetName(type, format) {
  if (format !== 'default') {
    if (type === 'WISE_BUSINESS') {
      return format === 'secondary-lockup' ? 'WiseBusinessSecondary' : 'WiseBusinessPrimary';
    }
    if (type === 'WISE_PLATFORM') {
      return format === 'secondary-lockup' ? 'WisePlatformSecondary' : 'WisePlatformPrimary';
    }
  }
  return 'WiseLogo';
}

export { LogoDisplay, LogoFormat, LogoType, Logo as default };
//# sourceMappingURL=Logo.mjs.map
