Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
125 commits
Select commit Hold shift + click to select a range
14d80d1
Add inspection maintenance platform foundation
roncodes Jun 17, 2026
c06c470
Use shared inspection data models
roncodes Jun 17, 2026
ccc1afc
Add public inspection runner
roncodes Jun 17, 2026
1fd8cf0
Add the driver-facing inspections API, and cover the inspection platform
roncodes Sep 9, 2026
5e98475
console: stop the inspection forms writing to the model during render…
roncodes Sep 10, 2026
73bfed6
Model an inspection form as groups of typed fields
roncodes Sep 10, 2026
94073a8
Answer, export and migrate inspections built from fields
roncodes Sep 10, 2026
a29b250
Cover the second cut: the form, the answers, the files
roncodes Sep 10, 2026
b5efd42
Build the form, answer it, and show what came back
roncodes Sep 10, 2026
f8c569f
Take the console's file references and its cleared answers
roncodes Sep 10, 2026
1addf1f
Do not reach for a destroyed component, or a form's console id
roncodes Sep 10, 2026
7fac84c
Do not ask for a translation of a severity nobody wrote
roncodes Sep 10, 2026
df591b2
Say datetime where the app says datetime
roncodes Sep 10, 2026
fe6e5f9
Pin the whole body the app sends
roncodes Sep 10, 2026
8d76d62
Guard the two remaining deferred loads
roncodes Sep 10, 2026
f63667c
Let the public link run a form built from fields
roncodes Sep 10, 2026
3e42dbd
Do not let the builder delete a field it never owned
roncodes Sep 10, 2026
0f76aa7
Guard the other severity label the same way
roncodes Sep 10, 2026
4599c82
console: fix the inspection form's settings, labels, selects and fiel…
roncodes Sep 10, 2026
cc7fc51
console: keep the builder's draft alive, and stop the group inputs lo…
roncodes Sep 10, 2026
85b1464
console: let the field editor save, and stack its two toggles
roncodes Sep 10, 2026
8a7638c
console: let a field's name read, with its actions below
roncodes Sep 10, 2026
f8370d4
console: retire frequency, and show option labels rather than values
roncodes Sep 10, 2026
8f84da0
Make an inspection read as a checklist, and keep its links
roncodes Sep 10, 2026
6cb9132
Let a link be revoked, and put the record details back in a panel
roncodes Sep 10, 2026
8253510
Point the public inspection page at the routes that exist
roncodes Sep 10, 2026
71386b5
Build the inspection sheet as concept 1c, "Promotion"
roncodes Sep 10, 2026
9fa0d8b
Add the three exports the sheet was already importing
roncodes Sep 10, 2026
a64a66e
Span a promoted field in place, and stop restyling the console's inputs
roncodes Sep 10, 2026
f20d63f
Open a failed check's detail in a flyout, so no answer moves the sheet
roncodes Sep 11, 2026
5026ecf
Finish the failure style, refresh link lists live, use the attribution
roncodes Sep 11, 2026
fba594b
Let a public link take photos, and close four gaps around it
roncodes Sep 11, 2026
bd77410
Name uploaded link files by their detected type, not the device's name
roncodes Sep 11, 2026
3313a50
Inspection links for anyone, behind a PIN; record who submitted
roncodes Sep 11, 2026
b5ca443
Fix the public PIN screen and delivery choice; send the link with the…
roncodes Sep 11, 2026
4c00a1a
Drop the horizontal padding around the form's public links
roncodes Sep 11, 2026
787ddfc
fix(map): invoke leaflet-tile-url instead of passing it by name
roncodes Sep 11, 2026
e124fd8
chore: open release v0.6.66
roncodes Sep 11, 2026
405b59a
Merge pull request #320 from fleetbase/fix/leaflet-tile-url-invocation
roncodes Sep 11, 2026
24f67fc
Keep inspection answers through validation; answer public routes in JSON
roncodes Sep 11, 2026
9b2c6e0
Accept a console submission sent with null counts; standard spinner m…
roncodes Sep 11, 2026
7984789
Fix CI: lint errors, an encrypter in the test harness, and a stale test
roncodes Sep 11, 2026
5eb1f88
Fix the route registration test: chain onto routes, replay resource r…
roncodes Sep 11, 2026
9a69b38
Cover the inspection link PIN, delivery, upload and JSON responses
roncodes Sep 11, 2026
0d11583
Answer every inspection route in JSON, not with a redirect
roncodes Sep 11, 2026
2e130a7
Give the issue a failed inspection raises a location
roncodes Sep 12, 2026
db671b6
Let the field tests store the issue location a failure raises
roncodes Sep 12, 2026
70b7589
Make the inspection record read cleanly
roncodes Sep 14, 2026
09d5ceb
Read a pass and a fail as the same card, in the form's columns
roncodes Sep 14, 2026
d3e2c87
Lift the dark-mode pass card a level
roncodes Sep 14, 2026
82f1808
Ask before an inspection raises anything, and link what it raised
roncodes Sep 14, 2026
fc4d3e9
Stop offering inspection actions that have already been taken
roncodes Sep 14, 2026
0e04f2c
Name inspection answers for what they are, not how they are stored
roncodes Sep 14, 2026
a138c70
Make a field's id mean the same thing everywhere
roncodes Sep 14, 2026
00ab48a
Hand back an item result's photos, not the references to them
roncodes Sep 14, 2026
e17ecea
Report a refusal against the body it was sent under
roncodes Sep 14, 2026
0f3305e
Give a vehicle its inspection history, and stop drawing an empty rule
roncodes Sep 14, 2026
9f2ffe9
Style the one inspection status that had no badge
roncodes Sep 14, 2026
b425b61
Make the inspection history readable, and link the records it names
roncodes Sep 14, 2026
7794fea
Render the vehicle tabs' status badges, and show their spinners
roncodes Sep 14, 2026
face0a6
Use the pills for linked records, and make the form link look like one
roncodes Sep 14, 2026
87742d3
Show a form what has been filed against it
roncodes Sep 14, 2026
60a9cff
Merge pull request #319 from fleetbase/feature/inspections-driver-api
roncodes Sep 14, 2026
10caa62
Label the device, sensor and telematic filter options
roncodes Sep 15, 2026
7c5bf7a
Show an issue or work order the inspection that raised it
roncodes Sep 15, 2026
7658db6
Merge pull request #322 from fleetbase/fix/telematics-device-filter-o…
roncodes Sep 15, 2026
15a7216
Merge pull request #323 from fleetbase/feature/linked-inspections
roncodes Sep 15, 2026
188a957
Compute the Radar triage list and keep its state on alerts
roncodes Sep 15, 2026
9f56135
Improve AFAQY telemetry with resilient batch polling and position web…
roncodes Sep 15, 2026
7df5c9b
Describe every FleetOps model to the resource identity registry
roncodes Sep 15, 2026
9fd9608
Give every FleetOps resource a pill, summary, identity cell and selec…
roncodes Sep 15, 2026
b0ae9ee
Let the driver panel accept promise proxies and identity stubs
roncodes Sep 15, 2026
c645155
Show related records in tables as one-line identity cells
roncodes Sep 15, 2026
6d52f3d
Load the schedule a work order is linked to
roncodes Sep 15, 2026
ad352d3
Never show the attachable UUID as the device's attached asset
roncodes Sep 15, 2026
c4d4ff7
Look up the asset a part is fitted to
roncodes Sep 15, 2026
4d1ec98
Show related records in details as pills
roncodes Sep 15, 2026
301c91f
Store the vendor's id when assigning a vendor to a place
roncodes Sep 15, 2026
44a94ee
Render every record picker with its resource's select-option
roncodes Sep 15, 2026
6a1385d
Delete the engine copies of what ember-ui now provides
roncodes Sep 15, 2026
35d3d82
Drop the multi-model filter styles ember-ui now carries
roncodes Sep 15, 2026
a2d8267
Translate the hover summary fact labels
roncodes Sep 15, 2026
067d030
Show the fuel provider transactions' vehicle as an identity cell
roncodes Sep 15, 2026
1ab213d
Write the morning brief and lay Radar out on a time scale
roncodes Sep 15, 2026
780424d
Format the converted controllers and drop unused imports
roncodes Sep 15, 2026
4ce6ae2
Test the descriptors, the one-line cells and every wrapper
roncodes Sep 15, 2026
a7bf823
Replace the Resources Hub with Radar
roncodes Sep 15, 2026
434f3ba
Add the Radar dashboard widget and let the dummy app run its tests
roncodes Sep 15, 2026
cce089d
Complete PetroApp sandbox support and fuel integration review workflows
roncodes Sep 16, 2026
40c6a56
Refactor telemetry ingestion and UI into provider-neutral infrastructure
roncodes Sep 16, 2026
677645c
Merge origin/release/v0.6.66 into feature/resource-identity-system
roncodes Sep 16, 2026
0262da3
Render the fuel transaction match picker with select-options
roncodes Sep 16, 2026
470335f
Inject the vendor actions service the vehicle columns read
roncodes Sep 16, 2026
73da394
Trim descriptor badges to fleet assets and format their dates with da…
roncodes Sep 16, 2026
d10d51f
Give the driver card a light-mode hover
roncodes Sep 16, 2026
eb0e60a
Point the device table's telematic column at the telematic
roncodes Sep 16, 2026
4e1d053
Back the fuel transaction detail pills with loadable stubs
roncodes Sep 16, 2026
96e660b
Render vendor, contact and customer names as identity cells
roncodes Sep 16, 2026
38cce52
Fix the vendor pill, list columns, contact type labels and the vehicl…
roncodes Sep 16, 2026
36ce2d4
Add the vendor pill and summary wrappers
roncodes Sep 16, 2026
c8fd62a
Move badge styling to ember-ui, size the list cell like an identity c…
roncodes Sep 16, 2026
d8428a7
Clarify vehicle presence filters with radio inputs
roncodes Sep 16, 2026
7675dcc
Move vehicle presence filters last and align labels
roncodes Sep 16, 2026
239e640
Exclude vehicle presence filters from column picker
roncodes Sep 16, 2026
5c0a013
Fix vehicle details and fuel integration navigation and layouts
roncodes Sep 16, 2026
b9d524d
Cover telemetry recovery and fuel sync dispatch failures
roncodes Sep 16, 2026
b0ba79e
Model queue lease completion in telemetry recovery tests
roncodes Sep 16, 2026
7dad040
Include uncovered line numbers in backend coverage reports
roncodes Sep 16, 2026
9d5fe93
Widen fuel transaction matching and review panel
roncodes Sep 16, 2026
580920f
Cover remaining pagination guards and fuel report association
roncodes Sep 16, 2026
e74c18c
Lock saved fuel integration providers and space matched resources
roncodes Sep 16, 2026
d5ad241
Load matched fuel transaction orders and prioritize tracking labels
roncodes Sep 16, 2026
feef2d8
Merge pull request #324 from fleetbase/feature/resource-identity-system
roncodes Sep 16, 2026
16fe932
Merge release/v0.6.66 into Radar feature branch
roncodes Sep 16, 2026
27f0344
Use satellite dish icons for Radar navigation and widgets
roncodes Sep 16, 2026
56d3b89
Give the alerts table the public_id its model writes
roncodes Sep 16, 2026
6241fe5
Tidy Radar's controls and open records in a panel
roncodes Sep 16, 2026
4bcae43
Keep Radar state working on the locked core-api, fully covered
roncodes Sep 16, 2026
a69f25e
Fix Radar's selection, footer, PIN sending and vehicle picker
roncodes Sep 16, 2026
fe70c6e
Fix fuel transactions index background
roncodes Sep 16, 2026
17f8e8b
Give record context panels the same header, tabs and actions as their…
roncodes Sep 16, 2026
a35a94b
Bring the remaining record panels to parity, fix the facilitator free…
roncodes Sep 16, 2026
2b83b3c
Merge pull request #325 from fleetbase/feature/resources-hub-refactor…
roncodes Sep 16, 2026
eaf7b3c
Upgrade engine dependencies
roncodes Sep 16, 2026
cf8695f
Give the custom field test fixtures a public_id column
roncodes Sep 16, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
17 changes: 11 additions & 6 deletions RELEASE.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,20 @@
> v0.6.65 ~ "First-class trailer operations"
> v0.6.66 ~ "Inspections"

---
## What's New
- **Trailers become a first-class Fleet-Ops resource.** Create and manage trailers independently, attach them to vehicles, connect equipment and telematics devices, and review operational, maintenance, location, and towing details from dedicated Trailer screens.
- **Vehicle and equipment relationships are easier to understand.** Vehicle details expose attached trailers and equipment, while Trailer details show the current towing vehicle and installed equipment.
- **Trailer APIs support complete integrations.** Internal and public endpoints cover trailer lifecycle, filtering, towing connections, equipment, devices, telemetry, imports, and exports.
- **Inspection forms are built from typed fields.** A form is groups of fields laid out on a grid: pass/fail checks with severity and on-fail settings, text, numbers, selections, dates, photo uploads and signatures. Forms are built and published from a form builder in the console.
- **One inspection sheet everywhere.** The same sheet is used to fill in an inspection in the console, to read one back, and on a public link. A failed check opens its severity, unsafe flag, comment and photos in place, and a defects tray summarises what needs attention. It works on phones and tablets.
- **Drivers file inspections through the API.** The `v1` inspection endpoints list published forms, file an inspection against one, and read back submissions and a vehicle's history, for the Navigator app and other integrations.
- **Inspection links for anyone in the organisation.** A link can be assigned to any user, protected by a six-digit PIN, and emailed or texted to them. A failed inspection can raise an issue and open a work order, and every submission records who filed it.

---
## Fixes
- Place, zone and service area details, and the place and point map modals, no longer fail to render with "A resolved helper cannot be passed as a named argument".

---
## Testing
- Added frontend, backend, API-contract, attachment, telematics, spatial-data, permission, and serialization coverage for first-class trailers.
- Expanded the Fleetbase Postman collection and documentation alongside the Fleet-Ops implementation.
- Model and controller contract tests cover inspection forms, submissions, links and the PIN lockout.
- The Fleetbase Postman collection documents the `v1` inspection endpoints.

---
## Need help?
Expand Down
15 changes: 10 additions & 5 deletions addon/components/ai/create-order-preview.hbs
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@
{{#if this.isEditingOrderType}}
<ModelSelect
@modelName="order-config"
@selectedItemComponent={{component "select-option/order-config" compact=true}}
@selectedModel={{this.draft.order_config_uuid}}
@placeholder="Select order type"
@triggerClass="fleetbase-ai-create-order-preview__inline-select"
Expand All @@ -54,7 +55,7 @@
@onChange={{this.setOrderConfig}}
as |model|
>
{{or model.name model.key}}
<SelectOption::OrderConfig @option={{model}} />
</ModelSelect>
{{else}}
<strong>{{this.orderTypeLabel}}</strong>
Expand Down Expand Up @@ -105,6 +106,7 @@
{{#if this.isEditingPickup}}
<ModelSelect
@modelName="place"
@selectedItemComponent={{component "select-option/place" compact=true}}
@selectedModel={{this.payload.pickup}}
@placeholder="Pickup address"
@triggerClass="fleetbase-ai-create-order-preview__inline-select"
Expand All @@ -115,7 +117,7 @@
@onChange={{fn this.setPayloadPlace "pickup"}}
as |place|
>
<div class="fleetbase-ai-create-order-preview__select-label">{{this.addressLabel place}}</div>
<SelectOption::Place @option={{place}} />
</ModelSelect>
{{else}}
<strong>{{this.pickupLabel}}</strong>
Expand All @@ -136,6 +138,7 @@
{{#if this.isEditingDropoff}}
<ModelSelect
@modelName="place"
@selectedItemComponent={{component "select-option/place" compact=true}}
@selectedModel={{this.payload.dropoff}}
@placeholder="Dropoff address"
@triggerClass="fleetbase-ai-create-order-preview__inline-select"
Expand All @@ -146,7 +149,7 @@
@onChange={{fn this.setPayloadPlace "dropoff"}}
as |place|
>
<div class="fleetbase-ai-create-order-preview__select-label">{{this.addressLabel place}}</div>
<SelectOption::Place @option={{place}} />
</ModelSelect>
{{else}}
<strong>{{this.dropoffLabel}}</strong>
Expand All @@ -167,6 +170,7 @@
{{#if this.isEditingDriver}}
<ModelSelect
@modelName="driver"
@selectedItemComponent={{component "select-option/driver" compact=true}}
@placeholder="Assign driver"
@triggerClass="fleetbase-ai-create-order-preview__inline-select"
@allowClear={{true}}
Expand All @@ -175,7 +179,7 @@
@onChange={{this.setDriver}}
as |driver|
>
{{driver.name}}
<SelectOption::Driver @option={{driver}} />
</ModelSelect>
{{else}}
<strong>{{this.driverLabel}}</strong>
Expand All @@ -196,6 +200,7 @@
{{#if this.isEditingVehicle}}
<ModelSelect
@modelName="vehicle"
@selectedItemComponent={{component "select-option/vehicle" compact=true}}
@placeholder="Assign vehicle"
@triggerClass="fleetbase-ai-create-order-preview__inline-select"
@allowClear={{true}}
Expand All @@ -204,7 +209,7 @@
@onChange={{this.setVehicle}}
as |vehicle|
>
{{or vehicle.display_name vehicle.name vehicle.plate_number}}
<SelectOption::Vehicle @option={{vehicle}} />
</ModelSelect>
{{else}}
<strong>{{this.vehicleLabel}}</strong>
Expand Down
24 changes: 24 additions & 0 deletions addon/components/asset-connection/pill.hbs
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
<Resource::Pill
@resource={{(or @assetConnection @resource)}}
@resourceType="asset-connection"
@title={{@title}}
@titleFallback={{@titleFallback}}
@subtitle={{@subtitle}}
@showOnlineIndicator={{@showOnlineIndicator}}
@noPopover={{@noPopover}}
@popoverPlacement={{@popoverPlacement}}
@static={{@static}}
@onClick={{@onClick}}
@onView={{@onView}}
@anchorClass={{@anchorClass}}
@imageClass={{@imageClass}}
@imageWrapperClass={{@imageWrapperClass}}
@contentWrapperClass={{@contentWrapperClass}}
@titleClass={{@titleClass}}
@subtitleClass={{@subtitleClass}}
@useBlock={{(has-block)}}
...attributes
as |resource|
>
{{yield resource}}
</Resource::Pill>
1 change: 1 addition & 0 deletions addon/components/asset-connection/summary.hbs
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<Resource::Summary @resource={{(or @assetConnection @resource)}} @resourceType="asset-connection" @onView={{@onView}} @showView={{@showView}} @onClose={{@onClose}} @titleFallback={{@titleFallback}} ...attributes />
24 changes: 24 additions & 0 deletions addon/components/asset/pill.hbs
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
<Resource::Pill
@resource={{(or @asset @resource)}}
@resourceType="asset"
@title={{@title}}
@titleFallback={{@titleFallback}}
@subtitle={{@subtitle}}
@showOnlineIndicator={{@showOnlineIndicator}}
@noPopover={{@noPopover}}
@popoverPlacement={{@popoverPlacement}}
@static={{@static}}
@onClick={{@onClick}}
@onView={{@onView}}
@anchorClass={{@anchorClass}}
@imageClass={{@imageClass}}
@imageWrapperClass={{@imageWrapperClass}}
@contentWrapperClass={{@contentWrapperClass}}
@titleClass={{@titleClass}}
@subtitleClass={{@subtitleClass}}
@useBlock={{(has-block)}}
...attributes
as |resource|
>
{{yield resource}}
</Resource::Pill>
1 change: 1 addition & 0 deletions addon/components/asset/summary.hbs
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<Resource::Summary @resource={{(or @asset @resource)}} @resourceType="asset" @onView={{@onView}} @showView={{@showView}} @onClose={{@onClose}} @titleFallback={{@titleFallback}} ...attributes />
24 changes: 24 additions & 0 deletions addon/components/attachable/pill.hbs
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
<Resource::Pill
@resource={{(or @attachable @resource)}}
@resourceType="attachable"
@title={{@title}}
@titleFallback={{@titleFallback}}
@subtitle={{@subtitle}}
@showOnlineIndicator={{@showOnlineIndicator}}
@noPopover={{@noPopover}}
@popoverPlacement={{@popoverPlacement}}
@static={{@static}}
@onClick={{@onClick}}
@onView={{@onView}}
@anchorClass={{@anchorClass}}
@imageClass={{@imageClass}}
@imageWrapperClass={{@imageWrapperClass}}
@contentWrapperClass={{@contentWrapperClass}}
@titleClass={{@titleClass}}
@subtitleClass={{@subtitleClass}}
@useBlock={{(has-block)}}
...attributes
as |resource|
>
{{yield resource}}
</Resource::Pill>
1 change: 1 addition & 0 deletions addon/components/attachable/summary.hbs
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<Resource::Summary @resource={{(or @attachable @resource)}} @resourceType="attachable" @onView={{@onView}} @showView={{@showView}} @onClose={{@onClose}} @titleFallback={{@titleFallback}} ...attributes />
1 change: 1 addition & 0 deletions addon/components/cell/asset-connection-identity.hbs
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<Table::Cell::Identity @row={{@row}} @column={{@column}} @value={{@value}} @onClick={{@onClick}} @resourceType="asset-connection" ...attributes />
1 change: 1 addition & 0 deletions addon/components/cell/asset-identity.hbs
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<Table::Cell::Identity @row={{@row}} @column={{@column}} @value={{@value}} @onClick={{@onClick}} @resourceType="asset" ...attributes />
1 change: 1 addition & 0 deletions addon/components/cell/attachable-identity.hbs
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<Table::Cell::Identity @row={{@row}} @column={{@column}} @value={{@value}} @onClick={{@onClick}} @resourceType="attachable" ...attributes />
10 changes: 0 additions & 10 deletions addon/components/cell/attached-vehicle.hbs

This file was deleted.

58 changes: 0 additions & 58 deletions addon/components/cell/attached-vehicle.js

This file was deleted.

1 change: 1 addition & 0 deletions addon/components/cell/contact-identity.hbs
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<Table::Cell::Identity @row={{@row}} @column={{@column}} @value={{@value}} @onClick={{@onClick}} @resourceType="contact" ...attributes />
1 change: 1 addition & 0 deletions addon/components/cell/customer-identity.hbs
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<Table::Cell::Identity @row={{@row}} @column={{@column}} @value={{@value}} @onClick={{@onClick}} @resourceType="customer" ...attributes />
1 change: 1 addition & 0 deletions addon/components/cell/device-event-identity.hbs
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<Table::Cell::Identity @row={{@row}} @column={{@column}} @value={{@value}} @onClick={{@onClick}} @resourceType="device-event" ...attributes />
25 changes: 1 addition & 24 deletions addon/components/cell/device-identity.hbs
Original file line number Diff line number Diff line change
@@ -1,24 +1 @@
{{#if this.resource}}
{{#if this.compact}}
<button
type="button"
disabled={{and @column.permission (cannot @column.permission)}}
{{on "click" this.onClick}}
class="group flex w-full min-w-0 cursor-pointer items-center gap-2 py-0.5 text-left"
data-test-device-identity-compact
...attributes
>
<div class="relative flex h-5 w-5 flex-shrink-0 items-center justify-center">
<Image src={{this.mediaUrl}} @fallbackSrc={{this.fallbackImage}} class="h-5 w-5 rounded-md border border-gray-200 object-cover shadow-sm dark:border-gray-700" />
{{#if this.hasCompactStatusDot}}
<FaIcon @icon="circle" @size="2xs" class="absolute left-0 top-0 -ml-1 -mt-1 {{this.compactStatusDotClass}}" data-test-resource-identity-status-dot />
{{/if}}
</div>
<div class="min-w-0 truncate text-sm leading-4 text-gray-900 group-hover:text-blue-600 dark:text-gray-200 dark:group-hover:text-blue-300">{{n-a this.label}}</div>
</button>
{{else}}
<Table::Cell::ResourceIdentity @row={{this.resource}} @value={{@value}} @column={{this.column}} @onClick={{@onClick}} ...attributes />
{{/if}}
{{else}}
<div class="py-1 text-xs text-gray-400 dark:text-gray-500" data-test-identity-empty-text ...attributes>{{this.emptyText}}</div>
{{/if}}
<Table::Cell::Identity @row={{@row}} @column={{@column}} @value={{@value}} @onClick={{@onClick}} @resourceType="device" ...attributes />
Loading
Loading