@localstack/appinspector-ui 1.0.15 → 1.0.16
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 +50 -8
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +54 -12
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// src/pages/spans-list-page.tsx
|
|
2
2
|
import { Box as Box6 } from "@mui/material";
|
|
3
|
-
import { useCallback as useCallback5, useEffect as useEffect4, useRef as useRef3, useState as useState5 } from "react";
|
|
3
|
+
import { useCallback as useCallback5, useEffect as useEffect4, useMemo as useMemo4, useRef as useRef3, useState as useState5 } from "react";
|
|
4
4
|
import { useNavigate } from "react-router-dom";
|
|
5
5
|
|
|
6
6
|
// src/api/use-api.tsx
|
|
@@ -2703,9 +2703,15 @@ var SpansDataGrid = ({
|
|
|
2703
2703
|
loading,
|
|
2704
2704
|
onClearSpans,
|
|
2705
2705
|
onFilterWriteOperationsChange,
|
|
2706
|
+
onPageChange,
|
|
2707
|
+
onPageSizeChange,
|
|
2706
2708
|
onRefresh,
|
|
2707
2709
|
onSpanClick,
|
|
2710
|
+
page,
|
|
2711
|
+
pageSize,
|
|
2712
|
+
rowCount,
|
|
2708
2713
|
rows,
|
|
2714
|
+
rowsPerPageOptions,
|
|
2709
2715
|
// setRows,
|
|
2710
2716
|
sortingOption = defaultSortingOption
|
|
2711
2717
|
}) => {
|
|
@@ -2804,15 +2810,26 @@ var SpansDataGrid = ({
|
|
|
2804
2810
|
getRowId: (row) => row.span_id,
|
|
2805
2811
|
initialState: {
|
|
2806
2812
|
pagination: {
|
|
2807
|
-
page
|
|
2808
|
-
pageSize
|
|
2813
|
+
page,
|
|
2814
|
+
pageSize
|
|
2809
2815
|
}
|
|
2810
2816
|
},
|
|
2811
2817
|
loading,
|
|
2818
|
+
onPageChange: (newPage) => {
|
|
2819
|
+
onPageChange(newPage);
|
|
2820
|
+
},
|
|
2821
|
+
onPageSizeChange: (newPageSize) => {
|
|
2822
|
+
onPageSizeChange(newPageSize);
|
|
2823
|
+
},
|
|
2812
2824
|
onRowClick: handleRowClick,
|
|
2813
2825
|
onSortModelChange: handleSortModelChange,
|
|
2826
|
+
page,
|
|
2827
|
+
pageSize,
|
|
2828
|
+
paginationMode: "server",
|
|
2829
|
+
rowCount,
|
|
2814
2830
|
rowHeight: 40,
|
|
2815
2831
|
rows: filteredRows,
|
|
2832
|
+
rowsPerPageOptions,
|
|
2816
2833
|
sortModel,
|
|
2817
2834
|
sx: { flexGrow: 1 }
|
|
2818
2835
|
}
|
|
@@ -2845,9 +2862,15 @@ var SpansList = (props) => {
|
|
|
2845
2862
|
loading: props.spans.loading,
|
|
2846
2863
|
onClearSpans: props.onClearSpans,
|
|
2847
2864
|
onFilterWriteOperationsChange: props.onFilterWriteOperationsChange,
|
|
2865
|
+
onPageChange: props.onPageChange,
|
|
2866
|
+
onPageSizeChange: props.onPageSizeChange,
|
|
2848
2867
|
onRefresh: props.onRefresh,
|
|
2849
2868
|
onSpanClick: props.onSpanClick,
|
|
2869
|
+
page: props.page,
|
|
2870
|
+
pageSize: props.pageSize,
|
|
2871
|
+
rowCount: props.spanCount,
|
|
2850
2872
|
rows: props.spans.data ?? [],
|
|
2873
|
+
rowsPerPageOptions: props.spansPerPageOptions,
|
|
2851
2874
|
sortingOption: { field: "start_time_unix_nano", sort: "asc" }
|
|
2852
2875
|
}
|
|
2853
2876
|
)
|
|
@@ -3369,24 +3392,37 @@ var SpansListPage = () => {
|
|
|
3369
3392
|
const [loading, setLoading] = useState5(false);
|
|
3370
3393
|
const hasFetched = useRef3(false);
|
|
3371
3394
|
const [filterWriteOperations, setFilterWriteOperations] = useLocalStorage("filterWriteOperations", true);
|
|
3395
|
+
const mapPageToNextCursor = useRef3({});
|
|
3396
|
+
const [page, setPage] = useState5(0);
|
|
3397
|
+
const [pageSize, setPageSize] = useState5(100);
|
|
3398
|
+
const [spansPerPageOptions] = useState5(() => [25, 50, 100]);
|
|
3399
|
+
const [spanCount, setSpanCount] = useState5();
|
|
3400
|
+
const queryOptions = useMemo4(() => {
|
|
3401
|
+
return {
|
|
3402
|
+
is_write_operation: filterWriteOperations ? true : void 0,
|
|
3403
|
+
limit: pageSize,
|
|
3404
|
+
pagination_token: mapPageToNextCursor.current[page - 1]
|
|
3405
|
+
};
|
|
3406
|
+
}, [filterWriteOperations, pageSize, page]);
|
|
3372
3407
|
const [fetchError, setFetchError] = useState5();
|
|
3373
3408
|
const { checkStatus, error: statusError, status } = useStatus();
|
|
3374
3409
|
const fetchSpans = useCallback5(async () => {
|
|
3375
3410
|
setLoading(true);
|
|
3376
3411
|
try {
|
|
3377
|
-
const response = await api.getSpans(
|
|
3378
|
-
is_write_operation: filterWriteOperations ? true : void 0,
|
|
3379
|
-
limit: 100
|
|
3380
|
-
});
|
|
3412
|
+
const response = await api.getSpans(queryOptions);
|
|
3381
3413
|
setSpans(response.spans);
|
|
3414
|
+
setSpanCount(response.pagination.total_count);
|
|
3382
3415
|
setFetchError(void 0);
|
|
3416
|
+
if (response.pagination.cursor) {
|
|
3417
|
+
mapPageToNextCursor.current[page] = response.pagination.cursor;
|
|
3418
|
+
}
|
|
3383
3419
|
} catch (error) {
|
|
3384
3420
|
console.error(error);
|
|
3385
3421
|
setFetchError(error instanceof Error ? error : new Error("Unknown error", { cause: error }));
|
|
3386
3422
|
} finally {
|
|
3387
3423
|
setLoading(false);
|
|
3388
3424
|
}
|
|
3389
|
-
}, [api,
|
|
3425
|
+
}, [api, page, queryOptions]);
|
|
3390
3426
|
const fetchSpansSync = useCallback5(() => {
|
|
3391
3427
|
void fetchSpans();
|
|
3392
3428
|
}, [fetchSpans]);
|
|
@@ -3452,17 +3488,23 @@ var SpansListPage = () => {
|
|
|
3452
3488
|
onFilterWriteOperationsChange: (value) => {
|
|
3453
3489
|
setFilterWriteOperations(value);
|
|
3454
3490
|
},
|
|
3491
|
+
onPageChange: setPage,
|
|
3492
|
+
onPageSizeChange: setPageSize,
|
|
3455
3493
|
onRefresh: () => {
|
|
3456
3494
|
fetchSpansSync();
|
|
3457
3495
|
},
|
|
3458
3496
|
onSpanClick: (span) => {
|
|
3459
3497
|
navigateToSpan(span);
|
|
3460
3498
|
},
|
|
3499
|
+
page,
|
|
3500
|
+
pageSize,
|
|
3501
|
+
spanCount,
|
|
3461
3502
|
spans: {
|
|
3462
3503
|
data: spans,
|
|
3463
3504
|
error: fetchError,
|
|
3464
3505
|
loading
|
|
3465
|
-
}
|
|
3506
|
+
},
|
|
3507
|
+
spansPerPageOptions
|
|
3466
3508
|
}
|
|
3467
3509
|
)
|
|
3468
3510
|
}
|
|
@@ -3639,10 +3681,10 @@ import { memo, useCallback as useCallback6 } from "react";
|
|
|
3639
3681
|
// src/components/trace-graph/problem-indicator.tsx
|
|
3640
3682
|
import { Error as ErrorIcon, Info, Warning } from "@mui/icons-material";
|
|
3641
3683
|
import { Box as Box10, Tooltip as Tooltip2 } from "@mui/material";
|
|
3642
|
-
import { useMemo as
|
|
3684
|
+
import { useMemo as useMemo5 } from "react";
|
|
3643
3685
|
import { jsx as jsx132 } from "react/jsx-runtime";
|
|
3644
3686
|
var ProblemIndicator = ({ error }) => {
|
|
3645
|
-
const icon =
|
|
3687
|
+
const icon = useMemo5(() => {
|
|
3646
3688
|
switch (error.level) {
|
|
3647
3689
|
case "error": {
|
|
3648
3690
|
return /* @__PURE__ */ jsx132(ErrorIcon, { sx: { color: "#d32f2f", fontSize: "14px" } });
|
|
@@ -3655,7 +3697,7 @@ var ProblemIndicator = ({ error }) => {
|
|
|
3655
3697
|
}
|
|
3656
3698
|
}
|
|
3657
3699
|
}, [error.level]);
|
|
3658
|
-
const color =
|
|
3700
|
+
const color = useMemo5(() => {
|
|
3659
3701
|
switch (error.level) {
|
|
3660
3702
|
case "error": {
|
|
3661
3703
|
return "#d32f2f";
|