{ "common": { "app_name": "Sea Gateway", "footer_text": "Product of Mobifone v1.0", "ok": "OK", "cancel": "Cancel", "save": "Save", "delete": "Delete", "edit": "Edit", "add": "Add", "close": "Close", "back": "Back", "next": "Next", "previous": "Previous", "loading": "Loading...", "error": "Error", "success": "Success", "warning": "Warning", "language": "Language", "language_vi": "Vietnamese", "language_en": "English", "theme": "Theme", "theme_light": "Light", "theme_dark": "Dark", "theme_system": "System" }, "navigation": { "home": "Monitor", "diary": "Diary", "sensor": "Sensor", "trip": "Trip", "setting": "Settings", "manager": "Manager", "warning": "Warning" }, "home": { "welcome": "Welcome", "noData": "No data available", "gpsInfo": "GPS Information", "tripActive": "Active Trip", "latitude": "Latitude", "longitude": "Longitude", "speed": "Speed", "speed_units": "knots", "heading": "Heading", "offline": "Offline", "online": "Online", "sos": { "title": "Emergency Alert", "active": "In Emergency State", "inactive": "Emergency", "description": "Emergency Notification", "content": "Content:", "selectReason": "Select reason", "statusInput": "Enter status", "enterStatus": "Describe emergency status", "confirm": "Confirm", "cancel": "Cancel", "statusRequired": "Please enter status", "sendError": "Unable to send SOS signal" } }, "diary": { "title": "Trip Diary", "filter": "Filter", "addTrip": "Add Trip", "tripList": "Trip List", "tripListCount": "Trip List ({{count}})", "noTripsFound": "No matching trips found", "loadingMore": "Loading more...", "reset": "Reset", "apply": "Apply", "selectedFilters": "Selected filters:", "statusLabel": "Status:", "fromLabel": "From:", "toLabel": "To:", "shipLabel": "Ship:", "statusDropdown": { "label": "Status", "placeholder": "Please select", "created": "Created", "pending": "Pending Approval", "approved": "Approved", "active": "Active", "completed": "Completed", "cancelled": "Cancelled" }, "shipDropdown": { "label": "Ship", "placeholder": "Select ship", "allShips": "All ships", "searchPlaceholder": "Search ship...", "noShipsFound": "No matching ships found" }, "dateRangePicker": { "label": "Trip Date", "startDate": "Start Date", "endDate": "End Date", "selectStartDate": "Select start date", "selectEndDate": "Select end date", "done": "Done" }, "tripCard": { "shipCode": "Ship Code", "departure": "Departure", "return": "Return", "view": "View", "edit": "Edit", "team": "Team", "send": "Send", "delete": "Delete" }, "tripStatus": { "created": "Not approved, creating", "pending": "Pending approval", "approved": "Approved", "departed": "Departed", "completed": "Completed", "cancelled": "Cancelled" } }, "trip": { "infoTrip": "Trip Information", "createNewTrip": "Create New Trip", "endTrip": "End Trip", "cancelTrip": "Cancel Trip", "tripStatus": "Trip Status", "tripDuration": "Trip Duration", "distance": "Distance", "speed": "Speed", "startTime": "Start Time", "endTime": "End Time", "startTrip": "Start Trip", "endHaul": "End Haul", "startHaul": "Start Haul", "endHaulConfirm": "Are you sure you want to end this haul?", "endHaulTitle": "End Haul", "startHaulConfirm": "Do you want to start a new haul?", "startHaulTitle": "Start Haul", "cancelButton": "Cancel", "endButton": "End", "startButton": "Start", "successTitle": "Success", "endHaulSuccess": "Haul ended successfully!", "startHaulSuccess": "New haul started successfully!", "startTripSuccess": "Trip started successfully!", "alreadyStarted": "Trip has already been started or completed.", "finishCurrentHaul": "Please finish the current haul before starting a new one", "createHaulFailed": "Failed to create new haul!", "weatherDescription": "Clear", "costTable": { "title": "Trip Cost", "typeHeader": "Type", "totalCostHeader": "Total Cost", "totalLabel": "Total", "viewDetail": "View Details" }, "fishingTools": { "title": "Fishing Tools List", "nameHeader": "Name", "quantityHeader": "Quantity", "totalLabel": "Total" }, "crewList": { "title": "Crew List", "nameHeader": "Name", "roleHeader": "Role", "totalLabel": "Total" }, "netList": { "title": "Haul List", "sttHeader": "No.", "statusHeader": "Status", "completed": "Completed", "pending": "Pending", "haulPrefix": "Haul" }, "createHaulModal": { "title": "Catch Information", "addSuccess": "Catch added successfully", "addError": "Failed to add catch", "updateSuccess": "Catch updated successfully", "updateError": "Failed to update catch", "fishName": "Fish Name", "selectFish": "Select fish species", "quantity": "Quantity", "unit": "Unit", "size": "Size", "optional": "Optional", "addFish": "Add Fish", "save": "Save", "cancel": "Cancel", "edit": "Edit", "done": "Done", "fishListNotReady": "Fish species list not ready", "gpsError": "Unable to get current GPS data", "validationError": "Please add at least 1 fish species" }, "crewDetailModal": { "title": "Crew Information", "personalId": "Personal ID", "fullName": "Full Name", "role": "Role", "birthDate": "Date of Birth", "phone": "Phone", "address": "Address", "joinedDate": "Joined Date", "note": "Note", "status": "Status", "working": "Working", "resigned": "Resigned", "notUpdated": "Not updated" }, "costDetailModal": { "title": "Trip Cost Details", "costType": "Cost Type", "quantity": "Quantity", "unit": "Unit", "costPerUnit": "Cost Per Unit (VND)", "totalCost": "Total Cost", "total": "Total", "edit": "Edit", "save": "Save", "cancel": "Cancel", "enterCostType": "Enter cost type", "placeholder": "e.g. kg, liters", "vnd": "VND" }, "buttonEndTrip": { "title": "End", "endTrip": "End Trip" }, "buttonCancelTrip": { "title": "Cancel Trip" }, "infoSection": { "sttLabel": "No.", "haulPrefix": "Haul", "statusLabel": "Status", "statusCompleted": "Completed", "statusPending": "Pending", "startTimeLabel": "Start Time", "endTimeLabel": "End Time", "notUpdated": "Not updated" } }, "alarm": { "title": "Alarm", "noAlarm": "No alarm", "warning": "Warning", "danger": "Danger", "critical": "Critical" }, "auth": { "login": "Login", "logout": "Logout", "username": "Username", "username_placeholder": "Enter username", "password": "Password", "password_placeholder": "Enter password", "loginError": "Login failed. Please try again.", "sessionExpired": "Your session has expired. Please login again." } }