@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.
Files changed (128) hide show
  1. package/dist/client/ContentHeader-fKKZVu-o.mjs +116 -0
  2. package/dist/client/ContentHeader-fKKZVu-o.mjs.map +1 -0
  3. package/dist/client/DeleteFlavorModal-C4nAi7gY.mjs +724 -0
  4. package/dist/client/DeleteFlavorModal-C4nAi7gY.mjs.map +1 -0
  5. package/dist/client/{RouteIdLevelDefaultError-CSseJ1yG.mjs → RouteIdLevelDefaultError-DPF_x2tG.mjs} +9 -9
  6. package/dist/client/RouteIdLevelDefaultError-DPF_x2tG.mjs.map +1 -0
  7. package/dist/client/StorageNotFound-B-zVinVD.mjs +30 -0
  8. package/dist/client/StorageNotFound-B-zVinVD.mjs.map +1 -0
  9. package/dist/client/_flavorId-BPvssEzn.mjs +277 -0
  10. package/dist/client/_flavorId-BPvssEzn.mjs.map +1 -0
  11. package/dist/client/{_flavorId-CaA4-Pnf.mjs → _flavorId-CFUBcU-l.mjs} +3 -3
  12. package/dist/client/{_flavorId-CaA4-Pnf.mjs.map → _flavorId-CFUBcU-l.mjs.map} +1 -1
  13. package/dist/client/{_flavorId-YV3jCS5g.mjs → _flavorId-CZcIp0Ih.mjs} +3 -3
  14. package/dist/client/{_flavorId-YV3jCS5g.mjs.map → _flavorId-CZcIp0Ih.mjs.map} +1 -1
  15. package/dist/client/{_floatingIpId-Dpsc7GU4.mjs → _floatingIpId-B8r64AL9.mjs} +3 -3
  16. package/dist/client/{_floatingIpId-Dpsc7GU4.mjs.map → _floatingIpId-B8r64AL9.mjs.map} +1 -1
  17. package/dist/client/{_floatingIpId-BeYElanB.mjs → _floatingIpId-lEobpOER.mjs} +2 -2
  18. package/dist/client/{_floatingIpId-BeYElanB.mjs.map → _floatingIpId-lEobpOER.mjs.map} +1 -1
  19. package/dist/client/_imageId-BAezmV0Y.mjs +526 -0
  20. package/dist/client/_imageId-BAezmV0Y.mjs.map +1 -0
  21. package/dist/client/{_imageId-pBSS0YcC.mjs → _imageId-D-jqz3e3.mjs} +3 -3
  22. package/dist/client/_imageId-D-jqz3e3.mjs.map +1 -0
  23. package/dist/client/{_imageId-mpXUMCh_.mjs → _imageId-gMdrdnVt.mjs} +3 -3
  24. package/dist/client/_imageId-gMdrdnVt.mjs.map +1 -0
  25. package/dist/client/{_projectId-BnTBxKfp.mjs → _projectId-BYccdAtX.mjs} +3 -3
  26. package/dist/client/{_projectId-BnTBxKfp.mjs.map → _projectId-BYccdAtX.mjs.map} +1 -1
  27. package/dist/client/{_projectId-AjgJX6Gl.mjs → _projectId-CBjZC1tv.mjs} +85 -83
  28. package/dist/client/_projectId-CBjZC1tv.mjs.map +1 -0
  29. package/dist/client/{_projectId-CVrdJ52s.mjs → _projectId-CLEa1zgw.mjs} +2 -2
  30. package/dist/client/{_projectId-CVrdJ52s.mjs.map → _projectId-CLEa1zgw.mjs.map} +1 -1
  31. package/dist/client/_projectId-D3VOH5lN.mjs +94 -0
  32. package/dist/client/_projectId-D3VOH5lN.mjs.map +1 -0
  33. package/dist/client/{_securityGroupId-AO3wnH8g.mjs → _securityGroupId-BwgZnoiR.mjs} +2 -2
  34. package/dist/client/{_securityGroupId-AO3wnH8g.mjs.map → _securityGroupId-BwgZnoiR.mjs.map} +1 -1
  35. package/dist/client/{_securityGroupId-Bq0ZyG6z.mjs → _securityGroupId-Cz2NUHdB.mjs} +3 -3
  36. package/dist/client/{_securityGroupId-Bq0ZyG6z.mjs.map → _securityGroupId-Cz2NUHdB.mjs.map} +1 -1
  37. package/dist/client/{_storageType-CzZ4u9x_.mjs → _storageType-BNpP1A2N.mjs} +3 -2
  38. package/dist/client/_storageType-BNpP1A2N.mjs.map +1 -0
  39. package/dist/client/_storageType-BxSGKhAI.mjs +15 -0
  40. package/dist/client/_storageType-BxSGKhAI.mjs.map +1 -0
  41. package/dist/client/_storageType-DZYCmiLt.mjs +30 -0
  42. package/dist/client/_storageType-DZYCmiLt.mjs.map +1 -0
  43. package/dist/client/{_storageType-c-DAu8qr.mjs → _storageType-UqAMP-8d.mjs} +286 -285
  44. package/dist/client/_storageType-UqAMP-8d.mjs.map +1 -0
  45. package/dist/client/_storageType-u51_7OwJ.mjs +7 -0
  46. package/dist/client/_storageType-u51_7OwJ.mjs.map +1 -0
  47. package/dist/client/components/Errors/RouteIdLevelDefaultError.d.ts +2 -1
  48. package/dist/client/{flavors-ZudiAiTU.mjs → flavors-CJVSNz6R.mjs} +2 -2
  49. package/dist/client/{flavors-ZudiAiTU.mjs.map → flavors-CJVSNz6R.mjs.map} +1 -1
  50. package/dist/client/{flavors-Bgq3KZmx.mjs → flavors-CflJDIEH.mjs} +90 -82
  51. package/dist/client/flavors-CflJDIEH.mjs.map +1 -0
  52. package/dist/client/{floatingips-B1oLH8z6.mjs → floatingips-DXnRlLvV.mjs} +2 -2
  53. package/dist/client/{floatingips-B1oLH8z6.mjs.map → floatingips-DXnRlLvV.mjs.map} +1 -1
  54. package/dist/client/{floatingips-BtLg3yEQ.mjs → floatingips-HRbuLxiN.mjs} +3 -3
  55. package/dist/client/{floatingips-BtLg3yEQ.mjs.map → floatingips-HRbuLxiN.mjs.map} +1 -1
  56. package/dist/client/{floatingips-BeQEkVH8.mjs → floatingips-nN1kQmsu.mjs} +2 -2
  57. package/dist/client/{floatingips-BeQEkVH8.mjs.map → floatingips-nN1kQmsu.mjs.map} +1 -1
  58. package/dist/client/imageHelpers-DBhL2ebL.mjs +1272 -0
  59. package/dist/client/imageHelpers-DBhL2ebL.mjs.map +1 -0
  60. package/dist/client/{images-CnTW3bpy.mjs → images-BsylWUiH.mjs} +837 -849
  61. package/dist/client/images-BsylWUiH.mjs.map +1 -0
  62. package/dist/client/{images-DZHDYDQu.mjs → images-zQq1nSVv.mjs} +2 -2
  63. package/dist/client/{images-DZHDYDQu.mjs.map → images-zQq1nSVv.mjs.map} +1 -1
  64. package/dist/client/index.js +200 -198
  65. package/dist/client/index.js.map +1 -1
  66. package/dist/client/{objects-jYQBFzwg.mjs → objects-BudUAfWY.mjs} +4265 -4275
  67. package/dist/client/objects-BudUAfWY.mjs.map +1 -0
  68. package/dist/client/objects-Dc7sKUr8.mjs +67 -0
  69. package/dist/client/objects-Dc7sKUr8.mjs.map +1 -0
  70. package/dist/client/objects-Dw7oeTq2.mjs +80 -0
  71. package/dist/client/objects-Dw7oeTq2.mjs.map +1 -0
  72. package/dist/client/objects-_g7nGIn5.mjs +25 -0
  73. package/dist/client/objects-_g7nGIn5.mjs.map +1 -0
  74. package/dist/client/objects-eBxvY6_n.mjs +78 -0
  75. package/dist/client/objects-eBxvY6_n.mjs.map +1 -0
  76. package/dist/client/projects-yiK0HGSA.mjs.map +1 -1
  77. package/dist/client/{securitygroups--0PS2wbM.mjs → securitygroups-CSmsBzUb.mjs} +105 -104
  78. package/dist/client/securitygroups-CSmsBzUb.mjs.map +1 -0
  79. package/dist/client/{securitygroups-BRndk7wh.mjs → securitygroups-T7kaNFEp.mjs} +2 -2
  80. package/dist/client/{securitygroups-BRndk7wh.mjs.map → securitygroups-T7kaNFEp.mjs.map} +1 -1
  81. package/dist/client/{securitygroups-Cs2Op-tu.mjs → securitygroups-WLB1_IM6.mjs} +3 -3
  82. package/dist/client/{securitygroups-Cs2Op-tu.mjs.map → securitygroups-WLB1_IM6.mjs.map} +1 -1
  83. package/dist/client/{securitygroups-CdN4yAAw.mjs → securitygroups-o0IXZM6S.mjs} +2 -2
  84. package/dist/client/{securitygroups-CdN4yAAw.mjs.map → securitygroups-o0IXZM6S.mjs.map} +1 -1
  85. package/dist/client/serviceCatalog-B3lKWC9V.mjs +6 -0
  86. package/dist/client/serviceCatalog-B3lKWC9V.mjs.map +1 -0
  87. package/dist/client/storageProviders-CJ5rOh13.mjs +15 -0
  88. package/dist/client/storageProviders-CJ5rOh13.mjs.map +1 -0
  89. package/dist/client/trpcClient.d.ts +96 -4
  90. package/dist/client/useErrorTranslation-Dc0eE8Zt.mjs +83 -0
  91. package/dist/client/useErrorTranslation-Dc0eE8Zt.mjs.map +1 -0
  92. package/dist/client/utils/serviceCatalog.d.ts +9 -0
  93. package/dist/client/utils/storageProviders.d.ts +44 -0
  94. package/dist/server/index.d.ts +96 -4
  95. package/dist/server/index.js +1993 -904
  96. package/package.json +2 -2
  97. package/dist/client/ContentHeader-CPJbgYWn.mjs +0 -115
  98. package/dist/client/ContentHeader-CPJbgYWn.mjs.map +0 -1
  99. package/dist/client/DeleteFlavorModal-C2MqUgGR.mjs +0 -801
  100. package/dist/client/DeleteFlavorModal-C2MqUgGR.mjs.map +0 -1
  101. package/dist/client/ImageToastNotifications-BWfzOUMc.mjs +0 -1135
  102. package/dist/client/ImageToastNotifications-BWfzOUMc.mjs.map +0 -1
  103. package/dist/client/RouteIdLevelDefaultError-CSseJ1yG.mjs.map +0 -1
  104. package/dist/client/_flavorId-DYv_StX22.mjs +0 -276
  105. package/dist/client/_flavorId-DYv_StX22.mjs.map +0 -1
  106. package/dist/client/_imageId-mfKp3JHn.mjs +0 -558
  107. package/dist/client/_imageId-mfKp3JHn.mjs.map +0 -1
  108. package/dist/client/_imageId-mpXUMCh_.mjs.map +0 -1
  109. package/dist/client/_imageId-pBSS0YcC.mjs.map +0 -1
  110. package/dist/client/_projectId-AjgJX6Gl.mjs.map +0 -1
  111. package/dist/client/_projectId-DgciZslU.mjs +0 -92
  112. package/dist/client/_projectId-DgciZslU.mjs.map +0 -1
  113. package/dist/client/_storageType-BRWWJtow.mjs +0 -14
  114. package/dist/client/_storageType-BRWWJtow.mjs.map +0 -1
  115. package/dist/client/_storageType-CzZ4u9x_.mjs.map +0 -1
  116. package/dist/client/_storageType-c-DAu8qr.mjs.map +0 -1
  117. package/dist/client/_storageType-zeSZe--V.mjs +0 -7
  118. package/dist/client/_storageType-zeSZe--V.mjs.map +0 -1
  119. package/dist/client/flavors-Bgq3KZmx.mjs.map +0 -1
  120. package/dist/client/images-CnTW3bpy.mjs.map +0 -1
  121. package/dist/client/objects-25xsh4Ia.mjs +0 -66
  122. package/dist/client/objects-25xsh4Ia.mjs.map +0 -1
  123. package/dist/client/objects-KXY6dgwq.mjs +0 -82
  124. package/dist/client/objects-KXY6dgwq.mjs.map +0 -1
  125. package/dist/client/objects-QryuClU3.mjs +0 -82
  126. package/dist/client/objects-QryuClU3.mjs.map +0 -1
  127. package/dist/client/objects-jYQBFzwg.mjs.map +0 -1
  128. package/dist/client/securitygroups--0PS2wbM.mjs.map +0 -1
@@ -1,801 +0,0 @@
1
- import { E as e, L as t, Q as n, X as r, ft as i, i as a, m as o, n as s, ot as c, p as l, rt as u, s as d } from "./build-WuxXRAqf.mjs";
2
- import { t as f } from "./useModalTracking-BYd37pXm.mjs";
3
- import { Fragment as p, jsx as m, jsxs as h } from "react/jsx-runtime";
4
- import g, { useEffect as _, useMemo as v, useState as y } from "react";
5
- import { Trans as b, useLingui as x } from "@lingui/react";
6
- import { z as S } from "zod";
7
- import { useForm as C, useStore as w } from "@tanstack/react-form";
8
- //#region src/client/utils/useErrorTranslation.ts
9
- var T = () => {
10
- let { i18n: e, _: t } = x();
11
- return {
12
- translateError: (t) => {
13
- switch (t) {
14
- case "FLAVORS_UNAUTHORIZED": return e._({ id: "1iUuTT" });
15
- case "FLAVORS_FORBIDDEN": return e._({ id: "mSLePW" });
16
- case "FLAVORS_NOT_FOUND": return e._({ id: "EQnVgi" });
17
- case "FLAVORS_SERVER_ERROR": return e._({ id: "Hivb/4" });
18
- case "FLAVORS_FETCH_FAILED": return e._({ id: "EztMB8" });
19
- case "FLAVORS_PARSE_ERROR": return e._({ id: "t1fq6V" });
20
- case "GET_FLAVOR_DETAILS_UNAUTHORIZED": return e._({ id: "zCD96i" });
21
- case "GET_FLAVOR_DETAILS_FORBIDDEN": return e._({ id: "/9Squ9" });
22
- case "GET_FLAVOR_DETAILS_NOT_FOUND": return e._({ id: "HxTYrE" });
23
- case "GET_FLAVOR_DETAILS_SERVER_ERROR": return e._({ id: "KJC+M7" });
24
- case "GET_FLAVOR_DETAILS_INVALID_ID": return e._({ id: "YUU0QW" });
25
- case "GET_FLAVOR_DETAILS_PARSE_ERROR": return e._({ id: "ZUmOzn" });
26
- case "GET_FLAVOR_DETAILS_FAILED": return e._({ id: "RCr0yv" });
27
- case "CREATE_FLAVOR_INVALID_DATA": return e._({ id: "0kCt7e" });
28
- case "CREATE_FLAVOR_UNAUTHORIZED": return e._({ id: "oDkgME" });
29
- case "CREATE_FLAVOR_FORBIDDEN": return e._({ id: "cPKL6O" });
30
- case "CREATE_FLAVOR_CONFLICT": return e._({ id: "OlmKCg" });
31
- case "CREATE_FLAVOR_SERVER_ERROR": return e._({ id: "qaAo9Y" });
32
- case "CREATE_FLAVOR_FAILED": return e._({ id: "QuJSSl" });
33
- case "DELETE_FLAVOR_UNAUTHORIZED": return e._({ id: "2gH+i8" });
34
- case "DELETE_FLAVOR_FORBIDDEN": return e._({ id: "EPMHs9" });
35
- case "DELETE_FLAVOR_NOT_FOUND": return e._({ id: "rIi6x4" });
36
- case "DELETE_FLAVOR_SERVER_ERROR": return e._({ id: "tASa/P" });
37
- case "DELETE_FLAVOR_FAILED": return e._({ id: "h3P8z+" });
38
- case "DELETE_FLAVOR_INVALID_ID": return e._({ id: "YUU0QW" });
39
- case "CREATE_EXTRA_SPECS_UNAUTHORIZED": return e._({ id: "RTQFAw" });
40
- case "CREATE_EXTRA_SPECS_FORBIDDEN": return e._({ id: "kGmM/p" });
41
- case "CREATE_EXTRA_SPECS_NOT_FOUND": return e._({ id: "HxTYrE" });
42
- case "CREATE_EXTRA_SPECS_CONFLICT": return e._({ id: "6oolxV" });
43
- case "CREATE_EXTRA_SPECS_INVALID_DATA": return e._({ id: "JoECY1" });
44
- case "CREATE_EXTRA_SPECS_SERVER_ERROR": return e._({ id: "jMc/mo" });
45
- case "CREATE_EXTRA_SPECS_PARSE_ERROR": return e._({ id: "07WXfc" });
46
- case "CREATE_EXTRA_SPECS_FAILED": return e._({ id: "7BpykL" });
47
- case "GET_EXTRA_SPECS_UNAUTHORIZED": return e._({ id: "3nWqQW" });
48
- case "GET_EXTRA_SPECS_FORBIDDEN": return e._({ id: "wcUecy" });
49
- case "GET_EXTRA_SPECS_NOT_FOUND": return e._({ id: "M470oJ" });
50
- case "GET_EXTRA_SPECS_SERVER_ERROR": return e._({ id: "tIrNgH" });
51
- case "GET_EXTRA_SPECS_PARSE_ERROR": return e._({ id: "07WXfc" });
52
- case "GET_EXTRA_SPECS_FAILED": return e._({ id: "lhIa6x" });
53
- case "DELETE_EXTRA_SPEC_UNAUTHORIZED": return e._({ id: "dVdc7N" });
54
- case "DELETE_EXTRA_SPEC_FORBIDDEN": return e._({ id: "YrAy/S" });
55
- case "DELETE_EXTRA_SPEC_NOT_FOUND": return e._({ id: "vBUQNE" });
56
- case "DELETE_EXTRA_SPEC_SERVER_ERROR": return e._({ id: "0kc0zi" });
57
- case "DELETE_EXTRA_SPEC_INVALID_KEY": return e._({ id: "ylfbpz" });
58
- case "DELETE_EXTRA_SPEC_FAILED": return e._({ id: "TfdeUd" });
59
- case "GET_FLAVOR_ACCESS_UNAUTHORIZED": return e._({ id: "Mt6sRo" });
60
- case "GET_FLAVOR_ACCESS_FORBIDDEN": return e._({ id: "MbKJNP" });
61
- case "GET_FLAVOR_ACCESS_NOT_FOUND": return e._({ id: "HxTYrE" });
62
- case "GET_FLAVOR_ACCESS_SERVER_ERROR": return e._({ id: "YsOJlj" });
63
- case "GET_FLAVOR_ACCESS_FAILED": return e._({ id: "bISG26" });
64
- case "ADD_TENANT_ACCESS_FAILED": return e._({ id: "rIe0oV" });
65
- case "ADD_TENANT_ACCESS_INVALID_DATA": return e._({ id: "gztCjq" });
66
- case "ADD_TENANT_ACCESS_UNAUTHORIZED": return e._({ id: "+Lt5cp" });
67
- case "ADD_TENANT_ACCESS_FORBIDDEN": return e._({ id: "8s0tOH" });
68
- case "ADD_TENANT_ACCESS_NOT_FOUND": return e._({ id: "1rPB1p" });
69
- case "ADD_TENANT_ACCESS_CONFLICT": return e._({ id: "NRMm0E" });
70
- case "ADD_TENANT_ACCESS_SERVER_ERROR": return e._({ id: "KoQP4F" });
71
- case "REMOVE_TENANT_ACCESS_FAILED": return e._({ id: "ZhVSpK" });
72
- case "REMOVE_TENANT_ACCESS_INVALID_DATA": return e._({ id: "gztCjq" });
73
- case "REMOVE_TENANT_ACCESS_UNAUTHORIZED": return e._({ id: "78+riR" });
74
- case "REMOVE_TENANT_ACCESS_FORBIDDEN": return e._({ id: "qs+BrU" });
75
- case "REMOVE_TENANT_ACCESS_NOT_FOUND": return e._({ id: "Do5/uH" });
76
- case "REMOVE_TENANT_ACCESS_CONFLICT": return e._({ id: "+nQTmZ" });
77
- case "REMOVE_TENANT_ACCESS_SERVER_ERROR": return e._({ id: "0BSSYj" });
78
- case "COMPUTE_SERVICE_UNAVAILABLE": return e._({ id: "gGdfWx" });
79
- case "COMPUTE_SERVICE_CONNECTION_FAILED": return e._({ id: "Qg4EG6" });
80
- default: return e._({ id: "byKna+" });
81
- }
82
- },
83
- isRetryableError: (e) => ["FLAVORS_SERVER_ERROR", "FLAVORS_FETCH_FAILED"].includes(e)
84
- };
85
- };
86
- //#endregion
87
- //#region src/client/routes/_auth/projects/$projectId/compute/flavors/-components/EditSpecModal.tsx
88
- function E(e) {
89
- return Object.entries(e).map(([e, t]) => ({
90
- key: e,
91
- value: t,
92
- isEditing: !1
93
- }));
94
- }
95
- var D = (e, t, n) => e.compute.getExtraSpecs.query({
96
- project_id: t,
97
- flavorId: n
98
- });
99
- function O({ client: i, project: l, flavor: f, isLoading: _, onClose: v, initialSpecs: b }) {
100
- let { i18n: S, _: C } = x(), { translateError: w } = T(), [E, D] = y(b), [O, k] = y({}), [A, j] = y(!1), [M, N] = y(""), [P, F] = y(""), [I, L] = y(!1), [R, z] = y(null), B = I || A || E.some((e) => e.isEditing), V = (e, t) => {
101
- let n = e?.trim();
102
- return n ? E.some((e, r) => e.key.trim() === n && r !== t) ? S._({ id: "i6/ygf" }) : null : S._({ id: "QV1ZPO" });
103
- }, H = async () => {
104
- let e = V(M, E.length);
105
- if (e) {
106
- k({ newKey: "error" }), z(e);
107
- return;
108
- }
109
- if (!P.trim()) {
110
- k({ newValue: "error" }), z(S._({ id: "hXUWyd" }));
111
- return;
112
- }
113
- L(!0);
114
- try {
115
- await i.compute.createExtraSpecs.mutate({
116
- project_id: l,
117
- flavorId: f.id,
118
- extra_specs: { [M.trim()]: P.trim() }
119
- }), D([...E, {
120
- key: M.trim(),
121
- value: P.trim(),
122
- isEditing: !1
123
- }]), N(""), F(""), j(!1), k({}), z(null), c.success(S._({ id: "OhoNl2" }), { description: S._({ id: "De+cs2" }) });
124
- } catch (e) {
125
- let t = w(e instanceof Error ? e.message : "Failed to create property");
126
- z(t);
127
- } finally {
128
- L(!1);
129
- }
130
- }, U = () => {
131
- N(""), F(""), j(!1), k({}), z(null);
132
- }, W = (e) => {
133
- D(E.map((t, n) => n === e ? {
134
- ...t,
135
- isEditing: !0,
136
- editingValue: t.value
137
- } : {
138
- ...t,
139
- isEditing: !1
140
- })), j(!1);
141
- }, G = async (e) => {
142
- let t = E[e];
143
- if (!t.value.trim()) {
144
- k({ [`edit-value-${e}`]: "error" }), z(S._({ id: "hXUWyd" }));
145
- return;
146
- }
147
- L(!0);
148
- try {
149
- let n = t.value.trim();
150
- await i.compute.createExtraSpecs.mutate({
151
- project_id: l,
152
- flavorId: f.id,
153
- extra_specs: { [t.key]: n }
154
- }), D(E.map((r, i) => i === e ? {
155
- key: t.key,
156
- value: n,
157
- isEditing: !1
158
- } : r)), k({}), z(null), c.success(S._({ id: "6/z5tA" }), { description: S._({ id: "qXyZuV" }) });
159
- } catch (e) {
160
- let t = w(e instanceof Error ? e.message : "Failed to update property");
161
- z(t);
162
- } finally {
163
- L(!1);
164
- }
165
- }, K = (e) => {
166
- D(E.map((t, n) => n === e ? {
167
- key: t.key,
168
- value: t.editingValue ?? t.value,
169
- isEditing: !1
170
- } : t)), k({}), z(null);
171
- }, q = async (e) => {
172
- let t = E[e];
173
- L(!0);
174
- try {
175
- await i.compute.deleteExtraSpec.mutate({
176
- project_id: l,
177
- flavorId: f.id,
178
- key: t.key
179
- }), D(E.filter((t, n) => n !== e)), k({}), z(null), c.success(S._({ id: "Sjuoog" }), { description: S._({ id: "6Ur0UX" }) });
180
- } catch (e) {
181
- let t = w(e instanceof Error ? e.message : "Failed to delete property");
182
- z(t);
183
- } finally {
184
- L(!1);
185
- }
186
- }, J = (e, t) => {
187
- D(E.map((n, r) => r === e ? {
188
- ...n,
189
- value: t
190
- } : n)), O[`edit-value-${e}`] && (k((t) => {
191
- let n = { ...t };
192
- return delete n[`edit-value-${e}`], n;
193
- }), z(null));
194
- };
195
- return /*#__PURE__*/ m(r, {
196
- open: !0,
197
- onCancel: () => {
198
- I || (j(!1), N(""), F(""), k({}), z(null), v());
199
- },
200
- size: "xl",
201
- title: S._({ id: "SIfYq6" }),
202
- cancelButtonLabel: S._({ id: "yz7wBu" }),
203
- disableCancelButton: I,
204
- children: _ ? /*#__PURE__*/ m(u, {
205
- status: "progress",
206
- title: S._({ id: "USQ/Wg" }),
207
- className: "mt-0"
208
- }) : /*#__PURE__*/ h("div", { children: [
209
- R && /*#__PURE__*/ m(t, {
210
- variant: "error",
211
- text: R,
212
- className: "mb-4"
213
- }),
214
- /*#__PURE__*/ m(n, {
215
- direction: "horizontal",
216
- className: "mb-4 justify-end",
217
- children: /*#__PURE__*/ m(a, {
218
- label: S._({ id: "sWBLli" }),
219
- onClick: () => j(!0),
220
- disabled: B
221
- })
222
- }),
223
- E.length === 0 && !A ? /*#__PURE__*/ m(u, {
224
- status: "empty",
225
- title: S._({ id: "qTRcSX" }),
226
- body: S._({ id: "PVTJPk" })
227
- }) : /*#__PURE__*/ h(d, {
228
- className: "mb-6 grid-cols-2",
229
- alignTerms: "left",
230
- children: [/*#__PURE__*/ m(p, { children: A && /*#__PURE__*/ h(p, { children: [/*#__PURE__*/ m(s, {
231
- className: "col-span-1",
232
- children: /*#__PURE__*/ m(o, {
233
- value: M,
234
- onChange: (e) => {
235
- N(e.target.value), O.newKey && (k((e) => {
236
- let t = { ...e };
237
- return delete t.newKey, t;
238
- }), z(null));
239
- },
240
- placeholder: S._({ id: "x9AdZ8" }),
241
- invalid: !!O.newKey,
242
- autoFocus: !0,
243
- disabled: I
244
- })
245
- }), /*#__PURE__*/ h(e, {
246
- className: "col-span-1 flex items-center gap-2",
247
- children: [/*#__PURE__*/ m("div", {
248
- className: "flex-1",
249
- children: /*#__PURE__*/ m(o, {
250
- value: P,
251
- onChange: (e) => {
252
- F(e.target.value), O.newValue && (k((e) => {
253
- let t = { ...e };
254
- return delete t.newValue, t;
255
- }), z(null));
256
- },
257
- placeholder: S._({ id: "wMHvYH" }),
258
- invalid: !!O.newValue,
259
- disabled: I
260
- })
261
- }), /*#__PURE__*/ h(n, {
262
- direction: "horizontal",
263
- gap: "2",
264
- className: "shrink-0",
265
- children: [/*#__PURE__*/ m(a, {
266
- size: "small",
267
- variant: "primary",
268
- onClick: H,
269
- icon: "check",
270
- title: S._({ id: "tfDRzk" }),
271
- "aria-label": S._({ id: "tfDRzk" }),
272
- disabled: I
273
- }), /*#__PURE__*/ m(a, {
274
- size: "small",
275
- variant: "subdued",
276
- onClick: U,
277
- icon: "close",
278
- title: S._({ id: "bzSI52" }),
279
- "aria-label": S._({ id: "bzSI52" }),
280
- disabled: I
281
- })]
282
- })]
283
- })] }) }), /*#__PURE__*/ m(p, { children: E.map((t, r) => /*#__PURE__*/ h(g.Fragment, { children: [/*#__PURE__*/ m(s, {
284
- className: "col-span-1",
285
- children: (t.isEditing, /*#__PURE__*/ m("span", {
286
- className: "jn:text-theme-high block break-all",
287
- title: t.key,
288
- children: t.key
289
- }))
290
- }), /*#__PURE__*/ m(e, {
291
- className: "col-span-1 flex items-center gap-2",
292
- children: t.isEditing ? /*#__PURE__*/ h(p, { children: [/*#__PURE__*/ m("div", {
293
- className: "flex-1",
294
- children: /*#__PURE__*/ m(o, {
295
- value: t.value,
296
- onChange: (e) => J(r, e.target.value),
297
- invalid: !!O[`edit-value-${r}`],
298
- disabled: I
299
- })
300
- }), /*#__PURE__*/ h(n, {
301
- direction: "horizontal",
302
- gap: "2",
303
- className: "shrink-0",
304
- children: [/*#__PURE__*/ m(a, {
305
- size: "small",
306
- variant: "primary",
307
- onClick: () => G(r),
308
- icon: "check",
309
- title: S._({ id: "tfDRzk" }),
310
- "aria-label": S._({ id: "tfDRzk" }),
311
- disabled: I
312
- }), /*#__PURE__*/ m(a, {
313
- size: "small",
314
- variant: "subdued",
315
- onClick: () => K(r),
316
- icon: "close",
317
- title: S._({ id: "bzSI52" }),
318
- "aria-label": S._({ id: "bzSI52" }),
319
- disabled: I
320
- })]
321
- })] }) : /*#__PURE__*/ h(p, { children: [/*#__PURE__*/ m("span", {
322
- className: "jn:text-theme-default flex-1 break-all",
323
- title: t.value,
324
- children: t.value
325
- }), /*#__PURE__*/ h(n, {
326
- direction: "horizontal",
327
- gap: "2",
328
- className: "shrink-0",
329
- children: [/*#__PURE__*/ m(a, {
330
- size: "small",
331
- variant: "subdued",
332
- onClick: () => W(r),
333
- icon: "edit",
334
- "data-testid": `edit-${t.key}`,
335
- title: S._({ id: "ePK91l" }),
336
- disabled: B
337
- }), /*#__PURE__*/ m(a, {
338
- size: "small",
339
- onClick: () => q(r),
340
- icon: "deleteForever",
341
- "data-testid": `delete-${t.key}`,
342
- title: S._({ id: "cnGeoo" }),
343
- "aria-label": S._({ id: "cnGeoo" }),
344
- disabled: B
345
- })]
346
- })] })
347
- })] }, r)) })]
348
- })
349
- ] })
350
- });
351
- }
352
- var k = ({ client: e, isOpen: t, onClose: n, project: i, flavor: a }) => {
353
- let { i18n: o, _: s } = x(), { translateError: c } = T(), [l, d] = y(null), [f, p] = y(!1), [h, g] = y(null);
354
- _(() => {
355
- if (!t || !a?.id) {
356
- d(null), g(null);
357
- return;
358
- }
359
- let n = !1;
360
- return p(!0), g(null), (async () => {
361
- try {
362
- let t = await D(e, i, a.id);
363
- if (n) return;
364
- d(t);
365
- } catch (e) {
366
- if (n) return;
367
- g(e instanceof Error ? e.message : "Failed to Load Metadata");
368
- } finally {
369
- n || p(!1);
370
- }
371
- })(), () => {
372
- n = !0;
373
- };
374
- }, [
375
- t,
376
- a?.id,
377
- e,
378
- i
379
- ]);
380
- let b = v(() => l ? E(l) : [], [l]);
381
- return !t || !a ? null : f ? /*#__PURE__*/ m(r, {
382
- open: !0,
383
- onCancel: n,
384
- size: "xl",
385
- title: o._({ id: "SIfYq6" }),
386
- children: /*#__PURE__*/ m(u, {
387
- status: "progress",
388
- title: o._({ id: "USQ/Wg" }),
389
- className: "mt-0"
390
- })
391
- }) : h ? /*#__PURE__*/ m(r, {
392
- open: !0,
393
- onCancel: n,
394
- size: "xl",
395
- title: o._({ id: "SIfYq6" }),
396
- children: /*#__PURE__*/ m(u, {
397
- status: "error",
398
- title: o._({ id: "mXHHga" }),
399
- body: c(h),
400
- className: "mt-0"
401
- })
402
- }) : /*#__PURE__*/ m(O, {
403
- client: e,
404
- project: i,
405
- flavor: a,
406
- isLoading: !1,
407
- onClose: n,
408
- initialSpecs: b
409
- }, a.id);
410
- }, A = (e) => ({
411
- message: /*#__PURE__*/ m(b, { id: "82AGsl" }),
412
- description: /*#__PURE__*/ m(b, {
413
- id: "/BrQY5",
414
- values: { name: e }
415
- })
416
- }), j = (e) => ({
417
- message: /*#__PURE__*/ m(b, { id: "AXvHUK" }),
418
- description: /*#__PURE__*/ m(b, {
419
- id: "zLKgq7",
420
- values: { name: e }
421
- })
422
- }), M = (e, t) => ({
423
- message: /*#__PURE__*/ m(b, { id: "f5ua4b" }),
424
- description: /*#__PURE__*/ m(b, {
425
- id: "uWOaBO",
426
- values: {
427
- projectId: e,
428
- flavorName: t
429
- }
430
- })
431
- }), N = (e, t) => ({
432
- message: /*#__PURE__*/ m(b, { id: "8las2k" }),
433
- description: /*#__PURE__*/ m(b, {
434
- id: "pVIs7q",
435
- values: {
436
- projectId: e,
437
- flavorName: t
438
- }
439
- })
440
- }), P = (e, t) => ({
441
- message: /*#__PURE__*/ m(b, { id: "m1kN9i" }),
442
- description: /*#__PURE__*/ m(b, {
443
- id: "x4oeph",
444
- values: {
445
- projectId: e,
446
- errorMessage: t
447
- }
448
- })
449
- });
450
- //#endregion
451
- //#region src/client/routes/_auth/projects/$projectId/compute/flavors/-components/ManageAccessModal.tsx
452
- function F(e) {
453
- return e.map((e) => ({ projectId: e.tenant_id }));
454
- }
455
- var I = (e, t) => e.compute.canUser.query({
456
- project_id: t,
457
- permission: ["flavors:add_project", "flavors:remove_project"]
458
- }).then(([e, t]) => ({
459
- canAdd: e,
460
- canRemove: t
461
- })), L = (e, t, n) => e.compute.getFlavorAccess.query({
462
- project_id: t,
463
- flavorId: n
464
- });
465
- function R({ client: i, project: l, flavor: f, isLoading: _, onClose: v, initialAccess: b, canAdd: S, canRemove: C }) {
466
- let { i18n: w, _: E } = x(), { translateError: D } = T(), [O, k] = y(b), [A, j] = y({}), [F, I] = y(!1), [L, R] = y(""), [z, B] = y(/* @__PURE__ */ new Set()), [V, H] = y(!1), U = f["os-flavor-access:is_public"] !== !1, W = (e) => {
467
- let t = e?.trim();
468
- return t ? O.some((e) => e.projectId.trim() === t) ? w._({ id: "8gXJTW" }) : null : w._({ id: "sMpIRo" });
469
- }, G = async () => {
470
- let e = W(L);
471
- if (e) {
472
- j({ newProjectId: e });
473
- return;
474
- }
475
- let t = L.trim();
476
- H(!0), j({});
477
- try {
478
- await i.compute.addTenantAccess.mutate({
479
- project_id: l,
480
- flavorId: f.id,
481
- targetProjectId: t
482
- }), k((e) => [...e, { projectId: t }]), R(""), I(!1);
483
- let { message: e, ...n } = M(t, f.name);
484
- c.success(e, n);
485
- } catch (e) {
486
- let t = D(e instanceof Error ? e.message : "Failed to add access");
487
- j({ newProjectId: t });
488
- } finally {
489
- H(!1);
490
- }
491
- }, K = () => {
492
- R(""), I(!1), j({});
493
- }, q = async (e) => {
494
- j({}), B((t) => new Set(t).add(e));
495
- try {
496
- await i.compute.removeTenantAccess.mutate({
497
- project_id: l,
498
- flavorId: f.id,
499
- targetProjectId: e
500
- }), k((t) => t.filter((t) => t.projectId !== e));
501
- let { message: t, ...n } = N(e, f.name);
502
- c.success(t, n);
503
- } catch (t) {
504
- let { message: n, ...r } = P(e, D(t instanceof Error ? t.message : "Failed to remove access"));
505
- c.error(n, r);
506
- } finally {
507
- B((t) => {
508
- let n = new Set(t);
509
- return n.delete(e), n;
510
- });
511
- }
512
- }, J = () => {
513
- I(!1), R(""), j({}), v();
514
- };
515
- if (U) {
516
- let e = f.name;
517
- return /*#__PURE__*/ m(r, {
518
- open: !0,
519
- onCancel: J,
520
- size: "large",
521
- title: w._({
522
- id: "6Rnrsz",
523
- values: { flavorName: e }
524
- }),
525
- children: /*#__PURE__*/ m("p", {
526
- className: "jn:text-theme-light py-8 text-center",
527
- children: w._({ id: "gzPLLI" })
528
- })
529
- });
530
- }
531
- let Y = f.name, X = V || z.size > 0;
532
- return /*#__PURE__*/ m(r, {
533
- open: !0,
534
- onCancel: J,
535
- size: "large",
536
- title: w._({
537
- id: "6Rnrsz",
538
- values: { flavorName: Y }
539
- }),
540
- children: _ ? /*#__PURE__*/ m(u, {
541
- status: "progress",
542
- title: w._({ id: "Z+2zIa" }),
543
- className: "mt-0"
544
- }) : /*#__PURE__*/ h("div", { children: [
545
- A.newProjectId && /*#__PURE__*/ m(t, {
546
- variant: "error",
547
- text: A.newProjectId,
548
- className: "mb-4"
549
- }),
550
- S && /*#__PURE__*/ m(n, {
551
- direction: "horizontal",
552
- className: "mb-4 justify-end",
553
- children: /*#__PURE__*/ m(a, {
554
- label: w._({ id: "zmHcLu" }),
555
- onClick: () => I(!0),
556
- disabled: F || X
557
- })
558
- }),
559
- O.length === 0 && !F ? /*#__PURE__*/ m("p", {
560
- className: "jn:text-theme-light py-8 text-center",
561
- children: S ? w._({ id: "R8o5/x" }) : w._({ id: "PonzUM" })
562
- }) : /*#__PURE__*/ h(d, {
563
- className: "mb-6",
564
- children: [/*#__PURE__*/ m(p, { children: F && /*#__PURE__*/ h(p, { children: [/*#__PURE__*/ m(s, {
565
- className: "flex items-center justify-end",
566
- children: /*#__PURE__*/ m("span", {
567
- className: "jn:text-theme-high",
568
- children: w._({ id: "e0NrBM" })
569
- })
570
- }), /*#__PURE__*/ m(e, { children: /*#__PURE__*/ h("div", {
571
- className: "flex w-full items-center gap-2",
572
- children: [/*#__PURE__*/ m("div", {
573
- className: "flex-1",
574
- children: /*#__PURE__*/ m(o, {
575
- value: L,
576
- onChange: (e) => {
577
- R(e.target.value), A.newProjectId && j({});
578
- },
579
- placeholder: w._({ id: "vlyDm2" }),
580
- invalid: !!A.newProjectId,
581
- autoFocus: !0,
582
- wrapperClassName: "w-full",
583
- disabled: V
584
- })
585
- }), /*#__PURE__*/ h("div", {
586
- className: "flex shrink-0 gap-2",
587
- children: [/*#__PURE__*/ m(a, {
588
- size: "small",
589
- variant: "primary",
590
- onClick: G,
591
- icon: "check",
592
- title: w._({ id: "m16xKo" }),
593
- disabled: V,
594
- progress: V
595
- }), /*#__PURE__*/ m(a, {
596
- size: "small",
597
- variant: "subdued",
598
- onClick: K,
599
- icon: "close",
600
- title: w._({ id: "dEgA5A" }),
601
- disabled: V
602
- })]
603
- })]
604
- }) })] }) }), /*#__PURE__*/ m(p, { children: O.map((t) => {
605
- let r = z.has(t.projectId);
606
- return /*#__PURE__*/ h(g.Fragment, { children: [/*#__PURE__*/ m(s, { children: /*#__PURE__*/ m("span", {
607
- className: "jn:text-theme-high",
608
- children: w._({ id: "e0NrBM" })
609
- }) }), /*#__PURE__*/ m(e, { children: /*#__PURE__*/ h(n, {
610
- direction: "horizontal",
611
- gap: "2",
612
- alignment: "center",
613
- className: "justify-between",
614
- children: [/*#__PURE__*/ m("span", {
615
- className: "jn:text-theme-high block max-w-xs truncate",
616
- title: t.projectId,
617
- children: t.projectId
618
- }), C && /*#__PURE__*/ m(a, {
619
- size: "small",
620
- onClick: () => q(t.projectId),
621
- icon: "deleteForever",
622
- "data-testid": `delete-${t.projectId}`,
623
- title: w._({ id: "t/YqKh" }),
624
- disabled: r || F,
625
- progress: r
626
- })]
627
- }) })] }, t.projectId);
628
- }) })]
629
- })
630
- ] })
631
- });
632
- }
633
- var z = ({ client: e, isOpen: t, onClose: n, project: i, flavor: a }) => {
634
- let { i18n: o, _: s } = x(), { translateError: c } = T(), [l, d] = y(null), [f, p] = y(null), [h, g] = y(!0), [b, S] = y(null);
635
- _(() => {
636
- if (!t || !a?.id) {
637
- d(null), p(null), S(null);
638
- return;
639
- }
640
- let n = !1;
641
- return g(!0), S(null), (async () => {
642
- try {
643
- let [t, r] = await Promise.all([L(e, i, a.id), I(e, i)]);
644
- if (n) return;
645
- let o = t.filter((e, t, n) => n.findIndex((t) => t.tenant_id === e.tenant_id) === t);
646
- d(o), p(r);
647
- } catch (e) {
648
- if (n) return;
649
- S(e instanceof Error ? e.message : "Failed to Load Access Data");
650
- } finally {
651
- n || g(!1);
652
- }
653
- })(), () => {
654
- n = !0;
655
- };
656
- }, [
657
- t,
658
- a?.id,
659
- e,
660
- i
661
- ]);
662
- let C = v(() => l ? F(l) : [], [l]);
663
- if (!t || !a) return null;
664
- let w = a.name;
665
- return h ? /*#__PURE__*/ m(r, {
666
- open: !0,
667
- onCancel: n,
668
- size: "large",
669
- title: o._({
670
- id: "6Rnrsz",
671
- values: { flavorName: w }
672
- }),
673
- children: /*#__PURE__*/ m(u, {
674
- status: "progress",
675
- title: o._({ id: "Z+2zIa" }),
676
- className: "mt-0"
677
- })
678
- }) : b ? /*#__PURE__*/ m(r, {
679
- open: !0,
680
- onCancel: n,
681
- size: "large",
682
- title: o._({
683
- id: "6Rnrsz",
684
- values: { flavorName: w }
685
- }),
686
- children: /*#__PURE__*/ m(u, {
687
- status: "error",
688
- title: o._({ id: "LMKSWT" }),
689
- body: c(b),
690
- className: "mt-0"
691
- })
692
- }) : /*#__PURE__*/ m(R, {
693
- client: e,
694
- project: i,
695
- flavor: a,
696
- isLoading: !1,
697
- onClose: n,
698
- initialAccess: C,
699
- canAdd: f?.canAdd ?? !1,
700
- canRemove: f?.canRemove ?? !1
701
- }, a.id);
702
- }, B = ({ client: a, isOpen: c, onClose: u, project: p, flavor: g, onSuccess: _ }) => {
703
- let { i18n: v, _: E } = x(), { translateError: D } = T(), [O, k] = y(!1), [A, j] = y(null), { trackClose: M, markSubmitted: N, resetTracking: P } = f({
704
- isOpen: c,
705
- actionPrefix: "compute.flavor.delete"
706
- }), F = S.object({ confirm: S.string().refine((e) => e === "delete", { message: v._({ id: "QytzQr" }) }) }), I = C({
707
- defaultValues: { confirm: "" },
708
- validators: { onSubmit: F },
709
- onSubmit: async () => {
710
- if (!g?.id) {
711
- j(v._({ id: "NlcF/v" }));
712
- return;
713
- }
714
- if (!O) {
715
- N(), j(null);
716
- try {
717
- k(!0), await a.compute.deleteFlavor.mutate({
718
- project_id: p,
719
- flavorId: g.id
720
- }), _(), R();
721
- } catch (e) {
722
- let t = e?.message ? D(e.message) : v._({ id: "8zAn1f" });
723
- j(t);
724
- } finally {
725
- k(!1);
726
- }
727
- }
728
- }
729
- }), L = w(I.store, (e) => e.isSubmitting || e.values.confirm !== "delete"), R = () => {
730
- M(), k(!1), j(null), I.reset(), P(), u();
731
- }, z = O ? v._({ id: "EF2EU9" }) : v._({ id: "JT3I1g" }), B = g?.name;
732
- return /*#__PURE__*/ m(r, {
733
- open: c,
734
- onCancel: R,
735
- title: v._({
736
- id: "W3mNTY",
737
- values: { flavorName: B }
738
- }),
739
- size: "small",
740
- confirmButtonLabel: z,
741
- confirmButtonVariant: "primary-danger",
742
- onConfirm: I.handleSubmit,
743
- cancelButtonLabel: v._({ id: "dEgA5A" }),
744
- disableConfirmButton: L || O,
745
- disableCancelButton: O,
746
- disableCloseButton: O,
747
- children: /*#__PURE__*/ h(n, {
748
- direction: "vertical",
749
- gap: "4",
750
- children: [
751
- A && /*#__PURE__*/ m(t, {
752
- variant: "error",
753
- children: A
754
- }),
755
- /*#__PURE__*/ m("p", {
756
- className: "text-theme-default",
757
- children: /*#__PURE__*/ m(b, { id: "QQ8wUG" })
758
- }),
759
- g && /*#__PURE__*/ h(d, { children: [
760
- /*#__PURE__*/ m(s, { children: v._({ id: "6YtxFj" }) }),
761
- /*#__PURE__*/ m(e, { children: g.name }),
762
- /*#__PURE__*/ m(s, { children: v._({ id: "S0kLOH" }) }),
763
- /*#__PURE__*/ m(e, { children: g.id }),
764
- /*#__PURE__*/ m(s, { children: v._({ id: "MZGbkp" }) }),
765
- /*#__PURE__*/ m(e, { children: g.vcpus }),
766
- /*#__PURE__*/ m(s, { children: v._({ id: "RGhYAo" }) }),
767
- /*#__PURE__*/ h(e, { children: [g.ram, " MiB"] }),
768
- /*#__PURE__*/ m(s, { children: v._({ id: "sPFHpI" }) }),
769
- /*#__PURE__*/ h(e, { children: [g.disk, " GiB"] }),
770
- /*#__PURE__*/ m(s, { children: v._({ id: "vH2C/2" }) }),
771
- /*#__PURE__*/ m(e, { children: g.swap === 0 || g.swap === "" ? /*#__PURE__*/ m(b, { id: "EdQY6l" }) : `${Number(g.swap)} MiB` })
772
- ] }),
773
- /*#__PURE__*/ m(i, {
774
- className: "mb-0",
775
- id: "delete-flavor-form",
776
- onSubmit: (e) => {
777
- e.preventDefault(), I.handleSubmit();
778
- },
779
- children: /*#__PURE__*/ m(l, { children: /*#__PURE__*/ m(I.Field, {
780
- name: "confirm",
781
- children: (e) => /*#__PURE__*/ m(o, {
782
- id: e.name,
783
- name: e.name,
784
- label: v._({ id: "QytzQr" }),
785
- value: e.state.value,
786
- onChange: (t) => e.handleChange(t.target.value),
787
- placeholder: "delete",
788
- autoFocus: !0,
789
- disabled: O,
790
- required: !0
791
- })
792
- }) })
793
- })
794
- ]
795
- })
796
- });
797
- };
798
- //#endregion
799
- export { k as a, j as i, z as n, T as o, A as r, B as t };
800
-
801
- //# sourceMappingURL=DeleteFlavorModal-C2MqUgGR.mjs.map