@nerdjs/sales-kit 2.4.14 → 2.4.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.
- package/dist/entities/dispatchPathEdge/dispatchPathEdge.d.ts +31 -1
- package/dist/entities/dispatchPathEdge/dispatchPathEdge.js +4 -0
- package/dist/entities/dispatchPathEdge/dispatchPathEdge.js.map +1 -1
- package/dist/hooks/load/loadCommodityPieces.d.ts +0 -1
- package/dist/hooks/load/loadCommodityPieces.js +82 -213
- package/dist/hooks/load/loadCommodityPieces.js.map +1 -1
- package/dist/hooks/load/loadLastLocation.js +26 -3
- package/dist/hooks/load/loadLastLocation.js.map +1 -1
- package/package.json +2 -3
|
@@ -5,11 +5,41 @@ export default class DispatchPathEdge_Entity {
|
|
|
5
5
|
dispatchPathID: number;
|
|
6
6
|
vertex1: string;
|
|
7
7
|
vertex2: string;
|
|
8
|
+
node1: Node;
|
|
9
|
+
node2: Node;
|
|
8
10
|
cachedTransitTime?: number;
|
|
9
11
|
nextDispatchPathEdgeID?: number;
|
|
10
12
|
permanent?: boolean;
|
|
11
13
|
otr_edge?: boolean;
|
|
12
|
-
dispatch:
|
|
14
|
+
dispatch: Dispatch;
|
|
13
15
|
createdAt: string;
|
|
14
16
|
updatedAt: string;
|
|
15
17
|
}
|
|
18
|
+
export type Node = {
|
|
19
|
+
id: number;
|
|
20
|
+
name: string;
|
|
21
|
+
nodeType: string;
|
|
22
|
+
};
|
|
23
|
+
export type Dispatch = {
|
|
24
|
+
asset: string;
|
|
25
|
+
assetID?: number;
|
|
26
|
+
cachedETA?: string;
|
|
27
|
+
carrierID?: number;
|
|
28
|
+
commodityPieceID?: number;
|
|
29
|
+
createdAt: string;
|
|
30
|
+
destinationNode?: Node;
|
|
31
|
+
dispatchDate?: string;
|
|
32
|
+
dispatchPathEdgeID?: number;
|
|
33
|
+
dispatchType?: string;
|
|
34
|
+
driverID?: number;
|
|
35
|
+
ediProcessed?: boolean;
|
|
36
|
+
id: 0;
|
|
37
|
+
legID?: number;
|
|
38
|
+
personID?: number;
|
|
39
|
+
pickupNumber?: number;
|
|
40
|
+
processedDate?: string;
|
|
41
|
+
quotePathEdgeID?: number;
|
|
42
|
+
trailerExpire?: string;
|
|
43
|
+
updatedAt: string;
|
|
44
|
+
warehouseOrder?: number;
|
|
45
|
+
};
|
|
@@ -28,6 +28,8 @@ export default class DispatchPathEdge_Entity {
|
|
|
28
28
|
if (validator(dispatchPathEdgeJson)) {
|
|
29
29
|
this.id = dispatchPathEdgeJson.id;
|
|
30
30
|
this.dispatchPathID = dispatchPathEdgeJson.dispatchPathID;
|
|
31
|
+
this.node1 = dispatchPathEdgeJson.node1;
|
|
32
|
+
this.node2 = dispatchPathEdgeJson.node2;
|
|
31
33
|
this.vertex1 = dispatchPathEdgeJson.vertex1;
|
|
32
34
|
this.vertex2 = dispatchPathEdgeJson.vertex2;
|
|
33
35
|
this.cachedTransitTime = dispatchPathEdgeJson.cachedTransitTime;
|
|
@@ -46,6 +48,8 @@ export default class DispatchPathEdge_Entity {
|
|
|
46
48
|
dispatchPathID;
|
|
47
49
|
vertex1;
|
|
48
50
|
vertex2;
|
|
51
|
+
node1;
|
|
52
|
+
node2;
|
|
49
53
|
cachedTransitTime;
|
|
50
54
|
nextDispatchPathEdgeID;
|
|
51
55
|
permanent;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dispatchPathEdge.js","sourceRoot":"","sources":["../../../src/entities/dispatchPathEdge/dispatchPathEdge.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,SAAS,SAAS,CAChB,oBAA6B;IAE7B,IACE,OAAO,oBAAoB,KAAK,QAAQ;QACxC,oBAAoB,IAAI,IAAI,EAC5B;QACA,uBAAuB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YACzD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;gBACtD,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;KACJ;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,CAAC,OAAO,OAAO,uBAAuB;IAC1C,MAAM,CAAC,cAAc,GAAG;QACtB,IAAI;QACJ,gBAAgB;QAChB,SAAS;QACT,SAAS;QACT,UAAU;QACV,WAAW;QACX,WAAW;KACZ,CAAC;IAEF,YAAY,oBAA6B;QACvC,IAAI,SAAS,CAAC,oBAAoB,CAAC,EAAE;YACnC,IAAI,CAAC,EAAE,GAAG,oBAAoB,CAAC,EAAE,CAAC;YAClC,IAAI,CAAC,cAAc,GAAG,oBAAoB,CAAC,cAAc,CAAC;YAC1D,IAAI,CAAC,OAAO,GAAG,oBAAoB,CAAC,OAAO,CAAC;YAC5C,IAAI,CAAC,OAAO,GAAG,oBAAoB,CAAC,OAAO,CAAC;YAC5C,IAAI,CAAC,iBAAiB,GAAG,oBAAoB,CAAC,iBAAiB,CAAC;YAChE,IAAI,CAAC,sBAAsB,GAAG,oBAAoB,CAAC,sBAAsB,CAAC;YAC1E,IAAI,CAAC,SAAS,GAAG,oBAAoB,CAAC,SAAS,CAAC;YAChD,IAAI,CAAC,QAAQ,GAAG,oBAAoB,CAAC,QAAQ,CAAC;YAC9C,IAAI,CAAC,QAAQ,GAAG,oBAAoB,CAAC,QAAQ,CAAC;YAC9C,IAAI,CAAC,SAAS,GAAG,oBAAoB,CAAC,SAAS,CAAC;YAChD,IAAI,CAAC,SAAS,GAAG,oBAAoB,CAAC,SAAS,CAAC;SACjD;aAAM;YACL,MAAM,IAAI,KAAK,CACb,0EAA0E,CAC3E,CAAC;SACH;IACH,CAAC;IAED,EAAE,CAAS;IACX,cAAc,CAAS;IACvB,OAAO,CAAS;IAChB,OAAO,CAAS;IAChB,iBAAiB,CAAU;IAC3B,sBAAsB,CAAU;IAChC,SAAS,CAAW;IACpB,QAAQ,CAAW;IACnB,QAAQ,
|
|
1
|
+
{"version":3,"file":"dispatchPathEdge.js","sourceRoot":"","sources":["../../../src/entities/dispatchPathEdge/dispatchPathEdge.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,SAAS,SAAS,CAChB,oBAA6B;IAE7B,IACE,OAAO,oBAAoB,KAAK,QAAQ;QACxC,oBAAoB,IAAI,IAAI,EAC5B;QACA,uBAAuB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YACzD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;gBACtD,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;KACJ;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,CAAC,OAAO,OAAO,uBAAuB;IAC1C,MAAM,CAAC,cAAc,GAAG;QACtB,IAAI;QACJ,gBAAgB;QAChB,SAAS;QACT,SAAS;QACT,UAAU;QACV,WAAW;QACX,WAAW;KACZ,CAAC;IAEF,YAAY,oBAA6B;QACvC,IAAI,SAAS,CAAC,oBAAoB,CAAC,EAAE;YACnC,IAAI,CAAC,EAAE,GAAG,oBAAoB,CAAC,EAAE,CAAC;YAClC,IAAI,CAAC,cAAc,GAAG,oBAAoB,CAAC,cAAc,CAAC;YAC1D,IAAI,CAAC,KAAK,GAAG,oBAAoB,CAAC,KAAK,CAAC;YACxC,IAAI,CAAC,KAAK,GAAG,oBAAoB,CAAC,KAAK,CAAC;YACxC,IAAI,CAAC,OAAO,GAAG,oBAAoB,CAAC,OAAO,CAAC;YAC5C,IAAI,CAAC,OAAO,GAAG,oBAAoB,CAAC,OAAO,CAAC;YAC5C,IAAI,CAAC,iBAAiB,GAAG,oBAAoB,CAAC,iBAAiB,CAAC;YAChE,IAAI,CAAC,sBAAsB,GAAG,oBAAoB,CAAC,sBAAsB,CAAC;YAC1E,IAAI,CAAC,SAAS,GAAG,oBAAoB,CAAC,SAAS,CAAC;YAChD,IAAI,CAAC,QAAQ,GAAG,oBAAoB,CAAC,QAAQ,CAAC;YAC9C,IAAI,CAAC,QAAQ,GAAG,oBAAoB,CAAC,QAAQ,CAAC;YAC9C,IAAI,CAAC,SAAS,GAAG,oBAAoB,CAAC,SAAS,CAAC;YAChD,IAAI,CAAC,SAAS,GAAG,oBAAoB,CAAC,SAAS,CAAC;SACjD;aAAM;YACL,MAAM,IAAI,KAAK,CACb,0EAA0E,CAC3E,CAAC;SACH;IACH,CAAC;IAED,EAAE,CAAS;IACX,cAAc,CAAS;IACvB,OAAO,CAAS;IAChB,OAAO,CAAS;IAChB,KAAK,CAAO;IACZ,KAAK,CAAO;IACZ,iBAAiB,CAAU;IAC3B,sBAAsB,CAAU;IAChC,SAAS,CAAW;IACpB,QAAQ,CAAW;IACnB,QAAQ,CAAW;IACnB,SAAS,CAAS;IAClB,SAAS,CAAS"}
|
|
@@ -1,235 +1,104 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs
|
|
2
|
-
import { Box, Sheet, Tooltip, Typography } from "@mui/joy";
|
|
3
|
-
import { DateTime } from "luxon";
|
|
4
|
-
import { useMemo } from "react";
|
|
5
|
-
import ReactFlow, { Background, BackgroundVariant, Handle, MarkerType, Position, ReactFlowProvider, } from "reactflow";
|
|
6
|
-
import "reactflow/dist/style.css";
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Box, CircularProgress, Divider, Sheet, Tooltip, Typography, } from "@mui/joy";
|
|
7
3
|
import { useGetLoadCommodityPiecesQuery } from "../../redux/commodityPiece/commodityPieceEndpoints";
|
|
8
|
-
import {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
const COMMODITY_CIRCLE_SIZE = 60;
|
|
12
|
-
const COMMODITY_PIECE_WIDTH = 200;
|
|
13
|
-
const COMMODITY_PIECE_HEIGHT = 60;
|
|
14
|
-
const VERTICAL_GAP = 55;
|
|
15
|
-
const HORIZONTAL_GAP = 50;
|
|
4
|
+
import { DateTime } from "luxon";
|
|
5
|
+
const CELL_WIDTH = 150;
|
|
6
|
+
const PALLET_CELL_WIDTH = 200;
|
|
16
7
|
/**
|
|
17
8
|
*
|
|
18
9
|
* @returns {ReactElement} LoadCommodityPieces page
|
|
19
10
|
*/
|
|
20
11
|
export function LoadCommodityPieces({ loadID }) {
|
|
21
|
-
const { data
|
|
12
|
+
const { data, isLoading } = useGetLoadCommodityPiecesQuery(loadID, {
|
|
22
13
|
skip: !open,
|
|
23
14
|
});
|
|
24
|
-
const
|
|
25
|
-
const
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
commodityNode: CommodityNode,
|
|
30
|
-
archerNode: ANode,
|
|
31
|
-
}), []);
|
|
32
|
-
const { nodes, edges } = getLayout(commodityPieces, archerNodes?.entities, archerNodeTypes?.entities, archerNodeTypeNodes?.entities);
|
|
33
|
-
if (l0 || l1 || l2 || l3)
|
|
34
|
-
return _jsx(Box, {});
|
|
35
|
-
return (_jsx(ReactFlowProvider, { children: _jsx(ReactFlow, { nodes: nodes, edges: edges, nodeTypes: nodeTypes, fitView: true, maxZoom: 0.8, minZoom: 0.8, children: _jsx(Background, { color: "#ccc", variant: BackgroundVariant.Dots }) }) }));
|
|
15
|
+
const nodes = getNodes(data);
|
|
16
|
+
const commodityPieces = [...(data ?? [])]?.sort((a, b) => a.commodityID - b.commodityID) ?? [];
|
|
17
|
+
if (isLoading || commodityPieces == undefined)
|
|
18
|
+
return _jsx(CircularProgress, {});
|
|
19
|
+
return (_jsxs(Box, { sx: { overflow: "scroll" }, children: [_jsxs(Box, { sx: { display: "flex" }, children: [_jsx(Box, { sx: { width: PALLET_CELL_WIDTH, flexShrink: 0 } }), nodes.map((n) => (_jsx(NodeHeader, { node: n }, n.id)))] }), commodityPieces.map((cp) => (_jsxs(Box, { sx: { display: "flex" }, children: [_jsx(CommodityPieceHeader, { commodityPiece: cp }), nodes.map((n, i) => (_jsx(Cell, { node: n, commodityPiece: cp, last: i === nodes.length - 1 }, n.id)))] }, cp.id)))] }));
|
|
36
20
|
}
|
|
37
|
-
function
|
|
38
|
-
|
|
21
|
+
function Cell({ node, commodityPiece, last, }) {
|
|
22
|
+
let outbound;
|
|
23
|
+
let inbound;
|
|
24
|
+
commodityPiece.dispatchPaths.forEach((dp) => dp.dispatchPathEdges.forEach((dpe) => {
|
|
25
|
+
if (dpe.node1.id === node.id)
|
|
26
|
+
outbound = dpe;
|
|
27
|
+
if (dpe.node2.id === node.id)
|
|
28
|
+
inbound = dpe;
|
|
29
|
+
}));
|
|
30
|
+
const outboundCompleted = (outbound?.dispatch.id ?? 0) > 0;
|
|
31
|
+
return (_jsxs(Box, { sx: { width: CELL_WIDTH, display: "flex", flexShrink: 0 }, children: [_jsxs(Box, { sx: {
|
|
32
|
+
position: "relative",
|
|
39
33
|
flex: 1,
|
|
40
|
-
width: COMMODITY_PIECE_WIDTH,
|
|
41
|
-
height: COMMODITY_PIECE_HEIGHT,
|
|
42
|
-
borderRadius: 4,
|
|
43
34
|
display: "flex",
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
pr: 1,
|
|
47
|
-
gap: 2,
|
|
48
|
-
}, children: [_jsx(Typography, { level: "body-md", children: _jsx("i", { className: "fa-solid fa-pallet-boxes" }) }), _jsxs(Box, { children: [_jsxs(Typography, { children: [data?.pallets, " Pallets"] }), _jsxs(Typography, { level: "body-sm", children: [data?.weight, "lbs, ", data?.feet, "ft"] })] })] }), _jsx(Handle, { type: "source", position: Position.Right })] }));
|
|
49
|
-
}
|
|
50
|
-
function CommodityNode() {
|
|
51
|
-
// console.log(data);
|
|
52
|
-
return (_jsxs(_Fragment, { children: [_jsx(Sheet, { variant: "soft", color: "primary", sx: {
|
|
53
|
-
flex: 1,
|
|
54
|
-
width: COMMODITY_CIRCLE_SIZE,
|
|
55
|
-
height: COMMODITY_CIRCLE_SIZE,
|
|
56
|
-
borderRadius: COMMODITY_CIRCLE_SIZE,
|
|
57
|
-
display: "flex",
|
|
58
|
-
alignItems: "center",
|
|
59
|
-
} }), _jsx(Handle, { type: "source", position: Position.Right })] }));
|
|
60
|
-
}
|
|
61
|
-
function ANode({ data, }) {
|
|
62
|
-
if (!data.dpe)
|
|
63
|
-
return _jsx(Box, { children: "Not Found" });
|
|
64
|
-
const node = data.archerNodes[data.dpe.vertex2];
|
|
65
|
-
const icons = {
|
|
66
|
-
1: _jsx("i", { className: "fa-solid fa-warehouse" }),
|
|
67
|
-
2: _jsx("i", { className: "fa-regular fa-train-track" }),
|
|
68
|
-
3: _jsx("i", { className: "fa-solid fa-screwdriver-wrench" }),
|
|
69
|
-
4: _jsx("i", { className: "fa-solid fa-arrow-down-to-line" }),
|
|
70
|
-
5: _jsx("i", { className: "fa-solid fa-question" }),
|
|
71
|
-
};
|
|
72
|
-
const archerNodeTypeNodeArr = Object.keys(data.archerNodeTypeNode).reduce((a, v) => {
|
|
73
|
-
if (data.archerNodeTypeNode[v])
|
|
74
|
-
a.push(data.archerNodeTypeNode[v]);
|
|
75
|
-
return a;
|
|
76
|
-
}, []);
|
|
77
|
-
const nodeTypeID = archerNodeTypeNodeArr.find((e) => e.nodeID === node?.id)?.nodeTypeID;
|
|
78
|
-
return (_jsxs(_Fragment, { children: [_jsx(Handle, { type: "target", position: Position.Left }), _jsx(Tooltip, { arrow: true, color: "primary", title: `ETA: ${DateTime.fromISO(data?.dpe.dispatch.cachedETA)
|
|
79
|
-
.toUTC()
|
|
80
|
-
.toFormat("f")}`, placement: "top", size: "sm", open: data?.dpe.dispatch.cachedETA, children: _jsx(Tooltip, { arrow: true, size: "sm", variant: "outlined", title: _jsxs(Box, { sx: { maxWidth: 200 }, children: [_jsx(Typography, { children: node?.name }), _jsx(Typography, { color: "primary", level: "body-sm", children: _jsx("b", { children: data?.dpe.dispatch.cachedETA
|
|
81
|
-
? `ETA: ${data?.dpe.dispatch.cachedETA}`
|
|
82
|
-
: "No ETA" }) })] }), children: _jsx(Sheet, { variant: "soft", color: data?.dpe.dispatch.cachedETA ? "primary" : "neutral", sx: {
|
|
35
|
+
flexDirection: "column",
|
|
36
|
+
}, children: [_jsx(Box, { sx: {
|
|
83
37
|
flex: 1,
|
|
84
|
-
width: COMMODITY_CIRCLE_SIZE,
|
|
85
|
-
height: COMMODITY_CIRCLE_SIZE,
|
|
86
|
-
borderRadius: COMMODITY_CIRCLE_SIZE,
|
|
87
38
|
display: "flex",
|
|
88
|
-
alignItems: "
|
|
39
|
+
alignItems: "end",
|
|
89
40
|
justifyContent: "center",
|
|
90
|
-
}, children:
|
|
41
|
+
}, children: outbound?.dispatch.asset ? (_jsx(Typography, { level: "body-xs", startDecorator: _jsx("i", { className: "fa-solid fa-trailer" }), children: outbound.dispatch.asset })) : ([]) }), _jsx(Box, { sx: { position: "relative" }, children: outbound ? (_jsx(Tooltip, { arrow: true, placement: "top", size: "sm", color: "primary", open: (inbound?.dispatch.cachedETA ?? "").length > 0, title: `ETA: ${DateTime.fromISO(inbound?.dispatch.cachedETA ?? "")
|
|
42
|
+
.toUTC()
|
|
43
|
+
.toFormat("f")}`, children: _jsx(Box, { onClick: () => console.log(inbound, outbound), sx: {
|
|
44
|
+
width: 14,
|
|
45
|
+
height: 14,
|
|
46
|
+
background: "white",
|
|
47
|
+
position: "absolute",
|
|
48
|
+
borderRadius: 14,
|
|
49
|
+
border: outboundCompleted
|
|
50
|
+
? "solid 4px #30D158"
|
|
51
|
+
: "solid 4px #9e9e9e",
|
|
52
|
+
left: -7,
|
|
53
|
+
top: -4.5,
|
|
54
|
+
} }) })) : ([]) }), !last ? (_jsx(Box, { sx: {
|
|
55
|
+
height: 4,
|
|
56
|
+
background: outboundCompleted ? "#30D158" : "#9e9e9e",
|
|
57
|
+
// background: `linear-gradient(90deg, ${
|
|
58
|
+
// node1Completed ? "#30D158" : "#9e9e9e"
|
|
59
|
+
// } 0%, ${node2Completed ? "#30D158" : "#9e9e9e"} 100%)`,
|
|
60
|
+
borderRadius: 4,
|
|
61
|
+
width: "100%",
|
|
62
|
+
} })) : ([]), _jsx(Box, { sx: { flex: 1, display: "flex", alignItems: "start" } })] }), !last ? _jsx(Divider, { orientation: "vertical" }) : []] }));
|
|
91
63
|
}
|
|
92
|
-
function
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
if (metadata.matrix[i]) {
|
|
108
|
-
if (!dpe.vertex2.includes("end"))
|
|
109
|
-
metadata.matrix[i].push(dpe.vertex2);
|
|
110
|
-
}
|
|
111
|
-
else {
|
|
112
|
-
metadata.matrix[i] = [dpe.vertex2];
|
|
113
|
-
}
|
|
114
|
-
});
|
|
115
|
-
});
|
|
116
|
-
});
|
|
117
|
-
const maxPathIndex = metadata.matrix.reduce((a, v) => {
|
|
118
|
-
if (v.length > metadata.matrix[a]?.length)
|
|
119
|
-
a = metadata.matrix.indexOf(v);
|
|
120
|
-
return a;
|
|
121
|
-
}, 0);
|
|
122
|
-
const maxPathLength = metadata.matrix[maxPathIndex]?.length ?? 0;
|
|
123
|
-
for (let x = 0; x < maxPathLength; x++) {
|
|
124
|
-
const value = metadata.matrix[maxPathIndex][x];
|
|
125
|
-
for (let y = 0; y < metadata.matrix.length; y++) {
|
|
126
|
-
if (metadata.matrix[y].length > x) {
|
|
127
|
-
if (metadata.matrix[y][x] != value) {
|
|
128
|
-
metadata.matrix[y].splice(x, 0, "x");
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
// Step 1: CommodityNodes
|
|
134
|
-
metadata.commodityIDs.forEach((cID, i) => {
|
|
135
|
-
nodes.push({
|
|
136
|
-
id: `${cID}`,
|
|
137
|
-
position: {
|
|
138
|
-
x: 0,
|
|
139
|
-
y: i * (COMMODITY_PIECE_HEIGHT + VERTICAL_GAP),
|
|
140
|
-
},
|
|
141
|
-
data: {},
|
|
142
|
-
type: "commodityNode",
|
|
143
|
-
});
|
|
144
|
-
});
|
|
145
|
-
// Step 2: CommdodityPieces
|
|
146
|
-
commodityPieces?.forEach((cp, i) => {
|
|
147
|
-
nodes.push({
|
|
148
|
-
id: `${cp.id}`,
|
|
149
|
-
position: {
|
|
150
|
-
x: COMMODITY_CIRCLE_SIZE + HORIZONTAL_GAP,
|
|
151
|
-
y: i * (COMMODITY_PIECE_HEIGHT + VERTICAL_GAP),
|
|
152
|
-
},
|
|
153
|
-
data: cp,
|
|
154
|
-
type: "commodityPieceNode",
|
|
155
|
-
});
|
|
156
|
-
edges.push({
|
|
157
|
-
id: `${cp.commodityID}-${cp.id}`,
|
|
158
|
-
source: `${cp.commodityID}`,
|
|
159
|
-
target: `${cp.id}`,
|
|
160
|
-
animated: true,
|
|
161
|
-
});
|
|
162
|
-
});
|
|
163
|
-
// Step 3: Archer Nodes
|
|
164
|
-
const offset = COMMODITY_CIRCLE_SIZE + COMMODITY_PIECE_WIDTH + 2 * HORIZONTAL_GAP;
|
|
165
|
-
metadata.matrix.forEach((e, y) => {
|
|
166
|
-
e.forEach((nodeID, x) => {
|
|
167
|
-
if (nodeID !== "x" && !nodes.find((n) => n.id === nodeID)) {
|
|
168
|
-
const dpes = findDpes(commodityPieces ?? [], nodeID);
|
|
169
|
-
console.log(dpes);
|
|
170
|
-
nodes.push({
|
|
171
|
-
id: nodeID,
|
|
172
|
-
position: {
|
|
173
|
-
x: offset + x * (COMMODITY_CIRCLE_SIZE + HORIZONTAL_GAP),
|
|
174
|
-
y: y * (COMMODITY_PIECE_HEIGHT + VERTICAL_GAP),
|
|
175
|
-
},
|
|
176
|
-
data: {
|
|
177
|
-
dpe: dpes[0],
|
|
178
|
-
archerNodes,
|
|
179
|
-
archerNodeTypes,
|
|
180
|
-
archerNodeTypeNode,
|
|
181
|
-
},
|
|
182
|
-
type: "archerNode",
|
|
183
|
-
});
|
|
184
|
-
}
|
|
185
|
-
});
|
|
186
|
-
});
|
|
187
|
-
// Step 4: Archer Edges
|
|
188
|
-
commodityPieces?.forEach((cp) => {
|
|
64
|
+
function CommodityPieceHeader({ commodityPiece, }) {
|
|
65
|
+
return (_jsxs(Box, { sx: { width: PALLET_CELL_WIDTH + 1, display: "flex", flexShrink: 0 }, children: [_jsx(Box, { sx: { p: 1, position: "relative", flex: 1 }, children: _jsxs(Sheet, { variant: "soft", sx: {
|
|
66
|
+
display: "flex",
|
|
67
|
+
gap: 1,
|
|
68
|
+
flexShrink: 0,
|
|
69
|
+
p: 1,
|
|
70
|
+
borderRadius: 8,
|
|
71
|
+
}, children: [_jsx(Typography, { level: "body-md", children: _jsx("i", { className: "fa-solid fa-pallet-boxes" }) }), _jsxs(Typography, { level: "body-sm", children: [commodityPiece.pallets, " Pallet", commodityPiece.pallets != 1 ? "s" : "", _jsx("br", {}), _jsxs(Typography, { level: "body-xs", children: [commodityPiece.weight, "lbs, ", commodityPiece.feet, "ft"] })] }), _jsx(Box, { sx: { flexGrow: 1 } })] }) }), _jsx(Divider, { orientation: "vertical" })] }));
|
|
72
|
+
}
|
|
73
|
+
function NodeHeader({ node }) {
|
|
74
|
+
return (_jsxs(Box, { sx: { display: "flex", gap: 1, width: CELL_WIDTH, flexShrink: 0 }, children: [_jsx(Divider, { orientation: "vertical" }), _jsx(Typography, { level: "body-md", children: icons[node.nodeType] ?? _jsx("i", { className: "fa-solid fa-question" }) }), _jsx(Typography, { level: "body-sm", children: node.name })] }));
|
|
75
|
+
}
|
|
76
|
+
function getNodes(data) {
|
|
77
|
+
const ret = [];
|
|
78
|
+
data?.forEach((cp) => {
|
|
189
79
|
cp.dispatchPaths.forEach((dp) => {
|
|
190
|
-
dp.dispatchPathEdges.forEach((dpe) => {
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
}
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
id: `${dpe.vertex1}-${dpe.vertex2}`,
|
|
203
|
-
source: dpe.vertex1,
|
|
204
|
-
target: dpe.vertex2,
|
|
205
|
-
animated: true,
|
|
206
|
-
markerEnd: MarkerType.Arrow,
|
|
207
|
-
});
|
|
80
|
+
dp.dispatchPathEdges.forEach((dpe, index) => {
|
|
81
|
+
const previousDpe = index > 0 ? dp.dispatchPathEdges[index - 1] : undefined;
|
|
82
|
+
const insertAt = previousDpe
|
|
83
|
+
? ret.findIndex((e) => e.id === previousDpe?.node2.id) + 1
|
|
84
|
+
: -1;
|
|
85
|
+
if (!ret.find((e) => e.id === dpe.node2.id) && dpe.node2.id) {
|
|
86
|
+
if (insertAt >= 0) {
|
|
87
|
+
ret.splice(insertAt, 0, dpe.node2);
|
|
88
|
+
}
|
|
89
|
+
else {
|
|
90
|
+
ret.push(dpe.node2);
|
|
91
|
+
}
|
|
208
92
|
}
|
|
209
93
|
});
|
|
210
94
|
});
|
|
211
95
|
});
|
|
212
|
-
return
|
|
213
|
-
}
|
|
214
|
-
function findDpes(commodityPieces, nodeID) {
|
|
215
|
-
const deps = [];
|
|
216
|
-
for (const k in commodityPieces) {
|
|
217
|
-
if (Object.prototype.hasOwnProperty.call(commodityPieces, k)) {
|
|
218
|
-
const commodityPiece = commodityPieces[k];
|
|
219
|
-
for (const j in commodityPiece.dispatchPaths) {
|
|
220
|
-
if (Object.prototype.hasOwnProperty.call(commodityPiece.dispatchPaths, j)) {
|
|
221
|
-
const dispatchPath = commodityPiece.dispatchPaths[j];
|
|
222
|
-
for (const k in dispatchPath.dispatchPathEdges) {
|
|
223
|
-
if (Object.prototype.hasOwnProperty.call(dispatchPath.dispatchPathEdges, k)) {
|
|
224
|
-
const dispatchPathEdge = dispatchPath.dispatchPathEdges[k];
|
|
225
|
-
if (dispatchPathEdge.vertex2 === nodeID)
|
|
226
|
-
deps.push(dispatchPathEdge);
|
|
227
|
-
}
|
|
228
|
-
}
|
|
229
|
-
}
|
|
230
|
-
}
|
|
231
|
-
}
|
|
232
|
-
}
|
|
233
|
-
return deps;
|
|
96
|
+
return ret;
|
|
234
97
|
}
|
|
98
|
+
const icons = {
|
|
99
|
+
Warehouse: _jsx("i", { className: "fa-solid fa-warehouse" }),
|
|
100
|
+
Railyard: _jsx("i", { className: "fa-regular fa-train-track" }),
|
|
101
|
+
Workshop: _jsx("i", { className: "fa-solid fa-screwdriver-wrench" }),
|
|
102
|
+
"Drop Yard": _jsx("i", { className: "fa-solid fa-arrow-down-to-line" }),
|
|
103
|
+
};
|
|
235
104
|
//# sourceMappingURL=loadCommodityPieces.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loadCommodityPieces.js","sourceRoot":"","sources":["../../../src/hooks/load/loadCommodityPieces.tsx"],"names":[],"mappings":";AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"loadCommodityPieces.js","sourceRoot":"","sources":["../../../src/hooks/load/loadCommodityPieces.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { ClickAwayListener, Popper } from "@mui/base";
|
|
3
|
-
import { Box, Chip, Grid, IconButton, Modal,
|
|
3
|
+
import { Box, Chip, Grid, IconButton, Modal, ModalDialog, Sheet, Skeleton, Tooltip, Typography, useTheme, } from "@mui/joy";
|
|
4
|
+
import { useMediaQuery } from "@mui/material";
|
|
5
|
+
import { NerdDraggableDialog } from "@nerdjs/nerd-ui";
|
|
4
6
|
import { DateTime } from "luxon";
|
|
5
7
|
import { useMemo, useState } from "react";
|
|
6
8
|
import { useTranslation } from "react-i18next";
|
|
@@ -40,7 +42,9 @@ export function LoadLastLocation(props) {
|
|
|
40
42
|
return (_jsxs(Sheet, { variant: "soft", sx: {
|
|
41
43
|
p: 1,
|
|
42
44
|
borderRadius: "8px",
|
|
43
|
-
}, children: [_jsxs(Box, { display: "flex", gap: 1, children: [_jsx(Typography, { endDecorator: _jsx(Tooltip, { title: "Location History", children: _jsx(IconButton, { size: "sm", disabled: !positions || positions.length === 0, onClick: () => setOpen(true), ref: (ref) => setAnchorEl(ref), children: _jsx("i", { className: "fa-solid fa-circle-info" }) }) }), display: "inline", level: "title-md", children: t("Last Location") }), _jsx(Box, { sx: { flexGrow: 1 } }), _jsx(Chip, { startDecorator: _jsx("i", { className: "fa-solid fa-diagram-sankey" }), size: "sm", variant: "outlined", onClick: () => setLoadCommodityPiecesOpen(true), children: t("Dispatch Paths") }), _jsx(
|
|
45
|
+
}, children: [_jsxs(Box, { display: "flex", gap: 1, children: [_jsx(Typography, { endDecorator: _jsx(Tooltip, { title: "Location History", children: _jsx(IconButton, { size: "sm", disabled: !positions || positions.length === 0, onClick: () => setOpen(true), ref: (ref) => setAnchorEl(ref), children: _jsx("i", { className: "fa-solid fa-circle-info" }) }) }), display: "inline", level: "title-md", children: t("Last Location") }), _jsx(Box, { sx: { flexGrow: 1 } }), _jsx(Chip, { startDecorator: _jsx("i", { className: "fa-solid fa-diagram-sankey" }), size: "sm", variant: "outlined", onClick: () => setLoadCommodityPiecesOpen(true), children: t("Dispatch Paths") }), _jsx(Wrapper, { open: loadCommodityPiecesOpen, handleClose: () => setLoadCommodityPiecesOpen(false), children: _jsxs(Box, { sx: { display: "flex", flexDirection: "column", gap: 2 }, children: [_jsx(Typography, { id: "draggable-title", level: "title-lg", sx: {
|
|
46
|
+
cursor: "move",
|
|
47
|
+
}, children: t("Dispatch Paths") }), loadCommodityPiecesOpen ? (_jsx(LoadCommodityPieces, { loadID: loadID })) : ([])] }) }), _jsx(Popper, { open: open, anchorEl: anchorEl, slotProps: {
|
|
44
48
|
root: {
|
|
45
49
|
style: {
|
|
46
50
|
zIndex: theme.zIndex.modal,
|
|
@@ -89,4 +93,23 @@ export function LoadLastLocation(props) {
|
|
|
89
93
|
height: 80,
|
|
90
94
|
}, onClick: () => window.open(`https://www.google.com/maps/?q=${positions[0]?.latitude},${positions[0]?.longitude}`, "_blank", "noopener,noreferrer"), src: `https://maps.googleapis.com/maps/api/staticmap?center=${positions[0]?.latitude},${positions[0]?.longitude}&zoom=15&size=200x230&maptype=roadmap&markers=color:red%7C${positions[0]?.latitude},${positions[0]?.longitude}&key=AIzaSyCx8q4t7MKbDWoof2CfvtDp9tFgH0adOzw` }) }) })) : (_jsx(Typography, { level: "title-md", children: _jsx("i", { className: "fa-solid fa-location-pin-slash" }) }))] })] }));
|
|
91
95
|
}
|
|
96
|
+
const Wrapper = ({ children, open, handleClose, }) => {
|
|
97
|
+
const theme = useTheme();
|
|
98
|
+
const matches = useMediaQuery(theme.breakpoints.down("md"));
|
|
99
|
+
if (matches)
|
|
100
|
+
return (_jsx(Modal, { open: open, onClose: handleClose, children: _jsx(ModalDialog, { layout: "fullscreen", children: children }) }));
|
|
101
|
+
else if (open)
|
|
102
|
+
return (_jsx(NerdDraggableDialog, { draggableProps: {
|
|
103
|
+
handle: "#draggable-title",
|
|
104
|
+
cancel: "#draggable-content",
|
|
105
|
+
}, resizable: true, initialHeight: 820, initialWidth: 820, resizableProps: {
|
|
106
|
+
minConstraints: [300, 300],
|
|
107
|
+
}, sheetProps: {
|
|
108
|
+
sx: {
|
|
109
|
+
p: 1,
|
|
110
|
+
},
|
|
111
|
+
}, children: children }));
|
|
112
|
+
else
|
|
113
|
+
return _jsx(_Fragment, {});
|
|
114
|
+
};
|
|
92
115
|
//# sourceMappingURL=loadLastLocation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loadLastLocation.js","sourceRoot":"","sources":["../../../src/hooks/load/loadLastLocation.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACtD,OAAO,EACL,GAAG,EACH,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,KAAK,EACL,
|
|
1
|
+
{"version":3,"file":"loadLastLocation.js","sourceRoot":"","sources":["../../../src/hooks/load/loadLastLocation.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nerdjs/sales-kit",
|
|
3
|
-
"version": "2.4.
|
|
3
|
+
"version": "2.4.15",
|
|
4
4
|
"description": "This is a @nerdjs library for the WA Sales Service",
|
|
5
5
|
"keywords": [],
|
|
6
6
|
"license": "ISC",
|
|
@@ -23,7 +23,6 @@
|
|
|
23
23
|
"dependencies": {
|
|
24
24
|
"luxon": "^3.3.0",
|
|
25
25
|
"react-hotkeys-hook": "^4.5.0",
|
|
26
|
-
"reactflow": "^11.11.4",
|
|
27
26
|
"yup": "^0.32.11"
|
|
28
27
|
},
|
|
29
28
|
"devDependencies": {
|
|
@@ -44,7 +43,7 @@
|
|
|
44
43
|
"eslint-plugin-i18next": "^6.0.0-4",
|
|
45
44
|
"eslint-plugin-jsdoc": "^39.2.1",
|
|
46
45
|
"eslint-plugin-prettier": "^4.0.0",
|
|
47
|
-
"eslint-plugin-react": "^7.
|
|
46
|
+
"eslint-plugin-react": "^7.34.4",
|
|
48
47
|
"eslint-plugin-react-hooks": "^4.3.0",
|
|
49
48
|
"jsdoc": "^3.6.10",
|
|
50
49
|
"prettier": "^2.6.2",
|