@seedtactics/insight-client 17.0.1-beta.14 → 17.0.1-beta.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -143,6 +143,7 @@ export function BasketLoadStationWorkflow({ basket, material, fsize, }) {
|
|
|
143
143
|
const [submission, setSubmission] = useState();
|
|
144
144
|
const workState = useMemo(() => stationWork(material, basket), [basket, material]);
|
|
145
145
|
const blockedReason = basket.loadStationWork?.confirmationBlockedReason?.trim();
|
|
146
|
+
const instructionWarning = basket.loadStationWork?.instructionWarning?.trim();
|
|
146
147
|
const work = workState.type === "active" ? workState.work : undefined;
|
|
147
148
|
const submissionState = submission !== undefined &&
|
|
148
149
|
submission.workId === work?.workId &&
|
|
@@ -205,7 +206,7 @@ export function BasketLoadStationWorkflow({ basket, material, fsize, }) {
|
|
|
205
206
|
}, children: _jsxs(Box, { component: "section", "data-testid": `basket-load-station-slot-${slot}`, sx: { border: "1px solid", borderColor: "text.primary", p: 2 }, children: [_jsxs(Typography, { variant: "h6", children: ["Slot ", basketSlotLabel(slot)] }), loads.length > 0 &&
|
|
206
207
|
slotMaterial.some((mat) => mat.action.type === api.ActionType.UnloadToInProcess ||
|
|
207
208
|
mat.action.type === api.ActionType.UnloadToCompletedMaterial) && (_jsx(Typography, { children: "Unload the current material before preparing the replacement." })), slotMaterial.length > 0 ? (_jsx(SlotMaterial, { material: slotMaterial, fsize: fsize })) : (_jsx(Typography, { color: isUnknown ? "warning.main" : "text.secondary", children: isUnknown ? "Unknown" : "Empty" })), loads.map((mat, index) => (_jsxs(Box, { sx: { mt: 1 }, children: [_jsx(Typography, { children: loadingInstruction(mat) }), _jsxs(Typography, { variant: "body2", color: "text.secondary", children: [mat.partName, " \u00B7 Process ", mat.action.processAfterLoad ?? mat.process] })] }, `${mat.jobUnique}-${mat.process}-${index}`)))] }) }, slot));
|
|
208
|
-
}) }), work?.confirmEmpty && _jsxs(Typography, { children: ["Confirm basket ", basket.basketId, " is empty."] }), work && !work.ready && (_jsx(Alert, { severity: "info", children: blockedReason ||
|
|
209
|
+
}) }), work?.confirmEmpty && _jsxs(Typography, { children: ["Confirm basket ", basket.basketId, " is empty."] }), instructionWarning && _jsx(Alert, { severity: "warning", children: instructionWarning }), work && !work.ready && (_jsx(Alert, { severity: "info", children: blockedReason ||
|
|
209
210
|
(work.awaitingSlots.length > 0
|
|
210
211
|
? `Waiting for material for slots ${work.awaitingSlots.map(basketSlotLabel).join(", ")}.`
|
|
211
212
|
: "Basket work is not ready for confirmation.") })), work ? (_jsx(Box, { sx: { display: "flex", justifyContent: "flex-end" }, children: _jsx(Button, { variant: "contained", disabled: submissionDisabled, onClick: () => void submit(), children: "Confirm" }) })) : workState.type === "inconsistent" ? (_jsx(Alert, { severity: "warning", children: "Basket work is inconsistent. Wait for refreshed material actions before confirming." })) : null, submissionState === "accepted" ? (_jsx(Alert, { severity: "success", children: "Confirmation accepted. Waiting for refreshed work." })) : submissionState === "conflict" ? (_jsx(Alert, { severity: "warning", children: "Basket work changed before confirmation. Review the refreshed slots and try again." })) : submissionState === "error" ? (_jsx(Alert, { severity: "error", children: "Unable to confirm basket work. No work was assumed complete." })) : null] }));
|
package/dist/index.html
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
<link rel="shortcut icon" href="/assets/favicon-gWFxiJK2.ico" />
|
|
7
7
|
<title>SeedTactic FMS Insight</title>
|
|
8
8
|
<style type="text/css">.download-loader{width:100px;height:100px;display:inline-block}.download-circular{width:100px;height:100px;animation:2s linear infinite rotate}.download-path{stroke-dasharray:1 200;stroke-dashoffset:0;stroke-linecap:round;stroke:#8d6e63;animation:1.5s ease-out infinite dash}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes dash{0%{stroke-dasharray:1 200;stroke-dashoffset:0}50%{stroke-dasharray:89 200;stroke-dashoffset:-35px}to{stroke-dasharray:89 200;stroke-dashoffset:-124px}}</style>
|
|
9
|
-
<script type="module" crossorigin src="/assets/index-
|
|
9
|
+
<script type="module" crossorigin src="/assets/index-Z6GAS_qc.js"></script>
|
|
10
10
|
<link rel="stylesheet" crossorigin href="/assets/index-DXfAwuj-.css">
|
|
11
11
|
</head>
|
|
12
12
|
<body>
|
package/dist/network/api.d.ts
CHANGED
|
@@ -1079,6 +1079,7 @@ export declare class BasketLoadStationWork implements IBasketLoadStationWork {
|
|
|
1079
1079
|
type: BasketLoadStationWorkType;
|
|
1080
1080
|
readyToConfirm: boolean;
|
|
1081
1081
|
confirmationBlockedReason?: string | undefined;
|
|
1082
|
+
instructionWarning?: string | undefined;
|
|
1082
1083
|
awaitingMaterialSlots?: number[];
|
|
1083
1084
|
constructor(data?: IBasketLoadStationWork);
|
|
1084
1085
|
init(_data?: any): void;
|
|
@@ -1090,6 +1091,7 @@ export interface IBasketLoadStationWork {
|
|
|
1090
1091
|
type: BasketLoadStationWorkType;
|
|
1091
1092
|
readyToConfirm: boolean;
|
|
1092
1093
|
confirmationBlockedReason?: string | undefined;
|
|
1094
|
+
instructionWarning?: string | undefined;
|
|
1093
1095
|
awaitingMaterialSlots?: number[];
|
|
1094
1096
|
}
|
|
1095
1097
|
export declare enum BasketLoadStationWorkType {
|
package/dist/network/api.js
CHANGED
|
@@ -4452,6 +4452,7 @@ export class BasketLoadStationWork {
|
|
|
4452
4452
|
this.type = _data["Type"];
|
|
4453
4453
|
this.readyToConfirm = _data["ReadyToConfirm"];
|
|
4454
4454
|
this.confirmationBlockedReason = _data["ConfirmationBlockedReason"];
|
|
4455
|
+
this.instructionWarning = _data["InstructionWarning"];
|
|
4455
4456
|
if (Array.isArray(_data["AwaitingMaterialSlots"])) {
|
|
4456
4457
|
this.awaitingMaterialSlots = [];
|
|
4457
4458
|
for (let item of _data["AwaitingMaterialSlots"])
|
|
@@ -4471,6 +4472,7 @@ export class BasketLoadStationWork {
|
|
|
4471
4472
|
data["Type"] = this.type;
|
|
4472
4473
|
data["ReadyToConfirm"] = this.readyToConfirm;
|
|
4473
4474
|
data["ConfirmationBlockedReason"] = this.confirmationBlockedReason;
|
|
4475
|
+
data["InstructionWarning"] = this.instructionWarning;
|
|
4474
4476
|
if (Array.isArray(this.awaitingMaterialSlots)) {
|
|
4475
4477
|
data["AwaitingMaterialSlots"] = [];
|
|
4476
4478
|
for (let item of this.awaitingMaterialSlots)
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@seedtactics/insight-client",
|
|
3
|
-
"version": "17.0.1-beta.
|
|
3
|
+
"version": "17.0.1-beta.15",
|
|
4
4
|
"license": "BSD-3-Clause",
|
|
5
5
|
"repository": {
|
|
6
6
|
"url": "https://github.com/SeedTactics/fms-insight"
|
|
@@ -63,7 +63,7 @@
|
|
|
63
63
|
"@types/react-dom": "^19.3.0",
|
|
64
64
|
"@vitejs/plugin-react": "^6.1.1",
|
|
65
65
|
"@vitest/browser-playwright": "^5.0.2",
|
|
66
|
-
"jotai": "^3.0.
|
|
66
|
+
"jotai": "^3.0.1",
|
|
67
67
|
"jsdom": "^30.1.1",
|
|
68
68
|
"nswag": "^14.7.1",
|
|
69
69
|
"oxfmt": "^0.71.0",
|
|
@@ -78,7 +78,7 @@
|
|
|
78
78
|
"vitest-browser-react": "^2.3.0"
|
|
79
79
|
},
|
|
80
80
|
"peerDependencies": {
|
|
81
|
-
"jotai": "^3.0.
|
|
81
|
+
"jotai": "^3.0.1",
|
|
82
82
|
"react": "^19.3.0",
|
|
83
83
|
"react-dom": "^19.3.0"
|
|
84
84
|
},
|