Repository navigation
feat(identity): render drivers, customers, vehicles and places through the shared identity components - #120
Merged
Conversation
…translations build again c8af413 inserted the split-tips label between the two lines of the enable-multi-cart-checkout value, which js-yaml reads as a bad mapping entry and the engine build fails.
…h the shared identity cells, pills and select options The orders, network orders, customers and network customers tables use table/cell/identity typed for the shared fleetops-data descriptors, reading the loaded relation or an identity stub named after the row, so a row shows the right tile and name before the relation loads. Clicking a customer opens the storefront customer page; a driver or place opens its FleetOps panel, loading the engine only then. The order details, fulfillment and customer panels, the incoming-order modal, the orders and customers widgets and the food-truck cards use Customer::Pill, Driver::Pill and Vehicle::Pill in place of hand-rolled avatar blocks, whose styles are removed. Driver, vehicle, customer, user and category selects render SelectOption rows with compact selected items. The fleetops-data range moves to ^0.2.3, the version the workspace links.
This was referenced Oct 9, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What change does this PR introduce?
Phase one of the Storefront UX overhaul: every driver, customer, vehicle and place in Storefront now renders through the shared resource identity components instead of hand-rolled markup or the legacy
driver-nameandmedia-namecells. The descriptors and typed wrappers come from@fleetbase/fleetops-data(fleetbase/fleetops-data#86), the generic components from@fleetbase/ember-ui, so nothing here loads the FleetOps engine; clicking a driver or place loads it on demand.Tables
table/cell/identitycells typedcustomer,placeanddriver. Each reads the loaded relation and otherwise builds an identity stub from the row'scustomer_name/pickupName/driver_name, so a row renders the name with the right tile even before the relation is loaded; the driver stub loads the driver by uuid on demand. Clicking a customer opens the Storefront customer page (a name-only stub opens nothing); clicking a driver or place opens its FleetOps panel. Empty cells say "No customer" / "No driver assigned" as before.customeridentity cell that keeps opening the Storefront customer page or panel.Pills replace the avatar-plus-name blocks in the order details and fulfillment panels, the order customer panel, the incoming-order modal, the orders and customers dashboard widgets, and the food-truck cards (
<Vehicle::Pill>). Thestorefront-order-person--compact,__avatar,__meta,storefront-customer-cellandstorefront-customer-avatarstyles they replaced are removed; the store block keepsstorefront-order-personand__name.Select options: the assign-driver and order-ready-assign-driver modals, the food-truck vehicle select, the push-notification customer select, the alert user selects in store settings and network settings, and the category selects in the import-products and create-network-category modals now render
<SelectOption::…>rows and compact selected items.Also fixes the
ru-ru.yamlentry from c8af413 that split a two-line value and broke the translations build.Why was this change needed?
Storefront listed drivers, customers and places with plain text or hand-rolled avatars that differed from FleetOps and from each other, with no status dots, no hover summaries and no way to open the record. Reusing the shared identity components gives one rendering across the console, which the card and detail redesigns in the next phases build on.
Other information
Depends on fleetbase/fleetops-data#86 (and fleetbase/fleetops#379 for FleetOps itself).
package.jsonnow asks for fleetops-data^0.2.3; bump to the release that ships #86 when it is published.Validation, run locally against the linked fleetops-data branch:
Tests added or updated: controller tests asserting the identity columns, their resource resolution and stub fallbacks, and the customer navigation; a rendering test proving the shared descriptors, pills and select options resolve inside Storefront; the order details test now checks the customer and driver pills (fallback and loaded); the customers widget test checks the pill.
No API,
fleetbase/postmanorfleetbase/fleetops.iodocumentation impact: the UI changes are internal to the console.