@cobaltcore-dev/aurora 1.0.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (205) hide show
  1. package/README.md +59 -9
  2. package/dist/client/App.d.ts +2 -1
  3. package/dist/client/AuroraApp.d.ts +45 -0
  4. package/dist/client/{AuthProvider-5TyZKZkx.mjs → AuthProvider-CVSAwW9f.mjs} +23 -9
  5. package/dist/client/AuthProvider-CVSAwW9f.mjs.map +1 -0
  6. package/dist/client/{ContentHeader-D64NtKvo.mjs → ContentHeader-CPJbgYWn.mjs} +18 -18
  7. package/dist/client/{ContentHeader-D64NtKvo.mjs.map → ContentHeader-CPJbgYWn.mjs.map} +1 -1
  8. package/dist/client/DeleteFlavorModal-V44QCJBd.mjs +773 -0
  9. package/dist/client/DeleteFlavorModal-V44QCJBd.mjs.map +1 -0
  10. package/dist/client/DynamicBreadcrumbContext-CVcUQFou.mjs +26 -0
  11. package/dist/client/DynamicBreadcrumbContext-CVcUQFou.mjs.map +1 -0
  12. package/dist/client/{FiltersInput-Bw8TFfwb.mjs → FiltersInput-CKI6zWnm.mjs} +22 -22
  13. package/dist/client/{FiltersInput-Bw8TFfwb.mjs.map → FiltersInput-CKI6zWnm.mjs.map} +1 -1
  14. package/dist/client/FloatingIpActionModals-CwEC5GR-.mjs +460 -0
  15. package/dist/client/FloatingIpActionModals-CwEC5GR-.mjs.map +1 -0
  16. package/dist/client/ImageToastNotifications-m6c3tVPb.mjs +1152 -0
  17. package/dist/client/ImageToastNotifications-m6c3tVPb.mjs.map +1 -0
  18. package/dist/client/{SortInput-DysAXpB3.mjs → SortInput-4g7nSTHW.mjs} +14 -14
  19. package/dist/client/SortInput-4g7nSTHW.mjs.map +1 -0
  20. package/dist/client/{TwoColumnDescriptionList-B3xunXmz.mjs → TwoColumnDescriptionList-NvgvErua.mjs} +6 -6
  21. package/dist/client/{TwoColumnDescriptionList-B3xunXmz.mjs.map → TwoColumnDescriptionList-NvgvErua.mjs.map} +1 -1
  22. package/dist/client/_-CAsCx-Ay.mjs +6 -0
  23. package/dist/client/_-CAsCx-Ay.mjs.map +1 -0
  24. package/dist/client/_auth-SrDjHL6j.mjs +12 -0
  25. package/dist/client/_auth-SrDjHL6j.mjs.map +1 -0
  26. package/dist/client/_flavorId-9PcBBW52.mjs +231 -0
  27. package/dist/client/_flavorId-9PcBBW52.mjs.map +1 -0
  28. package/dist/client/{_flavorId-Zj7LNL-R.mjs → _flavorId-a9Gu66R1.mjs} +3 -9
  29. package/dist/client/_flavorId-a9Gu66R1.mjs.map +1 -0
  30. package/dist/client/_floatingIpId-AE9Fu8l6.mjs +210 -0
  31. package/dist/client/_floatingIpId-AE9Fu8l6.mjs.map +1 -0
  32. package/dist/client/{_floatingIpId-DCQQpNO-.mjs → _floatingIpId-AZ11Ksmu.mjs} +3 -9
  33. package/dist/client/_floatingIpId-AZ11Ksmu.mjs.map +1 -0
  34. package/dist/client/_imageId-BtAql2Kr.mjs +570 -0
  35. package/dist/client/_imageId-BtAql2Kr.mjs.map +1 -0
  36. package/dist/client/_imageId-D76BxvFY.mjs +39 -0
  37. package/dist/client/_imageId-D76BxvFY.mjs.map +1 -0
  38. package/dist/client/_projectId-7Nl1MQTJ.mjs +99 -0
  39. package/dist/client/_projectId-7Nl1MQTJ.mjs.map +1 -0
  40. package/dist/client/_projectId-B3wmSala.mjs +281 -0
  41. package/dist/client/_projectId-B3wmSala.mjs.map +1 -0
  42. package/dist/client/_projectId-DPzv0CCp.mjs +77 -0
  43. package/dist/client/_projectId-DPzv0CCp.mjs.map +1 -0
  44. package/dist/client/_projectId-DfeVJy0G.mjs +30 -0
  45. package/dist/client/_projectId-DfeVJy0G.mjs.map +1 -0
  46. package/dist/client/_securityGroupId-C5huJNfO.mjs +1810 -0
  47. package/dist/client/_securityGroupId-C5huJNfO.mjs.map +1 -0
  48. package/dist/client/{_securityGroupId-Mj8NJT2-.mjs → _securityGroupId-D85mSigA.mjs} +3 -9
  49. package/dist/client/_securityGroupId-D85mSigA.mjs.map +1 -0
  50. package/dist/client/_serviceType-DS8DxsrP.mjs +20 -0
  51. package/dist/client/_serviceType-DS8DxsrP.mjs.map +1 -0
  52. package/dist/client/_serviceType-M8d9rOT6.mjs +6 -0
  53. package/dist/client/_serviceType-M8d9rOT6.mjs.map +1 -0
  54. package/dist/client/_storageType-BRWWJtow.mjs +14 -0
  55. package/dist/client/_storageType-BRWWJtow.mjs.map +1 -0
  56. package/dist/client/_storageType-CzZ4u9x_.mjs +12 -0
  57. package/dist/client/_storageType-CzZ4u9x_.mjs.map +1 -0
  58. package/dist/client/_storageType-Dy9uCVXr.mjs +845 -0
  59. package/dist/client/_storageType-Dy9uCVXr.mjs.map +1 -0
  60. package/dist/client/_storageType-zeSZe--V.mjs.map +1 -1
  61. package/dist/client/{about-WLyShNgE.mjs → about-BmQTyLWc.mjs} +2 -2
  62. package/dist/client/{about-WLyShNgE.mjs.map → about-BmQTyLWc.mjs.map} +1 -1
  63. package/dist/client/assets/{objectDownload.worker-BXFQIIU_.js.map → objectDownload.worker-CWWLPDyb.js.map} +1 -1
  64. package/dist/client/assets/{objectDownload.worker-ECvFtmOF.js.map → objectDownload.worker-kZlQuo3F.js.map} +1 -1
  65. package/dist/client/{aurora-IMO9HhqJ.mjs → aurora-CIml-f2f.mjs} +2 -2
  66. package/dist/client/{aurora-IMO9HhqJ.mjs.map → aurora-CIml-f2f.mjs.map} +1 -1
  67. package/dist/client/{build-DnD-T35u.mjs → build-WuxXRAqf.mjs} +2335 -2667
  68. package/dist/client/{build-DnD-T35u.mjs.map → build-WuxXRAqf.mjs.map} +1 -1
  69. package/dist/client/components/Breadcrumbs.d.ts +1 -0
  70. package/dist/client/components/ListToolbar/SortInput.d.ts +3 -0
  71. package/dist/client/context/BreadcrumbExtensionContext.d.ts +9 -0
  72. package/dist/client/context/DynamicBreadcrumbContext.d.ts +9 -0
  73. package/dist/client/{flavors-Cp0LEGOH.mjs → flavors-B0rbqffG.mjs} +3 -5
  74. package/dist/client/flavors-B0rbqffG.mjs.map +1 -0
  75. package/dist/client/flavors-DWMZ6TuJ.mjs.map +1 -1
  76. package/dist/client/flavors-Rl20bxVU.mjs +628 -0
  77. package/dist/client/flavors-Rl20bxVU.mjs.map +1 -0
  78. package/dist/client/floatingips-Cz9k80cc.mjs +8 -0
  79. package/dist/client/floatingips-Cz9k80cc.mjs.map +1 -0
  80. package/dist/client/floatingips-xbO_mu4f.mjs +576 -0
  81. package/dist/client/floatingips-xbO_mu4f.mjs.map +1 -0
  82. package/dist/client/hooks/useBreadcrumbs.d.ts +16 -0
  83. package/dist/client/hooks/usePushBreadcrumbs.d.ts +10 -0
  84. package/dist/client/hooks/useSetBreadcrumb.d.ts +11 -0
  85. package/dist/client/{hooks-CrriowRk.mjs → hooks-D0yKIumu.mjs} +2 -2
  86. package/dist/client/{hooks-CrriowRk.mjs.map → hooks-D0yKIumu.mjs.map} +1 -1
  87. package/dist/client/images-BGQv9kKT.mjs +1983 -0
  88. package/dist/client/images-BGQv9kKT.mjs.map +1 -0
  89. package/dist/client/{images-DWiM_72I.mjs → images-CPmMa4SQ.mjs} +3 -5
  90. package/dist/client/images-CPmMa4SQ.mjs.map +1 -0
  91. package/dist/client/images-NBf2bV43.mjs.map +1 -1
  92. package/dist/client/index.d.ts +9 -2
  93. package/dist/client/index.js +567 -695
  94. package/dist/client/index.js.map +1 -1
  95. package/dist/client/{md-DNzcRhmz.mjs → md-kvaGCNAK.mjs} +4 -22
  96. package/dist/client/{md-DNzcRhmz.mjs.map → md-kvaGCNAK.mjs.map} +1 -1
  97. package/dist/client/objects-BE_u5yRt.mjs +12950 -0
  98. package/dist/client/objects-BE_u5yRt.mjs.map +1 -0
  99. package/dist/client/objects-BN-59Th0.mjs +66 -0
  100. package/dist/client/objects-BN-59Th0.mjs.map +1 -0
  101. package/dist/client/objects-D9Luf9KB.mjs +66 -0
  102. package/dist/client/objects-D9Luf9KB.mjs.map +1 -0
  103. package/dist/client/projects-yiK0HGSA.mjs.map +1 -1
  104. package/dist/client/routeInfo-DP3v74Wg.mjs +19 -0
  105. package/dist/client/routeInfo-DP3v74Wg.mjs.map +1 -0
  106. package/dist/client/router.d.ts +2 -1
  107. package/dist/client/{routes-B05u5bk4.mjs → routes-CJj7SR_K.mjs} +2 -2
  108. package/dist/client/routes-CJj7SR_K.mjs.map +1 -0
  109. package/dist/client/routes-xofA3ksU.mjs +110 -0
  110. package/dist/client/routes-xofA3ksU.mjs.map +1 -0
  111. package/dist/client/securitygroups-BjhgLBHm.mjs +620 -0
  112. package/dist/client/securitygroups-BjhgLBHm.mjs.map +1 -0
  113. package/dist/client/securitygroups-CtKne8UQ.mjs +8 -0
  114. package/dist/client/securitygroups-CtKne8UQ.mjs.map +1 -0
  115. package/dist/client/{securitygroups-_7SYN2jN.mjs → securitygroups-DEJQBcxm.mjs} +3 -5
  116. package/dist/client/securitygroups-DEJQBcxm.mjs.map +1 -0
  117. package/dist/client/services-D1PbooD1.mjs +6 -0
  118. package/dist/client/services-D1PbooD1.mjs.map +1 -0
  119. package/dist/client/services-DEMVtFyn.mjs +9 -0
  120. package/dist/client/services-DEMVtFyn.mjs.map +1 -0
  121. package/dist/client/trpcClient.d.ts +153 -370
  122. package/dist/client/useBreadcrumbs-ha3IlaxX.mjs +54 -0
  123. package/dist/client/useBreadcrumbs-ha3IlaxX.mjs.map +1 -0
  124. package/dist/client/useModalTracking-BcOKTYRN.mjs +33 -0
  125. package/dist/client/useModalTracking-BcOKTYRN.mjs.map +1 -0
  126. package/dist/client/{useSecurityGroupPermissions-qPwm4mFt.mjs → useSecurityGroupPermissions-BOyLQLdC.mjs} +78 -12
  127. package/dist/client/useSecurityGroupPermissions-BOyLQLdC.mjs.map +1 -0
  128. package/dist/client/useSetBreadcrumb-tn7lBaQV.mjs +19 -0
  129. package/dist/client/useSetBreadcrumb-tn7lBaQV.mjs.map +1 -0
  130. package/dist/client/utils/formatSwiftDate.d.ts +30 -0
  131. package/dist/server/index.d.ts +179 -373
  132. package/dist/server/index.js +910 -530
  133. package/package.json +37 -38
  134. package/dist/client/AuthProvider-5TyZKZkx.mjs.map +0 -1
  135. package/dist/client/DeleteFlavorModal-C2K43ABZ.mjs +0 -732
  136. package/dist/client/DeleteFlavorModal-C2K43ABZ.mjs.map +0 -1
  137. package/dist/client/DeletePcaModal-D9v8E0Ki.mjs +0 -92
  138. package/dist/client/DeletePcaModal-D9v8E0Ki.mjs.map +0 -1
  139. package/dist/client/DetailsInfo-h7rPJ4Jf.mjs +0 -61
  140. package/dist/client/DetailsInfo-h7rPJ4Jf.mjs.map +0 -1
  141. package/dist/client/FloatingIpActionModals-BfEDfYg9.mjs +0 -417
  142. package/dist/client/FloatingIpActionModals-BfEDfYg9.mjs.map +0 -1
  143. package/dist/client/ImageToastNotifications-C0Tluzq-.mjs +0 -1125
  144. package/dist/client/ImageToastNotifications-C0Tluzq-.mjs.map +0 -1
  145. package/dist/client/RouteError-B-NPGIv7.mjs +0 -25
  146. package/dist/client/RouteError-B-NPGIv7.mjs.map +0 -1
  147. package/dist/client/SortInput-DysAXpB3.mjs.map +0 -1
  148. package/dist/client/StatusError-DX-GvLjq.mjs +0 -39
  149. package/dist/client/StatusError-DX-GvLjq.mjs.map +0 -1
  150. package/dist/client/_auth-R5H2yKFf.mjs +0 -11
  151. package/dist/client/_auth-R5H2yKFf.mjs.map +0 -1
  152. package/dist/client/_flavorId-Dit5mM8I.mjs +0 -210
  153. package/dist/client/_flavorId-Dit5mM8I.mjs.map +0 -1
  154. package/dist/client/_flavorId-Zj7LNL-R.mjs.map +0 -1
  155. package/dist/client/_floatingIpId-B0MCoqE3.mjs +0 -215
  156. package/dist/client/_floatingIpId-B0MCoqE3.mjs.map +0 -1
  157. package/dist/client/_floatingIpId-DCQQpNO-.mjs.map +0 -1
  158. package/dist/client/_imageId-CZYzBAVx.mjs +0 -558
  159. package/dist/client/_imageId-CZYzBAVx.mjs.map +0 -1
  160. package/dist/client/_pcaId-CHRRsWmO.mjs +0 -605
  161. package/dist/client/_pcaId-CHRRsWmO.mjs.map +0 -1
  162. package/dist/client/_projectId-B8wWSxPu.mjs +0 -98
  163. package/dist/client/_projectId-B8wWSxPu.mjs.map +0 -1
  164. package/dist/client/_projectId-C5DUYIjt.mjs +0 -291
  165. package/dist/client/_projectId-C5DUYIjt.mjs.map +0 -1
  166. package/dist/client/_projectId-D2pFfYIs.mjs +0 -46
  167. package/dist/client/_projectId-D2pFfYIs.mjs.map +0 -1
  168. package/dist/client/_projectId-DhSWowQo.mjs +0 -29
  169. package/dist/client/_projectId-DhSWowQo.mjs.map +0 -1
  170. package/dist/client/_securityGroupId-DZ4D4WwB.mjs +0 -1801
  171. package/dist/client/_securityGroupId-DZ4D4WwB.mjs.map +0 -1
  172. package/dist/client/_securityGroupId-Mj8NJT2-.mjs.map +0 -1
  173. package/dist/client/_storageType-C-9bNkmZ.mjs +0 -2211
  174. package/dist/client/_storageType-C-9bNkmZ.mjs.map +0 -1
  175. package/dist/client/components/Error/StatusError.d.ts +0 -11
  176. package/dist/client/components/ProjectView/ProjectInfoBox.d.ts +0 -12
  177. package/dist/client/flavors-Cp0LEGOH.mjs.map +0 -1
  178. package/dist/client/flavors-CwMbDRHm2.mjs +0 -650
  179. package/dist/client/flavors-CwMbDRHm2.mjs.map +0 -1
  180. package/dist/client/floatingips-ICwo-rV_.mjs +0 -591
  181. package/dist/client/floatingips-ICwo-rV_.mjs.map +0 -1
  182. package/dist/client/images-DOGZmr3D.mjs +0 -1937
  183. package/dist/client/images-DOGZmr3D.mjs.map +0 -1
  184. package/dist/client/images-DWiM_72I.mjs.map +0 -1
  185. package/dist/client/objects-D2MKUCxc.mjs +0 -56
  186. package/dist/client/objects-D2MKUCxc.mjs.map +0 -1
  187. package/dist/client/objects-DI1-tnKr.mjs +0 -56
  188. package/dist/client/objects-DI1-tnKr.mjs.map +0 -1
  189. package/dist/client/objects-DeK2WD5K.mjs +0 -10078
  190. package/dist/client/objects-DeK2WD5K.mjs.map +0 -1
  191. package/dist/client/pca-BokFv4Gz.mjs +0 -239
  192. package/dist/client/pca-BokFv4Gz.mjs.map +0 -1
  193. package/dist/client/pca-D5jHAl0b.mjs +0 -26
  194. package/dist/client/pca-D5jHAl0b.mjs.map +0 -1
  195. package/dist/client/pcaAccess-Br4kVjLQ.mjs +0 -9
  196. package/dist/client/pcaAccess-Br4kVjLQ.mjs.map +0 -1
  197. package/dist/client/routeInfo-CdTRlSxv.mjs +0 -32
  198. package/dist/client/routeInfo-CdTRlSxv.mjs.map +0 -1
  199. package/dist/client/routes-B05u5bk4.mjs.map +0 -1
  200. package/dist/client/routes-DOJr5onJ.mjs +0 -115
  201. package/dist/client/routes-DOJr5onJ.mjs.map +0 -1
  202. package/dist/client/securitygroups-Be2Qgmew.mjs +0 -595
  203. package/dist/client/securitygroups-Be2Qgmew.mjs.map +0 -1
  204. package/dist/client/securitygroups-_7SYN2jN.mjs.map +0 -1
  205. package/dist/client/useSecurityGroupPermissions-qPwm4mFt.mjs.map +0 -1
@@ -1,595 +0,0 @@
1
- import { C as e, E as t, G as n, I as r, M as i, P as a, S as o, Y as s, Z as c, _ as l, a as u, ct as d, dt as f, g as p, h as m, k as h, m as g, ot as _, rt as v, s as y, t as b, u as x, w as S } from "./build-DnD-T35u.mjs";
2
- import { a as C } from "./trpcClient-D7gpR7YG.mjs";
3
- import { t as w } from "./securitygroups-_7SYN2jN.mjs";
4
- import { t as T } from "./useProjectId-DBc5lpoU.mjs";
5
- import { t as E } from "./SortInput-DysAXpB3.mjs";
6
- import "./hooks-CrriowRk.mjs";
7
- import { n as D, t as O } from "./FiltersInput-Bw8TFfwb.mjs";
8
- import { n as k, t as A } from "./useSecurityGroupPermissions-qPwm4mFt.mjs";
9
- import { Fragment as j, jsx as M, jsxs as N } from "react/jsx-runtime";
10
- import { useEffect as P, useRef as F, useState as I } from "react";
11
- import { useNavigate as L, useSearch as R } from "@tanstack/react-router";
12
- import { Trans as z, useLingui as B } from "@lingui/react";
13
- //#region src/client/routes/_auth/projects/$projectId/network/securitygroups/-components/-modals/DeleteSecurityGroupDialog.tsx
14
- var V = ({ isOpen: e, onClose: t, securityGroup: n, onDelete: o, isDeleting: c = !1, error: l = null }) => {
15
- let { i18n: d, _: f } = B(), [p, h] = I(""), g = d._({ id: "HNlEFZ" }), _ = p.toLowerCase() === g.toLowerCase(), v = n.name || n.id, y = (e) => {
16
- e.preventDefault(), _ && !c && o(n.id);
17
- }, b = () => {
18
- h(""), t();
19
- };
20
- return /*#__PURE__*/ M(s, {
21
- open: e,
22
- onCancel: b,
23
- size: "small",
24
- title: d._({
25
- id: "Y+2SDm",
26
- values: { securityGroupName: v }
27
- }),
28
- modalFooter: /*#__PURE__*/ M(a, {
29
- className: "flex justify-end",
30
- children: /*#__PURE__*/ N(i, { children: [/*#__PURE__*/ M(u, {
31
- variant: "default",
32
- onClick: b,
33
- disabled: c,
34
- children: /*#__PURE__*/ M(z, { id: "dEgA5A" })
35
- }), /*#__PURE__*/ M(u, {
36
- variant: "primary-danger",
37
- onClick: y,
38
- disabled: !_ || c,
39
- "data-testid": "confirm-delete-button",
40
- children: c ? /*#__PURE__*/ M(z, { id: "EF2EU9" }) : /*#__PURE__*/ M(z, { id: "cnGeoo" })
41
- })] })
42
- }),
43
- children: /*#__PURE__*/ N("div", { children: [
44
- l && /*#__PURE__*/ M(r, {
45
- dismissible: !1,
46
- variant: "error",
47
- className: "mt-4",
48
- children: l
49
- }),
50
- /*#__PURE__*/ M(z, { id: "Qb+14I" }),
51
- /*#__PURE__*/ N("div", {
52
- className: "mt-4",
53
- children: [/*#__PURE__*/ M("p", {
54
- className: "mb-2 text-sm",
55
- children: /*#__PURE__*/ M(z, {
56
- id: "hLp49h",
57
- values: { deleteWord: g },
58
- components: { 0: /*#__PURE__*/ M("strong", {}) }
59
- })
60
- }), /*#__PURE__*/ M(m, {
61
- id: "confirmation",
62
- name: "confirmation",
63
- value: p,
64
- onChange: (e) => h(e.target.value),
65
- placeholder: g,
66
- disabled: c,
67
- autoComplete: "off",
68
- "data-testid": "delete-confirmation-input"
69
- })]
70
- })
71
- ] })
72
- });
73
- };
74
- //#endregion
75
- //#region src/client/routes/_auth/projects/$projectId/network/securitygroups/-components/SecurityGroupTableRow.tsx
76
- function ee({ securityGroup: e, permissions: n, onEdit: r, onDelete: i, onViewDetails: a, isReadOnly: s = !1, showSelectColumn: c = !1, isSelected: u = !1, onSelect: d }) {
77
- let { i18n: f, _: p } = B(), m = ({ value: e }) => /*#__PURE__*/ M("span", { children: e ? f._({ id: "l75CjT" }) : f._({ id: "1UzENP" }) }), g = () => {
78
- a && a(e);
79
- };
80
- return /*#__PURE__*/ N(t, {
81
- "data-testid": `security-group-row-${e.id}`,
82
- onClick: g,
83
- className: "hover:bg-theme-background-lvl-2 cursor-pointer",
84
- children: [
85
- c && /*#__PURE__*/ M(b, {
86
- onClick: (e) => e.stopPropagation(),
87
- children: /*#__PURE__*/ M(_, {
88
- checked: u,
89
- onChange: () => d?.(e)
90
- })
91
- }),
92
- /*#__PURE__*/ M(b, { children: /*#__PURE__*/ N("div", { children: [/*#__PURE__*/ M("p", {
93
- className: "text-md",
94
- children: e.name
95
- }), /*#__PURE__*/ M("p", {
96
- className: "text-theme-light text-xs",
97
- children: e.id
98
- })] }) }),
99
- /*#__PURE__*/ M(b, { children: e.description || f._({ id: "h47p9L" }) }),
100
- /*#__PURE__*/ N(b, { children: [/*#__PURE__*/ M(m, { value: e.shared }), e.shared && /*#__PURE__*/ N("p", { children: [
101
- /*#__PURE__*/ M(z, { id: "LtI9AS" }),
102
- ": ",
103
- /*#__PURE__*/ M("span", {
104
- className: "text-theme-light text-xs",
105
- children: e.project_id
106
- })
107
- ] })] }),
108
- /*#__PURE__*/ M(b, { children: /*#__PURE__*/ M(m, { value: e.stateful }) }),
109
- /*#__PURE__*/ M(b, {
110
- onClick: (e) => e.stopPropagation(),
111
- className: "items-end justify-end pr-0",
112
- children: /*#__PURE__*/ M(h, { children: /*#__PURE__*/ N(l, { children: [
113
- /*#__PURE__*/ M(o, {
114
- label: f._({ id: "v0hPHE" }),
115
- onClick: () => g()
116
- }),
117
- n.canUpdate && !s && /*#__PURE__*/ M(o, {
118
- label: f._({ id: "ePK91l" }),
119
- onClick: () => r(e)
120
- }),
121
- n.canDelete && !s && /*#__PURE__*/ M(o, {
122
- label: f._({ id: "cnGeoo" }),
123
- onClick: () => i(e)
124
- })
125
- ] }) })
126
- })
127
- ]
128
- }, e.id);
129
- }
130
- //#endregion
131
- //#region src/client/routes/_auth/projects/$projectId/network/securitygroups/-components/SecurityGroupListContainer.tsx
132
- var H = ({ securityGroups: r, isLoading: i, isError: a, error: o, permissions: s, onDeleteSecurityGroup: l, isDeletingSecurityGroup: u = !1, deleteError: d = null, onUpdateSecurityGroup: f, isUpdatingSecurityGroup: p = !1, updateError: m = null, currentProjectId: h, hasAnyBulkAction: g = !1, onClearUpdateError: _ }) => {
133
- let { i18n: v, _: b } = B(), x = L(), S = T(), [C, w] = I(null), [E, D] = I(!1), [O, A] = I(!1), R = F(!1), H = F(!1), U = (e) => {
134
- C && C.id !== e.id && _ && _(), w(e), D(!0);
135
- }, W = (e) => {
136
- w(e), A(!0);
137
- }, G = (e) => {
138
- x({
139
- to: "/projects/$projectId/network/securitygroups/$securityGroupId",
140
- params: {
141
- projectId: S,
142
- securityGroupId: e.id
143
- }
144
- });
145
- }, K = () => {
146
- w(null), D(!1);
147
- }, q = () => {
148
- w(null), A(!1);
149
- };
150
- return P(() => {
151
- R.current && !u && O && !d && q(), R.current = u;
152
- }, [
153
- u,
154
- d,
155
- O
156
- ]), P(() => {
157
- H.current && !p && E && !m && K(), H.current = p;
158
- }, [
159
- p,
160
- m,
161
- E
162
- ]), i ? /*#__PURE__*/ N(c, {
163
- className: "py-8",
164
- distribution: "center",
165
- alignment: "center",
166
- direction: "vertical",
167
- children: [/*#__PURE__*/ M(n, {
168
- variant: "primary",
169
- size: "large",
170
- className: "mb-2"
171
- }), /*#__PURE__*/ M(z, { id: "Z3FXyt" })]
172
- }) : a ? /*#__PURE__*/ M(c, {
173
- className: "py-8",
174
- distribution: "center",
175
- alignment: "center",
176
- direction: "vertical",
177
- children: o?.message ?? v._({ id: "Wca9WC" })
178
- }) : r.length === 0 ? /*#__PURE__*/ M(z, { id: "SfW/3r" }) : /*#__PURE__*/ N(j, { children: [/*#__PURE__*/ N(y, {
179
- columns: g ? 6 : 5,
180
- children: [/*#__PURE__*/ N(t, { children: [g && /*#__PURE__*/ M(e, {}), [
181
- v._({ id: "6YtxFj" }),
182
- v._({ id: "Nu4oKW" }),
183
- v._({ id: "0Gd0NU" }),
184
- v._({ id: "Jim5X9" }),
185
- ""
186
- ].map((t) => /*#__PURE__*/ M(e, { children: t }, t))] }), r.map((e) => {
187
- let t = !!(h && e.project_id && e.project_id !== h);
188
- return /*#__PURE__*/ M(ee, {
189
- securityGroup: e,
190
- permissions: s,
191
- onEdit: U,
192
- onDelete: W,
193
- onViewDetails: G,
194
- isReadOnly: t,
195
- showSelectColumn: g,
196
- isSelected: !1,
197
- onSelect: () => {}
198
- }, e.id);
199
- })]
200
- }), C && /*#__PURE__*/ N(j, { children: [/*#__PURE__*/ M(k, {
201
- securityGroup: C,
202
- open: E,
203
- onClose: K,
204
- onUpdate: (e, t) => f ? f(e, t) : Promise.resolve(),
205
- isLoading: p,
206
- error: m
207
- }), /*#__PURE__*/ M(V, {
208
- securityGroup: C,
209
- isOpen: O,
210
- onClose: q,
211
- onDelete: (e) => {
212
- l && l(e);
213
- },
214
- isDeleting: u,
215
- error: d
216
- })] })] });
217
- }, U = {
218
- name: "",
219
- description: "",
220
- stateful: !0
221
- }, W = ({ isOpen: e, onClose: t, onCreate: o, isLoading: c = !1, error: l = null }) => {
222
- let { i18n: h, _: v } = B(), [y, b] = I({ ...U }), [x, S] = I({}), C = (e) => {
223
- let { name: t, value: n, type: r } = e.target, i = e.target.checked;
224
- b((e) => ({
225
- ...e,
226
- [t]: r === "checkbox" ? i : n
227
- })), x[t] && S((e) => {
228
- let n = { ...e };
229
- return delete n[t], n;
230
- });
231
- }, w = () => {
232
- let e = {};
233
- return (!y.name || y.name.trim() === "") && (e.name = h._({ id: "lN/Z9n" })), S(e), Object.keys(e).length === 0;
234
- }, T = async (e) => {
235
- e.preventDefault(), w() && (await o({
236
- name: y.name.trim(),
237
- description: y.description.trim() || void 0,
238
- stateful: y.stateful
239
- }), E());
240
- }, E = () => {
241
- b({ ...U }), S({}), t();
242
- };
243
- return /*#__PURE__*/ N(s, {
244
- open: e,
245
- onCancel: E,
246
- size: "large",
247
- title: h._({ id: "YjAOtb" }),
248
- modalFooter: /*#__PURE__*/ M(a, {
249
- className: "flex justify-end",
250
- children: /*#__PURE__*/ N(i, { children: [/*#__PURE__*/ M(u, {
251
- variant: "default",
252
- onClick: E,
253
- disabled: c,
254
- children: /*#__PURE__*/ M(z, { id: "dEgA5A" })
255
- }), /*#__PURE__*/ M(u, {
256
- variant: "primary",
257
- onClick: (e) => {
258
- T(e);
259
- },
260
- disabled: c,
261
- "data-testid": "create-security-group-button",
262
- children: c ? /*#__PURE__*/ M(n, { size: "small" }) : /*#__PURE__*/ M(z, { id: "YjAOtb" })
263
- })] })
264
- }),
265
- children: [
266
- l && /*#__PURE__*/ M(r, {
267
- dismissible: !1,
268
- variant: "error",
269
- className: "mb-4",
270
- children: l
271
- }),
272
- c && /*#__PURE__*/ N("div", {
273
- className: "mb-4 flex items-center justify-center gap-2",
274
- children: [/*#__PURE__*/ M(n, { variant: "primary" }), /*#__PURE__*/ M("span", {
275
- className: "text-theme-high text-sm",
276
- children: /*#__PURE__*/ M(z, { id: "Km4AGG" })
277
- })]
278
- }),
279
- !c && /*#__PURE__*/ M(f, {
280
- className: "mb-6",
281
- children: /*#__PURE__*/ N(g, {
282
- className: "mb-6",
283
- children: [
284
- /*#__PURE__*/ M(p, {
285
- className: "mb-6",
286
- children: /*#__PURE__*/ M(m, {
287
- id: "name",
288
- name: "name",
289
- label: h._({ id: "6YtxFj" }),
290
- value: y.name,
291
- onChange: C,
292
- required: !0,
293
- errortext: x.name,
294
- placeholder: h._({ id: "Ac6dy9" }),
295
- disabled: c
296
- })
297
- }),
298
- /*#__PURE__*/ M(p, {
299
- className: "mb-6",
300
- children: /*#__PURE__*/ M(d, {
301
- id: "description",
302
- name: "description",
303
- label: h._({ id: "Nu4oKW" }),
304
- value: y.description,
305
- onChange: C,
306
- placeholder: h._({ id: "Nu4oKW" }),
307
- disabled: c,
308
- rows: 3
309
- })
310
- }),
311
- /*#__PURE__*/ M(p, {
312
- className: "mb-0",
313
- children: /*#__PURE__*/ M(_, {
314
- id: "stateful",
315
- name: "stateful",
316
- label: h._({ id: "Jim5X9" }),
317
- checked: y.stateful,
318
- onChange: C,
319
- disabled: c,
320
- helptext: h._({ id: "4cQTyf" })
321
- })
322
- })
323
- ]
324
- })
325
- })
326
- ]
327
- });
328
- }, G = (e) => {
329
- let t = [];
330
- return e.shared && t.push({
331
- name: "shared",
332
- value: e.shared
333
- }), t;
334
- }, K = (e, t) => {
335
- let n = {};
336
- if (!e?.length) return n;
337
- let r = e.filter((e) => !e.inactive).reduce((e, t) => (e[t.name] || (e[t.name] = []), e[t.name].push(t.value), e), {});
338
- return Object.entries(r).forEach(([e, r]) => {
339
- t.find((t) => t.filterName === e)?.supportsMultiValue && r.length > 1 ? n[e] = `in:${r.join(",")}` : n[e] = r[0];
340
- }), n;
341
- }, q = (e, t, n) => e.some((e) => e.name === t.name && e.value === t.value) ? e : n.find((e) => e.filterName === t.name)?.supportsMultiValue ? [...e, t] : [...e.filter((e) => e.name !== t.name), t], te = (e, t, n) => {
342
- let r = {
343
- search: n.search,
344
- sortBy: n.sortBy,
345
- sortDirection: n.sortDirection
346
- };
347
- if (!e?.length) return r;
348
- let i = e.filter((e) => !e.inactive).reduce((e, t) => (e[t.name] || (e[t.name] = []), e[t.name].push(t.value), e), {});
349
- return Object.entries(i).forEach(([e, n]) => {
350
- t.find((t) => t.filterName === e)?.supportsMultiValue && n.length > 1 ? r[e] = `in:${n.join(",")}` : r[e] = n[0];
351
- }), r;
352
- }, J = ({ project: e }) => {
353
- let { i18n: t, _: n } = B(), r = L(), i = R({ strict: !1 }), [a, o] = I({
354
- options: [{
355
- label: t._({ id: "6YtxFj" }),
356
- value: "name"
357
- }, {
358
- label: t._({ id: "podzPY" }),
359
- value: "project_id"
360
- }],
361
- sortBy: i.sortBy || "name",
362
- sortDirection: i.sortDirection || "asc"
363
- }), [s, l] = I({
364
- filters: [{
365
- displayName: t._({ id: "0Gd0NU" }),
366
- filterName: "shared",
367
- values: ["true", "false"],
368
- supportsMultiValue: !1
369
- }],
370
- selectedFilters: G(i)
371
- }), [d, f] = I(i.search || ""), [p, m] = I(!1), [h, g] = I(null), [_, v] = I(null), [y, b] = I(null), w = C.useUtils();
372
- P(() => {
373
- o((e) => ({
374
- ...e,
375
- sortBy: i.sortBy || "name",
376
- sortDirection: i.sortDirection || "asc"
377
- })), l((e) => ({
378
- ...e,
379
- selectedFilters: G(i)
380
- })), f(i.search || "");
381
- }, [
382
- i.sortBy,
383
- i.sortDirection,
384
- i.search,
385
- i.shared
386
- ]);
387
- let T = G(i), k = i.sortBy || "name", F = i.sortDirection || "asc", V = i.search || "", { data: ee, isLoading: U, isError: J, error: Y } = C.network.securityGroup.list.useQuery({
388
- project_id: e || "",
389
- sort_key: k,
390
- sort_dir: F,
391
- ...K(T, s.filters),
392
- ...V ? { searchTerm: V } : {}
393
- }, { refetchOnWindowFocus: !1 }), X = ee || [], ne = J && Y?.data?.code === "FORBIDDEN" ? t._({ id: "MdfAJn" }) : null, { permissions: Z } = A(e), Q = C.network.securityGroup.create.useMutation({
394
- onSuccess: (t) => {
395
- w.network.securityGroup.list.invalidate(), w.network.securityGroup.getById.invalidate(), v(null), r({
396
- to: "/projects/$projectId/network/securitygroups/$securityGroupId",
397
- params: {
398
- projectId: e,
399
- securityGroupId: t.id
400
- }
401
- });
402
- },
403
- onError: (e) => {
404
- v(e.message || t._({ id: "o6M6l0" }));
405
- }
406
- }), re = C.network.securityGroup.deleteById.useMutation({
407
- onSuccess: () => {
408
- w.network.securityGroup.list.invalidate(), w.network.securityGroup.getById.invalidate(), g(null);
409
- },
410
- onError: (e) => {
411
- g(e.message || t._({ id: "d0pLfy" }));
412
- }
413
- }), ie = C.network.securityGroup.update.useMutation({
414
- onSuccess: () => {
415
- w.network.securityGroup.list.invalidate(), w.network.securityGroup.getById.invalidate(), b(null);
416
- },
417
- onError: (e) => {
418
- b(e.message || t._({ id: "jPxavx" }));
419
- }
420
- }), ae = async (t) => {
421
- v(null), await Q.mutateAsync({
422
- project_id: e,
423
- ...t
424
- });
425
- }, oe = (t) => {
426
- g(null), re.mutate({
427
- project_id: e,
428
- securityGroupId: t
429
- });
430
- }, se = async (t, n) => {
431
- b(null), await ie.mutateAsync({
432
- project_id: e,
433
- securityGroupId: t,
434
- ...n
435
- });
436
- }, ce = () => {
437
- b(null);
438
- }, le = (e) => {
439
- let t = {
440
- options: e.options,
441
- sortBy: e.sortBy?.toString() || "name",
442
- sortDirection: e.sortDirection || "asc"
443
- };
444
- o(t), r({
445
- search: (e) => ({
446
- ...e,
447
- sortBy: t.sortBy,
448
- sortDirection: t.sortDirection
449
- }),
450
- replace: !0
451
- });
452
- }, $ = (e) => {
453
- l(e), r({
454
- search: (t) => te(e.selectedFilters || [], e.filters, {
455
- search: t.search,
456
- sortBy: t.sortBy,
457
- sortDirection: t.sortDirection
458
- }),
459
- replace: !0
460
- });
461
- }, ue = (e) => {
462
- let t = typeof e == "string" ? e : "";
463
- f(t), r({
464
- search: (e) => ({
465
- ...e,
466
- search: t || void 0
467
- }),
468
- replace: !0
469
- });
470
- };
471
- return U ? /*#__PURE__*/ M(c, {
472
- className: "py-8",
473
- distribution: "center",
474
- alignment: "center",
475
- direction: "vertical",
476
- children: /*#__PURE__*/ M(z, { id: "Z3FXyt" })
477
- }) : J && !X.length ? /*#__PURE__*/ M(c, {
478
- className: "py-8",
479
- distribution: "center",
480
- alignment: "center",
481
- direction: "vertical",
482
- children: ne || t._({ id: "Wca9WC" })
483
- }) : /*#__PURE__*/ N(j, { children: [
484
- /*#__PURE__*/ M(c, {
485
- distribution: "end",
486
- alignment: "center",
487
- gap: "2",
488
- className: "pb-2",
489
- children: /*#__PURE__*/ N(c, {
490
- gap: "2",
491
- children: [/*#__PURE__*/ M(E, {
492
- options: a.options,
493
- sortBy: a.sortBy,
494
- sortDirection: a.sortDirection ?? "asc",
495
- selectClassName: "min-w-40",
496
- onSortByChange: (e) => le({
497
- ...a,
498
- sortBy: e,
499
- sortDirection: a.sortDirection
500
- }),
501
- onSortDirectionChange: (e) => le({
502
- ...a,
503
- sortDirection: e
504
- })
505
- }), Z.canCreate && /*#__PURE__*/ M(u, {
506
- onClick: () => m(!0),
507
- variant: "primary",
508
- className: "whitespace-nowrap",
509
- children: /*#__PURE__*/ M(z, { id: "YjAOtb" })
510
- })]
511
- })
512
- }),
513
- /*#__PURE__*/ M(x, { children: /*#__PURE__*/ N(c, {
514
- direction: "vertical",
515
- gap: "2",
516
- children: [/*#__PURE__*/ N(c, {
517
- distribution: "between",
518
- alignment: "center",
519
- children: [/*#__PURE__*/ M(O, {
520
- filters: s.filters,
521
- selectClassName: "sm:min-w-40",
522
- comboboxClassName: "sm:min-w-40",
523
- onChange: (e) => {
524
- let t = q(s.selectedFilters || [], e, s.filters);
525
- t !== (s.selectedFilters || []) && $({
526
- ...s,
527
- selectedFilters: t
528
- });
529
- }
530
- }), /*#__PURE__*/ M(S, {
531
- placeholder: t._({ id: "rp7Ili" }),
532
- "data-testid": "searchbar",
533
- value: d,
534
- onInput: (e) => {
535
- let t = e.currentTarget.value;
536
- f(t);
537
- },
538
- onSearch: (e) => {
539
- ue(typeof e == "string" ? e : "");
540
- },
541
- onClear: () => {
542
- f(""), ue("");
543
- }
544
- })]
545
- }), s.selectedFilters && s.selectedFilters.length > 0 && /*#__PURE__*/ M(D, {
546
- selectedFilters: s.selectedFilters,
547
- onDelete: (e) => $({
548
- ...s,
549
- selectedFilters: (s.selectedFilters || []).filter((t) => t.name !== e.name || t.value !== e.value)
550
- }),
551
- onClear: () => $({
552
- ...s,
553
- selectedFilters: []
554
- })
555
- })]
556
- }) }),
557
- /*#__PURE__*/ M(H, {
558
- securityGroups: X,
559
- isLoading: !1,
560
- isError: !1,
561
- error: null,
562
- permissions: Z,
563
- onCreateClick: () => m(!0),
564
- onDeleteSecurityGroup: oe,
565
- isDeletingSecurityGroup: re.isPending,
566
- deleteError: h,
567
- onUpdateSecurityGroup: se,
568
- isUpdatingSecurityGroup: ie.isPending,
569
- updateError: y,
570
- currentProjectId: e,
571
- hasAnyBulkAction: !1,
572
- onClearUpdateError: ce
573
- }),
574
- /*#__PURE__*/ M(W, {
575
- isOpen: p,
576
- onClose: () => {
577
- v(null), m(!1);
578
- },
579
- onCreate: ae,
580
- isLoading: Q.isPending,
581
- error: _
582
- })
583
- ] });
584
- };
585
- //#endregion
586
- //#region src/client/routes/_auth/projects/$projectId/network/securitygroups/index.tsx?tsr-split=component
587
- function Y() {
588
- let { i18n: e, _: t } = B(), { projectId: n } = w.useParams(), { trpcClient: r } = w.useRouteContext();
589
- if (!r) throw Error("trpcClient is not available in route context");
590
- return /*#__PURE__*/ N(j, { children: [/*#__PURE__*/ M(v, { children: e._({ id: "4opp4r" }) }), /*#__PURE__*/ M(J, { project: n })] });
591
- }
592
- //#endregion
593
- export { Y as component };
594
-
595
- //# sourceMappingURL=securitygroups-Be2Qgmew.mjs.map