@cobaltcore-dev/aurora 1.1.0 → 1.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/README.md +59 -9
- package/dist/client/App.d.ts +2 -2
- package/dist/client/AuroraApp.d.ts +33 -13
- package/dist/client/{AuthProvider-BS5OVv8n.mjs → AuthProvider-CVSAwW9f.mjs} +22 -8
- package/dist/client/AuthProvider-CVSAwW9f.mjs.map +1 -0
- package/dist/client/{ContentHeader-BHMUzd9H.mjs → ContentHeader-CPJbgYWn.mjs} +18 -18
- package/dist/client/{ContentHeader-BHMUzd9H.mjs.map → ContentHeader-CPJbgYWn.mjs.map} +1 -1
- package/dist/client/DeleteFlavorModal-V44QCJBd.mjs +773 -0
- package/dist/client/DeleteFlavorModal-V44QCJBd.mjs.map +1 -0
- package/dist/client/DynamicBreadcrumbContext-CVcUQFou.mjs +26 -0
- package/dist/client/DynamicBreadcrumbContext-CVcUQFou.mjs.map +1 -0
- package/dist/client/{FiltersInput-B8CNBg1L.mjs → FiltersInput-CKI6zWnm.mjs} +18 -18
- package/dist/client/{FiltersInput-B8CNBg1L.mjs.map → FiltersInput-CKI6zWnm.mjs.map} +1 -1
- package/dist/client/FloatingIpActionModals-CwEC5GR-.mjs +460 -0
- package/dist/client/FloatingIpActionModals-CwEC5GR-.mjs.map +1 -0
- package/dist/client/ImageToastNotifications-m6c3tVPb.mjs +1152 -0
- package/dist/client/ImageToastNotifications-m6c3tVPb.mjs.map +1 -0
- package/dist/client/SortInput-4g7nSTHW.mjs +34 -0
- package/dist/client/SortInput-4g7nSTHW.mjs.map +1 -0
- package/dist/client/{TwoColumnDescriptionList-DiDx3PnH.mjs → TwoColumnDescriptionList-NvgvErua.mjs} +2 -2
- package/dist/client/{TwoColumnDescriptionList-DiDx3PnH.mjs.map → TwoColumnDescriptionList-NvgvErua.mjs.map} +1 -1
- package/dist/client/_-CAsCx-Ay.mjs +6 -0
- package/dist/client/_-CAsCx-Ay.mjs.map +1 -0
- package/dist/client/_auth-SrDjHL6j.mjs +12 -0
- package/dist/client/_auth-SrDjHL6j.mjs.map +1 -0
- package/dist/client/_flavorId-9PcBBW52.mjs +231 -0
- package/dist/client/_flavorId-9PcBBW52.mjs.map +1 -0
- package/dist/client/{_flavorId-BN_qessZ.mjs → _flavorId-a9Gu66R1.mjs} +3 -9
- package/dist/client/_flavorId-a9Gu66R1.mjs.map +1 -0
- package/dist/client/_floatingIpId-AE9Fu8l6.mjs +210 -0
- package/dist/client/_floatingIpId-AE9Fu8l6.mjs.map +1 -0
- package/dist/client/{_floatingIpId-CwDGHkWm.mjs → _floatingIpId-AZ11Ksmu.mjs} +3 -9
- package/dist/client/_floatingIpId-AZ11Ksmu.mjs.map +1 -0
- package/dist/client/{_imageId-BtJ7GmYB.mjs → _imageId-BtAql2Kr.mjs} +104 -92
- package/dist/client/_imageId-BtAql2Kr.mjs.map +1 -0
- package/dist/client/_imageId-D76BxvFY.mjs +39 -0
- package/dist/client/_imageId-D76BxvFY.mjs.map +1 -0
- package/dist/client/{_projectId-Byt3GQDW.mjs → _projectId-7Nl1MQTJ.mjs} +5 -5
- package/dist/client/_projectId-7Nl1MQTJ.mjs.map +1 -0
- package/dist/client/_projectId-B3wmSala.mjs +281 -0
- package/dist/client/_projectId-B3wmSala.mjs.map +1 -0
- package/dist/client/_projectId-DPzv0CCp.mjs +77 -0
- package/dist/client/_projectId-DPzv0CCp.mjs.map +1 -0
- package/dist/client/_projectId-DfeVJy0G.mjs +30 -0
- package/dist/client/_projectId-DfeVJy0G.mjs.map +1 -0
- package/dist/client/_securityGroupId-C5huJNfO.mjs +1810 -0
- package/dist/client/_securityGroupId-C5huJNfO.mjs.map +1 -0
- package/dist/client/{_securityGroupId-BcbkRhsN.mjs → _securityGroupId-D85mSigA.mjs} +3 -9
- package/dist/client/_securityGroupId-D85mSigA.mjs.map +1 -0
- package/dist/client/_serviceType-DS8DxsrP.mjs +20 -0
- package/dist/client/_serviceType-DS8DxsrP.mjs.map +1 -0
- package/dist/client/_serviceType-M8d9rOT6.mjs +6 -0
- package/dist/client/_serviceType-M8d9rOT6.mjs.map +1 -0
- package/dist/client/_storageType-BRWWJtow.mjs +14 -0
- package/dist/client/_storageType-BRWWJtow.mjs.map +1 -0
- package/dist/client/_storageType-CzZ4u9x_.mjs +12 -0
- package/dist/client/_storageType-CzZ4u9x_.mjs.map +1 -0
- package/dist/client/_storageType-Dy9uCVXr.mjs +845 -0
- package/dist/client/_storageType-Dy9uCVXr.mjs.map +1 -0
- package/dist/client/_storageType-zeSZe--V.mjs.map +1 -1
- package/dist/client/{about-_73VmpTB.mjs → about-BmQTyLWc.mjs} +2 -2
- package/dist/client/{about-_73VmpTB.mjs.map → about-BmQTyLWc.mjs.map} +1 -1
- package/dist/client/{aurora-EbwGRLLf.mjs → aurora-CIml-f2f.mjs} +2 -2
- package/dist/client/{aurora-EbwGRLLf.mjs.map → aurora-CIml-f2f.mjs.map} +1 -1
- package/dist/client/{build-C_4vRMCq.mjs → build-WuxXRAqf.mjs} +121 -24
- package/dist/client/{build-C_4vRMCq.mjs.map → build-WuxXRAqf.mjs.map} +1 -1
- package/dist/client/components/Breadcrumbs.d.ts +1 -0
- package/dist/client/components/ListToolbar/SortInput.d.ts +3 -0
- package/dist/client/context/BreadcrumbExtensionContext.d.ts +9 -0
- package/dist/client/context/DynamicBreadcrumbContext.d.ts +9 -0
- package/dist/client/{flavors-CiHCYrtZ.mjs → flavors-B0rbqffG.mjs} +3 -5
- package/dist/client/flavors-B0rbqffG.mjs.map +1 -0
- package/dist/client/flavors-DWMZ6TuJ.mjs.map +1 -1
- package/dist/client/flavors-Rl20bxVU.mjs +628 -0
- package/dist/client/flavors-Rl20bxVU.mjs.map +1 -0
- package/dist/client/floatingips-Cz9k80cc.mjs +8 -0
- package/dist/client/floatingips-Cz9k80cc.mjs.map +1 -0
- package/dist/client/floatingips-xbO_mu4f.mjs +576 -0
- package/dist/client/floatingips-xbO_mu4f.mjs.map +1 -0
- package/dist/client/hooks/useBreadcrumbs.d.ts +16 -0
- package/dist/client/hooks/usePushBreadcrumbs.d.ts +10 -0
- package/dist/client/hooks/useSetBreadcrumb.d.ts +11 -0
- package/dist/client/{hooks-LutR2Yg3.mjs → hooks-D0yKIumu.mjs} +2 -2
- package/dist/client/{hooks-LutR2Yg3.mjs.map → hooks-D0yKIumu.mjs.map} +1 -1
- package/dist/client/images-BGQv9kKT.mjs +1983 -0
- package/dist/client/images-BGQv9kKT.mjs.map +1 -0
- package/dist/client/{images-CS4kZQyu.mjs → images-CPmMa4SQ.mjs} +3 -5
- package/dist/client/images-CPmMa4SQ.mjs.map +1 -0
- package/dist/client/images-NBf2bV43.mjs.map +1 -1
- package/dist/client/index.d.ts +7 -3
- package/dist/client/index.js +549 -535
- package/dist/client/index.js.map +1 -1
- package/dist/client/{objects-C3azvW8m.mjs → objects-BE_u5yRt.mjs} +7087 -4211
- package/dist/client/objects-BE_u5yRt.mjs.map +1 -0
- package/dist/client/objects-BN-59Th0.mjs +66 -0
- package/dist/client/objects-BN-59Th0.mjs.map +1 -0
- package/dist/client/objects-D9Luf9KB.mjs +66 -0
- package/dist/client/objects-D9Luf9KB.mjs.map +1 -0
- package/dist/client/projects-yiK0HGSA.mjs.map +1 -1
- package/dist/client/routeInfo-DP3v74Wg.mjs +19 -0
- package/dist/client/routeInfo-DP3v74Wg.mjs.map +1 -0
- package/dist/client/router.d.ts +2 -2
- package/dist/client/{routes-CdDm-hhO.mjs → routes-CJj7SR_K.mjs} +2 -2
- package/dist/client/routes-CJj7SR_K.mjs.map +1 -0
- package/dist/client/routes-xofA3ksU.mjs +110 -0
- package/dist/client/routes-xofA3ksU.mjs.map +1 -0
- package/dist/client/securitygroups-BjhgLBHm.mjs +620 -0
- package/dist/client/securitygroups-BjhgLBHm.mjs.map +1 -0
- package/dist/client/securitygroups-CtKne8UQ.mjs +8 -0
- package/dist/client/securitygroups-CtKne8UQ.mjs.map +1 -0
- package/dist/client/{securitygroups-Byte-iSp.mjs → securitygroups-DEJQBcxm.mjs} +3 -5
- package/dist/client/securitygroups-DEJQBcxm.mjs.map +1 -0
- package/dist/client/trpcClient.d.ts +135 -3
- package/dist/client/useBreadcrumbs-ha3IlaxX.mjs +54 -0
- package/dist/client/useBreadcrumbs-ha3IlaxX.mjs.map +1 -0
- package/dist/client/useModalTracking-BcOKTYRN.mjs +33 -0
- package/dist/client/useModalTracking-BcOKTYRN.mjs.map +1 -0
- package/dist/client/{useSecurityGroupPermissions-C29mzb3b.mjs → useSecurityGroupPermissions-BOyLQLdC.mjs} +85 -19
- package/dist/client/useSecurityGroupPermissions-BOyLQLdC.mjs.map +1 -0
- package/dist/client/useSetBreadcrumb-tn7lBaQV.mjs +19 -0
- package/dist/client/useSetBreadcrumb-tn7lBaQV.mjs.map +1 -0
- package/dist/client/utils/formatSwiftDate.d.ts +30 -0
- package/dist/server/index.d.ts +136 -4
- package/dist/server/index.js +845 -260
- package/package.json +37 -36
- package/dist/client/AuthProvider-BS5OVv8n.mjs.map +0 -1
- package/dist/client/DeleteFlavorModal-BP83t9zX.mjs +0 -721
- package/dist/client/DeleteFlavorModal-BP83t9zX.mjs.map +0 -1
- package/dist/client/FloatingIpActionModals-BraiJWBi.mjs +0 -417
- package/dist/client/FloatingIpActionModals-BraiJWBi.mjs.map +0 -1
- package/dist/client/ImageToastNotifications-BXMHJaIH.mjs +0 -1131
- package/dist/client/ImageToastNotifications-BXMHJaIH.mjs.map +0 -1
- package/dist/client/RouteError-hAF8_jbe.mjs +0 -25
- package/dist/client/RouteError-hAF8_jbe.mjs.map +0 -1
- package/dist/client/SortInput-Cqs2poV3.mjs +0 -34
- package/dist/client/SortInput-Cqs2poV3.mjs.map +0 -1
- package/dist/client/StatusError-C5KodQOq.mjs +0 -39
- package/dist/client/StatusError-C5KodQOq.mjs.map +0 -1
- package/dist/client/_auth-DJ9wHZaj.mjs +0 -11
- package/dist/client/_auth-DJ9wHZaj.mjs.map +0 -1
- package/dist/client/_flavorId-BN_qessZ.mjs.map +0 -1
- package/dist/client/_flavorId-CJjEB_Ao.mjs +0 -210
- package/dist/client/_flavorId-CJjEB_Ao.mjs.map +0 -1
- package/dist/client/_floatingIpId-CwDGHkWm.mjs.map +0 -1
- package/dist/client/_floatingIpId-foMIwbE4.mjs +0 -215
- package/dist/client/_floatingIpId-foMIwbE4.mjs.map +0 -1
- package/dist/client/_imageId-BtJ7GmYB.mjs.map +0 -1
- package/dist/client/_projectId-BmtCuzJu.mjs +0 -29
- package/dist/client/_projectId-BmtCuzJu.mjs.map +0 -1
- package/dist/client/_projectId-Byt3GQDW.mjs.map +0 -1
- package/dist/client/_projectId-NYk1IN_a.mjs +0 -291
- package/dist/client/_projectId-NYk1IN_a.mjs.map +0 -1
- package/dist/client/_projectId-QueiFczy.mjs +0 -46
- package/dist/client/_projectId-QueiFczy.mjs.map +0 -1
- package/dist/client/_securityGroupId-BcbkRhsN.mjs.map +0 -1
- package/dist/client/_securityGroupId-pPtJsCoe.mjs +0 -1797
- package/dist/client/_securityGroupId-pPtJsCoe.mjs.map +0 -1
- package/dist/client/_storageType-BmqrU06i.mjs +0 -2202
- package/dist/client/_storageType-BmqrU06i.mjs.map +0 -1
- package/dist/client/components/Error/StatusError.d.ts +0 -11
- package/dist/client/components/ProjectView/ProjectInfoBox.d.ts +0 -12
- package/dist/client/flavors-CiHCYrtZ.mjs.map +0 -1
- package/dist/client/flavors-DY-bDc8l.mjs +0 -650
- package/dist/client/flavors-DY-bDc8l.mjs.map +0 -1
- package/dist/client/floatingips-Ci4jHkaG.mjs +0 -591
- package/dist/client/floatingips-Ci4jHkaG.mjs.map +0 -1
- package/dist/client/images-91U7tr9Y2.mjs +0 -1976
- package/dist/client/images-91U7tr9Y2.mjs.map +0 -1
- package/dist/client/images-CS4kZQyu.mjs.map +0 -1
- package/dist/client/objects-C3azvW8m.mjs.map +0 -1
- package/dist/client/objects-CM265S6b.mjs +0 -56
- package/dist/client/objects-CM265S6b.mjs.map +0 -1
- package/dist/client/objects-EE9Cd1wI.mjs +0 -56
- package/dist/client/objects-EE9Cd1wI.mjs.map +0 -1
- package/dist/client/routeInfo-DXqB2HCf.mjs +0 -32
- package/dist/client/routeInfo-DXqB2HCf.mjs.map +0 -1
- package/dist/client/routes-CBd8CCuM.mjs +0 -115
- package/dist/client/routes-CBd8CCuM.mjs.map +0 -1
- package/dist/client/routes-CdDm-hhO.mjs.map +0 -1
- package/dist/client/securitygroups-Bd_uV4S9.mjs +0 -595
- package/dist/client/securitygroups-Bd_uV4S9.mjs.map +0 -1
- package/dist/client/securitygroups-Byte-iSp.mjs.map +0 -1
- package/dist/client/useSecurityGroupPermissions-C29mzb3b.mjs.map +0 -1
package/dist/client/index.js
CHANGED
|
@@ -1,89 +1,92 @@
|
|
|
1
|
-
import { A as e, C as t, D as n, G as r,
|
|
2
|
-
import { a as
|
|
3
|
-
import { n as
|
|
4
|
-
import { t as
|
|
5
|
-
import { t as
|
|
6
|
-
import { t as
|
|
7
|
-
import { t as
|
|
8
|
-
import { t as
|
|
9
|
-
import { t as
|
|
10
|
-
import { t as
|
|
11
|
-
import { t as
|
|
12
|
-
import { t as
|
|
13
|
-
import { t as
|
|
14
|
-
import { t as
|
|
15
|
-
import { t as
|
|
16
|
-
import { t as
|
|
17
|
-
import { t as
|
|
18
|
-
import {
|
|
19
|
-
import { t as
|
|
20
|
-
import { t as
|
|
21
|
-
import { n as
|
|
22
|
-
import {
|
|
23
|
-
import {
|
|
24
|
-
import {
|
|
25
|
-
import {
|
|
26
|
-
import {
|
|
27
|
-
import {
|
|
28
|
-
import {
|
|
29
|
-
import {
|
|
30
|
-
import {
|
|
1
|
+
import { A as e, C as t, D as n, G as r, at as i, ct as a, dt as o, f as s, g as c, i as ee, j as te, k as ne, q as re, r as ie, rt as l, u as ae, x as oe } from "./build-WuxXRAqf.mjs";
|
|
2
|
+
import { a as u, i as d, o as f, r as se } from "./trpcClient-D7gpR7YG.mjs";
|
|
3
|
+
import { n as p, t as ce } from "./AuthProvider-CVSAwW9f.mjs";
|
|
4
|
+
import { t as m } from "./cn-DM4Cy3jv.mjs";
|
|
5
|
+
import { t as h } from "./Slot-CWb612-_.mjs";
|
|
6
|
+
import { n as g, t as le } from "./_projectId-DPzv0CCp.mjs";
|
|
7
|
+
import { t as ue } from "./routes-CJj7SR_K.mjs";
|
|
8
|
+
import { t as _ } from "./helpers-1PpYf-fC.mjs";
|
|
9
|
+
import { t as de } from "./services-D1PbooD1.mjs";
|
|
10
|
+
import { t as fe } from "./flavors-B0rbqffG.mjs";
|
|
11
|
+
import { t as pe } from "./_flavorId-a9Gu66R1.mjs";
|
|
12
|
+
import { t as me } from "./images-CPmMa4SQ.mjs";
|
|
13
|
+
import { t as he } from "./_imageId-D76BxvFY.mjs";
|
|
14
|
+
import { t as ge } from "./securitygroups-DEJQBcxm.mjs";
|
|
15
|
+
import { t as _e } from "./_storageType-CzZ4u9x_.mjs";
|
|
16
|
+
import { t as ve } from "./_floatingIpId-AZ11Ksmu.mjs";
|
|
17
|
+
import { t as ye } from "./_securityGroupId-D85mSigA.mjs";
|
|
18
|
+
import { D as be, t as xe } from "./objects-BE_u5yRt.mjs";
|
|
19
|
+
import { t as Se } from "./ContentHeader-CPJbgYWn.mjs";
|
|
20
|
+
import { t as v } from "./routeInfo-DP3v74Wg.mjs";
|
|
21
|
+
import { n as Ce, t as we } from "./DynamicBreadcrumbContext-CVcUQFou.mjs";
|
|
22
|
+
import { t as Te } from "./useSetBreadcrumb-tn7lBaQV.mjs";
|
|
23
|
+
import { n as Ee, t as De } from "./hooks-D0yKIumu.mjs";
|
|
24
|
+
import { n as Oe, t as ke } from "./useBreadcrumbs-ha3IlaxX.mjs";
|
|
25
|
+
import { Fragment as Ae, jsx as y, jsxs as b } from "react/jsx-runtime";
|
|
26
|
+
import { Suspense as x, useContext as je, useEffect as S, useRef as C, useState as w } from "react";
|
|
27
|
+
import { HeadContent as Me, Link as Ne, Outlet as Pe, RouterProvider as Fe, createFileRoute as T, createRootRouteWithContext as Ie, createRouter as Le, lazyRouteComponent as E, notFound as Re, redirect as D, useNavigate as ze, useRouteContext as Be } from "@tanstack/react-router";
|
|
28
|
+
import { TRPCClientError as Ve } from "@trpc/client";
|
|
29
|
+
import { QueryClient as He, QueryClientProvider as Ue, hashKey as We } from "@tanstack/react-query";
|
|
30
|
+
import { I18nProvider as Ge, Trans as O, useLingui as k } from "@lingui/react";
|
|
31
|
+
import { z as A } from "zod";
|
|
32
|
+
import { ErrorBoundary as j } from "react-error-boundary";
|
|
33
|
+
import { i18n as M } from "@lingui/core";
|
|
31
34
|
//#region src/client/assets/logo.svg?react
|
|
32
|
-
var
|
|
35
|
+
var Ke = (e) => /* @__PURE__ */ b("svg", {
|
|
33
36
|
viewBox: "0 0 500 500",
|
|
34
37
|
xmlns: "http://www.w3.org/2000/svg",
|
|
35
38
|
desc: "Created with imagetracer.js version 1.2.6",
|
|
36
39
|
...e,
|
|
37
40
|
children: [
|
|
38
|
-
/* @__PURE__ */
|
|
41
|
+
/* @__PURE__ */ y("path", {
|
|
39
42
|
className: "shape-1",
|
|
40
43
|
strokeWidth: 1,
|
|
41
44
|
opacity: .9215686274509803,
|
|
42
45
|
d: "M 67.5 0 L 204.5 0 L 207 2.5 L 273 116.5 L 273 119.5 L 205 237 L 67.5 237 L 67 235.5 L 0 120.5 L 0 116.5 L 67.5 0 Z M 78 15 L 18 117 L 18 120 L 76 220 L 78 221 L 195 221 L 254 120 L 252 113 L 219 58 L 197 18 L 195 15 L 78 15 Z "
|
|
43
46
|
}),
|
|
44
|
-
/* @__PURE__ */
|
|
47
|
+
/* @__PURE__ */ y("path", {
|
|
45
48
|
className: "shape-2",
|
|
46
49
|
strokeWidth: 1,
|
|
47
50
|
opacity: .9215686274509803,
|
|
48
51
|
d: "M 295.5 131 L 432.5 131 L 433 132.5 L 471 196.5 L 483 219.5 L 486 222.5 L 486 224.5 L 500 247.5 L 500 251.5 L 433 368 L 295.5 368 L 294 366.5 L 234 263.5 L 227 248.5 L 295.5 131 Z M 304 147 L 286 181 L 246 248 L 246 252 L 304 351 L 305 352 L 424 352 L 427 345 L 482 251 L 482 249 L 424 149 L 423 147 L 304 147 Z "
|
|
49
52
|
}),
|
|
50
|
-
/* @__PURE__ */
|
|
53
|
+
/* @__PURE__ */ y("path", {
|
|
51
54
|
className: "shape-3",
|
|
52
55
|
strokeWidth: 1,
|
|
53
56
|
opacity: .9215686274509803,
|
|
54
57
|
d: "M 67 256 L 204.5 256 L 205 257.5 L 268 364.5 L 273 375.5 L 213 478.5 L 206 493 L 67.5 493 L 67 491.5 L 64 488.5 L 64 486.5 L 42 450.5 L 22 413.5 L 19 410.5 L 19 408.5 L 3 382.5 L 0 376.5 L 0 372.5 L 57 275.5 L 67 256 Z M 78 272 L 18 374 L 18 377 L 36 406 L 76 477 L 78 478 L 195 478 L 254 377 L 254 374 L 247 361 L 196 274 L 196 272 L 78 272 Z "
|
|
55
58
|
}),
|
|
56
|
-
/* @__PURE__ */
|
|
59
|
+
/* @__PURE__ */ y("path", {
|
|
57
60
|
className: "shape-4",
|
|
58
61
|
strokeWidth: 1,
|
|
59
62
|
opacity: 0,
|
|
60
63
|
d: "M 0 0 L 67 0.5 L 0.5 116 L 0 0 Z "
|
|
61
64
|
}),
|
|
62
|
-
/* @__PURE__ */
|
|
65
|
+
/* @__PURE__ */ y("path", {
|
|
63
66
|
className: "shape-5",
|
|
64
67
|
strokeWidth: 1,
|
|
65
68
|
opacity: 0,
|
|
66
69
|
d: "M 205.5 0 L 500 0 L 500 246.5 L 498 245.5 L 433 131 L 295.5 131 L 294 132.5 L 247 215.5 L 229 244.5 L 227 250.5 L 295.5 368 L 432.5 368 L 433 366.5 L 499.5 252 L 500 493 L 206.5 493 L 206 491.5 L 266 388.5 L 273 373.5 L 205 256 L 67.5 256 L 67 257.5 L 0.5 372 L 0 121.5 L 2 122.5 L 67 237 L 204.5 237 L 205 235.5 L 273 119.5 L 273 116.5 L 205.5 0 Z "
|
|
67
70
|
}),
|
|
68
|
-
/* @__PURE__ */
|
|
71
|
+
/* @__PURE__ */ y("path", {
|
|
69
72
|
className: "shape-6",
|
|
70
73
|
strokeWidth: 1,
|
|
71
74
|
opacity: 0,
|
|
72
75
|
d: "M 77.5 15 L 194.5 15 L 197 17.5 L 219 57.5 L 252 112.5 L 254 119.5 L 194.5 221 L 77.5 221 L 76 219.5 L 18 119.5 L 18 116.5 L 77.5 15 Z "
|
|
73
76
|
}),
|
|
74
|
-
/* @__PURE__ */
|
|
77
|
+
/* @__PURE__ */ y("path", {
|
|
75
78
|
className: "shape-7",
|
|
76
79
|
strokeWidth: 1,
|
|
77
80
|
opacity: 0,
|
|
78
81
|
d: "M 304 147 L 422.5 147 L 424 148.5 L 482 248.5 L 482 250.5 L 427 344.5 L 424 352 L 304.5 352 L 304 350.5 L 246 251.5 L 246 247.5 L 286 180.5 L 304 147 Z "
|
|
79
82
|
}),
|
|
80
|
-
/* @__PURE__ */
|
|
83
|
+
/* @__PURE__ */ y("path", {
|
|
81
84
|
className: "shape-8",
|
|
82
85
|
strokeWidth: 1,
|
|
83
86
|
opacity: 0,
|
|
84
87
|
d: "M 77.5 272 L 195.5 272 L 196 273.5 L 247 360.5 L 254 373.5 L 254 376.5 L 194.5 478 L 77.5 478 L 76 476.5 L 36 405.5 L 18 376.5 L 18 373.5 L 77.5 272 Z "
|
|
85
88
|
}),
|
|
86
|
-
/* @__PURE__ */
|
|
89
|
+
/* @__PURE__ */ y("path", {
|
|
87
90
|
className: "shape-9",
|
|
88
91
|
strokeWidth: 1,
|
|
89
92
|
opacity: 0,
|
|
@@ -93,9 +96,9 @@ var Fe = (e) => /* @__PURE__ */ S("svg", {
|
|
|
93
96
|
});
|
|
94
97
|
//#endregion
|
|
95
98
|
//#region src/client/components/Auth/SessionExpirationTimer.tsx
|
|
96
|
-
function
|
|
97
|
-
let [t, n] =
|
|
98
|
-
return
|
|
99
|
+
function qe(e) {
|
|
100
|
+
let [t, n] = w("");
|
|
101
|
+
return S(() => {
|
|
99
102
|
let t = () => {
|
|
100
103
|
let t = /* @__PURE__ */ new Date(), r = e.sessionExpired.getTime() - t.getTime();
|
|
101
104
|
if (r <= 0) {
|
|
@@ -115,10 +118,10 @@ function Ie(e) {
|
|
|
115
118
|
return () => {
|
|
116
119
|
clearInterval(r);
|
|
117
120
|
};
|
|
118
|
-
}, [e.sessionExpired]), /*#__PURE__*/
|
|
119
|
-
className:
|
|
121
|
+
}, [e.sessionExpired]), /*#__PURE__*/ b("div", {
|
|
122
|
+
className: m("text-theme-light pt-2 pb-2 text-xs", e.className),
|
|
120
123
|
children: [
|
|
121
|
-
/*#__PURE__*/
|
|
124
|
+
/*#__PURE__*/ y(O, { id: "1pGUZa" }),
|
|
122
125
|
" ",
|
|
123
126
|
t
|
|
124
127
|
]
|
|
@@ -126,77 +129,74 @@ function Ie(e) {
|
|
|
126
129
|
}
|
|
127
130
|
//#endregion
|
|
128
131
|
//#region src/client/components/navigation/UserMenu.tsx
|
|
129
|
-
function
|
|
130
|
-
let { isAuthenticated: e, isLoading: t, user:
|
|
131
|
-
return e ? /*#__PURE__*/
|
|
132
|
+
function Je() {
|
|
133
|
+
let { isAuthenticated: e, isLoading: t, user: r, logout: i, expiresAt: a } = p();
|
|
134
|
+
return e ? /*#__PURE__*/ y(n, {
|
|
132
135
|
icon: "accountCircle",
|
|
133
|
-
children: /*#__PURE__*/
|
|
134
|
-
/*#__PURE__*/
|
|
136
|
+
children: /*#__PURE__*/ b(c, { children: [
|
|
137
|
+
/*#__PURE__*/ y(ne, { children: /*#__PURE__*/ b(o, { children: [/*#__PURE__*/ b("div", { children: ["User ID: ", r?.name] }), r?.domain?.name && /*#__PURE__*/ b("div", {
|
|
135
138
|
className: "text-xs",
|
|
136
|
-
children: ["User Domain: ",
|
|
139
|
+
children: ["User Domain: ", r.domain.name]
|
|
137
140
|
})] }) }),
|
|
138
|
-
/*#__PURE__*/
|
|
139
|
-
/*#__PURE__*/
|
|
141
|
+
/*#__PURE__*/ y(ie, {}),
|
|
142
|
+
/*#__PURE__*/ b(ne, { children: [/*#__PURE__*/ y(oe, {
|
|
140
143
|
label: t ? "Signing out…" : "Sign Out",
|
|
141
144
|
disabled: t,
|
|
142
|
-
onClick:
|
|
143
|
-
}), a && /*#__PURE__*/
|
|
145
|
+
onClick: i
|
|
146
|
+
}), a && /*#__PURE__*/ y(o, { children: /*#__PURE__*/ y(qe, { sessionExpired: a }) })] })
|
|
144
147
|
] })
|
|
145
148
|
}) : null;
|
|
146
149
|
}
|
|
147
150
|
//#endregion
|
|
148
151
|
//#region src/client/components/navigation/MainNavigation.tsx
|
|
149
|
-
var
|
|
150
|
-
function
|
|
151
|
-
let
|
|
152
|
-
return /*#__PURE__*/
|
|
153
|
-
logo:
|
|
154
|
-
component:
|
|
152
|
+
var N = "text-theme-pageheader-appname-default", Ye = "hover:text-theme-pageheader-appname-hover";
|
|
153
|
+
function Xe({ items: e, handleThemeToggle: t, appName: n, slots: r }) {
|
|
154
|
+
let i = n ?? "Aurora", a = ze();
|
|
155
|
+
return /*#__PURE__*/ b(re, {
|
|
156
|
+
logo: r?.logo ? /*#__PURE__*/ y(h, {
|
|
157
|
+
component: r.logo,
|
|
155
158
|
useShadowDOM: !1
|
|
156
|
-
}) : /*#__PURE__*/
|
|
157
|
-
className:
|
|
158
|
-
title:
|
|
159
|
-
}),
|
|
160
|
-
applicationName: /*#__PURE__*/ x(D, {
|
|
161
|
-
to: "/projects",
|
|
162
|
-
className: h("shrink-0", L, R),
|
|
163
|
-
children: o
|
|
159
|
+
}) : /*#__PURE__*/ y(Ke, {
|
|
160
|
+
className: m("h-6 w-6 shrink-0 fill-current", N),
|
|
161
|
+
title: i
|
|
164
162
|
}),
|
|
163
|
+
applicationName: i,
|
|
164
|
+
onClick: () => a({ to: "/projects" }),
|
|
165
165
|
children: [
|
|
166
|
-
e.map(({ route: e, label: t }, n) => /*#__PURE__*/
|
|
167
|
-
className:
|
|
166
|
+
e.map(({ route: e, label: t }, n) => /*#__PURE__*/ y(Ne, {
|
|
167
|
+
className: m("shrink-0", N, Ye),
|
|
168
168
|
to: e,
|
|
169
169
|
children: t
|
|
170
170
|
}, n)),
|
|
171
|
-
/*#__PURE__*/
|
|
172
|
-
/*#__PURE__*/
|
|
171
|
+
/*#__PURE__*/ y(te, { onToggleTheme: (e) => t?.(e) }),
|
|
172
|
+
/*#__PURE__*/ y(Je, {})
|
|
173
173
|
]
|
|
174
174
|
});
|
|
175
175
|
}
|
|
176
176
|
//#endregion
|
|
177
177
|
//#region src/client/index.css?inline
|
|
178
|
-
var ze = "/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */\n@layer properties{*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-content:\"\"}@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-outline-style:solid}}}@layer theme{:root,:host{--spacing:.25rem;--container-xs:20rem;--container-md:28rem;--container-lg:32rem;--container-3xl:48rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-6xl:3.75rem;--text-6xl--line-height:1;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--leading-relaxed:1.625;--radius-lg:.5rem;--radius-xl:.75rem;--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:\"IBM Plex Sans\", ui-sans-serif, Arial, system-ui, sans-serif;--default-mono-font-family:\"IBM Plex Mono\", ui-monospace, monospace;--color-white:#fff;--color-black:#000;--color-sap-grey-1:#fff;--color-sap-grey-3:#ccc;--color-sap-gold:#f0ab00;--color-sap-green-5:#247230;--color-juno-grey-blue-1:#40464b;--color-juno-grey-blue-2:#30363c;--color-juno-grey-blue-3:#292f36;--color-juno-grey-blue-5:#242a31;--color-juno-grey-blue-6:#1f262d;--color-juno-grey-blue-7:#1c232a;--color-juno-grey-blue-8:#171e25;--color-juno-grey-blue-9:#121920;--color-juno-grey-blue-10:#0d141c;--color-juno-grey-blue-11:#000810;--color-juno-grey-light-1:#f9f9f9;--color-juno-grey-light-3:#f4f4f4;--color-juno-grey-light-5:#eee;--color-juno-grey-light-7:#e9e9e9;--color-juno-grey-light-9:#e3e3e3;--color-juno-grey-light-10:#d7d7d7;--color-juno-blue-1:#cbe8f7;--color-juno-blue-4:#43a2d0;--color-juno-turquoise-5:#15d0e0;--color-juno-turquoise-7:#098590;--color-juno-turquoise-9:#02454b;--color-juno-primary-blue-2:#008fd3;--color-juno-primary-blue-3:#0076cb;--color-juno-primary-blue-5:#003283;--font-sans:\"IBM Plex Sans\", ui-sans-serif, Arial, system-ui, sans-serif;--color-sap-green:var(--color-sap-green-5);--color-theme-accent:var(--color-accent)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", \"Noto Sans\", Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}html,body,.juno-app-body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:IBM Plex Sans,ui-sans-serif,Arial,system-ui,sans-serif;font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));height:100%}.theme-dark,.theme-light{background-color:var(--color-global-bg);color:var(--color-text-default)}a{color:var(--color-text-link)}button:not(:disabled),[role=button]:not(:disabled){cursor:pointer}h1,.juno-h1,h2,.juno-h2,h3,.juno-h3,h4,.juno-h4,h5,.juno-h5,h6,.juno-h6{font-family:var(--font-sans);--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}h1,.juno-h1{font-size:1.69rem;line-height:1.375}h2,.juno-h2{font-size:1.56rem;line-height:1.375}h3,.juno-h3{font-size:1.44rem;line-height:1.375}h4,.juno-h4{font-size:1.28rem;line-height:1.625}h5,.juno-h5{font-size:1.125rem;line-height:1.625}h6,.juno-h6{font-size:1rem;line-height:1.5}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.-top-14{top:calc(var(--spacing) * -14)}.top-1\\/2{top:50%}.right-0{right:0}.right-2{right:calc(var(--spacing) * 2)}.bottom-0{bottom:0}.left-0{left:0}.isolate{isolation:isolate}.z-1{z-index:1}.z-10{z-index:10}.z-50{z-index:50}.col-span-1{grid-column:span 1/span 1}.col-span-full{grid-column:1/-1}.container{width:100%}@media (width>=1856px){.container{max-width:1856px}}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.m-0{margin:0}.mx-auto{margin-inline:auto}.my-2{margin-block:calc(var(--spacing) * 2)}.my-6{margin-block:calc(var(--spacing) * 6)}.-mt-4{margin-top:calc(var(--spacing) * -4)}.mt-0\\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--spacing)}.mb-1\\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-2\\.5{margin-bottom:calc(var(--spacing) * 2.5)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.ml-1{margin-left:var(--spacing)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.h-1{height:var(--spacing)}.h-1\\.5{height:calc(var(--spacing) * 1.5)}.h-4{height:calc(var(--spacing) * 4)}.h-6{height:calc(var(--spacing) * 6)}.h-24{height:calc(var(--spacing) * 24)}.h-96{height:calc(var(--spacing) * 96)}.h-full{height:100%}.max-h-24{max-height:calc(var(--spacing) * 24)}.max-h-48{max-height:calc(var(--spacing) * 48)}.max-h-56{max-height:calc(var(--spacing) * 56)}.max-h-96{max-height:calc(var(--spacing) * 96)}.max-h-\\[65vh\\]{max-height:65vh}.max-h-\\[70vh\\]{max-height:70vh}.min-h-40{min-height:calc(var(--spacing) * 40)}.min-h-100{min-height:calc(var(--spacing) * 100)}.min-h-full{min-height:100%}.w-4{width:calc(var(--spacing) * 4)}.w-6{width:calc(var(--spacing) * 6)}.w-72{width:calc(var(--spacing) * 72)}.w-full{width:100%}.max-w-3xl{max-width:var(--container-3xl)}.max-w-50{max-width:calc(var(--spacing) * 50)}.max-w-100{max-width:calc(var(--spacing) * 100)}.max-w-\\[95vw\\]{max-width:95vw}.max-w-\\[220px\\]{max-width:220px}.max-w-\\[250px\\]{max-width:250px}.max-w-\\[350px\\]{max-width:350px}.max-w-\\[400px\\]{max-width:400px}.max-w-\\[500px\\]{max-width:500px}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:0}.min-w-40{min-width:calc(var(--spacing) * 40)}.flex-1{flex:1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-help{cursor:help}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-none{resize:none}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-\\[max-content_1fr\\]{grid-template-columns:max-content 1fr}.flex-col{flex-direction:column}.flex-row-reverse{flex-direction:row-reverse}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.gap-1{gap:var(--spacing)}.gap-1\\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-16{gap:calc(var(--spacing) * 16)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-6{column-gap:calc(var(--spacing) * 6)}:where(.space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)))}:where(.space-x-3>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 3) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-x-reverse)))}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.self-start{align-self:flex-start}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:2147483647px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-b{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-none{--tw-border-style:none;border-style:none}.border-\\[\\#30363d\\]{border-color:#30363d}.border-theme-accent{border-color:var(--color-accent)}.border-theme-background-lvl-2{border-color:var(--color-background-lvl-2)}.border-theme-background-lvl-3{border-color:var(--color-background-lvl-3)}.border-theme-background-lvl-4{border-color:var(--color-background-lvl-4)}.border-theme-error{border-color:var(--color-error)}.border-transparent{border-color:#0000}.\\!bg-transparent{background-color:#0000!important}.bg-\\[\\#161b22\\]{background-color:#161b22}.bg-theme-accent{background-color:var(--color-accent)}.bg-theme-background-lvl-0,.bg-theme-background-lvl-0\\/50{background-color:var(--color-background-lvl-0)}@supports (color:color-mix(in lab, red, red)){.bg-theme-background-lvl-0\\/50{background-color:color-mix(in oklab, var(--color-background-lvl-0) 50%, transparent)}}.bg-theme-background-lvl-1{background-color:var(--color-background-lvl-1)}.bg-theme-background-lvl-2{background-color:var(--color-background-lvl-2)}.bg-theme-background-lvl-4{background-color:var(--color-background-lvl-4)}.bg-theme-info{background-color:var(--color-info)}.bg-theme-warning\\/10{background-color:var(--color-warning)}@supports (color:color-mix(in lab, red, red)){.bg-theme-warning\\/10{background-color:color-mix(in oklab, var(--color-warning) 10%, transparent)}}.bg-transparent{background-color:#0000}.fill-current{fill:currentColor}.p-0{padding:0}.p-0\\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:var(--spacing)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\\.5{padding-block:calc(var(--spacing) * .5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-12{padding-block:calc(var(--spacing) * 12)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pr-0{padding-right:0}.pr-1{padding-right:var(--spacing)}.pr-3{padding-right:calc(var(--spacing) * 3)}.pr-10{padding-right:calc(var(--spacing) * 10)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pl-0{padding-left:0}.pl-1{padding-left:var(--spacing)}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-5{padding-left:calc(var(--spacing) * 5)}.pl-6{padding-left:calc(var(--spacing) * 6)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-mono{font-family:IBM Plex Mono,ui-monospace,monospace}.text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-4{--tw-leading:calc(var(--spacing) * 4);line-height:calc(var(--spacing) * 4)}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-7{--tw-leading:calc(var(--spacing) * 7);line-height:calc(var(--spacing) * 7)}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\\[overflow-wrap\\:anywhere\\]{overflow-wrap:anywhere}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.text-inherit{color:inherit}.text-juno-grey-light-1{color:#f9f9f9}.text-theme-danger{color:var(--color-danger)}.text-theme-default{color:var(--color-text-default)}.text-theme-error{color:var(--color-error)}.text-theme-high{color:var(--color-text-high)}.text-theme-highest{color:var(--color-text-highest)}.text-theme-info{color:var(--color-info)}.text-theme-light{color:var(--color-text-light)}.text-theme-link{color:var(--color-text-link)}.text-theme-pageheader-appname-default{color:var(--color-pageheader-appname-text-default)}.text-theme-success{color:var(--color-success)}.text-theme-warning{color:var(--color-warning)}.text-white{color:#fff}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.opacity-60{opacity:.6}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition-\\[border-color\\,box-shadow\\]{transition-property:border-color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.outline-none{--tw-outline-style:none;outline-style:none}.select-all{-webkit-user-select:all;user-select:all}.select-none{-webkit-user-select:none;user-select:none}.placeholder\\:text-theme-light::placeholder{color:var(--color-text-light)}.last\\:border-0:last-child{border-style:var(--tw-border-style);border-width:0}.last\\:pb-0:last-child{padding-bottom:0}.focus-within\\:border-theme-accent:focus-within{border-color:var(--color-accent)}.focus-within\\:ring-2:focus-within{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-within\\:ring-theme-accent:focus-within{--tw-ring-color:var(--color-accent)}.focus-within\\:ring-theme-error:focus-within{--tw-ring-color:var(--color-error)}@media (hover:hover){.hover\\:border-theme-accent:hover{border-color:var(--color-accent)}.hover\\:bg-theme-background-lvl-1:hover{background-color:var(--color-background-lvl-1)}.hover\\:bg-theme-background-lvl-2:hover{background-color:var(--color-background-lvl-2)}.hover\\:text-theme-accent:hover{color:var(--color-accent)}.hover\\:text-theme-danger:hover{color:var(--color-danger)}.hover\\:text-theme-default:hover{color:var(--color-text-default)}.hover\\:text-theme-high:hover{color:var(--color-text-high)}.hover\\:text-theme-pageheader-appname-hover:hover{color:var(--color-pageheader-appname-text-hover)}.hover\\:underline:hover{text-decoration-line:underline}}.focus-visible\\:outline:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\\:outline-theme-focus:focus-visible{outline-color:var(--color-focus)}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:cursor-wait:disabled{cursor:wait}.disabled\\:no-underline:disabled{text-decoration-line:none}.disabled\\:opacity-60:disabled{opacity:.6}@media (width>=40rem){.sm\\:w-auto{width:auto}.sm\\:min-w-0{min-width:0}.sm\\:min-w-40{min-width:calc(var(--spacing) * 40)}.sm\\:flex-1{flex:1}.sm\\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\\:flex-row{flex-direction:row}.sm\\:items-center{align-items:center}.sm\\:items-end{align-items:flex-end}.sm\\:justify-between{justify-content:space-between}.sm\\:px-12{padding-inline:calc(var(--spacing) * 12)}}@media (width>=48rem){.md\\:ml-auto{margin-left:auto}.md\\:w-auto{width:auto}.md\\:max-w-\\[500px\\]{max-width:500px}.md\\:min-w-25{min-width:calc(var(--spacing) * 25)}.md\\:min-w-37\\.5{min-width:calc(var(--spacing) * 37.5)}.md\\:min-w-45{min-width:calc(var(--spacing) * 45)}.md\\:flex-row{flex-direction:row}.md\\:items-center{align-items:center}.md\\:px-20{padding-inline:calc(var(--spacing) * 20)}}@media (width>=64rem){.lg\\:w-2\\/3{width:66.6667%}.lg\\:max-w-\\[1000px\\]{max-width:1000px}.lg\\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=80rem){.xl\\:max-w-\\[1100px\\]{max-width:1100px}.xl\\:flex-row{flex-direction:row}}@media (width>=96rem){.\\32 xl\\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}}:root,:host{--grid-columns:12;--grid-row-margin-x:-.5rem;--grid-column-flex-grow:0;--grid-column-flex-shrink:1;--grid-column-flex-basis:auto;--grid-column-default-width:8.33333%;--color-white:#fff;--color-black:#000;--color-sap-grey-1:#fff;--color-sap-grey-2:#e1e1e1;--color-sap-grey-3:#ccc;--color-sap-grey-4:#999;--color-sap-grey-5:#7f7f7f;--color-sap-grey-6:#666;--color-sap-grey-7:#4b4b4b;--color-sap-grey-8:#000;--color-sap-blue-1:#0faaff;--color-sap-blue-2:#008fd3;--color-sap-blue-3:#0076cb;--color-sap-blue-4:#0f46a7;--color-sap-blue-5:#003283;--color-sap-blue-6:#00195a;--color-sap-gold:#f0ab00;--color-sap-purple-1:#dc0096;--color-sap-purple-2:#be008c;--color-sap-purple-3:#970a82;--color-sap-purple-4:#760a85;--color-sap-purple-5:#45157e;--color-sap-purple-6:#3c1464;--color-sap-green-1:#bcdc50;--color-sap-green-2:#93c939;--color-sap-green-3:#4fb81c;--color-sap-green-4:#348b26;--color-sap-green-5:#247230;--color-sap-green-6:#0f4b3c;--color-sap-orange-1:#ffaf00;--color-sap-orange-2:#fa9100;--color-sap-orange-3:#eb7300;--color-sap-orange-4:#e35500;--color-sap-orange-5:#d04512;--color-sap-orange-6:#bc3618;--color-juno-grey-blue-1:#40464b;--color-juno-grey-blue-2:#30363c;--color-juno-grey-blue-3:#292f36;--color-juno-grey-blue-4:#262c33;--color-juno-grey-blue-5:#242a31;--color-juno-grey-blue-6:#1f262d;--color-juno-grey-blue-7:#1c232a;--color-juno-grey-blue-8:#171e25;--color-juno-grey-blue-9:#121920;--color-juno-grey-blue-10:#0d141c;--color-juno-grey-blue-11:#000810;--color-juno-grey-light-1:#f9f9f9;--color-juno-grey-light-2:#f7f7f7;--color-juno-grey-light-3:#f4f4f4;--color-juno-grey-light-4:#f1f1f1;--color-juno-grey-light-5:#eee;--color-juno-grey-light-6:#ebebeb;--color-juno-grey-light-7:#e9e9e9;--color-juno-grey-light-8:#e6e6e6;--color-juno-grey-light-9:#e3e3e3;--color-juno-grey-light-10:#d7d7d7;--color-juno-blue-1:#cbe8f7;--color-juno-blue-2:#a5d3ea;--color-juno-blue-3:#89c9e8;--color-juno-blue-4:#43a2d0;--color-juno-blue-5:#007db8;--color-juno-blue-6:#1e6a92;--color-juno-blue-7:#0a6799;--color-juno-blue-8:#075580;--color-juno-blue-9:#054669;--color-juno-blue-10:#033754;--color-juno-turquoise-1:#c5f7ff;--color-juno-turquoise-2:#84f1ff;--color-juno-turquoise-3:#19e8fa;--color-juno-turquoise-4:#16d9ea;--color-juno-turquoise-5:#15d0e0;--color-juno-turquoise-6:#0fa7b4;--color-juno-turquoise-7:#098590;--color-juno-turquoise-8:#05646d;--color-juno-turquoise-9:#02454b;--color-juno-turquoise-10:#012904;--color-juno-primary-blue-1:#0faaff;--color-juno-primary-blue-2:#008fd3;--color-juno-primary-blue-3:#0076cb;--color-juno-primary-blue-4:#0f46a7;--color-juno-primary-blue-5:#003283;--color-juno-primary-blue-6:#00195a}.theme-light{--color-accent:#0076cb;--color-info:#0076cb;--color-success:#4fb81c;--color-warning:#ffaf00;--color-danger:#c70000;--color-error:#c70000;--color-juno-text-light:#969696;--color-juno-text-default:#4c4c4c;--color-juno-text-high:#404040;--color-juno-text-highest:#000;--color-juno-text-disabled:#b7b7b7;--color-juno-primary-danger-1:#eb9292;--color-juno-primary-danger-2:#da5d5d;--color-juno-primary-danger-3:#d54040;--color-juno-primary-danger-4:#c70000;--color-juno-primary-danger-5:#a50b0b;--color-background-lvl-0:var(--color-white);--color-background-lvl-1:var(--color-juno-grey-light-1);--color-background-lvl-2:var(--color-juno-grey-light-3);--color-background-lvl-3:var(--color-juno-grey-light-7);--color-background-lvl-4:var(--color-juno-grey-light-9);--color-background-lvl-5:var(--color-juno-grey-light-10);--color-global-bg:var(--color-juno-grey-light-1);--color-border-high:var(--color-juno-grey-light-9);--color-border-higher:#b7b7b7;--color-global-text:var(--color-juno-text-default);--color-content-area-bg:var(--color-background-lvl-0);--color-focus:var(--color-accent);--color-text-highest:var(--color-juno-text-highest);--color-text-high:var(--color-juno-text-high);--color-text-default:var(--color-juno-text-default);--color-text-light:var(--color-juno-text-light);--color-text-disabled:var(--color-juno-text-disabled);--color-text-link:var(--color-accent);--color-badge-default-bg:var(--color-juno-grey-light-3);--color-button-primary-text:var(--color-white);--color-button-primary-bg:var(--color-juno-primary-blue-3);--color-button-primary-hover-text:var(--color-white);--color-button-primary-hover-bg:var(--color-juno-primary-blue-2);--color-button-primary-active-text:var(--color-white);--color-button-primary-active-bg:var(--color-juno-primary-blue-5);--color-button-default-text:var(--color-text-high);--color-button-default-bg:var(--color-background-lvl-4);--color-button-default-border:var(--color-background-lvl-4);--color-button-default-hover-text:var(--color-text-high);--color-button-default-hover-bg:var(--color-background-lvl-3);--color-button-default-hover-border:var(--color-background-lvl-3);--color-button-default-active-text:var(--color-text-high);--color-button-default-active-bg:var(--color-background-lvl-2);--color-button-default-active-border:var(--color-background-lvl-4);--color-button-subdued-text:var(--color-text-default);--color-button-subdued-icon:var(--color-text-default);--color-button-subdued-bg:var(--color-background-lvl-3);--color-button-subdued-border:var(--color-background-lvl-4);--color-button-subdued-hover-text:var(--color-text-default);--color-button-subdued-hover-bg:var(--color-background-lvl-1);--color-button-subdued-hover-border:var(--color-background-lvl-4);--color-button-subdued-active-text:var(--color-text-default);--color-button-subdued-active-bg:var(--color-background-lvl-0);--color-button-subdued-active-border:var(--color-background-lvl-4);--color-button-primary-danger-text:var(--color-white);--color-button-primary-danger-bg:var(--color-juno-primary-danger-4);--color-button-primary-danger-hover-text:var(--color-white);--color-button-primary-danger-hover-bg:var(--color-juno-primary-danger-3);--color-button-primary-danger-active-text:var(--color-white);--color-button-primary-danger-active-bg:var(--color-juno-primary-danger-5);--color-divider-border:var(--color-border-default);--color-severity-critical:#a50b0b;--color-severity-very-high:#df0000;--color-severity-high:#f45900;--color-severity-medium:#f38a00;--color-severity-low:#ffe500;--color-severity-none:var(--color-text-disabled);--color-severity-unknown:var(--color-text-light);--color-icon-danger:var(--danger);--color-icon-info:var(--color-accent);--color-icon-success:var(--color-sap-green);--color-icon-warning:var(--color-warning);--color-icon-severityCritical:var(--color-severity-critical);--color-icon-severityVeryHigh:var(--color-severity-very-high);--color-icon-severityHigh:var(--color-severity-high);--color-icon-severityMedium:var(--color-severity-medium);--color-icon-severityLow:var(--color-severity-low);--color-info-bg:#e5f1fa;--color-warning-bg:#fff7e5;--color-success-bg:#edf8e8;--color-danger-bg:#f9e5e5;--color-error-bg:#f9e5e5;--color-message-danger-border:var(--color-danger);--color-message-danger-bg:var(--color-danger-bg);--color-message-default-border:var(--color-info);--color-message-default-bg:var(--color-info-bg);--color-message-error-border:var(--color-error);--color-message-error-bg:var(--color-error-bg);--color-message-warning-border:var(--color-warning);--color-message-warning-bg:var(--color-warning-bg);--color-message-success-border:var(--color-success);--color-message-success-bg:var(--color-success-bg);--color-introbox-bg:var(--color-background-lvl-2);--color-introbox-border:var(--color-accent);--color-textinput-bg:var(--color-background-lvl-3);--color-textinput-default-border:var(--color-background-lvl-4);--color-textinput-text:var(--color-juno-text-high);--color-textinput-placeholder-text:var(--color-juno-text-high);--color-textinput-focus-border:var(--color-accent);--color-textinput-autofill-text:var(--color-black);--color-textinput-autofill-bg:var(--color-juno-blue-1);--color-textinput-autofill-label:var(--color-juno-text-default);--color-select-bg:var(--color-background-lvl-3);--color-card-background-default:var(--color-white);--color-card-border-default:var(--color-border-default);--color-card-border-hover:var(--color-border-high);--color-checkbox-bg:var(--color-background-lvl-5);--color-checkbox-checked-color:var(--color-accent);--color-radio-bg:var(--color-background-lvl-5);--color-radio-checked-bg:var(--color-accent);--color-switch-default-border:var(--color-juno-text-default);--color-switch-handle-bg:var(--color-juno-text-default);--color-switch-handle-checked-bg:var(--color-accent);--color-required-bg:var(--color-accent);--color-spinner-primary:var(--color-accent);--color-syntax-highlight-base00:var(--color-codeblock-bg);--color-syntax-highlight-base01:var(--color-juno-grey-light-3);--color-syntax-highlight-base02:var(--color-sap-grey-3);--color-syntax-highlight-base03:var(--color-sap-grey-3);--color-syntax-highlight-base04:var(--color-sap-grey-3);--color-syntax-highlight-base05:var(--color-juno-text-high);--color-syntax-highlight-base06:red;--color-syntax-highlight-base07:var(--color-juno-text-high);--color-syntax-highlight-base08:var(--color-juno-grey-blue-6);--color-syntax-highlight-base09:var(--color-juno-blue-4);--color-syntax-highlight-base0A:var(--color-juno-grey-blue-6);--color-syntax-highlight-base0B:var(--color-juno-blue-4);--color-syntax-highlight-base0C:var(--color-sap-gold);--color-syntax-highlight-base0D:var(--color-sap-gold);--color-syntax-highlight-base0E:var(--color-juno-blue-4);--color-syntax-highlight-base0F:var(--color-juno-blue-4);--color-datagridtoolbar-bg:var(--color-background-lvl-1);--color-datagridrow-selected:var(--color-accent);--color-datalist-row-border:var(--color-background-lvl-1);--color-datalistrow-selected:var(--color-accent);--color-codeblock-bg:var(--color-background-lvl-2);--color-codeblock-bar-border:var(--color-background-lvl-4);--color-codeblock-footer-border:var(--color-background-lvl-4);--color-status-details-bg:var(--color-background-lvl-2);--color-status-details-text:var(--color-text-default);--color-status-details-border:var(--color-border-default);--color-status-code:var(--color-text-disabled);--color-panel-bg:#fcfcfccc;--color-pageheader-background:var(--color-juno-grey-blue-11);--color-pageheader-border:var(--color-juno-grey-light-7);--color-pageheader-text:#fffefd;--color-pageheader-appname-text-default:#fffefd;--color-pageheader-appname-text-hover:#fffefd;--color-pageheader-appname-text-active:#fffefd;--color-tabnavigation-top-bg:var(--color-juno-grey-light-5);--color-tabnavigation-content-bottom-border:var(--color-background-lvl-4);--color-filters-bg:var(--color-background-lvl-1);--color-filter-input-bg:var(--color-background-lvl-0);--color-filter-input-border:var(--color-background-lvl-4);--color-filter-input-textinput-bg:transparent;--color-filter-pill-border:var(--color-background-lvl-4);--color-filter-pill-key-bg:var(--color-background-lvl-4);--color-modal-backdrop-bg:#0003;--color-box-bg:var(--color-background-lvl-1);--color-box-border:var(--color-background-lvl-3);--color-box-info-bg:var(--color-info-bg);--color-box-info-border:var(--color-info);--color-box-success-bg:var(--color-success-bg);--color-box-success-border:var(--color-success);--color-box-warning-bg:var(--color-warning-bg);--color-box-warning-border:var(--color-warning);--color-box-error-bg:var(--color-error-bg);--color-box-error-border:var(--color-error);--color-box-danger-bg:var(--color-danger-bg);--color-box-danger-border:var(--color-danger);--color-sidenavigation-item-active:var(--color-black);--color-sidenavigation-item-active-bg:var(--color-background-lvl-0);--color-sidenav-background:var(--color-white);--color-sidenav-border:var(--color-juno-grey-light-7);--color-sidenav-list-background:var(--color-white);--color-sidenav-item-background-default:var(--color-white);--color-sidenav-item-background-hover:var(--color-juno-grey-light-1);--color-sidenav-item-background-active:var(--color-juno-grey-light-7);--color-sidenav-item-background-selected:var(--color-juno-grey-light-7);--color-sidenav-item-text-default:var(--color-juno-text-high);--color-sidenav-item-text-hover:var(--color-juno-text-high);--color-sidenav-item-text-active:var(--color-juno-text-high);--color-sidenav-item-text-selected:var(--color-juno-text-high);--color-sidenav-item-border-selected:var(--color-theme-accent);--color-topnavigation-item-active:var(--color-black);--color-topnavigation-item-bg:var(--color-sap-grey-1);--color-topnavigation-item-active-bg:var(--color-juno-grey-light-3);--color-datetimepicker-calendar-bg:var(--color-background-lvl-2);--color-datetimepicker-disabled-date-color:#4c4c4c66;--color-datetimepicker-disabled-date-hover-bg:#0076cb80;--color-datetimepicker-range-bg:#6294d1;--box-shadow-default:0 1px 2px 0 #2236494d;--box-shadow-hover:0 0 0 1px var(--color-color-shadow,#4f4f4f33), 0 2px 8px 0 #0003;--color-pagefooter-text:var(--color-text-light);--color-pagefooter-background:var(--color-white);--color-pagefooter-border:var(--color-border-default);--color-pagefooter-title:var(--color-text-default);--color-pagefooter-item-default:var(--color-text-light);--color-pagefooter-item-hover:var(--color-text-light);--color-pagefooter-item-active:var(--color-accent);--color-border-default:var(--color-juno-grey-light-7)}.theme-dark{--color-accent:#15d0e0;--color-info:#15d0e0;--color-success:#3bff5b;--color-warning:#ffc600;--color-danger:#ff4110;--color-error:#ff4110;--color-juno-text-light:#7a7a7a;--color-juno-text-default:#bbb;--color-juno-text-high:#dedfe0;--color-juno-text-highest:#fffefd;--color-juno-text-disabled:#5c5c5c;--color-juno-primary-danger-1:#e7a389;--color-juno-primary-danger-2:#de7e5b;--color-juno-primary-danger-3:#d04512;--color-juno-primary-danger-4:#bb3e10;--color-juno-primary-danger-5:#a4360e;--color-background-lvl-0:var(--color-juno-grey-blue-9);--color-background-lvl-1:var(--color-juno-grey-blue-7);--color-background-lvl-2:var(--color-juno-grey-blue-5);--color-background-lvl-3:var(--color-juno-grey-blue-3);--color-background-lvl-4:var(--color-juno-grey-blue-2);--color-background-lvl-5:var(--color-juno-grey-blue-1);--color-global-bg:var(--color-juno-grey-blue-10);--color-border-high:var(--color-juno-grey-blue-1);--color-border-higher:#5c5c5c;--color-global-text:var(--color-juno-text-default);--color-content-area-bg:var(--color-background-lvl-0);--color-focus:var(--color-accent);--color-focus-border:var(--color-accent);--color-text-highest:var(--color-juno-text-highest);--color-text-high:var(--color-juno-text-high);--color-text-default:var(--color-juno-text-default);--color-text-light:var(--color-juno-text-light);--color-text-disabled:var(--color-juno-text-disabled);--color-text-link:var(--color-accent);--color-badge-default-bg:var(--color-juno-grey-blue-3);--color-button-primary-bg:var(--color-juno-turquoise-7);--color-button-primary-text:var(--color-white);--color-button-primary-hover-bg:var(--color-juno-turquoise-5);--color-button-primary-hover-text:var(--color-white);--color-button-primary-active-bg:var(--color-juno-turquoise-9);--color-button-primary-active-text:var(--color-white);--color-button-default-text:var(--color-text-high);--color-button-default-icon:var(--color-text-high);--color-button-default-bg:var(--color-background-lvl-5);--color-button-default-border:var(--color-background-lvl-5);--color-button-default-hover-text:var(--color-text-high);--color-button-default-hover-bg:var(--color-background-lvl-3);--color-button-default-hover-border:var(--color-background-lvl-3);--color-button-default-active-text:var(--color-text-high);--color-button-default-active-bg:var(--color-background-lvl-2);--color-button-default-active-border:var(--color-background-lvl-4);--color-button-subdued-text:var(--color-text-default);--color-button-subdued-icon:var(--color-text-default);--color-button-subdued-bg:var(--color-background-lvl-3);--color-button-subdued-border:var(--color-background-lvl-4);--color-button-subdued-hover-text:var(--color-text-default);--color-button-subdued-hover-bg:var(--color-background-lvl-2);--color-button-subdued-hover-border:var(--color-background-lvl-4);--color-button-subdued-active-text:var(--color-text-default);--color-button-subdued-active-bg:var(--color-background-lvl-0);--color-button-subdued-active-border:var(--color-background-lvl-4);--color-button-primary-danger-text:var(--color-white);--color-button-primary-danger-bg:var(--color-juno-primary-danger-4);--color-button-primary-danger-hover-text:var(--color-white);--color-button-primary-danger-hover-bg:var(--color-juno-primary-danger-3);--color-button-primary-danger-active-text:var(--color-white);--color-button-primary-danger-active-bg:var(--color-juno-primary-danger-5);--color-divider-border:var(--color-border-default);--color-severity-critical:#ff1214;--color-severity-very-high:#ff4410;--color-severity-high:#ff6e0d;--color-severity-medium:#ffa408;--color-severity-low:#fff701;--color-severity-none:var(--color-text-disabled);--color-severity-unknown:var(--color-text-light);--color-icon-danger:var(--color-juno-danger);--color-icon-info:var(--color-accent);--color-icon-success:var(--color-sap-green-5);--color-icon-warning:var(--color-warning);--color-icon-severityCritical:var(--color-severity-critical);--color-icon-severityVeryHigh:var(--color-severity-very-high);--color-icon-severityHigh:var(--color-severity-high);--color-icon-severityMedium:var(--color-severity-medium);--color-icon-severityLow:var(--color-severity-low);--color-info-bg:#0e3039;--color-warning-bg:#312f18;--color-success-bg:#143022;--color-danger-bg:#311b1a;--color-error-bg:#311b1a;--color-message-danger-border:var(--color-danger);--color-message-danger-bg:var(--color-danger-bg);--color-message-default-border:var(--color-info);--color-message-default-bg:var(--color-info-bg);--color-message-error-border:var(--color-error);--color-message-error-bg:var(--color-error-bg);--color-message-warning-border:var(--color-warning);--color-message-warning-bg:var(--color-warning-bg);--color-message-success-border:var(--color-success);--color-message-success-bg:var(--color-success-bg);--color-introbox-bg:var(--color-background-lvl-2);--color-introbox-border:var(--color-accent);--color-textinput-bg:var(--color-background-lvl-3);--color-textinput-default-border:var(--color-background-lvl-4);--color-textinput-text:var(--color-juno-text-high);--color-textinput-placeholder-text:var(--color-juno-text-high);--color-textinput-focus-border:var(--color-accent);--color-textinput-autofill-text:var(--color-black);--color-textinput-autofill-bg:var(--color-juno-blue-1);--color-textinput-autofill-label:var(--color-black);--color-select-bg:var(--color-background-lvl-4);--color-card-background-default:var(--color-juno-grey-blue-10);--color-card-border-default:var(--color-border-default);--color-card-border-hover:var(--color-border-high);--color-checkbox-bg:var(--color-background-lvl-5);--color-checkbox-checked-color:var(--color-accent);--color-radio-bg:var(--color-background-lvl-5);--color-radio-checked-bg:var(--color-accent);--color-switch-default-border:var(--color-juno-text-high);--color-switch-handle-bg:var(--color-juno-text-high);--color-switch-handle-checked-bg:var(--color-accent);--color-switch-hover-border:var(--color-accent);--color-required-bg:var(--color-accent);--color-spinner-primary:var(--color-accent);--color-syntax-highlight-base00:var(--color-codeblock-bg);--color-syntax-highlight-base01:var(--color-juno-grey-blue-3);--color-syntax-highlight-base02:#bbb;--color-syntax-highlight-base03:var(--color-sap-grey-3);--color-syntax-highlight-base04:var(--color-sap-grey-3);--color-syntax-highlight-base05:#dedfe0;--color-syntax-highlight-base06:red;--color-syntax-highlight-base07:#dedfe0;--color-syntax-highlight-base08:var(--color-juno-grey-blue-6);--color-syntax-highlight-base09:var(--color-juno-blue-4);--color-syntax-highlight-base0A:var(--color-juno-grey-blue-6);--color-syntax-highlight-base0B:var(--color-juno-blue-4);--color-syntax-highlight-base0C:var(--color-sap-gold);--color-syntax-highlight-base0D:var(--color-sap-gold);--color-syntax-highlight-base0E:var(--color-juno-blue-4);--color-syntax-highlight-base0F:var(--color-juno-blue-4);--color-datagridtoolbar-bg:var(--color-background-lvl-1);--color-datagridrow-selected:var(--color-accent);--color-datalist-row-border:var(--color-background-lvl-1);--color-datalistrow-selected:var(--color-accent);--color-codeblock-bg:var(--color-background-lvl-2);--color-codeblock-bar-border:var(--color-background-lvl-4);--color-codeblock-footer-border:var(--color-background-lvl-4);--color-status-details-bg:var(--color-background-lvl-2);--color-status-details-text:var(--color-text-default);--color-status-details-border:var(--color-border-default);--color-status-code:var(--color-text-disabled);--color-panel-bg:rgb(from var(--color-juno-grey-blue-11) r g b / .75);--color-pageheader-background:var(--color-juno-grey-blue-11);--color-pageheader-border:var(--color-juno-grey-blue-3);--color-pageheader-text:var(--color-text-highest);--color-pageheader-appname-text-default:var(--color-text-highest);--color-pageheader-appname-text-hover:var(--color-text-highest);--color-pageheader-appname-text-active:var(--color-text-highest);--color-tabnavigation-top-bg:var(--color-juno-grey-blue-8);--color-tabnavigation-content-bottom-border:var(--color-background-lvl-4);--color-filters-bg:var(--color-background-lvl-1);--color-filter-input-bg:var(--color-background-lvl-0);--color-filter-input-border:var(--color-background-lvl-4);--color-filter-input-textinput-bg:transparent;--color-filter-pill-border:var(--color-background-lvl-4);--color-filter-pill-key-bg:var(--color-background-lvl-4);--color-modal-backdrop-bg:#3c464b99;--color-box-bg:var(--color-background-lvl-1);--color-box-border:var(--color-background-lvl-3);--color-box-info-bg:var(--color-info-bg);--color-box-info-border:var(--color-info);--color-box-success-bg:var(--color-success-bg);--color-box-success-border:var(--color-success);--color-box-warning-bg:var(--color-warning-bg);--color-box-warning-border:var(--color-warning);--color-box-error-bg:var(--color-error-bg);--color-box-error-border:var(--color-error);--color-box-danger-bg:var(--color-danger-bg);--color-box-danger-border:var(--color-danger);--color-sidenavigation-item-active:var(--color-white);--color-sidenavigation-item-active-bg:var(--color-background-lvl-0);--color-sidenav-background:var(--color-juno-grey-blue-10);--color-sidenav-border:var(--color-juno-grey-blue-3);--color-sidenav-list-background:var(--color-juno-grey-blue-10);--color-sidenav-item-background-default:var(--color-juno-grey-blue-10);--color-sidenav-item-background-hover:var(--color-juno-grey-blue-5);--color-sidenav-item-background-active:var(--color-juno-grey-blue-7);--color-sidenav-item-background-selected:var(--color-juno-grey-blue-7);--color-sidenav-item-text-default:var(--color-juno-text-high);--color-sidenav-item-text-hover:var(--color-juno-text-high);--color-sidenav-item-text-active:var(--color-juno-text-high);--color-sidenav-item-text-selected:var(--color-juno-text-high);--color-sidenav-item-border-selected:var(--color-theme-accent);--color-topnavigation-item-active:var(--color-white);--color-topnavigation-item-bg:var(--color-juno-grey-blue-7);--color-topnavigation-item-active-bg:var(--color-juno-grey-blue-5);--color-datetimepicker-calendar-bg:var(--color-background-lvl-1);--color-datetimepicker-disabled-date-color:#bbb6;--color-datetimepicker-disabled-date-hover-bg:#15d0e080;--color-datetimepicker-range-bg:#4fa3b0;--box-shadow-default:0 1px 2px 0 #2236494d;--box-shadow-hover:0 1px 2px 0 #2236494d;--color-pagefooter-text:var(--color-text-light);--color-pagefooter-background:var(--color-juno-grey-blue-10);--color-pagefooter-border:var(--color-border-default);--color-pagefooter-title:var(--color-text-default);--color-pagefooter-item-default:var(--color-text-light);--color-pagefooter-item-hover:var(--color-text-light);--color-pagefooter-item-active:var(--color-accent);--color-border-default:var(--color-juno-grey-blue-3)}html,body{flex-direction:column;height:100%;margin:0;padding:0;display:flex}#app{flex-grow:1}@property --tw-rotate-x{syntax:\"*\";inherits:false}@property --tw-rotate-y{syntax:\"*\";inherits:false}@property --tw-rotate-z{syntax:\"*\";inherits:false}@property --tw-skew-x{syntax:\"*\";inherits:false}@property --tw-skew-y{syntax:\"*\";inherits:false}@property --tw-space-y-reverse{syntax:\"*\";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:\"*\";inherits:false;initial-value:0}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-leading{syntax:\"*\";inherits:false}@property --tw-font-weight{syntax:\"*\";inherits:false}@property --tw-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:\"*\";inherits:false}@property --tw-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:\"*\";inherits:false}@property --tw-inset-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:\"*\";inherits:false}@property --tw-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:\"*\";inherits:false}@property --tw-inset-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:\"*\";inherits:false}@property --tw-ring-offset-width{syntax:\"<length>\";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:\"*\";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:\"*\";inherits:false}@property --tw-brightness{syntax:\"*\";inherits:false}@property --tw-contrast{syntax:\"*\";inherits:false}@property --tw-grayscale{syntax:\"*\";inherits:false}@property --tw-hue-rotate{syntax:\"*\";inherits:false}@property --tw-invert{syntax:\"*\";inherits:false}@property --tw-opacity{syntax:\"*\";inherits:false}@property --tw-saturate{syntax:\"*\";inherits:false}@property --tw-sepia{syntax:\"*\";inherits:false}@property --tw-drop-shadow{syntax:\"*\";inherits:false}@property --tw-drop-shadow-color{syntax:\"*\";inherits:false}@property --tw-drop-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:\"*\";inherits:false}@property --tw-backdrop-blur{syntax:\"*\";inherits:false}@property --tw-backdrop-brightness{syntax:\"*\";inherits:false}@property --tw-backdrop-contrast{syntax:\"*\";inherits:false}@property --tw-backdrop-grayscale{syntax:\"*\";inherits:false}@property --tw-backdrop-hue-rotate{syntax:\"*\";inherits:false}@property --tw-backdrop-invert{syntax:\"*\";inherits:false}@property --tw-backdrop-opacity{syntax:\"*\";inherits:false}@property --tw-backdrop-saturate{syntax:\"*\";inherits:false}@property --tw-backdrop-sepia{syntax:\"*\";inherits:false}@property --tw-duration{syntax:\"*\";inherits:false}@property --tw-outline-style{syntax:\"*\";inherits:false;initial-value:solid}", z = Ee()({
|
|
179
|
-
component:
|
|
180
|
-
notFoundComponent:
|
|
181
|
-
errorComponent:
|
|
182
|
-
pendingComponent:
|
|
178
|
+
var Ze = "/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */\n@layer properties{*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-content:\"\"}@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-outline-style:solid}}}@layer theme{:root,:host{--spacing:.25rem;--container-xs:20rem;--container-md:28rem;--container-lg:32rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--leading-relaxed:1.625;--radius-lg:.5rem;--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:\"IBM Plex Sans\", ui-sans-serif, Arial, system-ui, sans-serif;--default-mono-font-family:\"IBM Plex Mono\", ui-monospace, monospace;--color-white:#fff;--color-black:#000;--color-sap-grey-1:#fff;--color-sap-grey-3:#ccc;--color-sap-gold:#f0ab00;--color-sap-green-5:#247230;--color-juno-grey-blue-1:#40464b;--color-juno-grey-blue-2:#30363c;--color-juno-grey-blue-3:#292f36;--color-juno-grey-blue-5:#242a31;--color-juno-grey-blue-6:#1f262d;--color-juno-grey-blue-7:#1c232a;--color-juno-grey-blue-8:#171e25;--color-juno-grey-blue-9:#121920;--color-juno-grey-blue-10:#0d141c;--color-juno-grey-blue-11:#000810;--color-juno-grey-light-1:#f9f9f9;--color-juno-grey-light-3:#f4f4f4;--color-juno-grey-light-5:#eee;--color-juno-grey-light-7:#e9e9e9;--color-juno-grey-light-9:#e3e3e3;--color-juno-grey-light-10:#d7d7d7;--color-juno-blue-1:#cbe8f7;--color-juno-blue-4:#43a2d0;--color-juno-turquoise-5:#15d0e0;--color-juno-turquoise-7:#098590;--color-juno-turquoise-9:#02454b;--color-juno-primary-blue-2:#008fd3;--color-juno-primary-blue-3:#0076cb;--color-juno-primary-blue-5:#003283;--font-sans:\"IBM Plex Sans\", ui-sans-serif, Arial, system-ui, sans-serif;--color-sap-green:var(--color-sap-green-5);--color-theme-accent:var(--color-accent)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", \"Noto Sans\", Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}html,body,.juno-app-body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:IBM Plex Sans,ui-sans-serif,Arial,system-ui,sans-serif;font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));height:100%}.theme-dark,.theme-light{background-color:var(--color-global-bg);color:var(--color-text-default)}a{color:var(--color-text-link)}button:not(:disabled),[role=button]:not(:disabled){cursor:pointer}h1,.juno-h1,h2,.juno-h2,h3,.juno-h3,h4,.juno-h4,h5,.juno-h5,h6,.juno-h6{font-family:var(--font-sans);--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}h1,.juno-h1{font-size:1.69rem;line-height:1.375}h2,.juno-h2{font-size:1.56rem;line-height:1.375}h3,.juno-h3{font-size:1.44rem;line-height:1.375}h4,.juno-h4{font-size:1.28rem;line-height:1.625}h5,.juno-h5{font-size:1.125rem;line-height:1.625}h6,.juno-h6{font-size:1rem;line-height:1.5}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.top-1\\/2{top:50%}.right-2{right:calc(var(--spacing) * 2)}.bottom-0{bottom:0}.isolate{isolation:isolate}.z-1{z-index:1}.z-10{z-index:10}.z-50{z-index:50}.col-span-1{grid-column:span 1/span 1}.container{width:100%}@media (width>=1856px){.container{max-width:1856px}}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.m-0{margin:0}.mx-auto{margin-inline:auto}.my-2{margin-block:calc(var(--spacing) * 2)}.my-6{margin-block:calc(var(--spacing) * 6)}.-mt-4{margin-top:calc(var(--spacing) * -4)}.mt-0\\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--spacing)}.mb-1\\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.ml-1{margin-left:var(--spacing)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.h-1{height:var(--spacing)}.h-1\\.5{height:calc(var(--spacing) * 1.5)}.h-4{height:calc(var(--spacing) * 4)}.h-6{height:calc(var(--spacing) * 6)}.h-24{height:calc(var(--spacing) * 24)}.h-96{height:calc(var(--spacing) * 96)}.h-full{height:100%}.max-h-5{max-height:calc(var(--spacing) * 5)}.max-h-24{max-height:calc(var(--spacing) * 24)}.max-h-48{max-height:calc(var(--spacing) * 48)}.max-h-56{max-height:calc(var(--spacing) * 56)}.max-h-96{max-height:calc(var(--spacing) * 96)}.max-h-\\[65vh\\]{max-height:65vh}.max-h-\\[70vh\\]{max-height:70vh}.min-h-40{min-height:calc(var(--spacing) * 40)}.w-4{width:calc(var(--spacing) * 4)}.w-6{width:calc(var(--spacing) * 6)}.w-40{width:calc(var(--spacing) * 40)}.w-72{width:calc(var(--spacing) * 72)}.w-full{width:100%}.max-w-55{max-width:calc(var(--spacing) * 55)}.max-w-62\\.5{max-width:calc(var(--spacing) * 62.5)}.max-w-87\\.5{max-width:calc(var(--spacing) * 87.5)}.max-w-100{max-width:calc(var(--spacing) * 100)}.max-w-125{max-width:calc(var(--spacing) * 125)}.max-w-\\[500px\\]{max-width:500px}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:0}.min-w-40{min-width:calc(var(--spacing) * 40)}.min-w-52{min-width:calc(var(--spacing) * 52)}.flex-1{flex:1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-help{cursor:help}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-none{resize:none}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-\\[max-content_1fr\\]{grid-template-columns:max-content 1fr}.flex-col{flex-direction:column}.flex-row-reverse{flex-direction:row-reverse}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.gap-1{gap:var(--spacing)}.gap-1\\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-16{gap:calc(var(--spacing) * 16)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-6{column-gap:calc(var(--spacing) * 6)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.self-start{align-self:flex-start}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:2147483647px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-b{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-none{--tw-border-style:none;border-style:none}.border-theme-accent{border-color:var(--color-accent)}.border-theme-background-lvl-2{border-color:var(--color-background-lvl-2)}.border-theme-background-lvl-3{border-color:var(--color-background-lvl-3)}.border-theme-background-lvl-4{border-color:var(--color-background-lvl-4)}.border-theme-error{border-color:var(--color-error)}.border-transparent{border-color:#0000}.\\!bg-transparent{background-color:#0000!important}.bg-theme-accent{background-color:var(--color-accent)}.bg-theme-background-lvl-0,.bg-theme-background-lvl-0\\/50{background-color:var(--color-background-lvl-0)}@supports (color:color-mix(in lab, red, red)){.bg-theme-background-lvl-0\\/50{background-color:color-mix(in oklab, var(--color-background-lvl-0) 50%, transparent)}}.bg-theme-background-lvl-1{background-color:var(--color-background-lvl-1)}.bg-theme-background-lvl-2{background-color:var(--color-background-lvl-2)}.bg-theme-background-lvl-4{background-color:var(--color-background-lvl-4)}.bg-theme-info{background-color:var(--color-info)}.bg-theme-warning\\/10{background-color:var(--color-warning)}@supports (color:color-mix(in lab, red, red)){.bg-theme-warning\\/10{background-color:color-mix(in oklab, var(--color-warning) 10%, transparent)}}.bg-transparent{background-color:#0000}.fill-current{fill:currentColor}.p-0{padding:0}.p-0\\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:var(--spacing)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\\.5{padding-block:calc(var(--spacing) * .5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-12{padding-block:calc(var(--spacing) * 12)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pr-0{padding-right:0}.pr-1{padding-right:var(--spacing)}.pr-3{padding-right:calc(var(--spacing) * 3)}.pr-10{padding-right:calc(var(--spacing) * 10)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pl-0{padding-left:0}.pl-1{padding-left:var(--spacing)}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-5{padding-left:calc(var(--spacing) * 5)}.pl-6{padding-left:calc(var(--spacing) * 6)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-mono{font-family:IBM Plex Mono,ui-monospace,monospace}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-4{--tw-leading:calc(var(--spacing) * 4);line-height:calc(var(--spacing) * 4)}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-7{--tw-leading:calc(var(--spacing) * 7);line-height:calc(var(--spacing) * 7)}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\\[overflow-wrap\\:anywhere\\]{overflow-wrap:anywhere}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.text-inherit{color:inherit}.text-juno-grey-light-1{color:#f9f9f9}.text-theme-danger{color:var(--color-danger)}.text-theme-default{color:var(--color-text-default)}.text-theme-error{color:var(--color-error)}.text-theme-high{color:var(--color-text-high)}.text-theme-highest{color:var(--color-text-highest)}.text-theme-info{color:var(--color-info)}.text-theme-light{color:var(--color-text-light)}.text-theme-link{color:var(--color-text-link)}.text-theme-pageheader-appname-default{color:var(--color-pageheader-appname-text-default)}.text-theme-success{color:var(--color-success)}.text-theme-warning{color:var(--color-warning)}.text-white{color:#fff}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.opacity-60{opacity:.6}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[border-color\\,box-shadow\\]{transition-property:border-color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.outline-none{--tw-outline-style:none;outline-style:none}.select-all{-webkit-user-select:all;user-select:all}.select-none{-webkit-user-select:none;user-select:none}.placeholder\\:text-theme-light::placeholder{color:var(--color-text-light)}.last\\:border-0:last-child{border-style:var(--tw-border-style);border-width:0}.last\\:pb-0:last-child{padding-bottom:0}.focus-within\\:border-theme-accent:focus-within{border-color:var(--color-accent)}.focus-within\\:ring-2:focus-within{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-within\\:ring-theme-accent:focus-within{--tw-ring-color:var(--color-accent)}.focus-within\\:ring-theme-error:focus-within{--tw-ring-color:var(--color-error)}@media (hover:hover){.hover\\:border-theme-accent:hover{border-color:var(--color-accent)}.hover\\:bg-theme-background-lvl-1:hover{background-color:var(--color-background-lvl-1)}.hover\\:bg-theme-background-lvl-2:hover{background-color:var(--color-background-lvl-2)}.hover\\:text-theme-accent:hover{color:var(--color-accent)}.hover\\:text-theme-danger:hover{color:var(--color-danger)}.hover\\:text-theme-default:hover{color:var(--color-text-default)}.hover\\:text-theme-high:hover{color:var(--color-text-high)}.hover\\:text-theme-pageheader-appname-hover:hover{color:var(--color-pageheader-appname-text-hover)}.hover\\:underline:hover{text-decoration-line:underline}}.focus-visible\\:outline:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\\:outline-theme-focus:focus-visible{outline-color:var(--color-focus)}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:cursor-wait:disabled{cursor:wait}.disabled\\:no-underline:disabled{text-decoration-line:none}.disabled\\:opacity-60:disabled{opacity:.6}@media (width>=40rem){.sm\\:w-auto{width:auto}.sm\\:min-w-0{min-width:0}.sm\\:min-w-40{min-width:calc(var(--spacing) * 40)}.sm\\:flex-1{flex:1}.sm\\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\\:flex-row{flex-direction:row}.sm\\:items-center{align-items:center}.sm\\:items-end{align-items:flex-end}.sm\\:justify-between{justify-content:space-between}.sm\\:px-12{padding-inline:calc(var(--spacing) * 12)}}@media (width>=48rem){.md\\:ml-auto{margin-left:auto}.md\\:w-auto{width:auto}.md\\:max-w-125{max-width:calc(var(--spacing) * 125)}.md\\:min-w-25{min-width:calc(var(--spacing) * 25)}.md\\:min-w-37\\.5{min-width:calc(var(--spacing) * 37.5)}.md\\:min-w-45{min-width:calc(var(--spacing) * 45)}.md\\:flex-row{flex-direction:row}.md\\:items-center{align-items:center}.md\\:px-20{padding-inline:calc(var(--spacing) * 20)}}@media (width>=64rem){.lg\\:w-2\\/3{width:66.6667%}.lg\\:max-w-250{max-width:calc(var(--spacing) * 250)}.lg\\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=80rem){.xl\\:max-w-275{max-width:calc(var(--spacing) * 275)}.xl\\:flex-row{flex-direction:row}}@media (width>=96rem){.\\32 xl\\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}}:root,:host{--grid-columns:12;--grid-row-margin-x:-.5rem;--grid-column-flex-grow:0;--grid-column-flex-shrink:1;--grid-column-flex-basis:auto;--grid-column-default-width:8.33333%;--color-white:#fff;--color-black:#000;--color-sap-grey-1:#fff;--color-sap-grey-2:#e1e1e1;--color-sap-grey-3:#ccc;--color-sap-grey-4:#999;--color-sap-grey-5:#7f7f7f;--color-sap-grey-6:#666;--color-sap-grey-7:#4b4b4b;--color-sap-grey-8:#000;--color-sap-blue-1:#0faaff;--color-sap-blue-2:#008fd3;--color-sap-blue-3:#0076cb;--color-sap-blue-4:#0f46a7;--color-sap-blue-5:#003283;--color-sap-blue-6:#00195a;--color-sap-gold:#f0ab00;--color-sap-purple-1:#dc0096;--color-sap-purple-2:#be008c;--color-sap-purple-3:#970a82;--color-sap-purple-4:#760a85;--color-sap-purple-5:#45157e;--color-sap-purple-6:#3c1464;--color-sap-green-1:#bcdc50;--color-sap-green-2:#93c939;--color-sap-green-3:#4fb81c;--color-sap-green-4:#348b26;--color-sap-green-5:#247230;--color-sap-green-6:#0f4b3c;--color-sap-orange-1:#ffaf00;--color-sap-orange-2:#fa9100;--color-sap-orange-3:#eb7300;--color-sap-orange-4:#e35500;--color-sap-orange-5:#d04512;--color-sap-orange-6:#bc3618;--color-juno-grey-blue-1:#40464b;--color-juno-grey-blue-2:#30363c;--color-juno-grey-blue-3:#292f36;--color-juno-grey-blue-4:#262c33;--color-juno-grey-blue-5:#242a31;--color-juno-grey-blue-6:#1f262d;--color-juno-grey-blue-7:#1c232a;--color-juno-grey-blue-8:#171e25;--color-juno-grey-blue-9:#121920;--color-juno-grey-blue-10:#0d141c;--color-juno-grey-blue-11:#000810;--color-juno-grey-light-1:#f9f9f9;--color-juno-grey-light-2:#f7f7f7;--color-juno-grey-light-3:#f4f4f4;--color-juno-grey-light-4:#f1f1f1;--color-juno-grey-light-5:#eee;--color-juno-grey-light-6:#ebebeb;--color-juno-grey-light-7:#e9e9e9;--color-juno-grey-light-8:#e6e6e6;--color-juno-grey-light-9:#e3e3e3;--color-juno-grey-light-10:#d7d7d7;--color-juno-blue-1:#cbe8f7;--color-juno-blue-2:#a5d3ea;--color-juno-blue-3:#89c9e8;--color-juno-blue-4:#43a2d0;--color-juno-blue-5:#007db8;--color-juno-blue-6:#1e6a92;--color-juno-blue-7:#0a6799;--color-juno-blue-8:#075580;--color-juno-blue-9:#054669;--color-juno-blue-10:#033754;--color-juno-turquoise-1:#c5f7ff;--color-juno-turquoise-2:#84f1ff;--color-juno-turquoise-3:#19e8fa;--color-juno-turquoise-4:#16d9ea;--color-juno-turquoise-5:#15d0e0;--color-juno-turquoise-6:#0fa7b4;--color-juno-turquoise-7:#098590;--color-juno-turquoise-8:#05646d;--color-juno-turquoise-9:#02454b;--color-juno-turquoise-10:#012904;--color-juno-primary-blue-1:#0faaff;--color-juno-primary-blue-2:#008fd3;--color-juno-primary-blue-3:#0076cb;--color-juno-primary-blue-4:#0f46a7;--color-juno-primary-blue-5:#003283;--color-juno-primary-blue-6:#00195a}.theme-light{--color-accent:#0076cb;--color-info:#0076cb;--color-success:#4fb81c;--color-warning:#ffaf00;--color-danger:#c70000;--color-error:#c70000;--color-juno-text-light:#969696;--color-juno-text-default:#4c4c4c;--color-juno-text-high:#404040;--color-juno-text-highest:#000;--color-juno-text-disabled:#b7b7b7;--color-juno-primary-danger-1:#eb9292;--color-juno-primary-danger-2:#da5d5d;--color-juno-primary-danger-3:#d54040;--color-juno-primary-danger-4:#c70000;--color-juno-primary-danger-5:#a50b0b;--color-background-lvl-0:var(--color-white);--color-background-lvl-1:var(--color-juno-grey-light-1);--color-background-lvl-2:var(--color-juno-grey-light-3);--color-background-lvl-3:var(--color-juno-grey-light-7);--color-background-lvl-4:var(--color-juno-grey-light-9);--color-background-lvl-5:var(--color-juno-grey-light-10);--color-global-bg:var(--color-juno-grey-light-1);--color-border-high:var(--color-juno-grey-light-9);--color-border-higher:#b7b7b7;--color-global-text:var(--color-juno-text-default);--color-content-area-bg:var(--color-background-lvl-0);--color-focus:var(--color-accent);--color-text-highest:var(--color-juno-text-highest);--color-text-high:var(--color-juno-text-high);--color-text-default:var(--color-juno-text-default);--color-text-light:var(--color-juno-text-light);--color-text-disabled:var(--color-juno-text-disabled);--color-text-link:var(--color-accent);--color-badge-default-bg:var(--color-juno-grey-light-3);--color-button-primary-text:var(--color-white);--color-button-primary-bg:var(--color-juno-primary-blue-3);--color-button-primary-hover-text:var(--color-white);--color-button-primary-hover-bg:var(--color-juno-primary-blue-2);--color-button-primary-active-text:var(--color-white);--color-button-primary-active-bg:var(--color-juno-primary-blue-5);--color-button-default-text:var(--color-text-high);--color-button-default-bg:var(--color-background-lvl-4);--color-button-default-border:var(--color-background-lvl-4);--color-button-default-hover-text:var(--color-text-high);--color-button-default-hover-bg:var(--color-background-lvl-3);--color-button-default-hover-border:var(--color-background-lvl-3);--color-button-default-active-text:var(--color-text-high);--color-button-default-active-bg:var(--color-background-lvl-2);--color-button-default-active-border:var(--color-background-lvl-4);--color-button-subdued-text:var(--color-text-default);--color-button-subdued-icon:var(--color-text-default);--color-button-subdued-bg:var(--color-background-lvl-3);--color-button-subdued-border:var(--color-background-lvl-4);--color-button-subdued-hover-text:var(--color-text-default);--color-button-subdued-hover-bg:var(--color-background-lvl-1);--color-button-subdued-hover-border:var(--color-background-lvl-4);--color-button-subdued-active-text:var(--color-text-default);--color-button-subdued-active-bg:var(--color-background-lvl-0);--color-button-subdued-active-border:var(--color-background-lvl-4);--color-button-primary-danger-text:var(--color-white);--color-button-primary-danger-bg:var(--color-juno-primary-danger-4);--color-button-primary-danger-hover-text:var(--color-white);--color-button-primary-danger-hover-bg:var(--color-juno-primary-danger-3);--color-button-primary-danger-active-text:var(--color-white);--color-button-primary-danger-active-bg:var(--color-juno-primary-danger-5);--color-divider-border:var(--color-border-default);--color-severity-critical:#a50b0b;--color-severity-very-high:#df0000;--color-severity-high:#f45900;--color-severity-medium:#f38a00;--color-severity-low:#ffe500;--color-severity-none:var(--color-text-disabled);--color-severity-unknown:var(--color-text-light);--color-icon-danger:var(--danger);--color-icon-info:var(--color-accent);--color-icon-success:var(--color-sap-green);--color-icon-warning:var(--color-warning);--color-icon-severityCritical:var(--color-severity-critical);--color-icon-severityVeryHigh:var(--color-severity-very-high);--color-icon-severityHigh:var(--color-severity-high);--color-icon-severityMedium:var(--color-severity-medium);--color-icon-severityLow:var(--color-severity-low);--color-info-bg:#e5f1fa;--color-warning-bg:#fff7e5;--color-success-bg:#edf8e8;--color-danger-bg:#f9e5e5;--color-error-bg:#f9e5e5;--color-message-danger-border:var(--color-danger);--color-message-danger-bg:var(--color-danger-bg);--color-message-default-border:var(--color-info);--color-message-default-bg:var(--color-info-bg);--color-message-error-border:var(--color-error);--color-message-error-bg:var(--color-error-bg);--color-message-warning-border:var(--color-warning);--color-message-warning-bg:var(--color-warning-bg);--color-message-success-border:var(--color-success);--color-message-success-bg:var(--color-success-bg);--color-introbox-bg:var(--color-background-lvl-2);--color-introbox-border:var(--color-accent);--color-textinput-bg:var(--color-background-lvl-3);--color-textinput-default-border:var(--color-background-lvl-4);--color-textinput-text:var(--color-juno-text-high);--color-textinput-placeholder-text:var(--color-juno-text-high);--color-textinput-focus-border:var(--color-accent);--color-textinput-autofill-text:var(--color-black);--color-textinput-autofill-bg:var(--color-juno-blue-1);--color-textinput-autofill-label:var(--color-juno-text-default);--color-select-bg:var(--color-background-lvl-3);--color-card-background-default:var(--color-white);--color-card-border-default:var(--color-border-default);--color-card-border-hover:var(--color-border-high);--color-checkbox-bg:var(--color-background-lvl-5);--color-checkbox-checked-color:var(--color-accent);--color-radio-bg:var(--color-background-lvl-5);--color-radio-checked-bg:var(--color-accent);--color-switch-default-border:var(--color-juno-text-default);--color-switch-handle-bg:var(--color-juno-text-default);--color-switch-handle-checked-bg:var(--color-accent);--color-required-bg:var(--color-accent);--color-spinner-primary:var(--color-accent);--color-syntax-highlight-base00:var(--color-codeblock-bg);--color-syntax-highlight-base01:var(--color-juno-grey-light-3);--color-syntax-highlight-base02:var(--color-sap-grey-3);--color-syntax-highlight-base03:var(--color-sap-grey-3);--color-syntax-highlight-base04:var(--color-sap-grey-3);--color-syntax-highlight-base05:var(--color-juno-text-high);--color-syntax-highlight-base06:red;--color-syntax-highlight-base07:var(--color-juno-text-high);--color-syntax-highlight-base08:var(--color-juno-grey-blue-6);--color-syntax-highlight-base09:var(--color-juno-blue-4);--color-syntax-highlight-base0A:var(--color-juno-grey-blue-6);--color-syntax-highlight-base0B:var(--color-juno-blue-4);--color-syntax-highlight-base0C:var(--color-sap-gold);--color-syntax-highlight-base0D:var(--color-sap-gold);--color-syntax-highlight-base0E:var(--color-juno-blue-4);--color-syntax-highlight-base0F:var(--color-juno-blue-4);--color-datagridtoolbar-bg:var(--color-background-lvl-1);--color-datagridrow-selected:var(--color-accent);--color-datalist-row-border:var(--color-background-lvl-1);--color-datalistrow-selected:var(--color-accent);--color-codeblock-bg:var(--color-background-lvl-2);--color-codeblock-bar-border:var(--color-background-lvl-4);--color-codeblock-footer-border:var(--color-background-lvl-4);--color-status-details-bg:var(--color-background-lvl-2);--color-status-details-text:var(--color-text-default);--color-status-details-border:var(--color-border-default);--color-status-code:var(--color-text-disabled);--color-panel-bg:#fcfcfccc;--color-pageheader-background:var(--color-juno-grey-blue-11);--color-pageheader-border:var(--color-juno-grey-light-7);--color-pageheader-text:#fffefd;--color-pageheader-appname-text-default:#fffefd;--color-pageheader-appname-text-hover:#fffefd;--color-pageheader-appname-text-active:#fffefd;--color-tabnavigation-top-bg:var(--color-juno-grey-light-5);--color-tabnavigation-content-bottom-border:var(--color-background-lvl-4);--color-filters-bg:var(--color-background-lvl-1);--color-filter-input-bg:var(--color-background-lvl-0);--color-filter-input-border:var(--color-background-lvl-4);--color-filter-input-textinput-bg:transparent;--color-filter-pill-border:var(--color-background-lvl-4);--color-filter-pill-key-bg:var(--color-background-lvl-4);--color-modal-backdrop-bg:#0003;--color-box-bg:var(--color-background-lvl-1);--color-box-border:var(--color-background-lvl-3);--color-box-info-bg:var(--color-info-bg);--color-box-info-border:var(--color-info);--color-box-success-bg:var(--color-success-bg);--color-box-success-border:var(--color-success);--color-box-warning-bg:var(--color-warning-bg);--color-box-warning-border:var(--color-warning);--color-box-error-bg:var(--color-error-bg);--color-box-error-border:var(--color-error);--color-box-danger-bg:var(--color-danger-bg);--color-box-danger-border:var(--color-danger);--color-sidenavigation-item-active:var(--color-black);--color-sidenavigation-item-active-bg:var(--color-background-lvl-0);--color-sidenav-background:var(--color-white);--color-sidenav-border:var(--color-juno-grey-light-7);--color-sidenav-list-background:var(--color-white);--color-sidenav-item-background-default:var(--color-white);--color-sidenav-item-background-hover:var(--color-juno-grey-light-1);--color-sidenav-item-background-active:var(--color-juno-grey-light-7);--color-sidenav-item-background-selected:var(--color-juno-grey-light-7);--color-sidenav-item-text-default:var(--color-juno-text-high);--color-sidenav-item-text-hover:var(--color-juno-text-high);--color-sidenav-item-text-active:var(--color-juno-text-high);--color-sidenav-item-text-selected:var(--color-juno-text-high);--color-sidenav-item-border-selected:var(--color-theme-accent);--color-topnavigation-item-active:var(--color-black);--color-topnavigation-item-bg:var(--color-sap-grey-1);--color-topnavigation-item-active-bg:var(--color-juno-grey-light-3);--color-datetimepicker-calendar-bg:var(--color-background-lvl-2);--color-datetimepicker-disabled-date-color:#4c4c4c66;--color-datetimepicker-disabled-date-hover-bg:#0076cb80;--color-datetimepicker-range-bg:#6294d1;--box-shadow-default:0 1px 2px 0 #2236494d;--box-shadow-hover:0 0 0 1px var(--color-color-shadow,#4f4f4f33), 0 2px 8px 0 #0003;--color-pagefooter-text:var(--color-text-light);--color-pagefooter-background:var(--color-white);--color-pagefooter-border:var(--color-border-default);--color-pagefooter-title:var(--color-text-default);--color-pagefooter-item-default:var(--color-text-light);--color-pagefooter-item-hover:var(--color-text-light);--color-pagefooter-item-active:var(--color-accent);--color-border-default:var(--color-juno-grey-light-7)}.theme-dark{--color-accent:#15d0e0;--color-info:#15d0e0;--color-success:#3bff5b;--color-warning:#ffc600;--color-danger:#ff4110;--color-error:#ff4110;--color-juno-text-light:#7a7a7a;--color-juno-text-default:#bbb;--color-juno-text-high:#dedfe0;--color-juno-text-highest:#fffefd;--color-juno-text-disabled:#5c5c5c;--color-juno-primary-danger-1:#e7a389;--color-juno-primary-danger-2:#de7e5b;--color-juno-primary-danger-3:#d04512;--color-juno-primary-danger-4:#bb3e10;--color-juno-primary-danger-5:#a4360e;--color-background-lvl-0:var(--color-juno-grey-blue-9);--color-background-lvl-1:var(--color-juno-grey-blue-7);--color-background-lvl-2:var(--color-juno-grey-blue-5);--color-background-lvl-3:var(--color-juno-grey-blue-3);--color-background-lvl-4:var(--color-juno-grey-blue-2);--color-background-lvl-5:var(--color-juno-grey-blue-1);--color-global-bg:var(--color-juno-grey-blue-10);--color-border-high:var(--color-juno-grey-blue-1);--color-border-higher:#5c5c5c;--color-global-text:var(--color-juno-text-default);--color-content-area-bg:var(--color-background-lvl-0);--color-focus:var(--color-accent);--color-focus-border:var(--color-accent);--color-text-highest:var(--color-juno-text-highest);--color-text-high:var(--color-juno-text-high);--color-text-default:var(--color-juno-text-default);--color-text-light:var(--color-juno-text-light);--color-text-disabled:var(--color-juno-text-disabled);--color-text-link:var(--color-accent);--color-badge-default-bg:var(--color-juno-grey-blue-3);--color-button-primary-bg:var(--color-juno-turquoise-7);--color-button-primary-text:var(--color-white);--color-button-primary-hover-bg:var(--color-juno-turquoise-5);--color-button-primary-hover-text:var(--color-white);--color-button-primary-active-bg:var(--color-juno-turquoise-9);--color-button-primary-active-text:var(--color-white);--color-button-default-text:var(--color-text-high);--color-button-default-icon:var(--color-text-high);--color-button-default-bg:var(--color-background-lvl-5);--color-button-default-border:var(--color-background-lvl-5);--color-button-default-hover-text:var(--color-text-high);--color-button-default-hover-bg:var(--color-background-lvl-3);--color-button-default-hover-border:var(--color-background-lvl-3);--color-button-default-active-text:var(--color-text-high);--color-button-default-active-bg:var(--color-background-lvl-2);--color-button-default-active-border:var(--color-background-lvl-4);--color-button-subdued-text:var(--color-text-default);--color-button-subdued-icon:var(--color-text-default);--color-button-subdued-bg:var(--color-background-lvl-3);--color-button-subdued-border:var(--color-background-lvl-4);--color-button-subdued-hover-text:var(--color-text-default);--color-button-subdued-hover-bg:var(--color-background-lvl-2);--color-button-subdued-hover-border:var(--color-background-lvl-4);--color-button-subdued-active-text:var(--color-text-default);--color-button-subdued-active-bg:var(--color-background-lvl-0);--color-button-subdued-active-border:var(--color-background-lvl-4);--color-button-primary-danger-text:var(--color-white);--color-button-primary-danger-bg:var(--color-juno-primary-danger-4);--color-button-primary-danger-hover-text:var(--color-white);--color-button-primary-danger-hover-bg:var(--color-juno-primary-danger-3);--color-button-primary-danger-active-text:var(--color-white);--color-button-primary-danger-active-bg:var(--color-juno-primary-danger-5);--color-divider-border:var(--color-border-default);--color-severity-critical:#ff1214;--color-severity-very-high:#ff4410;--color-severity-high:#ff6e0d;--color-severity-medium:#ffa408;--color-severity-low:#fff701;--color-severity-none:var(--color-text-disabled);--color-severity-unknown:var(--color-text-light);--color-icon-danger:var(--color-juno-danger);--color-icon-info:var(--color-accent);--color-icon-success:var(--color-sap-green-5);--color-icon-warning:var(--color-warning);--color-icon-severityCritical:var(--color-severity-critical);--color-icon-severityVeryHigh:var(--color-severity-very-high);--color-icon-severityHigh:var(--color-severity-high);--color-icon-severityMedium:var(--color-severity-medium);--color-icon-severityLow:var(--color-severity-low);--color-info-bg:#0e3039;--color-warning-bg:#312f18;--color-success-bg:#143022;--color-danger-bg:#311b1a;--color-error-bg:#311b1a;--color-message-danger-border:var(--color-danger);--color-message-danger-bg:var(--color-danger-bg);--color-message-default-border:var(--color-info);--color-message-default-bg:var(--color-info-bg);--color-message-error-border:var(--color-error);--color-message-error-bg:var(--color-error-bg);--color-message-warning-border:var(--color-warning);--color-message-warning-bg:var(--color-warning-bg);--color-message-success-border:var(--color-success);--color-message-success-bg:var(--color-success-bg);--color-introbox-bg:var(--color-background-lvl-2);--color-introbox-border:var(--color-accent);--color-textinput-bg:var(--color-background-lvl-3);--color-textinput-default-border:var(--color-background-lvl-4);--color-textinput-text:var(--color-juno-text-high);--color-textinput-placeholder-text:var(--color-juno-text-high);--color-textinput-focus-border:var(--color-accent);--color-textinput-autofill-text:var(--color-black);--color-textinput-autofill-bg:var(--color-juno-blue-1);--color-textinput-autofill-label:var(--color-black);--color-select-bg:var(--color-background-lvl-4);--color-card-background-default:var(--color-juno-grey-blue-10);--color-card-border-default:var(--color-border-default);--color-card-border-hover:var(--color-border-high);--color-checkbox-bg:var(--color-background-lvl-5);--color-checkbox-checked-color:var(--color-accent);--color-radio-bg:var(--color-background-lvl-5);--color-radio-checked-bg:var(--color-accent);--color-switch-default-border:var(--color-juno-text-high);--color-switch-handle-bg:var(--color-juno-text-high);--color-switch-handle-checked-bg:var(--color-accent);--color-switch-hover-border:var(--color-accent);--color-required-bg:var(--color-accent);--color-spinner-primary:var(--color-accent);--color-syntax-highlight-base00:var(--color-codeblock-bg);--color-syntax-highlight-base01:var(--color-juno-grey-blue-3);--color-syntax-highlight-base02:#bbb;--color-syntax-highlight-base03:var(--color-sap-grey-3);--color-syntax-highlight-base04:var(--color-sap-grey-3);--color-syntax-highlight-base05:#dedfe0;--color-syntax-highlight-base06:red;--color-syntax-highlight-base07:#dedfe0;--color-syntax-highlight-base08:var(--color-juno-grey-blue-6);--color-syntax-highlight-base09:var(--color-juno-blue-4);--color-syntax-highlight-base0A:var(--color-juno-grey-blue-6);--color-syntax-highlight-base0B:var(--color-juno-blue-4);--color-syntax-highlight-base0C:var(--color-sap-gold);--color-syntax-highlight-base0D:var(--color-sap-gold);--color-syntax-highlight-base0E:var(--color-juno-blue-4);--color-syntax-highlight-base0F:var(--color-juno-blue-4);--color-datagridtoolbar-bg:var(--color-background-lvl-1);--color-datagridrow-selected:var(--color-accent);--color-datalist-row-border:var(--color-background-lvl-1);--color-datalistrow-selected:var(--color-accent);--color-codeblock-bg:var(--color-background-lvl-2);--color-codeblock-bar-border:var(--color-background-lvl-4);--color-codeblock-footer-border:var(--color-background-lvl-4);--color-status-details-bg:var(--color-background-lvl-2);--color-status-details-text:var(--color-text-default);--color-status-details-border:var(--color-border-default);--color-status-code:var(--color-text-disabled);--color-panel-bg:rgb(from var(--color-juno-grey-blue-11) r g b / .75);--color-pageheader-background:var(--color-juno-grey-blue-11);--color-pageheader-border:var(--color-juno-grey-blue-3);--color-pageheader-text:var(--color-text-highest);--color-pageheader-appname-text-default:var(--color-text-highest);--color-pageheader-appname-text-hover:var(--color-text-highest);--color-pageheader-appname-text-active:var(--color-text-highest);--color-tabnavigation-top-bg:var(--color-juno-grey-blue-8);--color-tabnavigation-content-bottom-border:var(--color-background-lvl-4);--color-filters-bg:var(--color-background-lvl-1);--color-filter-input-bg:var(--color-background-lvl-0);--color-filter-input-border:var(--color-background-lvl-4);--color-filter-input-textinput-bg:transparent;--color-filter-pill-border:var(--color-background-lvl-4);--color-filter-pill-key-bg:var(--color-background-lvl-4);--color-modal-backdrop-bg:#3c464b99;--color-box-bg:var(--color-background-lvl-1);--color-box-border:var(--color-background-lvl-3);--color-box-info-bg:var(--color-info-bg);--color-box-info-border:var(--color-info);--color-box-success-bg:var(--color-success-bg);--color-box-success-border:var(--color-success);--color-box-warning-bg:var(--color-warning-bg);--color-box-warning-border:var(--color-warning);--color-box-error-bg:var(--color-error-bg);--color-box-error-border:var(--color-error);--color-box-danger-bg:var(--color-danger-bg);--color-box-danger-border:var(--color-danger);--color-sidenavigation-item-active:var(--color-white);--color-sidenavigation-item-active-bg:var(--color-background-lvl-0);--color-sidenav-background:var(--color-juno-grey-blue-10);--color-sidenav-border:var(--color-juno-grey-blue-3);--color-sidenav-list-background:var(--color-juno-grey-blue-10);--color-sidenav-item-background-default:var(--color-juno-grey-blue-10);--color-sidenav-item-background-hover:var(--color-juno-grey-blue-5);--color-sidenav-item-background-active:var(--color-juno-grey-blue-7);--color-sidenav-item-background-selected:var(--color-juno-grey-blue-7);--color-sidenav-item-text-default:var(--color-juno-text-high);--color-sidenav-item-text-hover:var(--color-juno-text-high);--color-sidenav-item-text-active:var(--color-juno-text-high);--color-sidenav-item-text-selected:var(--color-juno-text-high);--color-sidenav-item-border-selected:var(--color-theme-accent);--color-topnavigation-item-active:var(--color-white);--color-topnavigation-item-bg:var(--color-juno-grey-blue-7);--color-topnavigation-item-active-bg:var(--color-juno-grey-blue-5);--color-datetimepicker-calendar-bg:var(--color-background-lvl-1);--color-datetimepicker-disabled-date-color:#bbb6;--color-datetimepicker-disabled-date-hover-bg:#15d0e080;--color-datetimepicker-range-bg:#4fa3b0;--box-shadow-default:0 1px 2px 0 #2236494d;--box-shadow-hover:0 1px 2px 0 #2236494d;--color-pagefooter-text:var(--color-text-light);--color-pagefooter-background:var(--color-juno-grey-blue-10);--color-pagefooter-border:var(--color-border-default);--color-pagefooter-title:var(--color-text-default);--color-pagefooter-item-default:var(--color-text-light);--color-pagefooter-item-hover:var(--color-text-light);--color-pagefooter-item-active:var(--color-accent);--color-border-default:var(--color-juno-grey-blue-3)}html,body{flex-direction:column;height:100%;margin:0;padding:0;display:flex}#app{flex-grow:1}@property --tw-rotate-x{syntax:\"*\";inherits:false}@property --tw-rotate-y{syntax:\"*\";inherits:false}@property --tw-rotate-z{syntax:\"*\";inherits:false}@property --tw-skew-x{syntax:\"*\";inherits:false}@property --tw-skew-y{syntax:\"*\";inherits:false}@property --tw-space-y-reverse{syntax:\"*\";inherits:false;initial-value:0}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-leading{syntax:\"*\";inherits:false}@property --tw-font-weight{syntax:\"*\";inherits:false}@property --tw-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:\"*\";inherits:false}@property --tw-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:\"*\";inherits:false}@property --tw-inset-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:\"*\";inherits:false}@property --tw-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:\"*\";inherits:false}@property --tw-inset-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:\"*\";inherits:false}@property --tw-ring-offset-width{syntax:\"<length>\";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:\"*\";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:\"*\";inherits:false}@property --tw-brightness{syntax:\"*\";inherits:false}@property --tw-contrast{syntax:\"*\";inherits:false}@property --tw-grayscale{syntax:\"*\";inherits:false}@property --tw-hue-rotate{syntax:\"*\";inherits:false}@property --tw-invert{syntax:\"*\";inherits:false}@property --tw-opacity{syntax:\"*\";inherits:false}@property --tw-saturate{syntax:\"*\";inherits:false}@property --tw-sepia{syntax:\"*\";inherits:false}@property --tw-drop-shadow{syntax:\"*\";inherits:false}@property --tw-drop-shadow-color{syntax:\"*\";inherits:false}@property --tw-drop-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:\"*\";inherits:false}@property --tw-backdrop-blur{syntax:\"*\";inherits:false}@property --tw-backdrop-brightness{syntax:\"*\";inherits:false}@property --tw-backdrop-contrast{syntax:\"*\";inherits:false}@property --tw-backdrop-grayscale{syntax:\"*\";inherits:false}@property --tw-backdrop-hue-rotate{syntax:\"*\";inherits:false}@property --tw-backdrop-invert{syntax:\"*\";inherits:false}@property --tw-backdrop-opacity{syntax:\"*\";inherits:false}@property --tw-backdrop-saturate{syntax:\"*\";inherits:false}@property --tw-backdrop-sepia{syntax:\"*\";inherits:false}@property --tw-duration{syntax:\"*\";inherits:false}@property --tw-outline-style{syntax:\"*\";inherits:false;initial-value:solid}", P = Ie()({
|
|
179
|
+
component: Qe,
|
|
180
|
+
notFoundComponent: et,
|
|
181
|
+
errorComponent: $e,
|
|
182
|
+
pendingComponent: tt
|
|
183
183
|
});
|
|
184
|
-
function
|
|
185
|
-
let { navItems: t, handleThemeToggle: n, appName:
|
|
186
|
-
return /*#__PURE__*/
|
|
187
|
-
/*#__PURE__*/
|
|
188
|
-
/*#__PURE__*/
|
|
189
|
-
/*#__PURE__*/
|
|
190
|
-
pageHeader: /*#__PURE__*/
|
|
184
|
+
function F({ children: e }) {
|
|
185
|
+
let { navItems: t, handleThemeToggle: n, appName: i, slots: a } = P.useRouteContext();
|
|
186
|
+
return /*#__PURE__*/ b(Ae, { children: [
|
|
187
|
+
/*#__PURE__*/ y(Me, {}),
|
|
188
|
+
/*#__PURE__*/ y("style", { children: Ze.toString() }),
|
|
189
|
+
/*#__PURE__*/ y(r, {
|
|
190
|
+
pageHeader: /*#__PURE__*/ y(Xe, {
|
|
191
191
|
items: t,
|
|
192
192
|
handleThemeToggle: n,
|
|
193
|
-
appName:
|
|
194
|
-
slots:
|
|
193
|
+
appName: i,
|
|
194
|
+
slots: a
|
|
195
195
|
}),
|
|
196
|
-
pageFooter:
|
|
196
|
+
pageFooter: a?.pageFooter ? /*#__PURE__*/ y("div", {
|
|
197
197
|
className: "app-page-footer",
|
|
198
|
-
children: /*#__PURE__*/
|
|
199
|
-
component:
|
|
198
|
+
children: /*#__PURE__*/ y(h, {
|
|
199
|
+
component: a.pageFooter,
|
|
200
200
|
useShadowDOM: !1
|
|
201
201
|
})
|
|
202
202
|
}) : void 0,
|
|
@@ -205,59 +205,67 @@ function B({ children: e }) {
|
|
|
205
205
|
})
|
|
206
206
|
] });
|
|
207
207
|
}
|
|
208
|
-
function
|
|
209
|
-
return /*#__PURE__*/
|
|
208
|
+
function Qe() {
|
|
209
|
+
return /*#__PURE__*/ y(F, { children: /*#__PURE__*/ y(Pe, {}) });
|
|
210
210
|
}
|
|
211
|
-
function
|
|
212
|
-
return /*#__PURE__*/
|
|
211
|
+
function $e({ error: e }) {
|
|
212
|
+
return /*#__PURE__*/ y(F, { children: /*#__PURE__*/ y(g, {
|
|
213
213
|
error: e,
|
|
214
|
-
safeErrorMessage: e instanceof
|
|
214
|
+
safeErrorMessage: e instanceof Ve ? e.message : void 0
|
|
215
215
|
}) });
|
|
216
216
|
}
|
|
217
|
-
function
|
|
218
|
-
let { i18n:
|
|
219
|
-
return /*#__PURE__*/
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
217
|
+
function et() {
|
|
218
|
+
let { i18n: t, _: n } = k(), r = P.useNavigate();
|
|
219
|
+
return /*#__PURE__*/ y(e, {
|
|
220
|
+
className: "py-8",
|
|
221
|
+
children: /*#__PURE__*/ y(l, {
|
|
222
|
+
status: "error",
|
|
223
|
+
code: 404,
|
|
224
|
+
title: t._({ id: "boJlGf" }),
|
|
225
|
+
body: t._({ id: "0P2gFy" }),
|
|
226
|
+
action: /*#__PURE__*/ y(ee, {
|
|
227
|
+
variant: "primary",
|
|
228
|
+
onClick: () => r({ to: "/" }),
|
|
229
|
+
children: /*#__PURE__*/ y(O, { id: "UmuIdg" })
|
|
230
|
+
})
|
|
231
|
+
})
|
|
225
232
|
});
|
|
226
233
|
}
|
|
227
|
-
function
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
children: [/*#__PURE__*/ x("div", { className: "absolute inset-0 backdrop-blur-sm" }), /*#__PURE__*/ x(o, {
|
|
233
|
-
variant: "primary",
|
|
234
|
-
size: "large"
|
|
235
|
-
})]
|
|
234
|
+
function tt() {
|
|
235
|
+
let { i18n: e, _: t } = k();
|
|
236
|
+
return /*#__PURE__*/ y(F, { children: /*#__PURE__*/ y(l, {
|
|
237
|
+
status: "progress",
|
|
238
|
+
title: e._({ id: "Z3FXyt" })
|
|
236
239
|
}) });
|
|
237
240
|
}
|
|
238
|
-
var
|
|
239
|
-
|
|
241
|
+
var nt = T("/_auth")({
|
|
242
|
+
staticData: { crumb: {
|
|
243
|
+
text: { id: "i0qMbr" },
|
|
244
|
+
icon: "home",
|
|
245
|
+
to: "/projects"
|
|
246
|
+
} },
|
|
247
|
+
component: E(() => import("./_auth-SrDjHL6j.mjs"), "component"),
|
|
240
248
|
beforeLoad: async ({ context: e, location: t }) => {
|
|
241
249
|
if (!e.auth?.isAuthenticated) {
|
|
242
250
|
let e = `${t.pathname}${t.searchStr || ""}${t.hash || ""}`;
|
|
243
|
-
throw
|
|
251
|
+
throw D({
|
|
244
252
|
to: "/",
|
|
245
253
|
search: { redirect: e }
|
|
246
254
|
});
|
|
247
255
|
}
|
|
248
256
|
}
|
|
249
|
-
}),
|
|
250
|
-
throw e.auth?.isAuthenticated && e.auth.user?.domain?.id ?
|
|
257
|
+
}), rt = T("/about")({ component: E(() => import("./about-BmQTyLWc.mjs"), "component") }), it = T("/_auth/aurora")({ component: E(() => import("./aurora-CIml-f2f.mjs"), "component") }), at = T("/_auth/accounts/")({ beforeLoad: ({ context: e }) => {
|
|
258
|
+
throw e.auth?.isAuthenticated && e.auth.user?.domain?.id ? D({ to: "/projects" }) : D({ to: "/" });
|
|
251
259
|
} });
|
|
252
260
|
//#endregion
|
|
253
261
|
//#region src/client/routes/_auth/projects/-components/ProjectOverviewNavBar.tsx
|
|
254
|
-
function
|
|
255
|
-
let { i18n: r, _: i } =
|
|
256
|
-
return
|
|
262
|
+
function ot({ onSearch: e, searchTerm: n = "" }) {
|
|
263
|
+
let { i18n: r, _: i } = k(), a = C(null), o = C(!1), [s, c] = w(n);
|
|
264
|
+
return S(() => {
|
|
257
265
|
!o.current && !a.current && n !== s && c(n);
|
|
258
|
-
}, [n]),
|
|
266
|
+
}, [n]), S(() => () => {
|
|
259
267
|
a.current && clearTimeout(a.current);
|
|
260
|
-
}, []), /*#__PURE__*/
|
|
268
|
+
}, []), /*#__PURE__*/ y(t, {
|
|
261
269
|
className: "w-full",
|
|
262
270
|
type: "text",
|
|
263
271
|
placeholder: r._({ id: "YIix5Y" }),
|
|
@@ -281,77 +289,77 @@ function Je({ onSearch: e, searchTerm: n = "" }) {
|
|
|
281
289
|
}
|
|
282
290
|
//#endregion
|
|
283
291
|
//#region src/client/routes/_auth/projects/-components/ProjectCardView.tsx
|
|
284
|
-
function
|
|
285
|
-
let t =
|
|
286
|
-
return /*#__PURE__*/
|
|
292
|
+
function st({ project: e }) {
|
|
293
|
+
let t = ze();
|
|
294
|
+
return /*#__PURE__*/ b(s, {
|
|
287
295
|
padding: !0,
|
|
288
296
|
onClick: () => t({
|
|
289
297
|
to: "/projects/$projectId",
|
|
290
298
|
params: { projectId: e.id }
|
|
291
299
|
}),
|
|
292
300
|
className: "flex flex-col gap-4",
|
|
293
|
-
children: [/*#__PURE__*/
|
|
301
|
+
children: [/*#__PURE__*/ b("div", {
|
|
294
302
|
className: "flex min-w-0 flex-col",
|
|
295
|
-
children: [/*#__PURE__*/
|
|
303
|
+
children: [/*#__PURE__*/ y("p", {
|
|
296
304
|
className: "text-theme-light text-xs leading-5 font-normal",
|
|
297
|
-
children: e.domain_name ?? e.domain_id ?? /*#__PURE__*/
|
|
298
|
-
}), /*#__PURE__*/
|
|
305
|
+
children: e.domain_name ?? e.domain_id ?? /*#__PURE__*/ y(O, { id: "ZkxxiR" })
|
|
306
|
+
}), /*#__PURE__*/ y("p", {
|
|
299
307
|
"data-testid": "project-name",
|
|
300
308
|
className: "text-theme-high text-lg leading-7 font-bold",
|
|
301
309
|
children: e.name
|
|
302
310
|
})]
|
|
303
|
-
}), e.description && /*#__PURE__*/
|
|
311
|
+
}), e.description && /*#__PURE__*/ y("p", {
|
|
304
312
|
className: "text-theme-default line-clamp-2 text-sm font-normal",
|
|
305
313
|
children: e.description
|
|
306
314
|
})]
|
|
307
315
|
});
|
|
308
316
|
}
|
|
309
|
-
function
|
|
310
|
-
return /*#__PURE__*/
|
|
317
|
+
function ct({ projects: e }) {
|
|
318
|
+
return /*#__PURE__*/ y("div", {
|
|
311
319
|
className: "w-full",
|
|
312
|
-
children: /*#__PURE__*/
|
|
320
|
+
children: /*#__PURE__*/ y("div", {
|
|
313
321
|
className: "grid grid-cols-1 gap-6 sm:grid-cols-2 lg:grid-cols-3 2xl:grid-cols-4",
|
|
314
|
-
children: e?.length ? [...e].sort((e, t) => e.name.localeCompare(t.name)).map((e) => /*#__PURE__*/
|
|
322
|
+
children: e?.length ? [...e].sort((e, t) => e.name.localeCompare(t.name)).map((e) => /*#__PURE__*/ y(st, { project: e }, e.id)) : /*#__PURE__*/ y("p", { children: /*#__PURE__*/ y(O, { id: "Zgp2Sm" }) })
|
|
315
323
|
})
|
|
316
324
|
});
|
|
317
325
|
}
|
|
318
326
|
//#endregion
|
|
319
327
|
//#region src/client/routes/_auth/projects/index.tsx
|
|
320
|
-
var
|
|
328
|
+
var lt = () => import("./projects-yiK0HGSA.mjs"), ut = A.object({ search: A.string().optional() }), I = T("/_auth/projects/")({
|
|
321
329
|
staticData: { analytics: { name: "projects.list" } },
|
|
322
|
-
component:
|
|
323
|
-
notFoundComponent:
|
|
324
|
-
validateSearch:
|
|
330
|
+
component: ft,
|
|
331
|
+
notFoundComponent: E(lt, "notFoundComponent"),
|
|
332
|
+
validateSearch: ut
|
|
325
333
|
});
|
|
326
|
-
function
|
|
327
|
-
let [t] =
|
|
328
|
-
return /*#__PURE__*/
|
|
334
|
+
function dt({ search: e }) {
|
|
335
|
+
let [t] = u.project.getAuthProjects.useSuspenseQuery(), n = e.trim().toLowerCase(), r = t && n ? t.filter((e) => e.name?.toLowerCase().includes(n) || e.description?.toLowerCase().includes(n)) : t;
|
|
336
|
+
return /*#__PURE__*/ y(ct, { projects: r });
|
|
329
337
|
}
|
|
330
|
-
function
|
|
331
|
-
let { search: t = "" } =
|
|
332
|
-
return /*#__PURE__*/
|
|
338
|
+
function ft() {
|
|
339
|
+
let { search: t = "" } = I.useSearch(), n = I.useNavigate(), { slots: r } = Be({ strict: !1 }), { i18n: a, _: o } = k();
|
|
340
|
+
return /*#__PURE__*/ b(e, {
|
|
333
341
|
py: !0,
|
|
334
342
|
children: [
|
|
335
|
-
/*#__PURE__*/
|
|
343
|
+
/*#__PURE__*/ y(i, {
|
|
336
344
|
className: "pb-4",
|
|
337
|
-
children: /*#__PURE__*/
|
|
345
|
+
children: /*#__PURE__*/ y(O, { id: "+0B+ue" })
|
|
338
346
|
}),
|
|
339
|
-
r?.projectsBanner && /*#__PURE__*/
|
|
347
|
+
r?.projectsBanner && /*#__PURE__*/ y(j, {
|
|
340
348
|
fallbackRender: () => null,
|
|
341
|
-
children: /*#__PURE__*/ x
|
|
349
|
+
children: /*#__PURE__*/ y(x, {
|
|
342
350
|
fallback: null,
|
|
343
|
-
children: /*#__PURE__*/
|
|
351
|
+
children: /*#__PURE__*/ y(h, {
|
|
344
352
|
component: r.projectsBanner,
|
|
345
353
|
useShadowDOM: !1
|
|
346
354
|
})
|
|
347
355
|
})
|
|
348
356
|
}),
|
|
349
|
-
/*#__PURE__*/
|
|
350
|
-
fallbackRender: ({ error: e }) => /*#__PURE__*/
|
|
357
|
+
/*#__PURE__*/ b(j, {
|
|
358
|
+
fallbackRender: ({ error: e }) => /*#__PURE__*/ y(g, {
|
|
351
359
|
error: e,
|
|
352
|
-
safeErrorMessage: e instanceof
|
|
360
|
+
safeErrorMessage: e instanceof Ve ? e.message : void 0
|
|
353
361
|
}),
|
|
354
|
-
children: [/*#__PURE__*/
|
|
362
|
+
children: [/*#__PURE__*/ y(ot, {
|
|
355
363
|
searchTerm: t,
|
|
356
364
|
onSearch: (e) => {
|
|
357
365
|
n({
|
|
@@ -362,86 +370,79 @@ function et() {
|
|
|
362
370
|
replace: !0
|
|
363
371
|
});
|
|
364
372
|
}
|
|
365
|
-
}), /*#__PURE__*/
|
|
373
|
+
}), /*#__PURE__*/ y("div", {
|
|
366
374
|
className: "pt-5",
|
|
367
|
-
children: /*#__PURE__*/ x
|
|
368
|
-
fallback: /*#__PURE__*/
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
direction: "vertical",
|
|
372
|
-
className: "py-12",
|
|
373
|
-
children: /*#__PURE__*/ x(o, {
|
|
374
|
-
variant: "primary",
|
|
375
|
-
size: "large"
|
|
376
|
-
})
|
|
375
|
+
children: /*#__PURE__*/ y(x, {
|
|
376
|
+
fallback: /*#__PURE__*/ y(l, {
|
|
377
|
+
status: "progress",
|
|
378
|
+
title: a._({ id: "Z3FXyt" })
|
|
377
379
|
}),
|
|
378
|
-
children: /*#__PURE__*/
|
|
380
|
+
children: /*#__PURE__*/ y(dt, { search: t })
|
|
379
381
|
})
|
|
380
382
|
})]
|
|
381
383
|
})
|
|
382
384
|
]
|
|
383
385
|
});
|
|
384
386
|
}
|
|
385
|
-
var
|
|
387
|
+
var pt = T("/_auth/projects/$projectId/")({
|
|
386
388
|
staticData: { analytics: { name: "projects.detail" } },
|
|
387
|
-
component:
|
|
388
|
-
}),
|
|
389
|
+
component: E(() => import("./_projectId-7Nl1MQTJ.mjs"), "component")
|
|
390
|
+
}), mt = T("/_auth/projects/$projectId/network")({
|
|
389
391
|
loader: async ({ context: e }) => {
|
|
390
392
|
let { trpcClient: t } = e;
|
|
391
393
|
return { availableServices: await t?.auth.getAvailableServices.query() };
|
|
392
394
|
},
|
|
393
395
|
beforeLoad: async ({ context: e, params: t }) => {
|
|
394
396
|
let { trpcClient: n } = e, { projectId: r } = t, i = await n?.auth.getAvailableServices.query();
|
|
395
|
-
if (!
|
|
397
|
+
if (!_(i).network) throw D({
|
|
396
398
|
to: "/projects/$projectId",
|
|
397
399
|
params: { projectId: r }
|
|
398
400
|
});
|
|
399
401
|
},
|
|
400
|
-
component:
|
|
401
|
-
}),
|
|
402
|
-
throw
|
|
402
|
+
component: E(() => import("./network-DuZm76BZ.mjs"), "component")
|
|
403
|
+
}), ht = T("/_auth/projects/$projectId/compute/")({ beforeLoad: ({ params: e }) => {
|
|
404
|
+
throw D({
|
|
403
405
|
to: "/projects/$projectId",
|
|
404
406
|
params: e
|
|
405
407
|
});
|
|
406
|
-
} }),
|
|
407
|
-
search:
|
|
408
|
-
sortBy:
|
|
408
|
+
} }), gt = () => import("./flavors-DWMZ6TuJ.mjs"), L = {
|
|
409
|
+
search: A.string().optional(),
|
|
410
|
+
sortBy: A.enum([
|
|
409
411
|
"name",
|
|
410
412
|
"vcpus",
|
|
411
413
|
"ram",
|
|
412
414
|
"disk",
|
|
413
415
|
"swap"
|
|
414
416
|
]).optional(),
|
|
415
|
-
sortDirection:
|
|
416
|
-
page:
|
|
417
|
-
},
|
|
417
|
+
sortDirection: A.enum(["asc", "desc"]).optional(),
|
|
418
|
+
page: A.number().int().positive().optional()
|
|
419
|
+
}, _t = A.looseObject(L), vt = T("/_auth/projects/$projectId/compute/flavors")({
|
|
418
420
|
staticData: {
|
|
419
421
|
section: "compute",
|
|
420
422
|
service: "flavors",
|
|
421
|
-
|
|
422
|
-
crumb: {
|
|
423
|
-
analytics: { name: "compute.flavors.list" }
|
|
423
|
+
analytics: { name: "compute.flavors.list" },
|
|
424
|
+
crumb: { text: { id: "neiJm0" } }
|
|
424
425
|
},
|
|
425
426
|
validateSearch: (e) => {
|
|
426
|
-
let t =
|
|
427
|
+
let t = _t.safeParse(e);
|
|
427
428
|
return t.success ? t.data : {
|
|
428
429
|
...e,
|
|
429
|
-
search:
|
|
430
|
-
sortBy:
|
|
431
|
-
sortDirection:
|
|
432
|
-
page:
|
|
430
|
+
search: L.search.safeParse(e.search).success ? e.search : void 0,
|
|
431
|
+
sortBy: L.sortBy.safeParse(e.sortBy).success ? e.sortBy : void 0,
|
|
432
|
+
sortDirection: L.sortDirection.safeParse(e.sortDirection).success ? e.sortDirection : void 0,
|
|
433
|
+
page: L.page.safeParse(e.page).success ? e.page : void 0
|
|
433
434
|
};
|
|
434
435
|
},
|
|
435
436
|
beforeLoad: async ({ context: e, params: t }) => {
|
|
436
437
|
let { trpcClient: n } = e, { projectId: r } = t, i = await n?.auth.getAvailableServices.query();
|
|
437
|
-
if (!
|
|
438
|
+
if (!_(i).compute?.nova) throw D({
|
|
438
439
|
to: "/projects/$projectId",
|
|
439
440
|
params: { projectId: r }
|
|
440
441
|
});
|
|
441
442
|
},
|
|
442
|
-
component:
|
|
443
|
-
}),
|
|
444
|
-
status:
|
|
443
|
+
component: E(gt, "component")
|
|
444
|
+
}), yt = () => import("./images-NBf2bV43.mjs"), R = (e) => A.string().refine((t) => (t.startsWith("in:") ? t.replace("in:", "").split(",") : [t]).every((t) => e.includes(t))), z = {
|
|
445
|
+
status: R([
|
|
445
446
|
"queued",
|
|
446
447
|
"saving",
|
|
447
448
|
"active",
|
|
@@ -450,14 +451,14 @@ var tt = O("/_auth/projects/$projectId/")({
|
|
|
450
451
|
"deleted",
|
|
451
452
|
"pending_delete"
|
|
452
453
|
]).optional(),
|
|
453
|
-
visibility:
|
|
454
|
+
visibility: A.enum([
|
|
454
455
|
"public",
|
|
455
456
|
"private",
|
|
456
457
|
"shared",
|
|
457
458
|
"community",
|
|
458
459
|
"all"
|
|
459
460
|
]).optional(),
|
|
460
|
-
disk_format:
|
|
461
|
+
disk_format: R([
|
|
461
462
|
"ami",
|
|
462
463
|
"ari",
|
|
463
464
|
"aki",
|
|
@@ -470,7 +471,7 @@ var tt = O("/_auth/projects/$projectId/")({
|
|
|
470
471
|
"iso",
|
|
471
472
|
"ploop"
|
|
472
473
|
]).optional(),
|
|
473
|
-
container_format:
|
|
474
|
+
container_format: R([
|
|
474
475
|
"ami",
|
|
475
476
|
"ari",
|
|
476
477
|
"aki",
|
|
@@ -479,195 +480,176 @@ var tt = O("/_auth/projects/$projectId/")({
|
|
|
479
480
|
"ova",
|
|
480
481
|
"docker"
|
|
481
482
|
]).optional(),
|
|
482
|
-
protected:
|
|
483
|
-
search:
|
|
484
|
-
sortBy:
|
|
483
|
+
protected: A.enum(["true", "false"]).optional(),
|
|
484
|
+
search: A.string().optional(),
|
|
485
|
+
sortBy: A.enum([
|
|
485
486
|
"created_at",
|
|
486
487
|
"updated_at",
|
|
487
488
|
"name",
|
|
488
489
|
"size",
|
|
489
490
|
"status"
|
|
490
491
|
]).optional(),
|
|
491
|
-
sortDirection:
|
|
492
|
-
memberStatus:
|
|
492
|
+
sortDirection: A.enum(["asc", "desc"]).optional(),
|
|
493
|
+
memberStatus: A.enum([
|
|
493
494
|
"all",
|
|
494
495
|
"accepted",
|
|
495
496
|
"pending"
|
|
496
497
|
]).optional(),
|
|
497
|
-
page:
|
|
498
|
-
},
|
|
498
|
+
page: A.number().int().positive().optional()
|
|
499
|
+
}, bt = A.looseObject(z), xt = T("/_auth/projects/$projectId/compute/images")({
|
|
499
500
|
staticData: {
|
|
500
501
|
section: "compute",
|
|
501
502
|
service: "images",
|
|
502
|
-
|
|
503
|
-
crumb: { labelKey: "Images" }
|
|
503
|
+
crumb: { text: { id: "an5hVd" } }
|
|
504
504
|
},
|
|
505
505
|
validateSearch: (e) => {
|
|
506
|
-
let t =
|
|
506
|
+
let t = bt.safeParse(e);
|
|
507
507
|
return t.success ? t.data : {
|
|
508
508
|
...e,
|
|
509
|
-
status:
|
|
510
|
-
visibility:
|
|
511
|
-
disk_format:
|
|
512
|
-
container_format:
|
|
513
|
-
protected:
|
|
514
|
-
search:
|
|
515
|
-
sortBy:
|
|
516
|
-
sortDirection:
|
|
517
|
-
memberStatus:
|
|
518
|
-
page:
|
|
509
|
+
status: z.status.safeParse(e.status).success ? e.status : void 0,
|
|
510
|
+
visibility: z.visibility.safeParse(e.visibility).success ? e.visibility : void 0,
|
|
511
|
+
disk_format: z.disk_format.safeParse(e.disk_format).success ? e.disk_format : void 0,
|
|
512
|
+
container_format: z.container_format.safeParse(e.container_format).success ? e.container_format : void 0,
|
|
513
|
+
protected: z.protected.safeParse(e.protected).success ? e.protected : void 0,
|
|
514
|
+
search: z.search.safeParse(e.search).success ? e.search : void 0,
|
|
515
|
+
sortBy: z.sortBy.safeParse(e.sortBy).success ? e.sortBy : void 0,
|
|
516
|
+
sortDirection: z.sortDirection.safeParse(e.sortDirection).success ? e.sortDirection : void 0,
|
|
517
|
+
memberStatus: z.memberStatus.safeParse(e.memberStatus).success ? e.memberStatus : void 0,
|
|
518
|
+
page: z.page.safeParse(e.page).success ? e.page : void 0
|
|
519
519
|
};
|
|
520
520
|
},
|
|
521
521
|
beforeLoad: async ({ context: e, params: t }) => {
|
|
522
522
|
let { trpcClient: n } = e, { projectId: r } = t;
|
|
523
523
|
if (!n) throw Error("trpcClient is not available in route context");
|
|
524
524
|
let i = await n.auth.getAvailableServices.query();
|
|
525
|
-
if (!
|
|
525
|
+
if (!_(i).image?.glance) throw D({
|
|
526
526
|
to: "/projects/$projectId",
|
|
527
527
|
params: { projectId: r }
|
|
528
528
|
});
|
|
529
529
|
},
|
|
530
|
-
component:
|
|
531
|
-
}),
|
|
532
|
-
throw
|
|
530
|
+
component: E(yt, "component")
|
|
531
|
+
}), St = T("/_auth/projects/$projectId/network/")({ beforeLoad: ({ params: e }) => {
|
|
532
|
+
throw D({
|
|
533
533
|
to: "/projects/$projectId",
|
|
534
534
|
params: e
|
|
535
535
|
});
|
|
536
|
-
} }),
|
|
537
|
-
|
|
536
|
+
} }), Ct = T("/_auth/projects/$projectId/network/floatingips")({
|
|
537
|
+
staticData: {
|
|
538
|
+
section: "network",
|
|
539
|
+
service: "floatingips",
|
|
540
|
+
crumb: { text: { id: "u77/s4" } }
|
|
541
|
+
},
|
|
542
|
+
component: E(() => import("./floatingips-Cz9k80cc.mjs"), "component")
|
|
543
|
+
}), wt = T("/_auth/projects/$projectId/network/securitygroups")({
|
|
544
|
+
staticData: {
|
|
545
|
+
section: "network",
|
|
546
|
+
service: "securitygroups",
|
|
547
|
+
crumb: { text: { id: "4opp4r" } }
|
|
548
|
+
},
|
|
549
|
+
component: E(() => import("./securitygroups-CtKne8UQ.mjs"), "component")
|
|
550
|
+
}), Tt = T("/_auth/projects/$projectId/services/")({ beforeLoad: ({ params: e }) => {
|
|
551
|
+
throw D({
|
|
538
552
|
to: "/projects/$projectId",
|
|
539
553
|
params: e
|
|
540
554
|
});
|
|
541
|
-
} }),
|
|
542
|
-
|
|
555
|
+
} }), Et = T("/_auth/projects/$projectId/services/$serviceType")({
|
|
556
|
+
staticData: { section: "services" },
|
|
557
|
+
loader: ({ context: e, params: t }) => {
|
|
558
|
+
if (!e.serviceExtensions.some((e) => e.serviceType === t.serviceType)) throw Re();
|
|
559
|
+
},
|
|
560
|
+
component: E(() => import("./_serviceType-DS8DxsrP.mjs"), "component")
|
|
561
|
+
}), Dt = T("/_auth/projects/$projectId/storage/")({ beforeLoad: ({ params: e }) => {
|
|
562
|
+
throw D({
|
|
543
563
|
to: "/projects/$projectId",
|
|
544
564
|
params: e
|
|
545
565
|
});
|
|
546
|
-
} }),
|
|
547
|
-
staticData: {
|
|
548
|
-
section: "compute",
|
|
549
|
-
service: "images",
|
|
550
|
-
analytics: { name: "compute.images.detail" },
|
|
551
|
-
isDetail: !0,
|
|
552
|
-
sectionCrumb: { labelKey: "Compute" },
|
|
553
|
-
crumb: {
|
|
554
|
-
labelKey: "Images",
|
|
555
|
-
to: "/projects/$projectId/compute/images"
|
|
556
|
-
}
|
|
557
|
-
},
|
|
558
|
-
validateSearch: P.object({ tab: P.enum(["details", "sharing"]).optional() }),
|
|
559
|
-
loader: async ({ context: e, params: t }) => {
|
|
560
|
-
try {
|
|
561
|
-
let n = await e.trpcClient?.compute.getImageById.query({
|
|
562
|
-
project_id: t.projectId,
|
|
563
|
-
imageId: t.imageId
|
|
564
|
-
});
|
|
565
|
-
return { imageTitle: n?.name ?? n?.id ?? null };
|
|
566
|
-
} catch {
|
|
567
|
-
return { imageTitle: null };
|
|
568
|
-
}
|
|
569
|
-
},
|
|
570
|
-
head: ({ loaderData: e }) => ({ meta: [{ title: e?.imageTitle ?? "Image Details" }] }),
|
|
571
|
-
component: k(() => import("./_imageId-BtJ7GmYB.mjs"), "component"),
|
|
572
|
-
beforeLoad: async ({ context: e, params: t }) => {
|
|
573
|
-
let { trpcClient: n } = e, { projectId: r } = t, i = await n?.auth.getAvailableServices.query() || [], a = v(i);
|
|
574
|
-
if (!a.image && !a.compute) throw A({
|
|
575
|
-
to: "/projects/$projectId",
|
|
576
|
-
params: { projectId: r }
|
|
577
|
-
});
|
|
578
|
-
if (!a.image.glance) throw A({
|
|
579
|
-
to: "/projects/$projectId",
|
|
580
|
-
params: { projectId: t.projectId }
|
|
581
|
-
});
|
|
582
|
-
}
|
|
583
|
-
}), G = P.string().brand("ISO8601Timestamp"), mt = P.enum(["asc", "desc"]), ht = P.enum([
|
|
566
|
+
} }), B = A.string().brand("ISO8601Timestamp"), Ot = A.enum(["asc", "desc"]), kt = A.enum([
|
|
584
567
|
"ACTIVE",
|
|
585
568
|
"DOWN",
|
|
586
569
|
"BUILD",
|
|
587
570
|
"ERROR"
|
|
588
|
-
]),
|
|
571
|
+
]), V = A.enum([
|
|
589
572
|
"ACTIVE",
|
|
590
573
|
"DOWN",
|
|
591
574
|
"ERROR"
|
|
592
|
-
]),
|
|
593
|
-
status:
|
|
594
|
-
name:
|
|
595
|
-
admin_state_up:
|
|
596
|
-
network_id:
|
|
597
|
-
device_owner:
|
|
598
|
-
mac_address:
|
|
599
|
-
device_id:
|
|
600
|
-
}),
|
|
601
|
-
protocol:
|
|
602
|
-
internal_ip_address:
|
|
603
|
-
internal_port:
|
|
604
|
-
internal_port_range:
|
|
605
|
-
internal_port_id:
|
|
606
|
-
external_port:
|
|
607
|
-
external_port_range:
|
|
608
|
-
id:
|
|
609
|
-
description:
|
|
610
|
-
}),
|
|
611
|
-
router_id:
|
|
612
|
-
description:
|
|
613
|
-
distributed:
|
|
614
|
-
dns_domain:
|
|
615
|
-
dns_name:
|
|
616
|
-
created_at:
|
|
617
|
-
updated_at:
|
|
618
|
-
revision_number:
|
|
619
|
-
project_id:
|
|
620
|
-
tenant_id:
|
|
621
|
-
floating_network_id:
|
|
622
|
-
fixed_ip_address:
|
|
623
|
-
floating_ip_address:
|
|
624
|
-
port_id:
|
|
625
|
-
id:
|
|
626
|
-
status:
|
|
627
|
-
port_details:
|
|
628
|
-
tags:
|
|
629
|
-
port_forwardings:
|
|
630
|
-
qos_network_policy_id:
|
|
631
|
-
qos_policy_id:
|
|
575
|
+
]), At = A.object({
|
|
576
|
+
status: V,
|
|
577
|
+
name: A.string(),
|
|
578
|
+
admin_state_up: A.boolean(),
|
|
579
|
+
network_id: A.string(),
|
|
580
|
+
device_owner: A.string(),
|
|
581
|
+
mac_address: A.string(),
|
|
582
|
+
device_id: A.string()
|
|
583
|
+
}), jt = A.object({
|
|
584
|
+
protocol: A.enum(["tcp", "udp"]),
|
|
585
|
+
internal_ip_address: A.string(),
|
|
586
|
+
internal_port: A.number().optional(),
|
|
587
|
+
internal_port_range: A.string().optional(),
|
|
588
|
+
internal_port_id: A.string().optional(),
|
|
589
|
+
external_port: A.number().optional(),
|
|
590
|
+
external_port_range: A.string().optional(),
|
|
591
|
+
id: A.string(),
|
|
592
|
+
description: A.string().nullable().optional()
|
|
593
|
+
}), H = A.object({
|
|
594
|
+
router_id: A.string().nullable(),
|
|
595
|
+
description: A.string().nullable().optional(),
|
|
596
|
+
distributed: A.boolean().optional(),
|
|
597
|
+
dns_domain: A.string().optional(),
|
|
598
|
+
dns_name: A.string().optional(),
|
|
599
|
+
created_at: B.optional(),
|
|
600
|
+
updated_at: B.optional(),
|
|
601
|
+
revision_number: A.number(),
|
|
602
|
+
project_id: A.string(),
|
|
603
|
+
tenant_id: A.string(),
|
|
604
|
+
floating_network_id: A.string(),
|
|
605
|
+
fixed_ip_address: A.string().nullable(),
|
|
606
|
+
floating_ip_address: A.string(),
|
|
607
|
+
port_id: A.string().nullable(),
|
|
608
|
+
id: A.string(),
|
|
609
|
+
status: V,
|
|
610
|
+
port_details: At.nullable().optional(),
|
|
611
|
+
tags: A.array(A.string()).optional(),
|
|
612
|
+
port_forwardings: A.array(jt).nullish(),
|
|
613
|
+
qos_network_policy_id: A.string().optional(),
|
|
614
|
+
qos_policy_id: A.string().optional()
|
|
632
615
|
});
|
|
633
|
-
|
|
634
|
-
project_id:
|
|
635
|
-
floatingip_id:
|
|
636
|
-
}),
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
sort_key: P.enum([
|
|
616
|
+
A.object({
|
|
617
|
+
project_id: A.string(),
|
|
618
|
+
floatingip_id: A.string()
|
|
619
|
+
}), A.object({
|
|
620
|
+
project_id: A.string().trim().min(1, "project_id must be a non-empty string"),
|
|
621
|
+
floating_network_id: A.string(),
|
|
622
|
+
fixed_ip_address: A.string().optional(),
|
|
623
|
+
floating_ip_address: A.string().optional(),
|
|
624
|
+
port_id: A.string().optional(),
|
|
625
|
+
subnet_id: A.string().optional(),
|
|
626
|
+
distributed: A.boolean().optional(),
|
|
627
|
+
description: A.string().optional(),
|
|
628
|
+
dns_domain: A.string().optional(),
|
|
629
|
+
dns_name: A.string().optional(),
|
|
630
|
+
qos_policy_id: A.string().optional()
|
|
631
|
+
}), A.object({
|
|
632
|
+
project_id: A.string(),
|
|
633
|
+
floatingip_id: A.string(),
|
|
634
|
+
port_id: A.string().nullable(),
|
|
635
|
+
fixed_ip_address: A.string().optional(),
|
|
636
|
+
description: A.string().optional(),
|
|
637
|
+
distributed: A.boolean().optional()
|
|
638
|
+
}), A.object({ floatingip: H }), A.object({ floatingips: A.array(H) });
|
|
639
|
+
var Mt = A.object({
|
|
640
|
+
project_id: A.string(),
|
|
641
|
+
id: A.string().optional(),
|
|
642
|
+
router_id: A.string().nullable().optional(),
|
|
643
|
+
status: V.optional(),
|
|
644
|
+
tenant_id: A.string().optional(),
|
|
645
|
+
revision_number: A.number().optional(),
|
|
646
|
+
description: A.string().nullable().optional(),
|
|
647
|
+
floating_network_id: A.string().optional(),
|
|
648
|
+
fixed_ip_address: A.string().optional(),
|
|
649
|
+
floating_ip_address: A.string().optional(),
|
|
650
|
+
port_id: A.string().nullable().optional(),
|
|
651
|
+
sort_dir: Ot.optional(),
|
|
652
|
+
sort_key: A.enum([
|
|
671
653
|
"fixed_ip_address",
|
|
672
654
|
"floating_ip_address",
|
|
673
655
|
"floating_network_id",
|
|
@@ -677,226 +659,250 @@ var vt = P.object({
|
|
|
677
659
|
"tenant_id",
|
|
678
660
|
"project_id"
|
|
679
661
|
]).optional(),
|
|
680
|
-
tags:
|
|
681
|
-
"tags-any":
|
|
682
|
-
"not-tags":
|
|
683
|
-
"not-tags-any":
|
|
684
|
-
fields:
|
|
685
|
-
limit:
|
|
686
|
-
marker:
|
|
687
|
-
page_reverse:
|
|
688
|
-
searchTerm:
|
|
662
|
+
tags: A.array(A.string()).optional(),
|
|
663
|
+
"tags-any": A.string().optional(),
|
|
664
|
+
"not-tags": A.string().optional(),
|
|
665
|
+
"not-tags-any": A.string().optional(),
|
|
666
|
+
fields: A.union([A.string(), A.array(A.string())]).optional(),
|
|
667
|
+
limit: A.number().optional(),
|
|
668
|
+
marker: A.string().optional(),
|
|
669
|
+
page_reverse: A.boolean().optional(),
|
|
670
|
+
searchTerm: A.string().optional()
|
|
689
671
|
});
|
|
690
|
-
|
|
691
|
-
project_id:
|
|
692
|
-
"router:external":
|
|
672
|
+
A.object({
|
|
673
|
+
project_id: A.string(),
|
|
674
|
+
"router:external": A.literal(!0).default(!0)
|
|
693
675
|
});
|
|
694
|
-
var
|
|
695
|
-
id:
|
|
696
|
-
name:
|
|
697
|
-
project_id:
|
|
698
|
-
"router:external":
|
|
699
|
-
shared:
|
|
700
|
-
status:
|
|
701
|
-
updated_at:
|
|
702
|
-
is_default:
|
|
676
|
+
var Nt = A.object({
|
|
677
|
+
id: A.string(),
|
|
678
|
+
name: A.string(),
|
|
679
|
+
project_id: A.string(),
|
|
680
|
+
"router:external": A.boolean().optional(),
|
|
681
|
+
shared: A.boolean(),
|
|
682
|
+
status: kt,
|
|
683
|
+
updated_at: B.optional(),
|
|
684
|
+
is_default: A.boolean().optional()
|
|
703
685
|
});
|
|
704
|
-
|
|
705
|
-
var
|
|
706
|
-
id:
|
|
707
|
-
name:
|
|
686
|
+
A.object({ networks: A.array(Nt) });
|
|
687
|
+
var Pt = A.object({
|
|
688
|
+
id: A.string(),
|
|
689
|
+
name: A.string()
|
|
708
690
|
});
|
|
709
|
-
|
|
710
|
-
project_id:
|
|
711
|
-
status:
|
|
712
|
-
admin_state_up:
|
|
691
|
+
A.object({ zones: A.array(Pt) }), A.object({
|
|
692
|
+
project_id: A.string(),
|
|
693
|
+
status: A.literal("ACTIVE").default("ACTIVE"),
|
|
694
|
+
admin_state_up: A.literal(!0).default(!0)
|
|
713
695
|
});
|
|
714
|
-
var
|
|
715
|
-
id:
|
|
716
|
-
name:
|
|
717
|
-
fixed_ips:
|
|
718
|
-
ip_address:
|
|
719
|
-
subnet_id:
|
|
696
|
+
var Ft = A.object({
|
|
697
|
+
id: A.string(),
|
|
698
|
+
name: A.string().nullable().optional(),
|
|
699
|
+
fixed_ips: A.array(A.object({
|
|
700
|
+
ip_address: A.string(),
|
|
701
|
+
subnet_id: A.string().optional()
|
|
720
702
|
})).optional()
|
|
721
703
|
});
|
|
722
|
-
|
|
704
|
+
A.object({ ports: A.array(Ft) });
|
|
723
705
|
//#endregion
|
|
724
706
|
//#region src/client/routes/_auth/projects/$projectId/network/floatingips/index.tsx
|
|
725
|
-
var
|
|
726
|
-
status:
|
|
727
|
-
search:
|
|
728
|
-
sortBy:
|
|
729
|
-
sortDirection:
|
|
730
|
-
},
|
|
707
|
+
var It = () => import("./floatingips-xbO_mu4f.mjs"), U = {
|
|
708
|
+
status: V.optional(),
|
|
709
|
+
search: A.string().optional(),
|
|
710
|
+
sortBy: Mt.shape.sort_key.unwrap().optional(),
|
|
711
|
+
sortDirection: A.enum(["asc", "desc"]).optional()
|
|
712
|
+
}, Lt = A.looseObject(U), Rt = T("/_auth/projects/$projectId/network/floatingips/")({
|
|
731
713
|
staticData: {
|
|
732
714
|
section: "network",
|
|
733
715
|
service: "floatingips",
|
|
734
|
-
analytics: { name: "network.floatingips.list" }
|
|
735
|
-
sectionCrumb: { labelKey: "Network" },
|
|
736
|
-
crumb: { labelKey: "Floating IPs" }
|
|
716
|
+
analytics: { name: "network.floatingips.list" }
|
|
737
717
|
},
|
|
738
718
|
validateSearch: (e) => {
|
|
739
|
-
let t =
|
|
719
|
+
let t = Lt.safeParse(e);
|
|
740
720
|
return t.success ? t.data : {
|
|
741
721
|
...e,
|
|
742
|
-
status:
|
|
743
|
-
search:
|
|
744
|
-
sortBy:
|
|
745
|
-
sortDirection:
|
|
722
|
+
status: U.status.safeParse(e.status).success ? e.status : void 0,
|
|
723
|
+
search: U.search.safeParse(e.search).success ? e.search : void 0,
|
|
724
|
+
sortBy: U.sortBy.safeParse(e.sortBy).success ? e.sortBy : void 0,
|
|
725
|
+
sortDirection: U.sortDirection.safeParse(e.sortDirection).success ? e.sortDirection : void 0
|
|
746
726
|
};
|
|
747
727
|
},
|
|
748
|
-
head: () => ({ meta: [{ title:
|
|
749
|
-
component:
|
|
750
|
-
}),
|
|
728
|
+
head: () => ({ meta: [{ title: M._({ id: "u77/s4" }) }] }),
|
|
729
|
+
component: E(It, "component")
|
|
730
|
+
}), zt = T("/_auth/projects/$projectId/services/$serviceType/")({ component: E(() => import("./_serviceType-M8d9rOT6.mjs"), "component") }), Bt = T("/_auth/projects/$projectId/services/$serviceType/$")({ component: E(() => import("./_-CAsCx-Ay.mjs"), "component") }), Vt = ue.update({
|
|
751
731
|
id: "/",
|
|
752
732
|
path: "/",
|
|
753
|
-
getParentRoute: () =>
|
|
754
|
-
}),
|
|
733
|
+
getParentRoute: () => P
|
|
734
|
+
}), W = nt.update({
|
|
755
735
|
id: "/_auth",
|
|
756
|
-
getParentRoute: () =>
|
|
757
|
-
}),
|
|
736
|
+
getParentRoute: () => P
|
|
737
|
+
}), Ht = rt.update({
|
|
758
738
|
id: "/about",
|
|
759
739
|
path: "/about",
|
|
760
|
-
getParentRoute: () =>
|
|
761
|
-
}),
|
|
740
|
+
getParentRoute: () => P
|
|
741
|
+
}), Ut = it.update({
|
|
762
742
|
id: "/aurora",
|
|
763
743
|
path: "/aurora",
|
|
764
|
-
getParentRoute: () =>
|
|
765
|
-
}),
|
|
744
|
+
getParentRoute: () => W
|
|
745
|
+
}), Wt = at.update({
|
|
766
746
|
id: "/accounts/",
|
|
767
747
|
path: "/accounts/",
|
|
768
|
-
getParentRoute: () =>
|
|
769
|
-
}),
|
|
748
|
+
getParentRoute: () => W
|
|
749
|
+
}), Gt = I.update({
|
|
770
750
|
id: "/projects/",
|
|
771
751
|
path: "/projects/",
|
|
772
|
-
getParentRoute: () =>
|
|
773
|
-
}),
|
|
752
|
+
getParentRoute: () => W
|
|
753
|
+
}), G = le.update({
|
|
774
754
|
id: "/projects/$projectId",
|
|
775
755
|
path: "/projects/$projectId",
|
|
776
|
-
getParentRoute: () =>
|
|
777
|
-
}),
|
|
756
|
+
getParentRoute: () => W
|
|
757
|
+
}), Kt = pt.update({
|
|
778
758
|
id: "/",
|
|
779
759
|
path: "/",
|
|
780
|
-
getParentRoute: () =>
|
|
781
|
-
}),
|
|
760
|
+
getParentRoute: () => G
|
|
761
|
+
}), K = mt.update({
|
|
782
762
|
id: "/network",
|
|
783
763
|
path: "/network",
|
|
784
|
-
getParentRoute: () =>
|
|
785
|
-
}),
|
|
764
|
+
getParentRoute: () => G
|
|
765
|
+
}), q = de.update({
|
|
786
766
|
id: "/services",
|
|
787
767
|
path: "/services",
|
|
788
|
-
getParentRoute: () =>
|
|
789
|
-
}),
|
|
768
|
+
getParentRoute: () => G
|
|
769
|
+
}), qt = ht.update({
|
|
790
770
|
id: "/compute/",
|
|
791
771
|
path: "/compute/",
|
|
792
|
-
getParentRoute: () =>
|
|
793
|
-
}),
|
|
772
|
+
getParentRoute: () => G
|
|
773
|
+
}), J = vt.update({
|
|
794
774
|
id: "/compute/flavors",
|
|
795
775
|
path: "/compute/flavors",
|
|
796
|
-
getParentRoute: () =>
|
|
797
|
-
}),
|
|
776
|
+
getParentRoute: () => G
|
|
777
|
+
}), Y = xt.update({
|
|
798
778
|
id: "/compute/images",
|
|
799
779
|
path: "/compute/images",
|
|
800
|
-
getParentRoute: () =>
|
|
801
|
-
}),
|
|
780
|
+
getParentRoute: () => G
|
|
781
|
+
}), Jt = St.update({
|
|
802
782
|
id: "/",
|
|
803
783
|
path: "/",
|
|
804
|
-
getParentRoute: () =>
|
|
805
|
-
}),
|
|
784
|
+
getParentRoute: () => K
|
|
785
|
+
}), X = Ct.update({
|
|
786
|
+
id: "/floatingips",
|
|
787
|
+
path: "/floatingips",
|
|
788
|
+
getParentRoute: () => K
|
|
789
|
+
}), Z = wt.update({
|
|
790
|
+
id: "/securitygroups",
|
|
791
|
+
path: "/securitygroups",
|
|
792
|
+
getParentRoute: () => K
|
|
793
|
+
}), Yt = Tt.update({
|
|
806
794
|
id: "/",
|
|
807
795
|
path: "/",
|
|
808
|
-
getParentRoute: () =>
|
|
809
|
-
}),
|
|
796
|
+
getParentRoute: () => q
|
|
797
|
+
}), Q = Et.update({
|
|
798
|
+
id: "/$serviceType",
|
|
799
|
+
path: "/$serviceType",
|
|
800
|
+
getParentRoute: () => q
|
|
801
|
+
}), Xt = Dt.update({
|
|
810
802
|
id: "/storage/",
|
|
811
803
|
path: "/storage/",
|
|
812
|
-
getParentRoute: () =>
|
|
813
|
-
}),
|
|
804
|
+
getParentRoute: () => G
|
|
805
|
+
}), Zt = fe.update({
|
|
814
806
|
id: "/",
|
|
815
807
|
path: "/",
|
|
816
|
-
getParentRoute: () =>
|
|
817
|
-
}),
|
|
808
|
+
getParentRoute: () => J
|
|
809
|
+
}), Qt = pe.update({
|
|
818
810
|
id: "/$flavorId",
|
|
819
811
|
path: "/$flavorId",
|
|
820
|
-
getParentRoute: () =>
|
|
821
|
-
}),
|
|
812
|
+
getParentRoute: () => J
|
|
813
|
+
}), $t = me.update({
|
|
822
814
|
id: "/",
|
|
823
815
|
path: "/",
|
|
824
|
-
getParentRoute: () =>
|
|
825
|
-
}),
|
|
816
|
+
getParentRoute: () => Y
|
|
817
|
+
}), en = he.update({
|
|
826
818
|
id: "/$imageId",
|
|
827
819
|
path: "/$imageId",
|
|
828
|
-
getParentRoute: () =>
|
|
829
|
-
}),
|
|
830
|
-
id: "/
|
|
831
|
-
path: "/
|
|
832
|
-
getParentRoute: () => Z
|
|
833
|
-
}), Vt = me.update({
|
|
834
|
-
id: "/securitygroups/",
|
|
835
|
-
path: "/securitygroups/",
|
|
836
|
-
getParentRoute: () => Z
|
|
837
|
-
}), Ht = he.update({
|
|
838
|
-
id: "/floatingips/$floatingIpId/",
|
|
839
|
-
path: "/floatingips/$floatingIpId/",
|
|
840
|
-
getParentRoute: () => Z
|
|
841
|
-
}), Ut = ge.update({
|
|
842
|
-
id: "/securitygroups/$securityGroupId/",
|
|
843
|
-
path: "/securitygroups/$securityGroupId/",
|
|
844
|
-
getParentRoute: () => Z
|
|
845
|
-
}), Wt = _e.update({
|
|
846
|
-
id: "/storage/$provider/$storageType/",
|
|
847
|
-
path: "/storage/$provider/$storageType/",
|
|
820
|
+
getParentRoute: () => Y
|
|
821
|
+
}), tn = Rt.update({
|
|
822
|
+
id: "/",
|
|
823
|
+
path: "/",
|
|
848
824
|
getParentRoute: () => X
|
|
849
|
-
}),
|
|
850
|
-
id: "/
|
|
851
|
-
path: "/
|
|
825
|
+
}), nn = ge.update({
|
|
826
|
+
id: "/",
|
|
827
|
+
path: "/",
|
|
828
|
+
getParentRoute: () => Z
|
|
829
|
+
}), rn = zt.update({
|
|
830
|
+
id: "/",
|
|
831
|
+
path: "/",
|
|
832
|
+
getParentRoute: () => Q
|
|
833
|
+
}), an = Bt.update({
|
|
834
|
+
id: "/$",
|
|
835
|
+
path: "/$",
|
|
836
|
+
getParentRoute: () => Q
|
|
837
|
+
}), $ = _e.update({
|
|
838
|
+
id: "/storage/$provider/$storageType",
|
|
839
|
+
path: "/storage/$provider/$storageType",
|
|
840
|
+
getParentRoute: () => G
|
|
841
|
+
}), on = ve.update({
|
|
842
|
+
id: "/$floatingIpId/",
|
|
843
|
+
path: "/$floatingIpId/",
|
|
852
844
|
getParentRoute: () => X
|
|
853
|
-
}),
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
},
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
},
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
},
|
|
845
|
+
}), sn = ye.update({
|
|
846
|
+
id: "/$securityGroupId/",
|
|
847
|
+
path: "/$securityGroupId/",
|
|
848
|
+
getParentRoute: () => Z
|
|
849
|
+
}), cn = be.update({
|
|
850
|
+
id: "/",
|
|
851
|
+
path: "/",
|
|
852
|
+
getParentRoute: () => $
|
|
853
|
+
}), ln = xe.update({
|
|
854
|
+
id: "/$containerName/objects/",
|
|
855
|
+
path: "/$containerName/objects/",
|
|
856
|
+
getParentRoute: () => $
|
|
857
|
+
}), un = {
|
|
858
|
+
AuthProjectsProjectIdNetworkFloatingipsIndexRoute: tn,
|
|
859
|
+
AuthProjectsProjectIdNetworkFloatingipsFloatingIpIdIndexRoute: on
|
|
860
|
+
}, dn = X._addFileChildren(un), fn = {
|
|
861
|
+
AuthProjectsProjectIdNetworkSecuritygroupsIndexRoute: nn,
|
|
862
|
+
AuthProjectsProjectIdNetworkSecuritygroupsSecurityGroupIdIndexRoute: sn
|
|
863
|
+
}, pn = {
|
|
864
|
+
AuthProjectsProjectIdNetworkFloatingipsRoute: dn,
|
|
865
|
+
AuthProjectsProjectIdNetworkSecuritygroupsRoute: Z._addFileChildren(fn),
|
|
866
|
+
AuthProjectsProjectIdNetworkIndexRoute: Jt
|
|
867
|
+
}, mn = K._addFileChildren(pn), hn = {
|
|
868
|
+
AuthProjectsProjectIdServicesServiceTypeSplatRoute: an,
|
|
869
|
+
AuthProjectsProjectIdServicesServiceTypeIndexRoute: rn
|
|
870
|
+
}, gn = {
|
|
871
|
+
AuthProjectsProjectIdServicesServiceTypeRoute: Q._addFileChildren(hn),
|
|
872
|
+
AuthProjectsProjectIdServicesIndexRoute: Yt
|
|
873
|
+
}, _n = q._addFileChildren(gn), vn = {
|
|
874
|
+
AuthProjectsProjectIdComputeFlavorsFlavorIdRoute: Qt,
|
|
875
|
+
AuthProjectsProjectIdComputeFlavorsIndexRoute: Zt
|
|
876
|
+
}, yn = J._addFileChildren(vn), bn = {
|
|
877
|
+
AuthProjectsProjectIdComputeImagesImageIdRoute: en,
|
|
878
|
+
AuthProjectsProjectIdComputeImagesIndexRoute: $t
|
|
879
|
+
}, xn = Y._addFileChildren(bn), Sn = {
|
|
880
|
+
AuthProjectsProjectIdStorageProviderStorageTypeIndexRoute: cn,
|
|
881
|
+
AuthProjectsProjectIdStorageProviderStorageTypeContainerNameObjectsIndexRoute: ln
|
|
882
|
+
}, Cn = {
|
|
883
|
+
AuthProjectsProjectIdNetworkRoute: mn,
|
|
884
|
+
AuthProjectsProjectIdServicesRoute: _n,
|
|
885
|
+
AuthProjectsProjectIdIndexRoute: Kt,
|
|
886
|
+
AuthProjectsProjectIdComputeFlavorsRoute: yn,
|
|
887
|
+
AuthProjectsProjectIdComputeImagesRoute: xn,
|
|
888
|
+
AuthProjectsProjectIdComputeIndexRoute: qt,
|
|
889
|
+
AuthProjectsProjectIdStorageIndexRoute: Xt,
|
|
890
|
+
AuthProjectsProjectIdStorageProviderStorageTypeRoute: $._addFileChildren(Sn)
|
|
891
|
+
}, wn = {
|
|
892
|
+
AuthAuroraRoute: Ut,
|
|
893
|
+
AuthProjectsProjectIdRoute: G._addFileChildren(Cn),
|
|
894
|
+
AuthAccountsIndexRoute: Wt,
|
|
895
|
+
AuthProjectsIndexRoute: Gt
|
|
896
|
+
}, Tn = {
|
|
897
|
+
IndexRoute: Vt,
|
|
898
|
+
AuthRoute: W._addFileChildren(wn),
|
|
899
|
+
AboutRoute: Ht
|
|
900
|
+
}, En = P._addFileChildren(Tn)._addFileTypes();
|
|
885
901
|
//#endregion
|
|
886
902
|
//#region src/client/router.ts
|
|
887
|
-
function
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
let t = r[e], n = t.options?.getParentRoute;
|
|
891
|
-
if (!n) throw Error(`additionalProjectServices[${e}] route is missing options.getParentRoute()`);
|
|
892
|
-
let i = n(), a = i.children ?? {};
|
|
893
|
-
i._addFileChildren({
|
|
894
|
-
...a,
|
|
895
|
-
[`_extra_${e}`]: t
|
|
896
|
-
});
|
|
897
|
-
}
|
|
898
|
-
return De({
|
|
899
|
-
routeTree: nn,
|
|
903
|
+
function Dn(e, t, n) {
|
|
904
|
+
return Le({
|
|
905
|
+
routeTree: En,
|
|
900
906
|
context: {
|
|
901
907
|
trpcReact: e,
|
|
902
908
|
trpcClient: t,
|
|
@@ -905,16 +911,16 @@ function rn(e, t, n) {
|
|
|
905
911
|
handleThemeToggle: void 0,
|
|
906
912
|
slots: void 0,
|
|
907
913
|
onTrackEvent: void 0,
|
|
908
|
-
|
|
914
|
+
serviceExtensions: n ?? []
|
|
909
915
|
}
|
|
910
916
|
});
|
|
911
917
|
}
|
|
912
918
|
//#endregion
|
|
913
919
|
//#region src/locales/en/messages.ts
|
|
914
|
-
var an = JSON.parse("{\"+0B+ue\":[\"Projects\"],\"+1rTEL\":[\"Import Externally Signed Certificate\"],\"+1xG4p\":[\"Click the button below to automatically generate credentials for this project. You only need to do this once.\"],\"+8m5QE\":[\"To access S3 Object Storage, you need EC2 credentials (access key + secret key). These credentials authenticate your requests to the Ceph storage backend.\"],\"+9CXS9\":[\"Deactivate Images\"],\"+HVj+D\":[\"Add a Signed Certificate to your CA to activate it\"],\"+Jcye3\":[\"Key Name\"],\"+Lt5cp\":[\"You are not authorized to add tenant access. Please log in again.\"],\"+Nhol2\":[\"Certificate not found\"],\"+NwLgN\":[\"Activating this image will allow it to be used to launch new instances again.\"],\"+Nx1wc\":[\"Failed to load Floating IPs\"],\"+OEi73\":[\"Object Storage (Swift)\"],\"+Pe7SS\":[\"Failed to delete policy\"],\"+nQTmZ\":[\"This tenant does not have access to the flavor.\"],\"+p6nHr\":[\"Failed to load object metadata: \",[\"metadataErrorMessage\"]],\"+pJjJF\":[\"After restoring, this version's content will become the new latest version.\"],\"+rtZ8i\":[\"Version ID:\"],\"+zy2Nq\":[\"Type\"],\"/0+NVm\":[\"What happens when suspended:\"],\"/9Squ9\":[\"You don't have permission to view this flavor's details.\"],\"/AlhPT\":[\"Confirm deletion of \",[\"displayName\"],\". All objects inside this folder will be marked as deleted but can be restored from version history.\"],\"/BZLRP\":[\"To confirm this action, type the word <0>“detach”</0> in the field below.\"],\"/EcdUM\":[\"Your action is required\"],\"/HejCc\":[\"This bucket does not have a policy attached.\"],\"/HgF9q\":[\"Sort by\"],\"/InK0O\":[\"Total size\"],\"/LXXlY\":[\"Properties of \\\"\",[\"displayName\"],\"\\\" were successfully updated.\"],\"/LqWNN\":[\"Could not delete \\\"\",[\"objectName\"],\"\\\": \",[\"errorMessage\"]],\"/NeNjH\":[\"Container \\\"\",[\"containerName\"],\"\\\" properties were successfully updated.\"],\"/Nmxy/\":[\"No key pairs available.\"],\"/QIkBY\":[\"<0>Secure & Reliable:</0> Your data and operations are safeguarded with enterprise-grade security and robust reliability.\"],\"/Qox3b\":[\"A folder with this name already exists\"],\"/Z5n1b\":[\"Create folder below:\"],\"/bUiYk\":[\"Router ID\"],\"/eFtWI\":[\"RBAC Policies\"],\"/fwE6J\":[\"Older\"],\"/pOQrn\":[\"This action is irreversible. Deleting a bucket permanently removes it and cannot be undone. The bucket must be empty before deletion.\"],\"/xnbdQ\":[\"The specified user has access. A token for the user (scoped to any project) must be included in the request.\"],\"01/uUD\":[\"Keep segments (delete manifest only)\"],\"03FYT6\":[\"Download Cancelled\"],\"07WXfc\":[\"Server returned unexpected data format for extra specs.\"],\"0BSSYj\":[\"Server error occurred while removing tenant access. Please try again later.\"],\"0Gd0NU\":[\"Shared\"],\"0OrVx2\":[\"CORS Configuration Saved\"],\"0P2gFy\":[\"The page you are looking for does not exist.\"],\"0TREPo\":[\"… and \",[\"hiddenDeletableCount\"],\" more\"],\"0Th0CH\":[[\"selectedCount\",\"plural\",{\"one\":[\"Empty Container\"],\"other\":[\"Empty \",\"#\",\" Containers\"]}]],\"0WsqO0\":[\"Containers Emptied\"],\"0cVgUw\":[\"Filter by\"],\"0cl0a5\":[\"Search images...\"],\"0eY8Mz\":[\"There are no Floating IPs available for this project. Floating IPs allow you to map public IP addresses to instances.\"],\"0efWir\":[[\"totalCount\",\"plural\",{\"one\":[\"Empty Container\"],\"other\":[\"Empty \",\"#\",\" Containers\"]}]],\"0kCt7e\":[\"The flavor data provided is invalid. Please check your input.\"],\"0kc0zi\":[\"Server error occurred while deleting the extra spec. Please try again later.\"],\"0o0OhW\":[\"No objects found.\"],\"0p+s6m\":[\"Type: \",[\"typeValue\"],\", Code: \",[\"codeValue\"]],\"0u9jhd\":[\"Detaching this Floating IP will remove its association with the current port. The instance will no longer be reachable through this address.\"],\"16085O\":[\"IP Version\"],\"1DbiGM\":[\"Issuing Self-Signed Certificate...\"],\"1DzQpj\":[\"This folder is empty, use New Folder to create one.\"],\"1H2g6v\":[\"Moving object...\"],\"1NFtQz\":[\"Failed to Delete Bucket\"],\"1NS3nd\":[[\"emptiedCount\",\"plural\",{\"one\":[\"#\",\" container\"],\"other\":[\"#\",\" containers\"]}],\" successfully emptied. \",[\"totalDeleted\",\"plural\",{\"one\":[\"#\",\" object\"],\"other\":[\"#\",\" objects\"]}],\" deleted in total.\"],\"1RwosK\":[\"Target project ID is required\"],\"1UzENP\":[\"No\"],\"1VDqZj\":[\"<0>Future-Ready:</0> Aurora is designed to evolve with the latest trends in cloud technology, ensuring your solution is always cutting-edge.\"],\"1W3TqV\":[\"No new versions will be created\"],\"1WcLGC\":[\"e.g. allow-frontend-app\"],\"1bj2LS\":[\"Could not restore \\\"\",[\"displayName\"],\"\\\": \",[\"errorMessage\"]],\"1iQtS2\":[\"Showing first \",[\"actualObjectCount\"],\" of \",[\"total\"],\" objects\"],\"1iUuTT\":[\"Your session has expired. Please log in again.\"],\"1mFMeP\":[\"Delete Versions\"],\"1ojTVo\":[\"Select a DNS domain.\"],\"1pGUZa\":[\"Session expires in\"],\"1pbWEi\":[\"No objects were deleted: \",[\"errorMessage\"]],\"1pdLQw\":[\"Image not found\"],\"1rLu3+\":[\"Could not empty container \\\"\",[\"containerName\"],\"\\\": \",[\"errorMessage\"]],\"1rPB1p\":[\"The flavor or tenant could not be found. Please verify they exist.\"],\"1t/NnN\":[\"Reject\"],\"1zZ1IK\":[\"Hi\"],\"20Kpaw\":[\"Flavor \\\"\",[\"flavorName\"],\"\\\" has been successfully deleted.\"],\"20afDk\":[\"… and \",[\"hiddenCount\"],\" more\"],\"20axE5\":[\"Shared by Project\"],\"23wBCX\":[\"Public Read Access\"],\"2G+7C1\":[\"Enter a name for the new folder.\"],\"2G6hLq\":[\"Delete \",[\"specKey\"]],\"2Inn83\":[\"Bulk upload of archive files\"],\"2PRzsq\":[\"Could not create folder \\\"\",[\"folderPath\"],\"\\\": \",[\"errorMessage\"]],\"2TtIL2\":[\"Stored as X-Object-Meta-* headers. Keys are case-insensitive.\"],\"2ULlt3\":[\"The JSON file must contain imported_certificate_chain.\"],\"2cJIlz\":[\"Floating Network ID\"],\"2dnZwV\":[\"Could not delete folder \\\"\",[\"folderName\"],\"\\\": \",[\"errorMessage\"]],\"2gH+i8\":[\"You are not authorized to delete flavors. Please log in again.\"],\"2mbisJ\":[\"Metadata \\\"\",[\"trimmedKey\"],\"\\\" has been added successfully.\"],\"2q/Q7x\":[\"Visibility\"],\"2xOCJW\":[\"This action cannot be undone.\"],\"2xbYVD\":[\"Could not update \\\"\",[\"displayName\"],\"\\\": \",[\"errorMessage\"]],\"2ysnjX\":[\"<0>Enhanced Productivity:</0> By reducing operational complexity, Aurora helps your team focus on what truly matters—innovating and driving business success.\"],\"2zceEg\":[\"This action cannot be undone. The image will be permanently deleted.\"],\"33F2A+\":[\"Type container name to confirm\"],\"3K9o2N\":[\"Certificate Imported\"],\"3Qn0me\":[\"Add Member\"],\"3dBmvU\":[\"The container cannot be deleted as it contains objects. Empty the container first.\"],\"3n+vCm\":[\"Custom duration (minutes)\"],\"3nWqQW\":[\"You are not authorized to view extra specs. Please log in again.\"],\"3nh/7E\":[\"If checked, this flavor will be available to all tenants. If unchecked, access must be explicitly granted to specific tenants.\"],\"3oChIh\":[\"<0>Unified Cloud Management:</0> Consolidates all your cloud assets into one intuitive interface.\"],\"3oc18/\":[\"Private flavors could not be loaded. You may be seeing an incomplete list.\"],\"3pq1J/\":[\"Share Object URL\"],\"3q1GLx\":[\"Pending file upload...\"],\"3tkZ6C\":[\"Only the folder itself will be restored. Objects inside this folder will remain deleted and must be restored individually.\"],\"3uDz8n\":[\"Import Signed Certificate\"],\"3x7Sws\":[\"Loading Security Group Details...\"],\"4+2wZO\":[\"Back to Certificate Authorities Details page\"],\"46gjWc\":[\"Delete Folder \\\"\",[\"displayName\"],\"\\\"\"],\"47eI0x\":[\"Description must be at least 1 character.\"],\"48QXFO\":[\"Expected format: YYYY-MM-DD HH:mm:ss\"],\"48bMai\":[\"Bucket name is required\"],\"4BITzH\":[\"Error:\"],\"4EZrJN\":[\"Rules\"],\"4O2AH3\":[\"Member \\\"\",[\"memberIdToRemove\"],\"\\\" has been removed successfully.\"],\"4bLttB\":[\"Folder name is too long (max 255 characters)\"],\"4cQTyf\":[\"Stateful security groups track connection state. This setting cannot be changed after creation.\"],\"4fbtPX\":[\"Downloading larger files may take a while. You can keep browsing buckets and folders — downloads continue in the background, and this message disappears once they finish.\"],\"4fh0Wj\":[\"Boot size\"],\"4fvDRe\":[\"Images to activate:\"],\"4fvcmm\":[\"Object will be uploaded as: <0>\",[\"selectedObjectName\"],\"</0>\"],\"4h3Eyf\":[\"\\\"\",[\"objectName\"],\"\\\" was successfully uploaded.\"],\"4kjaAc\":[\"No server groups available.\"],\"4mbrAq\":[\"1 minute\"],\"4opp4r\":[\"Security Groups\"],\"4pOfUd\":[\"Our Mission\"],\"4t2lzu\":[\"Copy Object\"],\"4t33sh\":[\"Failed to Update Object\"],\"4uXhtt\":[\"CIDR\"],\"4utWB4\":[\"Server Role:\"],\"5+FeN2\":[\"Share URL\"],\"5/wyf8\":[\"Enter a floating IP\"],\"56IxdF\":[\"Failed to load container objects: \",[\"errorMessage\"]],\"5BLR6Q\":[\"IPv4\"],\"5G/9g6\":[\"Allowed Methods\"],\"5HK1ka\":[\"Invalid CSR format.\"],\"5JDSvn\":[\"Max meta value length\"],\"5M4Te3\":[\"DNS\"],\"5MF8U2\":[\"Failed to Update Container\"],\"5Od/iS\":[\"Empty the bucket\"],\"5Okch2\":[\"Empty:\"],\"5PhMH2\":[\"Failed to Suspend Versioning\"],\"5Yrl6N\":[\"Loading Server Groups...\"],\"5aNQ3F\":[\"\\\"\",[\"objectName\"],\"\\\" was successfully copied to \",[\"destination\"],\".\"],\"5g7owI\":[\"Updating Floating IP...\"],\"5p97CR\":[\"Unable to verify bucket versioning status. Please try again.\"],\"5y3O+A\":[\"Deactivate\"],\"6+7EwD\":[\"Serve objects as index when file name is:\"],\"6+OdGi\":[\"Protocol\"],\"6/dCYd\":[\"Overview\"],\"6/xipy\":[\"Container Format\"],\"644xgx\":[\"Protected\"],\"66YUKF\":[\"Failed to Empty Bucket\"],\"6BDqha\":[\"Limits\"],\"6CDYXS\":[\"Static website serving\"],\"6E98zF\":[\"Stored as x-amz-meta-* headers. Keys are case-insensitive.\"],\"6EcekU\":[\"Target bucket\"],\"6GBt0m\":[\"Metadata\"],\"6H/Lg1\":[\"This is a public image. All users have access to it. Explicit sharing is not needed.\"],\"6KRclz\":[\"Folder Created\"],\"6OopEX\":[\"Container Emptied\"],\"6Rnrsz\":[\"Manage Access - \",[\"flavorName\"]],\"6X/9Di\":[\"\\\"\",[\"objectName\"],\"\\\" was successfully moved to \",[\"destination\"],\".\"],\"6YtxFj\":[\"Name\"],\"6Zo0bk\":[[\"count\",\"plural\",{\"one\":[\"Delete \",\"#\",\" Object\"],\"other\":[\"Delete \",\"#\",\" Objects\"]}]],\"6fuDFZ\":[\"Empty All Completed with Errors\"],\"6jAi8c\":[\"Range\"],\"6luZQA\":[\"Object Moved\"],\"6oolxV\":[\"This extra spec keys already exist. Please use different keys.\"],\"6qzsuS\":[\"Write ACLs\"],\"6sxz+g\":[\"Port Name\"],\"6w+VnM\":[\"Container Created\"],\"6z9W13\":[\"Restart\"],\"71SiMe\":[\"Version \",[\"shortVersionId\"],\"... deleted successfully\"],\"72Lg8M\":[\"Could not delete \",[\"count\"],\" CORS rules from bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"76RKuS\":[\"ICMP Code\"],\"78+riR\":[\"You are not authorized to remove tenant access. Please log in again.\"],\"7AfIPZ\":[\"Floating Network\"],\"7Bj3x9\":[\"Failed\"],\"7BpykL\":[\"Failed to create extra specs. Please try again.\"],\"7Jpa9R\":[[\"0\",\"plural\",{\"one\":[\"Delete \",\"#\",\" Rule\"],\"other\":[\"Delete \",\"#\",\" Rules\"]}]],\"7L01XJ\":[\"Actions\"],\"7LYm9R\":[\"Downloading larger files may take a while. You can keep browsing containers and folders — downloads continue in the background, and this message disappears once they finish.\"],\"7NC3vm\":[\"Subnet\"],\"7NSdfG\":[\"Emptying container \",[\"progressCurrent\"],\" of \",[\"progressTotal\"],\", please wait...\"],\"7Ocn0b\":[[\"count\",\"plural\",{\"one\":[\"#\",\" object\"],\"other\":[\"#\",\" objects\"]}]],\"7Q24LN\":[\"Policy\"],\"7RBR/D\":[\"Empty Buckets\"],\"7SGcZS\":[\"Search objects...\"],\"7T1fHv\":[\"Failed to remove member \\\"\",[\"memberIdToRemove\"],\"\\\"\"],\"7UlHhT\":[\"Metadata \\\"\",[\"keyToDelete\"],\"\\\" has been deleted successfully.\"],\"7XQ3QJ\":[\"Denied referrer: \",[\"host\"]],\"7ZnTL8\":[\"Failed to update object: \",[\"mutationErrorMessage\"]],\"7a4DvD\":[\"No servers available.\"],\"7aaeOo\":[\"Version of \\\"\",[\"displayName\"],\"\\\" was permanently deleted.\"],\"7d1a0d\":[\"Public\"],\"7flw0l\":[\"Tenant access for \\\"\",[\"trimmedTenantId\"],\"\\\" has been added successfully.\"],\"7hLLUk\":[\"Folder \\\"\",[\"folderPath\"],\"\\\" was successfully created.\"],\"7huC4O\":[\"There are no Certificates available for this Certificate Authority.\"],\"7sMeHQ\":[\"Key\"],\"7wUXy6\":[\"Delete CORS Rules\"],\"8/m18Q\":[\"This bucket cannot be deleted yet. Do the following to be able to delete the bucket:\"],\"868txY\":[\"Public Read\"],\"88kg0+\":[\"Created At\"],\"8AriEH\":[\"Image instance \\\"\",[\"imageName\"],\"\\\" has been created\"],\"8BjKi0\":[\"Last Modified:\"],\"8M41Vt\":[[\"count\",\"plural\",{\"one\":[\"Failed to Delete CORS Rule\"],\"other\":[\"Failed to Delete CORS Rules\"]}]],\"8Pcsi8\":[\"Enter a timestamp like \\\"YYYY-MM-DD HH:mm:ss\\\" to schedule automatic deletion.\"],\"8S2nDL\":[\"No PCAs found\"],\"8TSI9h\":[\"Deactivating this image will prevent it from being used to launch new instances. Existing instances will not be affected.\"],\"8Tg/JR\":[\"Custom\"],\"8Txagi\":[\"Copy Object:\"],\"8ZOb7O\":[[\"numberDeleted\"],\" object was permanently deleted.\"],\"8ZRhOW\":[\"Allowed Origins\"],\"8c3/77\":[\"Max meta name length\"],\"8erw15\":[\"Bucket \\\"\",[\"bucketName\"],\"\\\" was already empty.\"],\"8jLXs3\":[\"Versioned writes\"],\"8s0tOH\":[\"You don't have permission to add tenant access to this flavor.\"],\"8t1+HU\":[\"Deactivated \",[\"successCount\"],\" image(s), but \",[\"failedCount\"],\" image(s) could not be deactivated.\"],\"8tFjKD\":[\"Protected images (cannot be deleted):\"],\"8uPTwT\":[[\"filteredCount\",\"plural\",{\"one\":[[\"filteredCount\"],\" of \",[\"totalCount\"],\" container\"],\"other\":[[\"filteredCount\"],\" of \",[\"totalCount\"],\" containers\"]}]],\"8wdCNd\":[\"tcp, udp, icmp, or protocol number\"],\"8zAn1f\":[\"Failed to delete flavor. Please try again.\"],\"97QUV6\":[\"Delete Folder\"],\"98Fs4G\":[\"Creating image...\"],\"9J93Xr\":[\"Container name cannot contain slashes\"],\"9LvYb5\":[\"Delete CORS Rule\"],\"9X8lAk\":[\"Allocate\"],\"9doWrf\":[\"Failed to add member\"],\"9iz2XW\":[\"Unable to Update Image\"],\"9kDPaB\":[\"Issue End-Entity Certificate\"],\"9m9dpR\":[\"Couldn't open container \\\"\",[\"containerName\"],\"\\\" — it may not exist, or you may not have access to it.\"],\"9njIiV\":[\"Failed to Activate Images\"],\"9rz81C\":[\"Device ID\"],\"9v5VLp\":[\"No custom properties defined\"],\"9vSW3U\":[\"Delete Recursively\"],\"9x6EkK\":[\"This is a public flavor. All tenants have access to it.\"],\"A7CVME\":[\"Select disk format first\"],\"A8EVnx\":[\"Failed to copy the pre-signed URL to the clipboard\"],\"AB4Tnl\":[\"Please select a file to upload\"],\"AGXLLY\":[\"Unable to Upload Image File\"],\"AJRhSM\":[\"Root Disk must be an integer ≥ 0.\"],\"AN0DBJ\":[\"Press Enter to add\"],\"ANOoeR\":[[\"totalItemCount\",\"plural\",{\"one\":[[\"totalItemCount\"],\" item\"],\"other\":[[\"totalItemCount\"],\" items\"]}]],\"ASJMIw\":[\"S3 bucket names must be 3-63 characters long and contain only lowercase letters, numbers, periods, and hyphens. They must start and end with a letter or number, and be globally unique within the cluster.\"],\"AX9Juz\":[\"ID must only contain alphanumeric characters, hyphens, underscores, and dots.\"],\"AXNSZ2\":[\"Confirm deletion of \",[\"displayName\"],\". The object will be marked as deleted but can be restored from version history.\"],\"AZyHwC\":[\"Must be a valid IPv4 or IPv6 address (for example: 172.24.4.228 or 2001:db8::1).\"],\"Ac6dy9\":[\"Type name\"],\"AdtLNV\":[\"Ensure ACL entries are valid — correct project IDs, user IDs, and formats are your responsibility. Invalid entries may silently grant or deny unintended access.\"],\"AeP3VC\":[\"Date:\"],\"AeXO77\":[\"Account\"],\"Af8YL/\":[\"\\\"\",[\"displayName\"],\"\\\" was successfully copied to \",[\"destination\"],\".\"],\"Afh/Lb\":[\"Select destination folder\"],\"AirKNZ\":[\"Issue Self-Signed Certificate\"],\"AlbUVn\":[\"<0>Optimized Scalability:</0> Built for businesses of all sizes, Aurora grows with you, supporting simple environments and intricate multi-cloud setups alike.\"],\"Alx2/L\":[\"Open in new tab\"],\"AxZkIr\":[\"Disk (GiB)\"],\"B2Czeb\":[\"Min. RAM\"],\"B2SpR8\":[\"Bucket name must not start with reserved prefix \\\"\",[\"prefix\"],\"\\\"\"],\"B2i9cQ\":[\"Objects to be deleted (\",[\"totalCount\"],\")\"],\"B3toQF\":[\"Objects\"],\"BCJPTn\":[\"Grant access to all users from that project.\"],\"BCXapL\":[\"Failed to load container properties: \",[\"errorMessage\"]],\"BGZ26c\":[\"Open \",[\"displayName\"]],\"BGsuZN\":[\"Key contains invalid characters (use only letters, digits, hyphens, underscores)\"],\"BJt+PJ\":[\"Failed to Delete Container\"],\"BMTd81\":[\"This action cannot be undone. The target project will lose access to this security group immediately.\"],\"BOQYRn\":[\"Loading Key Pairs...\"],\"BOoOLQ\":[\"All Buckets Emptied\"],\"BSpWob\":[\"Could not download \\\"\",[\"displayName\"],\"\\\": \",[\"errorMessage\"]],\"BTsbBe\":[\"Bucket Name\"],\"BYH/2L\":[\"Unable to Deactivate Image\"],\"BgMp/T\":[\"Invalid format combination for selected disk format\"],\"Blsc/x\":[\"Delete Certificate Authority\"],\"BoIAP6\":[\"The ID of the network associated with the floating IP.\"],\"BoPocW\":[\"MD5 checksum\"],\"BrrIs8\":[\"Storage\"],\"CA8ZeT\":[\"Image \\\"\",[\"imageName\"],\"\\\" visibility updated to \",[\"visibility\"]],\"CBFSfX\":[\"Please fix the validation errors below.\"],\"CFMxC8\":[\"Images Deleted\"],\"CMVP7y\":[\"This action cannot be undone. The rule will be permanently deleted.\"],\"CfKRC1\":[\"Empty Bucket\"],\"CgZxr7\":[\"Min RAM (MB)\"],\"ChOuUj\":[\"Floating IP not found\"],\"Cj2Gtd\":[\"Size\"],\"ClGcRq\":[\"Containers\"],\"CongmL\":[\"Could not delete bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"CpZKLR\":[\"Version ID\"],\"CtiFDz\":[\"This will permanently delete all objects from \",[\"totalCount\"],\" selected \",[\"totalCount\",\"plural\",{\"one\":[\"bucket\"],\"other\":[\"buckets\"]}],\". This action cannot be undone.\"],\"Cu6xuZ\":[\"This is a <0>dynamic large object (DLO)</0> manifest. Metadata changes apply to the manifest only — segment objects are not affected.\"],\"CunRry\":[\"Invalid project ID format. Must be 32 hexadecimal characters (e.g., b90f9c4bc76140e18540b2cec1299e2a) or UUID format (e.g., 12345678-1234-1234-1234-123456789abc)\"],\"Cung5f\":[\"Successfully deleted \",[\"count\"],\" CORS rules from bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"Cxgv2U\":[\"Min. Disk\"],\"CxzjBR\":[\"Pre-signed URL\"],\"D3IRXw\":[\"Detaching Floating IP...\"],\"D7qT9F\":[\"Why Choose Aurora?\"],\"D7yx6b\":[\"Version History:\"],\"D8ak4F\":[[\"totalItemCount\",\"plural\",{\"one\":[[\"filteredItemCount\"],\" of \",[\"totalItemCount\"],\" item\"],\"other\":[[\"filteredItemCount\"],\" of \",[\"totalItemCount\"],\" items\"]}]],\"D96wgg\":[\"Failed to Delete CORS Rule\"],\"DHrCY6\":[\"Common name\"],\"DIZzgv\":[\"Failed to load versions\"],\"DJT9tB\":[\"Account quotas\"],\"DKkOPx\":[\"Extra Specs\"],\"DNVql8\":[\"Full lifecycle management of Floating IPs, including attachment, port association/disassociation, DNS settings, and deletion\"],\"DPfwMq\":[\"Done\"],\"DWBWmW\":[[\"totalCount\",\"plural\",{\"one\":[\"Empty Bucket\"],\"other\":[\"Empty Buckets\"]}]],\"DaLmTO\":[\"… and \",[\"hiddenObjectCount\"],\" more\"],\"DcMIiu\":[\"Could not update ACLs for container \\\"\",[\"containerName\"],\"\\\": \",[\"errorMessage\"]],\"Df0YHr\":[\"Update Security Group\"],\"DhHhSP\":[\"Versions to delete:\"],\"Dia2Ue\":[\"There are no RBAC policies for this security group\"],\"Do5/uH\":[\"The flavor or tenant could not be found. It may have already been removed.\"],\"Dqnh7K\":[\"Specific referrer: \",[\"host\"]],\"Dt5W9T\":[\"Remove RBAC Policy\"],\"DvB4XF\":[\"Drop your file here\"],\"E/QGRL\":[\"Disabled\"],\"E4QYe7\":[\"Suggested Images\"],\"E55MDj\":[\"Could not delete version of \\\"\",[\"displayName\"],\"\\\": \",[\"errorMessage\"]],\"E6nRW7\":[\"Copy URL\"],\"E7kdtm\":[\"Choose Certificate to Import\"],\"E7kwFm\":[\"No CORS rules matching the current search criteria.\"],\"E9bKSA\":[\"Creating\"],\"EF2EU9\":[\"Deleting...\"],\"EJqSbS\":[\"No versions to delete in bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"EPMHs9\":[\"You don't have permission to delete flavors in this project.\"],\"EQnVgi\":[\"Flavor service is not available for this project.\"],\"Ec3oGg\":[\"Could not delete \",[\"count\"],\" CORS rule from bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"EdQY6l\":[\"None\"],\"EdxcAN\":[\"Access Control for Container:\"],\"Ef7StM\":[\"Unknown\"],\"Enpdmy\":[\"Type <0>remove</0> to confirm:\"],\"EpWoJ9\":[\"Loading Permissions...\"],\"Eq5PsT\":[\"Type \\\"detach\\\" to confirm\"],\"EqSPkP\":[\"Loading Flavors...\"],\"Er+P8q\":[\"Enter a header name and press Enter. Use * to allow all headers.\"],\"Erlvqg\":[\"Object name cannot have leading or trailing whitespace\"],\"ExLULX\":[\"Image Name\"],\"ExvQL2\":[\"Delete Results\"],\"EztMB8\":[\"Failed to fetch flavors from server.\"],\"F/MlG/\":[\"The selected objects will be permanently deleted. This action cannot be undone.\"],\"F02e8I\":[\"No custom metadata. Click \\\"Add Property\\\" to create one.\"],\"F6YIQe\":[\"Efficient bulk deletion\"],\"FAA/qW\":[\"Paste the code\"],\"FAkHq7\":[\"Select all rules\"],\"FEfQAu\":[\"Failed to update visibility for \\\"\",[\"imageName\"],\"\\\": \",[\"errorMessage\"]],\"FJO48W\":[\"Create S3 Credentials\"],\"FKL6Jv\":[\"e.g. .r:*,.rlistings\"],\"FOcBn3\":[\"Detach\"],\"FQBaXG\":[\"Activate\"],\"FRtmJJ\":[\"Storage container not found\"],\"FSbpS7\":[\"CPU\"],\"FZc7ea\":[[\"deletableCount\",\"plural\",{\"one\":[\"Delete \",\"#\",\" Image\"],\"other\":[\"Delete \",\"#\",\" Images\"]}]],\"FgWsFY\":[\"Object <0>\\\"\",[\"displayName\"],\"\\\"</0> will be permanently deleted. This cannot be undone.\"],\"FgpiL7\":[\"There are no CORS rules for this bucket\"],\"FjONW3\":[\"Error Loading Flavor\"],\"FjPnAE\":[\"Error loading security group\"],\"FucIRH\":[\"Only JSON certificate files are supported.\"],\"FwSyEp\":[\"The specified project does not exist or you don't have permission to share with it.\"],\"Fzrzfe\":[\"Folder name is required\"],\"G/045D\":[\"The image \\\"\",[\"imageId\"],\"\\\" could not be re-activated: \",[\"errorMessage\"]],\"G0PE24\":[\"Some Versions Could Not Be Deleted\"],\"G3pRO8\":[\"An object with this name already exists at the destination and will be overwritten.\"],\"G6AP+o\":[\"Shared:\"],\"G88GGQ\":[\"Etag, Content-Length\"],\"GDx4dP\":[\"Manage your Certificate\"],\"GEgjm+\":[\"Loading Objects...\"],\"GPuCEo\":[\"Leave empty for all types\"],\"GSIPwA\":[\"Temporary URL\"],\"GZjazt\":[\"No policy found\"],\"GbKqnI\":[\"Activated \",[\"successCount\"],\" image(s), but \",[\"failedCount\"],\" image(s) could not be activated.\"],\"Gfx1qQ\":[\"Unable to Load Content\"],\"Ghp863\":[\"Type \\\"empty\\\" to confirm\"],\"GxkJXS\":[\"Uploading...\"],\"Gyd3No\":[\"No specific tenant access configured for this private flavor. Click \\\"Add Tenant Access\\\" to grant access.\"],\"H+a5j6\":[\"Release\"],\"H4Qwmp\":[\"No objects match your search. Try adjusting your search term.\"],\"H7u085\":[\"No projects have access to this image yet. Click \\\"Add Project Access\\\" to grant access.\"],\"HAcOOW\":[\"Your credentials are valid but you don't have permission to perform this operation. Please contact your administrator to grant you the necessary permissions.\"],\"HAkrpK\":[\"At Aurora, our mission is to provide a centralized platform that unifies cloud management. We aim to simplify the complexities of provisioning, configuring, and scaling resources across diverse cloud environments while enabling seamless growth for your business.\"],\"HBpi4q\":[\"Loading Images...\"],\"HDpkS/\":[\"Select destination folder within target bucket\"],\"HG0uMz\":[\"Back to Certificate Authorities\"],\"HG5AI8\":[\"Must be a whole number, 0 or greater\"],\"HM56Bx\":[\"Creating...\"],\"HMV+cw\":[\"Search rules...\"],\"HNlEFZ\":[\"delete\"],\"HQH8HM\":[\"Could not update \\\"\",[\"objectName\"],\"\\\": \",[\"errorMessage\"]],\"HVdrr1\":[\"ANY referrer\"],\"HfL/NM\":[\"Version Deleted\"],\"HiDAFk\":[\"Create Bucket\"],\"Hivb/4\":[\"Server is experiencing issues. Please try again later.\"],\"Hiw1Ha\":[\"No containers found\"],\"HlwgQN\":[\"Object \\\"\",[\"objectName\"],\"\\\" was permanently deleted.\"],\"Honvv4\":[\"Allowed Headers\"],\"HuA8iQ\":[\"Allocating Floating IP...\"],\"Hw+HlA\":[\"Expose Headers\"],\"HxTYrE\":[\"The flavor could not be found. It may have been deleted.\"],\"HyyJ83\":[\"Access Type\"],\"HzKlpd\":[\"Failed to empty bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"I5kZVK\":[\"Remote Source\"],\"INUP6f\":[\"<0>Effortless Resource Provisioning:</0> Quickly provision, configure, and deploy resources like servers, networks, and volumes with just a few clicks.\"],\"IOkHLC\":[\"Failed to copy object: \",[\"errorMessage\"]],\"IQSLN+\":[\"Error loading Certificate Authority\"],\"IQldU4\":[\"Bucket name must contain only lowercase letters, numbers, periods, and hyphens\"],\"ISxSs6\":[\"All buckets\"],\"IUwGEM\":[\"Save Changes\"],\"IWF68U\":[\"Storage Overview\"],\"IbWX61\":[\"Failed to delete bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"IbYr/u\":[\"Content type\"],\"Io2Dvq\":[\"Certificate Authority not found\"],\"Ioblgz\":[\"This action is permanent. All objects in the container will be deleted and this cannot be undone.\"],\"IwlPLb\":[\"Delete Bucket\"],\"IxsRaQ\":[\"Enable Versioning\"],\"J+Sc8C\":[\"Showing first \",[\"MAX_COMBO_OPTIONS\"],\" of \",[\"totalBuckets\"],\", refine your search to narrow results\"],\"J4DKSM\":[\"Container format is required\"],\"J6EOll\":[\"Move/Rename object:\"],\"J7+bZb\":[\"Folder Deleted\"],\"J9QcnV\":[\"Successfully activated \",[\"successCount\"],\" of \",[\"totalCount\"],\" image(s)\"],\"J9cmxx\":[\"Failed to update visibility to \",[\"newVisibility\"]],\"JB0bhm\":[\"Get Involved\"],\"JNGYAW\":[\"Container name is required\"],\"JPWqr2\":[\"Bucket \\\"\",[\"bucketName\"],\"\\\" was successfully emptied. \",[\"deletedCount\"],\" objects deleted.\"],\"JT+lLV\":[\"Delete Object\"],\"JT3I1g\":[\"Delete Flavor\"],\"JeRXll\":[\"This key is reserved and managed separately\"],\"JedhzP\":[\"Move/Rename Object:\"],\"JfWCsP\":[\"Partial Deactivation Success\"],\"Jh4rAZ\":[\"Error loading image\"],\"Jim5X9\":[\"Stateful\"],\"JoECY1\":[\"The extra spec data provided is invalid. Please check your input.\"],\"JpZn1L\":[\"Already deactivated (will be skipped)\"],\"JrmKyf\":[\"Failed: \",[\"errorDetails\"]],\"Jrn0cT\":[\"The project you are looking for doesn't exist or you don't have access to it.\"],\"JtHgVz\":[\"Delete Images\"],\"JuOpPY\":[\"All objects in the selected containers will be permanently deleted. This cannot be undone.\"],\"K+e/0e\":[\"RAM (MiB)\"],\"K3bUTE\":[\"Minimum disk must be 0 or greater\"],\"K4EkxW\":[\"… and \",[\"hiddenErrorCount\"],\" more failures\"],\"K8Qnlj\":[\"Moving...\"],\"K9eC8x\":[\"This could be due to insufficient permissions or a temporary service issue. Please check your access rights or try refreshing the page.\"],\"KBbMRW\":[\"Could not delete rule \\\"\",[\"ruleId\"],\"\\\" from bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"KDw4GX\":[\"Try again\"],\"KJC+M7\":[\"Server error occurred while fetching flavor details. Please try again later.\"],\"KKXsRA\":[\"… and \",[\"hiddenVersionsCount\"],\" more\"],\"KOJ0ud\":[\"Edit Policy\"],\"KOpPMt\":[\"Total size quota\"],\"KSW/GC\":[\"There are no flavors available for this project with the current filters applied. Try adjusting your filter criteria or create a new flavor.\"],\"KWa0gi\":[\"Delete Image\"],\"KYFkcz\":[\"The image \\\"\",[\"imageId\"],\"\\\" could not be deactivated: \",[\"errorMessage\"]],\"Kg/39v\":[\"Pre-signed URL for \\\"\",[\"displayName\"],\"\\\" was copied to clipboard.\"],\"KhNDX4\":[\"Object Storage (Ceph)\"],\"KjYDf4\":[\"rule\"],\"Kl2hZ+\":[\"Delete Version\"],\"Km4AGG\":[\"Creating security group...\"],\"KoQP4F\":[\"Server error occurred while adding tenant access. Please try again later.\"],\"KsIM0b\":[\"Boot RAM\"],\"KsnZ3m\":[\"Folder \\\"\",[\"folderName\"],\"\\\" was successfully created.\"],\"KvQbFT\":[\"This action will permanently delete all objects from \",[\"bucketName\"],\". This action cannot be undone.\"],\"KzUd7m\":[\"new-folder-name\"],\"L368v2\":[\"e.g., 3600 (1 hour) or 604800 (7 days)\"],\"LASqRM\":[\"Object \\\"\",[\"displayName\"],\"\\\" was permanently deleted.\"],\"LGVlaU\":[\"CORS rule was successfully deleted from bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"LI70tz\":[\"Error loading Certificate\"],\"LI8Z2I\":[\"Download \",[\"rowDisplayName\"]],\"LK0pQN\":[\"Disk format is required\"],\"LMdsuJ\":[\"Port (from)\"],\"LT2Vv7\":[\"Bucket policy was successfully deleted from \\\"\",[\"bucketName\"],\"\\\".\"],\"LVU2Dv\":[\"Add Policy\"],\"La2LYh\":[\"\\\"\",[\"displayName\"],\"\\\" was successfully copied to \",[\"destination\"],\" (existing object was replaced).\"],\"Llcakz\":[\"Updated At\"],\"LqMb+g\":[\"To confirm this action, type the word <0>\\\"release\\\"</0> in the field below.\"],\"LtI9AS\":[\"Owner\"],\"Lylr9Z\":[\"Object Copied\"],\"M3bysB\":[\"Bucket Created\"],\"M470oJ\":[\"The flavor could not be found or has no extra specs.\"],\"M5Epeo\":[\"Edit Image Details\"],\"M5RhXF\":[\"Removing...\"],\"M5ixX4\":[\"Authorization, Content-Type, or *\"],\"M7joSe\":[\"Confirm deletion of \",[\"displayName\"],\". The object will be permanently deleted. This action cannot be undone.\"],\"M8er/5\":[\"Name:\"],\"MDMDAc\":[\"Successfully deleted \",[\"count\"],\" CORS rule from bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"MDQl/K\":[\"Sign In to Your Account\"],\"MEIAzV\":[\"Unnamed\"],\"MI6aae\":[\"This action will create a self-signed CA certificate.\"],\"MILoeL\":[\"Services\"],\"MJLqeY\":[\"Failed to check bucket contents: \",[\"errorMessage\"]],\"MJtNLd\":[\"Images to delete:\"],\"MOug+V\":[\"Enter a tag and press Enter or click Add\"],\"MRB7nI\":[\"Direction\"],\"MUJA7f\":[\"Select HTTP methods allowed for cross-origin requests\"],\"MXoA/6\":[\"Upload Object\"],\"MXw7Fr\":[\"Server Name\"],\"MZGbkp\":[\"VCPUs\"],\"MbKJNP\":[\"You don't have permission to access flavor access information for this flavor.\"],\"MdfAJn\":[\"You do not have permission to view security groups\"],\"MgZyuJ\":[\"You are about to activate <0>\",[\"deactivatedCount\"],\" image(s)</0>. Activated images will be available for launching new instances.\"],\"Mj2wuy\":[\"Folder \\\"\",[\"folderName\"],\"\\\" and \",[\"deletedCount\"],\" object were permanently deleted.\"],\"Mj5iQ0\":[\"YYYY-MM-DD HH:mm:ss\"],\"MmtQVF\":[\"Invalid value for public flavor setting.\"],\"MqKovk\":[\"Edit Object Metadata\"],\"MsO7dX\":[\"Download Object\"],\"Mt6sRo\":[\"You are not authorized to access flavor access information. Please log in again.\"],\"MtzSbv\":[\"Object name is required\"],\"N2S1rs\":[\"Empty\"],\"N40H+G\":[\"All\"],\"N5I2RJ\":[\"Type \\\"release\\\" to confirm\"],\"N5vGcw\":[\"Enter your credentials to access your account\"],\"NG+FZC\":[\"Issuing End-Entity Certificate...\"],\"NH2fsP\":[\"Already deactivated (will be skipped):\"],\"NNpgo3\":[\"Bucket name\"],\"NOdFZR\":[\"Generating...\"],\"NQU1Nn\":[\"Copy container name\"],\"NRMm0E\":[\"This tenant already has access to the flavor.\"],\"NRVSdy\":[\"Member ID\"],\"NW1XEL\":[\"Emptying bucket \",[\"progressCurrent\"],\" of \",[\"progressTotal\"],\", please wait...\"],\"NW4PIb\":[\"Could not create folder \\\"\",[\"folderName\"],\"\\\": \",[\"errorMessage\"]],\"NZJhro\":[\"Object name cannot contain slashes\"],\"Nc7QKU\":[\"Fixed IP Address\"],\"Ncv07y\":[\"\\\"\",[\"displayName\"],\"\\\" was successfully restored.\"],\"NeUjqc\":[\"Enable file listing\"],\"Ni6RvO\":[\"Versioning Suspended\"],\"NixRmA\":[\"Min Disk (GB)\"],\"NlcF/v\":[\"No flavor selected for deletion.\"],\"NopYGU\":[\"Disk Format\"],\"Np28ib\":[\"or drag and drop\"],\"Nu4oKW\":[\"Description\"],\"Nvfd2b\":[\"Versioning is enabled\"],\"NwXhO7\":[\"Successfully deleted \",[\"deletedCount\"],\" version from bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"O80bQY\":[\"Loading object properties...\"],\"O8tK4v\":[\"Add rule\"],\"ONWvwQ\":[\"Upload\"],\"OR475H\":[\"Network\"],\"OSlLnz\":[\"Image Visibility\"],\"OYHzN1\":[\"Tags\"],\"OZImTR\":[\"Container listing limit\"],\"OaHwiV\":[\"Folders cannot be bulk-deleted. Use the row menu to delete a folder.\"],\"OaSktR\":[\"Device Owner\"],\"Oc8Aqv\":[\"Preview and Edit metadata\"],\"OlmKCg\":[\"A flavor with this ID or name already exists. Please use different values.\"],\"On9AgT\":[\"Delete Bucket Policy\"],\"OvEjsP\":[\"Copying...\"],\"Ovofy+\":[\"Release Floating IP \",[\"floating_ip_address\"]],\"OxDN2m\":[\"Failed to create flavor. Please try again.\"],\"OxaeYj\":[\"We are building Aurora Dashboard to serve you better. Your feedback is invaluable in shaping a tool that meets the unique needs of businesses like yours. Stay connected and join us as we redefine cloud management.\"],\"Oxl1UN\":[\"If there is no index file, the URL displays a list of objects in the container.\"],\"P1XdeN\":[\"Optional identifier for this rule (max 255 characters).\"],\"P2tWBZ\":[[\"selectedCount\",\"plural\",{\"one\":[\"Empty Bucket\"],\"other\":[\"Empty Buckets\"]}]],\"P3ajcg\":[[\"deletedCount\",\"plural\",{\"one\":[\"#\",\" object was deleted.\"],\"other\":[\"#\",\" objects were deleted.\"]}]],\"PAKSdy\":[\"Enter a floating IP or leave blank to auto-assign one\"],\"PDXQxz\":[[\"certificateIdValue\"],\" Certificate Details\"],\"PEGvy+\":[\"Minimum RAM must be 0 or greater\"],\"PHt+EV\":[\"Type <0>delete</0> to confirm:\"],\"PIbPRX\":[\"RX/TX Factor must be an integer ≥ 1.\"],\"PLwzWR\":[\"All containers\"],\"PYQUjU\":[\"Failed to load metadata configuration.\"],\"PgNNGl\":[\"More Actions\"],\"PiH3UR\":[\"Copied!\"],\"PiyQJ/\":[\"No flavors found\"],\"PkfPsB\":[\"Enter the ID of the project you want to share this security group with. You can find project IDs in the account/project switcher or in the Identity service.\"],\"Pkw7J9\":[\"This folder is empty.\"],\"PsEGri\":[\"Ubuntu 22.04 LTS\"],\"PtjzS+\":[\"Associates on the selected port. If the port has multiple IPs, select the desired fixed IP address.\"],\"PzgYM9\":[\"Checksum\"],\"Q1W//7\":[\"No services available for this project.\"],\"Q2xmVl\":[\"Symlinks\"],\"Q5JQLh\":[\"CORS Rules\"],\"Q9f2QF\":[[\"numberDeleted\"],\" objects were deleted successfully, but some deletions failed.\"],\"QAUa4B\":[\"Enter a single port, or define a range by also filling \\\"Port (to)\\\". \\\"Port (to)\\\" is optional.\"],\"QAoi3Q\":[\"Policy Deleted\"],\"QDUXIq\":[\"Are you sure you want to delete the policy for bucket <0>\",[\"bucketName\"],\"</0>?\"],\"QEtDlS\":[\"Copying object...\"],\"QGFuw+\":[\"Subject Information\"],\"QNHur0\":[\"Failed to load container ACLs: \",[\"errorMessage\"]],\"QQ8wUG\":[\"This action cannot be undone. The flavor will be permanently deleted.\"],\"QQjQRf\":[\"No Temp URL key configured. A temporary URL key must be set at the account or container level before temporary URLs can be generated. Contact your administrator to configure X-Account-Meta-Temp-URL-Key or X-Container-Meta-Temp-URL-Key.\"],\"QRlXaL\":[\"Bucket name must not end with reserved suffix \\\"\",[\"suffix\"],\"\\\"\"],\"QV1ZPO\":[\"Key is required\"],\"QWdKwH\":[\"Move\"],\"QYiqYb\":[\"Failed to update access status\"],\"Qb+14I\":[\"This action cannot be undone. The security group will be permanently deleted.\"],\"QcRQm4\":[\"Failed to delete version: \",[\"errorMessage\"]],\"QceOn7\":[\"Bucket Policy\"],\"QdGvPV\":[\"Size:\"],\"QetsXP\":[\"Upload failed: \",[\"uploadError\"]],\"Qg4EG6\":[\"Unable to connect to the compute service. Please check your connection and try again.\"],\"QpbWpf\":[\"Bucket \\\"\",[\"bucketName\"],\"\\\" was successfully emptied. \",[\"deletedCount\"],\" object deleted.\"],\"QuJSSl\":[\"Failed to create the flavor. Please try again.\"],\"QvqBQa\":[\"Target container\"],\"Qx7DM7\":[\"Capabilities\"],\"QytzQr\":[\"Type \\\"delete\\\" to confirm\"],\"R3U2a2\":[\"Policy JSON\"],\"R5zmZq\":[\"IP Restricted\"],\"R6kcsL\":[\"Must be a valid PQDN or FQDN (alphanumeric and hyphens only, cannot start or end with hyphen).\"],\"R6u5CR\":[\"Failed to activate \",[\"failedCount\"],\" of \",[\"totalCount\"],\" image(s). Some images may already be active or in an invalid state.\"],\"RCr0yv\":[\"Failed to load flavor details. Please try again.\"],\"RFDYCD\":[\"Minimum disk size required to boot this image\"],\"RGhYAo\":[\"RAM\"],\"RGrgxg\":[\"Could not delete container \\\"\",[\"containerName\"],\"\\\": \",[\"errorMessage\"]],\"RGwfoL\":[\"Max meta count\"],\"RHm1CB\":[\"Versioning was successfully suspended for bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"RNBvdl\":[\"Max SLO segments\"],\"RQuGRj\":[\"Change the name, destination container, or folder to move this object.\"],\"RS0o7b\":[\"State\"],\"RSFkXF\":[\"Activate Image\"],\"RSMPjT\":[\"You are currently on the dashboard route.\"],\"RSg/pq\":[\"Failed to Delete Object\"],\"RTQFAw\":[\"You are not authorized to create extra specs. Please log in again.\"],\"RThPY1\":[\"Move/Rename Object\"],\"RWQ6BN\":[\"Enter Common name (e.g., demo-ca.test.sci)\"],\"RYhwcU\":[\"Leaving the JSON field empty will remove the policy from the bucket.\"],\"Rih53k\":[\"Max container name length\"],\"Rlp5zj\":[\"Create Flavor\"],\"Rsh494\":[\"Deleting the policy will remove all access restrictions defined by it. This action cannot be undone.\"],\"S0kLOH\":[\"ID\"],\"S1iTXO\":[\"Image instance \\\"\",[\"imageName\"],\"\\\" has been deleted\"],\"S3olSf\":[\"No extra specs found. Click \\\"Add Metadata\\\" to create one.\"],\"S5CUKP\":[\"Member ID (project UUID) is required.\"],\"S6INkj\":[\"Enter a header name and press Enter. These headers will be exposed to the browser.\"],\"S8/j2h\":[\"Failed to Empty Container\"],\"SBGiGm\":[\"Read ACLs\"],\"SCY5an\":[\"Failed to Move Object\"],\"SDohXA\":[\"Failed deletions:\"],\"SFo0kK\":[\"All Images\"],\"SIfYq6\":[\"Edit Metadata\"],\"SLEH7X\":[\"Enter DNS name\"],\"STc+7E\":[\"Max containers per extraction\"],\"SU0uxT\":[\"Upload object to:\"],\"SUSS9i\":[\"Container name\"],\"SVLToM\":[\"Type \\\"remove\\\" to confirm\"],\"SZw9tS\":[\"View Details\"],\"Sb/VT5\":[\"Container \\\"\",[\"containerName\"],\"\\\" was successfully emptied. \",[\"deletedCount\"],\" objects deleted.\"],\"Sf3Gvg\":[\"Failed to load PCAs\"],\"SfW/3r\":[\"There are no groups\"],\"Sgz1vJ\":[\"Member \\\"\",[\"trimmedMemberId\"],\"\\\" has been added successfully.\"],\"Smk7M2\":[\"Error loading floating IP\"],\"Sokf5L\":[\"Rule ID\"],\"SuX2Ca\":[\"Basic Info\"],\"Sv3i+l\":[\"Version Restored\"],\"T/UxKm\":[\"<0>Edit metadata:</0> <1>\",[\"displayName\"],\"</1>\"],\"T3+VKR\":[\"This action will permanently delete all versions and delete markers. This will enable you to delete the bucket. This action cannot be undone.\"],\"T6Gm5y\":[\"Select an external network\"],\"T7mgdd\":[\"Successfully deleted \",[\"successCount\"],\" of \",[\"totalCount\"],\" image(s)\"],\"T8N6oi\":[\"Property Key\"],\"T9Mtpi\":[\"Tenant ID\"],\"T9o/az\":[\"Loading Certificates issued by Certificate Authority...\"],\"TAaMxB\":[\"Failed to restore version: \",[\"errorMessage\"]],\"TM93nK\":[\"Delete Security Group Rule\"],\"TNH2Bl\":[\"Failed to delete CORS rules\"],\"TP+gE1\":[\"Failed to verify CORS configuration\"],\"TPMaxo\":[\"Type “release” to confirm\"],\"TQn3hH\":[\"Failed to create image. Please try again.\"],\"TSclU4\":[\"property-key\"],\"TTX3nV\":[\"Could not move \\\"\",[\"displayName\"],\"\\\": \",[\"errorMessage\"]],\"TUjabl\":[\"The imported certificate chain is not valid PEM.\"],\"TZJiVf\":[\"Container \\\"\",[\"containerName\"],\"\\\" was successfully emptied. \",[\"deletedCount\"],\" object deleted.\"],\"TfC9O+\":[\"Last modified (UTC)\"],\"TfdeUd\":[\"Failed to delete the extra spec. Please try again.\"],\"TipzDp\":[\"Search containers...\"],\"TkSo/Q\":[\"Failed to delete rule\"],\"ToZFjm\":[\"Could not delete CORS rule from bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"TpGxnq\":[\"Enter member ID\"],\"Tx4Ym+\":[\"Enter a valid PQDN or FQDN (max 63 characters) to associate with the floating IP. A and PTR records are created automatically.\"],\"TyODHt\":[\"Save Metadata\"],\"U/oahm\":[\"URL Copied\"],\"U0sPCo\":[\"Search flavors...\"],\"U4fmHG\":[\"The text must match “detach” in lowercase.\"],\"U9q4M7\":[\"Back to Security Groups\"],\"UB+Q8v\":[\"Loading Certificate Details...\"],\"UGhVPl\":[\"Object Type\"],\"UHciG3\":[[\"rulesLength\"],\" rules\"],\"UK2mpr\":[\"Generating temporary URL...\"],\"UKwOYH\":[\"Image File\"],\"UO3hJ2\":[\"Temporary URLs\"],\"UOtFRg\":[\"Define permissions for this bucket. You may use one of the predefined templates.\"],\"UQ7Wyv\":[\"Manage Access for Image - \",[\"imageName\"]],\"URmyfc\":[\"Details\"],\"USiuNX\":[\"Container quotas\"],\"UVFHGY\":[\"e.g. PROJECT_ID:USER_ID\"],\"UYSopm\":[\"Minimum RAM (MB)\"],\"UaP7Th\":[\"Failed to Create Bucket\"],\"UbRKMZ\":[\"Pending\"],\"UbWeJA\":[\"Duration/validity\"],\"UdcGJu\":[\"Activate Images\"],\"Uj+n/2\":[\"Failed to Delete Folder\"],\"UkVkoq\":[\"Leave empty for all codes\"],\"UmQ3/m\":[\"Deactivate Selected\"],\"Uwo8Xw\":[\"This image was shared with you by <0>\",[\"ownerProject\"],\"</0> on \",[\"sharedAt\"],\".\"],\"Ux/pNd\":[[\"totalCount\",\"plural\",{\"one\":[[\"totalCount\"],\" bucket\"],\"other\":[[\"totalCount\"],\" buckets\"]}]],\"UztfYZ\":[\"Select port to associate\"],\"V/8B9A\":[\"I confirm that all existing versions will also be deleted\"],\"V/SINY\":[\"Update object\"],\"V1TzeS\":[\"Container \\\"\",[\"containerName\"],\"\\\" was successfully deleted.\"],\"V2oWFM\":[\"CORS Rule Deleted\"],\"V44EtJ\":[\"Max Age in Seconds\"],\"V66Jih\":[\"Access Status\"],\"V6AQa5\":[\"Versions Deleted\"],\"V7fN5X\":[\"Copy object:\"],\"V8/eES\":[\"Bucket name must not contain consecutive periods\"],\"V804LY\":[\"Updating security group...\"],\"V89FyE\":[\"The selected images will be permanently deleted. This action cannot be undone.\"],\"VCM3KS\":[\"Add Project Access\"],\"VG2a+x\":[\"Bucket name must start and end with a letter or number\"],\"VKCkZH\":[\"Bucket \\\"\",[\"bucketName\"],\"\\\" was successfully created.\"],\"VKmlZ+\":[\"Containers to be emptied (\",[\"totalCount\"],\")\"],\"VLI9eO\":[\"Loading Floating IP Details...\"],\"VMh1t1\":[\"The text must match “delete” in lowercase.\"],\"VMoZmg\":[\"Delete Policy\"],\"VOblr2\":[\"Select all objects\"],\"VV1fdg\":[\"Any user has read access to objects. No token is required in the request.\"],\"VaA9mu\":[\"24 hours\"],\"VakxP/\":[\"Failed to Upload Object\"],\"VcWhM0\":[\"Showing \",[\"filteredCount\"],\" of \",[\"totalCount\"],\" projects\"],\"VeDAv2\":[\"Search buckets...\"],\"Vf3tzc\":[\"Failed to upload file \\\"\",[\"fileName\"],\"\\\": \",[\"errorMessage\"]],\"Vg0k6h\":[\"Showing \",[\"filteredCount\"],\" of \",[\"totalCount\"],\" \",[\"itemName\"]],\"Vh/Uj5\":[\"Target path\"],\"Vj8XFg\":[\"Failed to Create Container\"],\"Vl4XTj\":[\"Folder name cannot contain slashes\"],\"Vmojta\":[\"Access status updated to \\\"\",[\"newStatus\"],\"\\\".\"],\"VoxR3s\":[\"Object was copied but could not be deleted from the source: \",[\"deleteErrorMessage\"]],\"Vyeez6\":[\"Folder name:\"],\"Vz+7ZA\":[\"Could not create container \\\"\",[\"containerName\"],\"\\\": \",[\"errorMessage\"]],\"VzNolj\":[\"This bucket does not have any CORS rules.\"],\"Vzlopx\":[\"Delete container:\"],\"W1ZvXE\":[\"Failed to Delete Versions\"],\"W5A0Ly\":[\"An unexpected error occurred.\"],\"W5FkH9\":[\"Enter container name\"],\"W8Rb/w\":[\"Bucket name must not be formatted as an IP address\"],\"W9PZE0\":[\"Objects Deleted\"],\"W9kfjU\":[\"QoS Policy ID\"],\"WBgiS7\":[\"Failed to save CORS rule\"],\"WCKEqI\":[\"This is a <0>static large object (SLO)</0> manifest. Metadata changes apply to the manifest only — segment objects are not affected.\"],\"WCLyHI\":[\"No Floating IPs found\"],\"WErCZy\":[\"Minimum RAM required to boot this image\"],\"WIJz7N\":[\"Checking if object exists...\"],\"WM+Nm7\":[\"Keep multiple versions of objects. Cannot be fully disabled once enabled, only suspended.\"],\"WRZ3Mt\":[\"Loading container properties...\"],\"WV/4x1\":[\"Loading buckets...\"],\"WYiUDa\":[\"Loading Containers...\"],\"Wbg1jv\":[\"Copy \",[\"text\"],\" to clipboard\"],\"Wca9WC\":[\"Failed to load security groups\"],\"WdmJIX\":[\"Loading preview...\"],\"WefafP\":[\"This container appears empty — the object count may not have synced yet due to a recent operation.\"],\"WidMsn\":[\"Create Certificate Authority\"],\"WlpcJv\":[\"DNS Domain\"],\"WoSkGY\":[\"Remote IP\"],\"WxpQ1y\":[\"Failed to delete versions from bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"WyKwnD\":[\"Store old object versions\"],\"WzVwU0\":[\"Target Project ID\"],\"WzsMfv\":[\"Start typing to search for a bucket\"],\"X2OnDx\":[\"Ephemeral Disk (GiB)\"],\"X70LXS\":[[\"numberDeleted\"],\" objects were permanently deleted.\"],\"XLYtNg\":[\"Rule \\\"\",[\"ruleId\"],\"\\\" was successfully deleted from bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"XLa4Dv\":[\"The externally signed certificate was successfully imported.\"],\"XLk16/\":[\"Together, we can unlock the true potential of your cloud infrastructure.\"],\"XXRutf\":[\"Folder Name\"],\"XXjbEV\":[\"For <0>dynamic</0> and <1>static large objects</1> only the manifests are deleted — the related segments are not deleted.\"],\"XYZLy9\":[\"Key contains invalid characters\"],\"XhfBNl\":[[\"totalCount\",\"plural\",{\"one\":[\"Delete \",\"#\",\" Object\"],\"other\":[\"Delete \",\"#\",\" Objects\"]}]],\"XhoQid\":[\"Are you sure you want to delete <0>\",[\"ruleDisplayName\"],\"</0> from bucket <1>\",[\"bucketName\"],\"</1>?\"],\"XicAqm\":[\"Failed to load policy\"],\"XjGaah\":[\"Could not delete bucket policy from \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"XvjC4F\":[\"Saving...\"],\"XwxJJB\":[\"Container \\\"\",[\"containerName\"],\"\\\" was successfully created.\"],\"XxjLdW\":[[\"emptiedCount\",\"plural\",{\"one\":[\"#\",\" container was already empty.\"],\"other\":[\"#\",\" containers were already empty.\"]}]],\"Y+2SDm\":[\"Delete Security Group \\\"\",[\"securityGroupName\"],\"\\\"\"],\"Y1YKad\":[\"Edit Details\"],\"Y8M9Uc\":[\"The container will be deleted. This action is permanent and cannot be undone.\"],\"Y8Z0cO\":[\"Couldn't Open Container\"],\"YIix5Y\":[\"Search...\"],\"YNgcgc\":[\"Loading Flavor Details...\"],\"YRexkb\":[\"Object Updated\"],\"YUU0QW\":[\"Flavor ID is required and cannot be empty.\"],\"YVLcyI\":[\"Successfully emptied \",[\"emptiedCount\"],\" \",[\"emptiedCount\",\"plural\",{\"one\":[\"bucket\"],\"other\":[\"buckets\"]}],\", deleting \",[\"totalDeleted\"],\" \",[\"totalDeleted\",\"plural\",{\"one\":[\"object\"],\"other\":[\"objects\"]}],\".\"],\"YZmsaT\":[\"Partial Activation Success\"],\"YiMCKk\":[\"Show ACLs Preview\"],\"Yin3uB\":[\"Releasing Floating IP...\"],\"YjAOtb\":[\"Create Security Group\"],\"YrAy/S\":[\"You don't have permission to delete extra specs for this flavor.\"],\"YsOJlj\":[\"Server error occurred while fetching flavor access information. Please try again later.\"],\"YsrbQh\":[\"Owner Project ID\"],\"YuC9dj\":[\"Associate\"],\"YuGQWb\":[\"Rule Type\"],\"YwkOoE\":[\"Select a template...\"],\"YzUoh9\":[\"To confirm type <0>delete</0> in the field below.\"],\"Z/eWPC\":[\"The object will be copied to this path. Navigate folders above to change the destination.\"],\"Z0v/kp\":[[\"percent\"],\"%\"],\"Z2fZGD\":[\"No project selected\"],\"Z30x/C\":[\"Current location:\"],\"Z3FXyt\":[\"Loading...\"],\"Z42tfY\":[\"Folders in object storage are virtual — they are created as zero-byte placeholder objects with a trailing slash. The folder will appear once created.\"],\"Z5r9vC\":[\"Partial Delete Success\"],\"Z8lGw6\":[\"Share\"],\"ZAx+d1\":[\"Max meta overall size\"],\"ZAy0zp\":[\"Successfully deactivated \",[\"successCount\"],\" of \",[\"totalCount\"],\" image(s)\"],\"ZKb0D4\":[\"Cannot move to the same location. Please select a different bucket, folder, or change the name.\"],\"ZMBqWl\":[\"The selected objects will be marked as deleted but can be restored from version history.\"],\"ZUmOzn\":[\"Server returned unexpected data format for flavor details.\"],\"ZcWMT1\":[\"Image instance \\\"\",[\"imageName\"],\"\\\" has been deactivated\"],\"Zgp2Sm\":[\"No projects available.\"],\"ZhVSpK\":[\"Failed to remove tenant access from flavor. Please try again.\"],\"ZkoPD4\":[\"Size: \",[\"policySize\"],\" / \",[\"MAX_POLICY_SIZE\"],\" bytes\"],\"ZkxxiR\":[\"Unknown domain\"],\"Zq6Y5u\":[\"DNS name must be at most 63 characters.\"],\"Zshv0H\":[\"Buckets to empty:\"],\"ZvIpwi\":[\"Select a security group...\"],\"Zw49f9\":[\"folder-name\"],\"Zw8Q49\":[\"Security group not found\"],\"ZyILib\":[[\"count\",\"plural\",{\"one\":[\"Delete \",\"#\",\" Version\"],\"other\":[\"Delete \",\"#\",\" Versions\"]}]],\"a/nTb8\":[\"Create Image\"],\"a12lSo\":[\"Port (to)\"],\"a13wDR\":[\"Type to search containers...\"],\"a3LDKx\":[\"Security\"],\"a4A2uB\":[\"Account listing limit\"],\"a4N/Bg\":[\"Load More\"],\"a7C4YS\":[\"Container Updated\"],\"aEAOxI\":[\"There are \",[\"bucketsCount\"],\" buckets, start typing to search\"],\"aG9OiI\":[\"Sharing Details\"],\"aI8Tgp\":[\"Owning Project ID\"],\"aL1w5Z\":[\"Used\"],\"aSsVD3\":[\"Public read access is not enabled. Before configuring static website serving, go to <0>Manage Access</0> and enable public read access.\"],\"aTqCTq\":[\"Image file is required\"],\"aV6KPH\":[\"Prevent accidental deletion\"],\"aZGVW7\":[\"No versions found for this object.\"],\"agS3yl\":[\"These objects and all their versions will be permanently deleted and cannot be restored.\"],\"an5hVd\":[\"Images\"],\"ao/ZJi\":[\"Deleting folder and all its contents...\"],\"aqagJH\":[\"Unable to Update Image Visibility\"],\"arel2K\":[\"No objects found\"],\"asUnxb\":[\"Enter a URL and press Enter. Use * to allow all origins.\"],\"azXlY+\":[\"Access Status:\"],\"b0uU1G\":[\"Store old object versions in container:\"],\"b2BLBa\":[\"Add Security Group Rule\"],\"b5aNMO\":[\"The text must match \\\"delete\\\"\"],\"b78j86\":[\"Certificate \",[\"certificateIdValue\"]],\"b95YH9\":[\"Bucket Emptied\"],\"bB2soI\":[[\"deletedCount\"],\" deleted, \",[\"errorCount\"],\" failed.\"],\"bHUarC\":[\"Bucket Deleted\"],\"bISG26\":[\"Failed to fetch flavor access information. Please try again.\"],\"bIxQF7\":[\"Rules to delete:\"],\"bM1O3m\":[\"Image Instance\"],\"bQBMTH\":[\"This is a <0>static large object</0>. By default, all associated segment objects will also be permanently deleted.\"],\"bYRFNi\":[\"Failed to Delete Objects\"],\"bc67JN\":[\"Custom Properties / Metadata\"],\"bmQLn5\":[\"Add Rule\"],\"bnql/K\":[\"Back to Images\"],\"boJ+Y1\":[\"Create Folder\"],\"boJlGf\":[\"Page Not Found\"],\"boefwq\":[\"Could not create bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"bpme7e\":[\"Flavor Not Found\"],\"bwRvnp\":[\"Action\"],\"bwhBhT\":[\"Security Group\"],\"byKna+\":[\"An unexpected error occurred. Please try again.\"],\"bzMKg7\":[\"Accepted\"],\"bzSI52\":[\"Discard\"],\"c+fUtV\":[\"Start typing to search for a container\"],\"c+xCSz\":[\"True\"],\"c1OE1x\":[\"CA ID\"],\"c5i+X0\":[\"Loading Buckets...\"],\"c6b6fz\":[\"Delete Selected\"],\"c9Ss4N\":[\"Policy document exceeds maximum size of 20KB\"],\"cBfLPr\":[\"Failed to Delete Policy\"],\"cCfxH1\":[\"Downloading...\"],\"cJDQIO\":[\"Root Disk\"],\"cL8dHR\":[\"Failed to refresh Floating IPs. Showing cached data.\"],\"cPKL6O\":[\"You don't have permission to create flavors in this project.\"],\"cUKFby\":[\"Lifecycle action\"],\"cWbW6w\":[\"Manage Access\"],\"cXuXkb\":[\"User \",[\"userId\"],\" from project \",[\"projectId\"]],\"ca+vEu\":[[\"deletedCount\",\"plural\",{\"one\":[\"#\",\" version was permanently deleted.\"],\"other\":[\"#\",\" versions were permanently deleted.\"]}]],\"chL5IG\":[\"Community\"],\"cj17eo\":[\"Image instance \\\"\",[\"imageName\"],\"\\\" has been activated\"],\"cjEOmc\":[\"Share this security group with another project. The target project will be able to view and use this security group, but will not be able to modify or delete it.\"],\"ckH3fT\":[\"Ready\"],\"cnGeoo\":[\"Delete\"],\"cpw++p\":[\"Static large object support\"],\"cqQyPB\":[\"Folder name\"],\"d+F6q9\":[\"Created\"],\"d/I0J3\":[\"Activate Selected\"],\"d0pLfy\":[\"Failed to delete security group\"],\"dCb9d8\":[\"Failed to load CORS configuration\"],\"dEHa3L\":[\"Type the bucket name to confirm\"],\"dEgA5A\":[\"Cancel\"],\"dFb5Nt\":[\"Id\"],\"dLFiER\":[\"Error Loading Containers: \",[\"errorMessage\"]],\"dOevLB\":[\"Expires in \",[\"selectedPresetLabel\"],\" — at \",[\"expiresAtFormatted\"]],\"dPoCVe\":[\"Type “detach” to confirm\"],\"dTNzBI\":[\"Key must contain at least one alphanumeric character\"],\"dVdc7N\":[\"You are not authorized to delete extra specs. Please log in again.\"],\"dd2ndz\":[\"Entries in ACLs are comma-separated. Examples:\"],\"ddf7GN\":[\"Failed to load objects\"],\"deleteResults.summary\":[[\"0\"],\" deleted, \",[\"1\"],\" failed.\"],\"diFNkW\":[\"Error loading component\"],\"dxMaZH\":[\"Manage your Private Certificate Authority infrastructure\"],\"e0NrBM\":[\"Project\"],\"e4khPT\":[[\"0\",\"plural\",{\"one\":[\"Object:\"],\"other\":[\"Objects to delete:\"]}]],\"eChIh7\":[\"Flavor \\\"\",[\"flavorName\"],\"\\\" has been successfully created.\"],\"eGEHJE\":[\"DNS Name\"],\"eKC+EC\":[\"-\"],\"eOC6jr\":[\"Failed to load CORS rules\"],\"ePK91l\":[\"Edit\"],\"eXELu1\":[\"No CORS rules found\"],\"eYlnXt\":[\"No images found\"],\"eh/k36\":[\"Select a rule type...\"],\"ejOrrs\":[\"Select rule \",[\"originalIndex\"]],\"ekCRTP\":[\"Rejected\"],\"eks7oA\":[\"Port ID\"],\"emkxJa\":[\"There are no buckets available with the current search criteria. Try adjusting your search term.\"],\"enkkbQ\":[\"Max Age\"],\"eslBIK\":[\"Failed to Enable Versioning\"],\"eu70nA\":[\"Expires at (UTC)\"],\"eyRsaH\":[\"Root\"],\"ezT9KW\":[\"Container syncing\"],\"f+Uq1E\":[\"New object name\"],\"f07XWN\":[[\"count\",\"plural\",{\"one\":[\"CORS Rule Deleted\"],\"other\":[\"CORS Rules Deleted\"]}]],\"f0cwjH\":[\"Object properties\"],\"fCPhho\":[\"One or more objects could not be deleted:\"],\"fE4ROT\":[\"Delete All Versions\"],\"fIvd7X\":[\"Failed to Delete Images\"],\"fJpv9x\":[\"Failed to Deactivate Images\"],\"fNJSnL\":[[\"deletedCount\"],\" deleted, \",[\"errorCount\"],\" failed. See the details in the dialog.\"],\"ffw//c\":[\"PCA\"],\"fj5byd\":[\"N/A\"],\"fnCEAB\":[\"Type “delete” to confirm\"],\"foy2JB\":[[\"displayName\"],\" was successfully restored\"],\"fxnDd7\":[\"Failed to generate temporary URL: \",[\"generalError\"]],\"fzfAAa\":[\"Ingress\"],\"g+Jead\":[\"IPv6\"],\"g1IxCo\":[\"RAM must be an integer ≥ 128 MB.\"],\"g3BSCe\":[\"Swap Disk must be an integer ≥ 0.\"],\"g3UF2V\":[\"Accept\"],\"g8Yxlg\":[\"Temporary URL for \\\"\",[\"objectName\"],\"\\\" was copied to clipboard.\"],\"gFKJBP\":[\"Folder name cannot have leading or trailing whitespace\"],\"gGdfWx\":[\"The compute service is currently unavailable for this project. Please try again later.\"],\"gMYsdZ\":[\"Set to \\\"Shared\\\"\"],\"gOAPiI\":[\"Successfully deleted \",[\"deletedCount\"],\" versions and delete markers from bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"gSpeIX\":[\"Preview and download aren't available for older versions yet\"],\"gU7JFm\":[\"Creating security group rule...\"],\"gYe+hC\":[\"Click to upload\"],\"gjop1H\":[\"Bucket name must be at least 3 characters\"],\"go0J2x\":[\"Failed to copy the temporary URL to the clipboard\"],\"go9U+C\":[\"To confirm, type <0>\\\"delete\\\"</0> in the field below.\"],\"gy6L1u\":[\"Must be a valid common name (FQDN).\"],\"gztCjq\":[\"The tenant ID provided is invalid. Please check your input.\"],\"h/lrJz\":[\"Policy Templates\"],\"h3P8z+\":[\"Failed to delete the flavor. Please try again.\"],\"h47p9L\":[\"—\"],\"h6JDtI\":[\"Paste CSR code\"],\"h8h6oz\":[\"Images Deactivated\"],\"h99+4y\":[\"Allocate Floating IP\"],\"hH3kDo\":[\"Loading Image Details...\"],\"hHL/wm\":[\"Image instance \\\"\",[\"imageName\"],\"\\\" has been updated\"],\"hLp49h\":[\"Type <0>\",[\"deleteWord\"],\"</0> to confirm:\"],\"hPz54a\":[\"Failed to Download\"],\"hQdfmR\":[\"Bucket \\\"\",[\"bucketName\"],\"\\\" was successfully deleted.\"],\"hQr1Cr\":[\"Deactivate Image\"],\"hXUWyd\":[\"Value is required\"],\"hYgDIe\":[\"Create\"],\"he3ygx\":[\"Copy\"],\"he4q+i\":[\"e.g., b90f9c4bc76140e18540b2cec1299e2a\"],\"hgpMHD\":[\"Total Size\"],\"hrBow7\":[\"Network ID\"],\"hueclm\":[\"Folder <0>\\\"\",[\"folderDisplayName\"],\"\\\"</0> and all objects within it will be permanently deleted. This cannot be undone.\"],\"hz9da7\":[\"Failed to load Certificates issued by Certificate Authority.\"],\"i0qMbr\":[\"Home\"],\"i41Xuw\":[\"Select a fixed IP address\"],\"i5MEDc\":[\"Failed to move object: \",[\"copyErrorMessage\"]],\"i6/ygf\":[\"A property with this key already exists\"],\"i7u3X3\":[\"Once enabled, versioning cannot be fully disabled, it can only be suspended. Existing versions will remain even after suspension.\"],\"i9I/nL\":[\"This action will permanently delete all objects from \",[\"bucketName\"],\". You may choose to also delete all versions and delete markers. This will enable you to delete the bucket. This action cannot be undone.\"],\"i9TIyi\":[\"Remote Security Group\"],\"i9qiyR\":[\"Expires in\"],\"iH8pgl\":[\"Back\"],\"iYY2Ye\":[\"Are you sure you want to delete \",[\"ruleCount\",\"plural\",{\"one\":[\"#\",\" CORS rule\"],\"other\":[\"#\",\" CORS rules\"]}],\" from bucket <0>\",[\"bucketName\"],\"</0>?\"],\"ibtJeo\":[\"Failed to generate pre-signed URL: \",[\"generalError\"]],\"ifQSTI\":[\"Enable versioning\"],\"igVDFt\":[\"Attach\"],\"ih2lfP\":[\"No buckets found\"],\"ihMuB8\":[\"Failed to Restore Version\"],\"is0Bhk\":[\"Bucket name must be 63 characters or fewer\"],\"izMhIO\":[\"User \",[\"userId\"],\" (any project)\"],\"j1Hej6\":[\"Share URL:\"],\"j9hkgJ\":[\"rules\"],\"j9lCXl\":[\"Changes take effect immediately after saving.\"],\"jBIkmi\":[\"QCOW2, Raw, VMDK, VHD, VHDX, VDI, AMI, ARI, AKI, ISO, PLOOP\"],\"jIPNJG\":[\"Basic Information\"],\"jK6wqe\":[\"Folder \\\"\",[\"folderName\"],\"\\\" and \",[\"deletedCount\"],\" objects were permanently deleted.\"],\"jKopCP\":[\"Network & Routing\"],\"jMaofI\":[\"Could not enable versioning for bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"jMc/mo\":[\"Server error occurred while creating extra specs. Please try again later.\"],\"jNm/qL\":[\"This container is already empty.\"],\"jNzyQo\":[\"Object versioning\"],\"jPxavx\":[\"Failed to update security group\"],\"jS4B2+\":[\"Container name does not match\"],\"jSG7wx\":[\"Please enter a valid number of minutes greater than 0\"],\"jVjr9h\":[\"Enter a valid common name in FQDN format (e.g., demo-ca.test.sci).\"],\"jq5wGQ\":[\"S3 Object Storage: Setup Required\"],\"js24f6\":[\"Delete folder:\"],\"jyVMod\":[\"Restore Version\"],\"jyqLKs\":[\"This member already has access to this image.\"],\"k/zHK7\":[\"Creating Credentials...\"],\"k0vAWv\":[\"Object count quota\"],\"k5nYwm\":[\"vCPU\"],\"k7ENJG\":[\"Preview \",[\"rowDisplayName\"]],\"k99j0U\":[\"Cancel upload\"],\"kA2lMP\":[\"External Network\"],\"kGmM/p\":[\"You don't have permission to create extra specs for this flavor.\"],\"kIuDMT\":[\"Configure the ingress and egress rules that control which traffic is allowed for this security group.\"],\"kJzvqm\":[\"Edit CORS Rule\"],\"kKK8AH\":[\"Remaining Quota:\"],\"kNeZrV\":[\"No Certificates issued by this Certificate Authority found\"],\"kQYfgO\":[\"One or more containers could not be emptied: \",[\"errorMessage\"]],\"kRiVnR\":[\"New uploads will overwrite the current version\"],\"kZ20m7\":[\"How long browsers can cache preflight responses. Common values: 3600 (1 hour), 86400 (1 day), 604800 (1 week).\"],\"kdcrma\":[\"Existing versions remain accessible\"],\"kiRrtv\":[\"<0>Please note:</0> for <1>dynamic</1> and <2>static large objects</2> only the manifests will be deleted. The related segments will not be deleted.\"],\"kk2q2d\":[\"A pre-signed URL grants time-limited read access to this object without requiring authentication. Anyone with the link can download it until it expires.\"],\"kqJVBO\":[\"You don't have permission to share this security group.\"],\"kuYWaD\":[\"Reserved keys: web-index, web-listings, quota-count, quota-bytes\"],\"kzI24C\":[\"Confirm deletion of \",[\"displayName\"],\". All objects inside this folder will be permanently deleted. This action cannot be undone.\"],\"l+fhn1\":[\"I understand that enabling versioning is permanent\"],\"l75CjT\":[\"Yes\"],\"lAsm87\":[\"Protect this image from being deleted\"],\"lBVhQs\":[\"Something went wrong:\"],\"lIlLtp\":[\"The image \\\"\",[\"imageId\"],\"\\\" could not be deleted: \",[\"errorMessage\"]],\"lN/Z9n\":[\"Security group name is required\"],\"lN3xvy\":[\"Delete Rule\"],\"lQ3EIe\":[\"Max deletes per request\"],\"lRRkwQ\":[\"Write ACLs — Preview\"],\"lRoPjj\":[\"ETag\"],\"lWTy+Y\":[\"Unable to Create Image\"],\"lWxDDh\":[\"Flavor Name\"],\"lYC3YX\":[\"The image \\\"\",[\"imageName\"],\"\\\" could not be created: \",[\"errorMessage\"]],\"lZvIXd\":[\"Description must be at most 255 characters.\"],\"lhIa6x\":[\"Failed to load extra specs. Please try again.\"],\"lq/mBZ\":[\"Loading object info...\"],\"lxentK\":[\"An unexpected error occurred\"],\"m16xKo\":[\"Add\"],\"m6X3ro\":[\"Group Name\"],\"mB4LB4\":[\"Awaiting Certificate\"],\"mMHJ/+\":[\"Suspend Versioning\"],\"mPhx+K\":[\"This object and all its versions will be permanently deleted and cannot be restored.\"],\"mQKOrw\":[\"CORS configuration was successfully saved for bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"mQSO1Y\":[\"Port Forwarding\"],\"mSLePW\":[\"You don't have permission to access flavors for this project.\"],\"mSfwLL\":[\"Project ID\"],\"mYnJeY\":[\"The text must match “release” in lowercase.\"],\"mbmb/h\":[\"Also delete all versions and all delete markers\"],\"miy5mb\":[\"PCA (Clavis)\"],\"mlxk2U\":[\"Search policies...\"],\"mmNqjS\":[\"This version will be permanently deleted and cannot be restored.\"],\"mqljvE\":[\"Copy metadata\"],\"mvz5Eo\":[\"URL for public access\"],\"mxPfpY\":[\"Create new folder here\"],\"mzI/c+\":[\"Download\"],\"n0ZttO\":[\"Root Disk (GiB)\"],\"n1ekoW\":[\"Sign In\"],\"n1gB0L\":[\"Edit Floating IP \",[\"floating_ip_address\"]],\"n1s9cB\":[\"No rules found\"],\"n22YIM\":[\"Edit Description\"],\"n2IuBI\":[\"A temporary URL grants time-limited read access to this object without requiring authentication. Anyone with the link can download it until it expires.\"],\"n3eQzA\":[\"This property is reserved and cannot be modified\"],\"n46oLW\":[\"Failed to remove member\"],\"n9jJG6\":[\"Remove member access\"],\"nCWeKz\":[\"Download of \\\"\",[\"displayName\"],\"\\\" was cancelled.\"],\"nETBrc\":[\"Egress\"],\"nJrNv5\":[\"Could not save CORS configuration for bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"nLvo6K\":[\"RBAC Policy Details:\"],\"nNKXt7\":[\"Deleting this Certificate Authority is permanent, and all the associated certificates will no longer apply to entities.\"],\"nPI6Rk\":[\"Successfully deleted \",[\"deletedCount\"],\" versions from bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"nU1mHK\":[\"Versioning Enabled\"],\"nUuaq8\":[\"Failed to update container: \",[\"errorMessage\"]],\"nW/hX9\":[\"General Image Data\"],\"nWNviN\":[\"Deleting certificate authority...\"],\"nYab6d\":[\"\\\"\",[\"displayName\"],\"\\\" was successfully moved to \",[\"destination\"],\".\"],\"nZbdB+\":[\"Upload Cancelled\"],\"ndwp1n\":[\"Invalid JSON format\"],\"ne/GWZ\":[\"Inside a project, objects are stored in containers. Containers are where you define access permissions and quotas.\"],\"neiJm0\":[\"Flavors\"],\"ng+PCh\":[\"There are no PCAs available for this project.\"],\"nkpZyk\":[\"Container \\\"\",[\"containerName\"],\"\\\" was already empty.\"],\"nnxwBn\":[\"There are no rules for this security group\"],\"ntNlXu\":[\"Listing access\"],\"nzFJqC\":[\"Delete CA\"],\"o/VDOG\":[\"Unable to Delete Image\"],\"o6M6l0\":[\"Failed to create security group\"],\"oAMLhA\":[\"Full path:\"],\"oDkgME\":[\"You are not authorized to create flavors. Please log in again.\"],\"oEGiW3\":[\"Uploading... \",[\"progressPct\"],\"%\"],\"oFZY0k\":[\"Failed to Download Object\"],\"oJVmWq\":[\"Could not delete \\\"\",[\"displayName\"],\"\\\": \",[\"errorMessage\"]],\"ocUvR+\":[\"False\"],\"odVI9Y\":[\"Container Deleted\"],\"og1m+J\":[\"Loading Certificate Authority Details...\"],\"olfSYj\":[\"Access Control Updated\"],\"p4nMut\":[\"Swap (MiB)\"],\"p5CTB4\":[\"Failed to Save CORS Configuration\"],\"p6CSHM\":[\"Delete Objects\"],\"p7DzCB\":[\"Failed to Update Access Control\"],\"pD/2BQ\":[\"Successfully emptied \",[\"emptiedCount\"],\" of \",[\"totalBuckets\"],\" \",[\"totalBuckets\",\"plural\",{\"one\":[\"bucket\"],\"other\":[\"buckets\"]}],\", deleting \",[\"totalDeleted\"],\" \",[\"totalDeleted\",\"plural\",{\"one\":[\"object\"],\"other\":[\"objects\"]}],\". \",[\"errorsLength\"],\" \",[\"errorsLength\",\"plural\",{\"one\":[\"bucket\"],\"other\":[\"buckets\"]}],\" failed.\"],\"pFg+7w\":[\"Updated:\"],\"pOPvlj\":[\"Already active (will be skipped)\"],\"pPr2iF\":[\"Could not delete versions from bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"pQB7Sy\":[\"Could not suspend versioning for bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"pU25+T\":[\"Upload of \\\"\",[\"objectName\"],\"\\\" was cancelled.\"],\"pYR76U\":[\"Importing Certificate...\"],\"pbzA+s\":[\"Optional description\"],\"pebLmQ\":[\"Remove access for \",[\"memberIdDisplay\"]],\"pkz+z2\":[\"Failed to save policy\"],\"plnnns\":[\"Deleted \",[\"successCount\"],\" image(s), but \",[\"failedCount\"],\" image(s) could not be deleted.\"],\"pmJY1C\":[\"Successfully deleted bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"pmuQ2f\":[\"https://example.com or *\"],\"poCbZw\":[\"Loading ACLs...\"],\"podzPY\":[\"Project id\"],\"pubQie\":[\"Enter value\"],\"q0Rla3\":[\"Add Tenant Access\"],\"q44uUq\":[\"Containers Partially Emptied\"],\"q6K46F\":[\"Key already exists\"],\"q88/6A\":[\"Failed to Create Folder\"],\"qAkkjP\":[\"Max object name length\"],\"qEDO1j\":[\"This is a <0>dynamic large object</0>. Only the manifest will be deleted — its segment objects (stored under the manifest prefix) are <1>not</1> automatically removed and must be deleted separately.\"],\"qJb6G2\":[\"Try Again\"],\"qJp13l\":[\"Versions Deleted Permanently\"],\"qQ1QBh\":[\"Hardware Specifications\"],\"qUlxA+\":[\"Folder \\\"\",[\"folderName\"],\"\\\" was permanently deleted.\"],\"qaAo9Y\":[\"Server error occurred while creating the flavor. Please try again later.\"],\"qf4f0L\":[\"A pre-signed URL can be valid for at most 7 days (\",[\"MAX_EXPIRY_MINUTES\"],\" minutes)\"],\"qh5W8q\":[\"Remove Policy\"],\"qhDo93\":[\"Common name is required.\"],\"ql7ODA\":[[\"ruleCount\",\"plural\",{\"one\":[\"Delete CORS Rule\"],\"other\":[\"Delete CORS Rules\"]}]],\"qs+BrU\":[\"You don't have permission to remove tenant access from this flavor.\"],\"qtoOYG\":[\"No limit\"],\"quU9wK\":[\"Failed to deactivate \",[\"failedCount\"],\" of \",[\"totalCount\"],\" image(s). Some images may already be deactivated or in an invalid state.\"],\"qvF2D8\":[\"There are no images available for this project with the current filters applied. Try adjusting your filter criteria or create a new image.\"],\"qxxo7y\":[\"No policies match your search\"],\"qzIZOL\":[\"Invalid file format. Supported formats: \",[\"supportedFileFormats\"]],\"qzhUb9\":[\"Showing first \",[\"maxOptions\"],\" of \",[\"totalCount\"],\" — refine your search to narrow results\"],\"r5SQFW\":[\"Container name must be \",[\"maxContainerNameLength\"],\" characters or fewer\"],\"r9Aac8\":[\"Ephemeral Disk\"],\"rAtQcX\":[\"You can rename the object by changing the name here.\"],\"rD9yV1\":[\"Images to deactivate:\"],\"rG3WVm\":[\"Select\"],\"rIe0oV\":[\"Failed to add tenant access to flavor. Please try again.\"],\"rIi6x4\":[\"The flavor could not be found. It may have already been deleted.\"],\"rJe6vw\":[\"7 days\"],\"rPuPb+\":[\"Checking bucket contents...\"],\"rbuO5A\":[\"This security group is already shared with the specified project.\"],\"rcBt6T\":[\"Failed to create credential: \",[\"errorMessage\"]],\"rdUucN\":[\"Preview\"],\"rhaNn7\":[\"Loading containers...\"],\"riR9oD\":[\"Note: for <0>static and dynamic large objects</0> only the manifests are deleted — their segments outside this folder prefix are not affected.\"],\"rlgAtt\":[\"The object will be moved to this path. Navigate folders above to change the destination.\"],\"rp0Bd0\":[\"Compute\"],\"rp7Ili\":[\"Search security groups...\"],\"rrjuul\":[\"For more details, have a look at the <0>documentation</0>.\"],\"rvXsSb\":[\"Tenant access for \\\"\",[\"tenantIdToRemove\"],\"\\\" has been removed successfully.\"],\"rx4T2i\":[\"Issue Certificate\"],\"ryf/ee\":[\"Images Activated\"],\"ryxYVo\":[\"Images to be deactivated (\",[\"activeCount\"],\")\"],\"s/s1lz\":[\"Any user can perform a HEAD or GET operation on the container provided the user also has read access on objects. No token is required.\"],\"s2ubkU\":[\"Flavor ID\"],\"s4Vnq2\":[\"Emptying...\"],\"s6lr1k\":[\"Search floating IPs...\"],\"sNVNmf\":[\"MAC Address\"],\"sPFHpI\":[\"Disk\"],\"sSNyf3\":[\"Welcome to <0>Aurora Dashboard</0>, your next-generation cloud management solution. We are dedicated to simplifying how you interact with and manage your cloud infrastructure. Designed with efficiency, scalability, and usability at its core, Aurora empowers you to streamline operations and unlock the full potential of your cloud resources.\"],\"sWBLli\":[\"Add Property\"],\"sXd+qS\":[\"Properties of \\\"\",[\"objectName\"],\"\\\" were successfully updated.\"],\"sYJvnu\":[\"Create New Folder\"],\"sa4CV6\":[\"All users from project \",[\"projectId\"]],\"sgra3S\":[\"You can re-enable versioning at any time\"],\"shKIZu\":[\"Images to be activated (\",[\"deactivatedCount\"],\")\"],\"sihD20\":[\"Loading images...\"],\"sjMCOP\":[\"Last Modified\"],\"sl2P3q\":[\"Object:\"],\"slWh5C\":[\"Associate Floating IP \",[\"floating_ip_address\"],\" with Port\"],\"sxbP3b\":[\"Object Count\"],\"t/YqKh\":[\"Remove\"],\"t/cZdQ\":[\"Full Path:\"],\"t0X9+8\":[\"Container Name\"],\"t1POAD\":[\"No custom metadata properties found. Click \\\"Add Property\\\" to create one.\"],\"t1fq6V\":[\"Server returned unexpected data format.\"],\"t42F1o\":[\"No versions were deleted: \",[\"errorMessage\"]],\"t7ewhH\":[\"Could not empty bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"t7ff15\":[\"valid token required: false\"],\"t95VRV\":[\"About Aurora Dashboard\"],\"tASa/P\":[\"Server error occurred while deleting the flavor. Please try again later.\"],\"tIc6vY\":[\"Could not copy \\\"\",[\"displayName\"],\"\\\": \",[\"errorMessage\"]],\"tIohGr\":[[\"selectedCount\",\"plural\",{\"one\":[\"Delete \",\"#\",\" Version\"],\"other\":[\"Delete \",\"#\",\" Versions\"]}]],\"tIrNgH\":[\"Server error occurred while fetching extra specs. Please try again later.\"],\"tLerHy\":[\"Ephemeral Disk must be an integer ≥ 0.\"],\"tM5SEI\":[\"ACLs for container \\\"\",[\"containerName\"],\"\\\" were successfully updated.\"],\"tOkmLM\":[\"Failed to Copy Object\"],\"tV/Ozb\":[\"Port Range\"],\"tVSmFT\":[\"Loading more...\"],\"tX5yOZ\":[\"New Folder\"],\"tasfos\":[\"remove\"],\"tbwGSx\":[\"Minimum Disk (GB)\"],\"tejJLY\":[\"Associating Floating IP...\"],\"tfAKBU\":[\"Could not upload \\\"\",[\"objectName\"],\"\\\": \",[\"errorMessage\"]],\"tfDRzk\":[\"Save\"],\"tfxu04\":[\"Remove access for \",[\"tenantId\"]],\"thHAVL\":[\"Accepted Images\"],\"tiflqy\":[\"Unable to Re-activate Image\"],\"tkRT08\":[\"Metadata size exceeds the 2KB limit. Please remove or shorten some entries before saving.\"],\"tlfxPP\":[\"Could not copy \\\"\",[\"objectName\"],\"\\\": \",[\"errorMessage\"]],\"tmpGvt\":[\"production, linux\"],\"u+VWhB\":[\"Copied to clipboard!\"],\"u2xIeO\":[\"Failed to update ACLs: \",[\"errorMessage\"]],\"u30W7+\":[\"Project Not Found\"],\"u5HztT\":[\"RX/TX Factor\"],\"u77/s4\":[\"Floating IPs\"],\"u7En0V\":[\"Add Metadata\"],\"uAI0yI\":[\"Delete object:\"],\"uAQUqI\":[\"Status\"],\"uLtFAr\":[\"Could not update container \\\"\",[\"containerName\"],\"\\\": \",[\"errorMessage\"]],\"uSdnuQ\":[\"VCPUs must be an integer ≥ 1.\"],\"uTp/0j\":[\"Restore Folder\"],\"ubUrot\":[\"Objects: \",[\"containerName\"]],\"ujK/QN\":[\"Loading objects...\"],\"uly9ET\":[\"Rule Details:\"],\"up0ZSW\":[\"Fingerprint\"],\"uuKb0T\":[\"Description must be less than 65535 characters.\"],\"uuxCsI\":[\"Create CORS Rule\"],\"uzjzzb\":[\"Generating pre-signed URL...\"],\"v0hPHE\":[\"Show Details\"],\"v3djpU\":[\"Move/Rename\"],\"v9Dn8m\":[\"Aurora Dashboard is more than just a tool—it's your partner in navigating the cloud. Whether you're a small startup or a global enterprise, Aurora provides the flexibility, power, and simplicity you need to achieve your goals.\"],\"vBUQNE\":[\"The extra spec could not be found. It may have already been deleted.\"],\"vEkTR9\":[\"Quota\"],\"vGjmyl\":[\"Deleted\"],\"vH2C/2\":[\"Swap\"],\"vKDskJ\":[[\"selectedCount\",\"plural\",{\"one\":[\"Delete \",\"#\",\" Object\"],\"other\":[\"Delete \",\"#\",\" Objects\"]}]],\"vLDhxf\":[\"The CORS configuration has changed. Please refresh and try again.\"],\"vR4HmN\":[\"Loading Instances...\"],\"vTh35P\":[\"Create Container\"],\"vXmL4D\":[\"Drop your image file here\"],\"vZUKSz\":[\"Detach Floating IP \",[\"floating_ip_address\"]],\"vbajgL\":[\"Public Flavor\"],\"vcQSZh\":[\"This folder is empty — use New Folder to create one.\"],\"vi0pmB\":[\"Delete all versions and delete markers\"],\"vmRPFm\":[\"Share Security Group\"],\"vmYyLY\":[\"Remote IP Prefix\"],\"vp5vfW\":[\"1 hour\"],\"vpt8cE\":[\"Generate URL\"],\"vrPCbw\":[\"Image ID\"],\"w3bAcf\":[\"This action is permanent. The address will be removed from your project and returned to the public pool. This action cannot be undone.\"],\"w9+8d7\":[\"Remove tenant access\"],\"wEfZld\":[\"Create New Flavor\"],\"wFaT8w\":[\"Failed to Empty Containers\"],\"wH0MtN\":[\"Ensure that the Project ID and User ID you enter are correct. The system cannot validate these values — incorrect IDs may apply access to wrong projects and users.\"],\"wHhJRb\":[\"Loading versions...\"],\"wL3cK8\":[\"Latest\"],\"wMHvYH\":[\"Value\"],\"wODCcl\":[\"The image \\\"\",[\"imageName\"],\"\\\" could not be updated: \",[\"errorMessage\"]],\"wPrtGF\":[\"Enter key\"],\"wTg+FY\":[\"Max file size\"],\"wYlEDy\":[\"The certificate file could not be read.\"],\"wa1Bcq\":[\"Enter tenant ID\"],\"wbqM4L\":[[\"customMinutes\"],\" minutes\"],\"wcUecy\":[\"You don't have permission to view extra specs for this flavor.\"],\"wdUvGT\":[\"Creating Certificate Authority...\"],\"wdxz7K\":[\"Source\"],\"we28Pq\":[\"Hide ACLs Preview\"],\"wlQNTg\":[\"Members\"],\"wlUDbB\":[\"Last updated: \",[\"formattedDate\"]],\"wqlQRp\":[\"Some Objects Could Not Be Deleted\"],\"wrXcuy\":[\"Object Name\"],\"wst79+\":[\"Search CORS rules...\"],\"wsxdlO\":[\"Objects to delete:\"],\"ww8U9y\":[\"Edit/View Bucket Policy\"],\"wxVsr5\":[\"Bucket name does not match\"],\"wyIOMP\":[\"Image name is required\"],\"wzqqS+\":[\"Key Features\"],\"x/XQrD\":[\"Any file type\"],\"x1bK0h\":[\"There are no containers available with the current search criteria. Try adjusting your search term.\"],\"x3T4pq\":[\"The container metadata reports objects but none were listed. This may be a temporary synchronization delay — please wait a moment and try again.\"],\"x5DnMs\":[\"Last modified\"],\"x5l/TK\":[\"Already active (will be skipped):\"],\"x7SF89\":[\"Read ACLs — Preview\"],\"x9AdZ8\":[\"property_key\"],\"xIXYTK\":[\"Your S3 credentials are invalid or expired. Please try creating new credentials or contact your administrator.\"],\"xMtb9o\":[\"Certificate Authority Deleted\"],\"xNG/3n\":[\"Floating IP Address\"],\"xNZKYy\":[\"Failed to delete \",[\"failedCount\"],\" of \",[\"totalCount\"],\" image(s). Some images may be protected or in use.\"],\"xOvKAE\":[[\"totalCount\",\"plural\",{\"one\":[[\"filteredCount\"],\" of \",[\"totalCount\"],\" bucket\"],\"other\":[[\"filteredCount\"],\" of \",[\"totalCount\"],\" buckets\"]}]],\"xYrGVV\":[\"The selected objects will be permanently deleted. This cannot be undone.\"],\"xdgZcp\":[\"Successfully emptied bucket \\\"\",[\"bucketName\"],\"\\\". \",[\"deletedCount\"],\" objects deleted.\"],\"xqhyRT\":[\"Object Uploaded\"],\"xuVMLX\":[\"Showing \",[\"rulesLength\"],\" of \",[\"totalCount\"],\" rules\"],\"xw2UtT\":[\"Create New Image\"],\"xx2KP5\":[[\"totalCount\"],\" projects\"],\"xyRzuA\":[\"Certificate Authority \\\"\",[\"pcaName\"],\"\\\" was successfully deleted.\"],\"xyaMox\":[\"Type \\\"\",[\"CONFIRM_WORD\"],\"\\\" to confirm\"],\"y+KBOY\":[\"e.g., production, linux, ubuntu\"],\"y02Bu1\":[\"Container:\"],\"y0u86k\":[\"The requested flavor could not be found. It may have been deleted or you may not have access to it.\"],\"y1GYnY\":[\"Could not move \\\"\",[\"objectName\"],\"\\\": \",[\"errorMessage\"]],\"yDAMyU\":[\"Failed to load buckets: \",[\"errorMessage\"]],\"yDHGP+\":[\"my-bucket-name\"],\"yKu/3Y\":[\"Restore\"],\"yPWFWy\":[\"ICMP Type\"],\"yTtJTy\":[\"Edit Image Metadata\"],\"yYxB17\":[\"Clear all\"],\"yZrrKY\":[\"… and \",[\"hiddenProtectedCount\"],\" more\"],\"ykQ47t\":[\"Failed to Delete Version\"],\"ylfbpz\":[\"Extra spec key is required and cannot be empty.\"],\"yp0UjB\":[\"Ethertype\"],\"yqPflB\":[\"... and \",[\"hiddenCount\"],\" more\"],\"yu9G3x\":[\"Edit Security Group\"],\"ywe1H/\":[[\"totalCount\",\"plural\",{\"one\":[[\"totalCount\"],\" container\"],\"other\":[[\"totalCount\"],\" containers\"]}]],\"yz7wBu\":[\"Close\"],\"z+zpLP\":[\"valid token required: true\"],\"z/5vyM\":[\"Versioning was successfully enabled for bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"z1JceR\":[\"Back to Floating IPs\"],\"z3N8nN\":[\"Enter bucket policy JSON...\"],\"z45o5B\":[\"Object count\"],\"z9NAjZ\":[\"Object Deleted\"],\"zCD96i\":[\"You are not authorized to view flavor details. Please log in again.\"],\"zDS0JC\":[\"Name must be 2-50 characters long.\"],\"zWb/Nn\":[\"Max header size\"],\"zemvbh\":[\"View Versions\"],\"zhM8FP\":[\"Grant access to a user from a different project.\"],\"zm7+/D\":[\"You are about to deactivate <0>\",[\"activeCount\"],\" image(s)</0>. Deactivated images cannot be used to launch new instances.\"],\"zsqy/h\":[\"Delete Marker\"],\"zv8X11\":[\"Select \",[\"displayName\"]],\"zwBp5t\":[\"Private\"]}");
|
|
920
|
+
var On = JSON.parse("{\"+0B+ue\":[\"Projects\"],\"+1xG4p\":[\"Click the button below to automatically generate credentials for this project. You only need to do this once.\"],\"+8m5QE\":[\"To access S3 Object Storage, you need EC2 credentials (access key + secret key). These credentials authenticate your requests to the Ceph storage backend.\"],\"+9CXS9\":[\"Deactivate Images\"],\"+A0ERd\":[\"This project doesn't exist or is not accessible from your current domain. Your current domain is \",[\"domainName\"],\". Please select a project from your current domain.\"],\"+GpLjT\":[\"Could not delete lifecycle rule from bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"+Lt5cp\":[\"You are not authorized to add tenant access. Please log in again.\"],\"+NwLgN\":[\"Activating this image will allow it to be used to launch new instances again.\"],\"+Nx1wc\":[\"Failed to load Floating IPs\"],\"+OEi73\":[\"Object Storage (Swift)\"],\"+Pe7SS\":[\"Failed to delete policy\"],\"+VDBWo\":[\"Floating IP Released\"],\"+VY77I\":[\"Cannot delete rule: \",[\"errorMsg\"]],\"+W6219\":[\"Access for project \\\"\",[\"targetTenant\"],\"\\\" was successfully revoked.\"],\"+lwzZX\":[\"Access Revoked\"],\"+nCUJ/\":[\"Failed to Save Lifecycle Rule\"],\"+nQTmZ\":[\"This tenant does not have access to the flavor.\"],\"+p6nHr\":[\"Failed to load object metadata: \",[\"metadataErrorMessage\"]],\"+pJjJF\":[\"After restoring, this version's content will become the new latest version.\"],\"+rAGXM\":[\"Security group \\\"\",[\"name\"],\"\\\" was successfully deleted.\"],\"+rtZ8i\":[\"Version ID:\"],\"/0+NVm\":[\"What happens when suspended:\"],\"/5SCmp\":[\"Noncurrent Versions\"],\"/9Squ9\":[\"You don't have permission to view this flavor's details.\"],\"/9TcRw\":[\"Could not delete security group rule: \",[\"errorMessage\"]],\"/AlhPT\":[\"Confirm deletion of \",[\"displayName\"],\". All objects inside this folder will be marked as deleted but can be restored from version history.\"],\"/BrQY5\":[\"Flavor \\\"\",[\"name\"],\"\\\" was successfully created.\"],\"/EcdUM\":[\"Your action is required\"],\"/GSSFQ\":[\"Security group \\\"\",[\"name\"],\"\\\" was successfully updated.\"],\"/HejCc\":[\"This bucket does not have a policy attached.\"],\"/HgF9q\":[\"Sort by\"],\"/InK0O\":[\"Total size\"],\"/LXXlY\":[\"Properties of \\\"\",[\"displayName\"],\"\\\" were successfully updated.\"],\"/LqWNN\":[\"Could not delete \\\"\",[\"objectName\"],\"\\\": \",[\"errorMessage\"]],\"/NeNjH\":[\"Container \\\"\",[\"containerName\"],\"\\\" properties were successfully updated.\"],\"/QIkBY\":[\"<0>Secure & Reliable:</0> Your data and operations are safeguarded with enterprise-grade security and robust reliability.\"],\"/Qox3b\":[\"A folder with this name already exists\"],\"/Z5n1b\":[\"Create folder below:\"],\"/bUiYk\":[\"Router ID\"],\"/eFtWI\":[\"RBAC Policies\"],\"/fwE6J\":[\"Older\"],\"/pOQrn\":[\"This action is irreversible. Deleting a bucket permanently removes it and cannot be undone. The bucket must be empty before deletion.\"],\"/xnbdQ\":[\"The specified user has access. A token for the user (scoped to any project) must be included in the request.\"],\"01/uUD\":[\"Keep segments (delete manifest only)\"],\"03FYT6\":[\"Download Cancelled\"],\"04qG8b\":[\"Detach Floating IP \\\"\",[\"floating_ip_address\"],\"\\\"\"],\"07WXfc\":[\"Server returned unexpected data format for extra specs.\"],\"0BSSYj\":[\"Server error occurred while removing tenant access. Please try again later.\"],\"0Gd0NU\":[\"Shared\"],\"0OrVx2\":[\"CORS Configuration Saved\"],\"0P2gFy\":[\"The page you are looking for does not exist.\"],\"0TREPo\":[\"… and \",[\"hiddenDeletableCount\"],\" more\"],\"0Th0CH\":[[\"selectedCount\",\"plural\",{\"one\":[\"Empty Container\"],\"other\":[\"Empty \",\"#\",\" Containers\"]}]],\"0WsqO0\":[\"Containers Emptied\"],\"0cVgUw\":[\"Filter by\"],\"0cl0a5\":[\"Search images...\"],\"0eY8Mz\":[\"There are no Floating IPs available for this project. Floating IPs allow you to map public IP addresses to instances.\"],\"0efWir\":[[\"totalCount\",\"plural\",{\"one\":[\"Empty Container\"],\"other\":[\"Empty \",\"#\",\" Containers\"]}]],\"0kCt7e\":[\"The flavor data provided is invalid. Please check your input.\"],\"0kc0zi\":[\"Server error occurred while deleting the extra spec. Please try again later.\"],\"0o0OhW\":[\"No objects found.\"],\"0p+s6m\":[\"Type: \",[\"typeValue\"],\", Code: \",[\"codeValue\"]],\"0u9jhd\":[\"Detaching this Floating IP will remove its association with the current port. The instance will no longer be reachable through this address.\"],\"16085O\":[\"IP Version\"],\"1DzQpj\":[\"This folder is empty, use New Folder to create one.\"],\"1H2g6v\":[\"Moving object...\"],\"1NFtQz\":[\"Failed to Delete Bucket\"],\"1NS3nd\":[[\"emptiedCount\",\"plural\",{\"one\":[\"#\",\" container\"],\"other\":[\"#\",\" containers\"]}],\" successfully emptied. \",[\"totalDeleted\",\"plural\",{\"one\":[\"#\",\" object\"],\"other\":[\"#\",\" objects\"]}],\" deleted in total.\"],\"1RwosK\":[\"Target project ID is required\"],\"1UzENP\":[\"No\"],\"1VDqZj\":[\"<0>Future-Ready:</0> Aurora is designed to evolve with the latest trends in cloud technology, ensuring your solution is always cutting-edge.\"],\"1W3TqV\":[\"No new versions will be created\"],\"1WcLGC\":[\"e.g. allow-frontend-app\"],\"1bj2LS\":[\"Could not restore \\\"\",[\"displayName\"],\"\\\": \",[\"errorMessage\"]],\"1iQ5yD\":[\"Floating IP Allocated\"],\"1iUuTT\":[\"Your session has expired. Please log in again.\"],\"1mFMeP\":[\"Delete Versions\"],\"1nTjuB\":[\"Could not check permissions\"],\"1ojTVo\":[\"Select a DNS domain.\"],\"1pGUZa\":[\"Session expires in\"],\"1pbWEi\":[\"No objects were deleted: \",[\"errorMessage\"]],\"1pdLQw\":[\"Image not found\"],\"1rLu3+\":[\"Could not empty container \\\"\",[\"containerName\"],\"\\\": \",[\"errorMessage\"]],\"1rPB1p\":[\"The flavor or tenant could not be found. Please verify they exist.\"],\"1t/NnN\":[\"Reject\"],\"1zZ1IK\":[\"Hi\"],\"20afDk\":[\"… and \",[\"hiddenCount\"],\" more\"],\"20axE5\":[\"Shared by Project\"],\"23wBCX\":[\"Public Read Access\"],\"2G+7C1\":[\"Enter a name for the new folder.\"],\"2G6hLq\":[\"Delete \",[\"specKey\"]],\"2Inn83\":[\"Bulk upload of archive files\"],\"2PRzsq\":[\"Could not create folder \\\"\",[\"folderPath\"],\"\\\": \",[\"errorMessage\"]],\"2TtIL2\":[\"Stored as X-Object-Meta-* headers. Keys are case-insensitive.\"],\"2cJIlz\":[\"Floating Network ID\"],\"2dnZwV\":[\"Could not delete folder \\\"\",[\"folderName\"],\"\\\": \",[\"errorMessage\"]],\"2gH+i8\":[\"You are not authorized to delete flavors. Please log in again.\"],\"2jhuBl\":[\"Unable to verify bucket contents. Please try again.\"],\"2q/Q7x\":[\"Visibility\"],\"2xOCJW\":[\"This action cannot be undone.\"],\"2xbYVD\":[\"Could not update \\\"\",[\"displayName\"],\"\\\": \",[\"errorMessage\"]],\"2ysnjX\":[\"<0>Enhanced Productivity:</0> By reducing operational complexity, Aurora helps your team focus on what truly matters—innovating and driving business success.\"],\"2zceEg\":[\"This action cannot be undone. The image will be permanently deleted.\"],\"3Gviib\":[\"Security group was successfully shared with project \\\"\",[\"targetTenant\"],\"\\\".\"],\"3K9o2N\":[\"Certificate Imported\"],\"3Pn4/P\":[\"Delete Lifecycle Rules\"],\"3Qn0me\":[\"Add Member\"],\"3cksfP\":[\"Failed to Create Rule\"],\"3dBmvU\":[\"The container cannot be deleted as it contains objects. Empty the container first.\"],\"3n+vCm\":[\"Custom duration (minutes)\"],\"3nWqQW\":[\"You are not authorized to view extra specs. Please log in again.\"],\"3nh/7E\":[\"If checked, this flavor will be available to all tenants. If unchecked, access must be explicitly granted to specific tenants.\"],\"3oChIh\":[\"<0>Unified Cloud Management:</0> Consolidates all your cloud assets into one intuitive interface.\"],\"3oc18/\":[\"Private flavors could not be loaded. You may be seeing an incomplete list.\"],\"3pq1J/\":[\"Share Object URL\"],\"3q1GLx\":[\"Pending file upload...\"],\"3qYWKy\":[\"Rule Created\"],\"3tkZ6C\":[\"Only the folder itself will be restored. Objects inside this folder will remain deleted and must be restored individually.\"],\"3x7Sws\":[\"Loading Security Group Details...\"],\"46gjWc\":[\"Delete Folder \\\"\",[\"displayName\"],\"\\\"\"],\"47eI0x\":[\"Description must be at least 1 character.\"],\"48QXFO\":[\"Expected format: YYYY-MM-DD HH:mm:ss\"],\"48bMai\":[\"Bucket name is required\"],\"4BITzH\":[\"Error:\"],\"4EZrJN\":[\"Rules\"],\"4O2AH3\":[\"Member \\\"\",[\"memberIdToRemove\"],\"\\\" has been removed successfully.\"],\"4bLttB\":[\"Folder name is too long (max 255 characters)\"],\"4cQTyf\":[\"Stateful security groups track connection state. This setting cannot be changed after creation.\"],\"4eO6KF\":[\"Enable rule\"],\"4fbtPX\":[\"Downloading larger files may take a while. You can keep browsing buckets and folders — downloads continue in the background, and this message disappears once they finish.\"],\"4fh0Wj\":[\"Boot size\"],\"4fvDRe\":[\"Images to activate:\"],\"4fvcmm\":[\"Object will be uploaded as: <0>\",[\"selectedObjectName\"],\"</0>\"],\"4h3Eyf\":[\"\\\"\",[\"objectName\"],\"\\\" was successfully uploaded.\"],\"4mbrAq\":[\"1 minute\"],\"4opp4r\":[\"Security Groups\"],\"4pOfUd\":[\"Our Mission\"],\"4t2lzu\":[\"Copy Object\"],\"4t33sh\":[\"Failed to Update Object\"],\"4uXhtt\":[\"CIDR\"],\"4ym6Q6\":[\"e.g. https://example.com or *\"],\"5/wyf8\":[\"Enter a floating IP\"],\"56IxdF\":[\"Failed to load container objects: \",[\"errorMessage\"]],\"5G/9g6\":[\"Allowed Methods\"],\"5JDSvn\":[\"Max meta value length\"],\"5M4Te3\":[\"DNS\"],\"5MF8U2\":[\"Failed to Update Container\"],\"5Od/iS\":[\"Empty the bucket\"],\"5Okch2\":[\"Empty:\"],\"5PhMH2\":[\"Failed to Suspend Versioning\"],\"5aNQ3F\":[\"\\\"\",[\"objectName\"],\"\\\" was successfully copied to \",[\"destination\"],\".\"],\"5g7owI\":[\"Updating Floating IP...\"],\"5p97CR\":[\"Unable to verify bucket versioning status. Please try again.\"],\"5rPh4Y\":[\"This project doesn't exist or is not accessible from your current domain. Please select a project from your current domain.\"],\"5sHSUO\":[\"Days until deletion\"],\"5x28FU\":[\"e.g. bucket/folder/subfolder\"],\"5y3O+A\":[\"Deactivate\"],\"6+7EwD\":[\"Serve objects as index when file name is:\"],\"6+OdGi\":[\"Protocol\"],\"6/dCYd\":[\"Overview\"],\"6/xipy\":[\"Container Format\"],\"644xgx\":[\"Protected\"],\"65f3uA\":[\"Are you sure you want to delete lifecycle rule <0>\",[\"displayName\"],\"</0> from bucket <1>\",[\"bucketName\"],\"</1>?\"],\"66YUKF\":[\"Failed to Empty Bucket\"],\"6BDqha\":[\"Limits\"],\"6CDYXS\":[\"Static website serving\"],\"6E98zF\":[\"Stored as x-amz-meta-* headers. Keys are case-insensitive.\"],\"6EcekU\":[\"Target bucket\"],\"6GBt0m\":[\"Metadata\"],\"6H/Lg1\":[\"This is a public image. All users have access to it. Explicit sharing is not needed.\"],\"6KRclz\":[\"Folder Created\"],\"6OopEX\":[\"Container Emptied\"],\"6Rnrsz\":[\"Manage Access - \",[\"flavorName\"]],\"6X/9Di\":[\"\\\"\",[\"objectName\"],\"\\\" was successfully moved to \",[\"destination\"],\".\"],\"6YtxFj\":[\"Name\"],\"6Zo0bk\":[[\"count\",\"plural\",{\"one\":[\"Delete \",\"#\",\" Object\"],\"other\":[\"Delete \",\"#\",\" Objects\"]}]],\"6a8w91\":[\"e.g. my-lifecycle-rule\"],\"6fuDFZ\":[\"Empty All Completed with Errors\"],\"6jAi8c\":[\"Range\"],\"6luZQA\":[\"Object Moved\"],\"6oolxV\":[\"This extra spec keys already exist. Please use different keys.\"],\"6qzsuS\":[\"Write ACLs\"],\"6rgjv/\":[\"Storage Class Transitions (read-only)\"],\"6sxz+g\":[\"Port Name\"],\"6w+VnM\":[\"Container Created\"],\"6x1HCw\":[\"Could not update security group: \",[\"errorMessage\"]],\"71SiMe\":[\"Version \",[\"shortVersionId\"],\"... deleted successfully\"],\"72Lg8M\":[\"Could not delete \",[\"count\"],\" CORS rules from bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"76RKuS\":[\"ICMP Code\"],\"78+riR\":[\"You are not authorized to remove tenant access. Please log in again.\"],\"7AfIPZ\":[\"Floating Network\"],\"7BpykL\":[\"Failed to create extra specs. Please try again.\"],\"7Jpa9R\":[[\"0\",\"plural\",{\"one\":[\"Delete \",\"#\",\" Rule\"],\"other\":[\"Delete \",\"#\",\" Rules\"]}]],\"7L01XJ\":[\"Actions\"],\"7LYm9R\":[\"Downloading larger files may take a while. You can keep browsing containers and folders — downloads continue in the background, and this message disappears once they finish.\"],\"7NC3vm\":[\"Subnet\"],\"7NSdfG\":[\"Emptying container \",[\"progressCurrent\"],\" of \",[\"progressTotal\"],\", please wait...\"],\"7Ocn0b\":[[\"count\",\"plural\",{\"one\":[\"#\",\" object\"],\"other\":[\"#\",\" objects\"]}]],\"7RBR/D\":[\"Empty Buckets\"],\"7SGcZS\":[\"Search objects...\"],\"7T1fHv\":[\"Failed to remove member \\\"\",[\"memberIdToRemove\"],\"\\\"\"],\"7WxyyZ\":[\"Lifecycle rule was successfully deleted from bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"7XQ3QJ\":[\"Denied referrer: \",[\"host\"]],\"7ZnTL8\":[\"Failed to update object: \",[\"mutationErrorMessage\"]],\"7aaeOo\":[\"Version of \\\"\",[\"displayName\"],\"\\\" was permanently deleted.\"],\"7d1a0d\":[\"Public\"],\"7hLLUk\":[\"Folder \\\"\",[\"folderPath\"],\"\\\" was successfully created.\"],\"7sMeHQ\":[\"Key\"],\"7wUXy6\":[\"Delete CORS Rules\"],\"7xCEph\":[\"Failed to Share Security Group\"],\"8/m18Q\":[\"This bucket cannot be deleted yet. Do the following to be able to delete the bucket:\"],\"82AGsl\":[\"Flavor Created\"],\"868txY\":[\"Public Read\"],\"88kg0+\":[\"Created At\"],\"8AriEH\":[\"Image instance \\\"\",[\"imageName\"],\"\\\" has been created\"],\"8M41Vt\":[[\"count\",\"plural\",{\"one\":[\"Failed to Delete CORS Rule\"],\"other\":[\"Failed to Delete CORS Rules\"]}]],\"8Pcsi8\":[\"Enter a timestamp like \\\"YYYY-MM-DD HH:mm:ss\\\" to schedule automatic deletion.\"],\"8TSI9h\":[\"Deactivating this image will prevent it from being used to launch new instances. Existing instances will not be affected.\"],\"8Tg/JR\":[\"Custom\"],\"8Txagi\":[\"Copy Object:\"],\"8Xn6tg\":[\"Security group rule was successfully created.\"],\"8ZOb7O\":[[\"numberDeleted\"],\" object was permanently deleted.\"],\"8ZRhOW\":[\"Allowed Origins\"],\"8c3/77\":[\"Max meta name length\"],\"8erw15\":[\"Bucket \\\"\",[\"bucketName\"],\"\\\" was already empty.\"],\"8gXJTW\":[\"This project already has access\"],\"8jLXs3\":[\"Versioned writes\"],\"8s0tOH\":[\"You don't have permission to add tenant access to this flavor.\"],\"8t1+HU\":[\"Deactivated \",[\"successCount\"],\" image(s), but \",[\"failedCount\"],\" image(s) could not be deactivated.\"],\"8tFjKD\":[\"Protected images (cannot be deleted):\"],\"8uPTwT\":[[\"filteredCount\",\"plural\",{\"one\":[[\"filteredCount\"],\" of \",[\"totalCount\"],\" container\"],\"other\":[[\"filteredCount\"],\" of \",[\"totalCount\"],\" containers\"]}]],\"8wdCNd\":[\"tcp, udp, icmp, or protocol number\"],\"8xMi5V\":[\"Expire objects\"],\"8zAn1f\":[\"Failed to delete flavor. Please try again.\"],\"97QUV6\":[\"Delete Folder\"],\"98Fs4G\":[\"Creating image...\"],\"9Bc7qd\":[\"No lifecycle rules matching the current search criteria.\"],\"9J93Xr\":[\"Container name cannot contain slashes\"],\"9LvYb5\":[\"Delete CORS Rule\"],\"9PnW2j\":[\"Failed to Update Security Group\"],\"9X8lAk\":[\"Allocate\"],\"9doWrf\":[\"Failed to add member\"],\"9iz2XW\":[\"Unable to Update Image\"],\"9m9dpR\":[\"Couldn't open container \\\"\",[\"containerName\"],\"\\\" — it may not exist, or you may not have access to it.\"],\"9njIiV\":[\"Failed to Activate Images\"],\"9rz81C\":[\"Device ID\"],\"9uRcKc\":[\"Could not save bucket policy for \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"9v5VLp\":[\"No custom properties defined\"],\"9vSW3U\":[\"Delete Recursively\"],\"9xQe+Q\":[\"The lifecycle configuration has changed. Please refresh and try again.\"],\"9xtg3X\":[\"Failed to Delete Lifecycle Rule\"],\"A7CVME\":[\"Select disk format first\"],\"A8EVnx\":[\"Failed to copy the pre-signed URL to the clipboard\"],\"AB4Tnl\":[\"Please select a file to upload\"],\"ADVQ46\":[\"Log In\"],\"AGXLLY\":[\"Unable to Upload Image File\"],\"AJRhSM\":[\"Root Disk must be an integer ≥ 0.\"],\"AN0DBJ\":[\"Press Enter to add\"],\"ANOoeR\":[[\"totalItemCount\",\"plural\",{\"one\":[[\"totalItemCount\"],\" item\"],\"other\":[[\"totalItemCount\"],\" items\"]}]],\"ASJMIw\":[\"S3 bucket names must be 3-63 characters long and contain only lowercase letters, numbers, periods, and hyphens. They must start and end with a letter or number, and be globally unique within the cluster.\"],\"AX9Juz\":[\"ID must only contain alphanumeric characters, hyphens, underscores, and dots.\"],\"AXNSZ2\":[\"Confirm deletion of \",[\"displayName\"],\". The object will be marked as deleted but can be restored from version history.\"],\"AXvHUK\":[\"Flavor Deleted\"],\"AZyHwC\":[\"Must be a valid IPv4 or IPv6 address (for example: 172.24.4.228 or 2001:db8::1).\"],\"Ac6dy9\":[\"Type name\"],\"AdtLNV\":[\"Ensure ACL entries are valid — correct project IDs, user IDs, and formats are your responsibility. Invalid entries may silently grant or deny unintended access.\"],\"AeP3VC\":[\"Date:\"],\"AeXO77\":[\"Account\"],\"Af8YL/\":[\"\\\"\",[\"displayName\"],\"\\\" was successfully copied to \",[\"destination\"],\".\"],\"Afh/Lb\":[\"Select destination folder\"],\"AlbUVn\":[\"<0>Optimized Scalability:</0> Built for businesses of all sizes, Aurora grows with you, supporting simple environments and intricate multi-cloud setups alike.\"],\"Alx2/L\":[\"Open in new tab\"],\"AxZkIr\":[\"Disk (GiB)\"],\"B1tSbJ\":[\"There are no lifecycle rules for this bucket\"],\"B2Czeb\":[\"Min. RAM\"],\"B2SpR8\":[\"Bucket name must not start with reserved prefix \\\"\",[\"prefix\"],\"\\\"\"],\"B2i9cQ\":[\"Objects to be deleted (\",[\"totalCount\"],\")\"],\"B3toQF\":[\"Objects\"],\"BCJPTn\":[\"Grant access to all users from that project.\"],\"BCXapL\":[\"Failed to load container properties: \",[\"errorMessage\"]],\"BGZ26c\":[\"Open \",[\"displayName\"]],\"BGsuZN\":[\"Key contains invalid characters (use only letters, digits, hyphens, underscores)\"],\"BJt+PJ\":[\"Failed to Delete Container\"],\"BMTd81\":[\"This action cannot be undone. The target project will lose access to this security group immediately.\"],\"BOoOLQ\":[\"All Buckets Emptied\"],\"BSpWob\":[\"Could not download \\\"\",[\"displayName\"],\"\\\": \",[\"errorMessage\"]],\"BTsbBe\":[\"Bucket Name\"],\"BYH/2L\":[\"Unable to Deactivate Image\"],\"Bfkish\":[\"Release Floating IP \\\"\",[\"floating_ip_address\"],\"\\\"\"],\"BgMp/T\":[\"Invalid format combination for selected disk format\"],\"BoIAP6\":[\"The ID of the network associated with the floating IP.\"],\"BoPocW\":[\"MD5 checksum\"],\"BrrIs8\":[\"Storage\"],\"C5QzQ5\":[\"Lifecycle rules cannot be modified\"],\"CA8ZeT\":[\"Image \\\"\",[\"imageName\"],\"\\\" visibility updated to \",[\"visibility\"]],\"CBFSfX\":[\"Please fix the validation errors below.\"],\"CFMxC8\":[\"Images Deleted\"],\"CGESpg\":[\"Expire non-current versions\"],\"CMVP7y\":[\"This action cannot be undone. The rule will be permanently deleted.\"],\"CeGEjw\":[\"Optional unique identifier for the rule (max 255 characters)\"],\"CfKRC1\":[\"Empty Bucket\"],\"CgZxr7\":[\"Min RAM (MB)\"],\"ChOuUj\":[\"Floating IP not found\"],\"Cj2Gtd\":[\"Size\"],\"CongmL\":[\"Could not delete bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"CpPgKl\":[\"Security Group Shared\"],\"CpZKLR\":[\"Version ID\"],\"CtiFDz\":[\"This will permanently delete all objects from \",[\"totalCount\"],\" selected \",[\"totalCount\",\"plural\",{\"one\":[\"bucket\"],\"other\":[\"buckets\"]}],\". This action cannot be undone.\"],\"Cu6xuZ\":[\"This is a <0>dynamic large object (DLO)</0> manifest. Metadata changes apply to the manifest only — segment objects are not affected.\"],\"CunRry\":[\"Invalid project ID format. Must be 32 hexadecimal characters (e.g., b90f9c4bc76140e18540b2cec1299e2a) or UUID format (e.g., 12345678-1234-1234-1234-123456789abc)\"],\"Cung5f\":[\"Successfully deleted \",[\"count\"],\" CORS rules from bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"Cxgv2U\":[\"Min. Disk\"],\"CxzjBR\":[\"Pre-signed URL\"],\"D7qT9F\":[\"Why Choose Aurora?\"],\"D7yx6b\":[\"Version History:\"],\"D8ak4F\":[[\"totalItemCount\",\"plural\",{\"one\":[[\"filteredItemCount\"],\" of \",[\"totalItemCount\"],\" item\"],\"other\":[[\"filteredItemCount\"],\" of \",[\"totalItemCount\"],\" items\"]}]],\"D96wgg\":[\"Failed to Delete CORS Rule\"],\"DIZzgv\":[\"Failed to load versions\"],\"DJT9tB\":[\"Account quotas\"],\"DKkOPx\":[\"Extra Specs\"],\"DNVql8\":[\"Full lifecycle management of Floating IPs, including attachment, port association/disassociation, DNS settings, and deletion\"],\"DPfwMq\":[\"Done\"],\"DWBWmW\":[[\"totalCount\",\"plural\",{\"one\":[\"Empty Bucket\"],\"other\":[\"Empty Buckets\"]}]],\"DaLmTO\":[\"… and \",[\"hiddenObjectCount\"],\" more\"],\"DcMIiu\":[\"Could not update ACLs for container \\\"\",[\"containerName\"],\"\\\": \",[\"errorMessage\"]],\"Df0YHr\":[\"Update Security Group\"],\"DhHhSP\":[\"Versions to delete:\"],\"Dia2Ue\":[\"There are no RBAC policies for this security group\"],\"Do5/uH\":[\"The flavor or tenant could not be found. It may have already been removed.\"],\"Dqnh7K\":[\"Specific referrer: \",[\"host\"]],\"Dt5W9T\":[\"Remove RBAC Policy\"],\"DvB4XF\":[\"Drop your file here\"],\"E/QGRL\":[\"Disabled\"],\"E4QYe7\":[\"Suggested Images\"],\"E55MDj\":[\"Could not delete version of \\\"\",[\"displayName\"],\"\\\": \",[\"errorMessage\"]],\"E6nRW7\":[\"Copy URL\"],\"E7kwFm\":[\"No CORS rules matching the current search criteria.\"],\"EBCXh1\":[\"Apply this rule only to objects with this prefix (leave empty for all objects)\"],\"ECYugp\":[\"Days after becoming non-current\"],\"EF2EU9\":[\"Deleting...\"],\"EJqSbS\":[\"No versions to delete in bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"EPMHs9\":[\"You don't have permission to delete flavors in this project.\"],\"EQnVgi\":[\"Flavor service is not available for this project.\"],\"Ec3oGg\":[\"Could not delete \",[\"count\"],\" CORS rule from bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"EdQY6l\":[\"None\"],\"EdxcAN\":[\"Access Control for Container:\"],\"EpWoJ9\":[\"Loading Permissions...\"],\"Eq5PsT\":[\"Type \\\"detach\\\" to confirm\"],\"EqSPkP\":[\"Loading Flavors...\"],\"Er+P8q\":[\"Enter a header name and press Enter. Use * to allow all headers.\"],\"Erlvqg\":[\"Object name cannot have leading or trailing whitespace\"],\"ExLULX\":[\"Image Name\"],\"ExvQL2\":[\"Delete Results\"],\"EztMB8\":[\"Failed to fetch flavors from server.\"],\"F/MlG/\":[\"The selected objects will be permanently deleted. This action cannot be undone.\"],\"F02e8I\":[\"No custom metadata. Click \\\"Add Property\\\" to create one.\"],\"F6WEvK\":[\"Containers to be emptied:\"],\"F6YIQe\":[\"Efficient bulk deletion\"],\"FAkHq7\":[\"Select all rules\"],\"FEfQAu\":[\"Failed to update visibility for \\\"\",[\"imageName\"],\"\\\": \",[\"errorMessage\"]],\"FJO48W\":[\"Create S3 Credentials\"],\"FKL6Jv\":[\"e.g. .r:*,.rlistings\"],\"FL8MF6\":[\"Enter a whole number of days greater than 0\"],\"FOcBn3\":[\"Detach\"],\"FQBaXG\":[\"Activate\"],\"FRtmJJ\":[\"Storage container not found\"],\"FT6BiH\":[\"Security Group Deleted\"],\"FZc7ea\":[[\"deletableCount\",\"plural\",{\"one\":[\"Delete \",\"#\",\" Image\"],\"other\":[\"Delete \",\"#\",\" Images\"]}]],\"FgWsFY\":[\"Object <0>\\\"\",[\"displayName\"],\"\\\"</0> will be permanently deleted. This cannot be undone.\"],\"FgpiL7\":[\"There are no CORS rules for this bucket\"],\"FjONW3\":[\"Error Loading Flavor\"],\"FjPnAE\":[\"Error loading security group\"],\"FwSyEp\":[\"The specified project does not exist or you don't have permission to share with it.\"],\"Fzrzfe\":[\"Folder name is required\"],\"G/045D\":[\"The image \\\"\",[\"imageId\"],\"\\\" could not be re-activated: \",[\"errorMessage\"]],\"G0PE24\":[\"Some Versions Could Not Be Deleted\"],\"G3pRO8\":[\"An object with this name already exists at the destination and will be overwritten.\"],\"G6AP+o\":[\"Shared:\"],\"GEgjm+\":[\"Loading Objects...\"],\"GPuCEo\":[\"Leave empty for all types\"],\"GSIPwA\":[\"Temporary URL\"],\"GZjazt\":[\"No policy found\"],\"GbKqnI\":[\"Activated \",[\"successCount\"],\" image(s), but \",[\"failedCount\"],\" image(s) could not be activated.\"],\"Gfx1qQ\":[\"Unable to Load Content\"],\"Ghp863\":[\"Type \\\"empty\\\" to confirm\"],\"GxkJXS\":[\"Uploading...\"],\"H+a5j6\":[\"Release\"],\"H4FVrm\":[\"Leave unchecked to save without activating.\"],\"H4Qwmp\":[\"No objects match your search. Try adjusting your search term.\"],\"H7u085\":[\"No projects have access to this image yet. Click \\\"Add Project Access\\\" to grant access.\"],\"HAcOOW\":[\"Your credentials are valid but you don't have permission to perform this operation. Please contact your administrator to grant you the necessary permissions.\"],\"HAkrpK\":[\"At Aurora, our mission is to provide a centralized platform that unifies cloud management. We aim to simplify the complexities of provisioning, configuring, and scaling resources across diverse cloud environments while enabling seamless growth for your business.\"],\"HBpi4q\":[\"Loading Images...\"],\"HDpkS/\":[\"Select destination folder within target bucket\"],\"HG5AI8\":[\"Must be a whole number, 0 or greater\"],\"HM56Bx\":[\"Creating...\"],\"HMV+cw\":[\"Search rules...\"],\"HQH8HM\":[\"Could not update \\\"\",[\"objectName\"],\"\\\": \",[\"errorMessage\"]],\"HSakGA\":[\"Rule #\",[\"ruleNumber\"]],\"HVdrr1\":[\"ANY referrer\"],\"HfL/NM\":[\"Version Deleted\"],\"HiDAFk\":[\"Create Bucket\"],\"Hivb/4\":[\"Server is experiencing issues. Please try again later.\"],\"Hiw1Ha\":[\"No containers found\"],\"HlwgQN\":[\"Object \\\"\",[\"objectName\"],\"\\\" was permanently deleted.\"],\"Honvv4\":[\"Allowed Headers\"],\"HuA8iQ\":[\"Allocating Floating IP...\"],\"Hw+HlA\":[\"Expose Headers\"],\"HxTYrE\":[\"The flavor could not be found. It may have been deleted.\"],\"HyyJ83\":[\"Access Type\"],\"HzKlpd\":[\"Failed to empty bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"I2dAjS\":[\"Lifecycle rule was successfully saved for bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"I5kZVK\":[\"Remote Source\"],\"INUP6f\":[\"<0>Effortless Resource Provisioning:</0> Quickly provision, configure, and deploy resources like servers, networks, and volumes with just a few clicks.\"],\"INuwsx\":[\"After \",[\"abortDays\"],\" days\"],\"IOkHLC\":[\"Failed to copy object: \",[\"errorMessage\"]],\"IQldU4\":[\"Bucket name must contain only lowercase letters, numbers, periods, and hyphens\"],\"ISxSs6\":[\"All buckets\"],\"IUwGEM\":[\"Save Changes\"],\"IWF68U\":[\"Storage Overview\"],\"IbWX61\":[\"Failed to delete bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"IbYr/u\":[\"Content type\"],\"Ioblgz\":[\"This action is permanent. All objects in the container will be deleted and this cannot be undone.\"],\"Irs0ZM\":[\"e.g. 3600 (1 hour) or 604800 (7 days)\"],\"IwlPLb\":[\"Delete Bucket\"],\"IxsRaQ\":[\"Enable Versioning\"],\"J+Sc8C\":[\"Showing first \",[\"MAX_COMBO_OPTIONS\"],\" of \",[\"totalBuckets\"],\", refine your search to narrow results\"],\"J4DKSM\":[\"Container format is required\"],\"J6EOll\":[\"Move/Rename object:\"],\"J7+bZb\":[\"Folder Deleted\"],\"J9QcnV\":[\"Successfully activated \",[\"successCount\"],\" of \",[\"totalCount\"],\" image(s)\"],\"J9cmxx\":[\"Failed to update visibility to \",[\"newVisibility\"]],\"JB0bhm\":[\"Get Involved\"],\"JNGYAW\":[\"Container name is required\"],\"JPWqr2\":[\"Bucket \\\"\",[\"bucketName\"],\"\\\" was successfully emptied. \",[\"deletedCount\"],\" objects deleted.\"],\"JT+lLV\":[\"Delete Object\"],\"JT3I1g\":[\"Delete Flavor\"],\"JeRXll\":[\"This key is reserved and managed separately\"],\"JedhzP\":[\"Move/Rename Object:\"],\"JfWCsP\":[\"Partial Deactivation Success\"],\"Jh4rAZ\":[\"Error loading image\"],\"Jim5X9\":[\"Stateful\"],\"JoECY1\":[\"The extra spec data provided is invalid. Please check your input.\"],\"Jp0dMR\":[\"Could not save lifecycle rule for bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"JrmKyf\":[\"Failed: \",[\"errorDetails\"]],\"Jrn0cT\":[\"The project you are looking for doesn't exist or you don't have access to it.\"],\"JtHgVz\":[\"Delete Images\"],\"JuOpPY\":[\"All objects in the selected containers will be permanently deleted. This cannot be undone.\"],\"K+e/0e\":[\"RAM (MiB)\"],\"K0ZQpQ\":[\"Failed to Save Bucket Policy\"],\"K3bUTE\":[\"Minimum disk must be 0 or greater\"],\"K4EkxW\":[\"… and \",[\"hiddenErrorCount\"],\" more failures\"],\"K4twCt\":[\"Could not delete security group: \",[\"errorMessage\"]],\"K8Qnlj\":[\"Moving...\"],\"K9eC8x\":[\"This could be due to insufficient permissions or a temporary service issue. Please check your access rights or try refreshing the page.\"],\"KBbMRW\":[\"Could not delete rule \\\"\",[\"ruleId\"],\"\\\" from bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"KDw4GX\":[\"Try again\"],\"KJC+M7\":[\"Server error occurred while fetching flavor details. Please try again later.\"],\"KKXsRA\":[\"… and \",[\"hiddenVersionsCount\"],\" more\"],\"KOJ0ud\":[\"Edit Policy\"],\"KOpPMt\":[\"Total size quota\"],\"KSW/GC\":[\"There are no flavors available for this project with the current filters applied. Try adjusting your filter criteria or create a new flavor.\"],\"KWa0gi\":[\"Delete Image\"],\"KYFkcz\":[\"The image \\\"\",[\"imageId\"],\"\\\" could not be deactivated: \",[\"errorMessage\"]],\"KcAS2G\":[\"Bucket policy was successfully saved for \\\"\",[\"bucketName\"],\"\\\".\"],\"Kg/39v\":[\"Pre-signed URL for \\\"\",[\"displayName\"],\"\\\" was copied to clipboard.\"],\"KhNDX4\":[\"Object Storage (Ceph)\"],\"KjYDf4\":[\"rule\"],\"Kl2hZ+\":[\"Delete Version\"],\"Km4AGG\":[\"Creating security group...\"],\"KoQP4F\":[\"Server error occurred while adding tenant access. Please try again later.\"],\"KsIM0b\":[\"Boot RAM\"],\"KsnZ3m\":[\"Folder \\\"\",[\"folderName\"],\"\\\" was successfully created.\"],\"KvQbFT\":[\"This action will permanently delete all objects from \",[\"bucketName\"],\". This action cannot be undone.\"],\"KzUd7m\":[\"new-folder-name\"],\"LASqRM\":[\"Object \\\"\",[\"displayName\"],\"\\\" was permanently deleted.\"],\"LGVlaU\":[\"CORS rule was successfully deleted from bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"LI8Z2I\":[\"Download \",[\"rowDisplayName\"]],\"LK0pQN\":[\"Disk format is required\"],\"LMdsuJ\":[\"Port (from)\"],\"LT2Vv7\":[\"Bucket policy was successfully deleted from \\\"\",[\"bucketName\"],\"\\\".\"],\"LVU2Dv\":[\"Add Policy\"],\"La2LYh\":[\"\\\"\",[\"displayName\"],\"\\\" was successfully copied to \",[\"destination\"],\" (existing object was replaced).\"],\"Llcakz\":[\"Updated At\"],\"LrijeS\":[\"Successfully deleted \",[\"count\"],\" lifecycle rules from bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"LtI9AS\":[\"Owner\"],\"LxRNPw\":[\"Expiration\"],\"Lylr9Z\":[\"Object Copied\"],\"M3bysB\":[\"Bucket Created\"],\"M470oJ\":[\"The flavor could not be found or has no extra specs.\"],\"M5Epeo\":[\"Edit Image Details\"],\"M5RhXF\":[\"Removing...\"],\"M5rEN5\":[\"Session Expired\"],\"M7joSe\":[\"Confirm deletion of \",[\"displayName\"],\". The object will be permanently deleted. This action cannot be undone.\"],\"MDMDAc\":[\"Successfully deleted \",[\"count\"],\" CORS rule from bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"MDQl/K\":[\"Sign In to Your Account\"],\"MEIAzV\":[\"Unnamed\"],\"MILoeL\":[\"Services\"],\"MJLqeY\":[\"Failed to check bucket contents: \",[\"errorMessage\"]],\"MJtNLd\":[\"Images to delete:\"],\"MOug+V\":[\"Enter a tag and press Enter or click Add\"],\"MPTc51\":[\"Lifecycle Rules\"],\"MPg6eZ\":[\"Floating IP Updated\"],\"MRB7nI\":[\"Direction\"],\"MUJA7f\":[\"Select HTTP methods allowed for cross-origin requests\"],\"MXoA/6\":[\"Upload Object\"],\"MZGbkp\":[\"VCPUs\"],\"MbKJNP\":[\"You don't have permission to access flavor access information for this flavor.\"],\"MdfAJn\":[\"You do not have permission to view security groups\"],\"MgZyuJ\":[\"You are about to activate <0>\",[\"deactivatedCount\"],\" image(s)</0>. Activated images will be available for launching new instances.\"],\"Mj2wuy\":[\"Folder \\\"\",[\"folderName\"],\"\\\" and \",[\"deletedCount\"],\" object were permanently deleted.\"],\"Mj5iQ0\":[\"YYYY-MM-DD HH:mm:ss\"],\"MmtQVF\":[\"Invalid value for public flavor setting.\"],\"MqKovk\":[\"Edit Object Metadata\"],\"MsO7dX\":[\"Download Object\"],\"Mt6sRo\":[\"You are not authorized to access flavor access information. Please log in again.\"],\"MtzSbv\":[\"Object name is required\"],\"N2S1rs\":[\"Empty\"],\"N40H+G\":[\"All\"],\"N5I2RJ\":[\"Type \\\"release\\\" to confirm\"],\"N5vGcw\":[\"Enter your credentials to access your account\"],\"NH2fsP\":[\"Already deactivated (will be skipped):\"],\"NNpgo3\":[\"Bucket name\"],\"NOdFZR\":[\"Generating...\"],\"NRMm0E\":[\"This tenant already has access to the flavor.\"],\"NRVSdy\":[\"Member ID\"],\"NW1XEL\":[\"Emptying bucket \",[\"progressCurrent\"],\" of \",[\"progressTotal\"],\", please wait...\"],\"NW4PIb\":[\"Could not create folder \\\"\",[\"folderName\"],\"\\\": \",[\"errorMessage\"]],\"NZJhro\":[\"Object name cannot contain slashes\"],\"Nc7QKU\":[\"Fixed IP Address\"],\"Ncv07y\":[\"\\\"\",[\"displayName\"],\"\\\" was successfully restored.\"],\"NeUjqc\":[\"Enable file listing\"],\"Ni6RvO\":[\"Versioning Suspended\"],\"NixRmA\":[\"Min Disk (GB)\"],\"NjN3DX\":[\"Floating IP \\\"\",[\"ip\"],\"\\\" was successfully detached from the port.\"],\"NlcF/v\":[\"No flavor selected for deletion.\"],\"NopYGU\":[\"Disk Format\"],\"Np28ib\":[\"or drag and drop\"],\"Nu4oKW\":[\"Description\"],\"Nvfd2b\":[\"Versioning is enabled\"],\"NwXhO7\":[\"Successfully deleted \",[\"deletedCount\"],\" version from bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"Nx16ic\":[\"No metadata properties found.\"],\"O80bQY\":[\"Loading object properties...\"],\"O8tK4v\":[\"Add rule\"],\"ONWvwQ\":[\"Upload\"],\"OR475H\":[\"Network\"],\"OSlLnz\":[\"Image Visibility\"],\"OWTKX5\":[\"Floating IP \\\"\",[\"ip\"],\"\\\" was successfully updated.\"],\"OYHzN1\":[\"Tags\"],\"OZImTR\":[\"Container listing limit\"],\"OaHwiV\":[\"Folders cannot be bulk-deleted. Use the row menu to delete a folder.\"],\"OaSktR\":[\"Device Owner\"],\"Oc8Aqv\":[\"Preview and Edit metadata\"],\"OlmKCg\":[\"A flavor with this ID or name already exists. Please use different values.\"],\"On9AgT\":[\"Delete Bucket Policy\"],\"OvEjsP\":[\"Copying...\"],\"OxDN2m\":[\"Failed to create flavor. Please try again.\"],\"OxaeYj\":[\"We are building Aurora Dashboard to serve you better. Your feedback is invaluable in shaping a tool that meets the unique needs of businesses like yours. Stay connected and join us as we redefine cloud management.\"],\"Oxl1UN\":[\"If there is no index file, the URL displays a list of objects in the container.\"],\"P1XdeN\":[\"Optional identifier for this rule (max 255 characters).\"],\"P2tWBZ\":[[\"selectedCount\",\"plural\",{\"one\":[\"Empty Bucket\"],\"other\":[\"Empty Buckets\"]}]],\"P3ajcg\":[[\"deletedCount\",\"plural\",{\"one\":[\"#\",\" object was deleted.\"],\"other\":[\"#\",\" objects were deleted.\"]}]],\"P4qkcG\":[\"Floating IP \\\"\",[\"ip\"],\"\\\" was successfully associated with the port.\"],\"P7KwkL\":[\"Detaching...\"],\"PAKSdy\":[\"Enter a floating IP or leave blank to auto-assign one\"],\"PEGvy+\":[\"Minimum RAM must be 0 or greater\"],\"PIbPRX\":[\"RX/TX Factor must be an integer ≥ 1.\"],\"PLwzWR\":[\"All containers\"],\"PWz1bJ\":[\"Prefix and tag filters define which objects a rule applies to. Without them, this rule will be applied to all objects in the bucket.\"],\"PYQUjU\":[\"Failed to load metadata configuration.\"],\"Pc3uze\":[\"Could not revoke access: \",[\"errorMessage\"]],\"PgNNGl\":[\"More Actions\"],\"PiH3UR\":[\"Copied!\"],\"PiyQJ/\":[\"No flavors found\"],\"PkfPsB\":[\"Enter the ID of the project you want to share this security group with. You can find project IDs in the account/project switcher or in the Identity service.\"],\"Pkw7J9\":[\"This folder is empty.\"],\"PonzUM\":[\"No project access configured.\"],\"PsEGri\":[\"Ubuntu 22.04 LTS\"],\"PtjzS+\":[\"Associates on the selected port. If the port has multiple IPs, select the desired fixed IP address.\"],\"PzgYM9\":[\"Checksum\"],\"Q0iV7W\":[\"e.g. environment\"],\"Q1W//7\":[\"No services available for this project.\"],\"Q2xmVl\":[\"Symlinks\"],\"Q5JQLh\":[\"CORS Rules\"],\"Q9f2QF\":[[\"numberDeleted\"],\" objects were deleted successfully, but some deletions failed.\"],\"QAUa4B\":[\"Enter a single port, or define a range by also filling \\\"Port (to)\\\". \\\"Port (to)\\\" is optional.\"],\"QAoi3Q\":[\"Policy Deleted\"],\"QDUXIq\":[\"Are you sure you want to delete the policy for bucket <0>\",[\"bucketName\"],\"</0>?\"],\"QEtDlS\":[\"Copying object...\"],\"QNHur0\":[\"Failed to load container ACLs: \",[\"errorMessage\"]],\"QQ8wUG\":[\"This action cannot be undone. The flavor will be permanently deleted.\"],\"QQjQRf\":[\"No Temp URL key configured. A temporary URL key must be set at the account or container level before temporary URLs can be generated. Contact your administrator to configure X-Account-Meta-Temp-URL-Key or X-Container-Meta-Temp-URL-Key.\"],\"QRlXaL\":[\"Bucket name must not end with reserved suffix \\\"\",[\"suffix\"],\"\\\"\"],\"QTcAgk\":[[\"skippedRuleCount\",\"plural\",{\"one\":[\"#\",\" lifecycle rule on this bucket could not be read and is hidden from this table. Saving any change here replaces the entire lifecycle configuration, which would permanently delete it. Fix it with an external S3 tool (e.g. the AWS CLI) first, then reload this page.\"],\"other\":[\"#\",\" lifecycle rules on this bucket could not be read and are hidden from this table. Saving any change here replaces the entire lifecycle configuration, which would permanently delete them. Fix them with an external S3 tool (e.g. the AWS CLI) first, then reload this page.\"]}]],\"QV1ZPO\":[\"Key is required\"],\"QYiqYb\":[\"Failed to update access status\"],\"Qb+14I\":[\"This action cannot be undone. The security group will be permanently deleted.\"],\"QcRQm4\":[\"Failed to delete version: \",[\"errorMessage\"]],\"QceOn7\":[\"Bucket Policy\"],\"QdGvPV\":[\"Size:\"],\"QetsXP\":[\"Upload failed: \",[\"uploadError\"]],\"Qg4EG6\":[\"Unable to connect to the compute service. Please check your connection and try again.\"],\"QmvFt4\":[\"Insufficient permissions\"],\"QpbWpf\":[\"Bucket \\\"\",[\"bucketName\"],\"\\\" was successfully emptied. \",[\"deletedCount\"],\" object deleted.\"],\"QuJSSl\":[\"Failed to create the flavor. Please try again.\"],\"QvqBQa\":[\"Target container\"],\"Qx7DM7\":[\"Capabilities\"],\"QytzQr\":[\"Type \\\"delete\\\" to confirm\"],\"R3U2a2\":[\"Policy JSON\"],\"R5zmZq\":[\"IP Restricted\"],\"R6kcsL\":[\"Must be a valid PQDN or FQDN (alphanumeric and hyphens only, cannot start or end with hyphen).\"],\"R6u5CR\":[\"Failed to activate \",[\"failedCount\"],\" of \",[\"totalCount\"],\" image(s). Some images may already be active or in an invalid state.\"],\"R8o5/x\":[\"No project access configured. Click \\\"Add Project\\\" to grant access.\"],\"RCr0yv\":[\"Failed to load flavor details. Please try again.\"],\"RFDYCD\":[\"Minimum disk size required to boot this image\"],\"RGhYAo\":[\"RAM\"],\"RGrgxg\":[\"Could not delete container \\\"\",[\"containerName\"],\"\\\": \",[\"errorMessage\"]],\"RGwfoL\":[\"Max meta count\"],\"RHm1CB\":[\"Versioning was successfully suspended for bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"RNBvdl\":[\"Max SLO segments\"],\"RQuGRj\":[\"Change the name, destination container, or folder to move this object.\"],\"RSFkXF\":[\"Activate Image\"],\"RSMPjT\":[\"You are currently on the dashboard route.\"],\"RSg/pq\":[\"Failed to Delete Object\"],\"RTQFAw\":[\"You are not authorized to create extra specs. Please log in again.\"],\"RThPY1\":[\"Move/Rename Object\"],\"RYhwcU\":[\"Leaving the JSON field empty will remove the policy from the bucket.\"],\"Rih53k\":[\"Max container name length\"],\"Rlp5zj\":[\"Create Flavor\"],\"RnZk/L\":[\"We couldn't verify whether you can create S3 credentials. Please reload the page or try again later.\"],\"Rsh494\":[\"Deleting the policy will remove all access restrictions defined by it. This action cannot be undone.\"],\"S0kLOH\":[\"ID\"],\"S1iTXO\":[\"Image instance \\\"\",[\"imageName\"],\"\\\" has been deleted\"],\"S5CUKP\":[\"Member ID (project UUID) is required.\"],\"S6INkj\":[\"Enter a header name and press Enter. These headers will be exposed to the browser.\"],\"S8/j2h\":[\"Failed to Empty Container\"],\"SBGiGm\":[\"Read ACLs\"],\"SCY5an\":[\"Failed to Move Object\"],\"SDohXA\":[\"Failed deletions:\"],\"SFo0kK\":[\"All Images\"],\"SIfYq6\":[\"Edit Metadata\"],\"SK7RzY\":[\"Project Not Accessible\"],\"SLEH7X\":[\"Enter DNS name\"],\"STc+7E\":[\"Max containers per extraction\"],\"SU0uxT\":[\"Upload object to:\"],\"SUSS9i\":[\"Container name\"],\"SVLToM\":[\"Type \\\"remove\\\" to confirm\"],\"SYOCMT\":[\"Successfully deleted \",[\"count\"],\" lifecycle rule from bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"Sb/VT5\":[\"Container \\\"\",[\"containerName\"],\"\\\" was successfully emptied. \",[\"deletedCount\"],\" objects deleted.\"],\"Sgz1vJ\":[\"Member \\\"\",[\"trimmedMemberId\"],\"\\\" has been added successfully.\"],\"Smk7M2\":[\"Error loading floating IP\"],\"Sokf5L\":[\"Rule ID\"],\"SuX2Ca\":[\"Basic Info\"],\"Sv3i+l\":[\"Version Restored\"],\"T/UxKm\":[\"<0>Edit metadata:</0> <1>\",[\"displayName\"],\"</1>\"],\"T3+VKR\":[\"This action will permanently delete all versions and delete markers. This will enable you to delete the bucket. This action cannot be undone.\"],\"T6Gm5y\":[\"Select an external network\"],\"T7mgdd\":[\"Successfully deleted \",[\"successCount\"],\" of \",[\"totalCount\"],\" image(s)\"],\"T8N6oi\":[\"Property Key\"],\"T9Mtpi\":[\"Tenant ID\"],\"TAaMxB\":[\"Failed to restore version: \",[\"errorMessage\"]],\"TM93nK\":[\"Delete Security Group Rule\"],\"TNH2Bl\":[\"Failed to delete CORS rules\"],\"TP+gE1\":[\"Failed to verify CORS configuration\"],\"TQn3hH\":[\"Failed to create image. Please try again.\"],\"TSclU4\":[\"property-key\"],\"TSrwsc\":[\"Delete Lifecycle Rule\"],\"TTX3nV\":[\"Could not move \\\"\",[\"displayName\"],\"\\\": \",[\"errorMessage\"]],\"TZJiVf\":[\"Container \\\"\",[\"containerName\"],\"\\\" was successfully emptied. \",[\"deletedCount\"],\" object deleted.\"],\"TfC9O+\":[\"Last modified (UTC)\"],\"TfdeUd\":[\"Failed to delete the extra spec. Please try again.\"],\"TipzDp\":[\"Search containers...\"],\"TkSo/Q\":[\"Failed to delete rule\"],\"ToZFjm\":[\"Could not delete CORS rule from bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"TpGxnq\":[\"Enter member ID\"],\"Tx4Ym+\":[\"Enter a valid PQDN or FQDN (max 63 characters) to associate with the floating IP. A and PTR records are created automatically.\"],\"TyODHt\":[\"Save Metadata\"],\"U/oahm\":[\"URL Copied\"],\"U0sPCo\":[\"Search flavors...\"],\"U9q4M7\":[\"Back to Security Groups\"],\"UGhVPl\":[\"Object Type\"],\"UHciG3\":[[\"rulesLength\"],\" rules\"],\"UK2mpr\":[\"Generating temporary URL...\"],\"UKwOYH\":[\"Image File\"],\"UO3hJ2\":[\"Temporary URLs\"],\"UOtFRg\":[\"Define permissions for this bucket. You may use one of the predefined templates.\"],\"UQ7Wyv\":[\"Manage Access for Image - \",[\"imageName\"]],\"URmyfc\":[\"Details\"],\"USiuNX\":[\"Container quotas\"],\"UVFHGY\":[\"e.g. PROJECT_ID:USER_ID\"],\"UYSopm\":[\"Minimum RAM (MB)\"],\"UaP7Th\":[\"Failed to Create Bucket\"],\"UbRKMZ\":[\"Pending\"],\"UdcGJu\":[\"Activate Images\"],\"Uj+n/2\":[\"Failed to Delete Folder\"],\"UkVkoq\":[\"Leave empty for all codes\"],\"UmQ3/m\":[\"Deactivate Selected\"],\"UmuIdg\":[\"Go to Home\"],\"UvqZrQ\":[\"Search lifecycle rules...\"],\"Uwo8Xw\":[\"This image was shared with you by <0>\",[\"ownerProject\"],\"</0> on \",[\"sharedAt\"],\".\"],\"Ux/pNd\":[[\"totalCount\",\"plural\",{\"one\":[[\"totalCount\"],\" bucket\"],\"other\":[[\"totalCount\"],\" buckets\"]}]],\"UztfYZ\":[\"Select port to associate\"],\"V/8B9A\":[\"I confirm that all existing versions will also be deleted\"],\"V/SINY\":[\"Update object\"],\"V1TzeS\":[\"Container \\\"\",[\"containerName\"],\"\\\" was successfully deleted.\"],\"V2oWFM\":[\"CORS Rule Deleted\"],\"V44EtJ\":[\"Max Age in Seconds\"],\"V66Jih\":[\"Access Status\"],\"V6AQa5\":[\"Versions Deleted\"],\"V72AF+\":[\"Failed to load container information\"],\"V7fN5X\":[\"Copy object:\"],\"V8/eES\":[\"Bucket name must not contain consecutive periods\"],\"V804LY\":[\"Updating security group...\"],\"V89FyE\":[\"The selected images will be permanently deleted. This action cannot be undone.\"],\"V9xepr\":[\"Select rule \",[\"ruleLabel\"]],\"VCM3KS\":[\"Add Project Access\"],\"VG2a+x\":[\"Bucket name must start and end with a letter or number\"],\"VKCkZH\":[\"Bucket \\\"\",[\"bucketName\"],\"\\\" was successfully created.\"],\"VLI9eO\":[\"Loading Floating IP Details...\"],\"VMoZmg\":[\"Delete Policy\"],\"VOblr2\":[\"Select all objects\"],\"VTfZPy\":[\"Access Denied\"],\"VV1fdg\":[\"Any user has read access to objects. No token is required in the request.\"],\"VaA9mu\":[\"24 hours\"],\"VakxP/\":[\"Failed to Upload Object\"],\"VcWhM0\":[\"Showing \",[\"filteredCount\"],\" of \",[\"totalCount\"],\" projects\"],\"VeDAv2\":[\"Search buckets...\"],\"Vf3tzc\":[\"Failed to upload file \\\"\",[\"fileName\"],\"\\\": \",[\"errorMessage\"]],\"Vg0k6h\":[\"Showing \",[\"filteredCount\"],\" of \",[\"totalCount\"],\" \",[\"itemName\"]],\"Vh/Uj5\":[\"Target path\"],\"Vj8XFg\":[\"Failed to Create Container\"],\"Vl4XTj\":[\"Folder name cannot contain slashes\"],\"Vmojta\":[\"Access status updated to \\\"\",[\"newStatus\"],\"\\\".\"],\"VoxR3s\":[\"Object was copied but could not be deleted from the source: \",[\"deleteErrorMessage\"]],\"Vyeez6\":[\"Folder name:\"],\"Vz+7ZA\":[\"Could not create container \\\"\",[\"containerName\"],\"\\\": \",[\"errorMessage\"]],\"VzNolj\":[\"This bucket does not have any CORS rules.\"],\"Vzlopx\":[\"Delete container:\"],\"W1ZvXE\":[\"Failed to Delete Versions\"],\"W3mNTY\":[\"Delete Flavor \\\"\",[\"flavorName\"],\"\\\"\"],\"W5A0Ly\":[\"An unexpected error occurred.\"],\"W5FkH9\":[\"Enter container name\"],\"W8Rb/w\":[\"Bucket name must not be formatted as an IP address\"],\"W9PZE0\":[\"Objects Deleted\"],\"W9kfjU\":[\"QoS Policy ID\"],\"WBgiS7\":[\"Failed to save CORS rule\"],\"WCKEqI\":[\"This is a <0>static large object (SLO)</0> manifest. Metadata changes apply to the manifest only — segment objects are not affected.\"],\"WCLyHI\":[\"No Floating IPs found\"],\"WErCZy\":[\"Minimum RAM required to boot this image\"],\"WIJz7N\":[\"Checking if object exists...\"],\"WM+Nm7\":[\"Keep multiple versions of objects. Cannot be fully disabled once enabled, only suspended.\"],\"WRZ3Mt\":[\"Loading container properties...\"],\"WV/4x1\":[\"Loading buckets...\"],\"WYiUDa\":[\"Loading Containers...\"],\"Wbg1jv\":[\"Copy \",[\"text\"],\" to clipboard\"],\"Wca9WC\":[\"Failed to load security groups\"],\"WdmJIX\":[\"Loading preview...\"],\"WdnUc9\":[\"Floating IP Associated\"],\"We25LK\":[\"Abort incomplete multipart uploads\"],\"WefafP\":[\"This container appears empty — the object count may not have synced yet due to a recent operation.\"],\"WlpcJv\":[\"DNS Domain\"],\"WoSkGY\":[\"Remote IP\"],\"WxpQ1y\":[\"Failed to delete versions from bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"WyKwnD\":[\"Store old object versions\"],\"WzVwU0\":[\"Target Project ID\"],\"WzsMfv\":[\"Start typing to search for a bucket\"],\"X2OnDx\":[\"Ephemeral Disk (GiB)\"],\"X70LXS\":[[\"numberDeleted\"],\" objects were permanently deleted.\"],\"XHXGOb\":[\"There are no items to display.\"],\"XLYtNg\":[\"Rule \\\"\",[\"ruleId\"],\"\\\" was successfully deleted from bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"XLa4Dv\":[\"The externally signed certificate was successfully imported.\"],\"XLk16/\":[\"Together, we can unlock the true potential of your cloud infrastructure.\"],\"XXRutf\":[\"Folder Name\"],\"XXjbEV\":[\"For <0>dynamic</0> and <1>static large objects</1> only the manifests are deleted — the related segments are not deleted.\"],\"XYZLy9\":[\"Key contains invalid characters\"],\"XbeFW9\":[\"Delete Image \\\"\",[\"imageName\"],\"\\\"\"],\"XhfBNl\":[[\"totalCount\",\"plural\",{\"one\":[\"Delete \",\"#\",\" Object\"],\"other\":[\"Delete \",\"#\",\" Objects\"]}]],\"XhoQid\":[\"Are you sure you want to delete <0>\",[\"ruleDisplayName\"],\"</0> from bucket <1>\",[\"bucketName\"],\"</1>?\"],\"XicAqm\":[\"Failed to load policy\"],\"XjGaah\":[\"Could not delete bucket policy from \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"XvjC4F\":[\"Saving...\"],\"XwxJJB\":[\"Container \\\"\",[\"containerName\"],\"\\\" was successfully created.\"],\"XxjLdW\":[[\"emptiedCount\",\"plural\",{\"one\":[\"#\",\" container was already empty.\"],\"other\":[\"#\",\" containers were already empty.\"]}]],\"Y+2SDm\":[\"Delete Security Group \\\"\",[\"securityGroupName\"],\"\\\"\"],\"Y1YKad\":[\"Edit Details\"],\"Y4czZO\":[\"Create Lifecycle Rule\"],\"Y8M9Uc\":[\"The container will be deleted. This action is permanent and cannot be undone.\"],\"Y8Z0cO\":[\"Couldn't Open Container\"],\"YHuQhR\":[\"Could not delete \",[\"count\"],\" lifecycle rule from bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"YIix5Y\":[\"Search...\"],\"YNgcgc\":[\"Loading Flavor Details...\"],\"YRexkb\":[\"Object Updated\"],\"YUU0QW\":[\"Flavor ID is required and cannot be empty.\"],\"YVLcyI\":[\"Successfully emptied \",[\"emptiedCount\"],\" \",[\"emptiedCount\",\"plural\",{\"one\":[\"bucket\"],\"other\":[\"buckets\"]}],\", deleting \",[\"totalDeleted\"],\" \",[\"totalDeleted\",\"plural\",{\"one\":[\"object\"],\"other\":[\"objects\"]}],\".\"],\"YVQZEI\":[\"Other Actions\"],\"YZmsaT\":[\"Partial Activation Success\"],\"YiMCKk\":[\"Show ACLs Preview\"],\"YjAOtb\":[\"Create Security Group\"],\"YmvhrF\":[\"Failed to Revoke Access\"],\"YrAy/S\":[\"You don't have permission to delete extra specs for this flavor.\"],\"YsOJlj\":[\"Server error occurred while fetching flavor access information. Please try again later.\"],\"YsgZl3\":[\"Loading Security Groups...\"],\"YsrbQh\":[\"Owner Project ID\"],\"YuC9dj\":[\"Associate\"],\"YuGQWb\":[\"Rule Type\"],\"YwkOoE\":[\"Select a template...\"],\"YzUoh9\":[\"To confirm type <0>delete</0> in the field below.\"],\"Z/eWPC\":[\"The object will be copied to this path. Navigate folders above to change the destination.\"],\"Z0+acF\":[\"Days until cleanup\"],\"Z0v/kp\":[[\"percent\"],\"%\"],\"Z2fZGD\":[\"No project selected\"],\"Z30x/C\":[\"Current location:\"],\"Z3FXyt\":[\"Loading...\"],\"Z3UKwu\":[\"Unable to verify bucket versioning status and contents. Please try again.\"],\"Z42tfY\":[\"Folders in object storage are virtual — they are created as zero-byte placeholder objects with a trailing slash. The folder will appear once created.\"],\"Z5r9vC\":[\"Partial Delete Success\"],\"Z8lGw6\":[\"Share\"],\"ZAx+d1\":[\"Max meta overall size\"],\"ZAy0zp\":[\"Successfully deactivated \",[\"successCount\"],\" of \",[\"totalCount\"],\" image(s)\"],\"ZKb0D4\":[\"Cannot move to the same location. Please select a different bucket, folder, or change the name.\"],\"ZMBqWl\":[\"The selected objects will be marked as deleted but can be restored from version history.\"],\"ZUmOzn\":[\"Server returned unexpected data format for flavor details.\"],\"ZcWMT1\":[\"Image instance \\\"\",[\"imageName\"],\"\\\" has been deactivated\"],\"Zgp2Sm\":[\"No projects available.\"],\"ZhVSpK\":[\"Failed to remove tenant access from flavor. Please try again.\"],\"ZkoPD4\":[\"Size: \",[\"policySize\"],\" / \",[\"MAX_POLICY_SIZE\"],\" bytes\"],\"ZkxxiR\":[\"Unknown domain\"],\"Zq6Y5u\":[\"DNS name must be at most 63 characters.\"],\"Zshv0H\":[\"Buckets to empty:\"],\"ZvIpwi\":[\"Select a security group...\"],\"Zw49f9\":[\"folder-name\"],\"Zw8Q49\":[\"Security group not found\"],\"ZyILib\":[[\"count\",\"plural\",{\"one\":[\"Delete \",\"#\",\" Version\"],\"other\":[\"Delete \",\"#\",\" Versions\"]}]],\"a/nTb8\":[\"Create Image\"],\"a12lSo\":[\"Port (to)\"],\"a13wDR\":[\"Type to search containers...\"],\"a3LDKx\":[\"Security\"],\"a4A2uB\":[\"Account listing limit\"],\"a4N/Bg\":[\"Load More\"],\"a7C4YS\":[\"Container Updated\"],\"aBgwis\":[\"Scope\"],\"aEAOxI\":[\"There are \",[\"bucketsCount\"],\" buckets, start typing to search\"],\"aG9OiI\":[\"Sharing Details\"],\"aI8Tgp\":[\"Owning Project ID\"],\"aKznJS\":[\"Go to Projects\"],\"aL1w5Z\":[\"Used\"],\"aSsVD3\":[\"Public read access is not enabled. Before configuring static website serving, go to <0>Manage Access</0> and enable public read access.\"],\"aTqCTq\":[\"Image file is required\"],\"aV6KPH\":[\"Prevent accidental deletion\"],\"aZGVW7\":[\"No versions found for this object.\"],\"agS3yl\":[\"These objects and all their versions will be permanently deleted and cannot be restored.\"],\"an5hVd\":[\"Images\"],\"ao/ZJi\":[\"Deleting folder and all its contents...\"],\"aqagJH\":[\"Unable to Update Image Visibility\"],\"arel2K\":[\"No objects found\"],\"asUnxb\":[\"Enter a URL and press Enter. Use * to allow all origins.\"],\"azXlY+\":[\"Access Status:\"],\"b0uU1G\":[\"Store old object versions in container:\"],\"b2BLBa\":[\"Add Security Group Rule\"],\"b5aNMO\":[\"The text must match \\\"delete\\\"\"],\"b95YH9\":[\"Bucket Emptied\"],\"bB2soI\":[[\"deletedCount\"],\" deleted, \",[\"errorCount\"],\" failed.\"],\"bHUarC\":[\"Bucket Deleted\"],\"bISG26\":[\"Failed to fetch flavor access information. Please try again.\"],\"bIxQF7\":[\"Rules to delete:\"],\"bM1O3m\":[\"Image Instance\"],\"bQBMTH\":[\"This is a <0>static large object</0>. By default, all associated segment objects will also be permanently deleted.\"],\"bYRFNi\":[\"Failed to Delete Objects\"],\"bc67JN\":[\"Custom Properties / Metadata\"],\"bmQLn5\":[\"Add Rule\"],\"bnql/K\":[\"Back to Images\"],\"bo0jlM\":[\"Edit Lifecycle Rule\"],\"boJ+Y1\":[\"Create Folder\"],\"boJlGf\":[\"Page Not Found\"],\"boefwq\":[\"Could not create bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"bpme7e\":[\"Flavor Not Found\"],\"bwRvnp\":[\"Action\"],\"bwhBhT\":[\"Security Group\"],\"byKna+\":[\"An unexpected error occurred. Please try again.\"],\"bzMKg7\":[\"Accepted\"],\"bzSI52\":[\"Discard\"],\"c+fUtV\":[\"Start typing to search for a container\"],\"c+xCSz\":[\"True\"],\"c5i+X0\":[\"Loading Buckets...\"],\"c6b6fz\":[\"Delete Selected\"],\"c9Ss4N\":[\"Policy document exceeds maximum size of 20KB\"],\"cBfLPr\":[\"Failed to Delete Policy\"],\"cCfxH1\":[\"Downloading...\"],\"cJDQIO\":[\"Root Disk\"],\"cL8dHR\":[\"Failed to refresh Floating IPs. Showing cached data.\"],\"cPKL6O\":[\"You don't have permission to create flavors in this project.\"],\"cRgwu6\":[\"Floating IP Detached\"],\"cWbW6w\":[\"Manage Access\"],\"cXuXkb\":[\"User \",[\"userId\"],\" from project \",[\"projectId\"]],\"ca+vEu\":[[\"deletedCount\",\"plural\",{\"one\":[\"#\",\" version was permanently deleted.\"],\"other\":[\"#\",\" versions were permanently deleted.\"]}]],\"chL5IG\":[\"Community\"],\"cj17eo\":[\"Image instance \\\"\",[\"imageName\"],\"\\\" has been activated\"],\"cjEOmc\":[\"Share this security group with another project. The target project will be able to view and use this security group, but will not be able to modify or delete it.\"],\"cnGeoo\":[\"Delete\"],\"cpw++p\":[\"Static large object support\"],\"cqQyPB\":[\"Folder name\"],\"d+F6q9\":[\"Created\"],\"d/I0J3\":[\"Activate Selected\"],\"d0pLfy\":[\"Failed to delete security group\"],\"dCb9d8\":[\"Failed to load CORS configuration\"],\"dEHa3L\":[\"Type the bucket name to confirm\"],\"dEgA5A\":[\"Cancel\"],\"dFb5Nt\":[\"Id\"],\"dLFiER\":[\"Error Loading Containers: \",[\"errorMessage\"]],\"dOe/Bx\":[\"Failed to load lifecycle configuration\"],\"dOevLB\":[\"Expires in \",[\"selectedPresetLabel\"],\" — at \",[\"expiresAtFormatted\"]],\"dTNzBI\":[\"Key must contain at least one alphanumeric character\"],\"dVdc7N\":[\"You are not authorized to delete extra specs. Please log in again.\"],\"dd2ndz\":[\"Entries in ACLs are comma-separated. Examples:\"],\"ddf7GN\":[\"Failed to load objects\"],\"deleteResults.summary\":[[\"0\"],\" deleted, \",[\"1\"],\" failed.\"],\"diFNkW\":[\"Error loading component\"],\"e0NrBM\":[\"Project\"],\"e4khPT\":[[\"0\",\"plural\",{\"one\":[\"Object:\"],\"other\":[\"Objects to delete:\"]}]],\"eGEHJE\":[\"DNS Name\"],\"eKC+EC\":[\"-\"],\"eOC6jr\":[\"Failed to load CORS rules\"],\"ePK91l\":[\"Edit\"],\"eXELu1\":[\"No CORS rules found\"],\"eYlnXt\":[\"No images found\"],\"eh/k36\":[\"Select a rule type...\"],\"ekCRTP\":[\"Rejected\"],\"eks7oA\":[\"Port ID\"],\"emkxJa\":[\"There are no buckets available with the current search criteria. Try adjusting your search term.\"],\"enkkbQ\":[\"Max Age\"],\"eslBIK\":[\"Failed to Enable Versioning\"],\"eu70nA\":[\"Expires at (UTC)\"],\"eyRsaH\":[\"Root\"],\"ez+kyr\":[\"Apply this rule only to objects with specific tags. Cannot be combined with Abort Incomplete Multipart Uploads.\"],\"ezT9KW\":[\"Container syncing\"],\"f+UUtj\":[\"No security groups found\"],\"f+Uq1E\":[\"New object name\"],\"f07XWN\":[[\"count\",\"plural\",{\"one\":[\"CORS Rule Deleted\"],\"other\":[\"CORS Rules Deleted\"]}]],\"f0cwjH\":[\"Object properties\"],\"fCPhho\":[\"One or more objects could not be deleted:\"],\"fE4ROT\":[\"Delete All Versions\"],\"fIvd7X\":[\"Failed to Delete Images\"],\"fJpv9x\":[\"Failed to Deactivate Images\"],\"fNJSnL\":[[\"deletedCount\"],\" deleted, \",[\"errorCount\"],\" failed. See the details in the dialog.\"],\"fQQka+\":[[\"ruleCount\",\"plural\",{\"one\":[\"Delete Lifecycle Rule\"],\"other\":[\"Delete Lifecycle Rules\"]}]],\"fZHSbC\":[\"Validation Error\"],\"fj5byd\":[\"N/A\"],\"fmEvy3\":[\"Cannot be combined with Tag Filters\"],\"foCwki\":[\"Empty Container\"],\"foy2JB\":[[\"displayName\"],\" was successfully restored\"],\"fxnDd7\":[\"Failed to generate temporary URL: \",[\"generalError\"]],\"fzfAAa\":[\"Ingress\"],\"g1IxCo\":[\"RAM must be an integer ≥ 128 MB.\"],\"g3BSCe\":[\"Swap Disk must be an integer ≥ 0.\"],\"g3UF2V\":[\"Accept\"],\"g8Yxlg\":[\"Temporary URL for \\\"\",[\"objectName\"],\"\\\" was copied to clipboard.\"],\"gFKJBP\":[\"Folder name cannot have leading or trailing whitespace\"],\"gGdfWx\":[\"The compute service is currently unavailable for this project. Please try again later.\"],\"gMYsdZ\":[\"Set to \\\"Shared\\\"\"],\"gMwCyg\":[\"Showing first \",[\"shown\"],\" of \",[\"total\"],\" objects\"],\"gOAPiI\":[\"Successfully deleted \",[\"deletedCount\"],\" versions and delete markers from bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"gPKlad\":[\"Your session has expired. Please log in again. This may have occurred because you logged out or switched domains in another browser tab.\"],\"gSpeIX\":[\"Preview and download aren't available for older versions yet\"],\"gU7JFm\":[\"Creating security group rule...\"],\"gYe+hC\":[\"Click to upload\"],\"gjop1H\":[\"Bucket name must be at least 3 characters\"],\"go0J2x\":[\"Failed to copy the temporary URL to the clipboard\"],\"gzPLLI\":[\"This is a public flavor. All projects have access to it.\"],\"gztCjq\":[\"The tenant ID provided is invalid. Please check your input.\"],\"h/lrJz\":[\"Policy Templates\"],\"h3K+qH\":[\"Releasing...\"],\"h3P8z+\":[\"Failed to delete the flavor. Please try again.\"],\"h47p9L\":[\"—\"],\"h8h6oz\":[\"Images Deactivated\"],\"h99+4y\":[\"Allocate Floating IP\"],\"hAMVuB\":[\"Floating IP \\\"\",[\"ip\"],\"\\\" was successfully released.\"],\"hH3kDo\":[\"Loading Image Details...\"],\"hHL/wm\":[\"Image instance \\\"\",[\"imageName\"],\"\\\" has been updated\"],\"hPz54a\":[\"Failed to Download\"],\"hQdfmR\":[\"Bucket \\\"\",[\"bucketName\"],\"\\\" was successfully deleted.\"],\"hQr1Cr\":[\"Deactivate Image\"],\"hXKwm5\":[\"You don't have permission to access this project.\"],\"hXUWyd\":[\"Value is required\"],\"hYgDIe\":[\"Create\"],\"he3ygx\":[\"Copy\"],\"he4q+i\":[\"e.g., b90f9c4bc76140e18540b2cec1299e2a\"],\"hgpMHD\":[\"Total Size\"],\"hrBow7\":[\"Network ID\"],\"hueclm\":[\"Folder <0>\\\"\",[\"folderDisplayName\"],\"\\\"</0> and all objects within it will be permanently deleted. This cannot be undone.\"],\"i0qMbr\":[\"Home\"],\"i41Xuw\":[\"Select a fixed IP address\"],\"i5MEDc\":[\"Failed to move object: \",[\"copyErrorMessage\"]],\"i6/ygf\":[\"A property with this key already exists\"],\"i7u3X3\":[\"Once enabled, versioning cannot be fully disabled, it can only be suspended. Existing versions will remain even after suspension.\"],\"i9I/nL\":[\"This action will permanently delete all objects from \",[\"bucketName\"],\". You may choose to also delete all versions and delete markers. This will enable you to delete the bucket. This action cannot be undone.\"],\"i9TIyi\":[\"Remote Security Group\"],\"i9qiyR\":[\"Expires in\"],\"iH8pgl\":[\"Back\"],\"iYY2Ye\":[\"Are you sure you want to delete \",[\"ruleCount\",\"plural\",{\"one\":[\"#\",\" CORS rule\"],\"other\":[\"#\",\" CORS rules\"]}],\" from bucket <0>\",[\"bucketName\"],\"</0>?\"],\"iaTV+x\":[[\"count\",\"plural\",{\"one\":[\"Lifecycle Rule Deleted\"],\"other\":[\"Lifecycle Rules Deleted\"]}]],\"ibtJeo\":[\"Failed to generate pre-signed URL: \",[\"generalError\"]],\"ifQSTI\":[\"Enable versioning\"],\"igVDFt\":[\"Attach\"],\"ih2lfP\":[\"No buckets found\"],\"ihMuB8\":[\"Failed to Restore Version\"],\"is0Bhk\":[\"Bucket name must be 63 characters or fewer\"],\"izMhIO\":[\"User \",[\"userId\"],\" (any project)\"],\"j1Hej6\":[\"Share URL:\"],\"j9hkgJ\":[\"rules\"],\"j9lCXl\":[\"Changes take effect immediately after saving.\"],\"jBIkmi\":[\"QCOW2, Raw, VMDK, VHD, VHDX, VDI, AMI, ARI, AKI, ISO, PLOOP\"],\"jFnePy\":[\"You don't have permission to create S3 credentials. Please contact your administrator to request access to S3 Object Storage.\"],\"jIPNJG\":[\"Basic Information\"],\"jK6wqe\":[\"Folder \\\"\",[\"folderName\"],\"\\\" and \",[\"deletedCount\"],\" objects were permanently deleted.\"],\"jKopCP\":[\"Network & Routing\"],\"jMaofI\":[\"Could not enable versioning for bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"jMc/mo\":[\"Server error occurred while creating extra specs. Please try again later.\"],\"jNm/qL\":[\"This container is already empty.\"],\"jNzyQo\":[\"Object versioning\"],\"jPxavx\":[\"Failed to update security group\"],\"jSG7wx\":[\"Please enter a valid number of minutes greater than 0\"],\"jnnDNd\":[\"Container actions\"],\"jq5wGQ\":[\"S3 Object Storage: Setup Required\"],\"jqJG6j\":[\"There are no security groups available for this project with the current filters applied. Try adjusting your filter criteria or create a new security group to get started.\"],\"js24f6\":[\"Delete folder:\"],\"juWh3L\":[\"This rule has storage-class transitions that were configured outside Aurora. They are preserved unchanged when you save this rule.\"],\"jyVMod\":[\"Restore Version\"],\"jyqLKs\":[\"This member already has access to this image.\"],\"k/zHK7\":[\"Creating Credentials...\"],\"k0vAWv\":[\"Object count quota\"],\"k5nYwm\":[\"vCPU\"],\"k7ENJG\":[\"Preview \",[\"rowDisplayName\"]],\"k99j0U\":[\"Cancel upload\"],\"kA2lMP\":[\"External Network\"],\"kGmM/p\":[\"You don't have permission to create extra specs for this flavor.\"],\"kIuDMT\":[\"Configure the ingress and egress rules that control which traffic is allowed for this security group.\"],\"kJzvqm\":[\"Edit CORS Rule\"],\"kKK8AH\":[\"Remaining Quota:\"],\"kQYfgO\":[\"One or more containers could not be emptied: \",[\"errorMessage\"]],\"kRiVnR\":[\"New uploads will overwrite the current version\"],\"kZ20m7\":[\"How long browsers can cache preflight responses. Common values: 3600 (1 hour), 86400 (1 day), 604800 (1 week).\"],\"kdcrma\":[\"Existing versions remain accessible\"],\"khRceP\":[\"Lifecycle Rule Deleted\"],\"kiRrtv\":[\"<0>Please note:</0> for <1>dynamic</1> and <2>static large objects</2> only the manifests will be deleted. The related segments will not be deleted.\"],\"kk2q2d\":[\"A pre-signed URL grants time-limited read access to this object without requiring authentication. Anyone with the link can download it until it expires.\"],\"kkzh0M\":[\"Lifecycle Rule Saved\"],\"kqJVBO\":[\"You don't have permission to share this security group.\"],\"kuYWaD\":[\"Reserved keys: web-index, web-listings, quota-count, quota-bytes\"],\"kzI24C\":[\"Confirm deletion of \",[\"displayName\"],\". All objects inside this folder will be permanently deleted. This action cannot be undone.\"],\"l+fhn1\":[\"I understand that enabling versioning is permanent\"],\"l75CjT\":[\"Yes\"],\"lAsm87\":[\"Protect this image from being deleted\"],\"lBVhQs\":[\"Something went wrong:\"],\"lIlLtp\":[\"The image \\\"\",[\"imageId\"],\"\\\" could not be deleted: \",[\"errorMessage\"]],\"lN/Z9n\":[\"Security group name is required\"],\"lN3xvy\":[\"Delete Rule\"],\"lQ3EIe\":[\"Max deletes per request\"],\"lRRkwQ\":[\"Write ACLs — Preview\"],\"lRoPjj\":[\"ETag\"],\"lWTy+Y\":[\"Unable to Create Image\"],\"lWxDDh\":[\"Flavor Name\"],\"lYC3YX\":[\"The image \\\"\",[\"imageName\"],\"\\\" could not be created: \",[\"errorMessage\"]],\"lZvIXd\":[\"Description must be at most 255 characters.\"],\"lbxRVC\":[\"Security group rule was successfully deleted.\"],\"lhIa6x\":[\"Failed to load extra specs. Please try again.\"],\"lq/mBZ\":[\"Loading object info...\"],\"m16xKo\":[\"Add\"],\"mMHJ/+\":[\"Suspend Versioning\"],\"mPhx+K\":[\"This object and all its versions will be permanently deleted and cannot be restored.\"],\"mQKOrw\":[\"CORS configuration was successfully saved for bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"mQSO1Y\":[\"Port Forwarding\"],\"mSLePW\":[\"You don't have permission to access flavors for this project.\"],\"mSfwLL\":[\"Project ID\"],\"mbmb/h\":[\"Also delete all versions and all delete markers\"],\"mjiTny\":[\"A tag with this key already exists.\"],\"mlxk2U\":[\"Search policies...\"],\"mmNqjS\":[\"This version will be permanently deleted and cannot be restored.\"],\"mqljvE\":[\"Copy metadata\"],\"mvz5Eo\":[\"URL for public access\"],\"mxPfpY\":[\"Create new folder here\"],\"n0ZttO\":[\"Root Disk (GiB)\"],\"n1ekoW\":[\"Sign In\"],\"n1gB0L\":[\"Edit Floating IP \",[\"floating_ip_address\"]],\"n1s9cB\":[\"No rules found\"],\"n22YIM\":[\"Edit Description\"],\"n2IuBI\":[\"A temporary URL grants time-limited read access to this object without requiring authentication. Anyone with the link can download it until it expires.\"],\"n3eQzA\":[\"This property is reserved and cannot be modified\"],\"n46oLW\":[\"Failed to remove member\"],\"n9jJG6\":[\"Remove member access\"],\"nCWeKz\":[\"Download of \\\"\",[\"displayName\"],\"\\\" was cancelled.\"],\"nETBrc\":[\"Egress\"],\"nJrNv5\":[\"Could not save CORS configuration for bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"nPI6Rk\":[\"Successfully deleted \",[\"deletedCount\"],\" versions from bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"nU1mHK\":[\"Versioning Enabled\"],\"nUuaq8\":[\"Failed to update container: \",[\"errorMessage\"]],\"nW/hX9\":[\"General Image Data\"],\"nYab6d\":[\"\\\"\",[\"displayName\"],\"\\\" was successfully moved to \",[\"destination\"],\".\"],\"nZbdB+\":[\"Upload Cancelled\"],\"nbMBgw\":[\"e.g. Etag, Content-Length\"],\"ndwp1n\":[\"Invalid JSON format\"],\"ne/GWZ\":[\"Inside a project, objects are stored in containers. Containers are where you define access permissions and quotas.\"],\"neiJm0\":[\"Flavors\"],\"nkpZyk\":[\"Container \\\"\",[\"containerName\"],\"\\\" was already empty.\"],\"nnxwBn\":[\"There are no rules for this security group\"],\"nqaM9R\":[\"Could not create security group rule: \",[\"errorMessage\"]],\"ntNlXu\":[\"Listing access\"],\"o/VDOG\":[\"Unable to Delete Image\"],\"o6M6l0\":[\"Failed to create security group\"],\"oAMLhA\":[\"Full path:\"],\"oDkgME\":[\"You are not authorized to create flavors. Please log in again.\"],\"oEGiW3\":[\"Uploading... \",[\"progressPct\"],\"%\"],\"oFZY0k\":[\"Failed to Download Object\"],\"oJVmWq\":[\"Could not delete \\\"\",[\"displayName\"],\"\\\": \",[\"errorMessage\"]],\"ocUvR+\":[\"False\"],\"odVI9Y\":[\"Container Deleted\"],\"odksI6\":[\"Loading Floating IPs...\"],\"oelNsw\":[[\"count\",\"plural\",{\"one\":[\"Failed to Delete Lifecycle Rule\"],\"other\":[\"Failed to Delete Lifecycle Rules\"]}]],\"olfSYj\":[\"Access Control Updated\"],\"p3mASO\":[\"This rule uses Date or ExpiredObjectDeleteMarker expiration. Leave empty to preserve it, or enter days to switch to Days expiration.\"],\"p4nMut\":[\"Swap (MiB)\"],\"p5CTB4\":[\"Failed to Save CORS Configuration\"],\"p6CSHM\":[\"Delete Objects\"],\"p7DzCB\":[\"Failed to Update Access Control\"],\"pD/2BQ\":[\"Successfully emptied \",[\"emptiedCount\"],\" of \",[\"totalBuckets\"],\" \",[\"totalBuckets\",\"plural\",{\"one\":[\"bucket\"],\"other\":[\"buckets\"]}],\", deleting \",[\"totalDeleted\"],\" \",[\"totalDeleted\",\"plural\",{\"one\":[\"object\"],\"other\":[\"objects\"]}],\". \",[\"errorsLength\"],\" \",[\"errorsLength\",\"plural\",{\"one\":[\"bucket\"],\"other\":[\"buckets\"]}],\" failed.\"],\"pFg+7w\":[\"Updated:\"],\"pOPvlj\":[\"Already active (will be skipped)\"],\"pPr2iF\":[\"Could not delete versions from bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"pQB7Sy\":[\"Could not suspend versioning for bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"pU25+T\":[\"Upload of \\\"\",[\"objectName\"],\"\\\" was cancelled.\"],\"pbzA+s\":[\"Optional description\"],\"pebLmQ\":[\"Remove access for \",[\"memberIdDisplay\"]],\"pkz+z2\":[\"Failed to save policy\"],\"plnnns\":[\"Deleted \",[\"successCount\"],\" image(s), but \",[\"failedCount\"],\" image(s) could not be deleted.\"],\"pmJY1C\":[\"Successfully deleted bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"poCbZw\":[\"Loading ACLs...\"],\"podzPY\":[\"Project id\"],\"pubQie\":[\"Enter value\"],\"pvi9ZN\":[\"Bucket Policy Saved\"],\"pySxXV\":[\"Security Group Updated\"],\"q3SJVk\":[\"Bucket expiration warning\"],\"q44uUq\":[\"Containers Partially Emptied\"],\"q6K46F\":[\"Key already exists\"],\"q7+Q3K\":[\"This rule has no prefix or tag filters, so it will expire all objects in the bucket. This can result in permanent data loss.\"],\"q88/6A\":[\"Failed to Create Folder\"],\"qAkkjP\":[\"Max object name length\"],\"qEDO1j\":[\"This is a <0>dynamic large object</0>. Only the manifest will be deleted — its segment objects (stored under the manifest prefix) are <1>not</1> automatically removed and must be deleted separately.\"],\"qJb6G2\":[\"Try Again\"],\"qJp13l\":[\"Versions Deleted Permanently\"],\"qQ1QBh\":[\"Hardware Specifications\"],\"qToFUF\":[\"Failed to Delete Rule\"],\"qUlxA+\":[\"Folder \\\"\",[\"folderName\"],\"\\\" was permanently deleted.\"],\"qXaTBT\":[\"Bucket actions\"],\"qaAo9Y\":[\"Server error occurred while creating the flavor. Please try again later.\"],\"qf4f0L\":[\"A pre-signed URL can be valid for at most 7 days (\",[\"MAX_EXPIRY_MINUTES\"],\" minutes)\"],\"qh5W8q\":[\"Remove Policy\"],\"qkq1VP\":[\"Are you sure you want to delete \",[\"ruleCount\"],\" lifecycle rules from bucket <0>\",[\"bucketName\"],\"</0>?\"],\"ql7ODA\":[[\"ruleCount\",\"plural\",{\"one\":[\"Delete CORS Rule\"],\"other\":[\"Delete CORS Rules\"]}]],\"qs+BrU\":[\"You don't have permission to remove tenant access from this flavor.\"],\"qtoOYG\":[\"No limit\"],\"quU9wK\":[\"Failed to deactivate \",[\"failedCount\"],\" of \",[\"totalCount\"],\" image(s). Some images may already be deactivated or in an invalid state.\"],\"qvF2D8\":[\"There are no images available for this project with the current filters applied. Try adjusting your filter criteria or create a new image.\"],\"qxxo7y\":[\"No policies match your search\"],\"qzIZOL\":[\"Invalid file format. Supported formats: \",[\"supportedFileFormats\"]],\"qzhUb9\":[\"Showing first \",[\"maxOptions\"],\" of \",[\"totalCount\"],\" — refine your search to narrow results\"],\"qzx7aY\":[\"e.g. production\"],\"r5SQFW\":[\"Container name must be \",[\"maxContainerNameLength\"],\" characters or fewer\"],\"r9Aac8\":[\"Ephemeral Disk\"],\"rAtQcX\":[\"You can rename the object by changing the name here.\"],\"rD9yV1\":[\"Images to deactivate:\"],\"rG3WVm\":[\"Select\"],\"rIe0oV\":[\"Failed to add tenant access to flavor. Please try again.\"],\"rIi6x4\":[\"The flavor could not be found. It may have already been deleted.\"],\"rJe6vw\":[\"7 days\"],\"rPSojq\":[\"Floating IP \\\"\",[\"ip\"],\"\\\" was successfully allocated.\"],\"rPuPb+\":[\"Checking bucket contents...\"],\"rbuO5A\":[\"This security group is already shared with the specified project.\"],\"rcBt6T\":[\"Failed to create credential: \",[\"errorMessage\"]],\"rdUucN\":[\"Preview\"],\"reDe+5\":[\"Cannot delete rules: \",[\"errorMsg\"]],\"rhaNn7\":[\"Loading containers...\"],\"riR9oD\":[\"Note: for <0>static and dynamic large objects</0> only the manifests are deleted — their segments outside this folder prefix are not affected.\"],\"rlgAtt\":[\"The object will be moved to this path. Navigate folders above to change the destination.\"],\"rp0Bd0\":[\"Compute\"],\"rp7Ili\":[\"Search security groups...\"],\"rq9NT7\":[\"No metadata properties found. Click \\\"Add Property\\\" to create one.\"],\"rrjuul\":[\"For more details, have a look at the <0>documentation</0>.\"],\"ryf/ee\":[\"Images Activated\"],\"s/s1lz\":[\"Any user can perform a HEAD or GET operation on the container provided the user also has read access on objects. No token is required.\"],\"s2ubkU\":[\"Flavor ID\"],\"s4Vnq2\":[\"Emptying...\"],\"s6lr1k\":[\"Search floating IPs...\"],\"sMpIRo\":[\"Project ID is required\"],\"sNVNmf\":[\"MAC Address\"],\"sPFHpI\":[\"Disk\"],\"sSNyf3\":[\"Welcome to <0>Aurora Dashboard</0>, your next-generation cloud management solution. We are dedicated to simplifying how you interact with and manage your cloud infrastructure. Designed with efficiency, scalability, and usability at its core, Aurora empowers you to streamline operations and unlock the full potential of your cloud resources.\"],\"sV1g8F\":[\"Could not delete \",[\"count\"],\" lifecycle rules from bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"sWBLli\":[\"Add Property\"],\"sXd+qS\":[\"Properties of \\\"\",[\"objectName\"],\"\\\" were successfully updated.\"],\"sYJvnu\":[\"Create New Folder\"],\"sa4CV6\":[\"All users from project \",[\"projectId\"]],\"sgra3S\":[\"You can re-enable versioning at any time\"],\"shKIZu\":[\"Images to be activated (\",[\"deactivatedCount\"],\")\"],\"sjMCOP\":[\"Last Modified\"],\"sl2P3q\":[\"Object:\"],\"slWh5C\":[\"Associate Floating IP \",[\"floating_ip_address\"],\" with Port\"],\"sxbP3b\":[\"Object Count\"],\"t/YqKh\":[\"Remove\"],\"t0X9+8\":[\"Container Name\"],\"t1J6VC\":[\"Delete Container\"],\"t1POAD\":[\"No custom metadata properties found. Click \\\"Add Property\\\" to create one.\"],\"t1fq6V\":[\"Server returned unexpected data format.\"],\"t42F1o\":[\"No versions were deleted: \",[\"errorMessage\"]],\"t7ewhH\":[\"Could not empty bucket \\\"\",[\"bucketName\"],\"\\\": \",[\"errorMessage\"]],\"t7ff15\":[\"valid token required: false\"],\"t95VRV\":[\"About Aurora Dashboard\"],\"tASa/P\":[\"Server error occurred while deleting the flavor. Please try again later.\"],\"tIc6vY\":[\"Could not copy \\\"\",[\"displayName\"],\"\\\": \",[\"errorMessage\"]],\"tIohGr\":[[\"selectedCount\",\"plural\",{\"one\":[\"Delete \",\"#\",\" Version\"],\"other\":[\"Delete \",\"#\",\" Versions\"]}]],\"tIrNgH\":[\"Server error occurred while fetching extra specs. Please try again later.\"],\"tLerHy\":[\"Ephemeral Disk must be an integer ≥ 0.\"],\"tM5SEI\":[\"ACLs for container \\\"\",[\"containerName\"],\"\\\" were successfully updated.\"],\"tOkmLM\":[\"Failed to Copy Object\"],\"tV/Ozb\":[\"Port Range\"],\"tVSmFT\":[\"Loading more...\"],\"tX5yOZ\":[\"New Folder\"],\"tXYQKw\":[\"Could not share security group: \",[\"errorMessage\"]],\"tbwGSx\":[\"Minimum Disk (GB)\"],\"tejJLY\":[\"Associating Floating IP...\"],\"tfAKBU\":[\"Could not upload \\\"\",[\"objectName\"],\"\\\": \",[\"errorMessage\"]],\"tfDRzk\":[\"Save\"],\"thHAVL\":[\"Accepted Images\"],\"tiflqy\":[\"Unable to Re-activate Image\"],\"tkRT08\":[\"Metadata size exceeds the 2KB limit. Please remove or shorten some entries before saving.\"],\"tlfxPP\":[\"Could not copy \\\"\",[\"objectName\"],\"\\\": \",[\"errorMessage\"]],\"tmpGvt\":[\"production, linux\"],\"u+VWhB\":[\"Copied to clipboard!\"],\"u2xIeO\":[\"Failed to update ACLs: \",[\"errorMessage\"]],\"u30W7+\":[\"Project Not Found\"],\"u5HztT\":[\"RX/TX Factor\"],\"u77/s4\":[\"Floating IPs\"],\"uAI0yI\":[\"Delete object:\"],\"uAQUqI\":[\"Status\"],\"uLtFAr\":[\"Could not update container \\\"\",[\"containerName\"],\"\\\": \",[\"errorMessage\"]],\"uSdnuQ\":[\"VCPUs must be an integer ≥ 1.\"],\"uTp/0j\":[\"Restore Folder\"],\"ubUrot\":[\"Objects: \",[\"containerName\"]],\"ujK/QN\":[\"Loading objects...\"],\"uly9ET\":[\"Rule Details:\"],\"uuKb0T\":[\"Description must be less than 65535 characters.\"],\"uuxCsI\":[\"Create CORS Rule\"],\"uzjzzb\":[\"Generating pre-signed URL...\"],\"v0hPHE\":[\"Show Details\"],\"v9Dn8m\":[\"Aurora Dashboard is more than just a tool—it's your partner in navigating the cloud. Whether you're a small startup or a global enterprise, Aurora provides the flexibility, power, and simplicity you need to achieve your goals.\"],\"vASHsu\":[[\"totalCount\",\"plural\",{\"one\":[\"Delete Object\"],\"other\":[\"Delete Objects\"]}]],\"vBUQNE\":[\"The extra spec could not be found. It may have already been deleted.\"],\"vEkTR9\":[\"Quota\"],\"vGjfPU\":[\"The text must match \\\"detach\\\" in lowercase.\"],\"vGjmyl\":[\"Deleted\"],\"vH2C/2\":[\"Swap\"],\"vKDskJ\":[[\"selectedCount\",\"plural\",{\"one\":[\"Delete \",\"#\",\" Object\"],\"other\":[\"Delete \",\"#\",\" Objects\"]}]],\"vLDhxf\":[\"The CORS configuration has changed. Please refresh and try again.\"],\"vTh35P\":[\"Create Container\"],\"vXmL4D\":[\"Drop your image file here\"],\"vbajgL\":[\"Public Flavor\"],\"vcQSZh\":[\"This folder is empty — use New Folder to create one.\"],\"vi0pmB\":[\"Delete all versions and delete markers\"],\"vlyDm2\":[\"Enter project ID\"],\"vmRPFm\":[\"Share Security Group\"],\"vmYyLY\":[\"Remote IP Prefix\"],\"vp5vfW\":[\"1 hour\"],\"vpt8cE\":[\"Generate URL\"],\"vrPCbw\":[\"Image ID\"],\"vxrjaM\":[\"This rule has \",[\"noncurrentTransitionCount\"],\" noncurrent version transition(s) configured. Transitions cannot be edited in this UI. Changing other fields will preserve the existing transitions.\"],\"w3bAcf\":[\"This action is permanent. The address will be removed from your project and returned to the public pool. This action cannot be undone.\"],\"w4z0WK\":[\"Select at least one lifecycle action\"],\"w7fcfa\":[[\"0\",\"plural\",{\"one\":[\"Delete \",\"#\",\" Lifecycle Rule\"],\"other\":[\"Delete \",\"#\",\" Lifecycle Rules\"]}]],\"wEfZld\":[\"Create New Flavor\"],\"wFaT8w\":[\"Failed to Empty Containers\"],\"wH0MtN\":[\"Ensure that the Project ID and User ID you enter are correct. The system cannot validate these values — incorrect IDs may apply access to wrong projects and users.\"],\"wHhJRb\":[\"Loading versions...\"],\"wL3cK8\":[\"Latest\"],\"wMHvYH\":[\"Value\"],\"wODCcl\":[\"The image \\\"\",[\"imageName\"],\"\\\" could not be updated: \",[\"errorMessage\"]],\"wPrtGF\":[\"Enter key\"],\"wTg+FY\":[\"Max file size\"],\"wbqM4L\":[[\"customMinutes\"],\" minutes\"],\"wcUecy\":[\"You don't have permission to view extra specs for this flavor.\"],\"wdxz7K\":[\"Source\"],\"we28Pq\":[\"Hide ACLs Preview\"],\"wlUDbB\":[\"Last updated: \",[\"formattedDate\"]],\"wqlQRp\":[\"Some Objects Could Not Be Deleted\"],\"wrXcuy\":[\"Object Name\"],\"wst79+\":[\"Search CORS rules...\"],\"wsxdlO\":[\"Objects to delete:\"],\"wtLP8W\":[\"Are you sure you want to delete this lifecycle rule from bucket <0>\",[\"bucketName\"],\"</0>?\"],\"ww8U9y\":[\"Edit/View Bucket Policy\"],\"wxVsr5\":[\"Bucket name does not match\"],\"wyIOMP\":[\"Image name is required\"],\"wzqqS+\":[\"Key Features\"],\"x/XQrD\":[\"Any file type\"],\"x1bK0h\":[\"There are no containers available with the current search criteria. Try adjusting your search term.\"],\"x3T4pq\":[\"The container metadata reports objects but none were listed. This may be a temporary synchronization delay — please wait a moment and try again.\"],\"x5DnMs\":[\"Last modified\"],\"x5l/TK\":[\"Already active (will be skipped):\"],\"x7SF89\":[\"Read ACLs — Preview\"],\"x81/oT\":[\"e.g. Authorization, Content-Type, or *\"],\"x9AdZ8\":[\"property_key\"],\"xIXYTK\":[\"Your S3 credentials are invalid or expired. Please try creating new credentials or contact your administrator.\"],\"xMtb9o\":[\"Certificate Authority Deleted\"],\"xNG/3n\":[\"Floating IP Address\"],\"xNZKYy\":[\"Failed to delete \",[\"failedCount\"],\" of \",[\"totalCount\"],\" image(s). Some images may be protected or in use.\"],\"xOvKAE\":[[\"totalCount\",\"plural\",{\"one\":[[\"filteredCount\"],\" of \",[\"totalCount\"],\" bucket\"],\"other\":[[\"filteredCount\"],\" of \",[\"totalCount\"],\" buckets\"]}]],\"xYrGVV\":[\"The selected objects will be permanently deleted. This cannot be undone.\"],\"xc8SHc\":[\"Failed to Delete Security Group\"],\"xdgZcp\":[\"Successfully emptied bucket \\\"\",[\"bucketName\"],\"\\\". \",[\"deletedCount\"],\" objects deleted.\"],\"xqhyRT\":[\"Object Uploaded\"],\"xuVMLX\":[\"Showing \",[\"rulesLength\"],\" of \",[\"totalCount\"],\" rules\"],\"xw2UtT\":[\"Create New Image\"],\"xx2KP5\":[[\"totalCount\"],\" projects\"],\"xyRzuA\":[\"Certificate Authority \\\"\",[\"pcaName\"],\"\\\" was successfully deleted.\"],\"xyaMox\":[\"Type \\\"\",[\"CONFIRM_WORD\"],\"\\\" to confirm\"],\"y+KBOY\":[\"e.g., production, linux, ubuntu\"],\"y02Bu1\":[\"Container:\"],\"y0u86k\":[\"The requested flavor could not be found. It may have been deleted or you may not have access to it.\"],\"y1GYnY\":[\"Could not move \\\"\",[\"objectName\"],\"\\\": \",[\"errorMessage\"]],\"yDAMyU\":[\"Failed to load buckets: \",[\"errorMessage\"]],\"yDHGP+\":[\"my-bucket-name\"],\"yENIhc\":[\"Noncurrent Version Transitions (Read-Only)\"],\"yKu/3Y\":[\"Restore\"],\"yPWFWy\":[\"ICMP Type\"],\"yTtJTy\":[\"Edit Image Metadata\"],\"yYxB17\":[\"Clear all\"],\"yZrrKY\":[\"… and \",[\"hiddenProtectedCount\"],\" more\"],\"yg2BCA\":[\"The text must match \\\"release\\\" in lowercase.\"],\"ygiW4d\":[\"Rule Deleted\"],\"ykQ47t\":[\"Failed to Delete Version\"],\"ylfbpz\":[\"Extra spec key is required and cannot be empty.\"],\"yp0UjB\":[\"Ethertype\"],\"yqPflB\":[\"... and \",[\"hiddenCount\"],\" more\"],\"yu9G3x\":[\"Edit Security Group\"],\"ywe1H/\":[[\"totalCount\",\"plural\",{\"one\":[[\"totalCount\"],\" container\"],\"other\":[[\"totalCount\"],\" containers\"]}]],\"yz7wBu\":[\"Close\"],\"z+zpLP\":[\"valid token required: true\"],\"z/5vyM\":[\"Versioning was successfully enabled for bucket \\\"\",[\"bucketName\"],\"\\\".\"],\"z1JceR\":[\"Back to Floating IPs\"],\"z2funE\":[\"Full Path\"],\"z3N8nN\":[\"Enter bucket policy JSON...\"],\"z45o5B\":[\"Object count\"],\"z9NAjZ\":[\"Object Deleted\"],\"zCD96i\":[\"You are not authorized to view flavor details. Please log in again.\"],\"zDS0JC\":[\"Name must be 2-50 characters long.\"],\"zFOC87\":[\"This bucket is already empty.\"],\"zLKgq7\":[\"Flavor \\\"\",[\"name\"],\"\\\" was successfully deleted.\"],\"zWb/Nn\":[\"Max header size\"],\"zemvbh\":[\"View Versions\"],\"zhM8FP\":[\"Grant access to a user from a different project.\"],\"zm7+/D\":[\"You are about to deactivate <0>\",[\"activeCount\"],\" image(s)</0>. Deactivated images cannot be used to launch new instances.\"],\"zmHcLu\":[\"Add Project\"],\"zsqy/h\":[\"Delete Marker\"],\"zv8X11\":[\"Select \",[\"displayName\"]],\"zwBp5t\":[\"Private\"]}");
|
|
915
921
|
//#endregion
|
|
916
922
|
//#region src/client/analytics/setupRouterAnalytics.ts
|
|
917
|
-
function
|
|
923
|
+
function kn(e) {
|
|
918
924
|
return e.subscribe("onResolved", () => {
|
|
919
925
|
let { onTrackEvent: t } = e.options.context;
|
|
920
926
|
if (!t) return;
|
|
@@ -923,7 +929,7 @@ function on(e) {
|
|
|
923
929
|
let r = e.state.location.searchStr, i = { pathname: e.state.location.pathname };
|
|
924
930
|
r && (i.search = r);
|
|
925
931
|
let a = n.routeId;
|
|
926
|
-
if (
|
|
932
|
+
if (v(n.staticData)) {
|
|
927
933
|
let { analytics: e } = n.staticData;
|
|
928
934
|
if (e?.name && (a = e.name, e.name.includes("storage.objectstore") && n.params)) {
|
|
929
935
|
let { provider: t } = n.params;
|
|
@@ -942,51 +948,51 @@ function on(e) {
|
|
|
942
948
|
}
|
|
943
949
|
});
|
|
944
950
|
}
|
|
945
|
-
|
|
946
|
-
var
|
|
947
|
-
|
|
948
|
-
|
|
951
|
+
M.load({ en: On }), M.activate("en");
|
|
952
|
+
var An = [], jn = [], Mn = (e) => {
|
|
953
|
+
S(() => {
|
|
954
|
+
se(e.bffEndpoint ?? "/polaris-bff");
|
|
949
955
|
}, [e.bffEndpoint]);
|
|
950
|
-
let [t] =
|
|
956
|
+
let [t] = w(() => Dn(u, d, e.serviceExtensions)), [n, r] = w(e.theme ?? "theme-light"), [i] = w(() => new He({ defaultOptions: { queries: {
|
|
951
957
|
staleTime: 6e4,
|
|
952
958
|
refetchOnWindowFocus: !1,
|
|
953
959
|
queryKeyHashFn: (e) => {
|
|
954
960
|
let n = t.state.matches.findLast((e) => "projectId" in (e.params ?? {}))?.params?.projectId ?? "";
|
|
955
|
-
return
|
|
961
|
+
return We([n, ...e]);
|
|
956
962
|
}
|
|
957
|
-
} } })), [
|
|
958
|
-
return /*#__PURE__*/
|
|
963
|
+
} } })), [o] = w(() => f);
|
|
964
|
+
return /*#__PURE__*/ y(j, {
|
|
959
965
|
fallbackRender: ({ error: e, resetErrorBoundary: t }) => {
|
|
960
966
|
let { message: n } = e;
|
|
961
|
-
return /*#__PURE__*/
|
|
967
|
+
return /*#__PURE__*/ b("div", {
|
|
962
968
|
role: "alert",
|
|
963
969
|
style: { padding: 24 },
|
|
964
970
|
children: [
|
|
965
|
-
/*#__PURE__*/
|
|
966
|
-
n && /*#__PURE__*/
|
|
971
|
+
/*#__PURE__*/ y("p", { children: /*#__PURE__*/ y(O, { id: "lBVhQs" }) }),
|
|
972
|
+
n && /*#__PURE__*/ y("pre", {
|
|
967
973
|
style: { color: "red" },
|
|
968
974
|
children: n
|
|
969
975
|
}),
|
|
970
|
-
/*#__PURE__*/
|
|
976
|
+
/*#__PURE__*/ y("button", {
|
|
971
977
|
onClick: t,
|
|
972
|
-
children: /*#__PURE__*/
|
|
978
|
+
children: /*#__PURE__*/ y(O, { id: "KDw4GX" })
|
|
973
979
|
})
|
|
974
980
|
]
|
|
975
981
|
});
|
|
976
982
|
},
|
|
977
|
-
children: /*#__PURE__*/
|
|
978
|
-
i18n:
|
|
979
|
-
children: /*#__PURE__*/
|
|
983
|
+
children: /*#__PURE__*/ y(Ge, {
|
|
984
|
+
i18n: M,
|
|
985
|
+
children: /*#__PURE__*/ y(ae, {
|
|
980
986
|
shadowRoot: !1,
|
|
981
987
|
theme: n,
|
|
982
|
-
children: /*#__PURE__*/
|
|
983
|
-
client:
|
|
988
|
+
children: /*#__PURE__*/ y(u.Provider, {
|
|
989
|
+
client: o,
|
|
984
990
|
queryClient: i,
|
|
985
|
-
children: /*#__PURE__*/
|
|
991
|
+
children: /*#__PURE__*/ y(Ue, {
|
|
986
992
|
client: i,
|
|
987
|
-
children: /*#__PURE__*/
|
|
993
|
+
children: /*#__PURE__*/ b(ce, { children: [/*#__PURE__*/ y(a, { position: "top-right" }), /*#__PURE__*/ y(Nn, {
|
|
988
994
|
router: t,
|
|
989
|
-
navItems:
|
|
995
|
+
navItems: An,
|
|
990
996
|
handleThemeToggle: (t) => {
|
|
991
997
|
let n = t;
|
|
992
998
|
r(n), e.onThemeChange?.(n);
|
|
@@ -995,7 +1001,7 @@ var sn = [], cn = (e) => {
|
|
|
995
1001
|
appName: e.appName,
|
|
996
1002
|
onTrackEvent: e.onTrackEvent,
|
|
997
1003
|
enabledServices: e.enabledServices,
|
|
998
|
-
|
|
1004
|
+
serviceExtensions: e.serviceExtensions ?? jn
|
|
999
1005
|
})] })
|
|
1000
1006
|
})
|
|
1001
1007
|
})
|
|
@@ -1003,10 +1009,10 @@ var sn = [], cn = (e) => {
|
|
|
1003
1009
|
})
|
|
1004
1010
|
});
|
|
1005
1011
|
};
|
|
1006
|
-
function
|
|
1007
|
-
let c =
|
|
1008
|
-
trpcReact:
|
|
1009
|
-
trpcClient:
|
|
1012
|
+
function Nn({ router: e, navItems: t, handleThemeToggle: n, slots: r, appName: i, onTrackEvent: a, enabledServices: o, serviceExtensions: s }) {
|
|
1013
|
+
let c = p(), ee = {
|
|
1014
|
+
trpcReact: u,
|
|
1015
|
+
trpcClient: d,
|
|
1010
1016
|
auth: c,
|
|
1011
1017
|
navItems: t,
|
|
1012
1018
|
handleThemeToggle: n,
|
|
@@ -1014,19 +1020,27 @@ function ln({ router: e, navItems: t, handleThemeToggle: n, slots: r, appName: i
|
|
|
1014
1020
|
appName: i,
|
|
1015
1021
|
onTrackEvent: a,
|
|
1016
1022
|
enabledServices: o,
|
|
1017
|
-
|
|
1023
|
+
serviceExtensions: s
|
|
1018
1024
|
};
|
|
1019
|
-
return
|
|
1020
|
-
if (a) return
|
|
1021
|
-
}, [e, a]), /*#__PURE__*/
|
|
1025
|
+
return S(() => {
|
|
1026
|
+
if (a) return kn(e);
|
|
1027
|
+
}, [e, a]), /*#__PURE__*/ y(Fe, {
|
|
1022
1028
|
router: e,
|
|
1023
|
-
context:
|
|
1029
|
+
context: ee
|
|
1024
1030
|
});
|
|
1025
1031
|
}
|
|
1026
1032
|
//#endregion
|
|
1027
1033
|
//#region src/client/AuroraApp.tsx
|
|
1028
|
-
var
|
|
1034
|
+
var Pn = Mn;
|
|
1035
|
+
//#endregion
|
|
1036
|
+
//#region src/client/hooks/usePushBreadcrumbs.ts
|
|
1037
|
+
function Fn(e) {
|
|
1038
|
+
let { setBreadcrumbs: t } = je(Oe), n = e.map((e) => `${e.label}:${e.icon}:${e.active}`).join(",");
|
|
1039
|
+
S(() => {
|
|
1040
|
+
t(e);
|
|
1041
|
+
}, [n]), S(() => () => t([]), []);
|
|
1042
|
+
}
|
|
1029
1043
|
//#endregion
|
|
1030
|
-
export {
|
|
1044
|
+
export { Pn as AuroraApp, we as DynamicBreadcrumbContext, Ce as DynamicBreadcrumbProvider, Se as PageContentHeader, v as isRouteInfo, d as trpcClient, u as trpcReact, f as trpcReactClient, p as useAuth, ke as useBreadcrumbs, Ee as useDomainId, Fn as usePushBreadcrumbs, De as useScope, Te as useSetBreadcrumb };
|
|
1031
1045
|
|
|
1032
1046
|
//# sourceMappingURL=index.js.map
|