@localstack/appinspector-ui 1.0.13 → 1.0.14
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/index.cjs +103 -69
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +103 -69
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -4196,72 +4196,23 @@ var StyledDrawer = (0, import_styles.styled)(import_material15.Drawer)(() => ({
|
|
|
4196
4196
|
"position": "relative",
|
|
4197
4197
|
"width": DRAWER_WIDTH
|
|
4198
4198
|
}));
|
|
4199
|
-
var
|
|
4200
|
-
|
|
4201
|
-
|
|
4202
|
-
|
|
4203
|
-
|
|
4204
|
-
|
|
4205
|
-
|
|
4206
|
-
|
|
4207
|
-
|
|
4208
|
-
|
|
4209
|
-
|
|
4210
|
-
|
|
4211
|
-
|
|
4212
|
-
|
|
4213
|
-
|
|
4214
|
-
|
|
4215
|
-
} catch (error) {
|
|
4216
|
-
console.error(error);
|
|
4217
|
-
setFetchError(error instanceof Error ? error : new Error("Unknown error", { cause: error }));
|
|
4218
|
-
} finally {
|
|
4219
|
-
setLoading(false);
|
|
4220
|
-
}
|
|
4221
|
-
}, [api, traceId]);
|
|
4222
|
-
(0, import_react19.useEffect)(() => {
|
|
4223
|
-
void fetchSpans();
|
|
4224
|
-
}, [fetchSpans]);
|
|
4225
|
-
const [open, setOpen] = (0, import_react19.useState)(true);
|
|
4226
|
-
const [selectedEvent, setSelectedEvent] = (0, import_react19.useState)();
|
|
4227
|
-
const [viewPortPixelWidth, setViewPortPixelWidth] = (0, import_react19.useState)(0);
|
|
4228
|
-
const { checkStatus, error: statusError, status } = useStatus();
|
|
4229
|
-
const calculateDrawerWidth = (0, import_react19.useCallback)(() => {
|
|
4230
|
-
const percentageMatch = /(\d+)%/.exec(DRAWER_WIDTH);
|
|
4231
|
-
if (percentageMatch && open) {
|
|
4232
|
-
const percentage = Number.parseInt(percentageMatch[1], 10);
|
|
4233
|
-
return window.innerWidth * percentage / 100;
|
|
4234
|
-
}
|
|
4235
|
-
return 0;
|
|
4236
|
-
}, [open]);
|
|
4237
|
-
(0, import_react19.useEffect)(() => {
|
|
4238
|
-
const updateViewportWidth = () => {
|
|
4239
|
-
const totalWidth = window.innerWidth;
|
|
4240
|
-
const drawerPixelWidth = open ? calculateDrawerWidth() : 0;
|
|
4241
|
-
setViewPortPixelWidth(totalWidth - drawerPixelWidth);
|
|
4242
|
-
};
|
|
4243
|
-
updateViewportWidth();
|
|
4244
|
-
const timeoutId = setTimeout(updateViewportWidth, 50);
|
|
4245
|
-
window.addEventListener("resize", updateViewportWidth);
|
|
4246
|
-
return () => {
|
|
4247
|
-
window.removeEventListener("resize", updateViewportWidth);
|
|
4248
|
-
clearTimeout(timeoutId);
|
|
4249
|
-
};
|
|
4250
|
-
}, [open, calculateDrawerWidth]);
|
|
4251
|
-
const handleEventSelect = (0, import_react19.useCallback)((event) => {
|
|
4252
|
-
setSelectedEvent(event);
|
|
4253
|
-
setOpen(true);
|
|
4254
|
-
}, []);
|
|
4255
|
-
const handleRetry = (0, import_react19.useCallback)(() => {
|
|
4256
|
-
void checkStatus();
|
|
4257
|
-
}, [checkStatus]);
|
|
4199
|
+
var TraceGraphView = ({
|
|
4200
|
+
fetchError,
|
|
4201
|
+
fetchSpans,
|
|
4202
|
+
handleEventSelect,
|
|
4203
|
+
handleRetry,
|
|
4204
|
+
loading,
|
|
4205
|
+
navigateToSpansList,
|
|
4206
|
+
open,
|
|
4207
|
+
selectedEvent,
|
|
4208
|
+
spanId,
|
|
4209
|
+
spans,
|
|
4210
|
+
status,
|
|
4211
|
+
statusError,
|
|
4212
|
+
traceId,
|
|
4213
|
+
viewPortPixelWidth
|
|
4214
|
+
}) => {
|
|
4258
4215
|
const shouldShowStatusMessage = Boolean(statusError) || status?.status === "DISABLED";
|
|
4259
|
-
const navigate = (0, import_react_router_dom2.useNavigate)();
|
|
4260
|
-
const { resolveLink } = useAppInspector();
|
|
4261
|
-
const navigateToSpansList = (0, import_react19.useCallback)(() => {
|
|
4262
|
-
const url = resolveLink({ to: "spans-list" });
|
|
4263
|
-
navigate(url);
|
|
4264
|
-
}, [navigate, resolveLink]);
|
|
4265
4216
|
return /* @__PURE__ */ (0, import_jsx_runtime136.jsxs)(
|
|
4266
4217
|
import_material15.Box,
|
|
4267
4218
|
{
|
|
@@ -4312,7 +4263,7 @@ var TraceGraphPage = () => {
|
|
|
4312
4263
|
initialFocusEventId: spanId,
|
|
4313
4264
|
onEventSelect: handleEventSelect,
|
|
4314
4265
|
onRefresh: () => {
|
|
4315
|
-
|
|
4266
|
+
fetchSpans();
|
|
4316
4267
|
},
|
|
4317
4268
|
spans: {
|
|
4318
4269
|
data: spans,
|
|
@@ -4324,9 +4275,7 @@ var TraceGraphPage = () => {
|
|
|
4324
4275
|
) })
|
|
4325
4276
|
}
|
|
4326
4277
|
) }),
|
|
4327
|
-
/* @__PURE__ */ (0, import_jsx_runtime136.jsx)(StyledDrawer, { anchor: "right", open, variant: "persistent", children: /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(EventDetails, {
|
|
4328
|
-
setOpen(false);
|
|
4329
|
-
}, selectedEvent }) })
|
|
4278
|
+
/* @__PURE__ */ (0, import_jsx_runtime136.jsx)(StyledDrawer, { anchor: "right", open, variant: "persistent", children: /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(EventDetails, { selectedEvent }) })
|
|
4330
4279
|
] })
|
|
4331
4280
|
}
|
|
4332
4281
|
)
|
|
@@ -4334,6 +4283,91 @@ var TraceGraphPage = () => {
|
|
|
4334
4283
|
}
|
|
4335
4284
|
);
|
|
4336
4285
|
};
|
|
4286
|
+
var TraceGraphPage = () => {
|
|
4287
|
+
const { traceId } = (0, import_react_router_dom2.useParams)();
|
|
4288
|
+
const [searchParameters] = (0, import_react_router_dom2.useSearchParams)();
|
|
4289
|
+
const spanId = searchParameters.get("spanId");
|
|
4290
|
+
const api = useAppInspectorApi();
|
|
4291
|
+
const [spans, setSpans] = (0, import_react19.useState)();
|
|
4292
|
+
const [loading, setLoading] = (0, import_react19.useState)(false);
|
|
4293
|
+
const [fetchError, setFetchError] = (0, import_react19.useState)();
|
|
4294
|
+
const fetchSpans = (0, import_react19.useCallback)(async () => {
|
|
4295
|
+
setLoading(true);
|
|
4296
|
+
try {
|
|
4297
|
+
const response = await api.getSpans({
|
|
4298
|
+
trace_id: traceId
|
|
4299
|
+
});
|
|
4300
|
+
setSpans(response.spans);
|
|
4301
|
+
setFetchError(void 0);
|
|
4302
|
+
} catch (error) {
|
|
4303
|
+
console.error(error);
|
|
4304
|
+
setFetchError(error instanceof Error ? error : new Error("Unknown error", { cause: error }));
|
|
4305
|
+
} finally {
|
|
4306
|
+
setLoading(false);
|
|
4307
|
+
}
|
|
4308
|
+
}, [api, traceId]);
|
|
4309
|
+
(0, import_react19.useEffect)(() => {
|
|
4310
|
+
void fetchSpans();
|
|
4311
|
+
}, [fetchSpans]);
|
|
4312
|
+
const [open, setOpen] = (0, import_react19.useState)(true);
|
|
4313
|
+
const [selectedEvent, setSelectedEvent] = (0, import_react19.useState)();
|
|
4314
|
+
const [viewPortPixelWidth, setViewPortPixelWidth] = (0, import_react19.useState)(0);
|
|
4315
|
+
const { checkStatus, error: statusError, status } = useStatus();
|
|
4316
|
+
const calculateDrawerWidth = (0, import_react19.useCallback)(() => {
|
|
4317
|
+
const percentageMatch = /(\d+)%/.exec(DRAWER_WIDTH);
|
|
4318
|
+
if (percentageMatch && open) {
|
|
4319
|
+
const percentage = Number.parseInt(percentageMatch[1], 10);
|
|
4320
|
+
return window.innerWidth * percentage / 100;
|
|
4321
|
+
}
|
|
4322
|
+
return 0;
|
|
4323
|
+
}, [open]);
|
|
4324
|
+
(0, import_react19.useEffect)(() => {
|
|
4325
|
+
const updateViewportWidth = () => {
|
|
4326
|
+
const totalWidth = window.innerWidth;
|
|
4327
|
+
const drawerPixelWidth = open ? calculateDrawerWidth() : 0;
|
|
4328
|
+
setViewPortPixelWidth(totalWidth - drawerPixelWidth);
|
|
4329
|
+
};
|
|
4330
|
+
updateViewportWidth();
|
|
4331
|
+
const timeoutId = setTimeout(updateViewportWidth, 50);
|
|
4332
|
+
window.addEventListener("resize", updateViewportWidth);
|
|
4333
|
+
return () => {
|
|
4334
|
+
window.removeEventListener("resize", updateViewportWidth);
|
|
4335
|
+
clearTimeout(timeoutId);
|
|
4336
|
+
};
|
|
4337
|
+
}, [open, calculateDrawerWidth]);
|
|
4338
|
+
const handleEventSelect = (0, import_react19.useCallback)((event) => {
|
|
4339
|
+
setSelectedEvent(event);
|
|
4340
|
+
setOpen(true);
|
|
4341
|
+
}, []);
|
|
4342
|
+
const handleRetry = (0, import_react19.useCallback)(() => {
|
|
4343
|
+
void checkStatus();
|
|
4344
|
+
}, [checkStatus]);
|
|
4345
|
+
const navigate = (0, import_react_router_dom2.useNavigate)();
|
|
4346
|
+
const { resolveLink } = useAppInspector();
|
|
4347
|
+
const navigateToSpansList = (0, import_react19.useCallback)(() => {
|
|
4348
|
+
const url = resolveLink({ to: "spans-list" });
|
|
4349
|
+
navigate(url);
|
|
4350
|
+
}, [navigate, resolveLink]);
|
|
4351
|
+
return /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(
|
|
4352
|
+
TraceGraphView,
|
|
4353
|
+
{
|
|
4354
|
+
fetchError,
|
|
4355
|
+
fetchSpans: () => void fetchSpans(),
|
|
4356
|
+
handleEventSelect,
|
|
4357
|
+
handleRetry,
|
|
4358
|
+
loading,
|
|
4359
|
+
navigateToSpansList,
|
|
4360
|
+
open,
|
|
4361
|
+
selectedEvent,
|
|
4362
|
+
spanId: spanId ?? void 0,
|
|
4363
|
+
spans,
|
|
4364
|
+
status,
|
|
4365
|
+
statusError,
|
|
4366
|
+
traceId,
|
|
4367
|
+
viewPortPixelWidth
|
|
4368
|
+
}
|
|
4369
|
+
);
|
|
4370
|
+
};
|
|
4337
4371
|
|
|
4338
4372
|
// src/routes.ts
|
|
4339
4373
|
var routes = {
|