Compare commits
2 Commits
72cdae3d1c
...
5b55bd267b
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5b55bd267b | ||
|
|
0d2e7585b8 |
@ -168,21 +168,18 @@ export default function AssetDetails() {
|
||||
const isAssigned = isAssetState(row, ASSET_STATE.ASSIGNED)
|
||||
const isAvailable = isAssetState(row, ASSET_STATE.AVAILABLE)
|
||||
const isUnderRepair = isAssetState(row, ASSET_STATE.UNDER_REPAIR)
|
||||
// ASSIGNED, Send for Repair and Edit (Asset details) run in Available;
|
||||
// Reassigned in Assigned; Lost in either; Repair Completed in Under Repair.
|
||||
// The builder has Asset details in Available only, so the runtime rejects it
|
||||
// elsewhere ("Asset details" is not allowed in "Assigned"). RETURNED runs in
|
||||
// any state but Closed, and the runtime says if the state doesn't allow it.
|
||||
// If the view sends no state, let the runtime decide rather than hiding the
|
||||
// buttons.
|
||||
const isOpen = !state || isAvailable || isAssigned || isUnderRepair
|
||||
// ASSIGNED and Send for Repair run in Available; Reassigned in Assigned; Lost
|
||||
// in either; Repair Completed in Under Repair; Edit in all three. RETURNED
|
||||
// runs in any state but Closed, and the runtime says if the state doesn't
|
||||
// allow it. If the view sends no state, let the runtime decide rather than
|
||||
// hiding the buttons.
|
||||
const canAssign = !state || isAvailable
|
||||
const canReassign = !state || isAssigned
|
||||
const canReturn = !isAssetState(row, ASSET_STATE.CLOSED) && !isEndState(row)
|
||||
const canReportLost = !state || isAvailable || isAssigned
|
||||
const canSendForRepair = !state || isAvailable
|
||||
const canCompleteRepair = !state || isUnderRepair
|
||||
const canEdit = !state || isAvailable
|
||||
const canEdit = !state || isAvailable || isAssigned || isUnderRepair
|
||||
|
||||
// Assigned or reassigned, whichever is newer, is who has it now.
|
||||
const current = currentAssignment(row)
|
||||
@ -254,12 +251,7 @@ export default function AssetDetails() {
|
||||
<Button icon="history" onClick={load} disabled={loading}>
|
||||
{loading ? 'Refreshing…' : 'Refresh'}
|
||||
</Button>
|
||||
<Button
|
||||
icon="edit"
|
||||
onClick={() => openActivity('edit')}
|
||||
disabled={!canEdit}
|
||||
title={canEdit ? undefined : 'Only an Available asset can be edited. Return it first.'}
|
||||
>
|
||||
<Button icon="edit" onClick={() => openActivity('edit')} disabled={!canEdit}>
|
||||
Edit
|
||||
</Button>
|
||||
<Button
|
||||
@ -297,7 +289,7 @@ export default function AssetDetails() {
|
||||
}
|
||||
/>
|
||||
|
||||
{!isOpen && (
|
||||
{!canEdit && (
|
||||
<div className="notice notice--warning" role="status">
|
||||
<Icon name="alert" size={15} />
|
||||
<span>
|
||||
|
||||
@ -4,6 +4,9 @@ import react from "@vitejs/plugin-react";
|
||||
export default defineConfig(({ command }) => ({
|
||||
// Relative base: frontgen places one artifact at any mount path and injects <base href>.
|
||||
base: "./",
|
||||
// Not "assets": the app has an /assets route, and nginx answers 403 for a real
|
||||
// folder with no index.html, so reloading /asset-management/assets/ broke.
|
||||
build: { assetsDir: "static" },
|
||||
plugins: [react()],
|
||||
server: {
|
||||
port: 5173,
|
||||
|
||||
Loading…
Reference in New Issue
Block a user