@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 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 TraceGraphPage = () => {
4200
- const { traceId } = (0, import_react_router_dom2.useParams)();
4201
- const [searchParameters] = (0, import_react_router_dom2.useSearchParams)();
4202
- const spanId = searchParameters.get("spanId");
4203
- const api = useAppInspectorApi();
4204
- const [spans, setSpans] = (0, import_react19.useState)();
4205
- const [loading, setLoading] = (0, import_react19.useState)(false);
4206
- const [fetchError, setFetchError] = (0, import_react19.useState)();
4207
- const fetchSpans = (0, import_react19.useCallback)(async () => {
4208
- setLoading(true);
4209
- try {
4210
- const response = await api.getSpans({
4211
- trace_id: traceId
4212
- });
4213
- setSpans(response.spans);
4214
- setFetchError(void 0);
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
- void fetchSpans();
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, { onClose: () => {
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 = {