Improve the frontend modals

This commit is contained in:
Urtzi Alfaro
2025-10-27 16:33:26 +01:00
parent 61376b7a9f
commit 858d985c92
143 changed files with 9289 additions and 2306 deletions

View File

@@ -22,7 +22,18 @@
"safety_stock_percentage": "Safety Stock (%)",
"workflow": "Approval Workflow",
"approval_reminder_hours": "Approval Reminder (hours)",
"critical_escalation_hours": "Critical Escalation (hours)"
"critical_escalation_hours": "Critical Escalation (hours)",
"smart_procurement": "Smart Procurement Calculation",
"use_reorder_rules": "Use reorder rules (point & quantity)",
"use_reorder_rules_desc": "Respect reorder point and reorder quantity configured in ingredients",
"economic_rounding": "Economic rounding",
"economic_rounding_desc": "Round quantities to economic multiples (reorder quantity or supplier minimum)",
"respect_storage_limits": "Respect storage limits",
"respect_storage_limits_desc": "Limit orders to configured maximum stock level",
"use_supplier_minimums": "Use supplier minimums",
"use_supplier_minimums_desc": "Respect supplier minimum order quantity and minimum order amount",
"optimize_price_tiers": "Optimize price tiers",
"optimize_price_tiers_desc": "Adjust quantities to capture volume discounts when beneficial"
},
"inventory": {
"title": "Inventory Management",

View File

@@ -189,7 +189,9 @@
"name": "Name",
"contact_person": "Contact Person",
"email": "Email",
"email_placeholder": "email@example.com",
"phone": "Phone",
"phone_placeholder": "+34 XXX XXX XXX",
"city": "City",
"country": "Country",
"address": "Address",

View File

@@ -10,7 +10,9 @@
"customer_satisfaction": "Customer Satisfaction",
"inventory_turnover": "Inventory Turnover",
"daily_profit": "Daily Profit",
"products_sold": "Products Sold"
"products_sold": "Products Sold",
"waste_reduction": "Waste Reduction",
"monthly_savings": "Monthly Savings"
},
"trends": {
"vs_yesterday": "% vs yesterday",
@@ -112,7 +114,14 @@
"action_required": "Action required",
"manage_organizations": "Manage your organizations",
"setup_new_business": "Set up a new business from scratch",
"active_organizations": "Active Organizations"
"active_organizations": "Active Organizations",
"excellent_progress": "Excellent progress!",
"keep_improving": "Keep improving",
"from_sustainability": "From sustainability",
"all_caught_up": "All caught up!",
"stock_healthy": "Stock healthy",
"same_as_yesterday": "Same as yesterday",
"less_than_yesterday": "less than yesterday"
},
"time_periods": {
"today": "Today",
@@ -122,5 +131,8 @@
"last_7_days": "Last 7 days",
"last_30_days": "Last 30 days",
"last_90_days": "Last 90 days"
},
"errors": {
"failed_to_load_stats": "Failed to load dashboard statistics. Please try again."
}
}

View File

@@ -61,6 +61,9 @@
"labels": {
"total_equipment": "Total Equipment",
"operational": "Operational",
"warning": "Warning",
"maintenance_required": "Maintenance Required",
"down": "Down",
"avg_efficiency": "Average Efficiency",
"active_alerts": "Active Alerts",
"maintenance_due": "Maintenance Due",
@@ -110,4 +113,4 @@
"warning": "Warning",
"info": "Information"
}
}
}

View File

@@ -1,49 +1,118 @@
{
"product_type": {
"raw_material": "Raw Material",
"intermediate": "Intermediate Product",
"finished_product": "Finished Product",
"packaging": "Packaging"
"title": "Inventory Management",
"subtitle": "Manage stock, costs, batches and ingredient alerts",
"fields": {
"name": "Name",
"sku": "SKU Code",
"barcode": "Barcode",
"brand": "Brand",
"category": "Category",
"current_stock": "Current Stock",
"min_stock": "Minimum Stock",
"max_stock": "Maximum Stock",
"unit": "Unit",
"cost": "Cost",
"price": "Price",
"supplier": "Supplier",
"last_restocked": "Last Restocked",
"expiration_date": "Expiration Date",
"batch_number": "Batch Number",
"lot_number": "Lot Number",
"supplier_batch_ref": "Supplier Ref.",
"location": "Location",
"description": "Description",
"notes": "Notes",
"package_size": "Package Size",
"average_cost": "Average Cost",
"standard_cost": "Standard Cost",
"unit_cost": "Unit Cost",
"low_stock_threshold": "Low Stock Threshold",
"reorder_point": "Reorder Point",
"reorder_quantity": "Reorder Quantity",
"max_stock_level": "Maximum Stock",
"shelf_life_days": "Shelf Life Days",
"is_perishable": "Is Perishable?",
"costs_and_pricing": "Costs and Pricing",
"reserved_quantity": "Reserved Quantity",
"available_quantity": "Available Quantity",
"received_date": "Received Date",
"best_before_date": "Best Before",
"warehouse_zone": "Warehouse Zone",
"shelf_position": "Shelf Position",
"quality_status": "Quality Status",
"storage_instructions": "Storage Instructions",
"transformation_reference": "Transformation Reference",
"original_expiration_date": "Original Expiration",
"transformation_date": "Transformation Date",
"final_expiration_date": "Final Expiration"
},
"production_stage": {
"raw": "Raw",
"in_process": "In Process",
"finished": "Finished",
"packaged": "Packaged"
"sections": {
"purchase_costs": "Purchase Costs",
"stock_management": "Stock Management"
},
"unit_of_measure": {
"kg": "Kilograms",
"g": "Grams",
"l": "Liters",
"ml": "Milliliters",
"pieces": "Pieces",
"units": "Units",
"portions": "Portions"
"help": {
"standard_cost": "Target cost for budgeting and variance analysis",
"average_cost": "Automatically calculated from weighted average of purchases"
},
"ingredient_category": {
"flour": "Flour",
"dairy": "Dairy",
"eggs": "Eggs",
"fats": "Fats",
"sugar": "Sugar",
"yeast": "Yeast",
"spices": "Spices",
"other": "Other"
},
"product_category": {
"bread": "Bread",
"pastry": "Pastry",
"cake": "Cake",
"cookie": "Cookie",
"salted": "Salted",
"other": "Other"
},
"stock_movement_type": {
"purchase": "Purchase",
"production": "Production",
"sale": "Sale",
"adjustment": "Adjustment",
"waste": "Waste",
"transfer": "Transfer"
"enums": {
"product_type": {
"ingredient": "Ingredient",
"finished_product": "Finished Product"
},
"production_stage": {
"raw_ingredient": "Raw Ingredient",
"par_baked": "Par-Baked",
"fully_baked": "Fully Baked",
"prepared_dough": "Prepared Dough",
"frozen_product": "Frozen Product"
},
"unit_of_measure": {
"kg": "Kilograms",
"g": "Grams",
"l": "Liters",
"ml": "Milliliters",
"units": "Units",
"pcs": "Pieces",
"pkg": "Packages",
"bags": "Bags",
"boxes": "Boxes"
},
"ingredient_category": {
"flour": "Flour",
"yeast": "Yeast",
"dairy": "Dairy",
"eggs": "Eggs",
"sugar": "Sugar",
"fats": "Fats",
"salt": "Salt",
"spices": "Spices",
"additives": "Additives",
"packaging": "Packaging",
"cleaning": "Cleaning",
"other": "Other"
},
"product_category": {
"bread": "Bread",
"croissants": "Croissants",
"pastries": "Pastries",
"cakes": "Cakes",
"cookies": "Cookies",
"muffins": "Muffins",
"sandwiches": "Sandwiches",
"seasonal": "Seasonal",
"beverages": "Beverages",
"other_products": "Other Products"
},
"stock_movement_type": {
"PURCHASE": "Purchase",
"PRODUCTION_USE": "Production Use",
"TRANSFORMATION": "Transformation",
"ADJUSTMENT": "Adjustment",
"WASTE": "Waste",
"TRANSFER": "Transfer",
"RETURN": "Return",
"INITIAL_STOCK": "Initial Stock",
"OTHER": "Other"
}
}
}

View File

@@ -81,24 +81,85 @@
"currency": "Currency",
"created_date": "Created Date",
"updated_date": "Last Updated",
"notes": "Notes"
"notes": "Notes",
"tax_id": "Tax/VAT ID",
"registration_number": "Business Registration",
"mobile": "Mobile Phone",
"website": "Website",
"address_line1": "Address Line 1",
"address_line2": "Address Line 2",
"state_province": "State/Province",
"postal_code": "Postal Code",
"delivery_area": "Delivery Area"
},
"sections": {
"contact_info": "Contact Information",
"address_info": "Address Information",
"commercial_info": "Commercial Information",
"additional_info": "Additional Information",
"performance": "Performance and Statistics",
"notes": "Notes"
},
"placeholders": {
"name": "Supplier name",
"contact_person": "Contact person name",
"supplier_code": "Unique code",
"notes": "Notes about the supplier"
"supplier_code": "e.g., SUP-001",
"notes": "Notes about the supplier",
"tax_id": "e.g., ESB12345678",
"registration_number": "Business registration number",
"mobile": "+34 XXX XXX XXX",
"website": "https://example.com",
"address_line1": "Street address",
"address_line2": "Apartment, suite, etc. (optional)",
"state_province": "State or Province",
"postal_code": "Postal/ZIP code",
"delivery_area": "Delivery coverage area"
},
"currencies": {
"EUR": "Euro (€)",
"USD": "US Dollar ($)",
"GBP": "British Pound (£)"
},
"descriptions": {
"supplier_type": "Select the type of products or services this supplier offers",
"payment_terms": "Payment terms agreed with the supplier",
"quality_rating": "1 to 5 star rating based on product quality",
"delivery_rating": "1 to 5 star rating based on delivery punctuality and condition"
},
"actions": {
"approve": "Approve Supplier",
"reject": "Reject Supplier",
"delete": "Delete Supplier"
},
"confirm": {
"approve": "Are you sure you want to approve this supplier? This will activate the supplier for use.",
"reject": "Are you sure you want to reject this supplier? This action can be undone later."
},
"delete": {
"title": "Delete Supplier",
"subtitle": "How would you like to delete {name}?",
"supplier_name": "Supplier",
"soft_delete": "Mark as Inactive",
"hard_delete": "Permanently Delete",
"soft_explanation": "Marks the supplier as inactive. Can be reactivated later. All data is preserved.",
"hard_explanation": "Permanently deletes all supplier data including price lists, quality reviews, and performance metrics.",
"confirm_soft_title": "Confirm Mark as Inactive",
"confirm_hard_title": "Confirm Permanent Deletion",
"soft_description": "This will mark the supplier as inactive. The supplier can be reactivated later and all data will be preserved.",
"hard_description": "This will permanently delete all supplier data. This action cannot be undone.",
"warning_irreversible": "Warning: This action is irreversible!",
"type_to_confirm": "Type ELIMINAR to confirm",
"confirm_instruction": "Type ELIMINAR in capital letters to confirm permanent deletion",
"confirm_soft": "Mark as Inactive",
"confirm_hard": "Permanently Delete",
"summary_title": "Deletion Complete",
"supplier_deleted": "Supplier {name} has been permanently deleted",
"deletion_summary": "Deletion Summary",
"deleted_price_lists": "Price lists deleted",
"deleted_quality_reviews": "Quality reviews deleted",
"deleted_performance_metrics": "Performance metrics deleted",
"deleted_alerts": "Alerts deleted",
"deleted_scorecards": "Scorecards deleted",
"cannot_delete": "Cannot delete supplier with active purchase orders"
}
}