elseware-ui 3.1.1 → 3.2.0

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.js CHANGED
@@ -18,6 +18,7 @@ var ReactWorldFlags = require('react-world-flags');
18
18
  var emojiFlags = require('emoji-flags');
19
19
  var reactSimpleMaps = require('react-simple-maps');
20
20
  var index_js$5 = require('react-icons/bi/index.js');
21
+ var fi = require('react-icons/fi');
21
22
  var CodeMirror = require('@uiw/react-codemirror');
22
23
  var langMarkdown = require('@codemirror/lang-markdown');
23
24
  var themeOneDark = require('@codemirror/theme-one-dark');
@@ -4728,7 +4729,7 @@ var init_python = __esm({
4728
4729
  });
4729
4730
 
4730
4731
  // node_modules/refractor/lang/jsx.js
4731
- function jsx226(Prism2) {
4732
+ function jsx227(Prism2) {
4732
4733
  Prism2.register(javascript);
4733
4734
  Prism2.register(markup);
4734
4735
  (function(Prism3) {
@@ -4861,14 +4862,14 @@ var init_jsx = __esm({
4861
4862
  "node_modules/refractor/lang/jsx.js"() {
4862
4863
  init_javascript();
4863
4864
  init_markup();
4864
- jsx226.displayName = "jsx";
4865
- jsx226.aliases = [];
4865
+ jsx227.displayName = "jsx";
4866
+ jsx227.aliases = [];
4866
4867
  }
4867
4868
  });
4868
4869
 
4869
4870
  // node_modules/refractor/lang/tsx.js
4870
4871
  function tsx(Prism2) {
4871
- Prism2.register(jsx226);
4872
+ Prism2.register(jsx227);
4872
4873
  Prism2.register(typescript);
4873
4874
  (function(Prism3) {
4874
4875
  var typescript2 = Prism3.util.clone(Prism3.languages.typescript);
@@ -6183,7 +6184,7 @@ var cardHoverBorderVariants = {
6183
6184
  ["dark" /* dark */]: "hover:border-eui-dark-500"
6184
6185
  };
6185
6186
  var cardBgVariants = {
6186
- ["default" /* default */]: "bg-white/5",
6187
+ ["default" /* default */]: "bg-white/[0.03]",
6187
6188
  ["primary" /* primary */]: "bg-eui-primary-500/10",
6188
6189
  ["secondary" /* secondary */]: "bg-eui-secondary-500/10",
6189
6190
  ["success" /* success */]: "bg-eui-success-500/10",
@@ -13792,13 +13793,13 @@ function Card({
13792
13793
  // default behavior
13793
13794
  }) {
13794
13795
  const eui = useEUIConfig();
13795
- const resolvedShape = shape ?? eui?.config?.global?.shape ?? "softRoundedSquare";
13796
+ const resolvedShape = shape ?? eui?.config?.global?.shape ?? "roundedSquare";
13796
13797
  return /* @__PURE__ */ jsxRuntime.jsxs(
13797
13798
  "div",
13798
13799
  {
13799
13800
  className: cn(
13800
13801
  // Base
13801
- "relative border backdrop-blur-md transition-all duration-300 overflow-hidden p-3",
13802
+ "relative overflow-hidden border p-4 backdrop-blur-md transition-all duration-300",
13802
13803
  // Shape
13803
13804
  shapes[resolvedShape],
13804
13805
  // Background
@@ -32731,6 +32732,430 @@ function StarRatingDistribution({
32731
32732
  );
32732
32733
  }
32733
32734
  var StarRatingDistribution_default = StarRatingDistribution;
32735
+ var HEALTHY_STATUSES = /* @__PURE__ */ new Set([
32736
+ "ok",
32737
+ "up",
32738
+ "online",
32739
+ "healthy",
32740
+ "success",
32741
+ "operational"
32742
+ ]);
32743
+ var UNHEALTHY_STATUSES = /* @__PURE__ */ new Set([
32744
+ "down",
32745
+ "offline",
32746
+ "unhealthy",
32747
+ "error",
32748
+ "failed",
32749
+ "failure",
32750
+ "unavailable"
32751
+ ]);
32752
+ var isRecord2 = (value) => {
32753
+ return typeof value === "object" && value !== null;
32754
+ };
32755
+ var getField = (value, key) => {
32756
+ if (!isRecord2(value)) {
32757
+ return void 0;
32758
+ }
32759
+ return value[key];
32760
+ };
32761
+ var getStringField = (value, keys2) => {
32762
+ for (const key of keys2) {
32763
+ const field = getField(value, key);
32764
+ if (typeof field === "string" && field.trim()) {
32765
+ return field.trim();
32766
+ }
32767
+ }
32768
+ return "";
32769
+ };
32770
+ var getBooleanField = (value, keys2) => {
32771
+ for (const key of keys2) {
32772
+ const field = getField(value, key);
32773
+ if (typeof field === "boolean") {
32774
+ return field;
32775
+ }
32776
+ }
32777
+ return null;
32778
+ };
32779
+ var getSystemHealthPayload = (data) => {
32780
+ const nestedData = getField(data, "data");
32781
+ return nestedData ?? data ?? null;
32782
+ };
32783
+ var getSystemHealthErrorMessage = (error) => {
32784
+ const nestedData = getField(error, "data");
32785
+ return getStringField(nestedData, ["message", "error"]) || getStringField(error, ["message", "error", "statusText"]) || "Health endpoint did not respond.";
32786
+ };
32787
+ var getSystemHealthHttpStatus = (error) => {
32788
+ const status = getField(error, "status");
32789
+ if (typeof status === "string" || typeof status === "number") {
32790
+ return status;
32791
+ }
32792
+ return "Network error";
32793
+ };
32794
+ var getSystemHealthStatusText = (data) => {
32795
+ const payload = getSystemHealthPayload(data);
32796
+ return (getStringField(payload, ["status", "state", "health"]) || getStringField(data, ["status", "state", "health"])).toLowerCase();
32797
+ };
32798
+ var normalizeSystemHealthState = (status) => {
32799
+ if (!status) {
32800
+ return null;
32801
+ }
32802
+ const normalizedStatus = status.toLowerCase();
32803
+ if (HEALTHY_STATUSES.has(normalizedStatus)) {
32804
+ return "operational";
32805
+ }
32806
+ if (UNHEALTHY_STATUSES.has(normalizedStatus)) {
32807
+ return "unavailable";
32808
+ }
32809
+ if (normalizedStatus === "checking" || normalizedStatus === "loading") {
32810
+ return "checking";
32811
+ }
32812
+ if (normalizedStatus === "reachable") {
32813
+ return "reachable";
32814
+ }
32815
+ return null;
32816
+ };
32817
+ var resolveSystemHealthState = ({
32818
+ data,
32819
+ status,
32820
+ isError,
32821
+ isLoading,
32822
+ isFetching
32823
+ }) => {
32824
+ if (isLoading || isFetching) {
32825
+ return "checking";
32826
+ }
32827
+ if (isError) {
32828
+ return "unavailable";
32829
+ }
32830
+ const normalizedStatus = normalizeSystemHealthState(status) ?? normalizeSystemHealthState(getSystemHealthStatusText(data));
32831
+ if (normalizedStatus) {
32832
+ return normalizedStatus;
32833
+ }
32834
+ const payload = getSystemHealthPayload(data);
32835
+ const healthy = getBooleanField(payload, ["ok", "healthy", "success"]) ?? getBooleanField(data, ["ok", "healthy", "success"]);
32836
+ if (healthy === true) {
32837
+ return "operational";
32838
+ }
32839
+ if (healthy === false) {
32840
+ return "unavailable";
32841
+ }
32842
+ return "reachable";
32843
+ };
32844
+ var resolveSystemHealthView = (input) => {
32845
+ const state = resolveSystemHealthState(input);
32846
+ const viewMap = {
32847
+ checking: {
32848
+ state: "checking",
32849
+ label: "Checking",
32850
+ description: "Request in flight",
32851
+ variant: "info",
32852
+ icon: fi.FiActivity,
32853
+ dotClassName: "bg-eui-info-300",
32854
+ panelClassName: "text-eui-info-200 bg-eui-info-500/10 border-eui-info-400/30"
32855
+ },
32856
+ operational: {
32857
+ state: "operational",
32858
+ label: "Operational",
32859
+ description: "Health endpoint is reporting normally",
32860
+ variant: "success",
32861
+ icon: fi.FiCheckCircle,
32862
+ dotClassName: "bg-eui-success-300",
32863
+ panelClassName: "text-eui-success-200 bg-eui-success-500/10 border-eui-success-400/30"
32864
+ },
32865
+ reachable: {
32866
+ state: "reachable",
32867
+ label: "Reachable",
32868
+ description: getSystemHealthStatusText(input.data) || "Response received",
32869
+ variant: "warning",
32870
+ icon: fi.FiActivity,
32871
+ dotClassName: "bg-eui-warning-300",
32872
+ panelClassName: "text-eui-warning-100 bg-eui-warning-500/10 border-eui-warning-300/30"
32873
+ },
32874
+ unavailable: {
32875
+ state: "unavailable",
32876
+ label: "Unavailable",
32877
+ description: getSystemHealthErrorMessage(input.error),
32878
+ variant: "danger",
32879
+ icon: fi.FiAlertTriangle,
32880
+ dotClassName: "bg-eui-danger-300",
32881
+ panelClassName: "text-eui-danger-200 bg-eui-danger-500/10 border-eui-danger-400/30"
32882
+ }
32883
+ };
32884
+ const view = viewMap[state];
32885
+ return {
32886
+ ...view,
32887
+ label: input.statusLabel ?? view.label,
32888
+ description: input.statusDescription ?? view.description
32889
+ };
32890
+ };
32891
+ var formatSystemHealthTimestamp = (value) => {
32892
+ if (!value) {
32893
+ return "Pending";
32894
+ }
32895
+ if (typeof value === "string") {
32896
+ return value;
32897
+ }
32898
+ const date = value instanceof Date ? value : new Date(value);
32899
+ if (Number.isNaN(date.getTime())) {
32900
+ return "Pending";
32901
+ }
32902
+ return date.toLocaleString();
32903
+ };
32904
+ var stringifySystemHealthPayload = (value, emptyText = "No response payload yet.") => {
32905
+ if (value === null || value === void 0) {
32906
+ return emptyText;
32907
+ }
32908
+ if (typeof value === "string") {
32909
+ return value;
32910
+ }
32911
+ if (value instanceof Error) {
32912
+ return JSON.stringify(
32913
+ {
32914
+ name: value.name,
32915
+ message: value.message,
32916
+ stack: value.stack
32917
+ },
32918
+ null,
32919
+ 2
32920
+ );
32921
+ }
32922
+ try {
32923
+ return JSON.stringify(value, null, 2);
32924
+ } catch {
32925
+ return String(value);
32926
+ }
32927
+ };
32928
+ function MetricItem({ icon, label, value }) {
32929
+ return /* @__PURE__ */ jsxRuntime.jsx(Card_default, { children: /* @__PURE__ */ jsxRuntime.jsxs(CardContent_default, { className: "p-0", children: [
32930
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2 text-xs uppercase tracking-wide text-slate-400", children: [
32931
+ icon ? React26.createElement(icon, {
32932
+ className: "text-eui-success-300"
32933
+ }) : null,
32934
+ /* @__PURE__ */ jsxRuntime.jsx("span", { children: label })
32935
+ ] }),
32936
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-3 break-words text-sm font-medium text-slate-100", children: value ?? "Not available" })
32937
+ ] }) });
32938
+ }
32939
+ function ConnectionItem({ label, value }) {
32940
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
32941
+ /* @__PURE__ */ jsxRuntime.jsx("dt", { className: "text-slate-500", children: label }),
32942
+ /* @__PURE__ */ jsxRuntime.jsx("dd", { className: "mt-1 break-words font-medium text-slate-100", children: value ?? "Not available" })
32943
+ ] });
32944
+ }
32945
+ function SystemHealthStatus({
32946
+ eyebrow = "System",
32947
+ title = "System Health",
32948
+ description,
32949
+ data,
32950
+ error,
32951
+ response,
32952
+ status,
32953
+ statusLabel,
32954
+ statusDescription,
32955
+ isError = false,
32956
+ isLoading = false,
32957
+ isFetching = false,
32958
+ serverLabel = "Server",
32959
+ serverUrl,
32960
+ endpointLabel = "Endpoint",
32961
+ endpointPath = "/api/v1/system/health",
32962
+ endpointUrl,
32963
+ environmentLabel = "Environment",
32964
+ environment,
32965
+ lastCheckedLabel = "Last Checked",
32966
+ lastCheckedAt,
32967
+ responseTitle = "Response",
32968
+ responseDescription,
32969
+ emptyResponseText = "No response payload yet.",
32970
+ connectionTitle = "Connection",
32971
+ httpStateLabel = "HTTP state",
32972
+ httpState,
32973
+ pollingLabel = "Polling",
32974
+ pollingValue,
32975
+ clientLabel = "Client",
32976
+ clientName,
32977
+ metrics,
32978
+ connectionItems,
32979
+ refreshLabel = "Refresh health status",
32980
+ onRefresh,
32981
+ contentClassName,
32982
+ heroClassName,
32983
+ metricsClassName,
32984
+ responseClassName,
32985
+ connectionClassName,
32986
+ className,
32987
+ ...rest
32988
+ }) {
32989
+ const view = resolveSystemHealthView({
32990
+ data,
32991
+ error,
32992
+ status,
32993
+ statusLabel,
32994
+ statusDescription,
32995
+ isError,
32996
+ isLoading,
32997
+ isFetching
32998
+ });
32999
+ const StatusIcon = view.icon;
33000
+ const responsePayload = response ?? (isError ? error : getSystemHealthPayload(data));
33001
+ const responseText = stringifySystemHealthPayload(
33002
+ responsePayload,
33003
+ emptyResponseText
33004
+ );
33005
+ const defaultMetrics = [
33006
+ {
33007
+ id: "server",
33008
+ icon: fi.FiServer,
33009
+ label: serverLabel,
33010
+ value: serverUrl
33011
+ },
33012
+ {
33013
+ id: "endpoint",
33014
+ icon: fi.FiDatabase,
33015
+ label: endpointLabel,
33016
+ value: endpointUrl ?? endpointPath
33017
+ },
33018
+ {
33019
+ id: "last-checked",
33020
+ icon: fi.FiClock,
33021
+ label: lastCheckedLabel,
33022
+ value: formatSystemHealthTimestamp(lastCheckedAt)
33023
+ },
33024
+ {
33025
+ id: "environment",
33026
+ icon: fi.FiActivity,
33027
+ label: environmentLabel,
33028
+ value: environment
33029
+ }
33030
+ ];
33031
+ const defaultConnectionItems = [
33032
+ {
33033
+ id: "http-state",
33034
+ label: httpStateLabel,
33035
+ value: httpState ?? (isError ? getSystemHealthHttpStatus(error) : "Connected")
33036
+ },
33037
+ {
33038
+ id: "polling",
33039
+ label: pollingLabel,
33040
+ value: pollingValue
33041
+ },
33042
+ {
33043
+ id: "client",
33044
+ label: clientLabel,
33045
+ value: clientName
33046
+ }
33047
+ ];
33048
+ const visibleMetrics = metrics ?? defaultMetrics;
33049
+ const visibleConnectionItems = connectionItems ?? defaultConnectionItems;
33050
+ const currentResponseDescription = responseDescription ?? (isError ? "Request error" : "Latest payload");
33051
+ const heroDescription = description ?? `Live status from ${endpointPath}`;
33052
+ return /* @__PURE__ */ jsxRuntime.jsxs(
33053
+ "section",
33054
+ {
33055
+ ...rest,
33056
+ className: cn("min-h-screen bg-[#05070b] text-slate-100", className),
33057
+ children: [
33058
+ /* @__PURE__ */ jsxRuntime.jsx(
33059
+ "section",
33060
+ {
33061
+ className: cn(
33062
+ "border-b border-white/10",
33063
+ "bg-[radial-gradient(circle_at_top_left,rgba(22,163,74,0.22),transparent_32%),linear-gradient(135deg,rgba(15,23,42,0.96),rgba(2,6,23,0.98))]",
33064
+ heroClassName
33065
+ ),
33066
+ children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mx-auto flex w-full max-w-6xl flex-col gap-8 px-5 py-14 sm:px-8 lg:flex-row lg:items-end lg:justify-between lg:py-20", children: [
33067
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "max-w-3xl", children: [
33068
+ eyebrow ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm font-semibold uppercase tracking-wide text-eui-success-300", children: eyebrow }) : null,
33069
+ title ? /* @__PURE__ */ jsxRuntime.jsx("h1", { className: "mt-4 text-4xl font-semibold leading-tight text-white sm:text-5xl", children: title }) : null,
33070
+ heroDescription ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-5 max-w-2xl text-base leading-7 text-slate-300", children: heroDescription }) : null
33071
+ ] }),
33072
+ /* @__PURE__ */ jsxRuntime.jsx(Card_default, { styles: cn("px-5 py-4", view.panelClassName), children: /* @__PURE__ */ jsxRuntime.jsxs(CardContent_default, { className: "p-0", children: [
33073
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-3", children: [
33074
+ /* @__PURE__ */ jsxRuntime.jsx(
33075
+ "span",
33076
+ {
33077
+ className: cn("h-2.5 w-2.5 rounded-full", view.dotClassName)
33078
+ }
33079
+ ),
33080
+ /* @__PURE__ */ jsxRuntime.jsx(StatusIcon, { className: "text-xl" }),
33081
+ /* @__PURE__ */ jsxRuntime.jsx(
33082
+ Chip,
33083
+ {
33084
+ label: view.label,
33085
+ variant: view.variant,
33086
+ appearance: "ghost",
33087
+ shape: "roundedSquare"
33088
+ }
33089
+ )
33090
+ ] }),
33091
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-2 max-w-xs text-sm opacity-80", children: view.description })
33092
+ ] }) })
33093
+ ] })
33094
+ }
33095
+ ),
33096
+ /* @__PURE__ */ jsxRuntime.jsxs(
33097
+ "section",
33098
+ {
33099
+ className: cn(
33100
+ "mx-auto w-full max-w-6xl px-5 py-10 sm:px-8",
33101
+ contentClassName
33102
+ ),
33103
+ children: [
33104
+ visibleMetrics.length > 0 ? /* @__PURE__ */ jsxRuntime.jsx(
33105
+ "div",
33106
+ {
33107
+ className: cn(
33108
+ "grid gap-4 md:grid-cols-2 xl:grid-cols-4",
33109
+ metricsClassName
33110
+ ),
33111
+ children: visibleMetrics.map((metric, index3) => /* @__PURE__ */ jsxRuntime.jsx(MetricItem, { ...metric }, metric.id ?? index3))
33112
+ }
33113
+ ) : null,
33114
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mt-8 grid gap-6 lg:grid-cols-[minmax(0,1fr)_320px]", children: [
33115
+ /* @__PURE__ */ jsxRuntime.jsx(Card_default, { styles: cn("bg-slate-950/70 p-0", responseClassName), children: /* @__PURE__ */ jsxRuntime.jsxs(CardContent_default, { className: "p-0", children: [
33116
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-between gap-4 border-b border-white/10 px-5 py-4", children: [
33117
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
33118
+ responseTitle ? /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "text-lg font-semibold text-white", children: responseTitle }) : null,
33119
+ currentResponseDescription ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1 text-sm text-slate-400", children: currentResponseDescription }) : null
33120
+ ] }),
33121
+ onRefresh ? /* @__PURE__ */ jsxRuntime.jsx(
33122
+ Button_web_default,
33123
+ {
33124
+ icon: /* @__PURE__ */ jsxRuntime.jsx(
33125
+ fi.FiRefreshCw,
33126
+ {
33127
+ className: isFetching ? "animate-spin" : ""
33128
+ }
33129
+ ),
33130
+ mode: "outlined",
33131
+ variant: "success",
33132
+ shape: "roundedSquare",
33133
+ size: "md",
33134
+ disabled: isFetching,
33135
+ onPress: () => {
33136
+ void onRefresh();
33137
+ },
33138
+ accessibilityLabel: refreshLabel,
33139
+ className: "h-10 w-10",
33140
+ contentClassName: "text-eui-success-200"
33141
+ }
33142
+ ) : null
33143
+ ] }),
33144
+ /* @__PURE__ */ jsxRuntime.jsx("pre", { className: "max-h-[420px] overflow-auto whitespace-pre-wrap break-words p-5 text-sm leading-6 text-slate-300", children: responseText })
33145
+ ] }) }),
33146
+ /* @__PURE__ */ jsxRuntime.jsx(Card_default, { styles: cn("p-5", connectionClassName), children: /* @__PURE__ */ jsxRuntime.jsxs(CardContent_default, { className: "p-0", children: [
33147
+ connectionTitle ? /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "text-lg font-semibold text-white", children: connectionTitle }) : null,
33148
+ visibleConnectionItems.length > 0 ? /* @__PURE__ */ jsxRuntime.jsx("dl", { className: "mt-5 space-y-4 text-sm", children: visibleConnectionItems.map((item, index3) => /* @__PURE__ */ jsxRuntime.jsx(ConnectionItem, { ...item }, item.id ?? index3)) }) : null
33149
+ ] }) })
33150
+ ] })
33151
+ ]
33152
+ }
33153
+ )
33154
+ ]
33155
+ }
33156
+ );
33157
+ }
33158
+ var SystemHealthStatus_default = SystemHealthStatus;
32734
33159
  function WorldMapCountryTable({
32735
33160
  title = "Country Breakdown",
32736
33161
  data
@@ -35728,11 +36153,11 @@ function addChildren(props, children3) {
35728
36153
  }
35729
36154
  }
35730
36155
  }
35731
- function productionCreate(_2, jsx265, jsxs130) {
36156
+ function productionCreate(_2, jsx266, jsxs131) {
35732
36157
  return create3;
35733
36158
  function create3(_3, type2, props, key) {
35734
36159
  const isStaticChildren = Array.isArray(props.children);
35735
- const fn = isStaticChildren ? jsxs130 : jsx265;
36160
+ const fn = isStaticChildren ? jsxs131 : jsx266;
35736
36161
  return key ? fn(type2, props, key) : fn(type2, props);
35737
36162
  }
35738
36163
  }
@@ -55953,7 +56378,7 @@ function createChildren2(stylesheet, useInlineStyles) {
55953
56378
  return function(children3) {
55954
56379
  childrenCount += 1;
55955
56380
  return children3.map(function(child, i) {
55956
- return createElement2({
56381
+ return createElement3({
55957
56382
  node: child,
55958
56383
  stylesheet,
55959
56384
  useInlineStyles,
@@ -55962,7 +56387,7 @@ function createChildren2(stylesheet, useInlineStyles) {
55962
56387
  });
55963
56388
  };
55964
56389
  }
55965
- function createElement2(_ref) {
56390
+ function createElement3(_ref) {
55966
56391
  var node2 = _ref.node, stylesheet = _ref.stylesheet, _ref$style = _ref.style, style2 = _ref$style === void 0 ? {} : _ref$style, useInlineStyles = _ref.useInlineStyles, key = _ref.key;
55967
56392
  var properties2 = node2.properties, type2 = node2.type, TagName = node2.tagName, value = node2.value;
55968
56393
  if (type2 === "text") {
@@ -56221,7 +56646,7 @@ function processLines(codeTree, wrapLines, lineProps, showLineNumbers, showInlin
56221
56646
  function defaultRenderer(_ref5) {
56222
56647
  var rows = _ref5.rows, stylesheet = _ref5.stylesheet, useInlineStyles = _ref5.useInlineStyles;
56223
56648
  return rows.map(function(node2, i) {
56224
- return createElement2({
56649
+ return createElement3({
56225
56650
  node: node2,
56226
56651
  stylesheet,
56227
56652
  useInlineStyles,
@@ -56651,7 +57076,7 @@ var json_default = json;
56651
57076
 
56652
57077
  // node_modules/react-syntax-highlighter/dist/esm/languages/prism/jsx.js
56653
57078
  init_jsx();
56654
- var jsx_default = jsx226;
57079
+ var jsx_default = jsx227;
56655
57080
 
56656
57081
  // node_modules/react-syntax-highlighter/dist/esm/languages/prism/markup.js
56657
57082
  init_markup();
@@ -59635,6 +60060,7 @@ exports.StarRatingInput = StarRatingInput_default;
59635
60060
  exports.StatPlot = StatPlot;
59636
60061
  exports.StaticChartDataSource = StaticChartDataSource;
59637
60062
  exports.Switch = Switch_default;
60063
+ exports.SystemHealthStatus = SystemHealthStatus_default;
59638
60064
  exports.TNContext = TNContext;
59639
60065
  exports.TNDropdown = TNDropdown;
59640
60066
  exports.TNDropdownGroup = TNDropdownGroup;
@@ -59716,6 +60142,7 @@ exports.formatChartValue = formatChartValue;
59716
60142
  exports.formatCommentDate = formatCommentDate;
59717
60143
  exports.formatConfigError = formatConfigError;
59718
60144
  exports.formatReviewDate = formatReviewDate;
60145
+ exports.formatSystemHealthTimestamp = formatSystemHealthTimestamp;
59719
60146
  exports.generateHeadingNumbers = generateHeadingNumbers;
59720
60147
  exports.getAllowedOrigins = getAllowedOrigins;
59721
60148
  exports.getBrowserHref = getBrowserHref;
@@ -59734,6 +60161,10 @@ exports.getNowISOString = getNowISOString;
59734
60161
  exports.getOptimisticDislikeState = getOptimisticDislikeState;
59735
60162
  exports.getOptimisticLikeState = getOptimisticLikeState;
59736
60163
  exports.getSafeRedirect = getSafeRedirect;
60164
+ exports.getSystemHealthErrorMessage = getSystemHealthErrorMessage;
60165
+ exports.getSystemHealthHttpStatus = getSystemHealthHttpStatus;
60166
+ exports.getSystemHealthPayload = getSystemHealthPayload;
60167
+ exports.getSystemHealthStatusText = getSystemHealthStatusText;
59737
60168
  exports.getViewport = getViewport;
59738
60169
  exports.hasReviewReply = hasReviewReply;
59739
60170
  exports.incrementReplyCount = incrementReplyCount;
@@ -59748,6 +60179,7 @@ exports.normalizeMarkdown = normalizeMarkdown;
59748
60179
  exports.normalizeReview = normalizeReview;
59749
60180
  exports.normalizeReviewAuthor = normalizeReviewAuthor;
59750
60181
  exports.normalizeReviewReply = normalizeReviewReply;
60182
+ exports.normalizeSystemHealthState = normalizeSystemHealthState;
59751
60183
  exports.parseJson = parseJson;
59752
60184
  exports.parseJsonRecord = parseJsonRecord;
59753
60185
  exports.parseUrlMap = parseUrlMap;
@@ -59766,6 +60198,8 @@ exports.replaceReviewReply = replaceReviewReply;
59766
60198
  exports.resolveAppearanceStyles = resolveAppearanceStyles;
59767
60199
  exports.resolveChartColor = resolveChartColor;
59768
60200
  exports.resolveChartColors = resolveChartColors;
60201
+ exports.resolveSystemHealthState = resolveSystemHealthState;
60202
+ exports.resolveSystemHealthView = resolveSystemHealthView;
59769
60203
  exports.resolveWithGlobal = resolveWithGlobal;
59770
60204
  exports.safeReadStorage = safeReadStorage;
59771
60205
  exports.safeRemoveStorage = safeRemoveStorage;
@@ -59773,6 +60207,7 @@ exports.safeWriteStorage = safeWriteStorage;
59773
60207
  exports.sanitizeHeading = sanitizeHeading;
59774
60208
  exports.sendToast = sendToast;
59775
60209
  exports.slugify = slugify;
60210
+ exports.stringifySystemHealthPayload = stringifySystemHealthPayload;
59776
60211
  exports.toConfiguratorError = toConfiguratorError;
59777
60212
  exports.updateComment = updateComment;
59778
60213
  exports.updateReplyCacheComment = updateReplyCacheComment;