@replicated/portal-components 0.0.19 → 0.0.21
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/dist/actions/change-team.js +66 -7
- package/dist/actions/change-team.js.map +1 -1
- package/dist/actions/index.d.mts +3 -1
- package/dist/actions/index.d.ts +3 -1
- package/dist/actions/index.js +182 -465
- package/dist/actions/index.js.map +1 -1
- package/dist/actions/install-actions.d.mts +3 -1
- package/dist/actions/install-actions.d.ts +3 -1
- package/dist/actions/install-actions.js +58 -5
- package/dist/actions/install-actions.js.map +1 -1
- package/dist/actions/service-account.d.mts +3 -1
- package/dist/actions/service-account.d.ts +3 -1
- package/dist/actions/service-account.js +58 -5
- package/dist/actions/service-account.js.map +1 -1
- package/dist/actions/support-bundles.d.mts +3 -1
- package/dist/actions/support-bundles.d.ts +3 -1
- package/dist/actions/support-bundles.js +58 -5
- package/dist/actions/support-bundles.js.map +1 -1
- package/dist/actions/team-settings.d.mts +3 -1
- package/dist/actions/team-settings.d.ts +3 -1
- package/dist/actions/team-settings.js +91 -27
- package/dist/actions/team-settings.js.map +1 -1
- package/dist/actions/trial-signup.d.mts +24 -0
- package/dist/actions/trial-signup.d.ts +24 -0
- package/dist/actions/trial-signup.js +482 -0
- package/dist/actions/trial-signup.js.map +1 -0
- package/dist/actions/user-settings.d.mts +3 -1
- package/dist/actions/user-settings.d.ts +3 -1
- package/dist/actions/user-settings.js +58 -5
- package/dist/actions/user-settings.js.map +1 -1
- package/dist/airgap-instances.d.mts +3 -1
- package/dist/airgap-instances.d.ts +3 -1
- package/dist/airgap-instances.js +41 -112
- package/dist/airgap-instances.js.map +1 -1
- package/dist/branding-BsMSywts.d.mts +36 -0
- package/dist/branding-BsMSywts.d.ts +36 -0
- package/dist/error-page.js +10 -2
- package/dist/error-page.js.map +1 -1
- package/dist/error.js +10 -2
- package/dist/error.js.map +1 -1
- package/dist/esm/actions/change-team.js +66 -7
- package/dist/esm/actions/change-team.js.map +1 -1
- package/dist/esm/actions/index.js +181 -462
- package/dist/esm/actions/index.js.map +1 -1
- package/dist/esm/actions/install-actions.js +58 -5
- package/dist/esm/actions/install-actions.js.map +1 -1
- package/dist/esm/actions/service-account.js +58 -5
- package/dist/esm/actions/service-account.js.map +1 -1
- package/dist/esm/actions/support-bundles.js +58 -5
- package/dist/esm/actions/support-bundles.js.map +1 -1
- package/dist/esm/actions/team-settings.js +91 -27
- package/dist/esm/actions/team-settings.js.map +1 -1
- package/dist/esm/actions/trial-signup.js +478 -0
- package/dist/esm/actions/trial-signup.js.map +1 -0
- package/dist/esm/actions/user-settings.js +58 -5
- package/dist/esm/actions/user-settings.js.map +1 -1
- package/dist/esm/airgap-instances.js +40 -112
- package/dist/esm/airgap-instances.js.map +1 -1
- package/dist/esm/error-page.js +10 -2
- package/dist/esm/error-page.js.map +1 -1
- package/dist/esm/error.js +10 -2
- package/dist/esm/error.js.map +1 -1
- package/dist/esm/helm-install-wizard.js +118 -79
- package/dist/esm/helm-install-wizard.js.map +1 -1
- package/dist/esm/index.js +706 -438
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/install-actions.js +40 -5
- package/dist/esm/install-actions.js.map +1 -1
- package/dist/esm/install-card.js +9 -6
- package/dist/esm/install-card.js.map +1 -1
- package/dist/esm/install-targets.js +9 -2
- package/dist/esm/install-targets.js.map +1 -1
- package/dist/esm/instance-card.js +39 -111
- package/dist/esm/instance-card.js.map +1 -1
- package/dist/esm/join-team.js +9 -3
- package/dist/esm/join-team.js.map +1 -1
- package/dist/esm/license-card.js +24 -22
- package/dist/esm/license-card.js.map +1 -1
- package/dist/esm/license-details.js +128 -334
- package/dist/esm/license-details.js.map +1 -1
- package/dist/esm/linux-install-wizard.js +95 -41
- package/dist/esm/linux-install-wizard.js.map +1 -1
- package/dist/esm/login.js +20 -4
- package/dist/esm/login.js.map +1 -1
- package/dist/esm/middleware.js +33 -0
- package/dist/esm/middleware.js.map +1 -0
- package/dist/esm/online-instance-list.js +40 -112
- package/dist/esm/online-instance-list.js.map +1 -1
- package/dist/esm/release-history-panel.js +27 -14
- package/dist/esm/release-history-panel.js.map +1 -1
- package/dist/esm/saml-callback-client.js +82 -0
- package/dist/esm/saml-callback-client.js.map +1 -0
- package/dist/esm/saml-handlers.js +138 -0
- package/dist/esm/saml-handlers.js.map +1 -0
- package/dist/esm/security-card.js +53 -38
- package/dist/esm/security-card.js.map +1 -1
- package/dist/esm/service-accounts-tab.js +800 -0
- package/dist/esm/service-accounts-tab.js.map +1 -0
- package/dist/esm/support-bundle-collection-card.js +48 -24
- package/dist/esm/support-bundle-collection-card.js.map +1 -1
- package/dist/esm/support-bundles-card.js +10 -5
- package/dist/esm/support-bundles-card.js.map +1 -1
- package/dist/esm/support-card.js +37 -5
- package/dist/esm/support-card.js.map +1 -1
- package/dist/esm/team-selection.js +5 -1
- package/dist/esm/team-selection.js.map +1 -1
- package/dist/esm/team-settings-card.js +5 -2
- package/dist/esm/team-settings-card.js.map +1 -1
- package/dist/esm/team-settings.js +7 -2
- package/dist/esm/team-settings.js.map +1 -1
- package/dist/esm/top-nav-user-menu.js +5 -1
- package/dist/esm/top-nav-user-menu.js.map +1 -1
- package/dist/esm/top-nav.js +175 -62
- package/dist/esm/top-nav.js.map +1 -1
- package/dist/esm/trial-signup.js +256 -0
- package/dist/esm/trial-signup.js.map +1 -0
- package/dist/esm/update-layout.js +175 -62
- package/dist/esm/update-layout.js.map +1 -1
- package/dist/esm/updates-card.js +15 -4
- package/dist/esm/updates-card.js.map +1 -1
- package/dist/esm/upload-support-bundle-modal.js +9 -4
- package/dist/esm/upload-support-bundle-modal.js.map +1 -1
- package/dist/esm/user-settings-card.js +5 -2
- package/dist/esm/user-settings-card.js.map +1 -1
- package/dist/esm/user-settings.js +12 -6
- package/dist/esm/user-settings.js.map +1 -1
- package/dist/esm/utils/index.js +204 -13
- package/dist/esm/utils/index.js.map +1 -1
- package/dist/fetch-license-iTyF7_GY.d.mts +81 -0
- package/dist/fetch-license-iTyF7_GY.d.ts +81 -0
- package/dist/helm-install-wizard.d.mts +11 -3
- package/dist/helm-install-wizard.d.ts +11 -3
- package/dist/helm-install-wizard.js +118 -79
- package/dist/helm-install-wizard.js.map +1 -1
- package/dist/{index-BAiVrSSR.d.mts → index-DyzJ0yKD.d.mts} +48 -50
- package/dist/{index-DWt-N5od.d.ts → index-sMbq94M7.d.ts} +48 -50
- package/dist/index.d.mts +8 -2
- package/dist/index.d.ts +8 -2
- package/dist/index.js +726 -438
- package/dist/index.js.map +1 -1
- package/dist/install-actions.d.mts +4 -2
- package/dist/install-actions.d.ts +4 -2
- package/dist/install-actions.js +40 -5
- package/dist/install-actions.js.map +1 -1
- package/dist/install-card.d.mts +2 -3
- package/dist/install-card.d.ts +2 -3
- package/dist/install-card.js +9 -6
- package/dist/install-card.js.map +1 -1
- package/dist/install-targets.js +9 -2
- package/dist/install-targets.js.map +1 -1
- package/dist/instance-card.d.mts +3 -1
- package/dist/instance-card.d.ts +3 -1
- package/dist/instance-card.js +40 -111
- package/dist/instance-card.js.map +1 -1
- package/dist/join-team.js +9 -3
- package/dist/join-team.js.map +1 -1
- package/dist/license-card.d.mts +2 -3
- package/dist/license-card.d.ts +2 -3
- package/dist/license-card.js +24 -22
- package/dist/license-card.js.map +1 -1
- package/dist/license-details.js +128 -334
- package/dist/license-details.js.map +1 -1
- package/dist/linux-install-wizard.d.mts +9 -3
- package/dist/linux-install-wizard.d.ts +9 -3
- package/dist/linux-install-wizard.js +95 -41
- package/dist/linux-install-wizard.js.map +1 -1
- package/dist/login.d.mts +4 -0
- package/dist/login.d.ts +4 -0
- package/dist/login.js +20 -4
- package/dist/login.js.map +1 -1
- package/dist/middleware.d.mts +13 -0
- package/dist/middleware.d.ts +13 -0
- package/dist/middleware.js +35 -0
- package/dist/middleware.js.map +1 -0
- package/dist/online-instance-list.d.mts +3 -1
- package/dist/online-instance-list.d.ts +3 -1
- package/dist/online-instance-list.js +41 -112
- package/dist/online-instance-list.js.map +1 -1
- package/dist/pending-installations.d.mts +3 -1
- package/dist/pending-installations.d.ts +3 -1
- package/dist/release-history-panel.js +27 -14
- package/dist/release-history-panel.js.map +1 -1
- package/dist/saml-callback-client.d.mts +36 -0
- package/dist/saml-callback-client.d.ts +36 -0
- package/dist/saml-callback-client.js +88 -0
- package/dist/saml-callback-client.js.map +1 -0
- package/dist/saml-handlers.d.mts +50 -0
- package/dist/saml-handlers.d.ts +50 -0
- package/dist/saml-handlers.js +141 -0
- package/dist/saml-handlers.js.map +1 -0
- package/dist/security-card.d.mts +3 -1
- package/dist/security-card.d.ts +3 -1
- package/dist/security-card.js +53 -38
- package/dist/security-card.js.map +1 -1
- package/dist/service-accounts-tab.d.mts +51 -0
- package/dist/service-accounts-tab.d.ts +51 -0
- package/dist/service-accounts-tab.js +802 -0
- package/dist/service-accounts-tab.js.map +1 -0
- package/dist/styles.css +375 -127
- package/dist/support-bundle-collection-card.d.mts +1 -1
- package/dist/support-bundle-collection-card.d.ts +1 -1
- package/dist/support-bundle-collection-card.js +47 -23
- package/dist/support-bundle-collection-card.js.map +1 -1
- package/dist/support-bundles-card.d.mts +4 -2
- package/dist/support-bundles-card.d.ts +4 -2
- package/dist/support-bundles-card.js +10 -5
- package/dist/support-bundles-card.js.map +1 -1
- package/dist/support-card.js +37 -5
- package/dist/support-card.js.map +1 -1
- package/dist/team-selection.js +5 -1
- package/dist/team-selection.js.map +1 -1
- package/dist/team-settings-card.js +5 -2
- package/dist/team-settings-card.js.map +1 -1
- package/dist/team-settings.js +7 -2
- package/dist/team-settings.js.map +1 -1
- package/dist/{top-nav-IRIn66wS.d.ts → top-nav-BUQAGoG1.d.mts} +14 -2
- package/dist/{top-nav-IRIn66wS.d.mts → top-nav-CEqw0KpO.d.ts} +14 -2
- package/dist/top-nav-user-menu.js +5 -1
- package/dist/top-nav-user-menu.js.map +1 -1
- package/dist/top-nav.d.mts +2 -1
- package/dist/top-nav.d.ts +2 -1
- package/dist/top-nav.js +175 -62
- package/dist/top-nav.js.map +1 -1
- package/dist/trial-signup.d.mts +31 -0
- package/dist/trial-signup.d.ts +31 -0
- package/dist/trial-signup.js +258 -0
- package/dist/trial-signup.js.map +1 -0
- package/dist/update-layout.js +175 -62
- package/dist/update-layout.js.map +1 -1
- package/dist/updates-card.js +15 -4
- package/dist/updates-card.js.map +1 -1
- package/dist/upload-support-bundle-modal.js +9 -4
- package/dist/upload-support-bundle-modal.js.map +1 -1
- package/dist/user-settings-card.js +5 -2
- package/dist/user-settings-card.js.map +1 -1
- package/dist/user-settings.js +12 -6
- package/dist/user-settings.js.map +1 -1
- package/dist/utils/index.d.mts +74 -16
- package/dist/utils/index.d.ts +74 -16
- package/dist/utils/index.js +215 -12
- package/dist/utils/index.js.map +1 -1
- package/package.json +37 -2
|
@@ -121,6 +121,9 @@ var init_tracer = __esm({
|
|
|
121
121
|
});
|
|
122
122
|
|
|
123
123
|
// src/utils/api-client.ts
|
|
124
|
+
function isRedirectError(error) {
|
|
125
|
+
return typeof error === "object" && error !== null && "digest" in error && typeof error.digest === "string" && error.digest.startsWith("NEXT_REDIRECT");
|
|
126
|
+
}
|
|
124
127
|
async function authenticatedFetch(url, options = {}) {
|
|
125
128
|
const { token, ...fetchOptions } = options;
|
|
126
129
|
const headers = new Headers(fetchOptions.headers);
|
|
@@ -143,8 +146,17 @@ async function handle401() {
|
|
|
143
146
|
const { redirect } = await import('next/navigation');
|
|
144
147
|
return redirect("/?expired=1");
|
|
145
148
|
}
|
|
149
|
+
function isErrorPage(url) {
|
|
150
|
+
try {
|
|
151
|
+
const urlObj = new URL(url);
|
|
152
|
+
return urlObj.pathname === "/error";
|
|
153
|
+
} catch {
|
|
154
|
+
return url === "/error" || url.startsWith("/error?");
|
|
155
|
+
}
|
|
156
|
+
}
|
|
146
157
|
async function handleServerError(statusCode) {
|
|
147
158
|
const { redirect } = await import('next/navigation');
|
|
159
|
+
const { cookies: cookies2 } = await import('next/headers');
|
|
148
160
|
let sourceUrl;
|
|
149
161
|
try {
|
|
150
162
|
const { headers } = await import('next/headers');
|
|
@@ -152,12 +164,20 @@ async function handleServerError(statusCode) {
|
|
|
152
164
|
const referer = headersList.get("referer");
|
|
153
165
|
const host = headersList.get("host");
|
|
154
166
|
const pathname = headersList.get("x-invoke-path") || headersList.get("x-forwarded-path");
|
|
155
|
-
if (referer) {
|
|
167
|
+
if (referer && !isErrorPage(referer)) {
|
|
156
168
|
sourceUrl = referer;
|
|
157
169
|
} else if (host && pathname) {
|
|
158
170
|
const protocol = headersList.get("x-forwarded-proto") || "https";
|
|
159
171
|
sourceUrl = `${protocol}://${host}${pathname}`;
|
|
160
172
|
}
|
|
173
|
+
if (!sourceUrl || isErrorPage(sourceUrl)) {
|
|
174
|
+
const cookieStore = await cookies2();
|
|
175
|
+
const preservedSource = cookieStore.get("portal_error_source");
|
|
176
|
+
if (preservedSource?.value) {
|
|
177
|
+
sourceUrl = decodeURIComponent(preservedSource.value);
|
|
178
|
+
cookieStore.delete("portal_error_source");
|
|
179
|
+
}
|
|
180
|
+
}
|
|
161
181
|
} catch (error) {
|
|
162
182
|
console.debug("[portal-components] Could not determine source URL", error);
|
|
163
183
|
}
|
|
@@ -259,11 +279,15 @@ var fetchCustomBrandingImpl = async () => {
|
|
|
259
279
|
const payload = await response.json();
|
|
260
280
|
const brandingObject = {
|
|
261
281
|
logo: payload.logoUrl,
|
|
262
|
-
title: payload.
|
|
263
|
-
|
|
264
|
-
|
|
282
|
+
title: payload.title,
|
|
283
|
+
primaryColor: payload.primaryColor,
|
|
284
|
+
secondaryColor: payload.secondaryColor,
|
|
265
285
|
favicon: payload.faviconUrl,
|
|
266
|
-
supportPortalLink: payload.supportPortalLink || ""
|
|
286
|
+
supportPortalLink: payload.supportPortalLink || "",
|
|
287
|
+
background: payload.background,
|
|
288
|
+
backgroundImage: payload.backgroundImage,
|
|
289
|
+
customColor1: payload.customColor1,
|
|
290
|
+
customColor2: payload.customColor2
|
|
267
291
|
};
|
|
268
292
|
const brandingData = buffer.Buffer.from(JSON.stringify(brandingObject)).toString("base64");
|
|
269
293
|
return {
|
|
@@ -297,6 +321,38 @@ var getCustomerIdFromToken = (token) => {
|
|
|
297
321
|
}
|
|
298
322
|
return customerId.trim();
|
|
299
323
|
};
|
|
324
|
+
async function listReleasesImpl() {
|
|
325
|
+
const { cookies: cookies2 } = await import('next/headers');
|
|
326
|
+
const sessionStore = await cookies2();
|
|
327
|
+
const session = sessionStore.get("portal_session");
|
|
328
|
+
const token = session?.value;
|
|
329
|
+
if (!token) {
|
|
330
|
+
throw new Error("List releases requires a session token");
|
|
331
|
+
}
|
|
332
|
+
const endpoint = `${getApiOrigin()}/enterprise-portal/releases`;
|
|
333
|
+
if (process.env.NODE_ENV !== "production") {
|
|
334
|
+
console.debug("[portal-components] fetching releases via %s (Enterprise Portal API)", endpoint);
|
|
335
|
+
}
|
|
336
|
+
const response = await authenticatedFetch(endpoint, {
|
|
337
|
+
method: "GET",
|
|
338
|
+
token,
|
|
339
|
+
headers: {
|
|
340
|
+
accept: "application/json"
|
|
341
|
+
}
|
|
342
|
+
});
|
|
343
|
+
if (!response.ok) {
|
|
344
|
+
throw new Error(
|
|
345
|
+
`List releases request failed (${response.status} ${response.statusText})`
|
|
346
|
+
);
|
|
347
|
+
}
|
|
348
|
+
const envelope = await response.json();
|
|
349
|
+
const data = envelope.data;
|
|
350
|
+
return {
|
|
351
|
+
releases: Array.isArray(data?.releases) ? data.releases : [],
|
|
352
|
+
totalCount: data?.totalCount || 0
|
|
353
|
+
};
|
|
354
|
+
}
|
|
355
|
+
traceServerAction("listReleases", listReleasesImpl);
|
|
300
356
|
var switchCustomer = defineServerAction({
|
|
301
357
|
id: "auth/switch-customer",
|
|
302
358
|
description: "Switches the JWT to a different customer/team.",
|
|
@@ -365,10 +421,10 @@ async function fetchCustomersForMenuImpl() {
|
|
|
365
421
|
const token = session.value;
|
|
366
422
|
const currentCustomerId = getCustomerIdFromToken(token);
|
|
367
423
|
const endpoint = `${getApiOrigin()}/enterprise-portal/user`;
|
|
368
|
-
const response = await
|
|
424
|
+
const response = await authenticatedFetch(endpoint, {
|
|
369
425
|
method: "GET",
|
|
426
|
+
token,
|
|
370
427
|
headers: {
|
|
371
|
-
Authorization: `Bearer ${token}`,
|
|
372
428
|
Accept: "application/json"
|
|
373
429
|
}
|
|
374
430
|
});
|
|
@@ -387,6 +443,9 @@ async function fetchCustomersForMenuImpl() {
|
|
|
387
443
|
currentCustomerId
|
|
388
444
|
};
|
|
389
445
|
} catch (error) {
|
|
446
|
+
if (isRedirectError(error)) {
|
|
447
|
+
throw error;
|
|
448
|
+
}
|
|
390
449
|
console.error("[fetch-customers-for-menu] Failed to fetch customers:", error);
|
|
391
450
|
return { customers: [] };
|
|
392
451
|
}
|