Files
edr-platform/packages/ui-common/src/index.ts
ghost2023 5c59855b5b feat(ui-common): shared currency formatting + DJF in CurrencySelector
New lib/currency.ts is the single source of truth for currency
display across both freight web apps: symbol, name and decimals per
code (DJF is zero-decimal by convention, unlike ETB/USD). Portal's own
currency lib and backoffice's ad-hoc formatters are rewired onto this
in the next two commits instead of each guessing decimals.

CurrencySelector gets an allowDjf prop mirroring the existing allowUsd
gate, so import-shipment currency pickers can offer DJF the same way
they offer USD.

Claude-Session: https://claude.ai/code/session_01CZy77vCWhka3pnmVF9NDkL
2026-09-04 11:53:01 +03:00

92 lines
2.8 KiB
TypeScript

export { Table } from "./components/table";
export type { TableProps, TableColumn } from "./components/Table/Table";
export { FormField } from "./components/Form";
export type { FormFieldProps } from "./components/Form";
export { default as SmartFileInput } from "./components/SmartFileInput";
export type { SmartFileInputProps } from "./components/SmartFileInput";
export { default as Modal } from "./components/Modal";
export type { ModalProps } from "./components/Modal";
export {
FileViewerModal,
isViewable,
resolveViewerKind,
} from "./components/FileViewer";
export type {
FileViewerModalProps,
ViewableFile,
} from "./components/FileViewer";
export { useFileViewer } from "./hooks/useFileViewer";
export { OperationDatePicker } from "./components/OperationDatePicker";
export type { OperationDatePickerProps } from "./components/OperationDatePicker";
export { ExportTrainPicker } from "./components/ExportTrainPicker";
export type { ExportTrainPickerProps } from "./components/ExportTrainPicker";
export { CurrencySelector } from "./components/CurrencySelector";
export type { CurrencySelectorProps } from "./components/CurrencySelector";
export { CountdownTimer } from "./components/CountdownTimer";
export type { CountdownTimerProps } from "./components/CountdownTimer";
export {
NotificationBell,
NotificationItem,
NotificationDrawer,
NotificationToast,
} from "./components/NotificationBell";
export type {
NotificationBellProps,
NotificationItemProps,
NotificationDrawerProps,
NotificationToastProps,
NotificationItemData,
NotificationVisual,
ResolveNotificationVisual,
} from "./components/NotificationBell";
export { Badge } from "./components/badge";
// export type { BadgeProps } from "./components/badge";
export { Sidebar, DashboardLayout } from "./components/Layout";
export type {
SidebarProps,
SidebarItem,
DashboardLayoutProps,
} from "./components/Layout";
export * from "./components/button";
export * from "./components/input";
export * from "./components/skeleton";
export * from "./components/textarea";
export * from "./components/label";
export * from "./components/card";
export * from "./components/dropdown-menu";
export * from "./components/data-table";
export * from "./components/dialog";
export * from "./components/SmartFileInput";
export * from "./components/select";
export * from "./components/switch";
export * from "./components/separator";
export * from "./components/field";
export { bookingWindowUiState } from "./lib/booking-window-display";
export type {
BookingWindowUiKind,
BookingWindowStateInput,
BookingWindowUiState,
} from "./lib/booking-window-display";
export {
CURRENCY_META,
CURRENCY_CODES,
currencyDecimals,
currencySymbol,
formatCurrency,
} from "./lib/currency";
export type { SupportedCurrency } from "./lib/currency";