@cobaltcore-dev/aurora 1.0.0 → 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 (127) hide show
  1. package/dist/client/App.d.ts +2 -1
  2. package/dist/client/AuroraApp.d.ts +25 -0
  3. package/dist/client/{AuthProvider-5TyZKZkx.mjs → AuthProvider-BS5OVv8n.mjs} +2 -2
  4. package/dist/client/AuthProvider-BS5OVv8n.mjs.map +1 -0
  5. package/dist/client/{ContentHeader-D64NtKvo.mjs → ContentHeader-BHMUzd9H.mjs} +16 -16
  6. package/dist/client/{ContentHeader-D64NtKvo.mjs.map → ContentHeader-BHMUzd9H.mjs.map} +1 -1
  7. package/dist/client/{DeleteFlavorModal-C2K43ABZ.mjs → DeleteFlavorModal-BP83t9zX.mjs} +283 -294
  8. package/dist/client/DeleteFlavorModal-BP83t9zX.mjs.map +1 -0
  9. package/dist/client/{FiltersInput-Bw8TFfwb.mjs → FiltersInput-B8CNBg1L.mjs} +23 -23
  10. package/dist/client/{FiltersInput-Bw8TFfwb.mjs.map → FiltersInput-B8CNBg1L.mjs.map} +1 -1
  11. package/dist/client/{FloatingIpActionModals-BfEDfYg9.mjs → FloatingIpActionModals-BraiJWBi.mjs} +48 -48
  12. package/dist/client/{FloatingIpActionModals-BfEDfYg9.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-B-NPGIv7.mjs → RouteError-hAF8_jbe.mjs} +2 -2
  16. package/dist/client/{RouteError-B-NPGIv7.mjs.map → RouteError-hAF8_jbe.mjs.map} +1 -1
  17. package/dist/client/{SortInput-DysAXpB3.mjs → SortInput-Cqs2poV3.mjs} +7 -7
  18. package/dist/client/{SortInput-DysAXpB3.mjs.map → SortInput-Cqs2poV3.mjs.map} +1 -1
  19. package/dist/client/{StatusError-DX-GvLjq.mjs → StatusError-C5KodQOq.mjs} +4 -4
  20. package/dist/client/{StatusError-DX-GvLjq.mjs.map → StatusError-C5KodQOq.mjs.map} +1 -1
  21. package/dist/client/{TwoColumnDescriptionList-B3xunXmz.mjs → TwoColumnDescriptionList-DiDx3PnH.mjs} +6 -6
  22. package/dist/client/{TwoColumnDescriptionList-B3xunXmz.mjs.map → TwoColumnDescriptionList-DiDx3PnH.mjs.map} +1 -1
  23. package/dist/client/{_auth-R5H2yKFf.mjs → _auth-DJ9wHZaj.mjs} +2 -2
  24. package/dist/client/{_auth-R5H2yKFf.mjs.map → _auth-DJ9wHZaj.mjs.map} +1 -1
  25. package/dist/client/{_flavorId-Zj7LNL-R.mjs → _flavorId-BN_qessZ.mjs} +2 -2
  26. package/dist/client/{_flavorId-Zj7LNL-R.mjs.map → _flavorId-BN_qessZ.mjs.map} +1 -1
  27. package/dist/client/{_flavorId-Dit5mM8I.mjs → _flavorId-CJjEB_Ao.mjs} +34 -34
  28. package/dist/client/{_flavorId-Dit5mM8I.mjs.map → _flavorId-CJjEB_Ao.mjs.map} +1 -1
  29. package/dist/client/{_floatingIpId-DCQQpNO-.mjs → _floatingIpId-CwDGHkWm.mjs} +2 -2
  30. package/dist/client/{_floatingIpId-DCQQpNO-.mjs.map → _floatingIpId-CwDGHkWm.mjs.map} +1 -1
  31. package/dist/client/{_floatingIpId-B0MCoqE3.mjs → _floatingIpId-foMIwbE4.mjs} +23 -23
  32. package/dist/client/{_floatingIpId-B0MCoqE3.mjs.map → _floatingIpId-foMIwbE4.mjs.map} +1 -1
  33. package/dist/client/_imageId-BtJ7GmYB.mjs +558 -0
  34. package/dist/client/{_imageId-CZYzBAVx.mjs.map → _imageId-BtJ7GmYB.mjs.map} +1 -1
  35. package/dist/client/{_projectId-DhSWowQo.mjs → _projectId-BmtCuzJu.mjs} +4 -4
  36. package/dist/client/{_projectId-DhSWowQo.mjs.map → _projectId-BmtCuzJu.mjs.map} +1 -1
  37. package/dist/client/_projectId-Byt3GQDW.mjs +99 -0
  38. package/dist/client/_projectId-Byt3GQDW.mjs.map +1 -0
  39. package/dist/client/_projectId-NYk1IN_a.mjs +291 -0
  40. package/dist/client/_projectId-NYk1IN_a.mjs.map +1 -0
  41. package/dist/client/{_projectId-D2pFfYIs.mjs → _projectId-QueiFczy.mjs} +3 -3
  42. package/dist/client/{_projectId-D2pFfYIs.mjs.map → _projectId-QueiFczy.mjs.map} +1 -1
  43. package/dist/client/{_securityGroupId-Mj8NJT2-.mjs → _securityGroupId-BcbkRhsN.mjs} +2 -2
  44. package/dist/client/{_securityGroupId-Mj8NJT2-.mjs.map → _securityGroupId-BcbkRhsN.mjs.map} +1 -1
  45. package/dist/client/{_securityGroupId-DZ4D4WwB.mjs → _securityGroupId-pPtJsCoe.mjs} +438 -442
  46. package/dist/client/{_securityGroupId-DZ4D4WwB.mjs.map → _securityGroupId-pPtJsCoe.mjs.map} +1 -1
  47. package/dist/client/_storageType-BmqrU06i.mjs +2202 -0
  48. package/dist/client/_storageType-BmqrU06i.mjs.map +1 -0
  49. package/dist/client/{about-WLyShNgE.mjs → about-_73VmpTB.mjs} +2 -2
  50. package/dist/client/{about-WLyShNgE.mjs.map → about-_73VmpTB.mjs.map} +1 -1
  51. package/dist/client/assets/{objectDownload.worker-BXFQIIU_.js.map → objectDownload.worker-CWWLPDyb.js.map} +1 -1
  52. package/dist/client/assets/{objectDownload.worker-ECvFtmOF.js.map → objectDownload.worker-kZlQuo3F.js.map} +1 -1
  53. package/dist/client/{aurora-IMO9HhqJ.mjs → aurora-EbwGRLLf.mjs} +2 -2
  54. package/dist/client/{aurora-IMO9HhqJ.mjs.map → aurora-EbwGRLLf.mjs.map} +1 -1
  55. package/dist/client/{build-DnD-T35u.mjs → build-C_4vRMCq.mjs} +2233 -2662
  56. package/dist/client/{build-DnD-T35u.mjs.map → build-C_4vRMCq.mjs.map} +1 -1
  57. package/dist/client/{flavors-Cp0LEGOH.mjs → flavors-CiHCYrtZ.mjs} +2 -2
  58. package/dist/client/{flavors-Cp0LEGOH.mjs.map → flavors-CiHCYrtZ.mjs.map} +1 -1
  59. package/dist/client/{flavors-CwMbDRHm2.mjs → flavors-DY-bDc8l.mjs} +164 -164
  60. package/dist/client/flavors-DY-bDc8l.mjs.map +1 -0
  61. package/dist/client/{floatingips-ICwo-rV_.mjs → floatingips-Ci4jHkaG.mjs} +177 -177
  62. package/dist/client/{floatingips-ICwo-rV_.mjs.map → floatingips-Ci4jHkaG.mjs.map} +1 -1
  63. package/dist/client/{hooks-CrriowRk.mjs → hooks-LutR2Yg3.mjs} +2 -2
  64. package/dist/client/{hooks-CrriowRk.mjs.map → hooks-LutR2Yg3.mjs.map} +1 -1
  65. package/dist/client/images-91U7tr9Y2.mjs +1976 -0
  66. package/dist/client/images-91U7tr9Y2.mjs.map +1 -0
  67. package/dist/client/{images-DWiM_72I.mjs → images-CS4kZQyu.mjs} +2 -2
  68. package/dist/client/{images-DWiM_72I.mjs.map → images-CS4kZQyu.mjs.map} +1 -1
  69. package/dist/client/index.d.ts +4 -1
  70. package/dist/client/index.js +444 -586
  71. package/dist/client/index.js.map +1 -1
  72. package/dist/client/{md-DNzcRhmz.mjs → md-kvaGCNAK.mjs} +4 -22
  73. package/dist/client/{md-DNzcRhmz.mjs.map → md-kvaGCNAK.mjs.map} +1 -1
  74. package/dist/client/{objects-DeK2WD5K.mjs → objects-C3azvW8m.mjs} +2019 -2023
  75. package/dist/client/{objects-DeK2WD5K.mjs.map → objects-C3azvW8m.mjs.map} +1 -1
  76. package/dist/client/{objects-DI1-tnKr.mjs → objects-CM265S6b.mjs} +2 -2
  77. package/dist/client/{objects-DI1-tnKr.mjs.map → objects-CM265S6b.mjs.map} +1 -1
  78. package/dist/client/{objects-D2MKUCxc.mjs → objects-EE9Cd1wI.mjs} +2 -2
  79. package/dist/client/{objects-D2MKUCxc.mjs.map → objects-EE9Cd1wI.mjs.map} +1 -1
  80. package/dist/client/{routeInfo-CdTRlSxv.mjs → routeInfo-DXqB2HCf.mjs} +3 -3
  81. package/dist/client/routeInfo-DXqB2HCf.mjs.map +1 -0
  82. package/dist/client/router.d.ts +2 -1
  83. package/dist/client/{routes-DOJr5onJ.mjs → routes-CBd8CCuM.mjs} +13 -13
  84. package/dist/client/{routes-DOJr5onJ.mjs.map → routes-CBd8CCuM.mjs.map} +1 -1
  85. package/dist/client/{routes-B05u5bk4.mjs → routes-CdDm-hhO.mjs} +2 -2
  86. package/dist/client/{routes-B05u5bk4.mjs.map → routes-CdDm-hhO.mjs.map} +1 -1
  87. package/dist/client/{securitygroups-Be2Qgmew.mjs → securitygroups-Bd_uV4S9.mjs} +198 -198
  88. package/dist/client/{securitygroups-Be2Qgmew.mjs.map → securitygroups-Bd_uV4S9.mjs.map} +1 -1
  89. package/dist/client/{securitygroups-_7SYN2jN.mjs → securitygroups-Byte-iSp.mjs} +2 -2
  90. package/dist/client/{securitygroups-_7SYN2jN.mjs.map → securitygroups-Byte-iSp.mjs.map} +1 -1
  91. package/dist/client/services-D1PbooD1.mjs +6 -0
  92. package/dist/client/services-D1PbooD1.mjs.map +1 -0
  93. package/dist/client/services-DEMVtFyn.mjs +9 -0
  94. package/dist/client/services-DEMVtFyn.mjs.map +1 -0
  95. package/dist/client/trpcClient.d.ts +18 -367
  96. package/dist/client/{useSecurityGroupPermissions-qPwm4mFt.mjs → useSecurityGroupPermissions-C29mzb3b.mjs} +15 -15
  97. package/dist/client/{useSecurityGroupPermissions-qPwm4mFt.mjs.map → useSecurityGroupPermissions-C29mzb3b.mjs.map} +1 -1
  98. package/dist/server/index.d.ts +43 -369
  99. package/dist/server/index.js +71 -276
  100. package/package.json +1 -3
  101. package/dist/client/AuthProvider-5TyZKZkx.mjs.map +0 -1
  102. package/dist/client/DeleteFlavorModal-C2K43ABZ.mjs.map +0 -1
  103. package/dist/client/DeletePcaModal-D9v8E0Ki.mjs +0 -92
  104. package/dist/client/DeletePcaModal-D9v8E0Ki.mjs.map +0 -1
  105. package/dist/client/DetailsInfo-h7rPJ4Jf.mjs +0 -61
  106. package/dist/client/DetailsInfo-h7rPJ4Jf.mjs.map +0 -1
  107. package/dist/client/ImageToastNotifications-C0Tluzq-.mjs +0 -1125
  108. package/dist/client/ImageToastNotifications-C0Tluzq-.mjs.map +0 -1
  109. package/dist/client/_imageId-CZYzBAVx.mjs +0 -558
  110. package/dist/client/_pcaId-CHRRsWmO.mjs +0 -605
  111. package/dist/client/_pcaId-CHRRsWmO.mjs.map +0 -1
  112. package/dist/client/_projectId-B8wWSxPu.mjs +0 -98
  113. package/dist/client/_projectId-B8wWSxPu.mjs.map +0 -1
  114. package/dist/client/_projectId-C5DUYIjt.mjs +0 -291
  115. package/dist/client/_projectId-C5DUYIjt.mjs.map +0 -1
  116. package/dist/client/_storageType-C-9bNkmZ.mjs +0 -2211
  117. package/dist/client/_storageType-C-9bNkmZ.mjs.map +0 -1
  118. package/dist/client/flavors-CwMbDRHm2.mjs.map +0 -1
  119. package/dist/client/images-DOGZmr3D.mjs +0 -1937
  120. package/dist/client/images-DOGZmr3D.mjs.map +0 -1
  121. package/dist/client/pca-BokFv4Gz.mjs +0 -239
  122. package/dist/client/pca-BokFv4Gz.mjs.map +0 -1
  123. package/dist/client/pca-D5jHAl0b.mjs +0 -26
  124. package/dist/client/pca-D5jHAl0b.mjs.map +0 -1
  125. package/dist/client/pcaAccess-Br4kVjLQ.mjs +0 -9
  126. package/dist/client/pcaAccess-Br4kVjLQ.mjs.map +0 -1
  127. package/dist/client/routeInfo-CdTRlSxv.mjs.map +0 -1
@@ -1,12 +1,11 @@
1
- import { C as e, D as t, E as n, G as r, I as i, M as a, P as o, Y as s, Z as c, a as l, c as u, h as d, n as f, s as p, t as m } from "./build-DnD-T35u.mjs";
2
- import { t as h } from "./TwoColumnDescriptionList-B3xunXmz.mjs";
3
- import { Fragment as g, jsx as _, jsxs as v } from "react/jsx-runtime";
4
- import y, { Fragment as b, Suspense as x, startTransition as S, use as C, useEffect as w, useMemo as T, useState as E } from "react";
5
- import { Trans as D, useLingui as O } from "@lingui/react";
6
- import { ErrorBoundary as k } from "react-error-boundary";
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";
7
6
  //#region src/client/utils/useErrorTranslation.ts
8
- var A = () => {
9
- let { i18n: e, _: t } = O();
7
+ var O = () => {
8
+ let { i18n: e, _: t } = E();
10
9
  return {
11
10
  translateError: (t) => {
12
11
  switch (t) {
@@ -81,15 +80,15 @@ var A = () => {
81
80
  },
82
81
  isRetryableError: (e) => ["FLAVORS_SERVER_ERROR", "FLAVORS_FETCH_FAILED"].includes(e)
83
82
  };
84
- }, j = ({ specKey: e, value: t, errors: n, isLoading: r, onKeyChange: i, onValueChange: o, onSave: s, onCancel: u }) => {
85
- let { i18n: f, _: p } = O();
86
- return /*#__PURE__*/ v(c, {
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, {
87
86
  gap: "4",
88
87
  direction: "horizontal",
89
88
  alignment: "start",
90
89
  className: "border-theme-background-lvl-3 border-b p-4",
91
90
  children: [
92
- /*#__PURE__*/ _(d, {
91
+ /*#__PURE__*/ h(l, {
93
92
  value: e,
94
93
  onChange: (e) => i(e.target.value),
95
94
  placeholder: f._({ id: "wPrtGF" }),
@@ -97,116 +96,116 @@ var A = () => {
97
96
  label: f._({ id: "7sMeHQ" }),
98
97
  required: !0
99
98
  }),
100
- /*#__PURE__*/ _(d, {
99
+ /*#__PURE__*/ h(l, {
101
100
  value: t,
102
- onChange: (e) => o(e.target.value),
101
+ onChange: (e) => a(e.target.value),
103
102
  placeholder: f._({ id: "pubQie" }),
104
103
  errortext: n.value,
105
104
  label: f._({ id: "wMHvYH" }),
106
105
  required: !0
107
106
  }),
108
- /*#__PURE__*/ v(a, {
107
+ /*#__PURE__*/ g(c, {
109
108
  className: "mt-6",
110
- children: [/*#__PURE__*/ _(l, {
109
+ children: [/*#__PURE__*/ h(s, {
111
110
  icon: "check",
112
- onClick: s,
111
+ onClick: u,
113
112
  variant: "primary",
114
113
  title: f._({ id: "TyODHt" }),
115
114
  disabled: r
116
- }), /*#__PURE__*/ _(l, {
115
+ }), /*#__PURE__*/ h(s, {
117
116
  icon: "cancel",
118
- onClick: u,
117
+ onClick: d,
119
118
  title: f._({ id: "dEgA5A" }),
120
119
  disabled: r
121
120
  })]
122
121
  })
123
122
  ]
124
123
  });
125
- }, M = ({ specKey: e, value: n, isDeleting: i, onDelete: a, canDelete: o }) => {
126
- let { i18n: s, _: c } = O(), [u, d] = E(!1);
127
- return w(() => {
128
- if (u) {
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) {
129
128
  let e = setTimeout(() => {
130
- d(!1);
129
+ f(!1);
131
130
  }, 3e3);
132
131
  return () => clearTimeout(e);
133
132
  }
134
- }, [u]), /*#__PURE__*/ v(b, { children: [/*#__PURE__*/ _(f, { children: e }), /*#__PURE__*/ v(t, {
133
+ }, [d]), /*#__PURE__*/ g(v, { children: [/*#__PURE__*/ h(u, { children: t }), /*#__PURE__*/ g(e, {
135
134
  className: "flex justify-between",
136
- children: [/*#__PURE__*/ _("span", {
135
+ children: [/*#__PURE__*/ h("span", {
137
136
  className: "break-all",
138
137
  children: n
139
- }), o ? i ? /*#__PURE__*/ _(r, {
138
+ }), o ? r ? /*#__PURE__*/ h(a, {
140
139
  variant: "primary",
141
140
  size: "small"
142
- }) : u ? /*#__PURE__*/ _(l, {
141
+ }) : d ? /*#__PURE__*/ h(s, {
143
142
  variant: "primary-danger",
144
143
  onClick: () => {
145
- d(!1), a();
144
+ f(!1), i();
146
145
  },
147
- title: s._({ id: "cnGeoo" }),
148
- "aria-label": s._({ id: "cnGeoo" }),
146
+ title: c._({ id: "cnGeoo" }),
147
+ "aria-label": c._({ id: "cnGeoo" }),
149
148
  "data-testid": "confirm-deletion",
150
149
  size: "small",
151
- children: s._({ id: "cnGeoo" })
152
- }) : /*#__PURE__*/ _(l, {
150
+ children: c._({ id: "cnGeoo" })
151
+ }) : /*#__PURE__*/ h(s, {
153
152
  icon: "deleteForever",
154
- onClick: () => d(!0),
155
- title: s._({
153
+ onClick: () => f(!0),
154
+ title: c._({
156
155
  id: "2G6hLq",
157
- values: { specKey: e }
156
+ values: { specKey: t }
158
157
  }),
159
- "aria-label": s._({
158
+ "aria-label": c._({
160
159
  id: "2G6hLq",
161
- values: { specKey: e }
160
+ values: { specKey: t }
162
161
  }),
163
- "data-testid": `delete-${e}`,
162
+ "data-testid": `delete-${t}`,
164
163
  size: "small"
165
164
  }) : null]
166
165
  })] });
167
- }, N = (e, t) => e.compute.canUser.query({
166
+ }, j = (e, t) => e.compute.canUser.query({
168
167
  project_id: t,
169
168
  permission: ["flavor_specs:create", "flavor_specs:delete"]
170
169
  }).then(([e, t]) => ({
171
170
  canCreate: e,
172
171
  canDelete: t
173
- })), P = (e, t, n) => e.compute.getExtraSpecs.query({
172
+ })), M = (e, t, n) => e.compute.getExtraSpecs.query({
174
173
  project_id: t,
175
174
  flavorId: n
176
175
  });
177
- function F() {
178
- return /*#__PURE__*/ _(c, {
176
+ function N() {
177
+ return /*#__PURE__*/ h(o, {
179
178
  distribution: "center",
180
179
  alignment: "center",
181
180
  className: "py-4",
182
- children: /*#__PURE__*/ _(r, { variant: "primary" })
181
+ children: /*#__PURE__*/ h(a, { variant: "primary" })
183
182
  });
184
183
  }
185
- function I({ error: e }) {
186
- let { i18n: t, _: n } = O(), { translateError: r } = A(), a = e instanceof Error ? r(e.message) : t._({ id: "W5A0Ly" });
187
- return /*#__PURE__*/ _(i, {
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, {
188
187
  variant: "error",
189
188
  text: a
190
189
  });
191
190
  }
192
- function L({ permissionsPromise: e, extraSpecsPromise: n, client: r, project: i, flavor: a, onSpecsUpdate: o, isAddingSpec: s, setIsAddingSpec: d, setMessage: p }) {
193
- let { i18n: m, _: h } = O(), { translateError: y } = A(), b = C(e), x = C(n), [S, w] = E(x), [T, D] = E(""), [k, N] = E(""), [P, F] = E({}), [I, L] = E(null), [R, z] = E(!1), B = () => {
194
- let e = T.trim(), t = k.trim(), n = {};
195
- return e ? Object.keys(S).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;
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;
196
195
  }, V = () => {
197
- D(""), N(""), F({});
196
+ j(""), N(""), F({});
198
197
  }, H = async () => {
199
198
  if (!R) {
200
199
  if (!B()) {
201
200
  p({
202
- text: m._({ id: "CBFSfX" }),
201
+ text: _._({ id: "CBFSfX" }),
203
202
  type: "error"
204
203
  });
205
204
  return;
206
205
  }
207
206
  try {
208
207
  z(!0);
209
- let e = T.trim(), t = k.trim();
208
+ let e = D.trim(), t = M.trim();
210
209
  await r.compute.createExtraSpecs.mutate({
211
210
  project_id: i,
212
211
  flavorId: a.id,
@@ -214,10 +213,10 @@ function L({ permissionsPromise: e, extraSpecsPromise: n, client: r, project: i,
214
213
  });
215
214
  let n = {
216
215
  [e]: t,
217
- ...S
216
+ ...C
218
217
  };
219
- w(n), o(n), p({
220
- text: m._({
218
+ T(n), c(n), p({
219
+ text: _._({
221
220
  id: "2mbisJ",
222
221
  values: { trimmedKey: e }
223
222
  }),
@@ -239,9 +238,9 @@ function L({ permissionsPromise: e, extraSpecsPromise: n, client: r, project: i,
239
238
  flavorId: a.id,
240
239
  key: e
241
240
  });
242
- let t = { ...S };
243
- delete t[e], w(t), o(t), p({
244
- text: m._({
241
+ let t = { ...C };
242
+ delete t[e], T(t), c(t), p({
243
+ text: _._({
245
244
  id: "7UlHhT",
246
245
  values: { keyToDelete: e }
247
246
  }),
@@ -256,7 +255,7 @@ function L({ permissionsPromise: e, extraSpecsPromise: n, client: r, project: i,
256
255
  L(null);
257
256
  }
258
257
  }, W = (e) => {
259
- D(e), P.key && F((e) => ({
258
+ j(e), P.key && F((e) => ({
260
259
  ...e,
261
260
  key: void 0
262
261
  }));
@@ -265,22 +264,22 @@ function L({ permissionsPromise: e, extraSpecsPromise: n, client: r, project: i,
265
264
  ...e,
266
265
  value: void 0
267
266
  }));
268
- }, K = Object.keys(S).length === 0 && !s;
269
- return /*#__PURE__*/ v(g, { children: [
270
- b.canCreate && /*#__PURE__*/ _(c, {
267
+ }, K = Object.keys(C).length === 0 && !l;
268
+ return /*#__PURE__*/ g(m, { children: [
269
+ b.canCreate && /*#__PURE__*/ h(o, {
271
270
  direction: "horizontal",
272
271
  className: "bg-theme-background-lvl-1 mb-4 justify-end p-2",
273
- children: /*#__PURE__*/ _(l, {
274
- label: m._({ id: "u7En0V" }),
272
+ children: /*#__PURE__*/ h(s, {
273
+ label: _._({ id: "u7En0V" }),
275
274
  "data-testid": "addExtraButton",
276
275
  onClick: () => d(!0),
277
276
  variant: "primary",
278
- disabled: s
277
+ disabled: l
279
278
  })
280
279
  }),
281
- s && /*#__PURE__*/ _(j, {
282
- specKey: T,
283
- value: k,
280
+ l && /*#__PURE__*/ h(k, {
281
+ specKey: D,
282
+ value: M,
284
283
  errors: P,
285
284
  isLoading: R,
286
285
  onKeyChange: W,
@@ -290,13 +289,13 @@ function L({ permissionsPromise: e, extraSpecsPromise: n, client: r, project: i,
290
289
  V(), d(!1), p(null);
291
290
  }
292
291
  }),
293
- K ? /*#__PURE__*/ _("p", {
292
+ K ? /*#__PURE__*/ h("p", {
294
293
  className: "text-theme-default py-4 text-center",
295
- children: m._({ id: "S3olSf" })
296
- }) : /*#__PURE__*/ v(u, { children: [
297
- /*#__PURE__*/ _(f, { children: m._({ id: "7sMeHQ" }) }),
298
- /*#__PURE__*/ _(t, { children: m._({ id: "wMHvYH" }) }),
299
- /*#__PURE__*/ _(g, { children: Object.entries(S).map(([e, t]) => /*#__PURE__*/ _(M, {
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, {
300
299
  specKey: e,
301
300
  value: t,
302
301
  isDeleting: I === e,
@@ -306,58 +305,58 @@ function L({ permissionsPromise: e, extraSpecsPromise: n, client: r, project: i,
306
305
  ] })
307
306
  ] });
308
307
  }
309
- var R = ({ client: e, isOpen: t, onClose: n, project: r, flavor: a, canEdit: o }) => {
310
- let { i18n: c, _: l } = O(), [u, d] = E(null), [f, p] = E(!1), [m, h] = E(null), [g, b] = E(o), C = y.useMemo(() => t ? o === void 0 ? N(e, r) : Promise.resolve({
311
- canCreate: o,
312
- canDelete: o
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
313
312
  }) : null, [
314
313
  e,
314
+ a,
315
315
  r,
316
- t,
317
- o
316
+ s
318
317
  ]);
319
- y.useEffect(() => {
320
- if (o !== void 0) {
321
- b(o);
318
+ _.useEffect(() => {
319
+ if (s !== void 0) {
320
+ S(s);
322
321
  return;
323
322
  }
324
- C?.then(({ canCreate: e, canDelete: t }) => b(e || t));
325
- }, [C, o]);
326
- let w = g ? c._({ id: "SIfYq6" }) : c._({ id: "6GBt0m" });
327
- return y.useEffect(() => {
328
- t && a?.id && S(() => {
329
- h(P(e, r, a.id));
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));
330
329
  });
331
330
  }, [
332
- t,
333
- a?.id,
331
+ r,
332
+ o?.id,
334
333
  e,
335
- r
336
- ]), !t || !a || !C || !m ? null : /*#__PURE__*/ _(s, {
334
+ a
335
+ ]), !r || !o || !C || !m ? null : /*#__PURE__*/ h(n, {
337
336
  onCancel: () => {
338
- d(null), p(!1), h(null), n();
337
+ d(null), p(!1), v(null), i();
339
338
  },
340
- title: w,
341
- open: t,
339
+ title: T,
340
+ open: r,
342
341
  size: "xl",
343
- children: /*#__PURE__*/ v("div", { children: [u && /*#__PURE__*/ _(i, {
342
+ children: /*#__PURE__*/ g("div", { children: [u && /*#__PURE__*/ h(t, {
344
343
  onDismiss: () => d(null),
345
344
  text: u.text,
346
345
  variant: u.type,
347
346
  className: "mb-4"
348
- }), /*#__PURE__*/ _(k, {
349
- fallbackRender: ({ error: e }) => /*#__PURE__*/ _(I, { error: e }),
350
- children: /*#__PURE__*/ _(x, {
351
- fallback: /*#__PURE__*/ _(F, {}),
352
- children: /*#__PURE__*/ _(L, {
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, {
353
352
  permissionsPromise: C,
354
353
  extraSpecsPromise: m,
355
354
  client: e,
356
- project: r,
357
- flavor: a,
355
+ project: a,
356
+ flavor: o,
358
357
  onSpecsUpdate: (e) => {
359
- S(() => {
360
- h(Promise.resolve(e));
358
+ b(() => {
359
+ v(Promise.resolve(e));
361
360
  });
362
361
  },
363
362
  isAddingSpec: f,
@@ -368,32 +367,32 @@ var R = ({ client: e, isOpen: t, onClose: n, project: r, flavor: a, canEdit: o }
368
367
  })
369
368
  })] })
370
369
  });
371
- }, z = ({ tenantId: e, errors: t, isLoading: r, onTenantIdChange: i, onSave: o, onCancel: s }) => {
372
- let { i18n: c, _: u } = O();
373
- return /*#__PURE__*/ v(n, { children: [/*#__PURE__*/ _(m, {
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, {
374
373
  className: "pl-0",
375
- children: /*#__PURE__*/ _(d, {
374
+ children: /*#__PURE__*/ h(l, {
376
375
  value: e,
377
- onChange: (e) => i(e.target.value),
378
- placeholder: c._({ id: "wa1Bcq" }),
376
+ onChange: (e) => r(e.target.value),
377
+ placeholder: u._({ id: "wa1Bcq" }),
379
378
  errortext: t.tenantId,
380
379
  required: !0
381
380
  })
382
- }), /*#__PURE__*/ _(m, { children: /*#__PURE__*/ v(a, { children: [/*#__PURE__*/ _(l, {
381
+ }), /*#__PURE__*/ h(p, { children: /*#__PURE__*/ g(c, { children: [/*#__PURE__*/ h(s, {
383
382
  icon: "check",
384
- onClick: o,
383
+ onClick: a,
385
384
  variant: "primary",
386
- title: c._({ id: "q0Rla3" }),
387
- disabled: r
388
- }), /*#__PURE__*/ _(l, {
385
+ title: u._({ id: "q0Rla3" }),
386
+ disabled: n
387
+ }), /*#__PURE__*/ h(s, {
389
388
  icon: "cancel",
390
- onClick: s,
391
- title: c._({ id: "dEgA5A" }),
392
- disabled: r
389
+ onClick: o,
390
+ title: u._({ id: "dEgA5A" }),
391
+ disabled: n
393
392
  })] }) })] });
394
- }, B = ({ access: e, isDeleting: t, onDelete: i, canDelete: a }) => {
395
- let { i18n: o, _: s } = O(), [u, d] = E(!1);
396
- w(() => {
393
+ }, R = ({ access: e, isDeleting: t, onDelete: n, canDelete: r }) => {
394
+ let { i18n: c, _: l } = E(), [u, d] = w(!1);
395
+ S(() => {
397
396
  if (u) {
398
397
  let e = setTimeout(() => {
399
398
  d(!1);
@@ -402,39 +401,39 @@ var R = ({ client: e, isOpen: t, onClose: n, project: r, flavor: a, canEdit: o }
402
401
  }
403
402
  }, [u]);
404
403
  let f = () => {
405
- d(!1), i();
404
+ d(!1), n();
406
405
  };
407
- return /*#__PURE__*/ v(n, { children: [/*#__PURE__*/ _(m, {
406
+ return /*#__PURE__*/ g(i, { children: [/*#__PURE__*/ h(p, {
408
407
  className: "break-all",
409
408
  children: e.tenant_id
410
- }), /*#__PURE__*/ _(m, { children: t ? /*#__PURE__*/ _(c, {
409
+ }), /*#__PURE__*/ h(p, { children: t ? /*#__PURE__*/ h(o, {
411
410
  distribution: "center",
412
411
  alignment: "center",
413
- children: /*#__PURE__*/ _(r, { variant: "primary" })
414
- }) : /*#__PURE__*/ _(c, {
412
+ children: /*#__PURE__*/ h(a, { variant: "primary" })
413
+ }) : /*#__PURE__*/ h(o, {
415
414
  distribution: "end",
416
415
  alignment: "end",
417
416
  children: (() => {
418
- if (!a) return /*#__PURE__*/ _(g, {});
419
- if (u) return /*#__PURE__*/ _(l, {
417
+ if (!r) return /*#__PURE__*/ h(m, {});
418
+ if (u) return /*#__PURE__*/ h(s, {
420
419
  variant: "primary-danger",
421
420
  onClick: f,
422
- title: o._({ id: "w9+8d7" }),
423
- "aria-label": o._({ id: "w9+8d7" }),
421
+ title: c._({ id: "w9+8d7" }),
422
+ "aria-label": c._({ id: "w9+8d7" }),
424
423
  "data-testid": "confirm-removal",
425
424
  disabled: t,
426
- children: o._({ id: "t/YqKh" })
425
+ children: c._({ id: "t/YqKh" })
427
426
  });
428
427
  {
429
428
  let n = e.tenant_id;
430
- return /*#__PURE__*/ _(l, {
429
+ return /*#__PURE__*/ h(s, {
431
430
  icon: "deleteForever",
432
431
  onClick: () => d(!0),
433
- title: o._({
432
+ title: c._({
434
433
  id: "tfxu04",
435
434
  values: { tenantId: n }
436
435
  }),
437
- "aria-label": o._({
436
+ "aria-label": c._({
438
437
  id: "tfxu04",
439
438
  values: { tenantId: n }
440
439
  }),
@@ -444,57 +443,57 @@ var R = ({ client: e, isOpen: t, onClose: n, project: r, flavor: a, canEdit: o }
444
443
  }
445
444
  })()
446
445
  }) })] });
447
- }, V = (e, t) => e.compute.canUser.query({
446
+ }, z = (e, t) => e.compute.canUser.query({
448
447
  project_id: t,
449
448
  permission: ["flavors:add_project", "flavors:remove_project"]
450
449
  }).then(([e, t]) => ({
451
450
  canAdd: e,
452
451
  canRemove: t
453
- })), H = (e, t, n) => e.compute.getFlavorAccess.query({
452
+ })), B = (e, t, n) => e.compute.getFlavorAccess.query({
454
453
  project_id: t,
455
454
  flavorId: n
456
455
  });
457
- function U() {
458
- return /*#__PURE__*/ _(n, { children: /*#__PURE__*/ _(m, {
456
+ function V() {
457
+ return /*#__PURE__*/ h(i, { children: /*#__PURE__*/ h(p, {
459
458
  colSpan: 2,
460
- children: /*#__PURE__*/ _(c, {
459
+ children: /*#__PURE__*/ h(o, {
461
460
  distribution: "center",
462
461
  alignment: "center",
463
- children: /*#__PURE__*/ _(r, { variant: "primary" })
462
+ children: /*#__PURE__*/ h(a, { variant: "primary" })
464
463
  })
465
464
  }) });
466
465
  }
467
- function W({ permissionsPromise: t, flavorAccessPromise: r, client: i, project: a, flavor: o, onAccessUpdate: s, isAddingAccess: u, setIsAddingAccess: d, setMessage: f }) {
468
- let { i18n: h, _: y } = O(), { translateError: b } = A(), x = C(t), S = C(r), [w, T] = E(""), [D, k] = E({}), [j, M] = E(/* @__PURE__ */ new Set()), [N, P] = E(!1), F = o["os-flavor-access:is_public"] !== !1, I = S.length === 0 && !u, L = () => {
469
- let e = w.trim(), t = {};
470
- return e ? S.some((t) => t.tenant_id === e) && (t.tenantId = "This tenant already has access to this flavor.") : t.tenantId = "Tenant ID is required.", k(t), Object.keys(t).length === 0;
471
- }, R = () => {
472
- T(""), k({});
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({});
473
472
  }, V = async () => {
474
- if (!L()) {
475
- f({
476
- text: h._({ id: "CBFSfX" }),
473
+ if (!z()) {
474
+ _({
475
+ text: v._({ id: "CBFSfX" }),
477
476
  type: "error"
478
477
  });
479
478
  return;
480
479
  }
481
480
  P(!0);
482
481
  try {
483
- let e = w.trim();
484
- s(await i.compute.addTenantAccess.mutate({
482
+ let e = T.trim();
483
+ l(await n.compute.addTenantAccess.mutate({
485
484
  project_id: a,
486
- flavorId: o.id,
485
+ flavorId: c.id,
487
486
  targetProjectId: e
488
- })), f({
489
- text: h._({
487
+ })), _({
488
+ text: v._({
490
489
  id: "7flw0l",
491
490
  values: { trimmedTenantId: e }
492
491
  }),
493
492
  type: "info"
494
- }), R(), d(!1);
493
+ }), B(), f(!1);
495
494
  } catch (e) {
496
495
  let t = e?.message || "Failed to add tenant access";
497
- f({
496
+ _({
498
497
  text: b(t || "Failed to add tenant access"),
499
498
  type: "error"
500
499
  });
@@ -504,12 +503,12 @@ function W({ permissionsPromise: t, flavorAccessPromise: r, client: i, project:
504
503
  }, H = async (e) => {
505
504
  M((t) => new Set(t).add(e));
506
505
  try {
507
- s(await i.compute.removeTenantAccess.mutate({
506
+ l(await n.compute.removeTenantAccess.mutate({
508
507
  project_id: a,
509
- flavorId: o.id,
508
+ flavorId: c.id,
510
509
  targetProjectId: e
511
- })), f({
512
- text: h._({
510
+ })), _({
511
+ text: v._({
513
512
  id: "rvXsSb",
514
513
  values: { tenantIdToRemove: e }
515
514
  }),
@@ -517,7 +516,7 @@ function W({ permissionsPromise: t, flavorAccessPromise: r, client: i, project:
517
516
  });
518
517
  } catch (t) {
519
518
  let n = t?.message || "Failed to remove tenant access";
520
- f({
519
+ _({
521
520
  text: b(n || `Failed to remove tenant access for "${e}"`),
522
521
  type: "error"
523
522
  });
@@ -528,205 +527,195 @@ function W({ permissionsPromise: t, flavorAccessPromise: r, client: i, project:
528
527
  });
529
528
  }
530
529
  };
531
- return F ? /*#__PURE__*/ v(p, {
530
+ return F ? /*#__PURE__*/ g(d, {
532
531
  columns: 2,
533
- children: [/*#__PURE__*/ v(n, { children: [/*#__PURE__*/ _(e, { children: h._({ id: "T9Mtpi" }) }), /*#__PURE__*/ _(e, { children: " " })] }), /*#__PURE__*/ _(n, { children: /*#__PURE__*/ _(m, {
532
+ children: [/*#__PURE__*/ g(i, { children: [/*#__PURE__*/ h(r, { children: v._({ id: "T9Mtpi" }) }), /*#__PURE__*/ h(r, { children: " " })] }), /*#__PURE__*/ h(i, { children: /*#__PURE__*/ h(p, {
534
533
  colSpan: 2,
535
534
  className: "text-theme-default py-4 text-center",
536
- children: h._({ id: "9x6EkK" })
535
+ children: v._({ id: "9x6EkK" })
537
536
  }) })]
538
- }) : /*#__PURE__*/ v(g, { children: [x.canAdd && /*#__PURE__*/ _(c, {
537
+ }) : /*#__PURE__*/ g(m, { children: [S.canAdd && /*#__PURE__*/ h(o, {
539
538
  direction: "horizontal",
540
539
  className: "bg-theme-background-lvl-1 justify-end p-2",
541
- children: /*#__PURE__*/ _(l, {
542
- label: h._({ id: "q0Rla3" }),
540
+ children: /*#__PURE__*/ h(s, {
541
+ label: v._({ id: "q0Rla3" }),
543
542
  "data-testid": "addTenantButton",
544
- onClick: () => d(!0),
543
+ onClick: () => f(!0),
545
544
  variant: "primary",
546
545
  disabled: u
547
546
  })
548
- }), /*#__PURE__*/ v(p, {
547
+ }), /*#__PURE__*/ g(d, {
549
548
  columns: 2,
550
549
  children: [
551
- /*#__PURE__*/ v(n, { children: [/*#__PURE__*/ _(e, { children: h._({ id: "T9Mtpi" }) }), /*#__PURE__*/ _(e, {})] }),
552
- u && /*#__PURE__*/ _(z, {
553
- tenantId: w,
554
- errors: D,
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,
555
554
  isLoading: N,
556
555
  onTenantIdChange: (e) => {
557
- T(e), D.tenantId && k((e) => ({
556
+ D(e), k.tenantId && A((e) => ({
558
557
  ...e,
559
558
  tenantId: void 0
560
559
  }));
561
560
  },
562
561
  onSave: V,
563
562
  onCancel: () => {
564
- R(), d(!1), f(null);
563
+ B(), f(!1), _(null);
565
564
  }
566
565
  }),
567
- S.map((e) => /*#__PURE__*/ _(B, {
566
+ C.map((e) => /*#__PURE__*/ h(R, {
568
567
  access: e,
569
568
  isDeleting: j.has(e.tenant_id),
570
569
  onDelete: () => H(e.tenant_id),
571
- canDelete: x.canRemove
570
+ canDelete: S.canRemove
572
571
  }, e.tenant_id)),
573
- I && /*#__PURE__*/ _(n, { children: /*#__PURE__*/ _(m, {
572
+ I && /*#__PURE__*/ h(i, { children: /*#__PURE__*/ h(p, {
574
573
  colSpan: 2,
575
574
  className: "text-theme-default py-4 text-center",
576
- children: h._({ id: "Gyd3No" })
575
+ children: v._({ id: "Gyd3No" })
577
576
  }) })
578
577
  ]
579
578
  })] });
580
579
  }
581
- var G = ({ client: e, isOpen: t, onClose: n, project: r, flavor: a }) => {
582
- let { i18n: o, _: c } = O(), { translateError: l } = A(), [u, d] = E(null), [f, p] = E(!1), m = T(() => t ? V(e, r) : null, [
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, [
583
582
  e,
584
- r,
585
- t
586
- ]), h = T(() => !t || !a?.id ? null : H(e, r, a.id).then((e) => e.filter((e, t, n) => n.findIndex((t) => t.tenant_id === e.tenant_id) === t)).catch((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) => {
587
586
  let t = l(e?.message || "GET_FLAVOR_ACCESS_FAILED");
588
587
  return d({
589
588
  text: t,
590
589
  type: "error"
591
590
  }), [];
592
591
  }), [
593
- t,
594
- a?.id,
592
+ r,
593
+ o?.id,
595
594
  e,
596
- r
595
+ a
597
596
  ]);
598
- w(() => {
599
- t && d(null);
600
- }, [t, a?.id]);
601
- let [g, y] = E(null), b = `${t}-${a?.id}`, C = g?.key === b ? g.promise : h, D = () => {
602
- d(null), p(!1), y(null), n();
603
- }, k = (e) => {
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) => {
604
603
  let t = e.filter((e, t, n) => n.findIndex((t) => t.tenant_id === e.tenant_id) === t);
605
- S(() => {
606
- y({
607
- key: b,
604
+ b(() => {
605
+ x({
606
+ key: T,
608
607
  promise: Promise.resolve(t)
609
608
  });
610
609
  });
611
610
  };
612
- if (!t || !a || !m || !C) return null;
613
- let j = a.name;
614
- return /*#__PURE__*/ _(s, {
615
- onCancel: D,
616
- title: o._({
611
+ if (!r || !o || !m || !D) return null;
612
+ let j = o.name;
613
+ return /*#__PURE__*/ h(n, {
614
+ onCancel: k,
615
+ title: s._({
617
616
  id: "6Rnrsz",
618
617
  values: { flavorName: j }
619
618
  }),
620
- open: t,
619
+ open: r,
621
620
  size: "xl",
622
- children: /*#__PURE__*/ v("div", { children: [u && /*#__PURE__*/ _(i, {
621
+ children: /*#__PURE__*/ g("div", { children: [u && /*#__PURE__*/ h(t, {
623
622
  onDismiss: () => d(null),
624
623
  text: u.text,
625
624
  variant: u.type,
626
625
  className: "mb-4",
627
626
  dismissible: !0
628
- }), /*#__PURE__*/ _(x, {
629
- fallback: /*#__PURE__*/ _(U, {}),
630
- children: /*#__PURE__*/ _(W, {
627
+ }), /*#__PURE__*/ h(y, {
628
+ fallback: /*#__PURE__*/ h(V, {}),
629
+ children: /*#__PURE__*/ h(H, {
631
630
  permissionsPromise: m,
632
- flavorAccessPromise: C,
631
+ flavorAccessPromise: D,
633
632
  client: e,
634
- project: r,
635
- flavor: a,
636
- onAccessUpdate: k,
633
+ project: a,
634
+ flavor: o,
635
+ onAccessUpdate: A,
637
636
  isAddingAccess: f,
638
637
  setIsAddingAccess: p,
639
638
  setMessage: d
640
639
  })
641
640
  })] })
642
641
  });
643
- }, K = ({ client: e, isOpen: t, onClose: n, project: u, flavor: d, onSuccess: f }) => {
644
- let { i18n: p, _: m } = O(), { translateError: g } = A(), [y, b] = E(!1), [x, S] = E(null), C = async () => {
645
- if (!d?.id) {
646
- S(p._({ id: "NlcF/v" }));
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" }));
647
652
  return;
648
653
  }
649
- S(null);
654
+ b(null);
650
655
  try {
651
- b(!0), await e.compute.deleteFlavor.mutate({
652
- project_id: u,
653
- flavorId: d.id
654
- }), f(), w();
656
+ v(!0), await t.compute.deleteFlavor.mutate({
657
+ project_id: a,
658
+ flavorId: s.id
659
+ }), c(), D();
655
660
  } catch (e) {
656
- let t = e?.message ? g(e.message) : p._({ id: "8zAn1f" });
657
- S(t);
661
+ let t = e?.message ? m(e.message) : d._({ id: "8zAn1f" });
662
+ b(t);
658
663
  } finally {
659
- b(!1);
664
+ v(!1);
660
665
  }
661
- }, w = () => {
662
- S(null), n();
663
- }, T = () => {
664
- S(null);
665
- }, k = [
666
- {
667
- label: p._({ id: "6YtxFj" }),
668
- value: d?.name
669
- },
670
- {
671
- label: p._({ id: "S0kLOH" }),
672
- value: d?.id
673
- },
674
- {
675
- label: p._({ id: "MZGbkp" }),
676
- value: d?.vcpus
677
- },
678
- {
679
- label: p._({ id: "RGhYAo" }),
680
- value: `${d?.ram} MiB`
681
- },
682
- {
683
- label: p._({ id: "sPFHpI" }),
684
- value: `${d?.disk} GiB`
685
- },
686
- ...d?.swap ? [{
687
- label: p._({ id: "vH2C/2" }),
688
- value: `${d.swap} MiB`
689
- }] : []
690
- ];
691
- return /*#__PURE__*/ v(s, {
692
- onCancel: w,
693
- title: p._({ id: "JT3I1g" }),
694
- open: t,
695
- onConfirm: C,
696
- modalFooter: /*#__PURE__*/ _(o, {
697
- className: "flex justify-end",
698
- children: /*#__PURE__*/ v(a, { children: [/*#__PURE__*/ _(l, {
699
- variant: "primary-danger",
700
- onClick: C,
701
- disabled: y,
702
- children: y ? /*#__PURE__*/ _(r, { size: "small" }) : /*#__PURE__*/ _(D, { id: "cnGeoo" })
703
- }), /*#__PURE__*/ _(l, {
704
- variant: "default",
705
- onClick: w,
706
- children: /*#__PURE__*/ _(D, { id: "dEgA5A" })
707
- })] })
708
- }),
709
- children: [y && /*#__PURE__*/ _(c, {
710
- distribution: "center",
711
- alignment: "center",
712
- children: /*#__PURE__*/ _(r, { variant: "primary" })
713
- }), !y && /*#__PURE__*/ v("div", { children: [
714
- x && /*#__PURE__*/ _(i, {
715
- onDismiss: T,
716
- text: x,
717
- variant: "error",
718
- className: "mb-4"
719
- }),
720
- /*#__PURE__*/ _(i, {
721
- text: p._({ id: "QQ8wUG" }),
722
- variant: "danger",
723
- className: "mb-4"
724
- }),
725
- d && /*#__PURE__*/ _(h, { items: k })
726
- ] })]
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
+ })
727
716
  });
728
717
  };
729
718
  //#endregion
730
- export { A as i, G as n, R as r, K as t };
719
+ export { O as i, U as n, I as r, W as t };
731
720
 
732
- //# sourceMappingURL=DeleteFlavorModal-C2K43ABZ.mjs.map
721
+ //# sourceMappingURL=DeleteFlavorModal-BP83t9zX.mjs.map