farmcontrol-ui/src/components/Icons/sidebarIconMap.jsx
Tom Butcher 483682ce44
All checks were successful
farmcontrol/farmcontrol-ui/pipeline/head This commit looks good
Add Email Account and Email Message Management Components
- Introduced new EmailAccounts and EmailMessages components for managing email accounts and messages.
- Implemented ObjectTable for displaying data with filtering and sorting capabilities.
- Integrated InfoActionButtons for enhanced user interactions across various management functionalities.
- Refactored existing components to replace DocumentPrintButton with InfoActionButtons for consistency in action handling.
- Added EmailAccountInfo component for detailed view and management of individual email accounts.
2026-09-12 21:40:18 +01:00

141 lines
5.2 KiB
JavaScript

import ProductionIcon from './ProductionIcon'
import PrinterIcon from './PrinterIcon'
import PrinterProfileIcon from './PrinterProfileIcon'
import FilamentProfileIcon from './FilamentProfileIcon'
import JobIcon from './JobIcon'
import GCodeFileIcon from './GCodeFileIcon'
import SubJobIcon from './SubJobIcon'
import InventoryIcon from './InventoryIcon'
import FilamentStockIcon from './FilamentStockIcon'
import PartStockIcon from './PartStockIcon'
import ProductStockIcon from './ProductStockIcon'
import StockEventIcon from './StockEventIcon'
import StockAuditIcon from './StockAuditIcon'
import StockAuditLevelIcon from './StockAuditLevelIcon'
import PurchaseOrderIcon from './PurchaseOrderIcon'
import ShipmentIcon from './ShipmentIcon'
import OrderItemIcon from './OrderItemIcon'
import StockLocationIcon from './StockLocationIcon'
import StockTransferIcon from './StockTransferIcon'
import SalesIcon from './SalesIcon'
import ClientIcon from './ClientIcon'
import SalesOrderIcon from './SalesOrderIcon'
import MarketplaceIcon from './MarketplaceIcon'
import ListingIcon from './ListingIcon'
import ListingVarientIcon from './ListingVarientIcon'
import FinanceIcon from './FinanceIcon'
import InvoiceIcon from './InvoiceIcon'
import PaymentIcon from './PaymentIcon'
import FilamentIcon from './FilamentIcon'
import FilamentSkuIcon from './FilamentSkuIcon'
import PartIcon from './PartIcon'
import PartSkuIcon from './PartSkuIcon'
import ProductIcon from './ProductIcon'
import ProductCategoryIcon from './ProductCategoryIcon'
import ProductSkuIcon from './ProductSkuIcon'
import VendorIcon from './VendorIcon'
import MaterialIcon from './MaterialIcon'
import NoteTypeIcon from './NoteTypeIcon'
import SettingsIcon from './SettingsIcon'
import AuditLogIcon from './AuditLogIcon'
import DeveloperIcon from './DeveloperIcon'
import PersonIcon from './PersonIcon'
import PersonGroupIcon from './PersonGroupIcon'
import PermissionSettingIcon from './PermissionSettingIcon'
import HostIcon from './HostIcon'
import DocumentPrinterIcon from './DocumentPrinterIcon'
import DocumentTemplateIcon from './DocumentTemplateIcon'
import DocumentIcon from './DocumentIcon'
import DocumentSizeIcon from './DocumentSizeIcon'
import DocumentJobIcon from './DocumentJobIcon'
import FileIcon from './FileIcon'
import CourierIcon from './CourierIcon'
import CourierServiceIcon from './CourierServiceIcon'
import TaxRateIcon from './TaxRateIcon'
import TaxRecordIcon from './TaxRecordIcon'
import FulfillmentPolicyIcon from './FulfillmentPolicyIcon'
import ReturnPolicyIcon from './ReturnPolicyIcon'
import PaymentPolicyIcon from './PaymentPolicyIcon'
import AppPasswordIcon from './AppPasswordIcon'
import InfoCircleIcon from './InfoCircleIcon'
import MailIcon from './MailIcon'
import EmailAccountIcon from './EmailAccountIcon'
import EmailTemplateIcon from './EmailTemplateIcon'
const toEmoji = (emoji) => <span aria-hidden>{emoji}</span>
const sidebarIconMap = {
production: <ProductionIcon />,
printer: <PrinterIcon />,
printerProfile: <PrinterProfileIcon />,
filamentProfile: <FilamentProfileIcon />,
job: <JobIcon />,
subJob: <SubJobIcon />,
gcodeFile: <GCodeFileIcon />,
inventory: <InventoryIcon />,
filamentStock: <FilamentStockIcon />,
partStock: <PartStockIcon />,
productStock: <ProductStockIcon />,
stockEvent: <StockEventIcon />,
stockAudit: <StockAuditIcon />,
stockAuditLevel: <StockAuditLevelIcon />,
purchaseOrder: <PurchaseOrderIcon />,
orderItem: <OrderItemIcon />,
shipment: <ShipmentIcon />,
stockLocation: <StockLocationIcon />,
stockTransfer: <StockTransferIcon />,
sales: <SalesIcon />,
client: <ClientIcon />,
salesOrder: <SalesOrderIcon />,
marketplace: <MarketplaceIcon />,
listing: <ListingIcon />,
listingVarient: <ListingVarientIcon />,
fulfillmentPolicy: <FulfillmentPolicyIcon />,
returnPolicy: <ReturnPolicyIcon />,
paymentPolicy: <PaymentPolicyIcon />,
finance: <FinanceIcon />,
invoice: <InvoiceIcon />,
payment: <PaymentIcon />,
filament: <FilamentIcon />,
filamentSku: <FilamentSkuIcon />,
part: <PartIcon />,
partSku: <PartSkuIcon />,
product: <ProductIcon />,
productCategory: <ProductCategoryIcon />,
productSku: <ProductSkuIcon />,
vendor: <VendorIcon />,
material: <MaterialIcon />,
noteType: <NoteTypeIcon />,
settings: <SettingsIcon />,
auditLog: <AuditLogIcon />,
developer: <DeveloperIcon />,
person: <PersonIcon />,
userGroup: <PersonGroupIcon />,
permissionSetting: <PermissionSettingIcon />,
host: <HostIcon />,
documentPrinter: <DocumentPrinterIcon />,
documentTemplate: <DocumentTemplateIcon />,
document: <DocumentIcon />,
documentSize: <DocumentSizeIcon />,
documentJob: <DocumentJobIcon />,
file: <FileIcon />,
courier: <CourierIcon />,
courierService: <CourierServiceIcon />,
taxRate: <TaxRateIcon />,
taxRecord: <TaxRecordIcon />,
appPassword: <AppPasswordIcon />,
email: <MailIcon />,
emailAccount: <EmailAccountIcon />,
emailTemplate: <EmailTemplateIcon />,
emailMessage: <MailIcon />,
infoCircle: <InfoCircleIcon />,
sessionStorage: toEmoji('🗃️'),
authDebug: toEmoji('🔐'),
apiDebug: toEmoji('🌐')
}
export const getSidebarIconNode = (iconKey) => {
if (!iconKey) return null
return sidebarIconMap[iconKey] || null
}