@fleetbase/fleetops-engine
Version:
Fleet & Transport Management Extension for Fleetbase
58 lines (44 loc) • 1.46 kB
JavaScript
import Component from '@glimmer/component';
import { inject as service } from '@ember/service';
import { action } from '@ember/object';
export default class FleetDetailsComponent extends Component {
fleetActions;
driverActions;
vehicleActions;
get resource() {
return this.args.resource ?? this.args.fleet;
}
get drivers() {
return this.resourceArray(this.resource?.drivers);
}
get driversCount() {
return Number(this.resource?.drivers_count ?? this.drivers.length ?? 0);
}
get driversOnlineCount() {
return Number(this.resource?.drivers_online_count ?? this.drivers.filter((driver) => driver?.online).length ?? 0);
}
resourceArray(resources) {
if (!resources) {
return [];
}
if (typeof resources.toArray === 'function') {
return resources.toArray();
}
return Array.isArray(resources) ? resources : [];
}
viewFleet(fleet) {
return this.fleetActions.panel.view(fleet);
}
viewDriver(driver) {
return this.driverActions.panel.view(driver);
}
viewVehicle(vehicle) {
return this.vehicleActions.panel.view(vehicle);
}
assignDriver(fleet) {
return this.fleetActions.assignDriver(fleet);
}
assignVehicle(fleet) {
return this.fleetActions.assignVehicle(fleet);
}
}