@localstack/appinspector-ui 1.0.90 → 1.0.92
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 +31 -4
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +34 -6
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -520,6 +520,7 @@ import {
|
|
|
520
520
|
TableHead,
|
|
521
521
|
TableRow,
|
|
522
522
|
TableSortLabel,
|
|
523
|
+
Tooltip as Tooltip3,
|
|
523
524
|
Typography as Typography3,
|
|
524
525
|
useTheme as useTheme2
|
|
525
526
|
} from "@mui/material";
|
|
@@ -10235,6 +10236,7 @@ var EVENT_DETAILS_REQUEST_PAYLOAD = "event-details-request-payload";
|
|
|
10235
10236
|
var EVENT_DETAILS_RESPONSE_PAYLOAD_TEST_ID = "event-details-response-payload";
|
|
10236
10237
|
var EVENT_DETAILS_EXCEPTION_PAYLOAD_TEST_ID = "event-details-exception-payload";
|
|
10237
10238
|
var EVENT_DETAILS_IAM_ERRORS_SUPPRESSED_TEST_ID = "event-details-iam-errors-suppressed";
|
|
10239
|
+
var IAM_ERROR_COUNT_TEST_ID = "iam-error-count";
|
|
10238
10240
|
var SERVICE_NODE_TEST_ID = "service-node";
|
|
10239
10241
|
var SERVICE_NODE_SERVICE_NAME_TEST_ID = "service-node-service-name";
|
|
10240
10242
|
var SERVICE_NODE_OPERATION_NAME_TEST_ID = "service-node-operation-name";
|
|
@@ -12915,6 +12917,7 @@ var SpansDataGrid = ({
|
|
|
12915
12917
|
fetchingForward,
|
|
12916
12918
|
hasMoreBackward,
|
|
12917
12919
|
hasMoreForward,
|
|
12920
|
+
iamErrorCount,
|
|
12918
12921
|
licenseLimit,
|
|
12919
12922
|
onClearSpans,
|
|
12920
12923
|
onFetchBackward,
|
|
@@ -13011,6 +13014,24 @@ var SpansDataGrid = ({
|
|
|
13011
13014
|
return /* @__PURE__ */ jsxs121(Fragment4, { children: [
|
|
13012
13015
|
/* @__PURE__ */ jsx126(Grid, { item: true, xs: 12, children: /* @__PURE__ */ jsxs121(Box4, { sx: { alignItems: "center", display: "flex", gap: "0.5rem" }, children: [
|
|
13013
13016
|
/* @__PURE__ */ jsx126(SpanCountBadge, { licenseLimit, systemLimit, totalCount, visibleCount: spans?.length }),
|
|
13017
|
+
iamErrorCount !== void 0 && iamErrorCount > 0 && /* @__PURE__ */ jsxs121(Fragment4, { children: [
|
|
13018
|
+
/* @__PURE__ */ jsx126(Typography3, { color: "text.disabled", sx: { mr: 0.5 }, variant: "body2", children: "\u2014" }),
|
|
13019
|
+
/* @__PURE__ */ jsx126(Tooltip3, { title: "Number of IAM permission errors detected across all operations", children: /* @__PURE__ */ jsxs121(
|
|
13020
|
+
Box4,
|
|
13021
|
+
{
|
|
13022
|
+
"data-testid": IAM_ERROR_COUNT_TEST_ID,
|
|
13023
|
+
sx: { alignItems: "center", borderBottom: "1px dotted", borderColor: "error.main", cursor: "default", display: "flex", gap: 0.5, mb: "-1px" },
|
|
13024
|
+
children: [
|
|
13025
|
+
/* @__PURE__ */ jsx126(Typography3, { color: "error", variant: "body2", children: iamErrorCount.toLocaleString() }),
|
|
13026
|
+
/* @__PURE__ */ jsxs121(Typography3, { color: "error", variant: "caption", children: [
|
|
13027
|
+
"IAM",
|
|
13028
|
+
" ",
|
|
13029
|
+
iamErrorCount === 1 ? "error" : "errors"
|
|
13030
|
+
] })
|
|
13031
|
+
]
|
|
13032
|
+
}
|
|
13033
|
+
) })
|
|
13034
|
+
] }),
|
|
13014
13035
|
/* @__PURE__ */ jsx126(Box4, { sx: { flexGrow: 1 } }),
|
|
13015
13036
|
/* @__PURE__ */ jsx126(
|
|
13016
13037
|
FormControlLabel,
|
|
@@ -13142,6 +13163,7 @@ var SpansList = (props) => {
|
|
|
13142
13163
|
fetchingForward: props.fetchingForward,
|
|
13143
13164
|
hasMoreBackward: props.hasMoreBackward,
|
|
13144
13165
|
hasMoreForward: props.hasMoreForward,
|
|
13166
|
+
iamErrorCount: props.iamErrorCount,
|
|
13145
13167
|
licenseLimit: props.licenseLimit,
|
|
13146
13168
|
onClearSpans: props.onClearSpans,
|
|
13147
13169
|
onFetchBackward: props.onFetchBackward,
|
|
@@ -14121,6 +14143,7 @@ var useSpans = () => {
|
|
|
14121
14143
|
setTotalCount(response.pagination.total_count);
|
|
14122
14144
|
setLicenseLimit(response.limits.span_count_limit_license);
|
|
14123
14145
|
setSystemLimit(response.limits.span_count_limit_system);
|
|
14146
|
+
setIamErrorCount(response.iam_error_count);
|
|
14124
14147
|
return {
|
|
14125
14148
|
hasMoreBackward: response.pagination.has_prev,
|
|
14126
14149
|
hasMoreForward: response.pagination.has_next,
|
|
@@ -14152,6 +14175,7 @@ var useSpans = () => {
|
|
|
14152
14175
|
const [totalCount, setTotalCount] = useState10();
|
|
14153
14176
|
const [licenseLimit, setLicenseLimit] = useState10();
|
|
14154
14177
|
const [systemLimit, setSystemLimit] = useState10();
|
|
14178
|
+
const [iamErrorCount, setIamErrorCount] = useState10();
|
|
14155
14179
|
const [hasMoreBackward, setHasMoreBackward] = useState10();
|
|
14156
14180
|
const [hasMoreForward, setHasMoreForward] = useState10();
|
|
14157
14181
|
const fetchForward = useCallback7(() => {
|
|
@@ -14216,6 +14240,7 @@ var useSpans = () => {
|
|
|
14216
14240
|
fetchingForward,
|
|
14217
14241
|
hasMoreBackward,
|
|
14218
14242
|
hasMoreForward,
|
|
14243
|
+
iamErrorCount,
|
|
14219
14244
|
licenseLimit,
|
|
14220
14245
|
spans: throttledSpans.items,
|
|
14221
14246
|
status,
|
|
@@ -26527,12 +26552,13 @@ var EventDetails = ({ onClose, selectedEvent }) => {
|
|
|
26527
26552
|
requestPayload.MessageBody = tryParseJson(requestPayload.MessageBody);
|
|
26528
26553
|
}
|
|
26529
26554
|
}
|
|
26555
|
+
const isResponseSuppressed = selectedEvent.attributes?.["localstack.aws.service.response_suppressed"] === true;
|
|
26530
26556
|
const responsePayload = tryParseJson(selectedEvent.attributes?.["localstack.aws.service.response"]);
|
|
26531
26557
|
if (parseNestedJson && isLambdaInvoke && responsePayload && typeof responsePayload === "object" && "Payload" in responsePayload) {
|
|
26532
26558
|
responsePayload.Payload = tryParseJson(responsePayload.Payload);
|
|
26533
26559
|
}
|
|
26534
26560
|
const exceptionPayload = tryParseJson(selectedEvent.attributes?.["localstack.aws.service.exception"]);
|
|
26535
|
-
const hasPayloads = requestPayload !== void 0 || responsePayload !== void 0 || exceptionPayload !== void 0;
|
|
26561
|
+
const hasPayloads = requestPayload !== void 0 || responsePayload !== void 0 || exceptionPayload !== void 0 || isResponseSuppressed;
|
|
26536
26562
|
const duration = selectedEvent.end_time_unix_nano ? ((BigInt(selectedEvent.end_time_unix_nano) - BigInt(selectedEvent.start_time_unix_nano)) / BigInt("1000000")).toString() : void 0;
|
|
26537
26563
|
return /* @__PURE__ */ jsxs130(Box14, { "data-testid": EVENT_DETAILS_TEST_ID, sx: { display: "flex", flexDirection: "column", height: "100%" }, children: [
|
|
26538
26564
|
/* @__PURE__ */ jsxs130(
|
|
@@ -26638,9 +26664,9 @@ var EventDetails = ({ onClose, selectedEvent }) => {
|
|
|
26638
26664
|
/* @__PURE__ */ jsx137(Typography10, { sx: { fontWeight: 600 }, variant: "caption", children: "Request" }),
|
|
26639
26665
|
/* @__PURE__ */ jsx137(PayloadViewer, { testId: EVENT_DETAILS_REQUEST_PAYLOAD, value: requestPayload })
|
|
26640
26666
|
] }),
|
|
26641
|
-
responsePayload !== void 0 && /* @__PURE__ */ jsxs130(Box14, { children: [
|
|
26667
|
+
(responsePayload !== void 0 || isResponseSuppressed) && /* @__PURE__ */ jsxs130(Box14, { children: [
|
|
26642
26668
|
/* @__PURE__ */ jsx137(Typography10, { sx: { fontWeight: 600 }, variant: "caption", children: "Response" }),
|
|
26643
|
-
/* @__PURE__ */ jsx137(PayloadViewer, { testId: EVENT_DETAILS_RESPONSE_PAYLOAD_TEST_ID, value: responsePayload })
|
|
26669
|
+
isResponseSuppressed ? /* @__PURE__ */ jsx137(Box14, { sx: { py: 1 }, children: /* @__PURE__ */ jsx137(Alert3, { severity: "warning", sx: { mb: 1 }, children: "Response payload is available \u2014 upgrade your license to view" }) }) : /* @__PURE__ */ jsx137(PayloadViewer, { testId: EVENT_DETAILS_RESPONSE_PAYLOAD_TEST_ID, value: responsePayload })
|
|
26644
26670
|
] }),
|
|
26645
26671
|
exceptionPayload !== void 0 && /* @__PURE__ */ jsxs130(Box14, { children: [
|
|
26646
26672
|
/* @__PURE__ */ jsx137(Typography10, { sx: { fontWeight: 600 }, variant: "caption", children: "Exception" }),
|
|
@@ -26684,7 +26710,7 @@ var EventDetails = ({ onClose, selectedEvent }) => {
|
|
|
26684
26710
|
};
|
|
26685
26711
|
var PayloadViewer = memo10(({ testId, value }) => {
|
|
26686
26712
|
const theme = useTheme3();
|
|
26687
|
-
return /* @__PURE__ */ jsx137(Box14, { "data-testid": testId, sx: { backgroundColor: "background.default", borderRadius: 1, fontSize: 12, overflow: "auto",
|
|
26713
|
+
return /* @__PURE__ */ jsx137(Box14, { "data-testid": testId, sx: { backgroundColor: "background.default", borderRadius: 1, fontSize: 12, overflow: "auto", py: 1 }, children: /* @__PURE__ */ jsx137(
|
|
26688
26714
|
JsonViewer,
|
|
26689
26715
|
{
|
|
26690
26716
|
displayDataTypes: false,
|
|
@@ -26711,7 +26737,7 @@ import { memo as memo11 } from "react";
|
|
|
26711
26737
|
|
|
26712
26738
|
// src/components/trace-graph/problem-indicator.tsx
|
|
26713
26739
|
import { Error as ErrorIcon2, Info as Info2, Warning as Warning2 } from "@mui/icons-material";
|
|
26714
|
-
import { Box as Box15, Tooltip as
|
|
26740
|
+
import { Box as Box15, Tooltip as Tooltip4 } from "@mui/material";
|
|
26715
26741
|
import { useMemo as useMemo12 } from "react";
|
|
26716
26742
|
import { jsx as jsx138 } from "react/jsx-runtime";
|
|
26717
26743
|
var ProblemIndicator = ({ error }) => {
|
|
@@ -26741,7 +26767,7 @@ var ProblemIndicator = ({ error }) => {
|
|
|
26741
26767
|
}
|
|
26742
26768
|
}
|
|
26743
26769
|
}, [error.level]);
|
|
26744
|
-
return /* @__PURE__ */ jsx138(
|
|
26770
|
+
return /* @__PURE__ */ jsx138(Tooltip4, { arrow: true, title: error.message ?? "Issue detected", children: /* @__PURE__ */ jsx138(
|
|
26745
26771
|
Box15,
|
|
26746
26772
|
{
|
|
26747
26773
|
sx: {
|
|
@@ -27331,6 +27357,7 @@ var SpansListPage = () => {
|
|
|
27331
27357
|
fetchingForward,
|
|
27332
27358
|
hasMoreBackward,
|
|
27333
27359
|
hasMoreForward,
|
|
27360
|
+
iamErrorCount,
|
|
27334
27361
|
licenseLimit,
|
|
27335
27362
|
spans,
|
|
27336
27363
|
status,
|
|
@@ -27391,6 +27418,7 @@ var SpansListPage = () => {
|
|
|
27391
27418
|
fetchingForward,
|
|
27392
27419
|
hasMoreBackward,
|
|
27393
27420
|
hasMoreForward,
|
|
27421
|
+
iamErrorCount,
|
|
27394
27422
|
licenseLimit,
|
|
27395
27423
|
onClearSpans: clearSpansSync,
|
|
27396
27424
|
onFetchBackward: fetchBackward,
|