@cobaltcore-dev/aurora 2.0.0 → 2.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client/ContentHeader-fKKZVu-o.mjs +116 -0
- package/dist/client/ContentHeader-fKKZVu-o.mjs.map +1 -0
- package/dist/client/DeleteFlavorModal-C4nAi7gY.mjs +724 -0
- package/dist/client/DeleteFlavorModal-C4nAi7gY.mjs.map +1 -0
- package/dist/client/{RouteIdLevelDefaultError-CSseJ1yG.mjs → RouteIdLevelDefaultError-DPF_x2tG.mjs} +9 -9
- package/dist/client/RouteIdLevelDefaultError-DPF_x2tG.mjs.map +1 -0
- package/dist/client/StorageNotFound-B-zVinVD.mjs +30 -0
- package/dist/client/StorageNotFound-B-zVinVD.mjs.map +1 -0
- package/dist/client/_flavorId-BPvssEzn.mjs +277 -0
- package/dist/client/_flavorId-BPvssEzn.mjs.map +1 -0
- package/dist/client/{_flavorId-CaA4-Pnf.mjs → _flavorId-CFUBcU-l.mjs} +3 -3
- package/dist/client/{_flavorId-CaA4-Pnf.mjs.map → _flavorId-CFUBcU-l.mjs.map} +1 -1
- package/dist/client/{_flavorId-YV3jCS5g.mjs → _flavorId-CZcIp0Ih.mjs} +3 -3
- package/dist/client/{_flavorId-YV3jCS5g.mjs.map → _flavorId-CZcIp0Ih.mjs.map} +1 -1
- package/dist/client/{_floatingIpId-Dpsc7GU4.mjs → _floatingIpId-B8r64AL9.mjs} +3 -3
- package/dist/client/{_floatingIpId-Dpsc7GU4.mjs.map → _floatingIpId-B8r64AL9.mjs.map} +1 -1
- package/dist/client/{_floatingIpId-BeYElanB.mjs → _floatingIpId-lEobpOER.mjs} +2 -2
- package/dist/client/{_floatingIpId-BeYElanB.mjs.map → _floatingIpId-lEobpOER.mjs.map} +1 -1
- package/dist/client/_imageId-BAezmV0Y.mjs +526 -0
- package/dist/client/_imageId-BAezmV0Y.mjs.map +1 -0
- package/dist/client/{_imageId-pBSS0YcC.mjs → _imageId-D-jqz3e3.mjs} +3 -3
- package/dist/client/_imageId-D-jqz3e3.mjs.map +1 -0
- package/dist/client/{_imageId-mpXUMCh_.mjs → _imageId-gMdrdnVt.mjs} +3 -3
- package/dist/client/_imageId-gMdrdnVt.mjs.map +1 -0
- package/dist/client/{_projectId-BnTBxKfp.mjs → _projectId-BYccdAtX.mjs} +3 -3
- package/dist/client/{_projectId-BnTBxKfp.mjs.map → _projectId-BYccdAtX.mjs.map} +1 -1
- package/dist/client/{_projectId-AjgJX6Gl.mjs → _projectId-CBjZC1tv.mjs} +85 -83
- package/dist/client/_projectId-CBjZC1tv.mjs.map +1 -0
- package/dist/client/{_projectId-CVrdJ52s.mjs → _projectId-CLEa1zgw.mjs} +2 -2
- package/dist/client/{_projectId-CVrdJ52s.mjs.map → _projectId-CLEa1zgw.mjs.map} +1 -1
- package/dist/client/_projectId-D3VOH5lN.mjs +94 -0
- package/dist/client/_projectId-D3VOH5lN.mjs.map +1 -0
- package/dist/client/{_securityGroupId-AO3wnH8g.mjs → _securityGroupId-BwgZnoiR.mjs} +2 -2
- package/dist/client/{_securityGroupId-AO3wnH8g.mjs.map → _securityGroupId-BwgZnoiR.mjs.map} +1 -1
- package/dist/client/{_securityGroupId-Bq0ZyG6z.mjs → _securityGroupId-Cz2NUHdB.mjs} +3 -3
- package/dist/client/{_securityGroupId-Bq0ZyG6z.mjs.map → _securityGroupId-Cz2NUHdB.mjs.map} +1 -1
- package/dist/client/{_storageType-CzZ4u9x_.mjs → _storageType-BNpP1A2N.mjs} +3 -2
- package/dist/client/_storageType-BNpP1A2N.mjs.map +1 -0
- package/dist/client/_storageType-BxSGKhAI.mjs +15 -0
- package/dist/client/_storageType-BxSGKhAI.mjs.map +1 -0
- package/dist/client/_storageType-DZYCmiLt.mjs +30 -0
- package/dist/client/_storageType-DZYCmiLt.mjs.map +1 -0
- package/dist/client/{_storageType-c-DAu8qr.mjs → _storageType-UqAMP-8d.mjs} +286 -285
- package/dist/client/_storageType-UqAMP-8d.mjs.map +1 -0
- package/dist/client/_storageType-u51_7OwJ.mjs +7 -0
- package/dist/client/_storageType-u51_7OwJ.mjs.map +1 -0
- package/dist/client/components/Errors/RouteIdLevelDefaultError.d.ts +2 -1
- package/dist/client/{flavors-ZudiAiTU.mjs → flavors-CJVSNz6R.mjs} +2 -2
- package/dist/client/{flavors-ZudiAiTU.mjs.map → flavors-CJVSNz6R.mjs.map} +1 -1
- package/dist/client/{flavors-Bgq3KZmx.mjs → flavors-CflJDIEH.mjs} +90 -82
- package/dist/client/flavors-CflJDIEH.mjs.map +1 -0
- package/dist/client/{floatingips-B1oLH8z6.mjs → floatingips-DXnRlLvV.mjs} +2 -2
- package/dist/client/{floatingips-B1oLH8z6.mjs.map → floatingips-DXnRlLvV.mjs.map} +1 -1
- package/dist/client/{floatingips-BtLg3yEQ.mjs → floatingips-HRbuLxiN.mjs} +3 -3
- package/dist/client/{floatingips-BtLg3yEQ.mjs.map → floatingips-HRbuLxiN.mjs.map} +1 -1
- package/dist/client/{floatingips-BeQEkVH8.mjs → floatingips-nN1kQmsu.mjs} +2 -2
- package/dist/client/{floatingips-BeQEkVH8.mjs.map → floatingips-nN1kQmsu.mjs.map} +1 -1
- package/dist/client/imageHelpers-DBhL2ebL.mjs +1272 -0
- package/dist/client/imageHelpers-DBhL2ebL.mjs.map +1 -0
- package/dist/client/{images-CnTW3bpy.mjs → images-BsylWUiH.mjs} +837 -849
- package/dist/client/images-BsylWUiH.mjs.map +1 -0
- package/dist/client/{images-DZHDYDQu.mjs → images-zQq1nSVv.mjs} +2 -2
- package/dist/client/{images-DZHDYDQu.mjs.map → images-zQq1nSVv.mjs.map} +1 -1
- package/dist/client/index.js +200 -198
- package/dist/client/index.js.map +1 -1
- package/dist/client/{objects-jYQBFzwg.mjs → objects-BudUAfWY.mjs} +4265 -4275
- package/dist/client/objects-BudUAfWY.mjs.map +1 -0
- package/dist/client/objects-Dc7sKUr8.mjs +67 -0
- package/dist/client/objects-Dc7sKUr8.mjs.map +1 -0
- package/dist/client/objects-Dw7oeTq2.mjs +80 -0
- package/dist/client/objects-Dw7oeTq2.mjs.map +1 -0
- package/dist/client/objects-_g7nGIn5.mjs +25 -0
- package/dist/client/objects-_g7nGIn5.mjs.map +1 -0
- package/dist/client/objects-eBxvY6_n.mjs +78 -0
- package/dist/client/objects-eBxvY6_n.mjs.map +1 -0
- package/dist/client/projects-yiK0HGSA.mjs.map +1 -1
- package/dist/client/{securitygroups--0PS2wbM.mjs → securitygroups-CSmsBzUb.mjs} +105 -104
- package/dist/client/securitygroups-CSmsBzUb.mjs.map +1 -0
- package/dist/client/{securitygroups-BRndk7wh.mjs → securitygroups-T7kaNFEp.mjs} +2 -2
- package/dist/client/{securitygroups-BRndk7wh.mjs.map → securitygroups-T7kaNFEp.mjs.map} +1 -1
- package/dist/client/{securitygroups-Cs2Op-tu.mjs → securitygroups-WLB1_IM6.mjs} +3 -3
- package/dist/client/{securitygroups-Cs2Op-tu.mjs.map → securitygroups-WLB1_IM6.mjs.map} +1 -1
- package/dist/client/{securitygroups-CdN4yAAw.mjs → securitygroups-o0IXZM6S.mjs} +2 -2
- package/dist/client/{securitygroups-CdN4yAAw.mjs.map → securitygroups-o0IXZM6S.mjs.map} +1 -1
- package/dist/client/serviceCatalog-B3lKWC9V.mjs +6 -0
- package/dist/client/serviceCatalog-B3lKWC9V.mjs.map +1 -0
- package/dist/client/storageProviders-CJ5rOh13.mjs +15 -0
- package/dist/client/storageProviders-CJ5rOh13.mjs.map +1 -0
- package/dist/client/trpcClient.d.ts +96 -4
- package/dist/client/useErrorTranslation-Dc0eE8Zt.mjs +83 -0
- package/dist/client/useErrorTranslation-Dc0eE8Zt.mjs.map +1 -0
- package/dist/client/utils/serviceCatalog.d.ts +9 -0
- package/dist/client/utils/storageProviders.d.ts +44 -0
- package/dist/server/index.d.ts +96 -4
- package/dist/server/index.js +1993 -904
- package/package.json +2 -2
- package/dist/client/ContentHeader-CPJbgYWn.mjs +0 -115
- package/dist/client/ContentHeader-CPJbgYWn.mjs.map +0 -1
- package/dist/client/DeleteFlavorModal-C2MqUgGR.mjs +0 -801
- package/dist/client/DeleteFlavorModal-C2MqUgGR.mjs.map +0 -1
- package/dist/client/ImageToastNotifications-BWfzOUMc.mjs +0 -1135
- package/dist/client/ImageToastNotifications-BWfzOUMc.mjs.map +0 -1
- package/dist/client/RouteIdLevelDefaultError-CSseJ1yG.mjs.map +0 -1
- package/dist/client/_flavorId-DYv_StX22.mjs +0 -276
- package/dist/client/_flavorId-DYv_StX22.mjs.map +0 -1
- package/dist/client/_imageId-mfKp3JHn.mjs +0 -558
- package/dist/client/_imageId-mfKp3JHn.mjs.map +0 -1
- package/dist/client/_imageId-mpXUMCh_.mjs.map +0 -1
- package/dist/client/_imageId-pBSS0YcC.mjs.map +0 -1
- package/dist/client/_projectId-AjgJX6Gl.mjs.map +0 -1
- package/dist/client/_projectId-DgciZslU.mjs +0 -92
- package/dist/client/_projectId-DgciZslU.mjs.map +0 -1
- package/dist/client/_storageType-BRWWJtow.mjs +0 -14
- package/dist/client/_storageType-BRWWJtow.mjs.map +0 -1
- package/dist/client/_storageType-CzZ4u9x_.mjs.map +0 -1
- package/dist/client/_storageType-c-DAu8qr.mjs.map +0 -1
- package/dist/client/_storageType-zeSZe--V.mjs +0 -7
- package/dist/client/_storageType-zeSZe--V.mjs.map +0 -1
- package/dist/client/flavors-Bgq3KZmx.mjs.map +0 -1
- package/dist/client/images-CnTW3bpy.mjs.map +0 -1
- package/dist/client/objects-25xsh4Ia.mjs +0 -66
- package/dist/client/objects-25xsh4Ia.mjs.map +0 -1
- package/dist/client/objects-KXY6dgwq.mjs +0 -82
- package/dist/client/objects-KXY6dgwq.mjs.map +0 -1
- package/dist/client/objects-QryuClU3.mjs +0 -82
- package/dist/client/objects-QryuClU3.mjs.map +0 -1
- package/dist/client/objects-jYQBFzwg.mjs.map +0 -1
- package/dist/client/securitygroups--0PS2wbM.mjs.map +0 -1
|
@@ -339,7 +339,6 @@ export declare const trpcReactClient: TRPCClient<import('@trpc/server').TRPCBuil
|
|
|
339
339
|
sort_dir?: "asc" | "desc" | undefined;
|
|
340
340
|
name?: string | undefined;
|
|
341
341
|
description?: string | undefined;
|
|
342
|
-
tenant_id?: string | undefined;
|
|
343
342
|
shared?: boolean | undefined;
|
|
344
343
|
tags?: string | undefined;
|
|
345
344
|
tags_any?: string | undefined;
|
|
@@ -698,6 +697,43 @@ export declare const trpcReactClient: TRPCClient<import('@trpc/server').TRPCBuil
|
|
|
698
697
|
}[] | undefined;
|
|
699
698
|
meta: object;
|
|
700
699
|
}>;
|
|
700
|
+
listProjectsWithSearch: import('@trpc/server').TRPCQueryProcedure<{
|
|
701
|
+
input: {
|
|
702
|
+
searchTerm?: string | undefined;
|
|
703
|
+
};
|
|
704
|
+
output: {
|
|
705
|
+
id: string;
|
|
706
|
+
name: string;
|
|
707
|
+
enabled: boolean;
|
|
708
|
+
domain_id?: string | null | undefined;
|
|
709
|
+
parent_id?: string | null | undefined;
|
|
710
|
+
is_domain?: boolean | null | undefined;
|
|
711
|
+
tags?: string[] | null | undefined;
|
|
712
|
+
options?: Record<string, string | boolean> | null | undefined;
|
|
713
|
+
description?: string | null | undefined;
|
|
714
|
+
links?: {
|
|
715
|
+
self?: string | null | undefined;
|
|
716
|
+
} | undefined;
|
|
717
|
+
domain_name?: string | undefined;
|
|
718
|
+
parents?: {
|
|
719
|
+
project: {
|
|
720
|
+
id: string;
|
|
721
|
+
name: string;
|
|
722
|
+
enabled: boolean;
|
|
723
|
+
domain_id?: string | null | undefined;
|
|
724
|
+
parent_id?: string | null | undefined;
|
|
725
|
+
is_domain?: boolean | null | undefined;
|
|
726
|
+
tags?: string[] | null | undefined;
|
|
727
|
+
options?: Record<string, string | boolean> | null | undefined;
|
|
728
|
+
description?: string | null | undefined;
|
|
729
|
+
links?: {
|
|
730
|
+
self?: string | null | undefined;
|
|
731
|
+
} | undefined;
|
|
732
|
+
};
|
|
733
|
+
}[] | undefined;
|
|
734
|
+
}[] | undefined;
|
|
735
|
+
meta: object;
|
|
736
|
+
}>;
|
|
701
737
|
getProject: import('@trpc/server').TRPCQueryProcedure<{
|
|
702
738
|
input: {
|
|
703
739
|
projectId: string;
|
|
@@ -1270,6 +1306,31 @@ export declare const trpcReactClient: TRPCClient<import('@trpc/server').TRPCBuil
|
|
|
1270
1306
|
}[];
|
|
1271
1307
|
meta: object;
|
|
1272
1308
|
}>;
|
|
1309
|
+
head: import('@trpc/server').TRPCQueryProcedure<{
|
|
1310
|
+
input: {
|
|
1311
|
+
project_id: string;
|
|
1312
|
+
bucketName: string;
|
|
1313
|
+
};
|
|
1314
|
+
output: {
|
|
1315
|
+
exists: true;
|
|
1316
|
+
};
|
|
1317
|
+
meta: object;
|
|
1318
|
+
}>;
|
|
1319
|
+
getState: import('@trpc/server').TRPCQueryProcedure<{
|
|
1320
|
+
input: {
|
|
1321
|
+
project_id: string;
|
|
1322
|
+
bucketName: string;
|
|
1323
|
+
};
|
|
1324
|
+
output: {
|
|
1325
|
+
status: "Enabled" | "Suspended" | "Unversioned";
|
|
1326
|
+
isVersioningEnabled: boolean;
|
|
1327
|
+
isEmpty: boolean;
|
|
1328
|
+
hasOnlyDeleteMarkers: boolean;
|
|
1329
|
+
hasOldVersionsOrDeleteMarkers: boolean;
|
|
1330
|
+
isPartialScan: boolean;
|
|
1331
|
+
};
|
|
1332
|
+
meta: object;
|
|
1333
|
+
}>;
|
|
1273
1334
|
create: import('@trpc/server').TRPCMutationProcedure<{
|
|
1274
1335
|
input: {
|
|
1275
1336
|
project_id: string;
|
|
@@ -1436,6 +1497,24 @@ export declare const trpcReactClient: TRPCClient<import('@trpc/server').TRPCBuil
|
|
|
1436
1497
|
};
|
|
1437
1498
|
meta: object;
|
|
1438
1499
|
}>;
|
|
1500
|
+
deleteNonCurrentVersions: import('@trpc/server').TRPCMutationProcedure<{
|
|
1501
|
+
input: {
|
|
1502
|
+
project_id: string;
|
|
1503
|
+
containerName: string;
|
|
1504
|
+
};
|
|
1505
|
+
output: {
|
|
1506
|
+
errors: {
|
|
1507
|
+
key: string;
|
|
1508
|
+
versionId?: string | undefined;
|
|
1509
|
+
code?: string | undefined;
|
|
1510
|
+
message?: string | undefined;
|
|
1511
|
+
}[];
|
|
1512
|
+
deletedCount: number;
|
|
1513
|
+
errorCount: number;
|
|
1514
|
+
isPartial: boolean;
|
|
1515
|
+
};
|
|
1516
|
+
meta: object;
|
|
1517
|
+
}>;
|
|
1439
1518
|
createFolder: import('@trpc/server').TRPCMutationProcedure<{
|
|
1440
1519
|
input: {
|
|
1441
1520
|
project_id: string;
|
|
@@ -1630,14 +1709,16 @@ export declare const trpcReactClient: TRPCClient<import('@trpc/server').TRPCBuil
|
|
|
1630
1709
|
input: {
|
|
1631
1710
|
project_id: string;
|
|
1632
1711
|
bucket: string;
|
|
1633
|
-
|
|
1712
|
+
prefix?: string | undefined;
|
|
1713
|
+
folders?: string[] | undefined;
|
|
1634
1714
|
};
|
|
1635
1715
|
output: {
|
|
1636
1716
|
prefix: string;
|
|
1637
1717
|
hasDeletedContent: boolean;
|
|
1638
1718
|
isFolderDeleted: boolean;
|
|
1639
|
-
|
|
1640
|
-
|
|
1719
|
+
isPartialScan: boolean;
|
|
1720
|
+
folderDeleteMarkerVersionId?: string | undefined;
|
|
1721
|
+
folderMarkerVersionId?: string | undefined;
|
|
1641
1722
|
}[];
|
|
1642
1723
|
meta: object;
|
|
1643
1724
|
}>;
|
|
@@ -2579,6 +2660,16 @@ export declare const trpcReactClient: TRPCClient<import('@trpc/server').TRPCBuil
|
|
|
2579
2660
|
output: string[];
|
|
2580
2661
|
meta: object;
|
|
2581
2662
|
}>;
|
|
2663
|
+
getComputeApiVersion: import('@trpc/server').TRPCQueryProcedure<{
|
|
2664
|
+
input: {
|
|
2665
|
+
project_id: string;
|
|
2666
|
+
};
|
|
2667
|
+
output: {
|
|
2668
|
+
version: string;
|
|
2669
|
+
supportsDescription: boolean;
|
|
2670
|
+
};
|
|
2671
|
+
meta: object;
|
|
2672
|
+
}>;
|
|
2582
2673
|
getFlavorById: import('@trpc/server').TRPCQueryProcedure<{
|
|
2583
2674
|
input: {
|
|
2584
2675
|
project_id: string;
|
|
@@ -2647,6 +2738,7 @@ export declare const trpcReactClient: TRPCClient<import('@trpc/server').TRPCBuil
|
|
|
2647
2738
|
rxtx_factor?: number | undefined;
|
|
2648
2739
|
"OS-FLV-EXT-DATA:ephemeral"?: number | undefined;
|
|
2649
2740
|
"os-flavor-access:is_public"?: boolean | undefined;
|
|
2741
|
+
description?: string | undefined;
|
|
2650
2742
|
};
|
|
2651
2743
|
};
|
|
2652
2744
|
output: {
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { useLingui as e } from "@lingui/react";
|
|
2
|
+
//#region src/client/utils/useErrorTranslation.ts
|
|
3
|
+
var t = () => {
|
|
4
|
+
let { i18n: t, _: n } = e();
|
|
5
|
+
return {
|
|
6
|
+
translateError: (e) => {
|
|
7
|
+
switch (e) {
|
|
8
|
+
case "FLAVORS_UNAUTHORIZED": return t._({ id: "1iUuTT" });
|
|
9
|
+
case "FLAVORS_FORBIDDEN": return t._({ id: "mSLePW" });
|
|
10
|
+
case "FLAVORS_NOT_FOUND": return t._({ id: "EQnVgi" });
|
|
11
|
+
case "FLAVORS_SERVER_ERROR": return t._({ id: "Hivb/4" });
|
|
12
|
+
case "FLAVORS_FETCH_FAILED": return t._({ id: "EztMB8" });
|
|
13
|
+
case "FLAVORS_PARSE_ERROR": return t._({ id: "t1fq6V" });
|
|
14
|
+
case "GET_FLAVOR_DETAILS_UNAUTHORIZED": return t._({ id: "zCD96i" });
|
|
15
|
+
case "GET_FLAVOR_DETAILS_FORBIDDEN": return t._({ id: "/9Squ9" });
|
|
16
|
+
case "GET_FLAVOR_DETAILS_NOT_FOUND": return t._({ id: "HxTYrE" });
|
|
17
|
+
case "GET_FLAVOR_DETAILS_SERVER_ERROR": return t._({ id: "KJC+M7" });
|
|
18
|
+
case "GET_FLAVOR_DETAILS_INVALID_ID": return t._({ id: "YUU0QW" });
|
|
19
|
+
case "GET_FLAVOR_DETAILS_PARSE_ERROR": return t._({ id: "ZUmOzn" });
|
|
20
|
+
case "GET_FLAVOR_DETAILS_FAILED": return t._({ id: "RCr0yv" });
|
|
21
|
+
case "CREATE_FLAVOR_INVALID_DATA": return t._({ id: "0kCt7e" });
|
|
22
|
+
case "CREATE_FLAVOR_UNAUTHORIZED": return t._({ id: "oDkgME" });
|
|
23
|
+
case "CREATE_FLAVOR_FORBIDDEN": return t._({ id: "cPKL6O" });
|
|
24
|
+
case "CREATE_FLAVOR_CONFLICT": return t._({ id: "OlmKCg" });
|
|
25
|
+
case "CREATE_FLAVOR_SERVER_ERROR": return t._({ id: "qaAo9Y" });
|
|
26
|
+
case "CREATE_FLAVOR_FAILED": return t._({ id: "QuJSSl" });
|
|
27
|
+
case "DELETE_FLAVOR_UNAUTHORIZED": return t._({ id: "2gH+i8" });
|
|
28
|
+
case "DELETE_FLAVOR_FORBIDDEN": return t._({ id: "EPMHs9" });
|
|
29
|
+
case "DELETE_FLAVOR_NOT_FOUND": return t._({ id: "rIi6x4" });
|
|
30
|
+
case "DELETE_FLAVOR_SERVER_ERROR": return t._({ id: "tASa/P" });
|
|
31
|
+
case "DELETE_FLAVOR_FAILED": return t._({ id: "h3P8z+" });
|
|
32
|
+
case "DELETE_FLAVOR_INVALID_ID": return t._({ id: "YUU0QW" });
|
|
33
|
+
case "CREATE_EXTRA_SPECS_UNAUTHORIZED": return t._({ id: "RTQFAw" });
|
|
34
|
+
case "CREATE_EXTRA_SPECS_FORBIDDEN": return t._({ id: "kGmM/p" });
|
|
35
|
+
case "CREATE_EXTRA_SPECS_NOT_FOUND": return t._({ id: "HxTYrE" });
|
|
36
|
+
case "CREATE_EXTRA_SPECS_CONFLICT": return t._({ id: "6oolxV" });
|
|
37
|
+
case "CREATE_EXTRA_SPECS_INVALID_DATA": return t._({ id: "JoECY1" });
|
|
38
|
+
case "CREATE_EXTRA_SPECS_SERVER_ERROR": return t._({ id: "jMc/mo" });
|
|
39
|
+
case "CREATE_EXTRA_SPECS_PARSE_ERROR": return t._({ id: "07WXfc" });
|
|
40
|
+
case "CREATE_EXTRA_SPECS_FAILED": return t._({ id: "7BpykL" });
|
|
41
|
+
case "GET_EXTRA_SPECS_UNAUTHORIZED": return t._({ id: "3nWqQW" });
|
|
42
|
+
case "GET_EXTRA_SPECS_FORBIDDEN": return t._({ id: "wcUecy" });
|
|
43
|
+
case "GET_EXTRA_SPECS_NOT_FOUND": return t._({ id: "M470oJ" });
|
|
44
|
+
case "GET_EXTRA_SPECS_SERVER_ERROR": return t._({ id: "tIrNgH" });
|
|
45
|
+
case "GET_EXTRA_SPECS_PARSE_ERROR": return t._({ id: "07WXfc" });
|
|
46
|
+
case "GET_EXTRA_SPECS_FAILED": return t._({ id: "lhIa6x" });
|
|
47
|
+
case "DELETE_EXTRA_SPEC_UNAUTHORIZED": return t._({ id: "dVdc7N" });
|
|
48
|
+
case "DELETE_EXTRA_SPEC_FORBIDDEN": return t._({ id: "YrAy/S" });
|
|
49
|
+
case "DELETE_EXTRA_SPEC_NOT_FOUND": return t._({ id: "vBUQNE" });
|
|
50
|
+
case "DELETE_EXTRA_SPEC_SERVER_ERROR": return t._({ id: "0kc0zi" });
|
|
51
|
+
case "DELETE_EXTRA_SPEC_INVALID_KEY": return t._({ id: "ylfbpz" });
|
|
52
|
+
case "DELETE_EXTRA_SPEC_FAILED": return t._({ id: "TfdeUd" });
|
|
53
|
+
case "GET_FLAVOR_ACCESS_UNAUTHORIZED": return t._({ id: "Mt6sRo" });
|
|
54
|
+
case "GET_FLAVOR_ACCESS_FORBIDDEN": return t._({ id: "MbKJNP" });
|
|
55
|
+
case "GET_FLAVOR_ACCESS_NOT_FOUND": return t._({ id: "HxTYrE" });
|
|
56
|
+
case "GET_FLAVOR_ACCESS_SERVER_ERROR": return t._({ id: "YsOJlj" });
|
|
57
|
+
case "GET_FLAVOR_ACCESS_FAILED": return t._({ id: "bISG26" });
|
|
58
|
+
case "ADD_TENANT_ACCESS_FAILED": return t._({ id: "rIe0oV" });
|
|
59
|
+
case "ADD_TENANT_ACCESS_INVALID_DATA": return t._({ id: "gztCjq" });
|
|
60
|
+
case "ADD_TENANT_ACCESS_UNAUTHORIZED": return t._({ id: "+Lt5cp" });
|
|
61
|
+
case "ADD_TENANT_ACCESS_FORBIDDEN": return t._({ id: "8s0tOH" });
|
|
62
|
+
case "ADD_TENANT_ACCESS_NOT_FOUND": return t._({ id: "1rPB1p" });
|
|
63
|
+
case "ADD_TENANT_ACCESS_CONFLICT": return t._({ id: "NRMm0E" });
|
|
64
|
+
case "ADD_TENANT_ACCESS_SERVER_ERROR": return t._({ id: "KoQP4F" });
|
|
65
|
+
case "REMOVE_TENANT_ACCESS_FAILED": return t._({ id: "ZhVSpK" });
|
|
66
|
+
case "REMOVE_TENANT_ACCESS_INVALID_DATA": return t._({ id: "gztCjq" });
|
|
67
|
+
case "REMOVE_TENANT_ACCESS_UNAUTHORIZED": return t._({ id: "78+riR" });
|
|
68
|
+
case "REMOVE_TENANT_ACCESS_FORBIDDEN": return t._({ id: "qs+BrU" });
|
|
69
|
+
case "REMOVE_TENANT_ACCESS_NOT_FOUND": return t._({ id: "Do5/uH" });
|
|
70
|
+
case "REMOVE_TENANT_ACCESS_CONFLICT": return t._({ id: "+nQTmZ" });
|
|
71
|
+
case "REMOVE_TENANT_ACCESS_SERVER_ERROR": return t._({ id: "0BSSYj" });
|
|
72
|
+
case "COMPUTE_SERVICE_UNAVAILABLE": return t._({ id: "gGdfWx" });
|
|
73
|
+
case "COMPUTE_SERVICE_CONNECTION_FAILED": return t._({ id: "Qg4EG6" });
|
|
74
|
+
default: return t._({ id: "byKna+" });
|
|
75
|
+
}
|
|
76
|
+
},
|
|
77
|
+
isRetryableError: (e) => ["FLAVORS_SERVER_ERROR", "FLAVORS_FETCH_FAILED"].includes(e)
|
|
78
|
+
};
|
|
79
|
+
};
|
|
80
|
+
//#endregion
|
|
81
|
+
export { t };
|
|
82
|
+
|
|
83
|
+
//# sourceMappingURL=useErrorTranslation-Dc0eE8Zt.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useErrorTranslation-Dc0eE8Zt.mjs","names":["useErrorTranslation","useLingui","translateError","errorCode","t","isRetryableError","includes"],"sources":["../../src/client/utils/useErrorTranslation.ts"],"sourcesContent":["import { useLingui } from \"@lingui/react/macro\"\n\nexport const useErrorTranslation = () => {\n const { t } = useLingui()\n\n const translateError = (errorCode: string): string => {\n switch (errorCode) {\n // List Flavor\n case \"FLAVORS_UNAUTHORIZED\":\n return t`Your session has expired. Please log in again.`\n case \"FLAVORS_FORBIDDEN\":\n return t`You don't have permission to access flavors for this project.`\n case \"FLAVORS_NOT_FOUND\":\n return t`Flavor service is not available for this project.`\n case \"FLAVORS_SERVER_ERROR\":\n return t`Server is experiencing issues. Please try again later.`\n case \"FLAVORS_FETCH_FAILED\":\n return t`Failed to fetch flavors from server.`\n case \"FLAVORS_PARSE_ERROR\":\n return t`Server returned unexpected data format.`\n\n // Get flavor\n case \"GET_FLAVOR_DETAILS_UNAUTHORIZED\":\n return t`You are not authorized to view flavor details. Please log in again.`\n case \"GET_FLAVOR_DETAILS_FORBIDDEN\":\n return t`You don't have permission to view this flavor's details.`\n case \"GET_FLAVOR_DETAILS_NOT_FOUND\":\n return t`The flavor could not be found. It may have been deleted.`\n case \"GET_FLAVOR_DETAILS_SERVER_ERROR\":\n return t`Server error occurred while fetching flavor details. Please try again later.`\n case \"GET_FLAVOR_DETAILS_INVALID_ID\":\n return t`Flavor ID is required and cannot be empty.`\n case \"GET_FLAVOR_DETAILS_PARSE_ERROR\":\n return t`Server returned unexpected data format for flavor details.`\n case \"GET_FLAVOR_DETAILS_FAILED\":\n return t`Failed to load flavor details. Please try again.`\n\n // Create Flavor\n case \"CREATE_FLAVOR_INVALID_DATA\":\n return t`The flavor data provided is invalid. Please check your input.`\n case \"CREATE_FLAVOR_UNAUTHORIZED\":\n return t`You are not authorized to create flavors. Please log in again.`\n case \"CREATE_FLAVOR_FORBIDDEN\":\n return t`You don't have permission to create flavors in this project.`\n case \"CREATE_FLAVOR_CONFLICT\":\n return t`A flavor with this ID or name already exists. Please use different values.`\n case \"CREATE_FLAVOR_SERVER_ERROR\":\n return t`Server error occurred while creating the flavor. Please try again later.`\n case \"CREATE_FLAVOR_FAILED\":\n return t`Failed to create the flavor. Please try again.`\n\n // Delete Flavor\n case \"DELETE_FLAVOR_UNAUTHORIZED\":\n return t`You are not authorized to delete flavors. Please log in again.`\n case \"DELETE_FLAVOR_FORBIDDEN\":\n return t`You don't have permission to delete flavors in this project.`\n case \"DELETE_FLAVOR_NOT_FOUND\":\n return t`The flavor could not be found. It may have already been deleted.`\n case \"DELETE_FLAVOR_SERVER_ERROR\":\n return t`Server error occurred while deleting the flavor. Please try again later.`\n case \"DELETE_FLAVOR_FAILED\":\n return t`Failed to delete the flavor. Please try again.`\n case \"DELETE_FLAVOR_INVALID_ID\":\n return t`Flavor ID is required and cannot be empty.`\n\n // Create Metadata\n case \"CREATE_EXTRA_SPECS_UNAUTHORIZED\":\n return t`You are not authorized to create extra specs. Please log in again.`\n case \"CREATE_EXTRA_SPECS_FORBIDDEN\":\n return t`You don't have permission to create extra specs for this flavor.`\n case \"CREATE_EXTRA_SPECS_NOT_FOUND\":\n return t`The flavor could not be found. It may have been deleted.`\n case \"CREATE_EXTRA_SPECS_CONFLICT\":\n return t`This extra spec keys already exist. Please use different keys.`\n case \"CREATE_EXTRA_SPECS_INVALID_DATA\":\n return t`The extra spec data provided is invalid. Please check your input.`\n case \"CREATE_EXTRA_SPECS_SERVER_ERROR\":\n return t`Server error occurred while creating extra specs. Please try again later.`\n case \"CREATE_EXTRA_SPECS_PARSE_ERROR\":\n return t`Server returned unexpected data format for extra specs.`\n case \"CREATE_EXTRA_SPECS_FAILED\":\n return t`Failed to create extra specs. Please try again.`\n\n // Get Metadata\n case \"GET_EXTRA_SPECS_UNAUTHORIZED\":\n return t`You are not authorized to view extra specs. Please log in again.`\n case \"GET_EXTRA_SPECS_FORBIDDEN\":\n return t`You don't have permission to view extra specs for this flavor.`\n case \"GET_EXTRA_SPECS_NOT_FOUND\":\n return t`The flavor could not be found or has no extra specs.`\n case \"GET_EXTRA_SPECS_SERVER_ERROR\":\n return t`Server error occurred while fetching extra specs. Please try again later.`\n case \"GET_EXTRA_SPECS_PARSE_ERROR\":\n return t`Server returned unexpected data format for extra specs.`\n case \"GET_EXTRA_SPECS_FAILED\":\n return t`Failed to load extra specs. Please try again.`\n\n // Delete Metadata\n case \"DELETE_EXTRA_SPEC_UNAUTHORIZED\":\n return t`You are not authorized to delete extra specs. Please log in again.`\n case \"DELETE_EXTRA_SPEC_FORBIDDEN\":\n return t`You don't have permission to delete extra specs for this flavor.`\n case \"DELETE_EXTRA_SPEC_NOT_FOUND\":\n return t`The extra spec could not be found. It may have already been deleted.`\n case \"DELETE_EXTRA_SPEC_SERVER_ERROR\":\n return t`Server error occurred while deleting the extra spec. Please try again later.`\n case \"DELETE_EXTRA_SPEC_INVALID_KEY\":\n return t`Extra spec key is required and cannot be empty.`\n case \"DELETE_EXTRA_SPEC_FAILED\":\n return t`Failed to delete the extra spec. Please try again.`\n\n // Get Flavor Access\n case \"GET_FLAVOR_ACCESS_UNAUTHORIZED\":\n return t`You are not authorized to access flavor access information. Please log in again.`\n case \"GET_FLAVOR_ACCESS_FORBIDDEN\":\n return t`You don't have permission to access flavor access information for this flavor.`\n case \"GET_FLAVOR_ACCESS_NOT_FOUND\":\n return t`The flavor could not be found. It may have been deleted.`\n case \"GET_FLAVOR_ACCESS_SERVER_ERROR\":\n return t`Server error occurred while fetching flavor access information. Please try again later.`\n case \"GET_FLAVOR_ACCESS_FAILED\":\n return t`Failed to fetch flavor access information. Please try again.`\n\n // Add Tenant Access\n case \"ADD_TENANT_ACCESS_FAILED\":\n return t`Failed to add tenant access to flavor. Please try again.`\n case \"ADD_TENANT_ACCESS_INVALID_DATA\":\n return t`The tenant ID provided is invalid. Please check your input.`\n case \"ADD_TENANT_ACCESS_UNAUTHORIZED\":\n return t`You are not authorized to add tenant access. Please log in again.`\n case \"ADD_TENANT_ACCESS_FORBIDDEN\":\n return t`You don't have permission to add tenant access to this flavor.`\n case \"ADD_TENANT_ACCESS_NOT_FOUND\":\n return t`The flavor or tenant could not be found. Please verify they exist.`\n case \"ADD_TENANT_ACCESS_CONFLICT\":\n return t`This tenant already has access to the flavor.`\n case \"ADD_TENANT_ACCESS_SERVER_ERROR\":\n return t`Server error occurred while adding tenant access. Please try again later.`\n\n // Remove Tenant Access\n case \"REMOVE_TENANT_ACCESS_FAILED\":\n return t`Failed to remove tenant access from flavor. Please try again.`\n case \"REMOVE_TENANT_ACCESS_INVALID_DATA\":\n return t`The tenant ID provided is invalid. Please check your input.`\n case \"REMOVE_TENANT_ACCESS_UNAUTHORIZED\":\n return t`You are not authorized to remove tenant access. Please log in again.`\n case \"REMOVE_TENANT_ACCESS_FORBIDDEN\":\n return t`You don't have permission to remove tenant access from this flavor.`\n case \"REMOVE_TENANT_ACCESS_NOT_FOUND\":\n return t`The flavor or tenant could not be found. It may have already been removed.`\n case \"REMOVE_TENANT_ACCESS_CONFLICT\":\n return t`This tenant does not have access to the flavor.`\n case \"REMOVE_TENANT_ACCESS_SERVER_ERROR\":\n return t`Server error occurred while removing tenant access. Please try again later.`\n\n // Service Connection Errors\n case \"COMPUTE_SERVICE_UNAVAILABLE\":\n return t`The compute service is currently unavailable for this project. Please try again later.`\n case \"COMPUTE_SERVICE_CONNECTION_FAILED\":\n return t`Unable to connect to the compute service. Please check your connection and try again.`\n\n default:\n return t`An unexpected error occurred. Please try again.`\n }\n }\n\n const isRetryableError = (errorCode: string): boolean => {\n return [\"FLAVORS_SERVER_ERROR\", \"FLAVORS_FETCH_FAILED\"].includes(errorCode)\n }\n\n return { translateError, isRetryableError }\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Mirrors the backend's service resolution, which matches by NAME and ignores the
|
|
3
|
+
* catalog type entirely (cephProcedure.ts:23 → ctx.openstack.service("ceph");
|
|
4
|
+
* swiftRouter.ts → service("swift"); signal-openstack session.ts:95 takes only a name).
|
|
5
|
+
* The old type-scoped lookups disagreed with it: Ceph lives in the catalog as
|
|
6
|
+
* { type: "object-store-ceph", name: "ceph" }, so serviceIndex["object-store"]["ceph"]
|
|
7
|
+
* never matched, and a temporary Ceph availability fallback had to paper over it.
|
|
8
|
+
*/
|
|
9
|
+
export declare const hasServiceByName: (serviceIndex: Record<string, Record<string, boolean>>, name: string) => boolean;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Single source of truth for the storage provider ↔ storage-type noun mapping
|
|
3
|
+
* (`swift` → `containers`, `ceph` → `buckets`). Every route/component that needs
|
|
4
|
+
* to build or validate a `/storage/$provider/$storageType` URL should go through
|
|
5
|
+
* this module instead of re-hardcoding the pairing.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* The object-storage providers. The same spelling serves as the `$provider` URL
|
|
9
|
+
* segment and as the OpenStack catalog service *name* the backend resolves by
|
|
10
|
+
* (see `serviceCatalog.ts`), so one constant covers both uses.
|
|
11
|
+
*/
|
|
12
|
+
export declare const STORAGE_PROVIDER: {
|
|
13
|
+
readonly SWIFT: "swift";
|
|
14
|
+
readonly CEPH: "ceph";
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* The `$storageType` URL segment noun each provider uses.
|
|
18
|
+
*
|
|
19
|
+
* Deliberately NOT the same vocabulary as the nav / `enabledServices` service keys
|
|
20
|
+
* (`"containers"` / `"ceph-containers"`), which only happen to share the word
|
|
21
|
+
* "containers" — Ceph's nav key is `"ceph-containers"`, never `"buckets"`. Don't
|
|
22
|
+
* substitute one for the other.
|
|
23
|
+
*/
|
|
24
|
+
export declare const STORAGE_TYPE: {
|
|
25
|
+
readonly CONTAINERS: "containers";
|
|
26
|
+
readonly BUCKETS: "buckets";
|
|
27
|
+
};
|
|
28
|
+
export declare const STORAGE_TYPE_BY_PROVIDER: {
|
|
29
|
+
readonly swift: "containers";
|
|
30
|
+
readonly ceph: "buckets";
|
|
31
|
+
};
|
|
32
|
+
export type StorageProvider = keyof typeof STORAGE_TYPE_BY_PROVIDER;
|
|
33
|
+
export type StorageType = (typeof STORAGE_TYPE_BY_PROVIDER)[StorageProvider];
|
|
34
|
+
/**
|
|
35
|
+
* Narrows an unknown value (typically a raw `$provider` URL segment) to a known
|
|
36
|
+
* `StorageProvider`. Uses `Object.hasOwn` rather than `in` — `"__proto__" in obj`
|
|
37
|
+
* evaluates to `true` for any object, which would let `/storage/__proto__/...`
|
|
38
|
+
* pass validation.
|
|
39
|
+
*/
|
|
40
|
+
export declare const isStorageProvider: (value: unknown) => value is StorageProvider;
|
|
41
|
+
/** Returns `value` narrowed to a `StorageProvider`, or `fallback` if it isn't one. */
|
|
42
|
+
export declare const asStorageProvider: (value: unknown, fallback: StorageProvider) => StorageProvider;
|
|
43
|
+
/** The canonical storage-type noun for a given provider. */
|
|
44
|
+
export declare const storageTypeFor: (provider: StorageProvider) => StorageType;
|
package/dist/server/index.d.ts
CHANGED
|
@@ -959,7 +959,6 @@ declare const buildBaseRouter: (policyDir: string) => _trpc_server.TRPCBuiltRout
|
|
|
959
959
|
sort_dir?: "asc" | "desc" | undefined;
|
|
960
960
|
name?: string | undefined;
|
|
961
961
|
description?: string | undefined;
|
|
962
|
-
tenant_id?: string | undefined;
|
|
963
962
|
shared?: boolean | undefined;
|
|
964
963
|
tags?: string | undefined;
|
|
965
964
|
tags_any?: string | undefined;
|
|
@@ -1318,6 +1317,43 @@ declare const buildBaseRouter: (policyDir: string) => _trpc_server.TRPCBuiltRout
|
|
|
1318
1317
|
}[] | undefined;
|
|
1319
1318
|
meta: object;
|
|
1320
1319
|
}>;
|
|
1320
|
+
listProjectsWithSearch: _trpc_server.TRPCQueryProcedure<{
|
|
1321
|
+
input: {
|
|
1322
|
+
searchTerm?: string | undefined;
|
|
1323
|
+
};
|
|
1324
|
+
output: {
|
|
1325
|
+
id: string;
|
|
1326
|
+
name: string;
|
|
1327
|
+
enabled: boolean;
|
|
1328
|
+
domain_id?: string | null | undefined;
|
|
1329
|
+
parent_id?: string | null | undefined;
|
|
1330
|
+
is_domain?: boolean | null | undefined;
|
|
1331
|
+
tags?: string[] | null | undefined;
|
|
1332
|
+
options?: Record<string, string | boolean> | null | undefined;
|
|
1333
|
+
description?: string | null | undefined;
|
|
1334
|
+
links?: {
|
|
1335
|
+
self?: string | null | undefined;
|
|
1336
|
+
} | undefined;
|
|
1337
|
+
domain_name?: string | undefined;
|
|
1338
|
+
parents?: {
|
|
1339
|
+
project: {
|
|
1340
|
+
id: string;
|
|
1341
|
+
name: string;
|
|
1342
|
+
enabled: boolean;
|
|
1343
|
+
domain_id?: string | null | undefined;
|
|
1344
|
+
parent_id?: string | null | undefined;
|
|
1345
|
+
is_domain?: boolean | null | undefined;
|
|
1346
|
+
tags?: string[] | null | undefined;
|
|
1347
|
+
options?: Record<string, string | boolean> | null | undefined;
|
|
1348
|
+
description?: string | null | undefined;
|
|
1349
|
+
links?: {
|
|
1350
|
+
self?: string | null | undefined;
|
|
1351
|
+
} | undefined;
|
|
1352
|
+
};
|
|
1353
|
+
}[] | undefined;
|
|
1354
|
+
}[] | undefined;
|
|
1355
|
+
meta: object;
|
|
1356
|
+
}>;
|
|
1321
1357
|
getProject: _trpc_server.TRPCQueryProcedure<{
|
|
1322
1358
|
input: {
|
|
1323
1359
|
projectId: string;
|
|
@@ -1890,6 +1926,31 @@ declare const buildBaseRouter: (policyDir: string) => _trpc_server.TRPCBuiltRout
|
|
|
1890
1926
|
}[];
|
|
1891
1927
|
meta: object;
|
|
1892
1928
|
}>;
|
|
1929
|
+
head: _trpc_server.TRPCQueryProcedure<{
|
|
1930
|
+
input: {
|
|
1931
|
+
project_id: string;
|
|
1932
|
+
bucketName: string;
|
|
1933
|
+
};
|
|
1934
|
+
output: {
|
|
1935
|
+
exists: true;
|
|
1936
|
+
};
|
|
1937
|
+
meta: object;
|
|
1938
|
+
}>;
|
|
1939
|
+
getState: _trpc_server.TRPCQueryProcedure<{
|
|
1940
|
+
input: {
|
|
1941
|
+
project_id: string;
|
|
1942
|
+
bucketName: string;
|
|
1943
|
+
};
|
|
1944
|
+
output: {
|
|
1945
|
+
status: "Enabled" | "Suspended" | "Unversioned";
|
|
1946
|
+
isVersioningEnabled: boolean;
|
|
1947
|
+
isEmpty: boolean;
|
|
1948
|
+
hasOnlyDeleteMarkers: boolean;
|
|
1949
|
+
hasOldVersionsOrDeleteMarkers: boolean;
|
|
1950
|
+
isPartialScan: boolean;
|
|
1951
|
+
};
|
|
1952
|
+
meta: object;
|
|
1953
|
+
}>;
|
|
1893
1954
|
create: _trpc_server.TRPCMutationProcedure<{
|
|
1894
1955
|
input: {
|
|
1895
1956
|
project_id: string;
|
|
@@ -2056,6 +2117,24 @@ declare const buildBaseRouter: (policyDir: string) => _trpc_server.TRPCBuiltRout
|
|
|
2056
2117
|
};
|
|
2057
2118
|
meta: object;
|
|
2058
2119
|
}>;
|
|
2120
|
+
deleteNonCurrentVersions: _trpc_server.TRPCMutationProcedure<{
|
|
2121
|
+
input: {
|
|
2122
|
+
project_id: string;
|
|
2123
|
+
containerName: string;
|
|
2124
|
+
};
|
|
2125
|
+
output: {
|
|
2126
|
+
errors: {
|
|
2127
|
+
key: string;
|
|
2128
|
+
versionId?: string | undefined;
|
|
2129
|
+
code?: string | undefined;
|
|
2130
|
+
message?: string | undefined;
|
|
2131
|
+
}[];
|
|
2132
|
+
deletedCount: number;
|
|
2133
|
+
errorCount: number;
|
|
2134
|
+
isPartial: boolean;
|
|
2135
|
+
};
|
|
2136
|
+
meta: object;
|
|
2137
|
+
}>;
|
|
2059
2138
|
createFolder: _trpc_server.TRPCMutationProcedure<{
|
|
2060
2139
|
input: {
|
|
2061
2140
|
project_id: string;
|
|
@@ -2250,14 +2329,16 @@ declare const buildBaseRouter: (policyDir: string) => _trpc_server.TRPCBuiltRout
|
|
|
2250
2329
|
input: {
|
|
2251
2330
|
project_id: string;
|
|
2252
2331
|
bucket: string;
|
|
2253
|
-
|
|
2332
|
+
prefix?: string | undefined;
|
|
2333
|
+
folders?: string[] | undefined;
|
|
2254
2334
|
};
|
|
2255
2335
|
output: {
|
|
2256
2336
|
prefix: string;
|
|
2257
2337
|
hasDeletedContent: boolean;
|
|
2258
2338
|
isFolderDeleted: boolean;
|
|
2259
|
-
|
|
2260
|
-
|
|
2339
|
+
isPartialScan: boolean;
|
|
2340
|
+
folderDeleteMarkerVersionId?: string | undefined;
|
|
2341
|
+
folderMarkerVersionId?: string | undefined;
|
|
2261
2342
|
}[];
|
|
2262
2343
|
meta: object;
|
|
2263
2344
|
}>;
|
|
@@ -3199,6 +3280,16 @@ declare const buildBaseRouter: (policyDir: string) => _trpc_server.TRPCBuiltRout
|
|
|
3199
3280
|
output: string[];
|
|
3200
3281
|
meta: object;
|
|
3201
3282
|
}>;
|
|
3283
|
+
getComputeApiVersion: _trpc_server.TRPCQueryProcedure<{
|
|
3284
|
+
input: {
|
|
3285
|
+
project_id: string;
|
|
3286
|
+
};
|
|
3287
|
+
output: {
|
|
3288
|
+
version: string;
|
|
3289
|
+
supportsDescription: boolean;
|
|
3290
|
+
};
|
|
3291
|
+
meta: object;
|
|
3292
|
+
}>;
|
|
3202
3293
|
getFlavorById: _trpc_server.TRPCQueryProcedure<{
|
|
3203
3294
|
input: {
|
|
3204
3295
|
project_id: string;
|
|
@@ -3267,6 +3358,7 @@ declare const buildBaseRouter: (policyDir: string) => _trpc_server.TRPCBuiltRout
|
|
|
3267
3358
|
rxtx_factor?: number | undefined;
|
|
3268
3359
|
"OS-FLV-EXT-DATA:ephemeral"?: number | undefined;
|
|
3269
3360
|
"os-flavor-access:is_public"?: boolean | undefined;
|
|
3361
|
+
description?: string | undefined;
|
|
3270
3362
|
};
|
|
3271
3363
|
};
|
|
3272
3364
|
output: {
|