@replicated/portal-components 0.0.2 → 0.0.3
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 +83 -2
- package/components/metadata/registry.md +27 -2
- package/dist/actions/index.d.mts +566 -3
- package/dist/actions/index.d.ts +566 -3
- package/dist/actions/index.js +1853 -12
- package/dist/actions/index.js.map +1 -1
- package/dist/airgap-instances.d.mts +26 -0
- package/dist/airgap-instances.d.ts +26 -0
- package/dist/airgap-instances.js +354 -0
- package/dist/airgap-instances.js.map +1 -0
- package/dist/error-page.d.mts +14 -0
- package/dist/error-page.d.ts +14 -0
- package/dist/error-page.js +153 -0
- package/dist/error-page.js.map +1 -0
- package/dist/error.d.mts +15 -0
- package/dist/error.d.ts +15 -0
- package/dist/error.js +144 -0
- package/dist/error.js.map +1 -0
- package/dist/esm/actions/index.js +1816 -13
- package/dist/esm/actions/index.js.map +1 -1
- package/dist/esm/airgap-instances.js +352 -0
- package/dist/esm/airgap-instances.js.map +1 -0
- package/dist/esm/error-page.js +151 -0
- package/dist/esm/error-page.js.map +1 -0
- package/dist/esm/error.js +142 -0
- package/dist/esm/error.js.map +1 -0
- package/dist/esm/helm-install-wizard.js +1007 -0
- package/dist/esm/helm-install-wizard.js.map +1 -0
- package/dist/esm/index.js +2232 -155
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/install-actions.js +746 -0
- package/dist/esm/install-actions.js.map +1 -0
- package/dist/esm/install-card.js +115 -0
- package/dist/esm/install-card.js.map +1 -0
- package/dist/esm/install-targets.js +48 -0
- package/dist/esm/install-targets.js.map +1 -0
- package/dist/esm/instance-card.js +197 -0
- package/dist/esm/instance-card.js.map +1 -0
- package/dist/esm/join-team.js +218 -0
- package/dist/esm/join-team.js.map +1 -0
- package/dist/esm/license-card.js +131 -0
- package/dist/esm/license-card.js.map +1 -0
- package/dist/esm/license-details.js +667 -0
- package/dist/esm/license-details.js.map +1 -0
- package/dist/esm/linux-install-wizard.js +1083 -0
- package/dist/esm/linux-install-wizard.js.map +1 -0
- package/dist/esm/login.js +261 -0
- package/dist/esm/login.js.map +1 -0
- package/dist/esm/online-instance-list.js +287 -0
- package/dist/esm/online-instance-list.js.map +1 -0
- package/dist/esm/pending-installations.js +235 -0
- package/dist/esm/pending-installations.js.map +1 -0
- package/dist/esm/release-history-panel.js +100 -0
- package/dist/esm/release-history-panel.js.map +1 -0
- package/dist/esm/release-notes-card.js +23 -0
- package/dist/esm/release-notes-card.js.map +1 -0
- package/dist/esm/security-card.js +700 -0
- package/dist/esm/security-card.js.map +1 -0
- package/dist/esm/support-bundle-collection-card.js +170 -0
- package/dist/esm/support-bundle-collection-card.js.map +1 -0
- package/dist/esm/support-bundles-card.js +306 -0
- package/dist/esm/support-bundles-card.js.map +1 -0
- package/dist/esm/support-card.js +305 -0
- package/dist/esm/support-card.js.map +1 -0
- package/dist/esm/team-selection.js +117 -0
- package/dist/esm/team-selection.js.map +1 -0
- package/dist/esm/team-settings-card.js +78 -0
- package/dist/esm/team-settings-card.js.map +1 -0
- package/dist/esm/team-settings.js +136 -0
- package/dist/esm/team-settings.js.map +1 -0
- package/dist/esm/top-nav-user-menu.js +173 -0
- package/dist/esm/top-nav-user-menu.js.map +1 -0
- package/dist/esm/top-nav.js +398 -0
- package/dist/esm/top-nav.js.map +1 -0
- package/dist/esm/update-layout.js +405 -0
- package/dist/esm/update-layout.js.map +1 -0
- package/dist/esm/updates-card.js +85 -0
- package/dist/esm/updates-card.js.map +1 -0
- package/dist/esm/upload-support-bundle-modal.js +143 -0
- package/dist/esm/upload-support-bundle-modal.js.map +1 -0
- package/dist/esm/user-settings-card.js +21 -0
- package/dist/esm/user-settings-card.js.map +1 -0
- package/dist/esm/user-settings.js +368 -0
- package/dist/esm/user-settings.js.map +1 -0
- package/dist/esm/utils/index.js +170 -0
- package/dist/esm/utils/index.js.map +1 -0
- package/dist/helm-install-wizard.d.mts +38 -0
- package/dist/helm-install-wizard.d.ts +38 -0
- package/dist/helm-install-wizard.js +1011 -0
- package/dist/helm-install-wizard.js.map +1 -0
- package/dist/index.d.mts +11 -27
- package/dist/index.d.ts +11 -27
- package/dist/index.js +2258 -154
- package/dist/index.js.map +1 -1
- package/dist/install-B19AaKF_.d.mts +233 -0
- package/dist/install-Bi1qJ8Bu.d.ts +233 -0
- package/dist/install-actions.d.mts +141 -0
- package/dist/install-actions.d.ts +141 -0
- package/dist/install-actions.js +765 -0
- package/dist/install-actions.js.map +1 -0
- package/dist/install-card.d.mts +15 -0
- package/dist/install-card.d.ts +15 -0
- package/dist/install-card.js +117 -0
- package/dist/install-card.js.map +1 -0
- package/dist/install-targets.d.mts +19 -0
- package/dist/install-targets.d.ts +19 -0
- package/dist/install-targets.js +50 -0
- package/dist/install-targets.js.map +1 -0
- package/dist/instance-card.d.mts +22 -0
- package/dist/instance-card.d.ts +22 -0
- package/dist/instance-card.js +199 -0
- package/dist/instance-card.js.map +1 -0
- package/dist/join-team.d.mts +30 -0
- package/dist/join-team.d.ts +30 -0
- package/dist/join-team.js +220 -0
- package/dist/join-team.js.map +1 -0
- package/dist/license-card.d.mts +15 -0
- package/dist/license-card.d.ts +15 -0
- package/dist/license-card.js +133 -0
- package/dist/license-card.js.map +1 -0
- package/dist/license-details.d.mts +10 -0
- package/dist/license-details.d.ts +10 -0
- package/dist/license-details.js +669 -0
- package/dist/license-details.js.map +1 -0
- package/dist/linux-install-wizard.d.mts +66 -0
- package/dist/linux-install-wizard.d.ts +66 -0
- package/dist/linux-install-wizard.js +1093 -0
- package/dist/linux-install-wizard.js.map +1 -0
- package/dist/login.d.mts +37 -0
- package/dist/login.d.ts +37 -0
- package/dist/login.js +263 -0
- package/dist/login.js.map +1 -0
- package/dist/online-instance-list.d.mts +22 -0
- package/dist/online-instance-list.d.ts +22 -0
- package/dist/online-instance-list.js +289 -0
- package/dist/online-instance-list.js.map +1 -0
- package/dist/pending-installations.d.mts +15 -0
- package/dist/pending-installations.d.ts +15 -0
- package/dist/pending-installations.js +237 -0
- package/dist/pending-installations.js.map +1 -0
- package/dist/release-history-panel.d.mts +22 -0
- package/dist/release-history-panel.d.ts +22 -0
- package/dist/release-history-panel.js +102 -0
- package/dist/release-history-panel.js.map +1 -0
- package/dist/release-notes-card.d.mts +13 -0
- package/dist/release-notes-card.d.ts +13 -0
- package/dist/release-notes-card.js +25 -0
- package/dist/release-notes-card.js.map +1 -0
- package/dist/security-card.d.mts +73 -0
- package/dist/security-card.d.ts +73 -0
- package/dist/security-card.js +702 -0
- package/dist/security-card.js.map +1 -0
- package/dist/styles.css +1877 -194
- package/dist/support-bundle-collection-card.d.mts +20 -0
- package/dist/support-bundle-collection-card.d.ts +20 -0
- package/dist/support-bundle-collection-card.js +172 -0
- package/dist/support-bundle-collection-card.js.map +1 -0
- package/dist/support-bundles-card.d.mts +19 -0
- package/dist/support-bundles-card.d.ts +19 -0
- package/dist/support-bundles-card.js +308 -0
- package/dist/support-bundles-card.js.map +1 -0
- package/dist/support-card.d.mts +8 -0
- package/dist/support-card.d.ts +8 -0
- package/dist/support-card.js +307 -0
- package/dist/support-card.js.map +1 -0
- package/dist/team-selection.d.mts +23 -0
- package/dist/team-selection.d.ts +23 -0
- package/dist/team-selection.js +119 -0
- package/dist/team-selection.js.map +1 -0
- package/dist/team-settings-card-Dq1d9b5c.d.mts +14 -0
- package/dist/team-settings-card-Dq1d9b5c.d.ts +14 -0
- package/dist/team-settings-card.d.mts +2 -0
- package/dist/team-settings-card.d.ts +2 -0
- package/dist/team-settings-card.js +80 -0
- package/dist/team-settings-card.js.map +1 -0
- package/dist/team-settings.d.mts +25 -0
- package/dist/team-settings.d.ts +25 -0
- package/dist/team-settings.js +138 -0
- package/dist/team-settings.js.map +1 -0
- package/dist/top-nav-0mb1K_H0.d.mts +32 -0
- package/dist/top-nav-0mb1K_H0.d.ts +32 -0
- package/dist/top-nav-user-menu.d.mts +18 -0
- package/dist/top-nav-user-menu.d.ts +18 -0
- package/dist/top-nav-user-menu.js +175 -0
- package/dist/top-nav-user-menu.js.map +1 -0
- package/dist/top-nav.d.mts +3 -0
- package/dist/top-nav.d.ts +3 -0
- package/dist/top-nav.js +400 -0
- package/dist/top-nav.js.map +1 -0
- package/dist/update-layout.d.mts +12 -0
- package/dist/update-layout.d.ts +12 -0
- package/dist/update-layout.js +407 -0
- package/dist/update-layout.js.map +1 -0
- package/dist/updates-card-BbubBrVR.d.mts +18 -0
- package/dist/updates-card-BbubBrVR.d.ts +18 -0
- package/dist/updates-card.d.mts +2 -0
- package/dist/updates-card.d.ts +2 -0
- package/dist/updates-card.js +87 -0
- package/dist/updates-card.js.map +1 -0
- package/dist/upload-support-bundle-modal.d.mts +19 -0
- package/dist/upload-support-bundle-modal.d.ts +19 -0
- package/dist/upload-support-bundle-modal.js +145 -0
- package/dist/upload-support-bundle-modal.js.map +1 -0
- package/dist/user-settings-card.d.mts +8 -0
- package/dist/user-settings-card.d.ts +8 -0
- package/dist/user-settings-card.js +23 -0
- package/dist/user-settings-card.js.map +1 -0
- package/dist/user-settings.d.mts +47 -0
- package/dist/user-settings.d.ts +47 -0
- package/dist/user-settings.js +370 -0
- package/dist/user-settings.js.map +1 -0
- package/dist/utils/index.d.mts +70 -0
- package/dist/utils/index.d.ts +70 -0
- package/dist/utils/index.js +177 -0
- package/dist/utils/index.js.map +1 -0
- package/package.json +163 -3
package/dist/actions/index.d.mts
CHANGED
|
@@ -4,6 +4,10 @@
|
|
|
4
4
|
* specific actions, but it exports helpers so downstream portals can describe
|
|
5
5
|
* their actions with consistent metadata.
|
|
6
6
|
*/
|
|
7
|
+
/**
|
|
8
|
+
* Gets the base API origin from environment, with trailing slashes removed.
|
|
9
|
+
*/
|
|
10
|
+
declare const getApiOrigin: () => string;
|
|
7
11
|
type PortalActionVisibility = "vendor" | "customer";
|
|
8
12
|
interface PortalActionContext {
|
|
9
13
|
vendorId: string;
|
|
@@ -19,13 +23,38 @@ interface PortalServerActionDefinition<Input, Output> {
|
|
|
19
23
|
run: (input: Input, context?: PortalActionContext) => Promise<Output>;
|
|
20
24
|
}
|
|
21
25
|
declare const defineServerAction: <Input, Output>(definition: PortalServerActionDefinition<Input, Output>) => PortalServerActionDefinition<Input, Output>;
|
|
26
|
+
interface CreateServiceAccountInput {
|
|
27
|
+
token: string;
|
|
28
|
+
name: string;
|
|
29
|
+
}
|
|
30
|
+
interface ServiceAccountData {
|
|
31
|
+
id: string;
|
|
32
|
+
customerId: string;
|
|
33
|
+
token: string;
|
|
34
|
+
accountName: string;
|
|
35
|
+
isRevoked: boolean;
|
|
36
|
+
createdAt: string;
|
|
37
|
+
emailAddress: string;
|
|
38
|
+
}
|
|
39
|
+
interface CreateServiceAccountResult {
|
|
40
|
+
service_account: ServiceAccountData;
|
|
41
|
+
token: string;
|
|
42
|
+
}
|
|
43
|
+
declare const createServiceAccount: PortalServerActionDefinition<CreateServiceAccountInput, CreateServiceAccountResult>;
|
|
22
44
|
interface InitiateLoginInput {
|
|
23
45
|
email: string;
|
|
24
46
|
}
|
|
25
47
|
interface InitiateLoginResult {
|
|
26
|
-
status: "ok";
|
|
48
|
+
status: "ok" | "saml_redirect";
|
|
27
49
|
requestedAt: string;
|
|
28
50
|
message: string;
|
|
51
|
+
/** If SAML redirect is required, this contains the info needed to redirect */
|
|
52
|
+
saml?: {
|
|
53
|
+
redirectRequired: true;
|
|
54
|
+
customerId: string;
|
|
55
|
+
email: string;
|
|
56
|
+
appSlug: string;
|
|
57
|
+
};
|
|
29
58
|
}
|
|
30
59
|
/**
|
|
31
60
|
* Reference server action for initiating the passwordless login flow.
|
|
@@ -40,9 +69,543 @@ interface VerifyMagicLinkResult {
|
|
|
40
69
|
raw: unknown;
|
|
41
70
|
}
|
|
42
71
|
interface VerifyMagicLinkError {
|
|
43
|
-
code: "invalid_code" | "unknown";
|
|
72
|
+
code: "invalid_code" | "expired" | "unknown";
|
|
44
73
|
message: string;
|
|
74
|
+
isExpired?: boolean;
|
|
45
75
|
}
|
|
46
76
|
declare const verifyMagicLink: PortalServerActionDefinition<VerifyMagicLinkInput, VerifyMagicLinkResult>;
|
|
77
|
+
interface CustomBrandingResponse {
|
|
78
|
+
brandingData: string;
|
|
79
|
+
documentation: unknown;
|
|
80
|
+
}
|
|
81
|
+
interface PortalLicenseField {
|
|
82
|
+
key: string;
|
|
83
|
+
label: string;
|
|
84
|
+
value: string | null;
|
|
85
|
+
isSecret?: boolean;
|
|
86
|
+
}
|
|
87
|
+
interface PortalLicenseDetails {
|
|
88
|
+
id?: string;
|
|
89
|
+
status?: string;
|
|
90
|
+
statusLabel?: string;
|
|
91
|
+
environment?: string;
|
|
92
|
+
expiresAt?: string | null;
|
|
93
|
+
releaseChannels?: string[];
|
|
94
|
+
installMethods?: string[];
|
|
95
|
+
installNotes?: string;
|
|
96
|
+
customerName?: string;
|
|
97
|
+
customerId?: string;
|
|
98
|
+
customerOrganization?: string;
|
|
99
|
+
fields: PortalLicenseField[];
|
|
100
|
+
}
|
|
101
|
+
interface ListSupportBundlesInput {
|
|
102
|
+
token: string;
|
|
103
|
+
}
|
|
104
|
+
interface SupportBundleInsight {
|
|
105
|
+
level: string;
|
|
106
|
+
primary: string;
|
|
107
|
+
key?: string;
|
|
108
|
+
detail?: string;
|
|
109
|
+
}
|
|
110
|
+
interface SupportBundleSummary {
|
|
111
|
+
id: string;
|
|
112
|
+
createdAt?: string;
|
|
113
|
+
status?: string;
|
|
114
|
+
size?: number;
|
|
115
|
+
instanceId?: string;
|
|
116
|
+
insights?: SupportBundleInsight[];
|
|
117
|
+
metadata?: Record<string, unknown>;
|
|
118
|
+
}
|
|
119
|
+
interface ListSupportBundlesResult {
|
|
120
|
+
bundles: SupportBundleSummary[];
|
|
121
|
+
totalCount: number;
|
|
122
|
+
raw: unknown;
|
|
123
|
+
}
|
|
124
|
+
interface DownloadSupportBundleInput {
|
|
125
|
+
token: string;
|
|
126
|
+
bundleId: string;
|
|
127
|
+
}
|
|
128
|
+
interface DownloadSupportBundleResult {
|
|
129
|
+
signedUrl: string;
|
|
130
|
+
}
|
|
131
|
+
interface DeleteSupportBundleInput {
|
|
132
|
+
token: string;
|
|
133
|
+
bundleId: string;
|
|
134
|
+
}
|
|
135
|
+
interface DeleteSupportBundleResult {
|
|
136
|
+
success: boolean;
|
|
137
|
+
}
|
|
138
|
+
interface UploadSupportBundleInput {
|
|
139
|
+
token: string;
|
|
140
|
+
appId: string;
|
|
141
|
+
}
|
|
142
|
+
interface UploadSupportBundleResult {
|
|
143
|
+
uploadUrl: string;
|
|
144
|
+
appId: string;
|
|
145
|
+
}
|
|
146
|
+
interface UploadSupportBundleCompleteInput {
|
|
147
|
+
token: string;
|
|
148
|
+
appId: string;
|
|
149
|
+
fileContent: ArrayBuffer;
|
|
150
|
+
contentLength: number;
|
|
151
|
+
}
|
|
152
|
+
interface UploadSupportBundleCompleteResult {
|
|
153
|
+
bundleId: string;
|
|
154
|
+
slug: string;
|
|
155
|
+
}
|
|
156
|
+
interface FetchLicenseDetailsInput {
|
|
157
|
+
token: string;
|
|
158
|
+
}
|
|
159
|
+
interface FetchLicenseDetailsResult {
|
|
160
|
+
license: PortalLicenseDetails;
|
|
161
|
+
raw: unknown;
|
|
162
|
+
}
|
|
163
|
+
interface FetchInstallOptionsInput {
|
|
164
|
+
token: string;
|
|
165
|
+
}
|
|
166
|
+
interface FetchInstallOptionsResult {
|
|
167
|
+
showLinux: boolean;
|
|
168
|
+
showHelm: boolean;
|
|
169
|
+
}
|
|
170
|
+
interface FetchLicenseSummaryInput {
|
|
171
|
+
token: string;
|
|
172
|
+
}
|
|
173
|
+
interface FetchLicenseSummaryResult {
|
|
174
|
+
type: string;
|
|
175
|
+
expiresAt: string | null;
|
|
176
|
+
}
|
|
177
|
+
interface FetchCustomersInput {
|
|
178
|
+
token: string;
|
|
179
|
+
}
|
|
180
|
+
interface Customer {
|
|
181
|
+
id: string;
|
|
182
|
+
name: string;
|
|
183
|
+
licenseId: string;
|
|
184
|
+
licenseType: string;
|
|
185
|
+
expiresAt: string;
|
|
186
|
+
isEnterprisePortalEnabled: boolean;
|
|
187
|
+
}
|
|
188
|
+
interface FetchCustomersResult {
|
|
189
|
+
customers: Customer[];
|
|
190
|
+
}
|
|
191
|
+
interface SwitchCustomerInput {
|
|
192
|
+
token: string;
|
|
193
|
+
customerId: string;
|
|
194
|
+
}
|
|
195
|
+
interface SwitchCustomerResult {
|
|
196
|
+
token: string;
|
|
197
|
+
}
|
|
198
|
+
interface ListReleasesInput {
|
|
199
|
+
token: string;
|
|
200
|
+
}
|
|
201
|
+
interface ListReleasesResult {
|
|
202
|
+
status: number;
|
|
203
|
+
body: string | null;
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* Fetches custom branding for the portal.
|
|
207
|
+
* This function is cached per-request to avoid duplicate API calls when called
|
|
208
|
+
* from multiple components (e.g., TopNav and page components).
|
|
209
|
+
*/
|
|
210
|
+
declare const fetchCustomBranding: () => Promise<CustomBrandingResponse>;
|
|
211
|
+
declare const decodeJwtPayload: (token: string) => Record<string, unknown>;
|
|
212
|
+
/**
|
|
213
|
+
* Extracts customer ID from JWT token. Throws if extraction fails.
|
|
214
|
+
*/
|
|
215
|
+
declare const getCustomerIdFromToken: (token: string) => string;
|
|
216
|
+
declare const listSupportBundles: PortalServerActionDefinition<ListSupportBundlesInput, ListSupportBundlesResult>;
|
|
217
|
+
declare const downloadSupportBundle: PortalServerActionDefinition<DownloadSupportBundleInput, DownloadSupportBundleResult>;
|
|
218
|
+
declare const deleteSupportBundle: PortalServerActionDefinition<DeleteSupportBundleInput, DeleteSupportBundleResult>;
|
|
219
|
+
declare const uploadSupportBundle: PortalServerActionDefinition<UploadSupportBundleCompleteInput, UploadSupportBundleCompleteResult>;
|
|
220
|
+
/**
|
|
221
|
+
* Helper to get the upload endpoint URL for client-side uploads with progress tracking.
|
|
222
|
+
* Use this when you need progress indication - call this to get the URL, then upload directly from client.
|
|
223
|
+
*/
|
|
224
|
+
declare const getSupportBundleUploadUrl: (appId: string) => string;
|
|
225
|
+
declare const listReleases: PortalServerActionDefinition<ListReleasesInput, ListReleasesResult>;
|
|
226
|
+
declare const fetchLicenseDetails: PortalServerActionDefinition<FetchLicenseDetailsInput, FetchLicenseDetailsResult>;
|
|
227
|
+
declare const fetchInstallOptions: PortalServerActionDefinition<FetchInstallOptionsInput, FetchInstallOptionsResult>;
|
|
228
|
+
declare const fetchLicenseSummary: PortalServerActionDefinition<FetchLicenseSummaryInput, FetchLicenseSummaryResult>;
|
|
229
|
+
declare const fetchCustomers: PortalServerActionDefinition<FetchCustomersInput, FetchCustomersResult>;
|
|
230
|
+
declare const switchCustomer: PortalServerActionDefinition<SwitchCustomerInput, SwitchCustomerResult>;
|
|
231
|
+
type SecurityInstallType = "linux" | "helm";
|
|
232
|
+
interface SecurityScanSummary {
|
|
233
|
+
critical: Record<string, string>;
|
|
234
|
+
high: Record<string, string>;
|
|
235
|
+
medium: Record<string, string>;
|
|
236
|
+
low: Record<string, string>;
|
|
237
|
+
}
|
|
238
|
+
interface SecurityScanWrapper {
|
|
239
|
+
input: string;
|
|
240
|
+
digest?: string;
|
|
241
|
+
last_scanned_at?: string;
|
|
242
|
+
result: SecurityScanSummary;
|
|
243
|
+
not_found?: boolean;
|
|
244
|
+
}
|
|
245
|
+
interface SecurityReleaseImage {
|
|
246
|
+
image: string;
|
|
247
|
+
sha: string;
|
|
248
|
+
size: number;
|
|
249
|
+
platforms: {
|
|
250
|
+
os: string;
|
|
251
|
+
architecture: string;
|
|
252
|
+
}[];
|
|
253
|
+
security?: SecurityScanWrapper;
|
|
254
|
+
}
|
|
255
|
+
interface GetSecurityInfoInput {
|
|
256
|
+
token: string;
|
|
257
|
+
installType: SecurityInstallType;
|
|
258
|
+
channelSequence: number;
|
|
259
|
+
isAirgap?: boolean;
|
|
260
|
+
}
|
|
261
|
+
interface GetSecurityInfoResult {
|
|
262
|
+
images: SecurityReleaseImage[];
|
|
263
|
+
}
|
|
264
|
+
interface SecurityInfoDiff {
|
|
265
|
+
oldTags: string[];
|
|
266
|
+
newTags: string[];
|
|
267
|
+
oldVulns?: SecurityScanSummary;
|
|
268
|
+
newVulns?: SecurityScanSummary;
|
|
269
|
+
added?: SecurityScanSummary;
|
|
270
|
+
removed?: SecurityScanSummary;
|
|
271
|
+
}
|
|
272
|
+
interface GetSecurityInfoDiffInput {
|
|
273
|
+
token: string;
|
|
274
|
+
installType: SecurityInstallType;
|
|
275
|
+
fromChannelSequence: number;
|
|
276
|
+
toChannelSequence: number;
|
|
277
|
+
isAirgap?: boolean;
|
|
278
|
+
}
|
|
279
|
+
interface GetSecurityInfoDiffResult {
|
|
280
|
+
from_channel_sequence: number;
|
|
281
|
+
to_channel_sequence: number;
|
|
282
|
+
images: Record<string, SecurityInfoDiff>;
|
|
283
|
+
}
|
|
284
|
+
interface UnifiedSbom {
|
|
285
|
+
sbom: string;
|
|
286
|
+
sbom_source: string;
|
|
287
|
+
}
|
|
288
|
+
interface SpdxCreationInfo {
|
|
289
|
+
created: string;
|
|
290
|
+
creators: string[];
|
|
291
|
+
}
|
|
292
|
+
interface SpdxDocument {
|
|
293
|
+
SPDXID: string;
|
|
294
|
+
spdxVersion: string;
|
|
295
|
+
name: string;
|
|
296
|
+
creationInfo?: SpdxCreationInfo;
|
|
297
|
+
packages?: unknown[];
|
|
298
|
+
files?: unknown[];
|
|
299
|
+
}
|
|
300
|
+
interface GetSecurityInfoSBOMInput {
|
|
301
|
+
token: string;
|
|
302
|
+
installType: SecurityInstallType;
|
|
303
|
+
channelSequence: number;
|
|
304
|
+
isAirgap?: boolean;
|
|
305
|
+
unifiedSbom?: boolean;
|
|
306
|
+
}
|
|
307
|
+
interface GetSecurityInfoSBOMResult {
|
|
308
|
+
sboms: {
|
|
309
|
+
unified?: UnifiedSbom;
|
|
310
|
+
};
|
|
311
|
+
}
|
|
312
|
+
/**
|
|
313
|
+
* Fetches security scan (CVE) information for a specific release.
|
|
314
|
+
*/
|
|
315
|
+
declare const getSecurityInfo: PortalServerActionDefinition<GetSecurityInfoInput, GetSecurityInfoResult>;
|
|
316
|
+
/**
|
|
317
|
+
* Fetches security diff between two releases (fixed/added CVEs).
|
|
318
|
+
*/
|
|
319
|
+
declare const getSecurityInfoDiff: PortalServerActionDefinition<GetSecurityInfoDiffInput, GetSecurityInfoDiffResult>;
|
|
320
|
+
/**
|
|
321
|
+
* Fetches SBOM (Software Bill of Materials) for a specific release.
|
|
322
|
+
*/
|
|
323
|
+
declare const getSecurityInfoSBOM: PortalServerActionDefinition<GetSecurityInfoSBOMInput, GetSecurityInfoSBOMResult>;
|
|
324
|
+
interface FetchTeamStatsInput {
|
|
325
|
+
token: string;
|
|
326
|
+
}
|
|
327
|
+
interface ServiceAccountSummary {
|
|
328
|
+
id: string;
|
|
329
|
+
accountName: string;
|
|
330
|
+
customerId: string;
|
|
331
|
+
isRevoked: boolean;
|
|
332
|
+
createdAt: string;
|
|
333
|
+
}
|
|
334
|
+
interface FetchTeamStatsResult {
|
|
335
|
+
userCount: number;
|
|
336
|
+
serviceAccountCount: number;
|
|
337
|
+
}
|
|
338
|
+
interface FetchDashboardInstancesInput {
|
|
339
|
+
token: string;
|
|
340
|
+
}
|
|
341
|
+
interface FetchDashboardInstancesResult {
|
|
342
|
+
onlineActiveCount: number;
|
|
343
|
+
airgapCount: number;
|
|
344
|
+
onlineUpdates: number;
|
|
345
|
+
airgapUpdates: number;
|
|
346
|
+
}
|
|
347
|
+
/**
|
|
348
|
+
* Fetches team statistics including user count and service account count.
|
|
349
|
+
* Used by the Team Settings dashboard card.
|
|
350
|
+
*/
|
|
351
|
+
declare const fetchTeamStats: PortalServerActionDefinition<FetchTeamStatsInput, FetchTeamStatsResult>;
|
|
352
|
+
/**
|
|
353
|
+
* Fetches instance counts and available updates for the dashboard.
|
|
354
|
+
* Used by the Updates dashboard card.
|
|
355
|
+
*/
|
|
356
|
+
declare const fetchDashboardInstances: PortalServerActionDefinition<FetchDashboardInstancesInput, FetchDashboardInstancesResult>;
|
|
357
|
+
interface FetchCurrentUserInput {
|
|
358
|
+
token: string;
|
|
359
|
+
}
|
|
360
|
+
interface UserProfile {
|
|
361
|
+
emailAddress: string;
|
|
362
|
+
firstName: string;
|
|
363
|
+
lastName: string;
|
|
364
|
+
}
|
|
365
|
+
interface FetchCurrentUserResult {
|
|
366
|
+
user: UserProfile;
|
|
367
|
+
}
|
|
368
|
+
interface UpdateUserInput {
|
|
369
|
+
token: string;
|
|
370
|
+
firstName?: string;
|
|
371
|
+
lastName?: string;
|
|
372
|
+
}
|
|
373
|
+
interface UpdateUserResult {
|
|
374
|
+
success: boolean;
|
|
375
|
+
}
|
|
376
|
+
interface NotificationSetting {
|
|
377
|
+
type: string;
|
|
378
|
+
enabled: boolean;
|
|
379
|
+
}
|
|
380
|
+
interface FetchNotificationsInput {
|
|
381
|
+
token: string;
|
|
382
|
+
customerId: string;
|
|
383
|
+
}
|
|
384
|
+
interface FetchNotificationsResult {
|
|
385
|
+
notifications: NotificationSetting[];
|
|
386
|
+
}
|
|
387
|
+
interface UpdateNotificationsInput {
|
|
388
|
+
token: string;
|
|
389
|
+
customerId: string;
|
|
390
|
+
notifications: NotificationSetting[];
|
|
391
|
+
}
|
|
392
|
+
interface UpdateNotificationsResult {
|
|
393
|
+
notifications: NotificationSetting[];
|
|
394
|
+
}
|
|
395
|
+
/**
|
|
396
|
+
* Fetches the current user's profile information.
|
|
397
|
+
*/
|
|
398
|
+
declare const fetchCurrentUser: PortalServerActionDefinition<FetchCurrentUserInput, FetchCurrentUserResult>;
|
|
399
|
+
/**
|
|
400
|
+
* Updates the current user's profile information.
|
|
401
|
+
*/
|
|
402
|
+
declare const updateUser: PortalServerActionDefinition<UpdateUserInput, UpdateUserResult>;
|
|
403
|
+
/**
|
|
404
|
+
* Fetches notification preferences for a specific customer/team.
|
|
405
|
+
*/
|
|
406
|
+
declare const fetchNotifications: PortalServerActionDefinition<FetchNotificationsInput, FetchNotificationsResult>;
|
|
407
|
+
/**
|
|
408
|
+
* Updates notification preferences for a specific customer/team.
|
|
409
|
+
*/
|
|
410
|
+
declare const updateNotifications: PortalServerActionDefinition<UpdateNotificationsInput, UpdateNotificationsResult>;
|
|
411
|
+
interface TeamUser {
|
|
412
|
+
id: string;
|
|
413
|
+
email: string;
|
|
414
|
+
name?: string;
|
|
415
|
+
createdAt?: string;
|
|
416
|
+
}
|
|
417
|
+
interface TeamUser {
|
|
418
|
+
emailAddress: string;
|
|
419
|
+
firstAccessedAt?: string;
|
|
420
|
+
lastAccessedAt?: string;
|
|
421
|
+
viewCount?: number;
|
|
422
|
+
pendingInvite?: boolean;
|
|
423
|
+
}
|
|
424
|
+
interface FetchTeamUsersInput {
|
|
425
|
+
token: string;
|
|
426
|
+
limit?: number;
|
|
427
|
+
offset?: number;
|
|
428
|
+
}
|
|
429
|
+
interface FetchTeamUsersResult {
|
|
430
|
+
users: TeamUser[];
|
|
431
|
+
total: number;
|
|
432
|
+
}
|
|
433
|
+
interface InviteUserInput {
|
|
434
|
+
token: string;
|
|
435
|
+
email: string;
|
|
436
|
+
}
|
|
437
|
+
interface InviteUserResult {
|
|
438
|
+
success: boolean;
|
|
439
|
+
}
|
|
440
|
+
interface DeleteUserInput {
|
|
441
|
+
token: string;
|
|
442
|
+
email: string;
|
|
443
|
+
}
|
|
444
|
+
interface DeleteUserResult {
|
|
445
|
+
success: boolean;
|
|
446
|
+
}
|
|
447
|
+
interface ServiceAccount {
|
|
448
|
+
id: string;
|
|
449
|
+
customerId: string;
|
|
450
|
+
accountName: string;
|
|
451
|
+
emailAddress?: string;
|
|
452
|
+
token: string;
|
|
453
|
+
isRevoked: boolean;
|
|
454
|
+
createdAt: string;
|
|
455
|
+
lastUsedAt?: string;
|
|
456
|
+
tokenRegeneratedAt?: string;
|
|
457
|
+
}
|
|
458
|
+
interface FetchServiceAccountsInput {
|
|
459
|
+
token: string;
|
|
460
|
+
limit?: number;
|
|
461
|
+
offset?: number;
|
|
462
|
+
includeRevoked?: boolean;
|
|
463
|
+
}
|
|
464
|
+
interface FetchServiceAccountsResult {
|
|
465
|
+
serviceAccounts: ServiceAccount[];
|
|
466
|
+
total: number;
|
|
467
|
+
}
|
|
468
|
+
interface RevokeServiceAccountInput {
|
|
469
|
+
token: string;
|
|
470
|
+
accountId: string;
|
|
471
|
+
}
|
|
472
|
+
interface RevokeServiceAccountResult {
|
|
473
|
+
success: boolean;
|
|
474
|
+
}
|
|
475
|
+
interface RotateServiceAccountTokenInput {
|
|
476
|
+
token: string;
|
|
477
|
+
accountId: string;
|
|
478
|
+
}
|
|
479
|
+
interface RotateServiceAccountTokenResult {
|
|
480
|
+
serviceAccount: ServiceAccount;
|
|
481
|
+
helmLoginCommand: string;
|
|
482
|
+
redeployHelm: string[];
|
|
483
|
+
}
|
|
484
|
+
interface Instance {
|
|
485
|
+
id: string;
|
|
486
|
+
serviceAccountId?: string;
|
|
487
|
+
versionLabel?: string;
|
|
488
|
+
channelId?: string;
|
|
489
|
+
channelSequence?: number;
|
|
490
|
+
lastCheckin?: string;
|
|
491
|
+
isAirgap?: boolean;
|
|
492
|
+
embeddedClusterVersion?: string;
|
|
493
|
+
tags?: Array<{
|
|
494
|
+
key: string;
|
|
495
|
+
value: string;
|
|
496
|
+
}>;
|
|
497
|
+
}
|
|
498
|
+
interface FetchInstancesInput {
|
|
499
|
+
token: string;
|
|
500
|
+
}
|
|
501
|
+
interface FetchInstancesResult {
|
|
502
|
+
instances: Instance[];
|
|
503
|
+
}
|
|
504
|
+
interface SAMLConfig {
|
|
505
|
+
samlAllowed: boolean;
|
|
506
|
+
samlEnabled: boolean;
|
|
507
|
+
entityId: string;
|
|
508
|
+
acsUrl: string;
|
|
509
|
+
hasIdpMetadata: boolean;
|
|
510
|
+
hasIdpCert: boolean;
|
|
511
|
+
}
|
|
512
|
+
interface FetchSamlConfigInput {
|
|
513
|
+
token: string;
|
|
514
|
+
}
|
|
515
|
+
interface FetchSamlConfigResult {
|
|
516
|
+
config: SAMLConfig;
|
|
517
|
+
}
|
|
518
|
+
interface UpdateSamlConfigInput {
|
|
519
|
+
token: string;
|
|
520
|
+
idpMetadataXml: string;
|
|
521
|
+
idpPublicCert: string;
|
|
522
|
+
}
|
|
523
|
+
interface UpdateSamlConfigResult {
|
|
524
|
+
success: boolean;
|
|
525
|
+
}
|
|
526
|
+
interface ToggleSamlEnabledInput {
|
|
527
|
+
token: string;
|
|
528
|
+
enabled: boolean;
|
|
529
|
+
}
|
|
530
|
+
interface ToggleSamlEnabledResult {
|
|
531
|
+
success: boolean;
|
|
532
|
+
samlEnabled: boolean;
|
|
533
|
+
}
|
|
534
|
+
interface DeprovisionSamlInput {
|
|
535
|
+
token: string;
|
|
536
|
+
}
|
|
537
|
+
interface DeprovisionSamlResult {
|
|
538
|
+
success: boolean;
|
|
539
|
+
}
|
|
540
|
+
/**
|
|
541
|
+
* Fetches the list of users for a team.
|
|
542
|
+
*/
|
|
543
|
+
declare const fetchTeamUsers: PortalServerActionDefinition<FetchTeamUsersInput, FetchTeamUsersResult>;
|
|
544
|
+
/**
|
|
545
|
+
* Invites a user to the team.
|
|
546
|
+
*/
|
|
547
|
+
declare const inviteUser: PortalServerActionDefinition<InviteUserInput, InviteUserResult>;
|
|
548
|
+
/**
|
|
549
|
+
* Removes a user from the team.
|
|
550
|
+
*/
|
|
551
|
+
declare const deleteUser: PortalServerActionDefinition<DeleteUserInput, DeleteUserResult>;
|
|
552
|
+
/**
|
|
553
|
+
* Fetches the list of service accounts for a team.
|
|
554
|
+
*/
|
|
555
|
+
declare const fetchServiceAccounts: PortalServerActionDefinition<FetchServiceAccountsInput, FetchServiceAccountsResult>;
|
|
556
|
+
/**
|
|
557
|
+
* Revokes a service account.
|
|
558
|
+
*/
|
|
559
|
+
declare const revokeServiceAccount: PortalServerActionDefinition<RevokeServiceAccountInput, RevokeServiceAccountResult>;
|
|
560
|
+
/**
|
|
561
|
+
* Rotates a service account token.
|
|
562
|
+
*/
|
|
563
|
+
declare const rotateServiceAccountToken: PortalServerActionDefinition<RotateServiceAccountTokenInput, RotateServiceAccountTokenResult>;
|
|
564
|
+
/**
|
|
565
|
+
* Fetches instances for the customer.
|
|
566
|
+
*/
|
|
567
|
+
declare const fetchInstances: PortalServerActionDefinition<FetchInstancesInput, FetchInstancesResult>;
|
|
568
|
+
/**
|
|
569
|
+
* Fetches SAML configuration for the customer.
|
|
570
|
+
*/
|
|
571
|
+
declare const fetchSamlConfig: PortalServerActionDefinition<FetchSamlConfigInput, FetchSamlConfigResult>;
|
|
572
|
+
/**
|
|
573
|
+
* Updates SAML configuration (uploads IdP metadata and certificate).
|
|
574
|
+
*/
|
|
575
|
+
declare const updateSamlConfig: PortalServerActionDefinition<UpdateSamlConfigInput, UpdateSamlConfigResult>;
|
|
576
|
+
/**
|
|
577
|
+
* Toggles SAML authentication enabled/disabled.
|
|
578
|
+
*/
|
|
579
|
+
declare const toggleSamlEnabled: PortalServerActionDefinition<ToggleSamlEnabledInput, ToggleSamlEnabledResult>;
|
|
580
|
+
/**
|
|
581
|
+
* Removes SAML configuration (deprovisions SAML).
|
|
582
|
+
*/
|
|
583
|
+
declare const deprovisionSaml: PortalServerActionDefinition<DeprovisionSamlInput, DeprovisionSamlResult>;
|
|
584
|
+
interface AcceptInviteInput {
|
|
585
|
+
code: string;
|
|
586
|
+
}
|
|
587
|
+
interface AcceptInviteResult {
|
|
588
|
+
token: string;
|
|
589
|
+
}
|
|
590
|
+
interface AcceptInviteError {
|
|
591
|
+
code: "invalid_code" | "expired" | "unknown";
|
|
592
|
+
message: string;
|
|
593
|
+
}
|
|
594
|
+
/**
|
|
595
|
+
* Accepts a team invitation using the invite code from email.
|
|
596
|
+
* Returns a JWT token on success that can be used to establish a session.
|
|
597
|
+
*/
|
|
598
|
+
declare const acceptInvite: PortalServerActionDefinition<AcceptInviteInput, AcceptInviteResult>;
|
|
599
|
+
interface RefreshInviteInput {
|
|
600
|
+
code: string;
|
|
601
|
+
}
|
|
602
|
+
interface RefreshInviteResult {
|
|
603
|
+
success: boolean;
|
|
604
|
+
}
|
|
605
|
+
/**
|
|
606
|
+
* Refreshes an expired invite by generating a new code and resending the email.
|
|
607
|
+
* The original code is used to identify the invite to refresh.
|
|
608
|
+
*/
|
|
609
|
+
declare const refreshInvite: PortalServerActionDefinition<RefreshInviteInput, RefreshInviteResult>;
|
|
47
610
|
|
|
48
|
-
export { type InitiateLoginInput, type InitiateLoginResult, type PortalActionContext, type PortalActionVisibility, type PortalServerActionDefinition, type VerifyMagicLinkError, type VerifyMagicLinkInput, type VerifyMagicLinkResult, defineServerAction, initiateLogin, verifyMagicLink };
|
|
611
|
+
export { type AcceptInviteError, type AcceptInviteInput, type AcceptInviteResult, type CreateServiceAccountInput, type CreateServiceAccountResult, type CustomBrandingResponse, type Customer, type DeleteSupportBundleInput, type DeleteSupportBundleResult, type DeleteUserInput, type DeleteUserResult, type DeprovisionSamlInput, type DeprovisionSamlResult, type DownloadSupportBundleInput, type DownloadSupportBundleResult, type FetchCurrentUserInput, type FetchCurrentUserResult, type FetchCustomersInput, type FetchCustomersResult, type FetchDashboardInstancesInput, type FetchDashboardInstancesResult, type FetchInstallOptionsInput, type FetchInstallOptionsResult, type FetchInstancesInput, type FetchInstancesResult, type FetchLicenseDetailsInput, type FetchLicenseDetailsResult, type FetchLicenseSummaryInput, type FetchLicenseSummaryResult, type FetchNotificationsInput, type FetchNotificationsResult, type FetchSamlConfigInput, type FetchSamlConfigResult, type FetchServiceAccountsInput, type FetchServiceAccountsResult, type FetchTeamStatsInput, type FetchTeamStatsResult, type FetchTeamUsersInput, type FetchTeamUsersResult, type GetSecurityInfoDiffInput, type GetSecurityInfoDiffResult, type GetSecurityInfoInput, type GetSecurityInfoResult, type GetSecurityInfoSBOMInput, type GetSecurityInfoSBOMResult, type InitiateLoginInput, type InitiateLoginResult, type Instance, type InviteUserInput, type InviteUserResult, type ListReleasesInput, type ListReleasesResult, type ListSupportBundlesInput, type ListSupportBundlesResult, type NotificationSetting, type PortalActionContext, type PortalActionVisibility, type PortalLicenseDetails, type PortalLicenseField, type PortalServerActionDefinition, type RefreshInviteInput, type RefreshInviteResult, type RevokeServiceAccountInput, type RevokeServiceAccountResult, type RotateServiceAccountTokenInput, type RotateServiceAccountTokenResult, type SAMLConfig, type SecurityInfoDiff, type SecurityInstallType, type SecurityReleaseImage, type SecurityScanSummary, type SecurityScanWrapper, type ServiceAccount, type ServiceAccountData, type ServiceAccountSummary, type SpdxCreationInfo, type SpdxDocument, type SupportBundleInsight, type SupportBundleSummary, type SwitchCustomerInput, type SwitchCustomerResult, type TeamUser, type ToggleSamlEnabledInput, type ToggleSamlEnabledResult, type UnifiedSbom, type UpdateNotificationsInput, type UpdateNotificationsResult, type UpdateSamlConfigInput, type UpdateSamlConfigResult, type UpdateUserInput, type UpdateUserResult, type UploadSupportBundleCompleteInput, type UploadSupportBundleCompleteResult, type UploadSupportBundleInput, type UploadSupportBundleResult, type UserProfile, type VerifyMagicLinkError, type VerifyMagicLinkInput, type VerifyMagicLinkResult, acceptInvite, createServiceAccount, decodeJwtPayload, defineServerAction, deleteSupportBundle, deleteUser, deprovisionSaml, downloadSupportBundle, fetchCurrentUser, fetchCustomBranding, fetchCustomers, fetchDashboardInstances, fetchInstallOptions, fetchInstances, fetchLicenseDetails, fetchLicenseSummary, fetchNotifications, fetchSamlConfig, fetchServiceAccounts, fetchTeamStats, fetchTeamUsers, getApiOrigin, getCustomerIdFromToken, getSecurityInfo, getSecurityInfoDiff, getSecurityInfoSBOM, getSupportBundleUploadUrl, initiateLogin, inviteUser, listReleases, listSupportBundles, refreshInvite, revokeServiceAccount, rotateServiceAccountToken, switchCustomer, toggleSamlEnabled, updateNotifications, updateSamlConfig, updateUser, uploadSupportBundle, verifyMagicLink };
|