@replicated/portal-components 0.0.11 → 0.0.13
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/components/metadata/registry.json +2 -2
- package/components/metadata/registry.md +2 -2
- package/datadog/tracer.d.ts +3 -0
- package/datadog/tracer.js +82 -0
- package/datadog/tracer.ts +101 -0
- package/dist/actions/index.d.mts +26 -4
- package/dist/actions/index.d.ts +26 -4
- package/dist/actions/index.js +171 -124
- package/dist/actions/index.js.map +1 -1
- package/dist/airgap-instances.js.map +1 -1
- package/dist/esm/actions/index.js +170 -124
- package/dist/esm/actions/index.js.map +1 -1
- package/dist/esm/airgap-instances.js.map +1 -1
- package/dist/esm/helm-install-wizard.js +15 -9
- package/dist/esm/helm-install-wizard.js.map +1 -1
- package/dist/esm/index.js +204 -158
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/install-actions.js +42 -47
- package/dist/esm/install-actions.js.map +1 -1
- package/dist/esm/install-card.js +8 -21
- package/dist/esm/install-card.js.map +1 -1
- package/dist/esm/instance-card.js.map +1 -1
- package/dist/esm/license-card.js +8 -12
- package/dist/esm/license-card.js.map +1 -1
- package/dist/esm/license-details.js +21 -11
- package/dist/esm/license-details.js.map +1 -1
- package/dist/esm/linux-install-wizard.js +26 -47
- package/dist/esm/linux-install-wizard.js.map +1 -1
- package/dist/esm/online-instance-list.js.map +1 -1
- package/dist/esm/support-card.js +22 -55
- package/dist/esm/support-card.js.map +1 -1
- package/dist/esm/team-settings-card.js +8 -13
- package/dist/esm/team-settings-card.js.map +1 -1
- package/dist/esm/top-nav.js +69 -47
- package/dist/esm/top-nav.js.map +1 -1
- package/dist/esm/update-layout.js +69 -47
- package/dist/esm/update-layout.js.map +1 -1
- package/dist/esm/updates-card.js +8 -14
- package/dist/esm/updates-card.js.map +1 -1
- package/dist/esm/utils/index.js +14 -10
- package/dist/esm/utils/index.js.map +1 -1
- package/dist/esm/utils/observability/index.js +193 -0
- package/dist/esm/utils/observability/index.js.map +1 -0
- package/dist/helm-install-wizard.js +15 -9
- package/dist/helm-install-wizard.js.map +1 -1
- package/dist/index.d.mts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +203 -156
- package/dist/index.js.map +1 -1
- package/dist/install-actions.js +43 -48
- package/dist/install-actions.js.map +1 -1
- package/dist/install-card.js +8 -21
- package/dist/install-card.js.map +1 -1
- package/dist/instance-card.js.map +1 -1
- package/dist/license-card.js +8 -12
- package/dist/license-card.js.map +1 -1
- package/dist/license-details.js +21 -11
- package/dist/license-details.js.map +1 -1
- package/dist/linux-install-wizard.js +26 -47
- package/dist/linux-install-wizard.js.map +1 -1
- package/dist/online-instance-list.js.map +1 -1
- package/dist/styles.css +2 -2
- package/dist/support-card.js +22 -55
- package/dist/support-card.js.map +1 -1
- package/dist/team-settings-card.js +8 -13
- package/dist/team-settings-card.js.map +1 -1
- package/dist/top-nav.js +69 -47
- package/dist/top-nav.js.map +1 -1
- package/dist/update-layout.js +69 -47
- package/dist/update-layout.js.map +1 -1
- package/dist/updates-card.js +8 -14
- package/dist/updates-card.js.map +1 -1
- package/dist/utils/index.js +14 -10
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/observability/index.d.mts +13 -0
- package/dist/utils/observability/index.d.ts +13 -0
- package/dist/utils/observability/index.js +198 -0
- package/dist/utils/observability/index.js.map +1 -0
- package/instrumentation.d.ts +8 -0
- package/instrumentation.js +22 -0
- package/package.json +16 -3
package/dist/update-layout.js
CHANGED
|
@@ -24,12 +24,12 @@ var fetchCustomBrandingImpl = async () => {
|
|
|
24
24
|
if (!appSlug) {
|
|
25
25
|
throw new Error("PORTAL_APP_SLUG is not configured");
|
|
26
26
|
}
|
|
27
|
-
const url = `${getApiOrigin()}/
|
|
27
|
+
const url = `${getApiOrigin()}/enterprise-portal/public/branding?app_slug=${encodeURIComponent(
|
|
28
28
|
appSlug
|
|
29
29
|
)}`;
|
|
30
30
|
if (process.env.NODE_ENV !== "production") {
|
|
31
31
|
console.debug(
|
|
32
|
-
"[portal-components] fetching custom branding via %s",
|
|
32
|
+
"[portal-components] fetching custom branding via %s (Enterprise Portal API)",
|
|
33
33
|
url
|
|
34
34
|
);
|
|
35
35
|
}
|
|
@@ -44,17 +44,21 @@ var fetchCustomBrandingImpl = async () => {
|
|
|
44
44
|
);
|
|
45
45
|
}
|
|
46
46
|
const payload = await response.json();
|
|
47
|
-
const
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
47
|
+
const brandingObject = {
|
|
48
|
+
logo: payload.logoUrl,
|
|
49
|
+
title: payload.appName,
|
|
50
|
+
customColor1: payload.primaryColor,
|
|
51
|
+
customColor2: payload.secondaryColor,
|
|
52
|
+
favicon: payload.faviconUrl
|
|
53
|
+
};
|
|
54
|
+
const brandingData = buffer.Buffer.from(JSON.stringify(brandingObject)).toString("base64");
|
|
51
55
|
return {
|
|
52
56
|
brandingData,
|
|
53
|
-
documentation:
|
|
57
|
+
documentation: null
|
|
58
|
+
// Documentation not included in new API's public endpoint
|
|
54
59
|
};
|
|
55
60
|
};
|
|
56
61
|
var fetchCustomBranding = react.cache(fetchCustomBrandingImpl);
|
|
57
|
-
var defaultHiddenLabels = ["Download"];
|
|
58
62
|
var defaultTopNavLinks = [
|
|
59
63
|
{
|
|
60
64
|
label: "Dashboard",
|
|
@@ -67,16 +71,21 @@ var defaultTopNavLinks = [
|
|
|
67
71
|
className: "h-4 w-4",
|
|
68
72
|
fill: "none",
|
|
69
73
|
stroke: "currentColor",
|
|
70
|
-
strokeWidth: "
|
|
74
|
+
strokeWidth: "2",
|
|
75
|
+
strokeLinecap: "round",
|
|
76
|
+
strokeLinejoin: "round",
|
|
71
77
|
children: [
|
|
72
|
-
/* @__PURE__ */ jsxRuntime.jsx("
|
|
73
|
-
/* @__PURE__ */ jsxRuntime.jsx("
|
|
78
|
+
/* @__PURE__ */ jsxRuntime.jsx("rect", { width: "7", height: "9", x: "3", y: "3", rx: "1" }),
|
|
79
|
+
/* @__PURE__ */ jsxRuntime.jsx("rect", { width: "7", height: "5", x: "14", y: "3", rx: "1" }),
|
|
80
|
+
/* @__PURE__ */ jsxRuntime.jsx("rect", { width: "7", height: "9", x: "14", y: "12", rx: "1" }),
|
|
81
|
+
/* @__PURE__ */ jsxRuntime.jsx("rect", { width: "7", height: "5", x: "3", y: "16", rx: "1" })
|
|
74
82
|
]
|
|
75
83
|
}
|
|
76
84
|
)
|
|
77
85
|
},
|
|
78
86
|
{
|
|
79
|
-
label: "
|
|
87
|
+
label: "Install",
|
|
88
|
+
href: "/install",
|
|
80
89
|
icon: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
81
90
|
"svg",
|
|
82
91
|
{
|
|
@@ -85,18 +94,20 @@ var defaultTopNavLinks = [
|
|
|
85
94
|
className: "h-4 w-4",
|
|
86
95
|
fill: "none",
|
|
87
96
|
stroke: "currentColor",
|
|
88
|
-
strokeWidth: "
|
|
97
|
+
strokeWidth: "2",
|
|
98
|
+
strokeLinecap: "round",
|
|
99
|
+
strokeLinejoin: "round",
|
|
89
100
|
children: [
|
|
90
|
-
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "
|
|
91
|
-
/* @__PURE__ */ jsxRuntime.jsx("
|
|
92
|
-
/* @__PURE__ */ jsxRuntime.jsx("
|
|
101
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" }),
|
|
102
|
+
/* @__PURE__ */ jsxRuntime.jsx("polyline", { points: "7 10 12 15 17 10" }),
|
|
103
|
+
/* @__PURE__ */ jsxRuntime.jsx("line", { x1: "12", x2: "12", y1: "15", y2: "3" })
|
|
93
104
|
]
|
|
94
105
|
}
|
|
95
106
|
)
|
|
96
107
|
},
|
|
97
108
|
{
|
|
98
|
-
label: "
|
|
99
|
-
href: "/
|
|
109
|
+
label: "Update",
|
|
110
|
+
href: "/update",
|
|
100
111
|
icon: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
101
112
|
"svg",
|
|
102
113
|
{
|
|
@@ -105,18 +116,20 @@ var defaultTopNavLinks = [
|
|
|
105
116
|
className: "h-4 w-4",
|
|
106
117
|
fill: "none",
|
|
107
118
|
stroke: "currentColor",
|
|
108
|
-
strokeWidth: "
|
|
119
|
+
strokeWidth: "2",
|
|
120
|
+
strokeLinecap: "round",
|
|
121
|
+
strokeLinejoin: "round",
|
|
109
122
|
children: [
|
|
110
|
-
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "
|
|
111
|
-
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "
|
|
123
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8" }),
|
|
124
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "M21 3v5h-5" })
|
|
112
125
|
]
|
|
113
126
|
}
|
|
114
127
|
)
|
|
115
128
|
},
|
|
116
129
|
{
|
|
117
|
-
label: "
|
|
118
|
-
href: "/
|
|
119
|
-
icon: /* @__PURE__ */ jsxRuntime.
|
|
130
|
+
label: "Security",
|
|
131
|
+
href: "/security",
|
|
132
|
+
icon: /* @__PURE__ */ jsxRuntime.jsx(
|
|
120
133
|
"svg",
|
|
121
134
|
{
|
|
122
135
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -124,12 +137,10 @@ var defaultTopNavLinks = [
|
|
|
124
137
|
className: "h-4 w-4",
|
|
125
138
|
fill: "none",
|
|
126
139
|
stroke: "currentColor",
|
|
127
|
-
strokeWidth: "
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "M4 10c1.5-4 6-6 10-4m6 4c-1.5 4-6 6-10 4" })
|
|
132
|
-
]
|
|
140
|
+
strokeWidth: "2",
|
|
141
|
+
strokeLinecap: "round",
|
|
142
|
+
strokeLinejoin: "round",
|
|
143
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z" })
|
|
133
144
|
}
|
|
134
145
|
)
|
|
135
146
|
},
|
|
@@ -144,10 +155,15 @@ var defaultTopNavLinks = [
|
|
|
144
155
|
className: "h-4 w-4",
|
|
145
156
|
fill: "none",
|
|
146
157
|
stroke: "currentColor",
|
|
147
|
-
strokeWidth: "
|
|
158
|
+
strokeWidth: "2",
|
|
159
|
+
strokeLinecap: "round",
|
|
160
|
+
strokeLinejoin: "round",
|
|
148
161
|
children: [
|
|
149
|
-
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "
|
|
150
|
-
/* @__PURE__ */ jsxRuntime.jsx("
|
|
162
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z" }),
|
|
163
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "M14 2v4a2 2 0 0 0 2 2h4" }),
|
|
164
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "M10 9H8" }),
|
|
165
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "M16 13H8" }),
|
|
166
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "M16 17H8" })
|
|
151
167
|
]
|
|
152
168
|
}
|
|
153
169
|
)
|
|
@@ -163,12 +179,13 @@ var defaultTopNavLinks = [
|
|
|
163
179
|
className: "h-4 w-4",
|
|
164
180
|
fill: "none",
|
|
165
181
|
stroke: "currentColor",
|
|
166
|
-
strokeWidth: "
|
|
182
|
+
strokeWidth: "2",
|
|
183
|
+
strokeLinecap: "round",
|
|
184
|
+
strokeLinejoin: "round",
|
|
167
185
|
children: [
|
|
168
|
-
/* @__PURE__ */ jsxRuntime.jsx("
|
|
169
|
-
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "
|
|
170
|
-
/* @__PURE__ */ jsxRuntime.jsx("
|
|
171
|
-
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "M9 15h6" })
|
|
186
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "m15.5 7.5 2.3 2.3a1 1 0 0 0 1.4 0l2.1-2.1a1 1 0 0 0 0-1.4L19 4" }),
|
|
187
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "m21 2-9.6 9.6" }),
|
|
188
|
+
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "7.5", cy: "15.5", r: "5.5" })
|
|
172
189
|
]
|
|
173
190
|
}
|
|
174
191
|
)
|
|
@@ -184,10 +201,16 @@ var defaultTopNavLinks = [
|
|
|
184
201
|
className: "h-4 w-4",
|
|
185
202
|
fill: "none",
|
|
186
203
|
stroke: "currentColor",
|
|
187
|
-
strokeWidth: "
|
|
204
|
+
strokeWidth: "2",
|
|
205
|
+
strokeLinecap: "round",
|
|
206
|
+
strokeLinejoin: "round",
|
|
188
207
|
children: [
|
|
189
|
-
/* @__PURE__ */ jsxRuntime.jsx("
|
|
190
|
-
/* @__PURE__ */ jsxRuntime.jsx("
|
|
208
|
+
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: "10" }),
|
|
209
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "m4.93 4.93 4.24 4.24" }),
|
|
210
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "m14.83 9.17 4.24-4.24" }),
|
|
211
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "m14.83 14.83 4.24 4.24" }),
|
|
212
|
+
/* @__PURE__ */ jsxRuntime.jsx("path", { d: "m9.17 14.83-4.24 4.24" }),
|
|
213
|
+
/* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: "4" })
|
|
191
214
|
]
|
|
192
215
|
}
|
|
193
216
|
)
|
|
@@ -273,8 +296,7 @@ var TopNav = async ({
|
|
|
273
296
|
console.debug("[portal-components] branding fetch failed", error);
|
|
274
297
|
}
|
|
275
298
|
const baseLinks = links ?? defaultTopNavLinks;
|
|
276
|
-
const
|
|
277
|
-
const hiddenSet = computedHiddenLabels ? new Set(computedHiddenLabels) : null;
|
|
299
|
+
const hiddenSet = hiddenLabels ? new Set(hiddenLabels) : null;
|
|
278
300
|
let resolvedLinks = baseLinks.filter(
|
|
279
301
|
(link) => !hiddenSet?.has(link.label)
|
|
280
302
|
);
|
|
@@ -287,7 +309,7 @@ var TopNav = async ({
|
|
|
287
309
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
288
310
|
"div",
|
|
289
311
|
{
|
|
290
|
-
className: "relative flex h-[
|
|
312
|
+
className: "relative flex h-[280px] w-full items-start justify-center",
|
|
291
313
|
style: {
|
|
292
314
|
backgroundImage: `linear-gradient(to top, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0) 33%), linear-gradient(${gradientStart}, ${gradientEnd})`,
|
|
293
315
|
backgroundRepeat: "no-repeat",
|
|
@@ -314,7 +336,7 @@ var TopNav = async ({
|
|
|
314
336
|
brandTitle ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-lg font-semibold text-gray-900", children: brandTitle }) : null
|
|
315
337
|
] }) : /* @__PURE__ */ jsxRuntime.jsx("div", {}),
|
|
316
338
|
/* @__PURE__ */ jsxRuntime.jsxs("details", { className: "group relative", children: [
|
|
317
|
-
/* @__PURE__ */ jsxRuntime.jsxs("summary", { className: "flex cursor-pointer items-center gap-2
|
|
339
|
+
/* @__PURE__ */ jsxRuntime.jsxs("summary", { className: "flex cursor-pointer items-center gap-2 text-sm font-medium text-gray-600 hover:text-gray-900 list-none", children: [
|
|
318
340
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
319
341
|
"svg",
|
|
320
342
|
{
|
|
@@ -386,12 +408,12 @@ var TopNav = async ({
|
|
|
386
408
|
const className = `flex items-center gap-2 px-4 py-1 transition text-gray-500 ${isActive ? "underline underline-offset-8 decoration-2" : ""}`;
|
|
387
409
|
if (href) {
|
|
388
410
|
return /* @__PURE__ */ jsxRuntime.jsxs(Link__default.default, { href, className, children: [
|
|
389
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className: isActive ? "text-
|
|
411
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: isActive ? "text-gray-900" : "text-gray-500", children: icon }),
|
|
390
412
|
/* @__PURE__ */ jsxRuntime.jsx("span", { children: label })
|
|
391
413
|
] }, label);
|
|
392
414
|
}
|
|
393
415
|
return /* @__PURE__ */ jsxRuntime.jsxs("button", { className, type: "button", children: [
|
|
394
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className: isActive ? "text-
|
|
416
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: isActive ? "text-gray-900" : "text-gray-500", children: icon }),
|
|
395
417
|
/* @__PURE__ */ jsxRuntime.jsx("span", { children: label })
|
|
396
418
|
] }, label);
|
|
397
419
|
}) })
|