@cobaltcore-dev/aurora 0.23.1 → 1.1.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.
Files changed (188) hide show
  1. package/dist/client/App.d.ts +3 -2
  2. package/dist/client/AuroraApp.d.ts +25 -0
  3. package/dist/client/{AuthProvider-CQ6Yppoh.mjs → AuthProvider-BS5OVv8n.mjs} +4 -4
  4. package/dist/client/AuthProvider-BS5OVv8n.mjs.map +1 -0
  5. package/dist/client/{ContentHeader-9KZdhOoA.mjs → ContentHeader-BHMUzd9H.mjs} +27 -26
  6. package/dist/client/ContentHeader-BHMUzd9H.mjs.map +1 -0
  7. package/dist/client/DeleteFlavorModal-BP83t9zX.mjs +721 -0
  8. package/dist/client/DeleteFlavorModal-BP83t9zX.mjs.map +1 -0
  9. package/dist/client/FiltersInput-B8CNBg1L.mjs +82 -0
  10. package/dist/client/FiltersInput-B8CNBg1L.mjs.map +1 -0
  11. package/dist/client/{FloatingIpActionModals-BcceUHcg.mjs → FloatingIpActionModals-BraiJWBi.mjs} +66 -66
  12. package/dist/client/{FloatingIpActionModals-BcceUHcg.mjs.map → FloatingIpActionModals-BraiJWBi.mjs.map} +1 -1
  13. package/dist/client/ImageToastNotifications-BXMHJaIH.mjs +1131 -0
  14. package/dist/client/ImageToastNotifications-BXMHJaIH.mjs.map +1 -0
  15. package/dist/client/{RouteError-Rm08PcxN.mjs → RouteError-hAF8_jbe.mjs} +2 -2
  16. package/dist/client/{RouteError-Rm08PcxN.mjs.map → RouteError-hAF8_jbe.mjs.map} +1 -1
  17. package/dist/client/Slot-CWb612-_.mjs.map +1 -1
  18. package/dist/client/{SortInput-D_q_jDfe.mjs → SortInput-Cqs2poV3.mjs} +9 -9
  19. package/dist/client/{SortInput-D_q_jDfe.mjs.map → SortInput-Cqs2poV3.mjs.map} +1 -1
  20. package/dist/client/{StatusError-2ZU1gFpu.mjs → StatusError-C5KodQOq.mjs} +7 -7
  21. package/dist/client/{StatusError-2ZU1gFpu.mjs.map → StatusError-C5KodQOq.mjs.map} +1 -1
  22. package/dist/client/TwoColumnDescriptionList-DiDx3PnH.mjs +22 -0
  23. package/dist/client/TwoColumnDescriptionList-DiDx3PnH.mjs.map +1 -0
  24. package/dist/client/{_auth-D5_QNUos.mjs → _auth-DJ9wHZaj.mjs} +2 -2
  25. package/dist/client/_auth-DJ9wHZaj.mjs.map +1 -0
  26. package/dist/client/{_flavorId-CFmkmg2Y.mjs → _flavorId-BN_qessZ.mjs} +4 -4
  27. package/dist/client/{_flavorId-CFmkmg2Y.mjs.map → _flavorId-BN_qessZ.mjs.map} +1 -1
  28. package/dist/client/_flavorId-CJjEB_Ao.mjs +210 -0
  29. package/dist/client/_flavorId-CJjEB_Ao.mjs.map +1 -0
  30. package/dist/client/{_floatingIpId-Dzh6_JCI.mjs → _floatingIpId-CwDGHkWm.mjs} +4 -4
  31. package/dist/client/{_floatingIpId-Dzh6_JCI.mjs.map → _floatingIpId-CwDGHkWm.mjs.map} +1 -1
  32. package/dist/client/_floatingIpId-foMIwbE4.mjs +215 -0
  33. package/dist/client/_floatingIpId-foMIwbE4.mjs.map +1 -0
  34. package/dist/client/_imageId-BtJ7GmYB.mjs +558 -0
  35. package/dist/client/_imageId-BtJ7GmYB.mjs.map +1 -0
  36. package/dist/client/{_projectId-D-b7paXE.mjs → _projectId-BmtCuzJu.mjs} +4 -4
  37. package/dist/client/{_projectId-D-b7paXE.mjs.map → _projectId-BmtCuzJu.mjs.map} +1 -1
  38. package/dist/client/_projectId-Byt3GQDW.mjs +99 -0
  39. package/dist/client/_projectId-Byt3GQDW.mjs.map +1 -0
  40. package/dist/client/_projectId-NYk1IN_a.mjs +291 -0
  41. package/dist/client/_projectId-NYk1IN_a.mjs.map +1 -0
  42. package/dist/client/{_projectId-CAQkJHZ4.mjs → _projectId-QueiFczy.mjs} +3 -3
  43. package/dist/client/{_projectId-CAQkJHZ4.mjs.map → _projectId-QueiFczy.mjs.map} +1 -1
  44. package/dist/client/{_securityGroupId-DRkY3Gt6.mjs → _securityGroupId-BcbkRhsN.mjs} +4 -4
  45. package/dist/client/{_securityGroupId-DRkY3Gt6.mjs.map → _securityGroupId-BcbkRhsN.mjs.map} +1 -1
  46. package/dist/client/{_securityGroupId-DFdNKa2l.mjs → _securityGroupId-pPtJsCoe.mjs} +541 -527
  47. package/dist/client/_securityGroupId-pPtJsCoe.mjs.map +1 -0
  48. package/dist/client/_storageType-BmqrU06i.mjs +2202 -0
  49. package/dist/client/_storageType-BmqrU06i.mjs.map +1 -0
  50. package/dist/client/_storageType-zeSZe--V.mjs.map +1 -1
  51. package/dist/client/{about-C8tTrQaW.mjs → about-_73VmpTB.mjs} +8 -8
  52. package/dist/client/about-_73VmpTB.mjs.map +1 -0
  53. package/dist/client/assets/objectDownload.worker-CWWLPDyb.js.map +1 -0
  54. package/dist/client/assets/objectDownload.worker-kZlQuo3F.js.map +1 -0
  55. package/dist/client/{aurora-jyvXcI4T.mjs → aurora-EbwGRLLf.mjs} +2 -2
  56. package/dist/client/aurora-EbwGRLLf.mjs.map +1 -0
  57. package/dist/client/{build-CRLQyqu2.mjs → build-C_4vRMCq.mjs} +8072 -8533
  58. package/dist/client/build-C_4vRMCq.mjs.map +1 -0
  59. package/dist/client/components/Auth/LoginForm.d.ts +1 -1
  60. package/dist/client/components/Auth/SessionExpirationTimer.d.ts +1 -1
  61. package/dist/client/components/ContentHeader/ContentHeader.d.ts +1 -1
  62. package/dist/client/components/Error/RouteError.d.ts +1 -1
  63. package/dist/client/components/Error/StatusError.d.ts +1 -1
  64. package/dist/client/components/JsonEditor.d.ts +1 -1
  65. package/dist/client/components/ListToolbar/FiltersInput.d.ts +3 -1
  66. package/dist/client/components/ListToolbar/SelectedFilters.d.ts +1 -1
  67. package/dist/client/components/ListToolbar/index.d.ts +1 -1
  68. package/dist/client/components/ProjectView/ProjectInfoBox.d.ts +1 -1
  69. package/dist/client/components/Slot.d.ts +1 -1
  70. package/dist/client/components/TwoColumnDescriptionList.d.ts +11 -0
  71. package/dist/client/components/navigation/LanguageSelect.d.ts +1 -1
  72. package/dist/client/components/navigation/MainNavigation.d.ts +1 -1
  73. package/dist/client/components/navigation/UserMenu.d.ts +1 -1
  74. package/dist/client/{flavors-Dy-2mRGv.mjs → flavors-CiHCYrtZ.mjs} +2 -2
  75. package/dist/client/{flavors-Dy-2mRGv.mjs.map → flavors-CiHCYrtZ.mjs.map} +1 -1
  76. package/dist/client/flavors-DWMZ6TuJ.mjs.map +1 -1
  77. package/dist/client/{flavors-BfTXqmoD.mjs → flavors-DY-bDc8l.mjs} +196 -194
  78. package/dist/client/flavors-DY-bDc8l.mjs.map +1 -0
  79. package/dist/client/floatingips-Ci4jHkaG.mjs +591 -0
  80. package/dist/client/floatingips-Ci4jHkaG.mjs.map +1 -0
  81. package/dist/client/formatBytes-CZv_XyCY.mjs.map +1 -1
  82. package/dist/client/helpers-1PpYf-fC.mjs.map +1 -1
  83. package/dist/client/hooks/useAvailableViewportHeight.d.ts +8 -5
  84. package/dist/client/hooks/useVirtualizedTableBody.d.ts +1 -3
  85. package/dist/client/{hooks-Bw3sHHOg.mjs → hooks-LutR2Yg3.mjs} +2 -2
  86. package/dist/client/{hooks-Bw3sHHOg.mjs.map → hooks-LutR2Yg3.mjs.map} +1 -1
  87. package/dist/client/images-91U7tr9Y2.mjs +1976 -0
  88. package/dist/client/images-91U7tr9Y2.mjs.map +1 -0
  89. package/dist/client/{images-DPKUXryV.mjs → images-CS4kZQyu.mjs} +2 -2
  90. package/dist/client/{images-DPKUXryV.mjs.map → images-CS4kZQyu.mjs.map} +1 -1
  91. package/dist/client/images-NBf2bV43.mjs.map +1 -1
  92. package/dist/client/index.d.ts +4 -1
  93. package/dist/client/index.js +559 -545
  94. package/dist/client/index.js.map +1 -1
  95. package/dist/client/{md-CyCflQee.mjs → md-kvaGCNAK.mjs} +6 -78
  96. package/dist/client/{md-CyCflQee.mjs.map → md-kvaGCNAK.mjs.map} +1 -1
  97. package/dist/client/network-DuZm76BZ.mjs.map +1 -1
  98. package/dist/client/objects-C3azvW8m.mjs +10074 -0
  99. package/dist/client/objects-C3azvW8m.mjs.map +1 -0
  100. package/dist/client/objects-CM265S6b.mjs +56 -0
  101. package/dist/client/objects-CM265S6b.mjs.map +1 -0
  102. package/dist/client/objects-EE9Cd1wI.mjs +56 -0
  103. package/dist/client/objects-EE9Cd1wI.mjs.map +1 -0
  104. package/dist/client/projects-yiK0HGSA.mjs.map +1 -1
  105. package/dist/client/{routeInfo-CdTRlSxv.mjs → routeInfo-DXqB2HCf.mjs} +3 -3
  106. package/dist/client/routeInfo-DXqB2HCf.mjs.map +1 -0
  107. package/dist/client/router.d.ts +2 -1
  108. package/dist/client/{routes-BOf-GDMM.mjs → routes-CBd8CCuM.mjs} +27 -24
  109. package/dist/client/routes-CBd8CCuM.mjs.map +1 -0
  110. package/dist/client/{routes-CtfnI-aY.mjs → routes-CdDm-hhO.mjs} +2 -2
  111. package/dist/client/{routes-CtfnI-aY.mjs.map → routes-CdDm-hhO.mjs.map} +1 -1
  112. package/dist/client/securitygroups-Bd_uV4S9.mjs +595 -0
  113. package/dist/client/securitygroups-Bd_uV4S9.mjs.map +1 -0
  114. package/dist/client/{securitygroups-B8aLyFK7.mjs → securitygroups-Byte-iSp.mjs} +2 -2
  115. package/dist/client/{securitygroups-B8aLyFK7.mjs.map → securitygroups-Byte-iSp.mjs.map} +1 -1
  116. package/dist/client/services-D1PbooD1.mjs +6 -0
  117. package/dist/client/services-D1PbooD1.mjs.map +1 -0
  118. package/dist/client/services-DEMVtFyn.mjs +9 -0
  119. package/dist/client/services-DEMVtFyn.mjs.map +1 -0
  120. package/dist/client/store/AuthProvider.d.ts +1 -1
  121. package/dist/client/{trpcClient-Di56hpVv.mjs → trpcClient-D7gpR7YG.mjs} +2 -2
  122. package/dist/client/{trpcClient-Di56hpVv.mjs.map → trpcClient-D7gpR7YG.mjs.map} +1 -1
  123. package/dist/client/trpcClient.d.ts +139 -374
  124. package/dist/client/useModal-DCs1OJh7.mjs.map +1 -1
  125. package/dist/client/{useSecurityGroupPermissions-BPS1ibWq.mjs → useSecurityGroupPermissions-C29mzb3b.mjs} +15 -15
  126. package/dist/client/{useSecurityGroupPermissions-BPS1ibWq.mjs.map → useSecurityGroupPermissions-C29mzb3b.mjs.map} +1 -1
  127. package/dist/server/index.d.ts +164 -376
  128. package/dist/server/index.js +4223 -3131
  129. package/package.json +7 -9
  130. package/dist/client/AuthProvider-CQ6Yppoh.mjs.map +0 -1
  131. package/dist/client/BucketToastNotifications-Dq4dudkM.mjs +0 -665
  132. package/dist/client/BucketToastNotifications-Dq4dudkM.mjs.map +0 -1
  133. package/dist/client/ContentHeader-9KZdhOoA.mjs.map +0 -1
  134. package/dist/client/DeleteFlavorModal-Be2qZo4w.mjs +0 -713
  135. package/dist/client/DeleteFlavorModal-Be2qZo4w.mjs.map +0 -1
  136. package/dist/client/DeletePcaModal-CIFsGWyj.mjs +0 -80
  137. package/dist/client/DeletePcaModal-CIFsGWyj.mjs.map +0 -1
  138. package/dist/client/DetailsInfo-CHVD7d-W.mjs +0 -52
  139. package/dist/client/DetailsInfo-CHVD7d-W.mjs.map +0 -1
  140. package/dist/client/FiltersInput-DqT08Ib-.mjs +0 -81
  141. package/dist/client/FiltersInput-DqT08Ib-.mjs.map +0 -1
  142. package/dist/client/ImageToastNotifications-BGyX2J6j.mjs +0 -1219
  143. package/dist/client/ImageToastNotifications-BGyX2J6j.mjs.map +0 -1
  144. package/dist/client/_auth-D5_QNUos.mjs.map +0 -1
  145. package/dist/client/_flavorId-BsmqS9hP.mjs +0 -194
  146. package/dist/client/_flavorId-BsmqS9hP.mjs.map +0 -1
  147. package/dist/client/_floatingIpId-Bb9ZEJ6b.mjs +0 -228
  148. package/dist/client/_floatingIpId-Bb9ZEJ6b.mjs.map +0 -1
  149. package/dist/client/_imageId-C3As7sHE.mjs +0 -534
  150. package/dist/client/_imageId-C3As7sHE.mjs.map +0 -1
  151. package/dist/client/_pcaId-n0q0aDb6.mjs +0 -545
  152. package/dist/client/_pcaId-n0q0aDb6.mjs.map +0 -1
  153. package/dist/client/_projectId-BuBIFdgG.mjs +0 -291
  154. package/dist/client/_projectId-BuBIFdgG.mjs.map +0 -1
  155. package/dist/client/_projectId-DNZsNxJw.mjs +0 -98
  156. package/dist/client/_projectId-DNZsNxJw.mjs.map +0 -1
  157. package/dist/client/_securityGroupId-DFdNKa2l.mjs.map +0 -1
  158. package/dist/client/_storageType-Cn7TSOki.mjs +0 -81
  159. package/dist/client/_storageType-Cn7TSOki.mjs.map +0 -1
  160. package/dist/client/_storageType-_8Ambhxc.mjs +0 -2859
  161. package/dist/client/_storageType-_8Ambhxc.mjs.map +0 -1
  162. package/dist/client/about-C8tTrQaW.mjs.map +0 -1
  163. package/dist/client/assets/objectDownload.worker-BAc5Au4B.js.map +0 -1
  164. package/dist/client/aurora-jyvXcI4T.mjs.map +0 -1
  165. package/dist/client/build-CRLQyqu2.mjs.map +0 -1
  166. package/dist/client/flavors-BfTXqmoD.mjs.map +0 -1
  167. package/dist/client/floatingips-zhNK6Xxn.mjs +0 -562
  168. package/dist/client/floatingips-zhNK6Xxn.mjs.map +0 -1
  169. package/dist/client/images-DhZnqUG_.mjs +0 -1890
  170. package/dist/client/images-DhZnqUG_.mjs.map +0 -1
  171. package/dist/client/objects-B3mbk6V0.mjs +0 -6636
  172. package/dist/client/objects-B3mbk6V0.mjs.map +0 -1
  173. package/dist/client/objects-BQ8xvSW8.mjs +0 -103
  174. package/dist/client/objects-BQ8xvSW8.mjs.map +0 -1
  175. package/dist/client/objects-o2Cj_ndZ.mjs +0 -8
  176. package/dist/client/objects-o2Cj_ndZ.mjs.map +0 -1
  177. package/dist/client/pca-B60iWWfG.mjs +0 -251
  178. package/dist/client/pca-B60iWWfG.mjs.map +0 -1
  179. package/dist/client/pca-D0kKxHp4.mjs +0 -25
  180. package/dist/client/pca-D0kKxHp4.mjs.map +0 -1
  181. package/dist/client/pcaAccess-Br4kVjLQ.mjs +0 -9
  182. package/dist/client/pcaAccess-Br4kVjLQ.mjs.map +0 -1
  183. package/dist/client/routeInfo-CdTRlSxv.mjs.map +0 -1
  184. package/dist/client/routes-BOf-GDMM.mjs.map +0 -1
  185. package/dist/client/securitygroups-DRhFle2O.mjs +0 -589
  186. package/dist/client/securitygroups-DRhFle2O.mjs.map +0 -1
  187. package/dist/client/useListWithFiltering-aPTUNRaW.mjs +0 -32
  188. package/dist/client/useListWithFiltering-aPTUNRaW.mjs.map +0 -1
@@ -0,0 +1,721 @@
1
+ import { E as e, F as t, J as n, S as r, T as i, W as a, X as o, a as s, j as c, m as l, n as u, o as d, s as f, t as p } from "./build-C_4vRMCq.mjs";
2
+ import { Fragment as m, jsx as h, jsxs as g } from "react/jsx-runtime";
3
+ import _, { Fragment as v, Suspense as y, startTransition as b, use as x, useEffect as S, useMemo as C, useState as w } from "react";
4
+ import { Trans as T, useLingui as E } from "@lingui/react";
5
+ import { ErrorBoundary as D } from "react-error-boundary";
6
+ //#region src/client/utils/useErrorTranslation.ts
7
+ var O = () => {
8
+ let { i18n: e, _: t } = E();
9
+ return {
10
+ translateError: (t) => {
11
+ switch (t) {
12
+ case "FLAVORS_UNAUTHORIZED": return e._({ id: "1iUuTT" });
13
+ case "FLAVORS_FORBIDDEN": return e._({ id: "mSLePW" });
14
+ case "FLAVORS_NOT_FOUND": return e._({ id: "EQnVgi" });
15
+ case "FLAVORS_SERVER_ERROR": return e._({ id: "Hivb/4" });
16
+ case "FLAVORS_FETCH_FAILED": return e._({ id: "EztMB8" });
17
+ case "FLAVORS_PARSE_ERROR": return e._({ id: "t1fq6V" });
18
+ case "GET_FLAVOR_DETAILS_UNAUTHORIZED": return e._({ id: "zCD96i" });
19
+ case "GET_FLAVOR_DETAILS_FORBIDDEN": return e._({ id: "/9Squ9" });
20
+ case "GET_FLAVOR_DETAILS_NOT_FOUND": return e._({ id: "HxTYrE" });
21
+ case "GET_FLAVOR_DETAILS_SERVER_ERROR": return e._({ id: "KJC+M7" });
22
+ case "GET_FLAVOR_DETAILS_INVALID_ID": return e._({ id: "YUU0QW" });
23
+ case "GET_FLAVOR_DETAILS_PARSE_ERROR": return e._({ id: "ZUmOzn" });
24
+ case "GET_FLAVOR_DETAILS_FAILED": return e._({ id: "RCr0yv" });
25
+ case "CREATE_FLAVOR_INVALID_DATA": return e._({ id: "0kCt7e" });
26
+ case "CREATE_FLAVOR_UNAUTHORIZED": return e._({ id: "oDkgME" });
27
+ case "CREATE_FLAVOR_FORBIDDEN": return e._({ id: "cPKL6O" });
28
+ case "CREATE_FLAVOR_CONFLICT": return e._({ id: "OlmKCg" });
29
+ case "CREATE_FLAVOR_SERVER_ERROR": return e._({ id: "qaAo9Y" });
30
+ case "CREATE_FLAVOR_FAILED": return e._({ id: "QuJSSl" });
31
+ case "DELETE_FLAVOR_UNAUTHORIZED": return e._({ id: "2gH+i8" });
32
+ case "DELETE_FLAVOR_FORBIDDEN": return e._({ id: "EPMHs9" });
33
+ case "DELETE_FLAVOR_NOT_FOUND": return e._({ id: "rIi6x4" });
34
+ case "DELETE_FLAVOR_SERVER_ERROR": return e._({ id: "tASa/P" });
35
+ case "DELETE_FLAVOR_FAILED": return e._({ id: "h3P8z+" });
36
+ case "DELETE_FLAVOR_INVALID_ID": return e._({ id: "YUU0QW" });
37
+ case "CREATE_EXTRA_SPECS_UNAUTHORIZED": return e._({ id: "RTQFAw" });
38
+ case "CREATE_EXTRA_SPECS_FORBIDDEN": return e._({ id: "kGmM/p" });
39
+ case "CREATE_EXTRA_SPECS_NOT_FOUND": return e._({ id: "HxTYrE" });
40
+ case "CREATE_EXTRA_SPECS_CONFLICT": return e._({ id: "6oolxV" });
41
+ case "CREATE_EXTRA_SPECS_INVALID_DATA": return e._({ id: "JoECY1" });
42
+ case "CREATE_EXTRA_SPECS_SERVER_ERROR": return e._({ id: "jMc/mo" });
43
+ case "CREATE_EXTRA_SPECS_PARSE_ERROR": return e._({ id: "07WXfc" });
44
+ case "CREATE_EXTRA_SPECS_FAILED": return e._({ id: "7BpykL" });
45
+ case "GET_EXTRA_SPECS_UNAUTHORIZED": return e._({ id: "3nWqQW" });
46
+ case "GET_EXTRA_SPECS_FORBIDDEN": return e._({ id: "wcUecy" });
47
+ case "GET_EXTRA_SPECS_NOT_FOUND": return e._({ id: "M470oJ" });
48
+ case "GET_EXTRA_SPECS_SERVER_ERROR": return e._({ id: "tIrNgH" });
49
+ case "GET_EXTRA_SPECS_PARSE_ERROR": return e._({ id: "07WXfc" });
50
+ case "GET_EXTRA_SPECS_FAILED": return e._({ id: "lhIa6x" });
51
+ case "DELETE_EXTRA_SPEC_UNAUTHORIZED": return e._({ id: "dVdc7N" });
52
+ case "DELETE_EXTRA_SPEC_FORBIDDEN": return e._({ id: "YrAy/S" });
53
+ case "DELETE_EXTRA_SPEC_NOT_FOUND": return e._({ id: "vBUQNE" });
54
+ case "DELETE_EXTRA_SPEC_SERVER_ERROR": return e._({ id: "0kc0zi" });
55
+ case "DELETE_EXTRA_SPEC_INVALID_KEY": return e._({ id: "ylfbpz" });
56
+ case "DELETE_EXTRA_SPEC_FAILED": return e._({ id: "TfdeUd" });
57
+ case "GET_FLAVOR_ACCESS_UNAUTHORIZED": return e._({ id: "Mt6sRo" });
58
+ case "GET_FLAVOR_ACCESS_FORBIDDEN": return e._({ id: "MbKJNP" });
59
+ case "GET_FLAVOR_ACCESS_NOT_FOUND": return e._({ id: "HxTYrE" });
60
+ case "GET_FLAVOR_ACCESS_SERVER_ERROR": return e._({ id: "YsOJlj" });
61
+ case "GET_FLAVOR_ACCESS_FAILED": return e._({ id: "bISG26" });
62
+ case "ADD_TENANT_ACCESS_FAILED": return e._({ id: "rIe0oV" });
63
+ case "ADD_TENANT_ACCESS_INVALID_DATA": return e._({ id: "gztCjq" });
64
+ case "ADD_TENANT_ACCESS_UNAUTHORIZED": return e._({ id: "+Lt5cp" });
65
+ case "ADD_TENANT_ACCESS_FORBIDDEN": return e._({ id: "8s0tOH" });
66
+ case "ADD_TENANT_ACCESS_NOT_FOUND": return e._({ id: "1rPB1p" });
67
+ case "ADD_TENANT_ACCESS_CONFLICT": return e._({ id: "NRMm0E" });
68
+ case "ADD_TENANT_ACCESS_SERVER_ERROR": return e._({ id: "KoQP4F" });
69
+ case "REMOVE_TENANT_ACCESS_FAILED": return e._({ id: "ZhVSpK" });
70
+ case "REMOVE_TENANT_ACCESS_INVALID_DATA": return e._({ id: "gztCjq" });
71
+ case "REMOVE_TENANT_ACCESS_UNAUTHORIZED": return e._({ id: "78+riR" });
72
+ case "REMOVE_TENANT_ACCESS_FORBIDDEN": return e._({ id: "qs+BrU" });
73
+ case "REMOVE_TENANT_ACCESS_NOT_FOUND": return e._({ id: "Do5/uH" });
74
+ case "REMOVE_TENANT_ACCESS_CONFLICT": return e._({ id: "+nQTmZ" });
75
+ case "REMOVE_TENANT_ACCESS_SERVER_ERROR": return e._({ id: "0BSSYj" });
76
+ case "COMPUTE_SERVICE_UNAVAILABLE": return e._({ id: "gGdfWx" });
77
+ case "COMPUTE_SERVICE_CONNECTION_FAILED": return e._({ id: "Qg4EG6" });
78
+ default: return e._({ id: "byKna+" });
79
+ }
80
+ },
81
+ isRetryableError: (e) => ["FLAVORS_SERVER_ERROR", "FLAVORS_FETCH_FAILED"].includes(e)
82
+ };
83
+ }, k = ({ specKey: e, value: t, errors: n, isLoading: r, onKeyChange: i, onValueChange: a, onSave: u, onCancel: d }) => {
84
+ let { i18n: f, _: p } = E();
85
+ return /*#__PURE__*/ g(o, {
86
+ gap: "4",
87
+ direction: "horizontal",
88
+ alignment: "start",
89
+ className: "border-theme-background-lvl-3 border-b p-4",
90
+ children: [
91
+ /*#__PURE__*/ h(l, {
92
+ value: e,
93
+ onChange: (e) => i(e.target.value),
94
+ placeholder: f._({ id: "wPrtGF" }),
95
+ errortext: n.key,
96
+ label: f._({ id: "7sMeHQ" }),
97
+ required: !0
98
+ }),
99
+ /*#__PURE__*/ h(l, {
100
+ value: t,
101
+ onChange: (e) => a(e.target.value),
102
+ placeholder: f._({ id: "pubQie" }),
103
+ errortext: n.value,
104
+ label: f._({ id: "wMHvYH" }),
105
+ required: !0
106
+ }),
107
+ /*#__PURE__*/ g(c, {
108
+ className: "mt-6",
109
+ children: [/*#__PURE__*/ h(s, {
110
+ icon: "check",
111
+ onClick: u,
112
+ variant: "primary",
113
+ title: f._({ id: "TyODHt" }),
114
+ disabled: r
115
+ }), /*#__PURE__*/ h(s, {
116
+ icon: "cancel",
117
+ onClick: d,
118
+ title: f._({ id: "dEgA5A" }),
119
+ disabled: r
120
+ })]
121
+ })
122
+ ]
123
+ });
124
+ }, A = ({ specKey: t, value: n, isDeleting: r, onDelete: i, canDelete: o }) => {
125
+ let { i18n: c, _: l } = E(), [d, f] = w(!1);
126
+ return S(() => {
127
+ if (d) {
128
+ let e = setTimeout(() => {
129
+ f(!1);
130
+ }, 3e3);
131
+ return () => clearTimeout(e);
132
+ }
133
+ }, [d]), /*#__PURE__*/ g(v, { children: [/*#__PURE__*/ h(u, { children: t }), /*#__PURE__*/ g(e, {
134
+ className: "flex justify-between",
135
+ children: [/*#__PURE__*/ h("span", {
136
+ className: "break-all",
137
+ children: n
138
+ }), o ? r ? /*#__PURE__*/ h(a, {
139
+ variant: "primary",
140
+ size: "small"
141
+ }) : d ? /*#__PURE__*/ h(s, {
142
+ variant: "primary-danger",
143
+ onClick: () => {
144
+ f(!1), i();
145
+ },
146
+ title: c._({ id: "cnGeoo" }),
147
+ "aria-label": c._({ id: "cnGeoo" }),
148
+ "data-testid": "confirm-deletion",
149
+ size: "small",
150
+ children: c._({ id: "cnGeoo" })
151
+ }) : /*#__PURE__*/ h(s, {
152
+ icon: "deleteForever",
153
+ onClick: () => f(!0),
154
+ title: c._({
155
+ id: "2G6hLq",
156
+ values: { specKey: t }
157
+ }),
158
+ "aria-label": c._({
159
+ id: "2G6hLq",
160
+ values: { specKey: t }
161
+ }),
162
+ "data-testid": `delete-${t}`,
163
+ size: "small"
164
+ }) : null]
165
+ })] });
166
+ }, j = (e, t) => e.compute.canUser.query({
167
+ project_id: t,
168
+ permission: ["flavor_specs:create", "flavor_specs:delete"]
169
+ }).then(([e, t]) => ({
170
+ canCreate: e,
171
+ canDelete: t
172
+ })), M = (e, t, n) => e.compute.getExtraSpecs.query({
173
+ project_id: t,
174
+ flavorId: n
175
+ });
176
+ function N() {
177
+ return /*#__PURE__*/ h(o, {
178
+ distribution: "center",
179
+ alignment: "center",
180
+ className: "py-4",
181
+ children: /*#__PURE__*/ h(a, { variant: "primary" })
182
+ });
183
+ }
184
+ function P({ error: e }) {
185
+ let { i18n: n, _: r } = E(), { translateError: i } = O(), a = e instanceof Error ? i(e.message) : n._({ id: "W5A0Ly" });
186
+ return /*#__PURE__*/ h(t, {
187
+ variant: "error",
188
+ text: a
189
+ });
190
+ }
191
+ function F({ permissionsPromise: t, extraSpecsPromise: n, client: r, project: i, flavor: a, onSpecsUpdate: c, isAddingSpec: l, setIsAddingSpec: d, setMessage: p }) {
192
+ let { i18n: _, _: v } = E(), { translateError: y } = O(), b = x(t), S = x(n), [C, T] = w(S), [D, j] = w(""), [M, N] = w(""), [P, F] = w({}), [I, L] = w(null), [R, z] = w(!1), B = () => {
193
+ let e = D.trim(), t = M.trim(), n = {};
194
+ return e ? Object.keys(C).includes(e) && (n.key = "Key already exists.") : n.key = "Key is required.", t || (n.value = "Value is required."), F(n), Object.keys(n).length === 0;
195
+ }, V = () => {
196
+ j(""), N(""), F({});
197
+ }, H = async () => {
198
+ if (!R) {
199
+ if (!B()) {
200
+ p({
201
+ text: _._({ id: "CBFSfX" }),
202
+ type: "error"
203
+ });
204
+ return;
205
+ }
206
+ try {
207
+ z(!0);
208
+ let e = D.trim(), t = M.trim();
209
+ await r.compute.createExtraSpecs.mutate({
210
+ project_id: i,
211
+ flavorId: a.id,
212
+ extra_specs: { [e]: t }
213
+ });
214
+ let n = {
215
+ [e]: t,
216
+ ...C
217
+ };
218
+ T(n), c(n), p({
219
+ text: _._({
220
+ id: "2mbisJ",
221
+ values: { trimmedKey: e }
222
+ }),
223
+ type: "info"
224
+ }), V(), d(!1);
225
+ } catch (e) {
226
+ p({
227
+ text: y(e instanceof Error ? e.message : "Failed to create extra spec"),
228
+ type: "error"
229
+ });
230
+ } finally {
231
+ z(!1);
232
+ }
233
+ }
234
+ }, U = async (e) => {
235
+ try {
236
+ L(e), await r.compute.deleteExtraSpec.mutate({
237
+ project_id: i,
238
+ flavorId: a.id,
239
+ key: e
240
+ });
241
+ let t = { ...C };
242
+ delete t[e], T(t), c(t), p({
243
+ text: _._({
244
+ id: "7UlHhT",
245
+ values: { keyToDelete: e }
246
+ }),
247
+ type: "info"
248
+ });
249
+ } catch (t) {
250
+ p({
251
+ text: y(t instanceof Error ? t.message : `Failed to delete extra spec "${e}"`),
252
+ type: "error"
253
+ });
254
+ } finally {
255
+ L(null);
256
+ }
257
+ }, W = (e) => {
258
+ j(e), P.key && F((e) => ({
259
+ ...e,
260
+ key: void 0
261
+ }));
262
+ }, G = (e) => {
263
+ N(e), P.value && F((e) => ({
264
+ ...e,
265
+ value: void 0
266
+ }));
267
+ }, K = Object.keys(C).length === 0 && !l;
268
+ return /*#__PURE__*/ g(m, { children: [
269
+ b.canCreate && /*#__PURE__*/ h(o, {
270
+ direction: "horizontal",
271
+ className: "bg-theme-background-lvl-1 mb-4 justify-end p-2",
272
+ children: /*#__PURE__*/ h(s, {
273
+ label: _._({ id: "u7En0V" }),
274
+ "data-testid": "addExtraButton",
275
+ onClick: () => d(!0),
276
+ variant: "primary",
277
+ disabled: l
278
+ })
279
+ }),
280
+ l && /*#__PURE__*/ h(k, {
281
+ specKey: D,
282
+ value: M,
283
+ errors: P,
284
+ isLoading: R,
285
+ onKeyChange: W,
286
+ onValueChange: G,
287
+ onSave: H,
288
+ onCancel: () => {
289
+ V(), d(!1), p(null);
290
+ }
291
+ }),
292
+ K ? /*#__PURE__*/ h("p", {
293
+ className: "text-theme-default py-4 text-center",
294
+ children: _._({ id: "S3olSf" })
295
+ }) : /*#__PURE__*/ g(f, { children: [
296
+ /*#__PURE__*/ h(u, { children: _._({ id: "7sMeHQ" }) }),
297
+ /*#__PURE__*/ h(e, { children: _._({ id: "wMHvYH" }) }),
298
+ /*#__PURE__*/ h(m, { children: Object.entries(C).map(([e, t]) => /*#__PURE__*/ h(A, {
299
+ specKey: e,
300
+ value: t,
301
+ isDeleting: I === e,
302
+ onDelete: () => U(e),
303
+ canDelete: b.canDelete
304
+ }, e)) })
305
+ ] })
306
+ ] });
307
+ }
308
+ var I = ({ client: e, isOpen: r, onClose: i, project: a, flavor: o, canEdit: s }) => {
309
+ let { i18n: c, _: l } = E(), [u, d] = w(null), [f, p] = w(!1), [m, v] = w(null), [x, S] = w(s), C = _.useMemo(() => r ? s === void 0 ? j(e, a) : Promise.resolve({
310
+ canCreate: s,
311
+ canDelete: s
312
+ }) : null, [
313
+ e,
314
+ a,
315
+ r,
316
+ s
317
+ ]);
318
+ _.useEffect(() => {
319
+ if (s !== void 0) {
320
+ S(s);
321
+ return;
322
+ }
323
+ C?.then(({ canCreate: e, canDelete: t }) => S(e || t));
324
+ }, [C, s]);
325
+ let T = x ? c._({ id: "SIfYq6" }) : c._({ id: "6GBt0m" });
326
+ return _.useEffect(() => {
327
+ r && o?.id && b(() => {
328
+ v(M(e, a, o.id));
329
+ });
330
+ }, [
331
+ r,
332
+ o?.id,
333
+ e,
334
+ a
335
+ ]), !r || !o || !C || !m ? null : /*#__PURE__*/ h(n, {
336
+ onCancel: () => {
337
+ d(null), p(!1), v(null), i();
338
+ },
339
+ title: T,
340
+ open: r,
341
+ size: "xl",
342
+ children: /*#__PURE__*/ g("div", { children: [u && /*#__PURE__*/ h(t, {
343
+ onDismiss: () => d(null),
344
+ text: u.text,
345
+ variant: u.type,
346
+ className: "mb-4"
347
+ }), /*#__PURE__*/ h(D, {
348
+ fallbackRender: ({ error: e }) => /*#__PURE__*/ h(P, { error: e }),
349
+ children: /*#__PURE__*/ h(y, {
350
+ fallback: /*#__PURE__*/ h(N, {}),
351
+ children: /*#__PURE__*/ h(F, {
352
+ permissionsPromise: C,
353
+ extraSpecsPromise: m,
354
+ client: e,
355
+ project: a,
356
+ flavor: o,
357
+ onSpecsUpdate: (e) => {
358
+ b(() => {
359
+ v(Promise.resolve(e));
360
+ });
361
+ },
362
+ isAddingSpec: f,
363
+ setIsAddingSpec: p,
364
+ message: u,
365
+ setMessage: d
366
+ })
367
+ })
368
+ })] })
369
+ });
370
+ }, L = ({ tenantId: e, errors: t, isLoading: n, onTenantIdChange: r, onSave: a, onCancel: o }) => {
371
+ let { i18n: u, _: d } = E();
372
+ return /*#__PURE__*/ g(i, { children: [/*#__PURE__*/ h(p, {
373
+ className: "pl-0",
374
+ children: /*#__PURE__*/ h(l, {
375
+ value: e,
376
+ onChange: (e) => r(e.target.value),
377
+ placeholder: u._({ id: "wa1Bcq" }),
378
+ errortext: t.tenantId,
379
+ required: !0
380
+ })
381
+ }), /*#__PURE__*/ h(p, { children: /*#__PURE__*/ g(c, { children: [/*#__PURE__*/ h(s, {
382
+ icon: "check",
383
+ onClick: a,
384
+ variant: "primary",
385
+ title: u._({ id: "q0Rla3" }),
386
+ disabled: n
387
+ }), /*#__PURE__*/ h(s, {
388
+ icon: "cancel",
389
+ onClick: o,
390
+ title: u._({ id: "dEgA5A" }),
391
+ disabled: n
392
+ })] }) })] });
393
+ }, R = ({ access: e, isDeleting: t, onDelete: n, canDelete: r }) => {
394
+ let { i18n: c, _: l } = E(), [u, d] = w(!1);
395
+ S(() => {
396
+ if (u) {
397
+ let e = setTimeout(() => {
398
+ d(!1);
399
+ }, 3e3);
400
+ return () => clearTimeout(e);
401
+ }
402
+ }, [u]);
403
+ let f = () => {
404
+ d(!1), n();
405
+ };
406
+ return /*#__PURE__*/ g(i, { children: [/*#__PURE__*/ h(p, {
407
+ className: "break-all",
408
+ children: e.tenant_id
409
+ }), /*#__PURE__*/ h(p, { children: t ? /*#__PURE__*/ h(o, {
410
+ distribution: "center",
411
+ alignment: "center",
412
+ children: /*#__PURE__*/ h(a, { variant: "primary" })
413
+ }) : /*#__PURE__*/ h(o, {
414
+ distribution: "end",
415
+ alignment: "end",
416
+ children: (() => {
417
+ if (!r) return /*#__PURE__*/ h(m, {});
418
+ if (u) return /*#__PURE__*/ h(s, {
419
+ variant: "primary-danger",
420
+ onClick: f,
421
+ title: c._({ id: "w9+8d7" }),
422
+ "aria-label": c._({ id: "w9+8d7" }),
423
+ "data-testid": "confirm-removal",
424
+ disabled: t,
425
+ children: c._({ id: "t/YqKh" })
426
+ });
427
+ {
428
+ let n = e.tenant_id;
429
+ return /*#__PURE__*/ h(s, {
430
+ icon: "deleteForever",
431
+ onClick: () => d(!0),
432
+ title: c._({
433
+ id: "tfxu04",
434
+ values: { tenantId: n }
435
+ }),
436
+ "aria-label": c._({
437
+ id: "tfxu04",
438
+ values: { tenantId: n }
439
+ }),
440
+ "data-testid": `remove-${n}`,
441
+ disabled: t
442
+ });
443
+ }
444
+ })()
445
+ }) })] });
446
+ }, z = (e, t) => e.compute.canUser.query({
447
+ project_id: t,
448
+ permission: ["flavors:add_project", "flavors:remove_project"]
449
+ }).then(([e, t]) => ({
450
+ canAdd: e,
451
+ canRemove: t
452
+ })), B = (e, t, n) => e.compute.getFlavorAccess.query({
453
+ project_id: t,
454
+ flavorId: n
455
+ });
456
+ function V() {
457
+ return /*#__PURE__*/ h(i, { children: /*#__PURE__*/ h(p, {
458
+ colSpan: 2,
459
+ children: /*#__PURE__*/ h(o, {
460
+ distribution: "center",
461
+ alignment: "center",
462
+ children: /*#__PURE__*/ h(a, { variant: "primary" })
463
+ })
464
+ }) });
465
+ }
466
+ function H({ permissionsPromise: e, flavorAccessPromise: t, client: n, project: a, flavor: c, onAccessUpdate: l, isAddingAccess: u, setIsAddingAccess: f, setMessage: _ }) {
467
+ let { i18n: v, _: y } = E(), { translateError: b } = O(), S = x(e), C = x(t), [T, D] = w(""), [k, A] = w({}), [j, M] = w(/* @__PURE__ */ new Set()), [N, P] = w(!1), F = c["os-flavor-access:is_public"] !== !1, I = C.length === 0 && !u, z = () => {
468
+ let e = T.trim(), t = {};
469
+ return e ? C.some((t) => t.tenant_id === e) && (t.tenantId = "This tenant already has access to this flavor.") : t.tenantId = "Tenant ID is required.", A(t), Object.keys(t).length === 0;
470
+ }, B = () => {
471
+ D(""), A({});
472
+ }, V = async () => {
473
+ if (!z()) {
474
+ _({
475
+ text: v._({ id: "CBFSfX" }),
476
+ type: "error"
477
+ });
478
+ return;
479
+ }
480
+ P(!0);
481
+ try {
482
+ let e = T.trim();
483
+ l(await n.compute.addTenantAccess.mutate({
484
+ project_id: a,
485
+ flavorId: c.id,
486
+ targetProjectId: e
487
+ })), _({
488
+ text: v._({
489
+ id: "7flw0l",
490
+ values: { trimmedTenantId: e }
491
+ }),
492
+ type: "info"
493
+ }), B(), f(!1);
494
+ } catch (e) {
495
+ let t = e?.message || "Failed to add tenant access";
496
+ _({
497
+ text: b(t || "Failed to add tenant access"),
498
+ type: "error"
499
+ });
500
+ } finally {
501
+ P(!1);
502
+ }
503
+ }, H = async (e) => {
504
+ M((t) => new Set(t).add(e));
505
+ try {
506
+ l(await n.compute.removeTenantAccess.mutate({
507
+ project_id: a,
508
+ flavorId: c.id,
509
+ targetProjectId: e
510
+ })), _({
511
+ text: v._({
512
+ id: "rvXsSb",
513
+ values: { tenantIdToRemove: e }
514
+ }),
515
+ type: "info"
516
+ });
517
+ } catch (t) {
518
+ let n = t?.message || "Failed to remove tenant access";
519
+ _({
520
+ text: b(n || `Failed to remove tenant access for "${e}"`),
521
+ type: "error"
522
+ });
523
+ } finally {
524
+ M((t) => {
525
+ let n = new Set(t);
526
+ return n.delete(e), n;
527
+ });
528
+ }
529
+ };
530
+ return F ? /*#__PURE__*/ g(d, {
531
+ columns: 2,
532
+ children: [/*#__PURE__*/ g(i, { children: [/*#__PURE__*/ h(r, { children: v._({ id: "T9Mtpi" }) }), /*#__PURE__*/ h(r, { children: " " })] }), /*#__PURE__*/ h(i, { children: /*#__PURE__*/ h(p, {
533
+ colSpan: 2,
534
+ className: "text-theme-default py-4 text-center",
535
+ children: v._({ id: "9x6EkK" })
536
+ }) })]
537
+ }) : /*#__PURE__*/ g(m, { children: [S.canAdd && /*#__PURE__*/ h(o, {
538
+ direction: "horizontal",
539
+ className: "bg-theme-background-lvl-1 justify-end p-2",
540
+ children: /*#__PURE__*/ h(s, {
541
+ label: v._({ id: "q0Rla3" }),
542
+ "data-testid": "addTenantButton",
543
+ onClick: () => f(!0),
544
+ variant: "primary",
545
+ disabled: u
546
+ })
547
+ }), /*#__PURE__*/ g(d, {
548
+ columns: 2,
549
+ children: [
550
+ /*#__PURE__*/ g(i, { children: [/*#__PURE__*/ h(r, { children: v._({ id: "T9Mtpi" }) }), /*#__PURE__*/ h(r, {})] }),
551
+ u && /*#__PURE__*/ h(L, {
552
+ tenantId: T,
553
+ errors: k,
554
+ isLoading: N,
555
+ onTenantIdChange: (e) => {
556
+ D(e), k.tenantId && A((e) => ({
557
+ ...e,
558
+ tenantId: void 0
559
+ }));
560
+ },
561
+ onSave: V,
562
+ onCancel: () => {
563
+ B(), f(!1), _(null);
564
+ }
565
+ }),
566
+ C.map((e) => /*#__PURE__*/ h(R, {
567
+ access: e,
568
+ isDeleting: j.has(e.tenant_id),
569
+ onDelete: () => H(e.tenant_id),
570
+ canDelete: S.canRemove
571
+ }, e.tenant_id)),
572
+ I && /*#__PURE__*/ h(i, { children: /*#__PURE__*/ h(p, {
573
+ colSpan: 2,
574
+ className: "text-theme-default py-4 text-center",
575
+ children: v._({ id: "Gyd3No" })
576
+ }) })
577
+ ]
578
+ })] });
579
+ }
580
+ var U = ({ client: e, isOpen: r, onClose: i, project: a, flavor: o }) => {
581
+ let { i18n: s, _: c } = E(), { translateError: l } = O(), [u, d] = w(null), [f, p] = w(!1), m = C(() => r ? z(e, a) : null, [
582
+ e,
583
+ a,
584
+ r
585
+ ]), _ = C(() => !r || !o?.id ? null : B(e, a, o.id).then((e) => e.filter((e, t, n) => n.findIndex((t) => t.tenant_id === e.tenant_id) === t)).catch((e) => {
586
+ let t = l(e?.message || "GET_FLAVOR_ACCESS_FAILED");
587
+ return d({
588
+ text: t,
589
+ type: "error"
590
+ }), [];
591
+ }), [
592
+ r,
593
+ o?.id,
594
+ e,
595
+ a
596
+ ]);
597
+ S(() => {
598
+ r && d(null);
599
+ }, [r, o?.id]);
600
+ let [v, x] = w(null), T = `${r}-${o?.id}`, D = v?.key === T ? v.promise : _, k = () => {
601
+ d(null), p(!1), x(null), i();
602
+ }, A = (e) => {
603
+ let t = e.filter((e, t, n) => n.findIndex((t) => t.tenant_id === e.tenant_id) === t);
604
+ b(() => {
605
+ x({
606
+ key: T,
607
+ promise: Promise.resolve(t)
608
+ });
609
+ });
610
+ };
611
+ if (!r || !o || !m || !D) return null;
612
+ let j = o.name;
613
+ return /*#__PURE__*/ h(n, {
614
+ onCancel: k,
615
+ title: s._({
616
+ id: "6Rnrsz",
617
+ values: { flavorName: j }
618
+ }),
619
+ open: r,
620
+ size: "xl",
621
+ children: /*#__PURE__*/ g("div", { children: [u && /*#__PURE__*/ h(t, {
622
+ onDismiss: () => d(null),
623
+ text: u.text,
624
+ variant: u.type,
625
+ className: "mb-4",
626
+ dismissible: !0
627
+ }), /*#__PURE__*/ h(y, {
628
+ fallback: /*#__PURE__*/ h(V, {}),
629
+ children: /*#__PURE__*/ h(H, {
630
+ permissionsPromise: m,
631
+ flavorAccessPromise: D,
632
+ client: e,
633
+ project: a,
634
+ flavor: o,
635
+ onAccessUpdate: A,
636
+ isAddingAccess: f,
637
+ setIsAddingAccess: p,
638
+ setMessage: d
639
+ })
640
+ })] })
641
+ });
642
+ }, W = ({ client: t, isOpen: r, onClose: i, project: a, flavor: s, onSuccess: c }) => {
643
+ let { i18n: d, _: p } = E(), { translateError: m } = O(), [_, v] = w(!1), [y, b] = w(null), [x, C] = w("");
644
+ S(() => {
645
+ r || (C(""), b(null));
646
+ }, [r]);
647
+ let D = () => {
648
+ b(null), C(""), v(!1), i();
649
+ }, k = async () => {
650
+ if (!s?.id) {
651
+ b(d._({ id: "NlcF/v" }));
652
+ return;
653
+ }
654
+ b(null);
655
+ try {
656
+ v(!0), await t.compute.deleteFlavor.mutate({
657
+ project_id: a,
658
+ flavorId: s.id
659
+ }), c(), D();
660
+ } catch (e) {
661
+ let t = e?.message ? m(e.message) : d._({ id: "8zAn1f" });
662
+ b(t);
663
+ } finally {
664
+ v(!1);
665
+ }
666
+ }, A = x === "delete", j = _ ? d._({ id: "EF2EU9" }) : d._({ id: "JT3I1g" });
667
+ return /*#__PURE__*/ h(n, {
668
+ open: r,
669
+ onCancel: D,
670
+ title: d._({ id: "JT3I1g" }),
671
+ size: "large",
672
+ confirmButtonLabel: j,
673
+ confirmButtonVariant: "primary-danger",
674
+ onConfirm: k,
675
+ cancelButtonLabel: d._({ id: "dEgA5A" }),
676
+ disableConfirmButton: !A || _,
677
+ disableCancelButton: _,
678
+ disableCloseButton: _,
679
+ children: /*#__PURE__*/ g(o, {
680
+ direction: "vertical",
681
+ gap: "4",
682
+ children: [
683
+ y && /*#__PURE__*/ h("p", {
684
+ className: "text-theme-error",
685
+ role: "alert",
686
+ "aria-live": "assertive",
687
+ children: y
688
+ }),
689
+ /*#__PURE__*/ h("p", {
690
+ className: "text-theme-default",
691
+ children: /*#__PURE__*/ h(T, { id: "QQ8wUG" })
692
+ }),
693
+ s && /*#__PURE__*/ g(f, { children: [
694
+ /*#__PURE__*/ h(u, { children: d._({ id: "6YtxFj" }) }),
695
+ /*#__PURE__*/ h(e, { children: s.name }),
696
+ /*#__PURE__*/ h(u, { children: d._({ id: "S0kLOH" }) }),
697
+ /*#__PURE__*/ h(e, { children: s.id }),
698
+ /*#__PURE__*/ h(u, { children: d._({ id: "MZGbkp" }) }),
699
+ /*#__PURE__*/ h(e, { children: s.vcpus }),
700
+ /*#__PURE__*/ h(u, { children: d._({ id: "RGhYAo" }) }),
701
+ /*#__PURE__*/ g(e, { children: [s.ram, " MiB"] }),
702
+ /*#__PURE__*/ h(u, { children: d._({ id: "sPFHpI" }) }),
703
+ /*#__PURE__*/ g(e, { children: [s.disk, " GiB"] }),
704
+ /*#__PURE__*/ h(u, { children: d._({ id: "vH2C/2" }) }),
705
+ /*#__PURE__*/ h(e, { children: s.swap === 0 || s.swap === "" ? /*#__PURE__*/ h(T, { id: "EdQY6l" }) : `${Number(s.swap)} MiB` })
706
+ ] }),
707
+ /*#__PURE__*/ h("div", { children: /*#__PURE__*/ h(l, {
708
+ label: d._({ id: "QytzQr" }),
709
+ value: x,
710
+ onChange: (e) => C(e.target.value),
711
+ placeholder: "delete",
712
+ autoFocus: !0
713
+ }) })
714
+ ]
715
+ })
716
+ });
717
+ };
718
+ //#endregion
719
+ export { O as i, U as n, I as r, W as t };
720
+
721
+ //# sourceMappingURL=DeleteFlavorModal-BP83t9zX.mjs.map