diff --git a/addon/components/vehicle/form.hbs b/addon/components/vehicle/form.hbs
index de3d89211..a8a489975 100644
--- a/addon/components/vehicle/form.hbs
+++ b/addon/components/vehicle/form.hbs
@@ -38,7 +38,7 @@
{{! Vehicle Identification }}
- Vehicle Identification
+ {{t "vehicle.form.vehicle-identification"}}
@@ -69,15 +69,15 @@
-
-
-
-
-
+
+
+
+
+
{{! Assignment & Status }}
- Assignment & Status
+ {{t "vehicle.form.assignment-status"}}
@@ -116,11 +116,11 @@
-
+
{{! Location }}
- Location
+ {{t "vehicle.form.location"}}
@@ -138,19 +138,19 @@
{{! MEASUREMENT & UNITS / ODOMETER }}
-
+
- Measurement & Units
+ {{t "vehicle.form.measurement-units"}}
-
+
-
+
- Odometer & Usage
+ {{t "vehicle.form.odometer-usage"}}
-
+
-
+
{{! BODY & USAGE }}
-
+
- Body & Usage
+ {{t "vehicle.form.body-usage"}}
-
+
-
+
-
+
-
+
-
+
-
+
{{! TECHNICAL SPECIFICATIONS (ENGINE, CAPACITY, REGULATORY) }}
-
+
{{! FINANCIAL & LIFECYCLE }}
-
+
- Asset Values
+ {{t "vehicle.form.asset-values"}}
-
+
-
+
-
+
-
+
-
+
- Lifecycle & Service Life
+ {{t "vehicle.form.lifecycle-service-life"}}
-
-
+
+
-
+
-
+
-
+
-
+
- Financing (Loan)
+ {{t "vehicle.form.financing-loan"}}
-
+
-
+
-
+
@@ -565,18 +565,18 @@
{{! ORCHESTRATOR CONSTRAINTS }}
-
+
diff --git a/addon/controllers/management/fuel-transactions/index.js b/addon/controllers/management/fuel-transactions/index.js
index f3e1bfa52..287ed0c9a 100644
--- a/addon/controllers/management/fuel-transactions/index.js
+++ b/addon/controllers/management/fuel-transactions/index.js
@@ -11,6 +11,7 @@ export default class ManagementFuelTransactionsIndexController extends Controlle
@service modalsManager;
@service notifications;
@service hostRouter;
+ @service intl;
@tracked queryParams = ['page', 'limit', 'sort', 'query', 'provider', 'sync_status', 'vehicle', 'connection', 'transaction_at'];
@tracked page = 1;
@@ -38,26 +39,26 @@ export default class ManagementFuelTransactionsIndexController extends Controlle
get emptyStateTitle() {
if (this.sync_status === 'unmatched') {
- return 'No unmatched fuel transactions';
+ return this.intl.t('management.empty-states.fuel-transactions.no-unmatched-title');
}
if (this.connection) {
- return 'No transactions imported for this integration';
+ return this.intl.t('management.empty-states.fuel-transactions.no-integration-title');
}
- return 'No fuel transactions imported yet';
+ return this.intl.t('management.empty-states.fuel-transactions.no-imported-title');
}
get emptyStateMessage() {
if (this.sync_status === 'unmatched') {
- return 'Fleet-Ops did not find imported provider bills that still need vehicle or trip matching.';
+ return this.intl.t('management.empty-states.fuel-transactions.no-unmatched-description');
}
if (this.connection) {
- return 'Run a sync from the fuel integration detail page to import provider bills into this ledger.';
+ return this.intl.t('management.empty-states.fuel-transactions.no-integration-description');
}
- return 'Connect PetroApp or another fuel integration, then run a transaction sync. Imported provider bills appear here before linked Fuel Reports are created.';
+ return this.intl.t('management.empty-states.fuel-transactions.no-imported-description');
}
get actionButtons() {
@@ -66,12 +67,12 @@ export default class ManagementFuelTransactionsIndexController extends Controlle
id: 'refresh',
icon: 'refresh',
onClick: this.refresh,
- helpText: 'Refresh',
+ helpText: this.intl.t('management.empty-states.fuel-transactions.refresh'),
},
{
id: 'fuel-integrations',
icon: 'gas-pump',
- text: 'Fuel Integrations',
+ text: this.intl.t('management.empty-states.fuel-transactions.open-integrations'),
onClick: () => this.hostRouter.transitionTo('console.fleet-ops.connectivity.fuel-providers.index'),
permission: 'fleet-ops list fuel-provider-connection',
},
@@ -88,7 +89,7 @@ export default class ManagementFuelTransactionsIndexController extends Controlle
return [
{
id: 'bulk-reprocess',
- label: `Reprocess ${selected.length} selected`,
+ label: this.intl.t('management.empty-states.fuel-transactions.reprocess-selected', { count: selected.length }),
fn: () => this.confirmAction('reprocess', selected),
permission: 'fleet-ops update fuel-provider-transaction',
},
@@ -100,7 +101,7 @@ export default class ManagementFuelTransactionsIndexController extends Controlle
{
id: 'provider-transaction-id',
sticky: true,
- label: 'Transaction',
+ label: this.intl.t('management.empty-states.fuel-transactions.columns.transaction'),
valuePath: 'provider_transaction_id',
cellComponent: 'cell/fuel-provider-transaction-identity',
action: this.openDetails,
@@ -112,7 +113,7 @@ export default class ManagementFuelTransactionsIndexController extends Controlle
},
{
id: 'provider',
- label: 'Provider',
+ label: this.intl.t('management.empty-states.fuel-transactions.columns.provider'),
valuePath: 'provider',
resizable: true,
sortable: true,
@@ -121,7 +122,7 @@ export default class ManagementFuelTransactionsIndexController extends Controlle
},
{
id: 'sync-status',
- label: 'Status',
+ label: this.intl.t('management.empty-states.fuel-transactions.columns.status'),
valuePath: 'sync_status',
cellComponent: 'fuel-transaction-status',
resizable: true,
@@ -132,7 +133,7 @@ export default class ManagementFuelTransactionsIndexController extends Controlle
},
{
id: 'vehicle-name',
- label: 'Vehicle',
+ label: this.intl.t('management.empty-states.fuel-transactions.columns.vehicle'),
valuePath: 'vehicle_name',
cellComponent: 'cell/vehicle-identity',
permission: 'fleet-ops view vehicle',
@@ -147,33 +148,33 @@ export default class ManagementFuelTransactionsIndexController extends Controlle
},
{
id: 'vehicle-card-id',
- label: 'Card / Internal',
+ label: this.intl.t('management.empty-states.fuel-transactions.columns.card-internal'),
valuePath: 'vehicle_card_id',
resizable: true,
},
{
id: 'trip-number',
- label: 'Trip',
+ label: this.intl.t('management.empty-states.fuel-transactions.columns.trip'),
valuePath: 'trip_number',
resizable: true,
hidden: true,
},
{
id: 'station-name',
- label: 'Station',
+ label: this.intl.t('management.empty-states.fuel-transactions.columns.station'),
valuePath: 'station_name',
resizable: true,
},
{
id: 'volume',
- label: 'Liters',
+ label: this.intl.t('management.empty-states.fuel-transactions.columns.liters'),
valuePath: 'volume',
resizable: true,
sortable: true,
},
{
id: 'amount',
- label: 'Amount',
+ label: this.intl.t('management.empty-states.fuel-transactions.columns.amount'),
valuePath: 'amount',
cellComponent: 'table/cell/currency',
resizable: true,
@@ -181,7 +182,7 @@ export default class ManagementFuelTransactionsIndexController extends Controlle
},
{
id: 'fuel-report-id',
- label: 'Fuel Report',
+ label: this.intl.t('management.empty-states.fuel-transactions.columns.fuel-report'),
valuePath: 'fuel_report_id',
cellComponent: 'cell/fuel-report-identity',
resourcePath: (transaction) =>
@@ -191,7 +192,7 @@ export default class ManagementFuelTransactionsIndexController extends Controlle
},
{
id: 'transaction-at',
- label: 'Date',
+ label: this.intl.t('management.empty-states.fuel-transactions.columns.date'),
valuePath: 'transactionAt',
sortParam: 'transaction_at',
resizable: true,
@@ -207,38 +208,53 @@ export default class ManagementFuelTransactionsIndexController extends Controlle
ddButtonText: false,
ddButtonIcon: 'ellipsis-h',
ddButtonIconPrefix: 'fas',
- ddMenuLabel: 'Fuel Transaction Actions',
+ ddMenuLabel: this.intl.t('management.empty-states.fuel-transactions.actions-menu'),
cellClassNames: 'overflow-visible',
wrapperClass: 'flex items-center justify-end mx-2',
sticky: 'right',
width: 60,
actions: [
- { id: 'open-details', label: 'Review Details', fn: this.openDetails, permission: 'fleet-ops view fuel-provider-transaction' },
+ {
+ id: 'open-details',
+ label: this.intl.t('management.empty-states.fuel-transactions.review-details'),
+ fn: this.openDetails,
+ permission: 'fleet-ops view fuel-provider-transaction',
+ },
{
id: 'open-fuel-report',
- label: 'Open Fuel Report',
+ label: this.intl.t('management.empty-states.fuel-transactions.open-fuel-report'),
fn: this.openFuelReport,
isVisible: (transaction) => Boolean(transaction.fuel_report_id),
permission: 'fleet-ops view fuel-report',
},
{ separator: true },
- { id: 'match-vehicle', label: 'Match to Vehicle', fn: this.matchVehicle, permission: 'fleet-ops update fuel-provider-transaction' },
- { id: 'match-order', label: 'Match to Order', fn: this.matchOrder, permission: 'fleet-ops update fuel-provider-transaction' },
+ {
+ id: 'match-vehicle',
+ label: this.intl.t('management.empty-states.fuel-transactions.match-vehicle'),
+ fn: this.matchVehicle,
+ permission: 'fleet-ops update fuel-provider-transaction',
+ },
+ {
+ id: 'match-order',
+ label: this.intl.t('management.empty-states.fuel-transactions.match-order'),
+ fn: this.matchOrder,
+ permission: 'fleet-ops update fuel-provider-transaction',
+ },
{
id: 'reprocess',
- label: 'Reprocess / Rematch',
+ label: this.intl.t('management.empty-states.fuel-transactions.reprocess-rematch'),
fn: (transaction) => this.confirmAction('reprocess', transaction),
permission: 'fleet-ops update fuel-provider-transaction',
},
{
id: 'ignore',
- label: 'Ignore Transaction',
+ label: this.intl.t('management.empty-states.fuel-transactions.ignore-transaction'),
fn: (transaction) => this.confirmAction('ignored', transaction),
permission: 'fleet-ops review fuel-provider-transaction',
},
{
id: 'mark-reviewed',
- label: 'Mark Reviewed',
+ label: this.intl.t('management.empty-states.fuel-transactions.mark-reviewed'),
fn: (transaction) => this.confirmAction('reviewed', transaction),
permission: 'fleet-ops review fuel-provider-transaction',
},
@@ -257,7 +273,7 @@ export default class ManagementFuelTransactionsIndexController extends Controlle
@action openFuelReport(transaction) {
if (!transaction?.fuel_report_id) {
- this.notifications.info('This transaction does not have a linked Fuel Report yet.');
+ this.notifications.info(this.intl.t('management.empty-states.fuel-transactions.unlinked-info'));
return;
}
diff --git a/addon/templates/connectivity/devices/index/new.hbs b/addon/templates/connectivity/devices/index/new.hbs
index f251d43ea..fc4ea62a4 100644
--- a/addon/templates/connectivity/devices/index/new.hbs
+++ b/addon/templates/connectivity/devices/index/new.hbs
@@ -2,7 +2,7 @@
@resource={{this.device}}
@controller={{this}}
@actionButtons={{this.actionButtons}}
- @headerTitle="Create a new device"
+ @headerTitle={{t "common.create-a-new-resource" resource=(lowercase (t "resource.device"))}}
@saveTask={{this.save}}
@onPressCancel={{transition-to "connectivity.devices.index"}}
@onOverlayReady={{fn (mut this.overlay)}}
diff --git a/addon/templates/connectivity/sensors/index/new.hbs b/addon/templates/connectivity/sensors/index/new.hbs
index 092d70a0e..41ba7b81b 100644
--- a/addon/templates/connectivity/sensors/index/new.hbs
+++ b/addon/templates/connectivity/sensors/index/new.hbs
@@ -2,7 +2,7 @@
@resource={{this.sensor}}
@controller={{this}}
@actionButtons={{this.actionButtons}}
- @headerTitle="Create a new sensor"
+ @headerTitle={{t "common.create-a-new-resource" resource=(lowercase (t "resource.sensor"))}}
@saveTask={{this.save}}
@onPressCancel={{transition-to "connectivity.sensors.index"}}
@onOverlayReady={{fn (mut this.overlay)}}
diff --git a/addon/templates/management/contacts/customers.hbs b/addon/templates/management/contacts/customers.hbs
index 1e4ce53bf..b0b5e0bf1 100644
--- a/addon/templates/management/contacts/customers.hbs
+++ b/addon/templates/management/contacts/customers.hbs
@@ -16,14 +16,14 @@
@emptyStateComponent={{component
"table/empty-state"
icon="user-group"
- title="Add your first customer"
- description="Customers give orders an owner, contact details, and account context for service history."
- filteredTitle="No customers match your filters"
- filteredDescription="Adjust the search or filters to find another customer."
- primaryText="New customer"
+ title=(t "management.empty-states.customers.title")
+ description=(t "management.empty-states.customers.description")
+ filteredTitle=(t "management.empty-states.customers.filtered-title")
+ filteredDescription=(t "management.empty-states.customers.filtered-description")
+ primaryText=(t "management.empty-states.customers.primary-text")
primaryIcon="plus"
primaryAction=this.customerActions.transition.create
- secondaryText="Import"
+ secondaryText=(t "common.import")
secondaryIcon="upload"
secondaryAction=this.customerActions.import
}}
diff --git a/addon/templates/management/contacts/customers/new.hbs b/addon/templates/management/contacts/customers/new.hbs
index 4b83183ab..1d0e501c4 100644
--- a/addon/templates/management/contacts/customers/new.hbs
+++ b/addon/templates/management/contacts/customers/new.hbs
@@ -2,7 +2,7 @@
@resource={{this.customer}}
@controller={{this}}
@actionButtons={{this.actionButtons}}
- @headerTitle="Create a new customer"
+ @headerTitle={{t "common.create-a-new-resource" resource=(lowercase (t "resource.customer"))}}
@modelName="Customer"
@saveTask={{this.save}}
@onPressCancel={{transition-to "management.contacts.customers"}}
diff --git a/addon/templates/management/contacts/index.hbs b/addon/templates/management/contacts/index.hbs
index f68e0b485..7ef1ce7ef 100644
--- a/addon/templates/management/contacts/index.hbs
+++ b/addon/templates/management/contacts/index.hbs
@@ -16,19 +16,19 @@
@emptyStateComponent={{component
"table/empty-state"
icon="address-book"
- title="Add your first contact"
- description="Contacts keep customer, vendor, and internal stakeholder details ready for orders and communication."
- filteredTitle="No contacts match your filters"
- filteredDescription="Adjust the search or filters to find another contact."
- primaryText="New contact"
+ title=(t "management.empty-states.contacts.title")
+ description=(t "management.empty-states.contacts.description")
+ filteredTitle=(t "management.empty-states.contacts.filtered-title")
+ filteredDescription=(t "management.empty-states.contacts.filtered-description")
+ primaryText=(t "management.empty-states.contacts.primary-text")
primaryIcon="plus"
primaryAction=this.contactActions.transition.create
- secondaryText="Import"
+ secondaryText=(t "common.import")
secondaryIcon="upload"
secondaryAction=this.contactActions.import
docsSlug="fleet-ops/resources/contacts/overview"
- docsTitle="Contacts guide"
- docsText="Contacts guide"
+ docsTitle=(t "management.empty-states.contacts.docs-title")
+ docsText=(t "management.empty-states.contacts.docs-text")
docsSource="fleet-ops-empty-contacts"
}}
@withoutHeader={{true}}
diff --git a/addon/templates/management/contacts/index/new.hbs b/addon/templates/management/contacts/index/new.hbs
index ecf17c300..afdef74de 100644
--- a/addon/templates/management/contacts/index/new.hbs
+++ b/addon/templates/management/contacts/index/new.hbs
@@ -2,7 +2,7 @@
@resource={{this.contact}}
@controller={{this}}
@actionButtons={{this.actionButtons}}
- @headerTitle="Create a new contact"
+ @headerTitle={{t "common.create-a-new-resource" resource=(lowercase (t "resource.contact"))}}
@saveTask={{this.save}}
@onPressCancel={{transition-to "management.contacts.index"}}
@onOverlayReady={{fn (mut this.overlay)}}
diff --git a/addon/templates/management/drivers/index.hbs b/addon/templates/management/drivers/index.hbs
index c3e0ca204..129faa365 100644
--- a/addon/templates/management/drivers/index.hbs
+++ b/addon/templates/management/drivers/index.hbs
@@ -16,19 +16,19 @@
@emptyStateComponent={{component
"table/empty-state"
icon="id-card"
- title="Add your first driver"
- description="Drivers power dispatching, live fleet visibility, assignments, and delivery activity."
- filteredTitle="No drivers match your search"
- filteredDescription="Adjust the search or filters to find another driver."
- primaryText="New driver"
+ title=(t "driver.empty-state.title")
+ description=(t "driver.empty-state.description")
+ filteredTitle=(t "driver.empty-state.filtered-title")
+ filteredDescription=(t "driver.empty-state.filtered-description")
+ primaryText=(t "driver.empty-state.primary-text")
primaryIcon="plus"
primaryAction=this.driverActions.transition.create
- secondaryText="Import"
+ secondaryText=(t "driver.empty-state.secondary-text")
secondaryIcon="upload"
secondaryAction=this.driverActions.import
docsSlug="fleet-ops/resources/drivers/overview"
- docsTitle="Drivers guide"
- docsText="Driver guide"
+ docsTitle=(t "driver.empty-state.docs-title")
+ docsText=(t "driver.empty-state.docs-text")
docsSource="fleet-ops-empty-drivers"
}}
/>
diff --git a/addon/templates/management/drivers/index/new.hbs b/addon/templates/management/drivers/index/new.hbs
index 7eff60912..06d604a64 100644
--- a/addon/templates/management/drivers/index/new.hbs
+++ b/addon/templates/management/drivers/index/new.hbs
@@ -2,7 +2,7 @@
@resource={{this.driver}}
@controller={{this}}
@actionButtons={{this.actionButtons}}
- @headerTitle="Create a new driver"
+ @headerTitle={{t "common.create-a-new-resource" resource=(lowercase (t "resource.driver"))}}
@saveTask={{this.save}}
@onPressCancel={{transition-to "management.drivers.index"}}
@onOverlayReady={{fn (mut this.overlay)}}
diff --git a/addon/templates/management/fleets/index.hbs b/addon/templates/management/fleets/index.hbs
index a8a5f7b5c..28c93fd9c 100644
--- a/addon/templates/management/fleets/index.hbs
+++ b/addon/templates/management/fleets/index.hbs
@@ -15,19 +15,19 @@
@emptyStateComponent={{component
"table/empty-state"
icon="layer-group"
- title="Create your first fleet"
- description="Fleets help group vehicles and drivers for dispatching, reporting, and operational coverage."
- filteredTitle="No fleets match your filters"
- filteredDescription="Adjust the search or filters to find another fleet."
- primaryText="New fleet"
+ title=(t "management.empty-states.fleets.title")
+ description=(t "management.empty-states.fleets.description")
+ filteredTitle=(t "management.empty-states.fleets.filtered-title")
+ filteredDescription=(t "management.empty-states.fleets.filtered-description")
+ primaryText=(t "management.empty-states.fleets.primary-text")
primaryIcon="plus"
primaryAction=this.fleetActions.transition.create
- secondaryText="Import"
+ secondaryText=(t "common.import")
secondaryIcon="upload"
secondaryAction=this.fleetActions.import
docsSlug="fleet-ops/resources/fleets/overview"
- docsTitle="Fleets guide"
- docsText="Fleet guide"
+ docsTitle=(t "management.empty-states.fleets.docs-title")
+ docsText=(t "management.empty-states.fleets.docs-text")
docsSource="fleet-ops-empty-fleets"
}}
/>
diff --git a/addon/templates/management/fleets/index/new.hbs b/addon/templates/management/fleets/index/new.hbs
index a8b0ee5ad..5409620d5 100644
--- a/addon/templates/management/fleets/index/new.hbs
+++ b/addon/templates/management/fleets/index/new.hbs
@@ -2,7 +2,7 @@
@resource={{this.fleet}}
@controller={{this}}
@actionButtons={{this.actionButtons}}
- @headerTitle="Create a new fleet"
+ @headerTitle={{t "common.create-a-new-resource" resource=(lowercase (t "resource.fleet"))}}
@saveTask={{this.save}}
@onPressCancel={{transition-to "management.fleets.index"}}
@onOverlayReady={{fn (mut this.overlay)}}
diff --git a/addon/templates/management/fuel-reports/index.hbs b/addon/templates/management/fuel-reports/index.hbs
index 8ea417e3c..81b026a4a 100644
--- a/addon/templates/management/fuel-reports/index.hbs
+++ b/addon/templates/management/fuel-reports/index.hbs
@@ -15,19 +15,19 @@
@emptyStateComponent={{component
"table/empty-state"
icon="gas-pump"
- title="No fuel reports yet"
- description="Create fuel reports to track vehicle fuel usage, cost, and supporting transaction records."
- filteredTitle="No fuel reports match your filters"
- filteredDescription="Adjust the search or filters to find another fuel report."
- primaryText="New fuel report"
+ title=(t "management.empty-states.fuel-reports.title")
+ description=(t "management.empty-states.fuel-reports.description")
+ filteredTitle=(t "management.empty-states.fuel-reports.filtered-title")
+ filteredDescription=(t "management.empty-states.fuel-reports.filtered-description")
+ primaryText=(t "management.empty-states.fuel-reports.primary-text")
primaryIcon="plus"
primaryAction=this.fuelReportActions.transition.create
- secondaryText="Import"
+ secondaryText=(t "common.import")
secondaryIcon="upload"
secondaryAction=this.fuelReportActions.import
docsSlug="fleet-ops/resources/fuel-reports/overview"
- docsTitle="Fuel reports guide"
- docsText="Fuel reports guide"
+ docsTitle=(t "management.empty-states.fuel-reports.docs-title")
+ docsText=(t "management.empty-states.fuel-reports.docs-text")
docsSource="fleet-ops-empty-fuel-reports"
}}
/>
diff --git a/addon/templates/management/fuel-reports/index/new.hbs b/addon/templates/management/fuel-reports/index/new.hbs
index 7dac6e181..7f54ef2d8 100644
--- a/addon/templates/management/fuel-reports/index/new.hbs
+++ b/addon/templates/management/fuel-reports/index/new.hbs
@@ -2,7 +2,7 @@
@resource={{this.fuelReport}}
@controller={{this}}
@actionButtons={{this.actionButtons}}
- @headerTitle="Create a new fuel report"
+ @headerTitle={{t "common.create-a-new-resource" resource=(lowercase (t "resource.fuel-report"))}}
@saveTask={{this.save}}
@onPressCancel={{transition-to "management.fuel-reports.index"}}
@onOverlayReady={{fn (mut this.overlay)}}
diff --git a/addon/templates/management/fuel-transactions/index.hbs b/addon/templates/management/fuel-transactions/index.hbs
index db493e060..a7df06459 100644
--- a/addon/templates/management/fuel-transactions/index.hbs
+++ b/addon/templates/management/fuel-transactions/index.hbs
@@ -18,16 +18,16 @@
@emptyStateComponent={{component
"table/empty-state"
icon="receipt"
- title=(if this.hasFilters "No transactions match your filters" "No fuel transactions")
- description="Imported fuel card bills and provider purchase records appear here after provider syncs complete."
- filteredTitle="No transactions match your filters"
- filteredDescription="Adjust the search or filters to review other imported transactions."
- primaryText="Refresh"
+ title=(if this.hasFilters (t "management.empty-states.fuel-transactions.filtered-title") (t "management.empty-states.fuel-transactions.title"))
+ description=(t "management.empty-states.fuel-transactions.description")
+ filteredTitle=(t "management.empty-states.fuel-transactions.filtered-title")
+ filteredDescription=(t "management.empty-states.fuel-transactions.filtered-description")
+ primaryText=(t "management.empty-states.fuel-transactions.refresh")
primaryIcon="refresh"
primaryAction=this.refresh
docsSlug="fleet-ops/resources/fuel-reports/overview"
- docsTitle="Fuel reports guide"
- docsText="Fuel reports guide"
+ docsTitle=(t "management.empty-states.fuel-transactions.docs-title")
+ docsText=(t "management.empty-states.fuel-transactions.docs-text")
}}
/>
diff --git a/addon/templates/management/issues/index.hbs b/addon/templates/management/issues/index.hbs
index 27821a9a5..a67214fa5 100644
--- a/addon/templates/management/issues/index.hbs
+++ b/addon/templates/management/issues/index.hbs
@@ -15,19 +15,19 @@
@emptyStateComponent={{component
"table/empty-state"
icon="triangle-exclamation"
- title="No issues reported"
- description="Track vehicle, driver, facility, and service issues here so follow-up work stays visible."
- filteredTitle="No issues match your filters"
- filteredDescription="Clear the search or filters to review other reported issues."
- primaryText="New issue"
+ title=(t "management.empty-states.issues.title")
+ description=(t "management.empty-states.issues.description")
+ filteredTitle=(t "management.empty-states.issues.filtered-title")
+ filteredDescription=(t "management.empty-states.issues.filtered-description")
+ primaryText=(t "management.empty-states.issues.primary-text")
primaryIcon="plus"
primaryAction=this.issueActions.transition.create
- secondaryText="Import"
+ secondaryText=(t "common.import")
secondaryIcon="upload"
secondaryAction=this.issueActions.import
docsSlug="fleet-ops/resources/issues/overview"
- docsTitle="Issues guide"
- docsText="Issues guide"
+ docsTitle=(t "management.empty-states.issues.docs-title")
+ docsText=(t "management.empty-states.issues.docs-text")
docsSource="fleet-ops-empty-issues"
}}
/>
diff --git a/addon/templates/management/issues/index/new.hbs b/addon/templates/management/issues/index/new.hbs
index 9ebe79117..564086c20 100644
--- a/addon/templates/management/issues/index/new.hbs
+++ b/addon/templates/management/issues/index/new.hbs
@@ -2,7 +2,7 @@
@resource={{this.issue}}
@controller={{this}}
@actionButtons={{this.actionButtons}}
- @headerTitle="Create a new issue"
+ @headerTitle={{t "common.create-a-new-resource" resource=(lowercase (t "resource.issue"))}}
@saveTask={{this.save}}
@onPressCancel={{transition-to "management.issues.index"}}
@onOverlayReady={{fn (mut this.overlay)}}
diff --git a/addon/templates/management/places/index.hbs b/addon/templates/management/places/index.hbs
index 488912542..f52196352 100644
--- a/addon/templates/management/places/index.hbs
+++ b/addon/templates/management/places/index.hbs
@@ -14,19 +14,19 @@
@emptyStateComponent={{component
"table/empty-state"
icon="location-dot"
- title="Add your first place"
- description="Places keep frequent pickup, dropoff, facility, and service locations ready for orders and routing."
- filteredTitle="No places match your filters"
- filteredDescription="Adjust the search or filters to find another saved location."
- primaryText="New place"
+ title=(t "management.empty-states.places.title")
+ description=(t "management.empty-states.places.description")
+ filteredTitle=(t "management.empty-states.places.filtered-title")
+ filteredDescription=(t "management.empty-states.places.filtered-description")
+ primaryText=(t "management.empty-states.places.primary-text")
primaryIcon="plus"
primaryAction=this.placeActions.transition.create
- secondaryText="Import"
+ secondaryText=(t "common.import")
secondaryIcon="upload"
secondaryAction=this.placeActions.import
docsSlug="fleet-ops/resources/places/overview"
- docsTitle="Places guide"
- docsText="Places guide"
+ docsTitle=(t "management.empty-states.places.docs-title")
+ docsText=(t "management.empty-states.places.docs-text")
docsSource="fleet-ops-empty-places"
}}
/>
diff --git a/addon/templates/management/vehicles/index.hbs b/addon/templates/management/vehicles/index.hbs
index 433845987..ac2972771 100644
--- a/addon/templates/management/vehicles/index.hbs
+++ b/addon/templates/management/vehicles/index.hbs
@@ -16,19 +16,19 @@
@emptyStateComponent={{component
"table/empty-state"
icon="truck"
- title="Add your first vehicle"
- description="Vehicles connect assignments, live tracking, fleet capacity, maintenance, and compliance history."
- filteredTitle="No vehicles match your filters"
- filteredDescription="Adjust the search or filters to find another vehicle."
- primaryText="New vehicle"
+ title=(t "management.empty-states.vehicles.title")
+ description=(t "management.empty-states.vehicles.description")
+ filteredTitle=(t "management.empty-states.vehicles.filtered-title")
+ filteredDescription=(t "management.empty-states.vehicles.filtered-description")
+ primaryText=(t "management.empty-states.vehicles.primary-text")
primaryIcon="plus"
primaryAction=this.vehicleActions.transition.create
- secondaryText="Import"
+ secondaryText=(t "common.import")
secondaryIcon="upload"
secondaryAction=this.vehicleActions.import
docsSlug="fleet-ops/resources/vehicles/overview"
- docsTitle="Vehicles guide"
- docsText="Vehicle guide"
+ docsTitle=(t "management.empty-states.vehicles.docs-title")
+ docsText=(t "management.empty-states.vehicles.docs-text")
docsSource="fleet-ops-empty-vehicles"
}}
/>
diff --git a/addon/templates/management/vehicles/index/new.hbs b/addon/templates/management/vehicles/index/new.hbs
index 1502e373c..9111ced9a 100644
--- a/addon/templates/management/vehicles/index/new.hbs
+++ b/addon/templates/management/vehicles/index/new.hbs
@@ -2,7 +2,7 @@
@resource={{this.vehicle}}
@controller={{this}}
@actionButtons={{this.actionButtons}}
- @headerTitle="Create a new vehicle"
+ @headerTitle={{t "common.create-a-new-resource" resource=(lowercase (t "resource.vehicle"))}}
@saveTask={{this.save}}
@onPressCancel={{transition-to "management.vehicles.index"}}
@onOverlayReady={{fn (mut this.overlay)}}
diff --git a/addon/templates/management/vendors/index.hbs b/addon/templates/management/vendors/index.hbs
index 7f65fc1be..d4214ed2e 100644
--- a/addon/templates/management/vendors/index.hbs
+++ b/addon/templates/management/vendors/index.hbs
@@ -16,19 +16,19 @@
@emptyStateComponent={{component
"table/empty-state"
icon="building"
- title="Add your first vendor"
- description="Vendors let your team manage external carriers, service providers, and operational partners."
- filteredTitle="No vendors match your filters"
- filteredDescription="Adjust the search or filters to find another vendor."
- primaryText="New vendor"
+ title=(t "management.empty-states.vendors.title")
+ description=(t "management.empty-states.vendors.description")
+ filteredTitle=(t "management.empty-states.vendors.filtered-title")
+ filteredDescription=(t "management.empty-states.vendors.filtered-description")
+ primaryText=(t "management.empty-states.vendors.primary-text")
primaryIcon="plus"
primaryAction=this.vendorActions.transition.create
- secondaryText="Import"
+ secondaryText=(t "common.import")
secondaryIcon="upload"
secondaryAction=this.vendorActions.import
docsSlug="fleet-ops/resources/vendors/overview"
- docsTitle="Vendors guide"
- docsText="Vendor guide"
+ docsTitle=(t "management.empty-states.vendors.docs-title")
+ docsText=(t "management.empty-states.vendors.docs-text")
docsSource="fleet-ops-empty-vendors"
}}
/>
diff --git a/addon/templates/management/vendors/index/new.hbs b/addon/templates/management/vendors/index/new.hbs
index e449f06c9..4c6b104cf 100644
--- a/addon/templates/management/vendors/index/new.hbs
+++ b/addon/templates/management/vendors/index/new.hbs
@@ -2,7 +2,7 @@
@resource={{this.vendor}}
@controller={{this}}
@actionButtons={{this.actionButtons}}
- @headerTitle="Create a new vendor"
+ @headerTitle={{t "common.create-a-new-resource" resource=(lowercase (t "resource.vendor"))}}
@saveTask={{this.save}}
@onPressCancel={{transition-to "management.vendors.index"}}
@onOverlayReady={{fn (mut this.overlay)}}
diff --git a/addon/templates/management/vendors/integrated.hbs b/addon/templates/management/vendors/integrated.hbs
index 31c395f23..1375abb6f 100644
--- a/addon/templates/management/vendors/integrated.hbs
+++ b/addon/templates/management/vendors/integrated.hbs
@@ -15,13 +15,13 @@
@emptyStateComponent={{component
"table/empty-state"
icon="plug"
- title="No integrated vendors yet"
- description="Integrated vendor records appear here after vendor integrations are connected and synchronized."
- filteredTitle="No integrated vendors match your filters"
- filteredDescription="Adjust the search or filters to find another integrated vendor."
+ title=(t "management.empty-states.integrated-vendors.title")
+ description=(t "management.empty-states.integrated-vendors.description")
+ filteredTitle=(t "management.empty-states.integrated-vendors.filtered-title")
+ filteredDescription=(t "management.empty-states.integrated-vendors.filtered-description")
docsSlug="fleet-ops/resources/vendors/integrated-vendors"
- docsTitle="Integrated vendors guide"
- docsText="Integrated vendors guide"
+ docsTitle=(t "management.empty-states.integrated-vendors.docs-title")
+ docsText=(t "management.empty-states.integrated-vendors.docs-text")
docsSource="fleet-ops-empty-integrated-vendors"
}}
/>
diff --git a/translations/en-us.yaml b/translations/en-us.yaml
index 5831cc86c..0c800847a 100644
--- a/translations/en-us.yaml
+++ b/translations/en-us.yaml
@@ -1,7 +1,274 @@
fleet-ops:
extension-name: Fleet-Ops
+management:
+ hub:
+ eyebrow: Resources
+ title: Resources Hub
+ subtitle: Manage the people, vehicles, places, partners, and operating records that keep dispatch grounded.
+ action-queue: Action Queue
+ action-queue-description: Prioritized from current resource readiness.
+ guides: Guides
+ guides-description: Read the guide before changing resource setup.
+ read-guide: Read the guide on {resource}
+ sections:
+ people_assets:
+ title: People and Assets
+ description: Keep dispatchable drivers, vehicles, and fleet groupings ready for live work.
+ network:
+ title: Operating Network
+ description: Maintain the partners, contacts, and places used while creating and dispatching orders.
+ exceptions:
+ title: Fuel and Exceptions
+ description: Review fuel activity and operational issues before they affect service quality.
+ links:
+ drivers:
+ label: Drivers
+ description: Manage driver profiles, assignments, and schedules.
+ vehicles:
+ label: Vehicles
+ description: Track vehicles, device links, equipment, and service context.
+ fleets:
+ label: Fleets
+ description: Group drivers and vehicles by team, region, or service type.
+ vendors:
+ label: Vendors
+ description: Service partners connected to operational work.
+ contacts:
+ label: Contacts
+ description: Customer and contact records for order workflows.
+ places:
+ label: Places
+ description: Reusable locations, zones, and address context.
+ fuel-reports:
+ label: Fuel Reports
+ description: Review reported fuel activity and costs.
+ fuel-transactions:
+ label: Fuel Transactions
+ description: Inspect transaction-level fueling data and matching context.
+ issues:
+ label: Issues
+ description: Track incidents, service issues, and follow-up work.
+ kpis:
+ drivers:
+ label: Drivers
+ caption-ready: Driver profiles available for dispatch.
+ caption-empty: Add driver profiles before dispatching work.
+ action: Manage Drivers
+ loading: Loading resource readiness.
+ vehicles:
+ label: Vehicles
+ caption-ready: Vehicles ready for assignment and tracking.
+ caption-empty: Add vehicles so dispatch has assignable assets.
+ action: Track Vehicles
+ loading: Loading fleet asset coverage.
+ issues:
+ label: Open Issues
+ caption-ready: Issues need review before they affect service quality.
+ caption-empty: No open issues are visible right now.
+ action: Review Issues
+ loading: Loading exception health.
+ fuel_records:
+ label: Fuel Records
+ caption-ready: Fuel activity is available for review.
+ caption-empty: Fuel records will appear as reports or transactions arrive.
+ action: Review Fuel Records
+ loading: Loading fuel activity.
+ docs:
+ drivers:
+ label: Drivers
+ title: Drivers guide
+ description: Create driver profiles, app access, assignment context, and operating status.
+ vehicles:
+ label: Vehicles
+ title: Vehicles guide
+ description: Track fleet assets, assignment readiness, and vehicle operating details.
+ fleets:
+ label: Fleets
+ title: Fleets guide
+ description: Group drivers and vehicles by team, region, or service coverage.
+ contacts:
+ label: Contacts
+ title: Contacts guide
+ description: Manage people and organizations used across orders and operational records.
+ places:
+ label: Places
+ title: Places guide
+ description: Manage reusable pickup, dropoff, hub, and facility locations.
+ issues:
+ label: Issues
+ title: Issues guide
+ description: Track incidents, service exceptions, and operational follow-up.
+ actions:
+ add_drivers:
+ label: Add driver profiles
+ description: Drivers are required before dispatch can assign live orders.
+ add_vehicles:
+ label: Add vehicles
+ description: Vehicles make assignment, tracking, and service context usable.
+ assign_vehicles_to_drivers:
+ label: Assign vehicles to drivers
+ description: '{count, plural, one {# driver does} other {# drivers do}} not have an assigned vehicle.'
+ assign_drivers_to_vehicles:
+ label: Assign drivers to vehicles
+ description: '{count, plural, one {# vehicle does} other {# vehicles do}} not have an assigned driver.'
+ attach_devices_to_vehicles:
+ label: Attach devices to vehicles
+ description: '{count, plural, one {# device is} other {# devices are}} ready to attach to vehicles without telemetry hardware.'
+ review_resource_issues:
+ label: Review vehicle and driver issues
+ description: '{count, plural, one {# issue is} other {# issues are}} linked to drivers or vehicles.'
+ review_issues:
+ label: Review open issues
+ description: '{count, plural, one {# issue needs} other {# issues need}} follow-up.'
+ prepare_vehicle_maintenance:
+ label: Prepare upcoming maintenance
+ description: '{count, plural, one {# vehicle schedule needs} other {# vehicle schedules need}} maintenance planning.'
+ close_overdue_work_orders:
+ label: Close overdue work orders
+ description: '{count, plural, one {# resource work order is} other {# resource work orders are}} past due.'
+ review_open_work_orders:
+ label: Review open work orders
+ description: '{count, plural, one {# resource work order is} other {# resource work orders are}} open for vehicles or equipment.'
+ replenish_low_stock_parts:
+ label: Replenish low-stock parts
+ description: '{count, plural, one {# stocked part is} other {# stocked parts are}} at or below the default threshold.'
+ review_unmatched_fuel_transactions:
+ label: Review unmatched fuel transactions
+ description: '{count, plural, one {# fuel transaction needs} other {# fuel transactions need}} resource matching.'
+ create_fleets:
+ label: Create fleet groups
+ description: Group active drivers and vehicles by team, region, or service type.
+ add_operating_places:
+ label: Add operating places
+ description: Places keep recurring pickup, dropoff, facility, and service locations ready.
+ add_service_vendors:
+ label: Add vendors for service work
+ description: Vendors connect maintenance, service work, and operating partners to resources.
+ add_contacts:
+ label: Add operating contacts
+ description: Contacts connect customers, partners, and service people to order workflows.
+ review_fuel:
+ label: Open fuel records
+ description: Fuel activity will appear here once reports or transactions are captured.
+ ready:
+ label: Core resources look ready
+ description: Drivers, vehicles, issues, and supporting records are in a healthy operating posture.
+ empty-states:
+ customers:
+ title: Add your first customer
+ description: Customers give orders an owner, contact details, and account context for service history.
+ filtered-title: No customers match your filters
+ filtered-description: Adjust the search or filters to find another customer.
+ primary-text: New customer
+ contacts:
+ title: Add your first contact
+ description: Contacts keep customer, vendor, and internal stakeholder details ready for orders and communication.
+ filtered-title: No contacts match your filters
+ filtered-description: Adjust the search or filters to find another contact.
+ primary-text: New contact
+ docs-title: Contacts guide
+ docs-text: Contacts guide
+ fleets:
+ title: Create your first fleet
+ description: Fleets help group vehicles and drivers for dispatching, reporting, and operational coverage.
+ filtered-title: No fleets match your filters
+ filtered-description: Adjust the search or filters to find another fleet.
+ primary-text: New fleet
+ docs-title: Fleets guide
+ docs-text: Fleet guide
+ fuel-reports:
+ title: No fuel reports yet
+ description: Create fuel reports to track vehicle fuel usage, cost, and supporting transaction records.
+ filtered-title: No fuel reports match your filters
+ filtered-description: Adjust the search or filters to find another fuel report.
+ primary-text: New fuel report
+ docs-title: Fuel reports guide
+ docs-text: Fuel reports guide
+ fuel-transactions:
+ ledger-title: Fuel transaction ledger
+ ledger-description: Imported fuel card bills and provider purchase records are reviewed here before, during, and after they match to vehicles, trips, and linked Fuel Reports.
+ title: No fuel transactions
+ description: Imported fuel card bills and provider purchase records appear here after provider syncs complete.
+ filtered-title: No transactions match your filters
+ filtered-description: Adjust the search or filters to review other imported transactions.
+ docs-title: Fuel reports guide
+ docs-text: Fuel reports guide
+ no-unmatched-title: No unmatched fuel transactions
+ no-unmatched-description: Fleet-Ops did not find imported provider bills that still need vehicle or trip matching.
+ no-integration-title: No transactions imported for this integration
+ no-integration-description: Run a sync from the fuel integration detail page to import provider bills into this ledger.
+ no-imported-title: No fuel transactions imported yet
+ no-imported-description: Connect PetroApp or another fuel integration, then run a transaction sync. Imported provider bills appear here before linked Fuel Reports are created.
+ open-integrations: Open Fuel Integrations
+ refresh: Refresh
+ reprocess-selected: 'Reprocess {count} selected'
+ actions-menu: Fuel Transaction Actions
+ review-details: Review Details
+ open-fuel-report: Open Fuel Report
+ match-vehicle: Match to Vehicle
+ match-order: Match to Order
+ reprocess-rematch: Reprocess / Rematch
+ ignore-transaction: Ignore Transaction
+ mark-reviewed: Mark Reviewed
+ unlinked-info: This transaction does not have a linked Fuel Report yet.
+ reprocessed: Fuel transaction reprocessed.
+ ignored: Fuel transaction ignored.
+ marked-reviewed: Fuel transaction marked reviewed.
+ columns:
+ transaction: Transaction
+ provider: Provider
+ status: Status
+ vehicle: Vehicle
+ card-internal: Card / Internal
+ trip: Trip
+ station: Station
+ liters: Liters
+ amount: Amount
+ fuel-report: Fuel Report
+ date: Date
+ issues:
+ title: No issues reported
+ description: Track vehicle, driver, facility, and service issues here so follow-up work stays visible.
+ filtered-title: No issues match your filters
+ filtered-description: Clear the search or filters to review other reported issues.
+ primary-text: New issue
+ docs-title: Issues guide
+ docs-text: Issues guide
+ places:
+ title: Add your first place
+ description: Places keep frequent pickup, dropoff, facility, and service locations ready for orders and routing.
+ filtered-title: No places match your filters
+ filtered-description: Adjust the search or filters to find another saved location.
+ primary-text: New place
+ docs-title: Places guide
+ docs-text: Places guide
+ vehicles:
+ title: Add your first vehicle
+ description: Vehicles connect assignments, live tracking, fleet capacity, maintenance, and compliance history.
+ filtered-title: No vehicles match your filters
+ filtered-description: Adjust the search or filters to find another vehicle.
+ primary-text: New vehicle
+ docs-title: Vehicles guide
+ docs-text: Vehicle guide
+ vendors:
+ title: Add your first vendor
+ description: Vendors let your team manage external carriers, service providers, and operational partners.
+ filtered-title: No vendors match your filters
+ filtered-description: Adjust the search or filters to find another vendor.
+ primary-text: New vendor
+ docs-title: Vendors guide
+ docs-text: Vendor guide
+ integrated-vendors:
+ title: No integrated vendors yet
+ description: Integrated vendor records appear here after vendor integrations are connected and synchronized.
+ filtered-title: No integrated vendors match your filters
+ filtered-description: Adjust the search or filters to find another integrated vendor.
+ docs-title: Integrated vendors guide
+ docs-text: Integrated vendors guide
+
common:
+ import: Import
last-modified: Last modified
"yes": "Yes"
"no": "No"
@@ -805,14 +1072,25 @@ driver:
fields:
avatar: Avatar
driver-details: Driver Details
+ select-user: Select User
select-vehicle: Select Vehicle
upload-new-photo: Upload new photo
user-account: User Account
vendor: Vendor
+ user-account-help-text: Each driver profile needs to be connected to a specific user account. This association is essential for managing authentication so each driver can securely access and manage their profile.
select-vendor: Select Vendor
driver-license: Drivers License
license-expiry: License Expiry
no-vehicle-assigned: No Vehicle Assigned
+ empty-state:
+ title: Add your first driver
+ description: Drivers power dispatching, live fleet visibility, assignments, and delivery activity.
+ filtered-title: No drivers match your search
+ filtered-description: Adjust the search or filters to find another driver.
+ primary-text: New driver
+ secondary-text: Import
+ docs-title: Drivers guide
+ docs-text: Driver guide
actions:
unassign-orders: Unassign Orders
unassign-vehicle: Unassign Vehicle
@@ -1532,6 +1810,130 @@ vehicle:
vehicle-year: Vehicle year
vin-number: VIN Number
year: Year
+ form:
+ vehicle-identification: Vehicle Identification
+ trim: Trim
+ color: Color
+ vehicle-color: Vehicle Color
+ serial-number: Serial Number
+ fuel-card-number: Fuel Card Number
+ class: Class
+ assignment-status: Assignment & Status
+ call-sign: Call Sign
+ location: Location
+ measurement-units: Measurement & Units
+ system-of-measurement: System of Measurement
+ select-system-of-measurement: Select System of Measurement
+ fuel-volume-unit: Fuel Volume Unit
+ select-fuel-volume-unit: Select Fuel Volume Unit
+ odometer-usage: Odometer & Usage
+ current-odometer: 'Current Odometer ({unit})'
+ current-odometer-reading: Current Odometer Reading
+ odometer-unit: Odometer Unit
+ select-unit: Select unit
+ odometer-at-purchase: Odometer at Purchase
+ odometer-reading-at-purchase: Odometer reading at purchase
+ body-usage: Body & Usage
+ body-type: Body Type
+ select-body-type: Select body type
+ body-subtype: Body Subtype
+ select-body-subtype: Select body sub-type
+ usage-type: Usage Type
+ select-usage-type: Select usage type
+ ownership-type: Ownership Type
+ select-ownership-type: Select ownership type
+ fuel-type: Fuel Type
+ select-fuel-type: Select fuel type
+ transmission: Transmission
+ select-transmission: Select transmission
+ technical-specifications: Technical Specifications
+ powertrain-engine: Powertrain & Engine
+ engine-number: Engine Number
+ engine-make: Engine Make
+ engine-manufacturer: Engine Manufacturer
+ engine-model: Engine Model
+ engine-family: Engine Family
+ engine-configuration: Engine Configuration
+ engine-configuration-example: 'e.g., Inline-4, V6'
+ cylinder-arrangement: Cylinder Arrangement
+ cylinder-arrangement-example: 'e.g., I, V, H'
+ number-of-cylinders: Number of Cylinders
+ number-of-cylinders-example: 'e.g., 4, 6'
+ engine-size: Engine Size
+ engine-displacement: Engine Displacement
+ horsepower: Horsepower
+ horsepower-rpm: Horsepower RPM
+ rpm-at-max-horsepower: RPM at Max Horsepower
+ torque: Torque
+ torque-rpm: Torque RPM
+ rpm-at-max-torque: RPM at Max Torque
+ capacity-dimensions: Capacity & Dimensions
+ fuel-capacity: Fuel Capacity
+ fuel-tank-capacity: Fuel Tank Capacity
+ payload-capacity: Payload Capacity
+ maximum-payload: Maximum Payload
+ towing-capacity: Towing Capacity
+ seating-capacity: Seating Capacity
+ number-of-seats: Number of Seats
+ vehicle-weight: Vehicle Weight
+ length: Length
+ width: Width
+ height: Height
+ cargo-volume: Cargo Volume
+ payload-volume: Payload Volume (m³)
+ payload-volume-help: The maximum cargo volume this vehicle can carry, in cubic metres.
+ pallet-capacity: Pallet Capacity
+ pallet-capacity-help: The maximum number of standard pallets this vehicle can carry.
+ parcel-capacity: Parcel Capacity
+ parcel-capacity-help: The maximum number of parcels or packages this vehicle can carry.
+ passenger-volume: Passenger Volume
+ interior-volume: Interior Volume
+ ground-clearance: Ground Clearance
+ bed-length: Bed Length
+ example-40: 'e.g. 40'
+ example-20: 'e.g. 20'
+ example-200: 'e.g. 200'
+ regulatory-compliance: Regulatory & Compliance
+ emission-standard: Emission Standard
+ emission-standard-example: 'e.g., Euro 6, EPA Tier 3'
+ gvwr: GVWR (Gross Vehicle Weight Rating)
+ gvwr-short: GVWR
+ gcwr: GCWR (Gross Combined Weight Rating)
+ gcwr-short: GCWR
+ dpf-equipped: DPF Equipped
+ scr-equipped: SCR Equipped
+ financial-lifecycle: Financial & Lifecycle
+ asset-values: Asset Values
+ currency: Currency
+ acquisition-cost: Acquisition Cost
+ current-value: Current Value
+ insurance-value: Insurance Value
+ depreciation-rate: Depreciation Rate (%)
+ lifecycle-service-life: Lifecycle & Service Life
+ estimated-service-life-distance: Estimated Service Life (Distance)
+ total-distance: Total distance
+ service-life-distance-unit: Service Life Distance Unit
+ estimated-service-life-months: Estimated Service Life (Months)
+ purchase-date: Purchase Date
+ lease-expiry-date: Lease Expiry Date
+ date-placeholder: DD-MM-YYYY
+ financing-loan: Financing (Loan)
+ loan-amount: Loan Amount
+ number-of-payments: Number of Payments
+ first-payment-date: First Payment Date
+ orchestrator-constraints: Orchestrator Constraints
+ skills-capabilities: Skills & Capabilities
+ vehicle-skills: Vehicle Skills
+ vehicle-skills-help: Skills this vehicle can fulfil (e.g. refrigerated, hazmat). Used by the Orchestrator for order matching.
+ select-skills: Select skills…
+ availability-window: Availability Window
+ available-from: Available From
+ available-from-help: Earliest time this vehicle is available for dispatch (HH:MM).
+ available-until: Available Until
+ available-until-help: Latest time this vehicle should complete its last stop (HH:MM).
+ task-limits: Task Limits
+ max-tasks: Max Tasks
+ max-tasks-help: Maximum number of stops/orders this vehicle can be assigned per Orchestrator run. Leave blank for no limit.
actions:
attach-trailer: Attach trailer
attach-equipment: Attach equipment
diff --git a/translations/es-pa.yaml b/translations/es-pa.yaml
index af2c83abb..41ea26d0b 100644
--- a/translations/es-pa.yaml
+++ b/translations/es-pa.yaml
@@ -1,7 +1,274 @@
fleet-ops:
extension-name: Fleet-Ops
+management:
+ hub:
+ eyebrow: Recursos
+ title: Centro de recursos
+ subtitle: Administra las personas, vehículos, ubicaciones, socios y registros operativos necesarios para organizar los despachos.
+ action-queue: Acciones pendientes
+ action-queue-description: Prioridad basada en la disponibilidad actual de los recursos.
+ guides: Guías
+ guides-description: Consulta la guía antes de cambiar la configuración de los recursos.
+ read-guide: Consultar la guía de {resource}
+ sections:
+ people_assets:
+ title: Personal y activos
+ description: Mantén listos para las operaciones a los conductores, vehículos y grupos de flota disponibles para despacho.
+ network:
+ title: Red operativa
+ description: Mantén al día los socios, contactos y lugares usados al crear y despachar pedidos.
+ exceptions:
+ title: Combustible e incidencias
+ description: Revisa la actividad de combustible y las incidencias operativas antes de que afecten la calidad del servicio.
+ links:
+ drivers:
+ label: Conductores
+ description: Administra perfiles, asignaciones y horarios de conductores.
+ vehicles:
+ label: Vehículos
+ description: Consulta vehículos, dispositivos vinculados, equipos y datos de servicio.
+ fleets:
+ label: Flotas
+ description: Agrupa conductores y vehículos por equipo, región o tipo de servicio.
+ vendors:
+ label: Proveedores
+ description: Socios de servicio vinculados con las operaciones.
+ contacts:
+ label: Contactos
+ description: Registros de clientes y contactos para los flujos de pedidos.
+ places:
+ label: Lugares
+ description: Ubicaciones, zonas y direcciones reutilizables.
+ fuel-reports:
+ label: Informes de combustible
+ description: Revisa los informes de actividad y costos de combustible.
+ fuel-transactions:
+ label: Transacciones de combustible
+ description: Consulta los detalles de las transacciones de combustible y sus datos de conciliación.
+ issues:
+ label: Incidencias
+ description: Da seguimiento a incidentes, problemas de servicio y tareas pendientes.
+ kpis:
+ drivers:
+ label: Conductores
+ caption-ready: Hay perfiles de conductores disponibles para los despachos.
+ caption-empty: Agrega perfiles de conductores antes de despachar trabajo.
+ action: Administrar conductores
+ loading: Cargando disponibilidad de recursos.
+ vehicles:
+ label: Vehículos
+ caption-ready: Hay vehículos listos para asignación y seguimiento.
+ caption-empty: Agrega vehículos para que puedan asignarse en los despachos.
+ action: Consultar vehículos
+ loading: Cargando cobertura de la flota.
+ issues:
+ label: Incidencias abiertas
+ caption-ready: Revisa las incidencias antes de que afecten la calidad del servicio.
+ caption-empty: No hay incidencias abiertas por el momento.
+ action: Revisar incidencias
+ loading: Cargando estado de las incidencias.
+ fuel_records:
+ label: Registros de combustible
+ caption-ready: Hay actividad de combustible disponible para revisar.
+ caption-empty: Los registros aparecerán cuando se agreguen informes o transacciones.
+ action: Revisar registros de combustible
+ loading: Cargando actividad de combustible.
+ docs:
+ drivers:
+ label: conductores
+ title: Guía de conductores
+ description: Crea perfiles, accesos a la aplicación y datos operativos y de asignación de conductores.
+ vehicles:
+ label: vehículos
+ title: Guía de vehículos
+ description: Consulta los activos de la flota, su disponibilidad para asignación y sus datos operativos.
+ fleets:
+ label: flotas
+ title: Guía de flotas
+ description: Agrupa conductores y vehículos por equipo, región o cobertura de servicio.
+ contacts:
+ label: contactos
+ title: Guía de contactos
+ description: Administra las personas y organizaciones relacionadas con pedidos y registros operativos.
+ places:
+ label: lugares
+ title: Guía de lugares
+ description: Administra ubicaciones reutilizables de recogida, entrega, centros y establecimientos.
+ issues:
+ label: incidencias
+ title: Guía de incidencias
+ description: Da seguimiento a incidentes, problemas de servicio y tareas pendientes.
+ actions:
+ add_drivers:
+ label: Agregar perfiles de conductores
+ description: Se necesitan perfiles de conductores para asignar pedidos activos.
+ add_vehicles:
+ label: Agregar vehículos
+ description: Los vehículos permiten realizar asignaciones, seguimiento y consultas de servicio.
+ assign_vehicles_to_drivers:
+ label: Asignar vehículos a conductores
+ description: '{count, plural, one {# conductor no tiene} other {# conductores no tienen}} un vehículo asignado.'
+ assign_drivers_to_vehicles:
+ label: Asignar conductores a vehículos
+ description: '{count, plural, one {# vehículo no tiene} other {# vehículos no tienen}} un conductor asignado.'
+ attach_devices_to_vehicles:
+ label: Vincular dispositivos a vehículos
+ description: '{count, plural, one {# dispositivo está listo} other {# dispositivos están listos}} para vincularse a vehículos sin equipo telemático.'
+ review_resource_issues:
+ label: Revisar incidencias de vehículos y conductores
+ description: '{count, plural, one {# incidencia está} other {# incidencias están}} vinculada(s) a conductores o vehículos.'
+ review_issues:
+ label: Revisar incidencias abiertas
+ description: '{count, plural, one {# incidencia requiere} other {# incidencias requieren}} seguimiento.'
+ prepare_vehicle_maintenance:
+ label: Preparar el próximo mantenimiento
+ description: '{count, plural, one {# programa de mantenimiento vehicular requiere} other {# programas de mantenimiento vehicular requieren}} planificación.'
+ close_overdue_work_orders:
+ label: Cerrar órdenes de trabajo vencidas
+ description: '{count, plural, one {# orden de trabajo de recursos está} other {# órdenes de trabajo de recursos están}} vencida(s).'
+ review_open_work_orders:
+ label: Revisar órdenes de trabajo abiertas
+ description: '{count, plural, one {# orden de trabajo de recursos está} other {# órdenes de trabajo de recursos están}} abiertas para vehículos o equipos.'
+ replenish_low_stock_parts:
+ label: Reabastecer piezas con poco inventario
+ description: '{count, plural, one {# pieza en inventario está} other {# piezas en inventario están}} en el límite mínimo predeterminado o por debajo.'
+ review_unmatched_fuel_transactions:
+ label: Revisar transacciones de combustible sin conciliar
+ description: '{count, plural, one {# transacción de combustible requiere} other {# transacciones de combustible requieren}} vincularse a un recurso.'
+ create_fleets:
+ label: Crear grupos de flota
+ description: Agrupa conductores y vehículos activos por equipo, región o tipo de servicio.
+ add_operating_places:
+ label: Agregar lugares de operación
+ description: Guarda ubicaciones frecuentes de recogida, entrega, establecimientos y servicio.
+ add_service_vendors:
+ label: Agregar proveedores de servicio
+ description: Vincula proveedores de mantenimiento, servicios y operaciones con los recursos.
+ add_contacts:
+ label: Agregar contactos de operación
+ description: Vincula clientes, socios y personal de servicio con los flujos de pedidos.
+ review_fuel:
+ label: Consultar registros de combustible
+ description: La actividad de combustible aparecerá cuando se registren informes o transacciones.
+ ready:
+ label: Los recursos principales están listos
+ description: Conductores, vehículos, incidencias y registros complementarios están en buen estado operativo.
+ empty-states:
+ customers:
+ title: Agrega tu primer cliente
+ description: Los clientes vinculan los pedidos con sus contactos y con el historial del servicio.
+ filtered-title: Ningún cliente coincide con los filtros
+ filtered-description: Ajusta la búsqueda o los filtros para encontrar otro cliente.
+ primary-text: Nuevo cliente
+ contacts:
+ title: Agrega tu primer contacto
+ description: Guarda los datos de clientes, proveedores y otras personas relacionadas con los pedidos y las comunicaciones.
+ filtered-title: Ningún contacto coincide con los filtros
+ filtered-description: Ajusta la búsqueda o los filtros para encontrar otro contacto.
+ primary-text: Nuevo contacto
+ docs-title: Guía de contactos
+ docs-text: Guía de contactos
+ fleets:
+ title: Crea tu primera flota
+ description: Agrupa vehículos y conductores para los despachos, informes y cobertura operativa.
+ filtered-title: Ninguna flota coincide con los filtros
+ filtered-description: Ajusta la búsqueda o los filtros para encontrar otra flota.
+ primary-text: Nueva flota
+ docs-title: Guía de flotas
+ docs-text: Guía de flotas
+ fuel-reports:
+ title: Aún no hay informes de combustible
+ description: Crea informes para registrar el consumo, los costos de combustible y las transacciones relacionadas con los vehículos.
+ filtered-title: Ningún informe de combustible coincide con los filtros
+ filtered-description: Ajusta la búsqueda o los filtros para encontrar otro informe de combustible.
+ primary-text: Nuevo informe de combustible
+ docs-title: Guía de informes de combustible
+ docs-text: Guía de informes de combustible
+ fuel-transactions:
+ ledger-title: Registro de transacciones de combustible
+ ledger-description: Aquí se revisan las facturas de tarjetas de combustible y las compras de proveedores, antes y después de conciliarlas con vehículos, viajes e informes de combustible relacionados.
+ title: No hay transacciones de combustible
+ description: Las facturas importadas de tarjetas de combustible y las compras de proveedores aparecerán aquí cuando se complete la sincronización.
+ filtered-title: Ninguna transacción coincide con los filtros
+ filtered-description: Ajusta la búsqueda o los filtros para revisar otras transacciones importadas.
+ docs-title: Guía de informes de combustible
+ docs-text: Guía de informes de combustible
+ no-unmatched-title: No hay transacciones de combustible sin conciliar
+ no-unmatched-description: Fleet-Ops no encontró facturas importadas de proveedores pendientes de conciliar con vehículos o viajes.
+ no-integration-title: No se importaron transacciones de esta integración
+ no-integration-description: Sincroniza desde el detalle de la integración de combustible para importar facturas de proveedores a este registro.
+ no-imported-title: Aún no se han importado transacciones de combustible
+ no-imported-description: Conecta PetroApp u otra integración de combustible y ejecuta una sincronización. Las facturas importadas aparecerán aquí antes de crear los informes de combustible relacionados.
+ open-integrations: Abrir integraciones de combustible
+ refresh: Actualizar
+ reprocess-selected: 'Volver a procesar {count} seleccionadas'
+ actions-menu: Acciones de transacción de combustible
+ review-details: Revisar detalles
+ open-fuel-report: Abrir informe de combustible
+ match-vehicle: Vincular con un vehículo
+ match-order: Vincular con un pedido
+ reprocess-rematch: Volver a procesar y conciliar
+ ignore-transaction: Ignorar transacción
+ mark-reviewed: Marcar como revisada
+ unlinked-info: Esta transacción aún no tiene un informe de combustible vinculado.
+ reprocessed: Transacción de combustible reprocesada.
+ ignored: Transacción de combustible ignorada.
+ marked-reviewed: Transacción de combustible marcada como revisada.
+ columns:
+ transaction: Transacción
+ provider: Proveedor
+ status: Estado
+ vehicle: Vehículo
+ card-internal: Tarjeta / interno
+ trip: Viaje
+ station: Estación
+ liters: Litros
+ amount: Monto
+ fuel-report: Informe de combustible
+ date: Fecha
+ issues:
+ title: No se han reportado incidencias
+ description: Registra aquí las incidencias relacionadas con vehículos, conductores, instalaciones y servicios para facilitar su seguimiento.
+ filtered-title: Ninguna incidencia coincide con los filtros
+ filtered-description: Limpia la búsqueda o los filtros para revisar otras incidencias reportadas.
+ primary-text: Nueva incidencia
+ docs-title: Guía de incidencias
+ docs-text: Guía de incidencias
+ places:
+ title: Agrega tu primer lugar
+ description: Guarda ubicaciones frecuentes de recogida, entrega, instalaciones y servicio para usarlas en pedidos y rutas.
+ filtered-title: Ningún lugar coincide con los filtros
+ filtered-description: Ajusta la búsqueda o los filtros para encontrar otra ubicación guardada.
+ primary-text: Nuevo lugar
+ docs-title: Guía de lugares
+ docs-text: Guía de lugares
+ vehicles:
+ title: Agrega tu primer vehículo
+ description: Los vehículos permiten administrar asignaciones, seguimiento en vivo, capacidad de flota, mantenimiento y cumplimiento.
+ filtered-title: Ningún vehículo coincide con los filtros
+ filtered-description: Ajusta la búsqueda o los filtros para encontrar otro vehículo.
+ primary-text: Nuevo vehículo
+ docs-title: Guía de vehículos
+ docs-text: Guía del vehículo
+ vendors:
+ title: Agrega tu primer proveedor
+ description: Administra transportistas externos, proveedores de servicios y socios operativos.
+ filtered-title: Ningún proveedor coincide con los filtros
+ filtered-description: Ajusta la búsqueda o los filtros para encontrar otro proveedor.
+ primary-text: Nuevo proveedor
+ docs-title: Guía de proveedores
+ docs-text: Guía del proveedor
+ integrated-vendors:
+ title: Aún no hay proveedores integrados
+ description: Los registros aparecerán aquí cuando se conecten y sincronicen las integraciones de proveedores.
+ filtered-title: Ningún proveedor integrado coincide con los filtros
+ filtered-description: Ajusta la búsqueda o los filtros para encontrar otro proveedor integrado.
+ docs-title: Guía de proveedores integrados
+ docs-text: Guía de proveedores integrados
+
common:
+ import: Importar
last-modified: Última modificación
change-layout: Cambiar disposición
online: En línea
@@ -12,6 +279,7 @@ common:
dispatch-orders: Órdenes de envío
dispatch-order: Orden de envío
assign-driver: Asignar conductor
+ unassign-driver: Desasignar conductor
assign-drivers: Asignar conductores
no-driver-assigned: Ningún conductor asignado
no-vehicle-assigned: Sin vehículo asignado
@@ -46,8 +314,21 @@ common:
edit-address: Editar dirección
new-address: Nueva dirección
select-address: Seleccionar dirección
-
- current-job: Current Job
+ save: Guardar
+ save-changes: Guardar cambios
+ done: Listo
+ delete: Eliminar
+ overview: Resumen
+ notes: Notas
+ schedule: Programar
+ optional: Opcional
+ unauthorized-access: No tiene autorización para acceder a este recurso.
+ refresh: Actualizar
+ loading-route: Cargando ruta...
+ hover-to-load-route: Cargando vista previa de la ruta...
+ unable-to-load-route: No se pudo cargar la vista previa de la ruta.
+ calendar-view: Vista de calendario
+ current-job: Trabajo actual
"yes": Sí
"no": No
menu:
@@ -91,6 +372,13 @@ menu:
custom-fields: Campos personalizados
order-board: Tablero de pedidos
avatars: Avatares
+ schedules: Horarios
+ maintenance-history: Historial de mantenimiento
+ map: Mapa
+ scheduling: Programación
+ maintenances: Mantenimientos
+ orchestrator: Orquestador
+ orchestrator-settings: Configuración del orquestador
resource:
asset: Activo
@@ -141,6 +429,8 @@ resource:
issues: Asuntos
maintenance: Mantenimiento
maintenances: Mantenimientos
+ maintenance-schedule: Programa de mantenimiento
+ maintenance-schedules: Programas de mantenimiento
order-config: Configuración de pedido
order-configs: Configuraciones de pedidos
order: Orden
@@ -211,6 +501,7 @@ column:
updated-at: Actualizado en
vehicle: Vehículo
vendor: Proveedor
+ route-type: Tipo de ruta
created: Creado
email: Correo electrónico
title: Título
@@ -236,7 +527,7 @@ column:
neighborhood: Vecindario
postal-code: Código Postal
state: Estado
- make: Hacer
+ make: Marca
model: Modelo
plate-number: Número de placa
year: Año
@@ -244,11 +535,11 @@ column:
created-by: Creado por
customer: Cliente
driver-assigned: Conductor asignado
- dropoff: Dejar
+ dropoff: Entrega
facilitator: Facilitador
items: Elementos
payload: Carga útil
- pickup: Levantar
+ pickup: Recogida
scheduled-at: Programado en
tracking: Seguimiento
transaction: Transacción
@@ -260,6 +551,21 @@ column:
current-job: Trabajo actual
last-seen: Visto por última vez
place: Lugar
+ subject: Asunto
+ summary: Resumen
+ total-cost: Costo total
+ due-at: Fecha de vencimiento
+ serial-number: Número de serie
+ manufacturer: Fabricante
+ part-number: Número de parte
+ quantity-on-hand: Cantidad disponible
+ quantity: Cantidad
+ unit-cost: Costo unitario
+ code: Código
+ interval: Intervalo
+ next-due: Próximo vencimiento
+ asset: Activo
+ performed-by: Realizado por
map:
visibility-controls:
@@ -376,6 +682,8 @@ customer:
select-address: Seleccionar dirección
new-address: Nueva dirección
select-user: Seleccionar usuario
+ send-welcome-email: Enviar correo de bienvenida al portal del cliente
+ send-welcome-email-help-text: Genera una contraseña temporal y envía a este cliente un enlace para iniciar sesión en el portal de clientes.
upload-new-photo: Subir nueva foto
user-account: Cuenta de usuario
user-account-help-text: Cada perfil de cliente debe estar conectado a una cuenta de usuario específica. Esta asociación es esencial para manejar el proceso de autenticación, garantizando que cada cliente pueda acceder y administrar de forma segura su perfil y otros servicios.
@@ -409,33 +717,43 @@ driver:
vendor: Proveedor
select-vendor: Seleccionar proveedor
driver-license: Licencia de conducir
+ license-expiry: Vencimiento de la licencia
no-vehicle-assigned: Ningún vehículo asignado
+ empty-state:
+ title: Agrega tu primer conductor
+ description: Los conductores facilitan los despachos, la visibilidad de la flota en tiempo real, las asignaciones y el seguimiento de entregas.
+ filtered-title: Ningún conductor coincide con tu búsqueda
+ filtered-description: Ajusta la búsqueda o los filtros para encontrar otro conductor.
+ primary-text: Nuevo conductor
+ secondary-text: Importar
+ docs-title: Guía de conductores
+ docs-text: Guía del conductor
actions:
- unassign-orders: Unassign Orders
- unassign-vehicle: Unassign Vehicle
- create-issue: Create Issue
+ unassign-orders: Desasignar pedidos
+ unassign-vehicle: Desasignar vehículo
+ create-issue: Crear incidencia
assign-order: Asignar orden al conductor
assign-vehicle: Asignar vehículo al conductor
locate-driver: Localizar al conductor en el mapa
prompts:
- assign-order-success: Order assigned to {driverName}.
- assign-order-title: "Assign order to {driverName}"
- select-order-warning: "Select an order to assign."
- assign-vehicle-title: "Assign vehicle to {driverName}"
- assign-vehicle-success: "Vehicle assigned to {driverName}."
- select-vehicle-warning: Select a vehicle to assign.
- no-assigned-orders-warning: No assigned orders found for {driverName}.
- select-orders-warning: Select at least one order to unassign.
- unassign-orders-title: Unassign orders from {driverName}
- confirm-unassign-orders-title: Unassign {count} order(s) from {driverName}?
- confirm-unassign-orders-body: "This will remove {driverName} from these orders: {orders}."
- unassign-orders-success: Unassigned {driverName} from {count} order(s).
- no-vehicle-assigned-warning: No vehicle is assigned to {driverName}.
- unassign-vehicle-title: Unassign {vehicleName} from {driverName}?
- unassign-vehicle-body: This removes {driverName} from {vehicleName}. Order assignments are not changed.
- unassign-vehicle-success: Unassigned {vehicleName} from {driverName}.
- issue-title: Issue reported for {driverName}
+ assign-order-success: Pedido asignado a {driverName}.
+ assign-order-title: "Asignar pedido a {driverName}"
+ select-order-warning: "Seleccione un pedido para asignar."
+ assign-vehicle-title: "Asignar vehículo a {driverName}"
+ assign-vehicle-success: "Vehículo asignado a {driverName}."
+ select-vehicle-warning: Seleccione un vehículo para asignar.
+ no-assigned-orders-warning: No se encontraron pedidos asignados a {driverName}.
+ select-orders-warning: Seleccione al menos un pedido para desasignar.
+ unassign-orders-title: Desasignar pedidos de {driverName}
+ confirm-unassign-orders-title: ¿Desasignar {count} pedido(s) de {driverName}?
+ confirm-unassign-orders-body: "Esto quitará a {driverName} de estos pedidos: {orders}."
+ unassign-orders-success: Se desasignó a {driverName} de {count} pedido(s).
+ no-vehicle-assigned-warning: "{driverName} no tiene ningún vehículo asignado."
+ unassign-vehicle-title: ¿Desasignar {vehicleName} de {driverName}?
+ unassign-vehicle-body: Esto quitará a {driverName} de {vehicleName}. Las asignaciones de pedidos no cambiarán.
+ unassign-vehicle-success: Se desasignó {vehicleName} de {driverName}.
+ issue-title: Incidencia reportada para {driverName}
device:
attachment:
title: Activo conectado
@@ -495,10 +813,24 @@ device:
notes-placeholder: Notas
actions:
+ schedule-maintenance: Programar mantenimiento
+ create-work-order: Crear orden de trabajo
+ log-maintenance: Registrar mantenimiento
+ attach-device: Vincular dispositivo
attach-to-vehicle: Attach to Vehicle
detach-from-vehicle: Detach from Vehicle
attach-to-asset: Conectar a activo
prompts:
+ select-device-to-attach-title: Seleccione un dispositivo para vincular
+ confirm-attach-device: "¿Vincular {deviceName} a {vehicleName}?"
+ attach-device-success: Dispositivo vinculado correctamente.
+ detach-from-resource-title: "¿Desvincular {deviceName} del recurso?"
+ detach-from-resource-body: Esto detendrá las actualizaciones telemáticas hasta volver a vincular el dispositivo.
+ detach-from-resource-success: Dispositivo desvinculado del recurso.
+ detach-telematic-device-title: "¿Desvincular {deviceName}?"
+ detach-telematic-device-body: Esto detendrá las actualizaciones telemáticas hasta volver a vincular el dispositivo.
+ no-devices-attached-title: No hay dispositivos vinculados
+ no-devices-attached-body: Vincule un dispositivo para recibir posiciones y eventos telemáticos.
manager-description: "Dispositivos telemáticos instalados en este {resourceType}. Vincule un dispositivo para empezar a recibir posiciones y eventos."
attach-to-vehicle-title: Attach device to vehicle
attach-device-to-vehicle-title: "Attach {deviceName} to vehicle"
@@ -565,16 +897,16 @@ fleet:
add-vehicle: Agregar vehículo a la flota
loading-message: Cargando vehículo de flota...
actions:
- assign-vehicle: Assign Vehicle to Fleet
+ assign-vehicle: Asignar vehículo a la flota
assign-driver: Asignar conductor a la flota
prompts:
- assign-driver-title: Assign driver to {fleetName}
- assign-vehicle-title: Assign vehicle to {fleetName}
- select-driver-warning: Select a driver to assign.
- select-vehicle-warning: Select a vehicle to assign.
- assign-driver-success: Driver assigned to {fleetName}.
- assign-vehicle-success: Vehicle assigned to {fleetName}.
+ assign-driver-title: Asignar conductor a {fleetName}
+ assign-vehicle-title: Asignar vehículo a {fleetName}
+ select-driver-warning: Seleccione un conductor para asignar.
+ select-vehicle-warning: Seleccione un vehículo para asignar.
+ assign-driver-success: Conductor asignado a {fleetName}.
+ assign-vehicle-success: Vehículo asignado a {fleetName}.
fuel-report:
fields:
details: Detalles del informe de combustible
@@ -608,19 +940,19 @@ order:
placeholders:
filter-internal-id: Escriba o escanee IDs internos
card:
- linked-order: Linked Order
- unknown-order: Unknown order
- no-type: No type
- pickup: Pickup
- dropoff: Dropoff
- return: Return
- waypoints: Waypoints
- additional-stop: additional stop
- additional-stops: additional stops
- no-pickup-address: No pickup address
- no-dropoff-address: No dropoff address
- no-route-details: No route details available.
- no-order-linked: No order is linked to this issue.
+ linked-order: Pedido vinculado
+ unknown-order: Pedido desconocido
+ no-type: Sin tipo
+ pickup: Recogida
+ dropoff: Entrega
+ return: Devolución
+ waypoints: Puntos de ruta
+ additional-stop: parada adicional
+ additional-stops: paradas adicionales
+ no-pickup-address: No hay dirección de recogida
+ no-dropoff-address: No hay dirección de entrega
+ no-route-details: No hay detalles de la ruta disponibles.
+ no-order-linked: No hay ningún pedido vinculado a esta incidencia.
fields:
ad-hoc: ad hoc
ad-hoc-help-text: Alternar Ad-Hoc permitirá que el pedido haga ping de manera inteligente a los conductores dentro del área de recogida del pedido sobre el pedido, lo que permitirá que el primer conductor disponible acepte el pedido. Esta es una alternativa a la asignación manual del conductor para pedidos en tiempo real.
@@ -628,7 +960,7 @@ order:
add-item-button: Agregar artículo
add-item-order: Agregar artículo al pedido
add-waypoint: Agregar punto de ruta
- add-waypoint-help-text: "Utilice el botón `Add Waypoint` para agregar más paradas para este pedido. El motor de rutas de Fleetbase optimizará automáticamente la ruta a medida que se agregue o elimine cada parada."
+ add-waypoint-help-text: "Utilice el botón `Agregar punto de ruta` para agregar más paradas a este pedido. El motor de rutas de Fleetbase optimizará automáticamente la ruta cada vez que agregue o elimine una parada."
adhoc-ping: Distancia de ping ad hoc
adhoc-ping-help-text: Esta configuración determina la distancia ad hoc para hacer ping para esta orden; si no se configura, volverá a la configuración predeterminada.
adhoc-ping-message: La distancia debe estar en metros.
@@ -646,7 +978,7 @@ order:
dispatch: Despacho
dispatch-help-text: Al alternar el envío se enviará este pedido inmediatamente después de su creación.
documents-panel-title: "Documentos y archivos"
- dropoff: Dejar
+ dropoff: Entrega
edit-address: Editar dirección
edit-item: Editar artículo
facilitator: Facilitador
@@ -658,6 +990,7 @@ order:
invalid-coordinates: "¡Coordenadas no válidas!"
items-drop: Los artículos caen en
loading-message: Cargando cotizaciones de servicios...
+ updating-service-quotes-message: Actualizando cotizaciones de servicios...
notes-placeholder: Introduzca aquí las notas del pedido....
notes-title: Notas
optimize-route: Optimizar ruta
@@ -666,7 +999,7 @@ order:
order-type-help-text: Seleccionar el tipo de orden le indicará a Fleetbase qué configuraciones de orden usar.
order-type-placeholder: Seleccionar tipo de pedido
payload-entities: Carga útil / Entidades
- pickup: Levantar
+ pickup: Recogida
proof-delivery: Prueba de entrega
proof-delivery-help-text: Seleccione el tipo de comprobante de entrega a solicitar. Puede ser un escaneo de código QR o un método de firma.
proof-delivery-placeholder: Seleccione el método de prueba de entrega
@@ -699,6 +1032,7 @@ order:
driver: Conductor
driver-assigned: Conductor asignado
no-driver-assigned: Ningún conductor asignado
+ date-created: Fecha de creación
get-label: Obtener etiqueta
order-notes-updated: Notas de pedido actualizadas.
payload: Carga útil
@@ -774,6 +1108,7 @@ order:
assign-text: Está a punto de asignar un nuevo conductor ({driverName}) al pedido {orderId}. Haga clic en continuar para confirmar el conductor.
assign-button: Continuar y asignar conductor
date: Fecha prevista
+ date-created: Fecha de creación
driver-assigned: Conductor
vehicle-assigned: Vehículo
no-driver: Sin conductor
@@ -903,7 +1238,7 @@ service-rate:
calculation-method-help-text: Método utilizado para calcular la tarifa COD.
calculation-method-label: Método de cálculo de la tarifa COD
calculation-method-placeholder: Seleccione el método de cálculo de la tarifa COD
- cash-delivery-label: "¿Habilitar tarifa adicional para pedidos `cash on delivery`?"
+ cash-delivery-label: "¿Habilitar una tarifa adicional para pedidos con pago contra entrega?"
cash-delivery-title: Contra reembolso
custom-algorithm-info-message: "Esta opción es para definir un cálculo personalizado para la tarifa de este servicio con variables."
custom-algorithm-info-second-message: Tenga en cuenta que las variables deben estar encerradas entre una sola llave.
@@ -951,7 +1286,7 @@ service-rate:
peak-hours-fee-help-text: Método utilizado para calcular la tarifa de horas punta.
peak-hours-fee-label: Método de cálculo de la tarifa de horas pico
peak-hours-fee-placeholder: Seleccione el método de cálculo de la tarifa de horas pico
- peak-hours-label: "¿Habilitar cargo adicional por pedido realizado durante el servicio definido `peak hours`?"
+ peak-hours-label: "¿Habilitar una tarifa adicional para pedidos realizados durante las horas pico definidas?"
peak-hours-percentage-help-text: Define una tarifa basada en porcentaje del subtotal de la tarifa de servicio que se agregará durante las horas pico.
peak-hours-percentage-label: Porcentaje de tarifa en horas pico
peak-hours-start-help-text: Define la hora a la que comienza la tarifa de hora pico.
@@ -976,7 +1311,7 @@ service-rate:
select-unit-placeholder: Seleccionar unidad
select-order-type: Seleccionar tipo de pedido
service-area-help-text: Restrinja este servicio a solicitudes de pedido que se originen en un área de servicio.
- service-area-label: Vía de Servício
+ service-area-label: Área de servicio
service-area-placeholder: Restringir al área de servicio
service-name: Nombre del servicio
service-name-help-text: Nombre para mostrar de este servicio.
@@ -992,7 +1327,7 @@ service-rate:
zone-help-text: Restrinja este servicio a solicitudes de pedidos que se originen en una zona específica.
zone-label: Zona
zone-placeholder: Restringir a zona
- cod-fee-label: Etiqueta de tarifa de bacalao
+ cod-fee-label: Etiqueta de la tarifa COD
vehicle:
placeholders:
@@ -1010,7 +1345,7 @@ vehicle:
updated-at: Última actualización
avatar: Avatar
driver-assigned: Conductor asignado
- make: Hacer
+ make: Marca
model: Modelo
plate-number: Número de placa
select-driver: Seleccionar conductor
@@ -1020,26 +1355,150 @@ vehicle:
vehicle-year: Año del vehículo
vin-number: Número de bastidor
year: Año
+ form:
+ vehicle-identification: Identificación del vehículo
+ trim: Versión
+ color: Color
+ vehicle-color: Color del vehículo
+ serial-number: Número de serie
+ fuel-card-number: Número de tarjeta de combustible
+ class: Clase
+ assignment-status: Asignación y estado
+ call-sign: Distintivo
+ location: Ubicación
+ measurement-units: Medidas y unidades
+ system-of-measurement: Sistema de unidades
+ select-system-of-measurement: Seleccione el sistema de unidades
+ fuel-volume-unit: Unidad de volumen de combustible
+ select-fuel-volume-unit: Seleccione la unidad de volumen de combustible
+ odometer-usage: Odómetro y uso
+ current-odometer: 'Odómetro actual ({unit})'
+ current-odometer-reading: Lectura actual del odómetro
+ odometer-unit: Unidad del odómetro
+ select-unit: Seleccione una unidad
+ odometer-at-purchase: Lectura del odómetro al momento de la compra
+ odometer-reading-at-purchase: Lectura del odómetro al momento de la compra
+ body-usage: Carrocería y uso
+ body-type: Tipo de carrocería
+ select-body-type: Seleccione el tipo de carrocería
+ body-subtype: Subtipo de carrocería
+ select-body-subtype: Seleccione el subtipo de carrocería
+ usage-type: Tipo de uso
+ select-usage-type: Seleccione el tipo de uso
+ ownership-type: Tipo de propiedad
+ select-ownership-type: Seleccione el tipo de propiedad
+ fuel-type: Tipo de combustible
+ select-fuel-type: Seleccione el tipo de combustible
+ transmission: Transmisión
+ select-transmission: Seleccione el tipo de transmisión
+ technical-specifications: Especificaciones técnicas
+ powertrain-engine: Tren motriz y motor
+ engine-number: Número de motor
+ engine-make: Marca del motor
+ engine-manufacturer: Fabricante del motor
+ engine-model: Modelo del motor
+ engine-family: Familia del motor
+ engine-configuration: Configuración del motor
+ engine-configuration-example: 'p. ej., en línea de 4 cilindros, V6'
+ cylinder-arrangement: Disposición de los cilindros
+ cylinder-arrangement-example: 'p. ej., en línea, V, H'
+ number-of-cylinders: Número de cilindros
+ number-of-cylinders-example: 'p. ej., 4, 6'
+ engine-size: Tamaño del motor
+ engine-displacement: Cilindrada
+ horsepower: Potencia
+ horsepower-rpm: RPM de potencia máxima
+ rpm-at-max-horsepower: RPM a potencia máxima
+ torque: Torque
+ torque-rpm: RPM de torque
+ rpm-at-max-torque: RPM a torque máximo
+ capacity-dimensions: Capacidad y dimensiones
+ fuel-capacity: Capacidad de combustible
+ fuel-tank-capacity: Capacidad del tanque de combustible
+ payload-capacity: Capacidad de carga
+ maximum-payload: Carga máxima
+ towing-capacity: Capacidad de remolque
+ seating-capacity: Capacidad de pasajeros
+ number-of-seats: Número de asientos
+ vehicle-weight: Peso del vehículo
+ length: Largo
+ width: Ancho
+ height: Alto
+ cargo-volume: Volumen de carga
+ payload-volume: Volumen de carga (m³)
+ payload-volume-help: Volumen máximo de carga que puede transportar este vehículo, en metros cúbicos.
+ pallet-capacity: Capacidad de palés
+ pallet-capacity-help: Número máximo de palés estándar que puede transportar este vehículo.
+ parcel-capacity: Capacidad de paquetes
+ parcel-capacity-help: Número máximo de paquetes o bultos que puede transportar este vehículo.
+ passenger-volume: Volumen para pasajeros
+ interior-volume: Volumen interior
+ ground-clearance: Altura libre sobre el suelo
+ bed-length: Largo de la plataforma
+ example-40: 'p. ej., 40'
+ example-20: 'p. ej., 20'
+ example-200: 'p. ej., 200'
+ regulatory-compliance: Normativa y cumplimiento
+ emission-standard: Norma de emisiones
+ emission-standard-example: 'p. ej., Euro 6, EPA Tier 3'
+ gvwr: PBV (peso bruto vehicular)
+ gvwr-short: PBV
+ gcwr: PBC (peso bruto combinado)
+ gcwr-short: PBC
+ dpf-equipped: Equipado con filtro de partículas diésel (DPF)
+ scr-equipped: Equipado con reducción catalítica selectiva (SCR)
+ financial-lifecycle: Finanzas y ciclo de vida
+ asset-values: Valores del activo
+ currency: Moneda
+ acquisition-cost: Costo de adquisición
+ current-value: Valor actual
+ insurance-value: Valor asegurable
+ depreciation-rate: Tasa de depreciación (%)
+ lifecycle-service-life: Ciclo de vida y vida útil
+ estimated-service-life-distance: Vida útil estimada (distancia)
+ total-distance: Distancia total
+ service-life-distance-unit: Unidad de distancia de vida útil
+ estimated-service-life-months: Vida útil estimada (meses)
+ purchase-date: Fecha de compra
+ lease-expiry-date: Fecha de vencimiento del arrendamiento
+ date-placeholder: DD-MM-AAAA
+ financing-loan: Financiamiento (préstamo)
+ loan-amount: Monto del préstamo
+ number-of-payments: Número de pagos
+ first-payment-date: Fecha del primer pago
+ orchestrator-constraints: Restricciones del orquestador
+ skills-capabilities: Habilidades y capacidades
+ vehicle-skills: Habilidades del vehículo
+ vehicle-skills-help: Habilidades que puede cubrir este vehículo (p. ej., refrigeración o materiales peligrosos). El orquestador las usa para asignar pedidos.
+ select-skills: Seleccione las habilidades…
+ availability-window: Horario de disponibilidad
+ available-from: Disponible desde
+ available-from-help: Hora más temprana a partir de la cual este vehículo puede despacharse (HH:MM).
+ available-until: Disponible hasta
+ available-until-help: Hora límite para que este vehículo complete su última parada (HH:MM).
+ task-limits: Límites de tareas
+ max-tasks: Máximo de tareas
+ max-tasks-help: Número máximo de paradas o pedidos que se pueden asignar a este vehículo en cada ejecución del orquestador. Déjelo en blanco para no establecer un límite.
actions:
- attach-device: Attach Device
- unassign-orders: Unassign Orders
- create-issue: Create Issue
+ attach-device: Vincular dispositivo
+ unassign-orders: Desasignar pedidos
+ create-issue: Crear incidencia
locate-vehicle: Localizar vehículo en el mapa
attach-trailer: Enganchar remolque
attach-equipment: Conectar equipamiento
detach-equipment: Desconectar equipamiento
prompts:
- attach-device-title: Attach device to {vehicleName}
- select-device-warning: Select a device to attach.
- attach-device-success: Device attached to {vehicleName}.
- no-assigned-orders-warning: No assigned orders found for {vehicleName}.
- select-orders-warning: Select at least one order to unassign.
- unassign-orders-title: Unassign orders from {vehicleName}
- confirm-unassign-orders-title: Unassign {count} order(s) from {vehicleName}?
- confirm-unassign-orders-body: "This will remove {vehicleName} from these orders: {orders}."
- unassign-orders-success: Unassigned {vehicleName} from {count} order(s).
- issue-title: Issue reported for {vehicleName}
+ attach-device-title: Vincular dispositivo a {vehicleName}
+ select-device-warning: Seleccione un dispositivo para vincular.
+ attach-device-success: Dispositivo vinculado a {vehicleName}.
+ no-assigned-orders-warning: No se encontraron pedidos asignados a {vehicleName}.
+ select-orders-warning: Seleccione al menos un pedido para desasignar.
+ unassign-orders-title: Desasignar pedidos de {vehicleName}
+ confirm-unassign-orders-title: ¿Desasignar {count} pedido(s) de {vehicleName}?
+ confirm-unassign-orders-body: "Esto quitará a {vehicleName} de estos pedidos: {orders}."
+ unassign-orders-success: Se desasignó {vehicleName} de {count} pedido(s).
+ issue-title: Incidencia reportada para {vehicleName}
attach-trailer-title: "Enganchar un remolque a {vehicleName}"
select-trailer-warning: Seleccione un remolque para enganchar a este vehículo.
attach-trailer-success: "{trailerName} enganchado a {vehicleName}."
@@ -1073,7 +1532,7 @@ vendor:
integrated-vendor:
fields:
provider: Proveedor
- credentials: Cartas credenciales
+ credentials: Credenciales
credentials-configure-help-text: Opcionalmente, proporcione su propio {param} para configurar este proveedor.
options: Opciones
choose-vendor: Elija proveedor de proveedor integrado
@@ -1082,10 +1541,10 @@ integrated-vendor:
cancel-credentials: Cancelar restablecimiento de credenciales
sensitive-credentials: Las credenciales confidenciales solo se pueden restablecer; para actualizar las credenciales, debe volver a ingresarlas.
reset-credentials: Haga clic aquí para restablecer las credenciales
- sandbox: Salvadera
+ sandbox: Entorno de pruebas
webhook: URL de webhook
webhook-help-text: Los proveedores integrados normalmente requerirán esto para que Fleetbase pueda recibir actualizaciones de la actividad del pedido. ¡No cambies a menos que sepas lo que estás haciendo! ¡Cambiar esto puede interrumpir las actualizaciones de tus pedidos!
- host: Anfitrión personalizado
+ host: Host personalizado
host-help-text: Opcionalmente, proporcione un host personalizado que se deba utilizar para esta integración.
namespace: Espacio de nombres personalizado
namespace-help-text: Opcionalmente, proporcione un espacio de nombres personalizado o una versión de API que se deba utilizar para la integración.
@@ -1261,6 +1720,132 @@ scheduler:
scheduled-orders: Órdenes programadas
unauthorized-to-schedule: No está autorizado a programar pedidos.
scheduling-for: Programación para {orderId}
+ add-shift: Agregar turno
+ create-shift: Crear turno
+ edit-shift: Editar turno
+ delete-shift: Eliminar turno
+ delete-shift-confirm: ¿Está seguro de que desea eliminar este turno? Esta acción no se puede deshacer.
+ shift-created: Turno creado correctamente.
+ shift-updated: Turno actualizado correctamente.
+ shift-title: Título del turno
+ shift-title-placeholder: p. ej., Ruta de entregas de la mañana
+ shift-start: Inicio del turno
+ shift-end: Fin del turno
+ shift-notes-placeholder: Notas opcionales sobre este turno
+ select-start-datetime: Seleccionar fecha y hora de inicio
+ select-end-datetime: Seleccionar fecha y hora de fin
+ select-driver: Seleccionar conductor
+ upcoming-shifts: Próximos turnos
+ no-upcoming-shifts: No hay próximos turnos programados.
+ hours-of-service: Horas de servicio
+ daily-driving-hours: Horas de conducción diarias
+ weekly-hours: Horas semanales
+ compliance-status: Estado de cumplimiento
+ set-availability: Establecer disponibilidad
+ availability-set: Disponibilidad guardada correctamente.
+ availability-time-off: Disponibilidad y tiempo libre
+ no-availability-restrictions: No hay restricciones de disponibilidad.
+ available: Disponible
+ unavailable: No disponible
+ unavailable-time-off: No disponible / Tiempo libre
+ availability-type: Tipo de disponibilidad
+ request-time-off: Solicitar tiempo libre
+ submit-request: Enviar solicitud
+ time-off-requested: Solicitud de tiempo libre enviada.
+ delete-availability: Eliminar disponibilidad
+ delete-availability-confirm: ¿Está seguro de que desea eliminar este registro de disponibilidad?
+ availability-deleted: Registro de disponibilidad eliminado.
+ start-date: Fecha de inicio
+ end-date: Fecha de fin
+ select-start-date: Seleccionar fecha de inicio
+ select-end-date: Seleccionar fecha de fin
+ reason: Motivo
+ reason-placeholder: p. ej., Cita personal
+ notes-placeholder: Notas adicionales opcionales
+ shift: Turno
+ add-shift-hint: Haga clic en "Agregar turno" para programar un nuevo turno.
+ time-off-exceptions: Tiempo libre y excepciones
+ no-exceptions: No hay tiempo libre ni excepciones registradas.
+ exception-approved: Excepción aprobada.
+ exception-rejected: Excepción rechazada.
+ exception-deleted: Excepción eliminada.
+ delete-exception: Eliminar excepción
+ delete-exception-confirm: ¿Está seguro de que desea eliminar esta excepción?
+ approve: Aprobar
+ reject: Rechazar
+ recurring-schedule-created: Programa recurrente creado y turnos generados.
+ recurring-schedule: Programa recurrente
+ is-recurring: Recurrente
+ recurrence-pattern: Patrón de repetición
+ recurrence-start-date: Fecha de inicio
+ recurrence-end-date: Fecha de fin (opcional)
+ template-name: Nombre de la plantilla
+ template-name-placeholder: p. ej., Semana estándar
+ schedule-name: Nombre del programa
+ schedule-name-placeholder: p. ej., Semana estándar
+ one-off-shift: Turno único
+ one-off-shift-help: Active esta opción para agregar un solo turno en una fecha y hora específicas en lugar de un programa recurrente.
+ template-color: Color
+ shift-start-time: Hora de inicio del turno
+ shift-end-time: Hora de fin del turno
+ break-start-time: Hora de inicio del descanso
+ break-end-time: Hora de fin del descanso
+ day-monday: Lunes
+ day-tuesday: Martes
+ day-wednesday: Miércoles
+ day-thursday: Jueves
+ day-friday: Viernes
+ day-saturday: Sábado
+ day-sunday: Domingo
+ frequency-daily: Diario
+ frequency-weekly: Semanal
+ frequency-monthly: Mensual
+ today: Hoy
+ orders-tab: Programa de pedidos
+ fleet-schedule-tab: Programa de flota
+ break-start: Inicio del descanso
+ break-end: Fin del descanso
+ select-break-start: Seleccionar hora de inicio del descanso
+ select-break-end: Seleccionar hora de fin del descanso
+ select-date: Seleccionar fecha
+ working-days: Días laborables
+ recurrence-start: Fecha de inicio
+ recurrence-end: Fecha de fin
+ recurring-schedule-help: Defina un patrón de turnos recurrentes con días y horas. Los turnos se crearán automáticamente para el conductor.
+ shift-deleted: Turno eliminado correctamente.
+ day-mon: Lun
+ day-tue: Mar
+ day-wed: Mié
+ day-thu: Jue
+ day-fri: Vie
+ day-sat: Sáb
+ day-sun: Dom
+ view-day: Día
+ view-week: Semana
+ undo: Deshacer última acción
+ redo: Rehacer última acción
+ search-orders: Buscar pedidos...
+ select-all: Seleccionar todo
+ all-scheduled: Todos los pedidos están programados
+ not-scheduled: Sin programar
+ expand-sidebar: Expandir panel lateral
+ collapse-sidebar: Contraer panel lateral
+ bulk-assign: Asignar {count} pedidos
+ bulk-assign-title: Asignar {count} pedidos en bloque
+ bulk-assign-success: '{count} pedidos asignados correctamente.'
+ bulk-assign-order-count: '{count} pedidos seleccionados para asignar'
+ bulk-assign-spacing-hint: Los pedidos se programarán en secuencia desde la fecha y hora seleccionadas, con intervalos según la duración estimada.
+ assign-to-driver: Asignar al conductor
+ assign-orders: Asignar pedidos
+ orders-to-assign: '{count} pedidos por asignar'
+ scheduled-date: Fecha programada
+ conflict-title: Se detectó un conflicto de programación
+ conflict-description: '{orderTracking} se superpone con un pedido existente de {driverName}.'
+ conflicting-orders: Pedidos en conflicto
+ conflict-resolution-prompt: ¿Cómo desea resolver este conflicto?
+ auto-adjust: Ajustar hora automáticamente
+ assign-anyway: Asignar de todos modos
+ clear-selection: Borrar selección
modals:
new-custom-field-group:
@@ -1465,13 +2050,13 @@ modals:
optimize: Optimizar ruta
optimize-text: Fleetbase optimizará automáticamente la ruta.
add: Agregar punto de ruta
- add-text: Utilice el botón `Add Waypoint` para agregar más paradas para este pedido. El motor de rutas de Fleetbase optimizará automáticamente la ruta a medida que se agregue o elimine cada parada.
+ add-text: Utilice el botón `Agregar punto de ruta` para agregar más paradas a este pedido. El motor de rutas de Fleetbase optimizará automáticamente la ruta cada vez que agregue o elimine una parada.
select-waypoint: Seleccionar punto de referencia
- pickup: Levantar
+ pickup: Recogida
edit-address: Editar dirección
select-pickup: Seleccionar recogida
invalid: ¡Coordenadas no válidas!
- dropoff: Dejar
+ dropoff: Entrega
select-dropoff: Seleccionar entrega
return: Devolver
select-return: Seleccionar retorno
@@ -1521,7 +2106,7 @@ modals:
sub-message: Se perderán todas las configuraciones y ajustes personalizados.
vehicle-details:
- make: Hacer
+ make: Marca
model: Modelo
year: Año
driver-assigned: Conductor asignado
@@ -1591,18 +2176,18 @@ modals:
fuel-cap: Volumen de la tapa de combustible (L)
vendor-details:
- sandbox: Salvadera
- host: Anfitrión
+ sandbox: Entorno de pruebas
+ host: Host
namespace: Espacio de nombres
vendor-form:
choose-vendor: Elija proveedor integrado
create-vendor: Crear proveedor personalizado
- credentials: Cartas credenciales
+ credentials: Credenciales
options: Opciones
hide-advanced: Ocultar Avanzado
show-advanced: Mostrar avanzado
- custom-host: Anfitrión personalizado
+ custom-host: Host personalizado
host-text: Opcionalmente, proporcione un host personalizado que se deba utilizar para esta integración.
custom-namespace: Espacio de nombres personalizado
namespace-text: Opcionalmente, proporcione un espacio de nombres personalizado o una versión de API que se deba utilizar para la integración.
@@ -1613,7 +2198,7 @@ modals:
optionally: Opcionalmente proporcione el suyo propio
configure-vendor: para configurar este proveedor.
select: Seleccionar
- sandbox: Salvadera
+ sandbox: Entorno de pruebas
name-text: El nombre del proveedor, normalmente el nombre de una empresa.
email-text: El correo electrónico del proveedor, esto se puede utilizar para enviar correos electrónicos al proveedor.
phone-text: El teléfono del proveedor \#, esto se puede utilizar para enviar SMS o mensajes al proveedor.
@@ -1631,18 +2216,51 @@ modals:
description-zone: Descripción de la Zona
widget:
+ refresh: Actualizar
+ kpi-earnings:
+ title: Ingresos
+ kpi-distance:
+ title: Distancia recorrida
+ kpi-aov:
+ title: Valor promedio del pedido
+ kpi-active-orders:
+ title: Pedidos activos
+ kpi-drivers-online:
+ title: Conductores en línea
+ kpi-open-issues:
+ title: Incidencias abiertas
+ operations-pulse:
+ title: Pulso operativo
+ revenue-trend:
+ title: Tendencia de ingresos
+ orders-by-status:
+ title: Volumen de pedidos por estado
+ on-time-delivery:
+ title: Entregas a tiempo
+ top-drivers:
+ title: Conductores destacados
+ fuel-efficiency:
+ title: Costo y eficiencia del combustible
+ issues-insights:
+ title: Análisis de incidencias
+ maintenance-overview:
+ title: Resumen de mantenimiento
+ geofence-violations:
+ title: Incumplimientos de geocerca
+ live-fleet:
+ title: Mapa de flota en vivo
fleet-ops-quickstart:
message: Veamos qué puedes hacer para impulsar las operaciones...
start-task: Iniciar tarea
get-started:
- title: Get Started with Fleet-Ops
- subtitle: Set up the essentials and complete your first dispatch flow.
- completed: completed
- preview-title: First order workflow
+ title: Primeros pasos con Fleet-Ops
+ subtitle: Configura lo esencial y completa tu primer flujo de despacho.
+ completed: completado
+ preview-title: Flujo del primer pedido
recommended-features:
- title: Recommended features for you
- subtitle: Explore tools that help new operations teams get productive faster.
- learn-more: Learn more
+ title: Funciones recomendadas para ti
+ subtitle: Explora herramientas que ayudan a los nuevos equipos de operaciones a mejorar su productividad desde el inicio.
+ learn-more: Más información
key-metrics:
title: Métricas de operaciones de flota
earnings: Ganancias
@@ -1839,6 +2457,47 @@ route-list:
settings:
avatar-management: Gestión de avatares
custom-fields: Campos personalizados
+ map:
+ fleet-ops-map-settings: Configuración del mapa de Fleet-Ops
+ fleet-ops-map: Mapa de Fleet-Ops
+ configure-map: Configurar mapa
+ map-provider: Proveedor de mapas
+ map-provider-help-text: Elija el motor de mapas para mostrar el mapa de operaciones en vivo. Leaflet usa mosaicos de OpenStreetMap y no requiere una clave de API. Google Maps requiere una clave válida de Google Maps JavaScript API.
+ select-map-provider: Seleccionar proveedor de mapas
+ google-maps-map-type: Tipo de mapa
+ google-maps-map-type-help-text: Estilo de mapa predeterminado cuando Google Maps está activo.
+ select-map-type: Seleccionar tipo de mapa
+ show-traffic-layer: Mostrar capa de tráfico
+ show-traffic-layer-help-text: Mostrar las condiciones del tráfico en tiempo real en Google Maps.
+ show-transit-layer: Mostrar capa de transporte público
+ show-transit-layer-help-text: Mostrar las rutas de transporte público en Google Maps.
+ settings-saved: Configuración del mapa guardada correctamente.
+ settings-save-failed: No se pudo guardar la configuración del mapa. Inténtelo de nuevo.
+ scheduling:
+ scheduling-settings: Configuración de programación
+ materialisation: Generación de turnos
+ horizon-days: Horizonte de programación (días)
+ horizon-days-help: Cuántos días por adelantado se deben generar turnos al aplicar una plantilla de programa.
+ default-shift-duration: Duración predeterminada del turno (horas)
+ default-shift-duration-help: Cantidad predeterminada de horas de un turno cuando no se especifica una hora de fin.
+ hours-of-service: Límites de horas de servicio
+ hos-daily-limit: Límite diario de conducción (horas)
+ hos-daily-limit-help: Máximo de horas que un conductor puede manejar en un solo día.
+ hos-weekly-limit: Límite semanal de conducción (horas)
+ hos-weekly-limit-help: Máximo de horas que un conductor puede manejar en un período continuo de 7 días.
+ behaviour: Comportamiento
+ auto-activate-schedule: Activar programa automáticamente
+ auto-activate-schedule-help: Cambiar automáticamente un programa de Borrador a Activo cuando se crea el primer turno.
+ notify-drivers: Notificar a los conductores sobre cambios de turno
+ notify-drivers-help: Enviar una notificación push a los conductores cuando se creen, actualicen o eliminen sus turnos.
+ schedule-templates: Plantillas de programa reutilizables
+ no-templates: Aún no se han creado plantillas reutilizables.
+ new-template: Nueva plantilla
+ edit-template: Editar plantilla
+ delete-template: Eliminar plantilla
+ delete-template-confirm: ¿Está seguro de que desea eliminar la plantilla "{name}"? Esto no afectará los programas existentes.
+ template-deleted: Plantilla eliminada correctamente.
+ settings-saved: Configuración de programación guardada.
notifications:
fleet-ops-notification-settings: Configuración de notificaciones de operaciones de flota
fleet-ops-notifications: Notificaciones de operaciones de flota