mirror of
https://github.com/mulgadc/spinifex.git
synced 2026-10-15 09:01:31 +00:00
fix(spinifexui): refresh the role page after instance profile membership changes
Adding a role to an instance profile, removing it, or deleting the profile only refreshed the profile list, so the role page kept its cached profiles for up to five minutes.
This commit is contained in:
+2
-2
@@ -1,2 +1,2 @@
|
||||
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/_groupName-sEqQb5WZ.js","assets/compiler-runtime-D_vZfn79.js","assets/useSuspenseQuery-Bc7E1P-f.js","assets/useBaseQuery-Dqg0ViLa.js","assets/removable-Dwr9otKB.js","assets/query-BPr_oSEg.js","assets/link-BokOReHc.js","assets/useSelector-C6_B_5v6.js","assets/with-selector-DrM041uv.js","assets/useNavigate-CTe_-BZA.js","assets/cluster-config-DNNpxkEw.js","assets/hex-encoding-CVnQo5PF.js","assets/back-link-wsXUoJ12.js","assets/createLucideIcon-BQgzNCBR.js","assets/trash-DVab4pEz.js","assets/button-C9VMD5Xn.js","assets/dist-DEhWxN7p.js","assets/iam-BhvTeEfR.js","assets/useMutation-6rdxVQpi.js","assets/mutation-BziiWz5u.js","assets/awsClient-Bm9ksq2r.js","assets/index.browser-DuXQj3EI.js","assets/commandBuilder-D4HJ1FUj.js","assets/iam-3D5jlLAz.js","assets/queryOptions-Dfvzj6n2.js","assets/json-CeLiNx_J.js","assets/page-heading-vksh_67w.js","assets/error-banner-DeOeVBKS.js","assets/delete-confirmation-dialog-8byauM7I.js","assets/alert-dialog-Da3OTbL9.js","assets/DialogTitle-BIRU7hlM.js","assets/useValueAsRef-BRYYjd2W.js","assets/createBaseUIEventDetails-sqRELvD6.js","assets/useScrollLock-aaqhvzFs.js","assets/detail-row-DNBRlVeK.js","assets/inline-policies-panel-BzXIjEbl.js","assets/useQuery-2EKf7AyV.js","assets/input-CBUMH1Jl.js","assets/useValueChanged-3krk2xbP.js","assets/useControlled-DwxdYHYK.js","assets/field-BKQO3cRo.js","assets/separator-BFSV8f2Y.js","assets/json-editor-C0uKwIA1.js","assets/textarea-CTBs9AlF.js","assets/iam-CADYUEJg.js"])))=>i.map(i=>d[i]);
|
||||
import{n as e,t}from"./lazyRouteComponent-D0nAq0Je.js";import{ut as n}from"./cluster-config-DNNpxkEw.js";import{C as r,a as i,n as a,p as o,s}from"./iam-3D5jlLAz.js";var c=e(`/_auth/iam/(groups)/list-groups/$groupName`)({loader:async({context:e,params:t})=>{await Promise.all([e.queryClient.query({...s(t.groupName),staleTime:`static`}),e.queryClient.query({...a(t.groupName),staleTime:`static`}),e.queryClient.query({...o,staleTime:`static`}),e.queryClient.query({...r,staleTime:`static`}),e.queryClient.query({...i(t.groupName),staleTime:`static`})])},head:({params:e})=>({meta:[{title:`${e.groupName} | IAM | Mulga`}]}),component:t(()=>n(()=>import(`./_groupName-sEqQb5WZ.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44])),`component`)});export{c as t};
|
||||
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/_groupName-DwxSJFy1.js","assets/compiler-runtime-D_vZfn79.js","assets/useSuspenseQuery-Bc7E1P-f.js","assets/useBaseQuery-Dqg0ViLa.js","assets/removable-Dwr9otKB.js","assets/query-BPr_oSEg.js","assets/link-BokOReHc.js","assets/useSelector-C6_B_5v6.js","assets/with-selector-DrM041uv.js","assets/useNavigate-CTe_-BZA.js","assets/cluster-config-DNNpxkEw.js","assets/hex-encoding-CVnQo5PF.js","assets/back-link-wsXUoJ12.js","assets/createLucideIcon-BQgzNCBR.js","assets/trash-DVab4pEz.js","assets/button-C9VMD5Xn.js","assets/dist-DEhWxN7p.js","assets/iam-DtFzCnrP.js","assets/useMutation-6rdxVQpi.js","assets/mutation-BziiWz5u.js","assets/awsClient-Bm9ksq2r.js","assets/index.browser-DuXQj3EI.js","assets/commandBuilder-D4HJ1FUj.js","assets/iam-3D5jlLAz.js","assets/queryOptions-Dfvzj6n2.js","assets/json-CeLiNx_J.js","assets/page-heading-vksh_67w.js","assets/error-banner-DeOeVBKS.js","assets/delete-confirmation-dialog-8byauM7I.js","assets/alert-dialog-Da3OTbL9.js","assets/DialogTitle-BIRU7hlM.js","assets/useValueAsRef-BRYYjd2W.js","assets/createBaseUIEventDetails-sqRELvD6.js","assets/useScrollLock-aaqhvzFs.js","assets/detail-row-DNBRlVeK.js","assets/inline-policies-panel-Bjqkq9_Q.js","assets/useQuery-2EKf7AyV.js","assets/input-CBUMH1Jl.js","assets/useValueChanged-3krk2xbP.js","assets/useControlled-DwxdYHYK.js","assets/field-BKQO3cRo.js","assets/separator-BFSV8f2Y.js","assets/json-editor-C0uKwIA1.js","assets/textarea-CTBs9AlF.js","assets/iam-CADYUEJg.js"])))=>i.map(i=>d[i]);
|
||||
import{n as e,t}from"./lazyRouteComponent-D0nAq0Je.js";import{ut as n}from"./cluster-config-DNNpxkEw.js";import{C as r,a as i,n as a,p as o,s}from"./iam-3D5jlLAz.js";var c=e(`/_auth/iam/(groups)/list-groups/$groupName`)({loader:async({context:e,params:t})=>{await Promise.all([e.queryClient.query({...s(t.groupName),staleTime:`static`}),e.queryClient.query({...a(t.groupName),staleTime:`static`}),e.queryClient.query({...o,staleTime:`static`}),e.queryClient.query({...r,staleTime:`static`}),e.queryClient.query({...i(t.groupName),staleTime:`static`})])},head:({params:e})=>({meta:[{title:`${e.groupName} | IAM | Mulga`}]}),component:t(()=>n(()=>import(`./_groupName-DwxSJFy1.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44])),`component`)});export{c as t};
|
||||
+1
-1
@@ -1 +1 @@
|
||||
import{n as e,o as t,r as n}from"./compiler-runtime-D_vZfn79.js";import{t as r}from"./useSuspenseQuery-Bc7E1P-f.js";import{t as i}from"./link-BokOReHc.js";import{t as a}from"./useNavigate-CTe_-BZA.js";import{an as o}from"./cluster-config-DNNpxkEw.js";import{t as s}from"./back-link-wsXUoJ12.js";import{t as c}from"./trash-DVab4pEz.js";import{t as l}from"./button-C9VMD5Xn.js";import{O as u,n as d,p as f}from"./iam-BhvTeEfR.js";import{C as p,s as m}from"./iam-3D5jlLAz.js";import{t as h}from"./_groupName-BKOaZUJa.js";import{t as g}from"./page-heading-vksh_67w.js";import{t as _}from"./error-banner-DeOeVBKS.js";import{t as v}from"./delete-confirmation-dialog-8byauM7I.js";import{n as y,t as b}from"./detail-row-DNBRlVeK.js";import{n as x,t as S}from"./inline-policies-panel-BzXIjEbl.js";var C=t(n()),w=e();function T(){let{groupName:e}=h.useParams(),t=a(),{data:n}=r(m(e)),{data:T}=r(p),E=f(),D=d(),O=u(),[k,A]=(0,C.useState)(!1),[j,M]=(0,C.useState)(!1),[N,P]=(0,C.useState)(null),F=n.Group,I=n.Users??[],L=T.Users??[],R=new Set(I.map(e=>e.UserName)),z=L.filter(e=>e.UserName&&!R.has(e.UserName)),B=async()=>{try{await E.mutateAsync(e),t({to:`/iam/list-groups`})}finally{A(!1)}},V=async t=>{await D.mutateAsync({groupName:e,userName:t}),M(!1)},H=async t=>{P(t);try{await O.mutateAsync({groupName:e,userName:t})}finally{P(null)}};return F?(0,w.jsxs)(w.Fragment,{children:[(0,w.jsx)(s,{to:`/iam/list-groups`,children:`Back to groups`}),E.error&&(0,w.jsx)(_,{error:E.error,msg:`Failed to delete group`}),D.error&&(0,w.jsx)(_,{error:D.error,msg:`Failed to add user`}),O.error&&(0,w.jsx)(_,{error:O.error,msg:`Failed to remove user`}),(0,w.jsxs)(`div`,{className:`space-y-6`,children:[(0,w.jsx)(g,{actions:(0,w.jsxs)(l,{onClick:()=>{A(!0)},size:`sm`,variant:`destructive`,children:[(0,w.jsx)(c,{className:`size-4`}),`Delete`]}),subtitle:`Group Details`,title:F.GroupName??``}),(0,w.jsxs)(y,{children:[(0,w.jsx)(y.Header,{children:`Group Information`}),(0,w.jsxs)(y.Content,{children:[(0,w.jsx)(b,{label:`Group Name`,value:F.GroupName}),(0,w.jsx)(b,{label:`Group ID`,value:F.GroupId}),(0,w.jsx)(b,{label:`ARN`,value:F.Arn}),(0,w.jsx)(b,{label:`Path`,value:F.Path}),(0,w.jsx)(b,{label:`Created`,value:o(F.CreateDate)})]})]}),(0,w.jsxs)(y,{children:[(0,w.jsx)(y.Header,{children:(0,w.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,w.jsx)(`span`,{children:`Members`}),(0,w.jsx)(l,{onClick:()=>{M(!j)},size:`sm`,children:`Add User`})]})}),(0,w.jsxs)(y.Content,{children:[j&&z.length>0&&(0,w.jsxs)(`div`,{className:`col-span-2 space-y-2 rounded-md border p-3`,children:[(0,w.jsx)(`p`,{className:`text-sm font-medium`,children:`Select a user to add:`}),(0,w.jsx)(`div`,{className:`space-y-1`,children:z.map(e=>(0,w.jsxs)(`button`,{className:`flex w-full items-center justify-between rounded-md p-2 text-left text-sm hover:bg-accent`,disabled:D.isPending,onClick:()=>{e.UserName&&V(e.UserName)},type:`button`,children:[(0,w.jsx)(`span`,{children:e.UserName}),(0,w.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:e.Arn})]},e.UserName))})]}),j&&z.length===0&&(0,w.jsx)(`p`,{className:`col-span-2 text-sm text-muted-foreground`,children:`No users available to add.`}),I.length>0?(0,w.jsx)(`div`,{className:`col-span-2 space-y-3`,children:I.map(e=>(0,w.jsxs)(`div`,{className:`flex items-center justify-between rounded-md border p-3`,children:[(0,w.jsx)(i,{className:`text-sm font-medium hover:underline`,params:{userName:e.UserName??``},to:`/iam/list-users/$userName`,children:e.UserName}),(0,w.jsx)(l,{disabled:N===e.UserName,onClick:()=>{e.UserName&&H(e.UserName)},size:`sm`,variant:`outline`,children:`Remove`})]},e.UserName))}):(0,w.jsx)(`p`,{className:`col-span-2 text-sm text-muted-foreground`,children:`No members.`})]})]}),(0,w.jsx)(x,{kind:`group`,name:e}),(0,w.jsx)(S,{kind:`group`,name:e})]}),(0,w.jsx)(v,{description:`Are you sure you want to delete the group "${e}"? This action cannot be undone. You must remove all members and detach all policies first.`,isPending:E.isPending,onConfirm:B,onOpenChange:A,open:k,title:`Delete Group`})]}):(0,w.jsxs)(w.Fragment,{children:[(0,w.jsx)(s,{to:`/iam/list-groups`,children:`Back to groups`}),(0,w.jsx)(`p`,{className:`text-muted-foreground`,children:`Group not found.`})]})}export{T as component};
|
||||
import{n as e,o as t,r as n}from"./compiler-runtime-D_vZfn79.js";import{t as r}from"./useSuspenseQuery-Bc7E1P-f.js";import{t as i}from"./link-BokOReHc.js";import{t as a}from"./useNavigate-CTe_-BZA.js";import{an as o}from"./cluster-config-DNNpxkEw.js";import{t as s}from"./back-link-wsXUoJ12.js";import{t as c}from"./trash-DVab4pEz.js";import{t as l}from"./button-C9VMD5Xn.js";import{O as u,n as d,p as f}from"./iam-DtFzCnrP.js";import{C as p,s as m}from"./iam-3D5jlLAz.js";import{t as h}from"./_groupName-C4S4cVyl.js";import{t as g}from"./page-heading-vksh_67w.js";import{t as _}from"./error-banner-DeOeVBKS.js";import{t as v}from"./delete-confirmation-dialog-8byauM7I.js";import{n as y,t as b}from"./detail-row-DNBRlVeK.js";import{n as x,t as S}from"./inline-policies-panel-Bjqkq9_Q.js";var C=t(n()),w=e();function T(){let{groupName:e}=h.useParams(),t=a(),{data:n}=r(m(e)),{data:T}=r(p),E=f(),D=d(),O=u(),[k,A]=(0,C.useState)(!1),[j,M]=(0,C.useState)(!1),[N,P]=(0,C.useState)(null),F=n.Group,I=n.Users??[],L=T.Users??[],R=new Set(I.map(e=>e.UserName)),z=L.filter(e=>e.UserName&&!R.has(e.UserName)),B=async()=>{try{await E.mutateAsync(e),t({to:`/iam/list-groups`})}finally{A(!1)}},V=async t=>{await D.mutateAsync({groupName:e,userName:t}),M(!1)},H=async t=>{P(t);try{await O.mutateAsync({groupName:e,userName:t})}finally{P(null)}};return F?(0,w.jsxs)(w.Fragment,{children:[(0,w.jsx)(s,{to:`/iam/list-groups`,children:`Back to groups`}),E.error&&(0,w.jsx)(_,{error:E.error,msg:`Failed to delete group`}),D.error&&(0,w.jsx)(_,{error:D.error,msg:`Failed to add user`}),O.error&&(0,w.jsx)(_,{error:O.error,msg:`Failed to remove user`}),(0,w.jsxs)(`div`,{className:`space-y-6`,children:[(0,w.jsx)(g,{actions:(0,w.jsxs)(l,{onClick:()=>{A(!0)},size:`sm`,variant:`destructive`,children:[(0,w.jsx)(c,{className:`size-4`}),`Delete`]}),subtitle:`Group Details`,title:F.GroupName??``}),(0,w.jsxs)(y,{children:[(0,w.jsx)(y.Header,{children:`Group Information`}),(0,w.jsxs)(y.Content,{children:[(0,w.jsx)(b,{label:`Group Name`,value:F.GroupName}),(0,w.jsx)(b,{label:`Group ID`,value:F.GroupId}),(0,w.jsx)(b,{label:`ARN`,value:F.Arn}),(0,w.jsx)(b,{label:`Path`,value:F.Path}),(0,w.jsx)(b,{label:`Created`,value:o(F.CreateDate)})]})]}),(0,w.jsxs)(y,{children:[(0,w.jsx)(y.Header,{children:(0,w.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,w.jsx)(`span`,{children:`Members`}),(0,w.jsx)(l,{onClick:()=>{M(!j)},size:`sm`,children:`Add User`})]})}),(0,w.jsxs)(y.Content,{children:[j&&z.length>0&&(0,w.jsxs)(`div`,{className:`col-span-2 space-y-2 rounded-md border p-3`,children:[(0,w.jsx)(`p`,{className:`text-sm font-medium`,children:`Select a user to add:`}),(0,w.jsx)(`div`,{className:`space-y-1`,children:z.map(e=>(0,w.jsxs)(`button`,{className:`flex w-full items-center justify-between rounded-md p-2 text-left text-sm hover:bg-accent`,disabled:D.isPending,onClick:()=>{e.UserName&&V(e.UserName)},type:`button`,children:[(0,w.jsx)(`span`,{children:e.UserName}),(0,w.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:e.Arn})]},e.UserName))})]}),j&&z.length===0&&(0,w.jsx)(`p`,{className:`col-span-2 text-sm text-muted-foreground`,children:`No users available to add.`}),I.length>0?(0,w.jsx)(`div`,{className:`col-span-2 space-y-3`,children:I.map(e=>(0,w.jsxs)(`div`,{className:`flex items-center justify-between rounded-md border p-3`,children:[(0,w.jsx)(i,{className:`text-sm font-medium hover:underline`,params:{userName:e.UserName??``},to:`/iam/list-users/$userName`,children:e.UserName}),(0,w.jsx)(l,{disabled:N===e.UserName,onClick:()=>{e.UserName&&H(e.UserName)},size:`sm`,variant:`outline`,children:`Remove`})]},e.UserName))}):(0,w.jsx)(`p`,{className:`col-span-2 text-sm text-muted-foreground`,children:`No members.`})]})]}),(0,w.jsx)(x,{kind:`group`,name:e}),(0,w.jsx)(S,{kind:`group`,name:e})]}),(0,w.jsx)(v,{description:`Are you sure you want to delete the group "${e}"? This action cannot be undone. You must remove all members and detach all policies first.`,isPending:E.isPending,onConfirm:B,onOpenChange:A,open:k,title:`Delete Group`})]}):(0,w.jsxs)(w.Fragment,{children:[(0,w.jsx)(s,{to:`/iam/list-groups`,children:`Back to groups`}),(0,w.jsx)(`p`,{className:`text-muted-foreground`,children:`Group not found.`})]})}export{T as component};
|
||||
+2
-2
@@ -1,2 +1,2 @@
|
||||
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/_instanceProfileName-0V9-2TEn.js","assets/compiler-runtime-D_vZfn79.js","assets/useSuspenseQuery-Bc7E1P-f.js","assets/useBaseQuery-Dqg0ViLa.js","assets/removable-Dwr9otKB.js","assets/query-BPr_oSEg.js","assets/link-BokOReHc.js","assets/useSelector-C6_B_5v6.js","assets/with-selector-DrM041uv.js","assets/useNavigate-CTe_-BZA.js","assets/cluster-config-DNNpxkEw.js","assets/hex-encoding-CVnQo5PF.js","assets/back-link-wsXUoJ12.js","assets/createLucideIcon-BQgzNCBR.js","assets/trash-DVab4pEz.js","assets/button-C9VMD5Xn.js","assets/dist-DEhWxN7p.js","assets/iam-BhvTeEfR.js","assets/useMutation-6rdxVQpi.js","assets/mutation-BziiWz5u.js","assets/awsClient-Bm9ksq2r.js","assets/index.browser-DuXQj3EI.js","assets/commandBuilder-D4HJ1FUj.js","assets/iam-3D5jlLAz.js","assets/queryOptions-Dfvzj6n2.js","assets/json-CeLiNx_J.js","assets/page-heading-vksh_67w.js","assets/error-banner-DeOeVBKS.js","assets/delete-confirmation-dialog-8byauM7I.js","assets/alert-dialog-Da3OTbL9.js","assets/DialogTitle-BIRU7hlM.js","assets/useValueAsRef-BRYYjd2W.js","assets/createBaseUIEventDetails-sqRELvD6.js","assets/useScrollLock-aaqhvzFs.js","assets/detail-row-DNBRlVeK.js"])))=>i.map(i=>d[i]);
|
||||
import{n as e,t}from"./lazyRouteComponent-D0nAq0Je.js";import{ut as n}from"./cluster-config-DNNpxkEw.js";import{u as r,y as i}from"./iam-3D5jlLAz.js";var a=e(`/_auth/iam/(instance-profiles)/list-instance-profiles/$instanceProfileName`)({loader:async({context:e,params:t})=>{await Promise.all([e.queryClient.query({...r(t.instanceProfileName),staleTime:`static`}),e.queryClient.query({...i,staleTime:`static`})])},head:({params:e})=>({meta:[{title:`${e.instanceProfileName} | IAM | Mulga`}]}),component:t(()=>n(()=>import(`./_instanceProfileName-0V9-2TEn.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34])),`component`)});export{a as t};
|
||||
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/_instanceProfileName-CoSc-sZG.js","assets/compiler-runtime-D_vZfn79.js","assets/useSuspenseQuery-Bc7E1P-f.js","assets/useBaseQuery-Dqg0ViLa.js","assets/removable-Dwr9otKB.js","assets/query-BPr_oSEg.js","assets/link-BokOReHc.js","assets/useSelector-C6_B_5v6.js","assets/with-selector-DrM041uv.js","assets/useNavigate-CTe_-BZA.js","assets/cluster-config-DNNpxkEw.js","assets/hex-encoding-CVnQo5PF.js","assets/back-link-wsXUoJ12.js","assets/createLucideIcon-BQgzNCBR.js","assets/trash-DVab4pEz.js","assets/button-C9VMD5Xn.js","assets/dist-DEhWxN7p.js","assets/iam-DtFzCnrP.js","assets/useMutation-6rdxVQpi.js","assets/mutation-BziiWz5u.js","assets/awsClient-Bm9ksq2r.js","assets/index.browser-DuXQj3EI.js","assets/commandBuilder-D4HJ1FUj.js","assets/iam-3D5jlLAz.js","assets/queryOptions-Dfvzj6n2.js","assets/json-CeLiNx_J.js","assets/page-heading-vksh_67w.js","assets/error-banner-DeOeVBKS.js","assets/delete-confirmation-dialog-8byauM7I.js","assets/alert-dialog-Da3OTbL9.js","assets/DialogTitle-BIRU7hlM.js","assets/useValueAsRef-BRYYjd2W.js","assets/createBaseUIEventDetails-sqRELvD6.js","assets/useScrollLock-aaqhvzFs.js","assets/detail-row-DNBRlVeK.js"])))=>i.map(i=>d[i]);
|
||||
import{n as e,t}from"./lazyRouteComponent-D0nAq0Je.js";import{ut as n}from"./cluster-config-DNNpxkEw.js";import{u as r,y as i}from"./iam-3D5jlLAz.js";var a=e(`/_auth/iam/(instance-profiles)/list-instance-profiles/$instanceProfileName`)({loader:async({context:e,params:t})=>{await Promise.all([e.queryClient.query({...r(t.instanceProfileName),staleTime:`static`}),e.queryClient.query({...i,staleTime:`static`})])},head:({params:e})=>({meta:[{title:`${e.instanceProfileName} | IAM | Mulga`}]}),component:t(()=>n(()=>import(`./_instanceProfileName-CoSc-sZG.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34])),`component`)});export{a as t};
|
||||
+1
-1
@@ -1 +1 @@
|
||||
import{n as e,o as t,r as n}from"./compiler-runtime-D_vZfn79.js";import{t as r}from"./useSuspenseQuery-Bc7E1P-f.js";import{t as i}from"./link-BokOReHc.js";import{t as a}from"./useNavigate-CTe_-BZA.js";import{an as o}from"./cluster-config-DNNpxkEw.js";import{t as s}from"./back-link-wsXUoJ12.js";import{t as c}from"./trash-DVab4pEz.js";import{t as l}from"./button-C9VMD5Xn.js";import{D as u,h as d,t as f}from"./iam-BhvTeEfR.js";import{u as p,y as m}from"./iam-3D5jlLAz.js";import{t as h}from"./_instanceProfileName-FXtPzTwZ.js";import{t as g}from"./page-heading-vksh_67w.js";import{t as _}from"./error-banner-DeOeVBKS.js";import{t as v}from"./delete-confirmation-dialog-8byauM7I.js";import{n as y,t as b}from"./detail-row-DNBRlVeK.js";var x=t(n()),S=e();function C(){let{instanceProfileName:e}=h.useParams(),t=a(),{data:n}=r(p(e)),{data:C}=r(m),w=d(),T=f(),E=u(),[D,O]=(0,x.useState)(!1),[k,A]=(0,x.useState)(!1),[j,M]=(0,x.useState)(null),N=n.InstanceProfile,P=N?.Roles??[],F=C.Roles??[],I=new Set(P.map(e=>e.RoleName)),L=F.filter(e=>e.RoleName&&!I.has(e.RoleName)),R=async()=>{try{await w.mutateAsync(e),t({to:`/iam/list-instance-profiles`})}finally{O(!1)}},z=async t=>{await T.mutateAsync({instanceProfileName:e,roleName:t}),A(!1)},B=async t=>{M(t);try{await E.mutateAsync({instanceProfileName:e,roleName:t})}finally{M(null)}};return N?(0,S.jsxs)(S.Fragment,{children:[(0,S.jsx)(s,{to:`/iam/list-instance-profiles`,children:`Back to instance profiles`}),w.error&&(0,S.jsx)(_,{error:w.error,msg:`Failed to delete instance profile`}),T.error&&(0,S.jsx)(_,{error:T.error,msg:`Failed to add role`}),E.error&&(0,S.jsx)(_,{error:E.error,msg:`Failed to remove role`}),(0,S.jsxs)(`div`,{className:`space-y-6`,children:[(0,S.jsx)(g,{actions:(0,S.jsxs)(l,{onClick:()=>{O(!0)},size:`sm`,variant:`destructive`,children:[(0,S.jsx)(c,{className:`size-4`}),`Delete`]}),subtitle:`Instance Profile Details`,title:N.InstanceProfileName??``}),(0,S.jsxs)(y,{children:[(0,S.jsx)(y.Header,{children:`Instance Profile Information`}),(0,S.jsxs)(y.Content,{children:[(0,S.jsx)(b,{label:`Name`,value:N.InstanceProfileName}),(0,S.jsx)(b,{label:`ID`,value:N.InstanceProfileId}),(0,S.jsx)(b,{label:`ARN`,value:N.Arn}),(0,S.jsx)(b,{label:`Path`,value:N.Path}),(0,S.jsx)(b,{label:`Created`,value:o(N.CreateDate)})]})]}),(0,S.jsxs)(y,{children:[(0,S.jsx)(y.Header,{children:(0,S.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,S.jsx)(`span`,{children:`Roles`}),(0,S.jsx)(l,{onClick:()=>{A(!k)},size:`sm`,children:`Add Role`})]})}),(0,S.jsxs)(y.Content,{children:[k&&L.length>0&&(0,S.jsxs)(`div`,{className:`col-span-2 space-y-2 rounded-md border p-3`,children:[(0,S.jsx)(`p`,{className:`text-sm font-medium`,children:`Select a role to add:`}),(0,S.jsx)(`div`,{className:`space-y-1`,children:L.map(e=>(0,S.jsxs)(`button`,{className:`flex w-full items-center justify-between rounded-md p-2 text-left text-sm hover:bg-accent`,disabled:T.isPending,onClick:()=>{e.RoleName&&z(e.RoleName)},type:`button`,children:[(0,S.jsx)(`span`,{children:e.RoleName}),(0,S.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:e.Arn})]},e.RoleName))})]}),k&&L.length===0&&(0,S.jsx)(`p`,{className:`col-span-2 text-sm text-muted-foreground`,children:`No roles available to add.`}),P.length>0?(0,S.jsx)(`div`,{className:`col-span-2 space-y-3`,children:P.map(e=>(0,S.jsxs)(`div`,{className:`flex items-center justify-between rounded-md border p-3`,children:[(0,S.jsx)(i,{className:`text-sm font-medium text-primary hover:underline`,params:{roleName:e.RoleName??``},to:`/iam/list-roles/$roleName`,children:e.RoleName}),(0,S.jsx)(l,{disabled:j===e.RoleName,onClick:()=>{e.RoleName&&B(e.RoleName)},size:`sm`,variant:`outline`,children:`Remove`})]},e.RoleName))}):(0,S.jsx)(`p`,{className:`col-span-2 text-sm text-muted-foreground`,children:`No roles in this instance profile.`})]})]})]}),(0,S.jsx)(v,{description:`Are you sure you want to delete the instance profile "${e}"? This action cannot be undone. You must remove all roles first.`,isPending:w.isPending,onConfirm:R,onOpenChange:O,open:D,title:`Delete Instance Profile`})]}):(0,S.jsxs)(S.Fragment,{children:[(0,S.jsx)(s,{to:`/iam/list-instance-profiles`,children:`Back to instance profiles`}),(0,S.jsx)(`p`,{className:`text-muted-foreground`,children:`Instance profile not found.`})]})}export{C as component};
|
||||
import{n as e,o as t,r as n}from"./compiler-runtime-D_vZfn79.js";import{t as r}from"./useSuspenseQuery-Bc7E1P-f.js";import{t as i}from"./link-BokOReHc.js";import{t as a}from"./useNavigate-CTe_-BZA.js";import{an as o}from"./cluster-config-DNNpxkEw.js";import{t as s}from"./back-link-wsXUoJ12.js";import{t as c}from"./trash-DVab4pEz.js";import{t as l}from"./button-C9VMD5Xn.js";import{D as u,h as d,t as f}from"./iam-DtFzCnrP.js";import{u as p,y as m}from"./iam-3D5jlLAz.js";import{t as h}from"./_instanceProfileName-BpsvO6RI.js";import{t as g}from"./page-heading-vksh_67w.js";import{t as _}from"./error-banner-DeOeVBKS.js";import{t as v}from"./delete-confirmation-dialog-8byauM7I.js";import{n as y,t as b}from"./detail-row-DNBRlVeK.js";var x=t(n()),S=e();function C(){let{instanceProfileName:e}=h.useParams(),t=a(),{data:n}=r(p(e)),{data:C}=r(m),w=d(),T=f(),E=u(),[D,O]=(0,x.useState)(!1),[k,A]=(0,x.useState)(!1),[j,M]=(0,x.useState)(null),N=n.InstanceProfile,P=N?.Roles??[],F=C.Roles??[],I=new Set(P.map(e=>e.RoleName)),L=F.filter(e=>e.RoleName&&!I.has(e.RoleName)),R=async()=>{try{await w.mutateAsync(e),t({to:`/iam/list-instance-profiles`})}finally{O(!1)}},z=async t=>{await T.mutateAsync({instanceProfileName:e,roleName:t}),A(!1)},B=async t=>{M(t);try{await E.mutateAsync({instanceProfileName:e,roleName:t})}finally{M(null)}};return N?(0,S.jsxs)(S.Fragment,{children:[(0,S.jsx)(s,{to:`/iam/list-instance-profiles`,children:`Back to instance profiles`}),w.error&&(0,S.jsx)(_,{error:w.error,msg:`Failed to delete instance profile`}),T.error&&(0,S.jsx)(_,{error:T.error,msg:`Failed to add role`}),E.error&&(0,S.jsx)(_,{error:E.error,msg:`Failed to remove role`}),(0,S.jsxs)(`div`,{className:`space-y-6`,children:[(0,S.jsx)(g,{actions:(0,S.jsxs)(l,{onClick:()=>{O(!0)},size:`sm`,variant:`destructive`,children:[(0,S.jsx)(c,{className:`size-4`}),`Delete`]}),subtitle:`Instance Profile Details`,title:N.InstanceProfileName??``}),(0,S.jsxs)(y,{children:[(0,S.jsx)(y.Header,{children:`Instance Profile Information`}),(0,S.jsxs)(y.Content,{children:[(0,S.jsx)(b,{label:`Name`,value:N.InstanceProfileName}),(0,S.jsx)(b,{label:`ID`,value:N.InstanceProfileId}),(0,S.jsx)(b,{label:`ARN`,value:N.Arn}),(0,S.jsx)(b,{label:`Path`,value:N.Path}),(0,S.jsx)(b,{label:`Created`,value:o(N.CreateDate)})]})]}),(0,S.jsxs)(y,{children:[(0,S.jsx)(y.Header,{children:(0,S.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,S.jsx)(`span`,{children:`Roles`}),(0,S.jsx)(l,{onClick:()=>{A(!k)},size:`sm`,children:`Add Role`})]})}),(0,S.jsxs)(y.Content,{children:[k&&L.length>0&&(0,S.jsxs)(`div`,{className:`col-span-2 space-y-2 rounded-md border p-3`,children:[(0,S.jsx)(`p`,{className:`text-sm font-medium`,children:`Select a role to add:`}),(0,S.jsx)(`div`,{className:`space-y-1`,children:L.map(e=>(0,S.jsxs)(`button`,{className:`flex w-full items-center justify-between rounded-md p-2 text-left text-sm hover:bg-accent`,disabled:T.isPending,onClick:()=>{e.RoleName&&z(e.RoleName)},type:`button`,children:[(0,S.jsx)(`span`,{children:e.RoleName}),(0,S.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:e.Arn})]},e.RoleName))})]}),k&&L.length===0&&(0,S.jsx)(`p`,{className:`col-span-2 text-sm text-muted-foreground`,children:`No roles available to add.`}),P.length>0?(0,S.jsx)(`div`,{className:`col-span-2 space-y-3`,children:P.map(e=>(0,S.jsxs)(`div`,{className:`flex items-center justify-between rounded-md border p-3`,children:[(0,S.jsx)(i,{className:`text-sm font-medium text-primary hover:underline`,params:{roleName:e.RoleName??``},to:`/iam/list-roles/$roleName`,children:e.RoleName}),(0,S.jsx)(l,{disabled:j===e.RoleName,onClick:()=>{e.RoleName&&B(e.RoleName)},size:`sm`,variant:`outline`,children:`Remove`})]},e.RoleName))}):(0,S.jsx)(`p`,{className:`col-span-2 text-sm text-muted-foreground`,children:`No roles in this instance profile.`})]})]})]}),(0,S.jsx)(v,{description:`Are you sure you want to delete the instance profile "${e}"? This action cannot be undone. You must remove all roles first.`,isPending:w.isPending,onConfirm:R,onOpenChange:O,open:D,title:`Delete Instance Profile`})]}):(0,S.jsxs)(S.Fragment,{children:[(0,S.jsx)(s,{to:`/iam/list-instance-profiles`,children:`Back to instance profiles`}),(0,S.jsx)(`p`,{className:`text-muted-foreground`,children:`Instance profile not found.`})]})}export{C as component};
|
||||
+2
-2
@@ -1,2 +1,2 @@
|
||||
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/_policyArn-Cb-h-ddC.js","assets/compiler-runtime-D_vZfn79.js","assets/useSuspenseQuery-Bc7E1P-f.js","assets/useBaseQuery-Dqg0ViLa.js","assets/removable-Dwr9otKB.js","assets/query-BPr_oSEg.js","assets/useNavigate-CTe_-BZA.js","assets/useSelector-C6_B_5v6.js","assets/with-selector-DrM041uv.js","assets/cluster-config-DNNpxkEw.js","assets/hex-encoding-CVnQo5PF.js","assets/back-link-wsXUoJ12.js","assets/link-BokOReHc.js","assets/createLucideIcon-BQgzNCBR.js","assets/trash-DVab4pEz.js","assets/button-C9VMD5Xn.js","assets/dist-DEhWxN7p.js","assets/iam-BhvTeEfR.js","assets/useMutation-6rdxVQpi.js","assets/mutation-BziiWz5u.js","assets/awsClient-Bm9ksq2r.js","assets/index.browser-DuXQj3EI.js","assets/commandBuilder-D4HJ1FUj.js","assets/iam-3D5jlLAz.js","assets/queryOptions-Dfvzj6n2.js","assets/json-CeLiNx_J.js","assets/page-heading-vksh_67w.js","assets/error-banner-DeOeVBKS.js","assets/delete-confirmation-dialog-8byauM7I.js","assets/alert-dialog-Da3OTbL9.js","assets/DialogTitle-BIRU7hlM.js","assets/useValueAsRef-BRYYjd2W.js","assets/createBaseUIEventDetails-sqRELvD6.js","assets/useScrollLock-aaqhvzFs.js","assets/detail-row-DNBRlVeK.js","assets/policy-document-viewer-DAhLJAGU.js"])))=>i.map(i=>d[i]);
|
||||
import{n as e,t}from"./lazyRouteComponent-D0nAq0Je.js";import{un as n,ut as r}from"./cluster-config-DNNpxkEw.js";import{h as i,m as a}from"./iam-3D5jlLAz.js";var o=e(`/_auth/iam/(policies)/list-policies/$policyArn`)({loader:async({context:e,params:t})=>{let r=n(t.policyArn),o=await e.queryClient.query({...a(r),staleTime:`static`}),s=o.Policy?.DefaultVersionId;return s&&await e.queryClient.query({...i(r,s),staleTime:`static`}),o},head:({loaderData:e})=>({meta:[{title:`${e?.Policy?.PolicyName??`Policy`} | IAM | Mulga`}]}),component:t(()=>r(()=>import(`./_policyArn-Cb-h-ddC.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35])),`component`)});export{o as t};
|
||||
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/_policyArn-CdwjiXLW.js","assets/compiler-runtime-D_vZfn79.js","assets/useSuspenseQuery-Bc7E1P-f.js","assets/useBaseQuery-Dqg0ViLa.js","assets/removable-Dwr9otKB.js","assets/query-BPr_oSEg.js","assets/useNavigate-CTe_-BZA.js","assets/useSelector-C6_B_5v6.js","assets/with-selector-DrM041uv.js","assets/cluster-config-DNNpxkEw.js","assets/hex-encoding-CVnQo5PF.js","assets/back-link-wsXUoJ12.js","assets/link-BokOReHc.js","assets/createLucideIcon-BQgzNCBR.js","assets/trash-DVab4pEz.js","assets/button-C9VMD5Xn.js","assets/dist-DEhWxN7p.js","assets/iam-DtFzCnrP.js","assets/useMutation-6rdxVQpi.js","assets/mutation-BziiWz5u.js","assets/awsClient-Bm9ksq2r.js","assets/index.browser-DuXQj3EI.js","assets/commandBuilder-D4HJ1FUj.js","assets/iam-3D5jlLAz.js","assets/queryOptions-Dfvzj6n2.js","assets/json-CeLiNx_J.js","assets/page-heading-vksh_67w.js","assets/error-banner-DeOeVBKS.js","assets/delete-confirmation-dialog-8byauM7I.js","assets/alert-dialog-Da3OTbL9.js","assets/DialogTitle-BIRU7hlM.js","assets/useValueAsRef-BRYYjd2W.js","assets/createBaseUIEventDetails-sqRELvD6.js","assets/useScrollLock-aaqhvzFs.js","assets/detail-row-DNBRlVeK.js","assets/policy-document-viewer-DAhLJAGU.js"])))=>i.map(i=>d[i]);
|
||||
import{n as e,t}from"./lazyRouteComponent-D0nAq0Je.js";import{un as n,ut as r}from"./cluster-config-DNNpxkEw.js";import{h as i,m as a}from"./iam-3D5jlLAz.js";var o=e(`/_auth/iam/(policies)/list-policies/$policyArn`)({loader:async({context:e,params:t})=>{let r=n(t.policyArn),o=await e.queryClient.query({...a(r),staleTime:`static`}),s=o.Policy?.DefaultVersionId;return s&&await e.queryClient.query({...i(r,s),staleTime:`static`}),o},head:({loaderData:e})=>({meta:[{title:`${e?.Policy?.PolicyName??`Policy`} | IAM | Mulga`}]}),component:t(()=>r(()=>import(`./_policyArn-CdwjiXLW.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35])),`component`)});export{o as t};
|
||||
+1
-1
@@ -1 +1 @@
|
||||
import{n as e,o as t,r as n}from"./compiler-runtime-D_vZfn79.js";import{t as r}from"./useSuspenseQuery-Bc7E1P-f.js";import{t as i}from"./useNavigate-CTe_-BZA.js";import{an as a,un as o}from"./cluster-config-DNNpxkEw.js";import{t as s}from"./back-link-wsXUoJ12.js";import{t as c}from"./trash-DVab4pEz.js";import{t as l}from"./button-C9VMD5Xn.js";import{g as u}from"./iam-BhvTeEfR.js";import{h as d,m as f}from"./iam-3D5jlLAz.js";import{t as p}from"./_policyArn-1xb5b-UV.js";import{t as m}from"./page-heading-vksh_67w.js";import{t as h}from"./error-banner-DeOeVBKS.js";import{t as g}from"./delete-confirmation-dialog-8byauM7I.js";import{n as _,t as v}from"./detail-row-DNBRlVeK.js";import{t as y}from"./policy-document-viewer-DAhLJAGU.js";var b=t(n()),x=e();function S(){let{policyArn:e}=p.useParams(),t=o(e),n=i(),{data:S}=r(f(t)),C=S.Policy,w=u(),[T,E]=(0,b.useState)(!1),D=C?.DefaultVersionId??`v1`,{data:O}=r(d(t,D)),k=O?.PolicyVersion?.Document?o(O.PolicyVersion.Document):null;return C?(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)(s,{to:`/iam/list-policies`,children:`Back to policies`}),w.error&&(0,x.jsx)(h,{error:w.error,msg:`Failed to delete policy`}),(0,x.jsxs)(`div`,{className:`space-y-6`,children:[(0,x.jsx)(m,{actions:(0,x.jsxs)(l,{onClick:()=>{E(!0)},size:`sm`,variant:`destructive`,children:[(0,x.jsx)(c,{className:`size-4`}),`Delete`]}),subtitle:`Policy Details`,title:C.PolicyName??``}),(0,x.jsxs)(_,{children:[(0,x.jsx)(_.Header,{children:`Policy Information`}),(0,x.jsxs)(_.Content,{children:[(0,x.jsx)(v,{label:`Policy Name`,value:C.PolicyName}),(0,x.jsx)(v,{label:`Policy ID`,value:C.PolicyId}),(0,x.jsx)(v,{label:`ARN`,value:C.Arn}),(0,x.jsx)(v,{label:`Path`,value:C.Path}),(0,x.jsx)(v,{label:`Description`,value:C.Description??`-`}),(0,x.jsx)(v,{label:`Created`,value:a(C.CreateDate)})]})]}),k&&(0,x.jsxs)(_,{children:[(0,x.jsx)(_.Header,{children:`Policy Document`}),(0,x.jsx)(`div`,{className:`p-4`,children:(0,x.jsx)(y,{document:k})})]})]}),(0,x.jsx)(g,{description:`Are you sure you want to delete the policy "${C.PolicyName}"? This action cannot be undone.`,isPending:w.isPending,onConfirm:async()=>{try{await w.mutateAsync(t),n({to:`/iam/list-policies`})}finally{E(!1)}},onOpenChange:E,open:T,title:`Delete Policy`})]}):(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)(s,{to:`/iam/list-policies`,children:`Back to policies`}),(0,x.jsx)(`p`,{className:`text-muted-foreground`,children:`Policy not found.`})]})}export{S as component};
|
||||
import{n as e,o as t,r as n}from"./compiler-runtime-D_vZfn79.js";import{t as r}from"./useSuspenseQuery-Bc7E1P-f.js";import{t as i}from"./useNavigate-CTe_-BZA.js";import{an as a,un as o}from"./cluster-config-DNNpxkEw.js";import{t as s}from"./back-link-wsXUoJ12.js";import{t as c}from"./trash-DVab4pEz.js";import{t as l}from"./button-C9VMD5Xn.js";import{g as u}from"./iam-DtFzCnrP.js";import{h as d,m as f}from"./iam-3D5jlLAz.js";import{t as p}from"./_policyArn-CZ_-qqxj.js";import{t as m}from"./page-heading-vksh_67w.js";import{t as h}from"./error-banner-DeOeVBKS.js";import{t as g}from"./delete-confirmation-dialog-8byauM7I.js";import{n as _,t as v}from"./detail-row-DNBRlVeK.js";import{t as y}from"./policy-document-viewer-DAhLJAGU.js";var b=t(n()),x=e();function S(){let{policyArn:e}=p.useParams(),t=o(e),n=i(),{data:S}=r(f(t)),C=S.Policy,w=u(),[T,E]=(0,b.useState)(!1),D=C?.DefaultVersionId??`v1`,{data:O}=r(d(t,D)),k=O?.PolicyVersion?.Document?o(O.PolicyVersion.Document):null;return C?(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)(s,{to:`/iam/list-policies`,children:`Back to policies`}),w.error&&(0,x.jsx)(h,{error:w.error,msg:`Failed to delete policy`}),(0,x.jsxs)(`div`,{className:`space-y-6`,children:[(0,x.jsx)(m,{actions:(0,x.jsxs)(l,{onClick:()=>{E(!0)},size:`sm`,variant:`destructive`,children:[(0,x.jsx)(c,{className:`size-4`}),`Delete`]}),subtitle:`Policy Details`,title:C.PolicyName??``}),(0,x.jsxs)(_,{children:[(0,x.jsx)(_.Header,{children:`Policy Information`}),(0,x.jsxs)(_.Content,{children:[(0,x.jsx)(v,{label:`Policy Name`,value:C.PolicyName}),(0,x.jsx)(v,{label:`Policy ID`,value:C.PolicyId}),(0,x.jsx)(v,{label:`ARN`,value:C.Arn}),(0,x.jsx)(v,{label:`Path`,value:C.Path}),(0,x.jsx)(v,{label:`Description`,value:C.Description??`-`}),(0,x.jsx)(v,{label:`Created`,value:a(C.CreateDate)})]})]}),k&&(0,x.jsxs)(_,{children:[(0,x.jsx)(_.Header,{children:`Policy Document`}),(0,x.jsx)(`div`,{className:`p-4`,children:(0,x.jsx)(y,{document:k})})]})]}),(0,x.jsx)(g,{description:`Are you sure you want to delete the policy "${C.PolicyName}"? This action cannot be undone.`,isPending:w.isPending,onConfirm:async()=>{try{await w.mutateAsync(t),n({to:`/iam/list-policies`})}finally{E(!1)}},onOpenChange:E,open:T,title:`Delete Policy`})]}):(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)(s,{to:`/iam/list-policies`,children:`Back to policies`}),(0,x.jsx)(`p`,{className:`text-muted-foreground`,children:`Policy not found.`})]})}export{S as component};
|
||||
+1
-1
@@ -1 +1 @@
|
||||
import{n as e,o as t,r as n}from"./compiler-runtime-D_vZfn79.js";import{t as r}from"./useSuspenseQuery-Bc7E1P-f.js";import{t as i}from"./link-BokOReHc.js";import{t as a}from"./useNavigate-CTe_-BZA.js";import{an as o}from"./cluster-config-DNNpxkEw.js";import{t as s}from"./back-link-wsXUoJ12.js";import{t as c}from"./trash-DVab4pEz.js";import{t as l}from"./button-C9VMD5Xn.js";import{_ as u}from"./iam-BhvTeEfR.js";import{d,v as f}from"./iam-3D5jlLAz.js";import{t as p}from"./_roleName-CwOZwaUn.js";import{t as m}from"./page-heading-vksh_67w.js";import{t as h}from"./error-banner-DeOeVBKS.js";import{t as g}from"./delete-confirmation-dialog-8byauM7I.js";import{n as _,t as v}from"./detail-row-DNBRlVeK.js";import{t as y}from"./policy-document-viewer-DAhLJAGU.js";import{n as b,t as x}from"./inline-policies-panel-BzXIjEbl.js";var S=t(n()),C=e();function w(){let{roleName:e}=p.useParams(),t=a(),{data:n}=r(f(e)),{data:w}=r(d(e)),T=u(),[E,D]=(0,S.useState)(!1),O=n.Role,k=w.InstanceProfiles??[],A=O?.AssumeRolePolicyDocument?decodeURIComponent(O.AssumeRolePolicyDocument):null;return O?(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(s,{to:`/iam/list-roles`,children:`Back to roles`}),T.error&&(0,C.jsx)(h,{error:T.error,msg:`Failed to delete role`}),(0,C.jsxs)(`div`,{className:`space-y-6`,children:[(0,C.jsx)(m,{actions:(0,C.jsxs)(l,{onClick:()=>{D(!0)},size:`sm`,variant:`destructive`,children:[(0,C.jsx)(c,{className:`size-4`}),`Delete`]}),subtitle:`Role Details`,title:O.RoleName??``}),(0,C.jsxs)(_,{children:[(0,C.jsx)(_.Header,{children:`Role Information`}),(0,C.jsxs)(_.Content,{children:[(0,C.jsx)(v,{label:`Role Name`,value:O.RoleName}),(0,C.jsx)(v,{label:`Role ID`,value:O.RoleId}),(0,C.jsx)(v,{label:`ARN`,value:O.Arn}),(0,C.jsx)(v,{label:`Path`,value:O.Path}),(0,C.jsx)(v,{label:`Description`,value:O.Description??`-`}),(0,C.jsx)(v,{label:`Created`,value:o(O.CreateDate)})]})]}),A&&(0,C.jsxs)(_,{children:[(0,C.jsx)(_.Header,{children:`Trust Policy`}),(0,C.jsx)(`div`,{className:`p-4`,children:(0,C.jsx)(y,{document:A})})]}),(0,C.jsx)(b,{kind:`role`,name:e}),(0,C.jsx)(x,{kind:`role`,name:e}),(0,C.jsxs)(_,{children:[(0,C.jsx)(_.Header,{children:`Instance Profiles`}),(0,C.jsx)(_.Content,{children:k.length>0?(0,C.jsx)(`div`,{className:`col-span-2 space-y-3`,children:k.map(e=>(0,C.jsxs)(i,{className:`flex items-center justify-between rounded-md border p-3 transition-colors hover:bg-accent`,params:{instanceProfileName:e.InstanceProfileName??``},to:`/iam/list-instance-profiles/$instanceProfileName`,children:[(0,C.jsx)(`p`,{className:`text-sm font-medium`,children:e.InstanceProfileName}),(0,C.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:e.Arn})]},e.InstanceProfileName))}):(0,C.jsx)(`p`,{className:`col-span-2 text-sm text-muted-foreground`,children:`This role is not in any instance profile.`})})]})]}),(0,C.jsx)(g,{description:`Are you sure you want to delete the role "${e}"? This action cannot be undone. You must detach all policies and remove it from all instance profiles first.`,isPending:T.isPending,onConfirm:async()=>{try{await T.mutateAsync(e),t({to:`/iam/list-roles`})}finally{D(!1)}},onOpenChange:D,open:E,title:`Delete Role`})]}):(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(s,{to:`/iam/list-roles`,children:`Back to roles`}),(0,C.jsx)(`p`,{className:`text-muted-foreground`,children:`Role not found.`})]})}export{w as component};
|
||||
import{n as e,o as t,r as n}from"./compiler-runtime-D_vZfn79.js";import{t as r}from"./useSuspenseQuery-Bc7E1P-f.js";import{t as i}from"./link-BokOReHc.js";import{t as a}from"./useNavigate-CTe_-BZA.js";import{an as o}from"./cluster-config-DNNpxkEw.js";import{t as s}from"./back-link-wsXUoJ12.js";import{t as c}from"./trash-DVab4pEz.js";import{t as l}from"./button-C9VMD5Xn.js";import{_ as u}from"./iam-DtFzCnrP.js";import{d,v as f}from"./iam-3D5jlLAz.js";import{t as p}from"./_roleName-D14GhLGW.js";import{t as m}from"./page-heading-vksh_67w.js";import{t as h}from"./error-banner-DeOeVBKS.js";import{t as g}from"./delete-confirmation-dialog-8byauM7I.js";import{n as _,t as v}from"./detail-row-DNBRlVeK.js";import{t as y}from"./policy-document-viewer-DAhLJAGU.js";import{n as b,t as x}from"./inline-policies-panel-Bjqkq9_Q.js";var S=t(n()),C=e();function w(){let{roleName:e}=p.useParams(),t=a(),{data:n}=r(f(e)),{data:w}=r(d(e)),T=u(),[E,D]=(0,S.useState)(!1),O=n.Role,k=w.InstanceProfiles??[],A=O?.AssumeRolePolicyDocument?decodeURIComponent(O.AssumeRolePolicyDocument):null;return O?(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(s,{to:`/iam/list-roles`,children:`Back to roles`}),T.error&&(0,C.jsx)(h,{error:T.error,msg:`Failed to delete role`}),(0,C.jsxs)(`div`,{className:`space-y-6`,children:[(0,C.jsx)(m,{actions:(0,C.jsxs)(l,{onClick:()=>{D(!0)},size:`sm`,variant:`destructive`,children:[(0,C.jsx)(c,{className:`size-4`}),`Delete`]}),subtitle:`Role Details`,title:O.RoleName??``}),(0,C.jsxs)(_,{children:[(0,C.jsx)(_.Header,{children:`Role Information`}),(0,C.jsxs)(_.Content,{children:[(0,C.jsx)(v,{label:`Role Name`,value:O.RoleName}),(0,C.jsx)(v,{label:`Role ID`,value:O.RoleId}),(0,C.jsx)(v,{label:`ARN`,value:O.Arn}),(0,C.jsx)(v,{label:`Path`,value:O.Path}),(0,C.jsx)(v,{label:`Description`,value:O.Description??`-`}),(0,C.jsx)(v,{label:`Created`,value:o(O.CreateDate)})]})]}),A&&(0,C.jsxs)(_,{children:[(0,C.jsx)(_.Header,{children:`Trust Policy`}),(0,C.jsx)(`div`,{className:`p-4`,children:(0,C.jsx)(y,{document:A})})]}),(0,C.jsx)(b,{kind:`role`,name:e}),(0,C.jsx)(x,{kind:`role`,name:e}),(0,C.jsxs)(_,{children:[(0,C.jsx)(_.Header,{children:`Instance Profiles`}),(0,C.jsx)(_.Content,{children:k.length>0?(0,C.jsx)(`div`,{className:`col-span-2 space-y-3`,children:k.map(e=>(0,C.jsxs)(i,{className:`flex items-center justify-between rounded-md border p-3 transition-colors hover:bg-accent`,params:{instanceProfileName:e.InstanceProfileName??``},to:`/iam/list-instance-profiles/$instanceProfileName`,children:[(0,C.jsx)(`p`,{className:`text-sm font-medium`,children:e.InstanceProfileName}),(0,C.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:e.Arn})]},e.InstanceProfileName))}):(0,C.jsx)(`p`,{className:`col-span-2 text-sm text-muted-foreground`,children:`This role is not in any instance profile.`})})]})]}),(0,C.jsx)(g,{description:`Are you sure you want to delete the role "${e}"? This action cannot be undone. You must detach all policies and remove it from all instance profiles first.`,isPending:T.isPending,onConfirm:async()=>{try{await T.mutateAsync(e),t({to:`/iam/list-roles`})}finally{D(!1)}},onOpenChange:D,open:E,title:`Delete Role`})]}):(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(s,{to:`/iam/list-roles`,children:`Back to roles`}),(0,C.jsx)(`p`,{className:`text-muted-foreground`,children:`Role not found.`})]})}export{w as component};
|
||||
+2
-2
@@ -1,2 +1,2 @@
|
||||
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/_roleName-ChFldOSA.js","assets/compiler-runtime-D_vZfn79.js","assets/useSuspenseQuery-Bc7E1P-f.js","assets/useBaseQuery-Dqg0ViLa.js","assets/removable-Dwr9otKB.js","assets/query-BPr_oSEg.js","assets/link-BokOReHc.js","assets/useSelector-C6_B_5v6.js","assets/with-selector-DrM041uv.js","assets/useNavigate-CTe_-BZA.js","assets/cluster-config-DNNpxkEw.js","assets/hex-encoding-CVnQo5PF.js","assets/back-link-wsXUoJ12.js","assets/createLucideIcon-BQgzNCBR.js","assets/trash-DVab4pEz.js","assets/button-C9VMD5Xn.js","assets/dist-DEhWxN7p.js","assets/iam-BhvTeEfR.js","assets/useMutation-6rdxVQpi.js","assets/mutation-BziiWz5u.js","assets/awsClient-Bm9ksq2r.js","assets/index.browser-DuXQj3EI.js","assets/commandBuilder-D4HJ1FUj.js","assets/iam-3D5jlLAz.js","assets/queryOptions-Dfvzj6n2.js","assets/json-CeLiNx_J.js","assets/page-heading-vksh_67w.js","assets/error-banner-DeOeVBKS.js","assets/delete-confirmation-dialog-8byauM7I.js","assets/alert-dialog-Da3OTbL9.js","assets/DialogTitle-BIRU7hlM.js","assets/useValueAsRef-BRYYjd2W.js","assets/createBaseUIEventDetails-sqRELvD6.js","assets/useScrollLock-aaqhvzFs.js","assets/detail-row-DNBRlVeK.js","assets/policy-document-viewer-DAhLJAGU.js","assets/inline-policies-panel-BzXIjEbl.js","assets/useQuery-2EKf7AyV.js","assets/input-CBUMH1Jl.js","assets/useValueChanged-3krk2xbP.js","assets/useControlled-DwxdYHYK.js","assets/field-BKQO3cRo.js","assets/separator-BFSV8f2Y.js","assets/json-editor-C0uKwIA1.js","assets/textarea-CTBs9AlF.js","assets/iam-CADYUEJg.js"])))=>i.map(i=>d[i]);
|
||||
import{n as e,t}from"./lazyRouteComponent-D0nAq0Je.js";import{ut as n}from"./cluster-config-DNNpxkEw.js";import{d as r,g as i,p as a,r as o,v as s}from"./iam-3D5jlLAz.js";var c=e(`/_auth/iam/(roles)/list-roles/$roleName`)({loader:async({context:e,params:t})=>{await Promise.all([e.queryClient.query({...s(t.roleName),staleTime:`static`}),e.queryClient.query({...o(t.roleName),staleTime:`static`}),e.queryClient.query({...r(t.roleName),staleTime:`static`}),e.queryClient.query({...a,staleTime:`static`}),e.queryClient.query({...i(t.roleName),staleTime:`static`})])},head:({params:e})=>({meta:[{title:`${e.roleName} | IAM | Mulga`}]}),component:t(()=>n(()=>import(`./_roleName-ChFldOSA.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45])),`component`)});export{c as t};
|
||||
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/_roleName-CRi84efF.js","assets/compiler-runtime-D_vZfn79.js","assets/useSuspenseQuery-Bc7E1P-f.js","assets/useBaseQuery-Dqg0ViLa.js","assets/removable-Dwr9otKB.js","assets/query-BPr_oSEg.js","assets/link-BokOReHc.js","assets/useSelector-C6_B_5v6.js","assets/with-selector-DrM041uv.js","assets/useNavigate-CTe_-BZA.js","assets/cluster-config-DNNpxkEw.js","assets/hex-encoding-CVnQo5PF.js","assets/back-link-wsXUoJ12.js","assets/createLucideIcon-BQgzNCBR.js","assets/trash-DVab4pEz.js","assets/button-C9VMD5Xn.js","assets/dist-DEhWxN7p.js","assets/iam-DtFzCnrP.js","assets/useMutation-6rdxVQpi.js","assets/mutation-BziiWz5u.js","assets/awsClient-Bm9ksq2r.js","assets/index.browser-DuXQj3EI.js","assets/commandBuilder-D4HJ1FUj.js","assets/iam-3D5jlLAz.js","assets/queryOptions-Dfvzj6n2.js","assets/json-CeLiNx_J.js","assets/page-heading-vksh_67w.js","assets/error-banner-DeOeVBKS.js","assets/delete-confirmation-dialog-8byauM7I.js","assets/alert-dialog-Da3OTbL9.js","assets/DialogTitle-BIRU7hlM.js","assets/useValueAsRef-BRYYjd2W.js","assets/createBaseUIEventDetails-sqRELvD6.js","assets/useScrollLock-aaqhvzFs.js","assets/detail-row-DNBRlVeK.js","assets/policy-document-viewer-DAhLJAGU.js","assets/inline-policies-panel-Bjqkq9_Q.js","assets/useQuery-2EKf7AyV.js","assets/input-CBUMH1Jl.js","assets/useValueChanged-3krk2xbP.js","assets/useControlled-DwxdYHYK.js","assets/field-BKQO3cRo.js","assets/separator-BFSV8f2Y.js","assets/json-editor-C0uKwIA1.js","assets/textarea-CTBs9AlF.js","assets/iam-CADYUEJg.js"])))=>i.map(i=>d[i]);
|
||||
import{n as e,t}from"./lazyRouteComponent-D0nAq0Je.js";import{ut as n}from"./cluster-config-DNNpxkEw.js";import{d as r,g as i,p as a,r as o,v as s}from"./iam-3D5jlLAz.js";var c=e(`/_auth/iam/(roles)/list-roles/$roleName`)({loader:async({context:e,params:t})=>{await Promise.all([e.queryClient.query({...s(t.roleName),staleTime:`static`}),e.queryClient.query({...o(t.roleName),staleTime:`static`}),e.queryClient.query({...r(t.roleName),staleTime:`static`}),e.queryClient.query({...a,staleTime:`static`}),e.queryClient.query({...i(t.roleName),staleTime:`static`})])},head:({params:e})=>({meta:[{title:`${e.roleName} | IAM | Mulga`}]}),component:t(()=>n(()=>import(`./_roleName-CRi84efF.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45])),`component`)});export{c as t};
|
||||
+2
-2
@@ -1,2 +1,2 @@
|
||||
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/_userName-DmYwm7Wx.js","assets/compiler-runtime-D_vZfn79.js","assets/useSuspenseQuery-Bc7E1P-f.js","assets/useBaseQuery-Dqg0ViLa.js","assets/removable-Dwr9otKB.js","assets/query-BPr_oSEg.js","assets/link-BokOReHc.js","assets/useSelector-C6_B_5v6.js","assets/with-selector-DrM041uv.js","assets/useNavigate-CTe_-BZA.js","assets/cluster-config-DNNpxkEw.js","assets/hex-encoding-CVnQo5PF.js","assets/back-link-wsXUoJ12.js","assets/createLucideIcon-BQgzNCBR.js","assets/check-BO7W8OSs.js","assets/trash-DVab4pEz.js","assets/triangle-alert-DcjzeKLg.js","assets/button-C9VMD5Xn.js","assets/dist-DEhWxN7p.js","assets/iam-BhvTeEfR.js","assets/useMutation-6rdxVQpi.js","assets/mutation-BziiWz5u.js","assets/awsClient-Bm9ksq2r.js","assets/index.browser-DuXQj3EI.js","assets/commandBuilder-D4HJ1FUj.js","assets/iam-3D5jlLAz.js","assets/queryOptions-Dfvzj6n2.js","assets/json-CeLiNx_J.js","assets/page-heading-vksh_67w.js","assets/error-banner-DeOeVBKS.js","assets/alert-dialog-Da3OTbL9.js","assets/DialogTitle-BIRU7hlM.js","assets/useValueAsRef-BRYYjd2W.js","assets/createBaseUIEventDetails-sqRELvD6.js","assets/useScrollLock-aaqhvzFs.js","assets/delete-confirmation-dialog-8byauM7I.js","assets/detail-row-DNBRlVeK.js","assets/state-badge-BbpKF1NE.js","assets/use-copy-to-clipboard-DjiD3qo6.js","assets/inline-policies-panel-BzXIjEbl.js","assets/useQuery-2EKf7AyV.js","assets/input-CBUMH1Jl.js","assets/useValueChanged-3krk2xbP.js","assets/useControlled-DwxdYHYK.js","assets/field-BKQO3cRo.js","assets/separator-BFSV8f2Y.js","assets/json-editor-C0uKwIA1.js","assets/textarea-CTBs9AlF.js","assets/iam-CADYUEJg.js"])))=>i.map(i=>d[i]);
|
||||
import{n as e,t}from"./lazyRouteComponent-D0nAq0Je.js";import{ut as n}from"./cluster-config-DNNpxkEw.js";import{S as r,b as i,c as a,i as o,p as s,t as c}from"./iam-3D5jlLAz.js";var l=e(`/_auth/iam/(users)/list-users/$userName`)({loader:async({context:e,params:t})=>{await Promise.all([e.queryClient.query({...r(t.userName),staleTime:`static`}),e.queryClient.query({...c(t.userName),staleTime:`static`}),e.queryClient.query({...o(t.userName),staleTime:`static`}),e.queryClient.query({...s,staleTime:`static`}),e.queryClient.query({...a(t.userName),staleTime:`static`}),e.queryClient.query({...i(t.userName),staleTime:`static`})])},head:({params:e})=>({meta:[{title:`${e.userName} | IAM | Mulga`}]}),component:t(()=>n(()=>import(`./_userName-DmYwm7Wx.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48])),`component`)});export{l as t};
|
||||
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/_userName-D8HdlRqa.js","assets/compiler-runtime-D_vZfn79.js","assets/useSuspenseQuery-Bc7E1P-f.js","assets/useBaseQuery-Dqg0ViLa.js","assets/removable-Dwr9otKB.js","assets/query-BPr_oSEg.js","assets/link-BokOReHc.js","assets/useSelector-C6_B_5v6.js","assets/with-selector-DrM041uv.js","assets/useNavigate-CTe_-BZA.js","assets/cluster-config-DNNpxkEw.js","assets/hex-encoding-CVnQo5PF.js","assets/back-link-wsXUoJ12.js","assets/createLucideIcon-BQgzNCBR.js","assets/check-BO7W8OSs.js","assets/trash-DVab4pEz.js","assets/triangle-alert-DcjzeKLg.js","assets/button-C9VMD5Xn.js","assets/dist-DEhWxN7p.js","assets/iam-DtFzCnrP.js","assets/useMutation-6rdxVQpi.js","assets/mutation-BziiWz5u.js","assets/awsClient-Bm9ksq2r.js","assets/index.browser-DuXQj3EI.js","assets/commandBuilder-D4HJ1FUj.js","assets/iam-3D5jlLAz.js","assets/queryOptions-Dfvzj6n2.js","assets/json-CeLiNx_J.js","assets/page-heading-vksh_67w.js","assets/error-banner-DeOeVBKS.js","assets/alert-dialog-Da3OTbL9.js","assets/DialogTitle-BIRU7hlM.js","assets/useValueAsRef-BRYYjd2W.js","assets/createBaseUIEventDetails-sqRELvD6.js","assets/useScrollLock-aaqhvzFs.js","assets/delete-confirmation-dialog-8byauM7I.js","assets/detail-row-DNBRlVeK.js","assets/state-badge-BbpKF1NE.js","assets/use-copy-to-clipboard-DjiD3qo6.js","assets/inline-policies-panel-Bjqkq9_Q.js","assets/useQuery-2EKf7AyV.js","assets/input-CBUMH1Jl.js","assets/useValueChanged-3krk2xbP.js","assets/useControlled-DwxdYHYK.js","assets/field-BKQO3cRo.js","assets/separator-BFSV8f2Y.js","assets/json-editor-C0uKwIA1.js","assets/textarea-CTBs9AlF.js","assets/iam-CADYUEJg.js"])))=>i.map(i=>d[i]);
|
||||
import{n as e,t}from"./lazyRouteComponent-D0nAq0Je.js";import{ut as n}from"./cluster-config-DNNpxkEw.js";import{S as r,b as i,c as a,i as o,p as s,t as c}from"./iam-3D5jlLAz.js";var l=e(`/_auth/iam/(users)/list-users/$userName`)({loader:async({context:e,params:t})=>{await Promise.all([e.queryClient.query({...r(t.userName),staleTime:`static`}),e.queryClient.query({...c(t.userName),staleTime:`static`}),e.queryClient.query({...o(t.userName),staleTime:`static`}),e.queryClient.query({...s,staleTime:`static`}),e.queryClient.query({...a(t.userName),staleTime:`static`}),e.queryClient.query({...i(t.userName),staleTime:`static`})])},head:({params:e})=>({meta:[{title:`${e.userName} | IAM | Mulga`}]}),component:t(()=>n(()=>import(`./_userName-D8HdlRqa.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48])),`component`)});export{l as t};
|
||||
+1
-1
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
+1
-1
@@ -1 +1 @@
|
||||
import{n as e,t}from"./compiler-runtime-D_vZfn79.js";import{t as n}from"./useNavigate-CTe_-BZA.js";import{t as r}from"./back-link-wsXUoJ12.js";import{t as i}from"./cli-command-panel-4C78XA6W.js";import{t as a}from"./input-CBUMH1Jl.js";import{s as o}from"./iam-BhvTeEfR.js";import{t as s}from"./page-heading-vksh_67w.js";import{a as c,i as l,t as u}from"./zod-A4qtKH_p.js";import{t as d}from"./error-banner-DeOeVBKS.js";import{t as f}from"./form-actions-ECg9_Gdo.js";import{r as p,s as m,t as h}from"./field-BKQO3cRo.js";import{n as g}from"./iam-CADYUEJg.js";var _=t(),v=e();function y(){let e=(0,_.c)(53),t=n(),y=o(),x;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(x={resolver:u(g)},e[0]=x):x=e[0];let{handleSubmit:S,register:C,control:w,formState:T}=l(x),{errors:E,isSubmitting:D}=T,O;e[1]===w?O=e[2]:(O={control:w},e[1]=w,e[2]=O);let k=c(O),A;e[3]!==y||e[4]!==t?(A=async e=>{await y.mutateAsync(e),t({to:`/iam/list-groups`})},e[3]=y,e[4]=t,e[5]=A):A=e[5];let j=A,M,N;e[6]===Symbol.for(`react.memo_cache_sentinel`)?(M=(0,v.jsx)(r,{to:`/iam/list-groups`,children:`Back to groups`}),N=(0,v.jsx)(s,{title:`Create Group`}),e[6]=M,e[7]=N):(M=e[6],N=e[7]);let P;e[8]===y.error?P=e[9]:(P=y.error&&(0,v.jsx)(d,{error:y.error,msg:`Failed to create group`}),e[8]=y.error,e[9]=P);let F;e[10]!==S||e[11]!==j?(F=S(j),e[10]=S,e[11]=j,e[12]=F):F=e[12];let I;e[13]===Symbol.for(`react.memo_cache_sentinel`)?(I=(0,v.jsx)(m,{children:(0,v.jsx)(`label`,{htmlFor:`groupName`,children:`Group Name`})}),e[13]=I):I=e[13];let L=!!E.groupName,R;e[14]===C?R=e[15]:(R=C(`groupName`),e[14]=C,e[15]=R);let z;e[16]!==R||e[17]!==L?(z=(0,v.jsx)(a,{"aria-invalid":L,id:`groupName`,placeholder:`my-group...`,...R}),e[16]=R,e[17]=L,e[18]=z):z=e[18];let B;e[19]===E.groupName?B=e[20]:(B=(0,v.jsx)(p,{errors:[E.groupName]}),e[19]=E.groupName,e[20]=B);let V;e[21]!==z||e[22]!==B?(V=(0,v.jsxs)(h,{children:[I,z,B]}),e[21]=z,e[22]=B,e[23]=V):V=e[23];let H;e[24]===Symbol.for(`react.memo_cache_sentinel`)?(H=(0,v.jsx)(m,{children:(0,v.jsx)(`label`,{htmlFor:`path`,children:`Path (optional)`})}),e[24]=H):H=e[24];let U;e[25]===C?U=e[26]:(U=C(`path`),e[25]=C,e[26]=U);let W;e[27]===U?W=e[28]:(W=(0,v.jsx)(a,{id:`path`,placeholder:`/`,...U}),e[27]=U,e[28]=W);let G;e[29]===E.path?G=e[30]:(G=(0,v.jsx)(p,{errors:[E.path]}),e[29]=E.path,e[30]=G);let K;e[31]!==W||e[32]!==G?(K=(0,v.jsxs)(h,{children:[H,W,G]}),e[31]=W,e[32]=G,e[33]=K):K=e[33];let q;e[34]===k?q=e[35]:(q=b(k),e[34]=k,e[35]=q);let J;e[36]===q?J=e[37]:(J=(0,v.jsx)(i,{commands:q}),e[36]=q,e[37]=J);let Y;e[38]===t?Y=e[39]:(Y=async()=>{await t({to:`/iam/list-groups`})},e[38]=t,e[39]=Y);let X;e[40]!==y.isPending||e[41]!==D||e[42]!==Y?(X=(0,v.jsx)(f,{isPending:y.isPending,isSubmitting:D,onCancel:Y,pendingLabel:`Creating...`,submitLabel:`Create Group`}),e[40]=y.isPending,e[41]=D,e[42]=Y,e[43]=X):X=e[43];let Z;e[44]!==V||e[45]!==K||e[46]!==J||e[47]!==X||e[48]!==F?(Z=(0,v.jsxs)(`form`,{className:`max-w-4xl space-y-6`,onSubmit:F,children:[V,K,J,X]}),e[44]=V,e[45]=K,e[46]=J,e[47]=X,e[48]=F,e[49]=Z):Z=e[49];let Q;return e[50]!==Z||e[51]!==P?(Q=(0,v.jsxs)(v.Fragment,{children:[M,N,P,Z]}),e[50]=Z,e[51]=P,e[52]=Q):Q=e[52],Q}function b(e){let t=e.groupName??``,n=e.path??``,r=[{type:`bin`,value:`AWS_PROFILE=spinifex aws iam create-group`},{type:`flag`,value:` --group-name`},{type:`value`,value:` ${t||`<GroupName>`}`}];return n&&n!==`/`&&r.push({type:`flag`,value:` --path`},{type:`value`,value:` ${n}`}),[{label:`Create Group`,parts:r}]}export{y as component};
|
||||
import{n as e,t}from"./compiler-runtime-D_vZfn79.js";import{t as n}from"./useNavigate-CTe_-BZA.js";import{t as r}from"./back-link-wsXUoJ12.js";import{t as i}from"./cli-command-panel-4C78XA6W.js";import{t as a}from"./input-CBUMH1Jl.js";import{s as o}from"./iam-DtFzCnrP.js";import{t as s}from"./page-heading-vksh_67w.js";import{a as c,i as l,t as u}from"./zod-A4qtKH_p.js";import{t as d}from"./error-banner-DeOeVBKS.js";import{t as f}from"./form-actions-ECg9_Gdo.js";import{r as p,s as m,t as h}from"./field-BKQO3cRo.js";import{n as g}from"./iam-CADYUEJg.js";var _=t(),v=e();function y(){let e=(0,_.c)(53),t=n(),y=o(),x;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(x={resolver:u(g)},e[0]=x):x=e[0];let{handleSubmit:S,register:C,control:w,formState:T}=l(x),{errors:E,isSubmitting:D}=T,O;e[1]===w?O=e[2]:(O={control:w},e[1]=w,e[2]=O);let k=c(O),A;e[3]!==y||e[4]!==t?(A=async e=>{await y.mutateAsync(e),t({to:`/iam/list-groups`})},e[3]=y,e[4]=t,e[5]=A):A=e[5];let j=A,M,N;e[6]===Symbol.for(`react.memo_cache_sentinel`)?(M=(0,v.jsx)(r,{to:`/iam/list-groups`,children:`Back to groups`}),N=(0,v.jsx)(s,{title:`Create Group`}),e[6]=M,e[7]=N):(M=e[6],N=e[7]);let P;e[8]===y.error?P=e[9]:(P=y.error&&(0,v.jsx)(d,{error:y.error,msg:`Failed to create group`}),e[8]=y.error,e[9]=P);let F;e[10]!==S||e[11]!==j?(F=S(j),e[10]=S,e[11]=j,e[12]=F):F=e[12];let I;e[13]===Symbol.for(`react.memo_cache_sentinel`)?(I=(0,v.jsx)(m,{children:(0,v.jsx)(`label`,{htmlFor:`groupName`,children:`Group Name`})}),e[13]=I):I=e[13];let L=!!E.groupName,R;e[14]===C?R=e[15]:(R=C(`groupName`),e[14]=C,e[15]=R);let z;e[16]!==R||e[17]!==L?(z=(0,v.jsx)(a,{"aria-invalid":L,id:`groupName`,placeholder:`my-group...`,...R}),e[16]=R,e[17]=L,e[18]=z):z=e[18];let B;e[19]===E.groupName?B=e[20]:(B=(0,v.jsx)(p,{errors:[E.groupName]}),e[19]=E.groupName,e[20]=B);let V;e[21]!==z||e[22]!==B?(V=(0,v.jsxs)(h,{children:[I,z,B]}),e[21]=z,e[22]=B,e[23]=V):V=e[23];let H;e[24]===Symbol.for(`react.memo_cache_sentinel`)?(H=(0,v.jsx)(m,{children:(0,v.jsx)(`label`,{htmlFor:`path`,children:`Path (optional)`})}),e[24]=H):H=e[24];let U;e[25]===C?U=e[26]:(U=C(`path`),e[25]=C,e[26]=U);let W;e[27]===U?W=e[28]:(W=(0,v.jsx)(a,{id:`path`,placeholder:`/`,...U}),e[27]=U,e[28]=W);let G;e[29]===E.path?G=e[30]:(G=(0,v.jsx)(p,{errors:[E.path]}),e[29]=E.path,e[30]=G);let K;e[31]!==W||e[32]!==G?(K=(0,v.jsxs)(h,{children:[H,W,G]}),e[31]=W,e[32]=G,e[33]=K):K=e[33];let q;e[34]===k?q=e[35]:(q=b(k),e[34]=k,e[35]=q);let J;e[36]===q?J=e[37]:(J=(0,v.jsx)(i,{commands:q}),e[36]=q,e[37]=J);let Y;e[38]===t?Y=e[39]:(Y=async()=>{await t({to:`/iam/list-groups`})},e[38]=t,e[39]=Y);let X;e[40]!==y.isPending||e[41]!==D||e[42]!==Y?(X=(0,v.jsx)(f,{isPending:y.isPending,isSubmitting:D,onCancel:Y,pendingLabel:`Creating...`,submitLabel:`Create Group`}),e[40]=y.isPending,e[41]=D,e[42]=Y,e[43]=X):X=e[43];let Z;e[44]!==V||e[45]!==K||e[46]!==J||e[47]!==X||e[48]!==F?(Z=(0,v.jsxs)(`form`,{className:`max-w-4xl space-y-6`,onSubmit:F,children:[V,K,J,X]}),e[44]=V,e[45]=K,e[46]=J,e[47]=X,e[48]=F,e[49]=Z):Z=e[49];let Q;return e[50]!==Z||e[51]!==P?(Q=(0,v.jsxs)(v.Fragment,{children:[M,N,P,Z]}),e[50]=Z,e[51]=P,e[52]=Q):Q=e[52],Q}function b(e){let t=e.groupName??``,n=e.path??``,r=[{type:`bin`,value:`AWS_PROFILE=spinifex aws iam create-group`},{type:`flag`,value:` --group-name`},{type:`value`,value:` ${t||`<GroupName>`}`}];return n&&n!==`/`&&r.push({type:`flag`,value:` --path`},{type:`value`,value:` ${n}`}),[{label:`Create Group`,parts:r}]}export{y as component};
|
||||
+1
-1
@@ -1 +1 @@
|
||||
import{n as e,t}from"./compiler-runtime-D_vZfn79.js";import{t as n}from"./useNavigate-CTe_-BZA.js";import{t as r}from"./back-link-wsXUoJ12.js";import{t as i}from"./cli-command-panel-4C78XA6W.js";import{t as a}from"./input-CBUMH1Jl.js";import{c as o}from"./iam-BhvTeEfR.js";import{t as s}from"./page-heading-vksh_67w.js";import{a as c,i as l,t as u}from"./zod-A4qtKH_p.js";import{t as d}from"./error-banner-DeOeVBKS.js";import{t as f}from"./form-actions-ECg9_Gdo.js";import{r as p,s as m,t as h}from"./field-BKQO3cRo.js";import{r as g}from"./iam-CADYUEJg.js";var _=t(),v=e();function y(){let e=(0,_.c)(53),t=n(),y=o(),x;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(x={resolver:u(g)},e[0]=x):x=e[0];let{handleSubmit:S,register:C,control:w,formState:T}=l(x),{errors:E,isSubmitting:D}=T,O;e[1]===w?O=e[2]:(O={control:w},e[1]=w,e[2]=O);let k=c(O),A;e[3]!==y||e[4]!==t?(A=async e=>{await y.mutateAsync(e),t({to:`/iam/list-instance-profiles`})},e[3]=y,e[4]=t,e[5]=A):A=e[5];let j=A,M,N;e[6]===Symbol.for(`react.memo_cache_sentinel`)?(M=(0,v.jsx)(r,{to:`/iam/list-instance-profiles`,children:`Back to instance profiles`}),N=(0,v.jsx)(s,{title:`Create Instance Profile`}),e[6]=M,e[7]=N):(M=e[6],N=e[7]);let P;e[8]===y.error?P=e[9]:(P=y.error&&(0,v.jsx)(d,{error:y.error,msg:`Failed to create instance profile`}),e[8]=y.error,e[9]=P);let F;e[10]!==S||e[11]!==j?(F=S(j),e[10]=S,e[11]=j,e[12]=F):F=e[12];let I;e[13]===Symbol.for(`react.memo_cache_sentinel`)?(I=(0,v.jsx)(m,{children:(0,v.jsx)(`label`,{htmlFor:`instanceProfileName`,children:`Instance Profile Name`})}),e[13]=I):I=e[13];let L=!!E.instanceProfileName,R;e[14]===C?R=e[15]:(R=C(`instanceProfileName`),e[14]=C,e[15]=R);let z;e[16]!==R||e[17]!==L?(z=(0,v.jsx)(a,{"aria-invalid":L,id:`instanceProfileName`,placeholder:`my-instance-profile...`,...R}),e[16]=R,e[17]=L,e[18]=z):z=e[18];let B;e[19]===E.instanceProfileName?B=e[20]:(B=(0,v.jsx)(p,{errors:[E.instanceProfileName]}),e[19]=E.instanceProfileName,e[20]=B);let V;e[21]!==z||e[22]!==B?(V=(0,v.jsxs)(h,{children:[I,z,B]}),e[21]=z,e[22]=B,e[23]=V):V=e[23];let H;e[24]===Symbol.for(`react.memo_cache_sentinel`)?(H=(0,v.jsx)(m,{children:(0,v.jsx)(`label`,{htmlFor:`path`,children:`Path (optional)`})}),e[24]=H):H=e[24];let U;e[25]===C?U=e[26]:(U=C(`path`),e[25]=C,e[26]=U);let W;e[27]===U?W=e[28]:(W=(0,v.jsx)(a,{id:`path`,placeholder:`/`,...U}),e[27]=U,e[28]=W);let G;e[29]===E.path?G=e[30]:(G=(0,v.jsx)(p,{errors:[E.path]}),e[29]=E.path,e[30]=G);let K;e[31]!==W||e[32]!==G?(K=(0,v.jsxs)(h,{children:[H,W,G]}),e[31]=W,e[32]=G,e[33]=K):K=e[33];let q;e[34]===k?q=e[35]:(q=b(k),e[34]=k,e[35]=q);let J;e[36]===q?J=e[37]:(J=(0,v.jsx)(i,{commands:q}),e[36]=q,e[37]=J);let Y;e[38]===t?Y=e[39]:(Y=async()=>{await t({to:`/iam/list-instance-profiles`})},e[38]=t,e[39]=Y);let X;e[40]!==y.isPending||e[41]!==D||e[42]!==Y?(X=(0,v.jsx)(f,{isPending:y.isPending,isSubmitting:D,onCancel:Y,pendingLabel:`Creating...`,submitLabel:`Create Instance Profile`}),e[40]=y.isPending,e[41]=D,e[42]=Y,e[43]=X):X=e[43];let Z;e[44]!==V||e[45]!==K||e[46]!==J||e[47]!==X||e[48]!==F?(Z=(0,v.jsxs)(`form`,{className:`max-w-4xl space-y-6`,onSubmit:F,children:[V,K,J,X]}),e[44]=V,e[45]=K,e[46]=J,e[47]=X,e[48]=F,e[49]=Z):Z=e[49];let Q;return e[50]!==Z||e[51]!==P?(Q=(0,v.jsxs)(v.Fragment,{children:[M,N,P,Z]}),e[50]=Z,e[51]=P,e[52]=Q):Q=e[52],Q}function b(e){let t=e.instanceProfileName??``,n=e.path??``,r=[{type:`bin`,value:`AWS_PROFILE=spinifex aws iam create-instance-profile`},{type:`flag`,value:` --instance-profile-name`},{type:`value`,value:` ${t||`<InstanceProfileName>`}`}];return n&&n!==`/`&&r.push({type:`flag`,value:` --path`},{type:`value`,value:` ${n}`}),[{label:`Create Instance Profile`,parts:r}]}export{y as component};
|
||||
import{n as e,t}from"./compiler-runtime-D_vZfn79.js";import{t as n}from"./useNavigate-CTe_-BZA.js";import{t as r}from"./back-link-wsXUoJ12.js";import{t as i}from"./cli-command-panel-4C78XA6W.js";import{t as a}from"./input-CBUMH1Jl.js";import{c as o}from"./iam-DtFzCnrP.js";import{t as s}from"./page-heading-vksh_67w.js";import{a as c,i as l,t as u}from"./zod-A4qtKH_p.js";import{t as d}from"./error-banner-DeOeVBKS.js";import{t as f}from"./form-actions-ECg9_Gdo.js";import{r as p,s as m,t as h}from"./field-BKQO3cRo.js";import{r as g}from"./iam-CADYUEJg.js";var _=t(),v=e();function y(){let e=(0,_.c)(53),t=n(),y=o(),x;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(x={resolver:u(g)},e[0]=x):x=e[0];let{handleSubmit:S,register:C,control:w,formState:T}=l(x),{errors:E,isSubmitting:D}=T,O;e[1]===w?O=e[2]:(O={control:w},e[1]=w,e[2]=O);let k=c(O),A;e[3]!==y||e[4]!==t?(A=async e=>{await y.mutateAsync(e),t({to:`/iam/list-instance-profiles`})},e[3]=y,e[4]=t,e[5]=A):A=e[5];let j=A,M,N;e[6]===Symbol.for(`react.memo_cache_sentinel`)?(M=(0,v.jsx)(r,{to:`/iam/list-instance-profiles`,children:`Back to instance profiles`}),N=(0,v.jsx)(s,{title:`Create Instance Profile`}),e[6]=M,e[7]=N):(M=e[6],N=e[7]);let P;e[8]===y.error?P=e[9]:(P=y.error&&(0,v.jsx)(d,{error:y.error,msg:`Failed to create instance profile`}),e[8]=y.error,e[9]=P);let F;e[10]!==S||e[11]!==j?(F=S(j),e[10]=S,e[11]=j,e[12]=F):F=e[12];let I;e[13]===Symbol.for(`react.memo_cache_sentinel`)?(I=(0,v.jsx)(m,{children:(0,v.jsx)(`label`,{htmlFor:`instanceProfileName`,children:`Instance Profile Name`})}),e[13]=I):I=e[13];let L=!!E.instanceProfileName,R;e[14]===C?R=e[15]:(R=C(`instanceProfileName`),e[14]=C,e[15]=R);let z;e[16]!==R||e[17]!==L?(z=(0,v.jsx)(a,{"aria-invalid":L,id:`instanceProfileName`,placeholder:`my-instance-profile...`,...R}),e[16]=R,e[17]=L,e[18]=z):z=e[18];let B;e[19]===E.instanceProfileName?B=e[20]:(B=(0,v.jsx)(p,{errors:[E.instanceProfileName]}),e[19]=E.instanceProfileName,e[20]=B);let V;e[21]!==z||e[22]!==B?(V=(0,v.jsxs)(h,{children:[I,z,B]}),e[21]=z,e[22]=B,e[23]=V):V=e[23];let H;e[24]===Symbol.for(`react.memo_cache_sentinel`)?(H=(0,v.jsx)(m,{children:(0,v.jsx)(`label`,{htmlFor:`path`,children:`Path (optional)`})}),e[24]=H):H=e[24];let U;e[25]===C?U=e[26]:(U=C(`path`),e[25]=C,e[26]=U);let W;e[27]===U?W=e[28]:(W=(0,v.jsx)(a,{id:`path`,placeholder:`/`,...U}),e[27]=U,e[28]=W);let G;e[29]===E.path?G=e[30]:(G=(0,v.jsx)(p,{errors:[E.path]}),e[29]=E.path,e[30]=G);let K;e[31]!==W||e[32]!==G?(K=(0,v.jsxs)(h,{children:[H,W,G]}),e[31]=W,e[32]=G,e[33]=K):K=e[33];let q;e[34]===k?q=e[35]:(q=b(k),e[34]=k,e[35]=q);let J;e[36]===q?J=e[37]:(J=(0,v.jsx)(i,{commands:q}),e[36]=q,e[37]=J);let Y;e[38]===t?Y=e[39]:(Y=async()=>{await t({to:`/iam/list-instance-profiles`})},e[38]=t,e[39]=Y);let X;e[40]!==y.isPending||e[41]!==D||e[42]!==Y?(X=(0,v.jsx)(f,{isPending:y.isPending,isSubmitting:D,onCancel:Y,pendingLabel:`Creating...`,submitLabel:`Create Instance Profile`}),e[40]=y.isPending,e[41]=D,e[42]=Y,e[43]=X):X=e[43];let Z;e[44]!==V||e[45]!==K||e[46]!==J||e[47]!==X||e[48]!==F?(Z=(0,v.jsxs)(`form`,{className:`max-w-4xl space-y-6`,onSubmit:F,children:[V,K,J,X]}),e[44]=V,e[45]=K,e[46]=J,e[47]=X,e[48]=F,e[49]=Z):Z=e[49];let Q;return e[50]!==Z||e[51]!==P?(Q=(0,v.jsxs)(v.Fragment,{children:[M,N,P,Z]}),e[50]=Z,e[51]=P,e[52]=Q):Q=e[52],Q}function b(e){let t=e.instanceProfileName??``,n=e.path??``,r=[{type:`bin`,value:`AWS_PROFILE=spinifex aws iam create-instance-profile`},{type:`flag`,value:` --instance-profile-name`},{type:`value`,value:` ${t||`<InstanceProfileName>`}`}];return n&&n!==`/`&&r.push({type:`flag`,value:` --path`},{type:`value`,value:` ${n}`}),[{label:`Create Instance Profile`,parts:r}]}export{y as component};
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
import{n as e,t}from"./compiler-runtime-D_vZfn79.js";import{t as n}from"./useNavigate-CTe_-BZA.js";import{t as r}from"./back-link-wsXUoJ12.js";import{t as i}from"./cli-command-panel-4C78XA6W.js";import{t as a}from"./input-CBUMH1Jl.js";import{l as ee}from"./iam-BhvTeEfR.js";import{t as o}from"./page-heading-vksh_67w.js";import{a as s,i as c,n as l,t as te}from"./zod-A4qtKH_p.js";import{t as ne}from"./error-banner-DeOeVBKS.js";import{t as re}from"./form-actions-ECg9_Gdo.js";import{r as u,s as d,t as f}from"./field-BKQO3cRo.js";import{t as ie}from"./json-editor-C0uKwIA1.js";import{i as ae}from"./iam-CADYUEJg.js";var p=t(),m=e(),h=JSON.stringify({Version:`2012-10-17`,Statement:[{Effect:`Allow`,Action:`*`,Resource:`*`}]},null,2);function g(){let e=(0,p.c)(65),t=n(),g=ee(),v;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(v={resolver:te(ae),defaultValues:{policyDocument:h}},e[0]=v):v=e[0];let{handleSubmit:y,register:b,control:x,formState:oe}=c(v),{errors:S,isSubmitting:C}=oe,w;e[1]===x?w=e[2]:(w={control:x},e[1]=x,e[2]=w);let T=s(w),E;e[3]!==g||e[4]!==t?(E=async e=>{await g.mutateAsync(e),t({to:`/iam/list-policies`})},e[3]=g,e[4]=t,e[5]=E):E=e[5];let D=E,O,k;e[6]===Symbol.for(`react.memo_cache_sentinel`)?(O=(0,m.jsx)(r,{to:`/iam/list-policies`,children:`Back to policies`}),k=(0,m.jsx)(o,{title:`Create Policy`}),e[6]=O,e[7]=k):(O=e[6],k=e[7]);let A;e[8]===g.error?A=e[9]:(A=g.error&&(0,m.jsx)(ne,{error:g.error,msg:`Failed to create policy`}),e[8]=g.error,e[9]=A);let j;e[10]!==y||e[11]!==D?(j=y(D),e[10]=y,e[11]=D,e[12]=j):j=e[12];let M;e[13]===Symbol.for(`react.memo_cache_sentinel`)?(M=(0,m.jsx)(d,{children:(0,m.jsx)(`label`,{htmlFor:`policyName`,children:`Policy Name`})}),e[13]=M):M=e[13];let N=!!S.policyName,P;e[14]===b?P=e[15]:(P=b(`policyName`),e[14]=b,e[15]=P);let F;e[16]!==P||e[17]!==N?(F=(0,m.jsx)(a,{"aria-invalid":N,id:`policyName`,placeholder:`my-policy...`,...P}),e[16]=P,e[17]=N,e[18]=F):F=e[18];let I;e[19]===S.policyName?I=e[20]:(I=(0,m.jsx)(u,{errors:[S.policyName]}),e[19]=S.policyName,e[20]=I);let L;e[21]!==F||e[22]!==I?(L=(0,m.jsxs)(f,{children:[M,F,I]}),e[21]=F,e[22]=I,e[23]=L):L=e[23];let R;e[24]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,m.jsx)(d,{children:(0,m.jsx)(`label`,{htmlFor:`description`,children:`Description (optional)`})}),e[24]=R):R=e[24];let z;e[25]===b?z=e[26]:(z=b(`description`),e[25]=b,e[26]=z);let B;e[27]===z?B=e[28]:(B=(0,m.jsx)(a,{id:`description`,placeholder:`A brief description of this policy...`,...z}),e[27]=z,e[28]=B);let V;e[29]===S.description?V=e[30]:(V=(0,m.jsx)(u,{errors:[S.description]}),e[29]=S.description,e[30]=V);let H;e[31]!==B||e[32]!==V?(H=(0,m.jsxs)(f,{children:[R,B,V]}),e[31]=B,e[32]=V,e[33]=H):H=e[33];let U;e[34]===Symbol.for(`react.memo_cache_sentinel`)?(U=(0,m.jsx)(d,{children:(0,m.jsx)(`label`,{htmlFor:`policyDocument`,children:`Policy Document (JSON)`})}),e[34]=U):U=e[34];let W;e[35]===S.policyDocument?W=e[36]:(W=e=>{let{field:t}=e,{onBlur:n,onChange:r,ref:i,value:a}=t;return(0,m.jsx)(ie,{error:!!S.policyDocument,id:`policyDocument`,onBlur:n,onChange:r,ref:i,rows:15,value:a})},e[35]=S.policyDocument,e[36]=W);let G;e[37]!==x||e[38]!==W?(G=(0,m.jsx)(l,{control:x,name:`policyDocument`,render:W}),e[37]=x,e[38]=W,e[39]=G):G=e[39];let K;e[40]===S.policyDocument?K=e[41]:(K=(0,m.jsx)(u,{errors:[S.policyDocument]}),e[40]=S.policyDocument,e[41]=K);let q;e[42]!==G||e[43]!==K?(q=(0,m.jsxs)(f,{children:[U,G,K]}),e[42]=G,e[43]=K,e[44]=q):q=e[44];let J;e[45]===T?J=e[46]:(J=_(T),e[45]=T,e[46]=J);let Y;e[47]===J?Y=e[48]:(Y=(0,m.jsx)(i,{commands:J}),e[47]=J,e[48]=Y);let X;e[49]===t?X=e[50]:(X=async()=>{await t({to:`/iam/list-policies`})},e[49]=t,e[50]=X);let Z;e[51]!==g.isPending||e[52]!==C||e[53]!==X?(Z=(0,m.jsx)(re,{isPending:g.isPending,isSubmitting:C,onCancel:X,pendingLabel:`Creating...`,submitLabel:`Create Policy`}),e[51]=g.isPending,e[52]=C,e[53]=X,e[54]=Z):Z=e[54];let Q;e[55]!==L||e[56]!==H||e[57]!==q||e[58]!==Y||e[59]!==Z||e[60]!==j?(Q=(0,m.jsxs)(`form`,{className:`max-w-4xl space-y-6`,onSubmit:j,children:[L,H,q,Y,Z]}),e[55]=L,e[56]=H,e[57]=q,e[58]=Y,e[59]=Z,e[60]=j,e[61]=Q):Q=e[61];let $;return e[62]!==Q||e[63]!==A?($=(0,m.jsxs)(m.Fragment,{children:[O,k,A,Q]}),e[62]=Q,e[63]=A,e[64]=$):$=e[64],$}function _(e){let t=e.policyName??``,n=e.description??``,r=e.policyDocument??``,i=[{type:`bin`,value:`AWS_PROFILE=spinifex aws iam create-policy`},{type:`flag`,value:` \\
|
||||
import{n as e,t}from"./compiler-runtime-D_vZfn79.js";import{t as n}from"./useNavigate-CTe_-BZA.js";import{t as r}from"./back-link-wsXUoJ12.js";import{t as i}from"./cli-command-panel-4C78XA6W.js";import{t as a}from"./input-CBUMH1Jl.js";import{l as ee}from"./iam-DtFzCnrP.js";import{t as o}from"./page-heading-vksh_67w.js";import{a as s,i as c,n as l,t as te}from"./zod-A4qtKH_p.js";import{t as ne}from"./error-banner-DeOeVBKS.js";import{t as re}from"./form-actions-ECg9_Gdo.js";import{r as u,s as d,t as f}from"./field-BKQO3cRo.js";import{t as ie}from"./json-editor-C0uKwIA1.js";import{i as ae}from"./iam-CADYUEJg.js";var p=t(),m=e(),h=JSON.stringify({Version:`2012-10-17`,Statement:[{Effect:`Allow`,Action:`*`,Resource:`*`}]},null,2);function g(){let e=(0,p.c)(65),t=n(),g=ee(),v;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(v={resolver:te(ae),defaultValues:{policyDocument:h}},e[0]=v):v=e[0];let{handleSubmit:y,register:b,control:x,formState:oe}=c(v),{errors:S,isSubmitting:C}=oe,w;e[1]===x?w=e[2]:(w={control:x},e[1]=x,e[2]=w);let T=s(w),E;e[3]!==g||e[4]!==t?(E=async e=>{await g.mutateAsync(e),t({to:`/iam/list-policies`})},e[3]=g,e[4]=t,e[5]=E):E=e[5];let D=E,O,k;e[6]===Symbol.for(`react.memo_cache_sentinel`)?(O=(0,m.jsx)(r,{to:`/iam/list-policies`,children:`Back to policies`}),k=(0,m.jsx)(o,{title:`Create Policy`}),e[6]=O,e[7]=k):(O=e[6],k=e[7]);let A;e[8]===g.error?A=e[9]:(A=g.error&&(0,m.jsx)(ne,{error:g.error,msg:`Failed to create policy`}),e[8]=g.error,e[9]=A);let j;e[10]!==y||e[11]!==D?(j=y(D),e[10]=y,e[11]=D,e[12]=j):j=e[12];let M;e[13]===Symbol.for(`react.memo_cache_sentinel`)?(M=(0,m.jsx)(d,{children:(0,m.jsx)(`label`,{htmlFor:`policyName`,children:`Policy Name`})}),e[13]=M):M=e[13];let N=!!S.policyName,P;e[14]===b?P=e[15]:(P=b(`policyName`),e[14]=b,e[15]=P);let F;e[16]!==P||e[17]!==N?(F=(0,m.jsx)(a,{"aria-invalid":N,id:`policyName`,placeholder:`my-policy...`,...P}),e[16]=P,e[17]=N,e[18]=F):F=e[18];let I;e[19]===S.policyName?I=e[20]:(I=(0,m.jsx)(u,{errors:[S.policyName]}),e[19]=S.policyName,e[20]=I);let L;e[21]!==F||e[22]!==I?(L=(0,m.jsxs)(f,{children:[M,F,I]}),e[21]=F,e[22]=I,e[23]=L):L=e[23];let R;e[24]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,m.jsx)(d,{children:(0,m.jsx)(`label`,{htmlFor:`description`,children:`Description (optional)`})}),e[24]=R):R=e[24];let z;e[25]===b?z=e[26]:(z=b(`description`),e[25]=b,e[26]=z);let B;e[27]===z?B=e[28]:(B=(0,m.jsx)(a,{id:`description`,placeholder:`A brief description of this policy...`,...z}),e[27]=z,e[28]=B);let V;e[29]===S.description?V=e[30]:(V=(0,m.jsx)(u,{errors:[S.description]}),e[29]=S.description,e[30]=V);let H;e[31]!==B||e[32]!==V?(H=(0,m.jsxs)(f,{children:[R,B,V]}),e[31]=B,e[32]=V,e[33]=H):H=e[33];let U;e[34]===Symbol.for(`react.memo_cache_sentinel`)?(U=(0,m.jsx)(d,{children:(0,m.jsx)(`label`,{htmlFor:`policyDocument`,children:`Policy Document (JSON)`})}),e[34]=U):U=e[34];let W;e[35]===S.policyDocument?W=e[36]:(W=e=>{let{field:t}=e,{onBlur:n,onChange:r,ref:i,value:a}=t;return(0,m.jsx)(ie,{error:!!S.policyDocument,id:`policyDocument`,onBlur:n,onChange:r,ref:i,rows:15,value:a})},e[35]=S.policyDocument,e[36]=W);let G;e[37]!==x||e[38]!==W?(G=(0,m.jsx)(l,{control:x,name:`policyDocument`,render:W}),e[37]=x,e[38]=W,e[39]=G):G=e[39];let K;e[40]===S.policyDocument?K=e[41]:(K=(0,m.jsx)(u,{errors:[S.policyDocument]}),e[40]=S.policyDocument,e[41]=K);let q;e[42]!==G||e[43]!==K?(q=(0,m.jsxs)(f,{children:[U,G,K]}),e[42]=G,e[43]=K,e[44]=q):q=e[44];let J;e[45]===T?J=e[46]:(J=_(T),e[45]=T,e[46]=J);let Y;e[47]===J?Y=e[48]:(Y=(0,m.jsx)(i,{commands:J}),e[47]=J,e[48]=Y);let X;e[49]===t?X=e[50]:(X=async()=>{await t({to:`/iam/list-policies`})},e[49]=t,e[50]=X);let Z;e[51]!==g.isPending||e[52]!==C||e[53]!==X?(Z=(0,m.jsx)(re,{isPending:g.isPending,isSubmitting:C,onCancel:X,pendingLabel:`Creating...`,submitLabel:`Create Policy`}),e[51]=g.isPending,e[52]=C,e[53]=X,e[54]=Z):Z=e[54];let Q;e[55]!==L||e[56]!==H||e[57]!==q||e[58]!==Y||e[59]!==Z||e[60]!==j?(Q=(0,m.jsxs)(`form`,{className:`max-w-4xl space-y-6`,onSubmit:j,children:[L,H,q,Y,Z]}),e[55]=L,e[56]=H,e[57]=q,e[58]=Y,e[59]=Z,e[60]=j,e[61]=Q):Q=e[61];let $;return e[62]!==Q||e[63]!==A?($=(0,m.jsxs)(m.Fragment,{children:[O,k,A,Q]}),e[62]=Q,e[63]=A,e[64]=$):$=e[64],$}function _(e){let t=e.policyName??``,n=e.description??``,r=e.policyDocument??``,i=[{type:`bin`,value:`AWS_PROFILE=spinifex aws iam create-policy`},{type:`flag`,value:` \\
|
||||
--policy-name`},{type:`value`,value:` ${t||`<PolicyName>`}`}];return n&&i.push({type:`flag`,value:` \\
|
||||
--description`},{type:`value`,value:` "${n}"`}),i.push({type:`flag`,value:` \\
|
||||
--policy-document`},{type:`value`,value:` '${r||`<PolicyDocument>`}'`}),[{label:`Create Policy`,parts:i}]}export{g as component};
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
import{n as e,t}from"./compiler-runtime-D_vZfn79.js";import{t as n}from"./useNavigate-CTe_-BZA.js";import{t as r}from"./back-link-wsXUoJ12.js";import{t as i}from"./cli-command-panel-4C78XA6W.js";import{t as a}from"./input-CBUMH1Jl.js";import{u as ee}from"./iam-BhvTeEfR.js";import{t as o}from"./page-heading-vksh_67w.js";import{a as s,i as c,n as l,t as te}from"./zod-A4qtKH_p.js";import{t as ne}from"./error-banner-DeOeVBKS.js";import{t as re}from"./form-actions-ECg9_Gdo.js";import{r as u,s as d,t as f}from"./field-BKQO3cRo.js";import{t as ie}from"./json-editor-C0uKwIA1.js";import{a as ae,t as p}from"./iam-CADYUEJg.js";var m=t(),h=e();function g(){let e=(0,m.c)(65),t=n(),g=ee(),v;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(v={resolver:te(ae),defaultValues:{assumeRolePolicyDocument:p}},e[0]=v):v=e[0];let{handleSubmit:y,register:b,control:x,formState:oe}=c(v),{errors:S,isSubmitting:C}=oe,w;e[1]===x?w=e[2]:(w={control:x},e[1]=x,e[2]=w);let T=s(w),E;e[3]!==g||e[4]!==t?(E=async e=>{await g.mutateAsync(e),t({to:`/iam/list-roles`})},e[3]=g,e[4]=t,e[5]=E):E=e[5];let D=E,O,k;e[6]===Symbol.for(`react.memo_cache_sentinel`)?(O=(0,h.jsx)(r,{to:`/iam/list-roles`,children:`Back to roles`}),k=(0,h.jsx)(o,{title:`Create Role`}),e[6]=O,e[7]=k):(O=e[6],k=e[7]);let A;e[8]===g.error?A=e[9]:(A=g.error&&(0,h.jsx)(ne,{error:g.error,msg:`Failed to create role`}),e[8]=g.error,e[9]=A);let j;e[10]!==y||e[11]!==D?(j=y(D),e[10]=y,e[11]=D,e[12]=j):j=e[12];let M;e[13]===Symbol.for(`react.memo_cache_sentinel`)?(M=(0,h.jsx)(d,{children:(0,h.jsx)(`label`,{htmlFor:`roleName`,children:`Role Name`})}),e[13]=M):M=e[13];let N=!!S.roleName,P;e[14]===b?P=e[15]:(P=b(`roleName`),e[14]=b,e[15]=P);let F;e[16]!==P||e[17]!==N?(F=(0,h.jsx)(a,{"aria-invalid":N,id:`roleName`,placeholder:`my-role...`,...P}),e[16]=P,e[17]=N,e[18]=F):F=e[18];let I;e[19]===S.roleName?I=e[20]:(I=(0,h.jsx)(u,{errors:[S.roleName]}),e[19]=S.roleName,e[20]=I);let L;e[21]!==F||e[22]!==I?(L=(0,h.jsxs)(f,{children:[M,F,I]}),e[21]=F,e[22]=I,e[23]=L):L=e[23];let R;e[24]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,h.jsx)(d,{children:(0,h.jsx)(`label`,{htmlFor:`description`,children:`Description (optional)`})}),e[24]=R):R=e[24];let z;e[25]===b?z=e[26]:(z=b(`description`),e[25]=b,e[26]=z);let B;e[27]===z?B=e[28]:(B=(0,h.jsx)(a,{id:`description`,placeholder:`A brief description of this role...`,...z}),e[27]=z,e[28]=B);let V;e[29]===S.description?V=e[30]:(V=(0,h.jsx)(u,{errors:[S.description]}),e[29]=S.description,e[30]=V);let H;e[31]!==B||e[32]!==V?(H=(0,h.jsxs)(f,{children:[R,B,V]}),e[31]=B,e[32]=V,e[33]=H):H=e[33];let U;e[34]===Symbol.for(`react.memo_cache_sentinel`)?(U=(0,h.jsx)(d,{children:(0,h.jsx)(`label`,{htmlFor:`assumeRolePolicyDocument`,children:`Trust Policy (JSON)`})}),e[34]=U):U=e[34];let W;e[35]===S.assumeRolePolicyDocument?W=e[36]:(W=e=>{let{field:t}=e,{onBlur:n,onChange:r,ref:i,value:a}=t;return(0,h.jsx)(ie,{error:!!S.assumeRolePolicyDocument,id:`assumeRolePolicyDocument`,onBlur:n,onChange:r,ref:i,rows:15,value:a})},e[35]=S.assumeRolePolicyDocument,e[36]=W);let G;e[37]!==x||e[38]!==W?(G=(0,h.jsx)(l,{control:x,name:`assumeRolePolicyDocument`,render:W}),e[37]=x,e[38]=W,e[39]=G):G=e[39];let K;e[40]===S.assumeRolePolicyDocument?K=e[41]:(K=(0,h.jsx)(u,{errors:[S.assumeRolePolicyDocument]}),e[40]=S.assumeRolePolicyDocument,e[41]=K);let q;e[42]!==G||e[43]!==K?(q=(0,h.jsxs)(f,{children:[U,G,K]}),e[42]=G,e[43]=K,e[44]=q):q=e[44];let J;e[45]===T?J=e[46]:(J=_(T),e[45]=T,e[46]=J);let Y;e[47]===J?Y=e[48]:(Y=(0,h.jsx)(i,{commands:J}),e[47]=J,e[48]=Y);let X;e[49]===t?X=e[50]:(X=async()=>{await t({to:`/iam/list-roles`})},e[49]=t,e[50]=X);let Z;e[51]!==g.isPending||e[52]!==C||e[53]!==X?(Z=(0,h.jsx)(re,{isPending:g.isPending,isSubmitting:C,onCancel:X,pendingLabel:`Creating...`,submitLabel:`Create Role`}),e[51]=g.isPending,e[52]=C,e[53]=X,e[54]=Z):Z=e[54];let Q;e[55]!==L||e[56]!==H||e[57]!==q||e[58]!==Y||e[59]!==Z||e[60]!==j?(Q=(0,h.jsxs)(`form`,{className:`max-w-4xl space-y-6`,onSubmit:j,children:[L,H,q,Y,Z]}),e[55]=L,e[56]=H,e[57]=q,e[58]=Y,e[59]=Z,e[60]=j,e[61]=Q):Q=e[61];let $;return e[62]!==Q||e[63]!==A?($=(0,h.jsxs)(h.Fragment,{children:[O,k,A,Q]}),e[62]=Q,e[63]=A,e[64]=$):$=e[64],$}function _(e){let t=e.roleName??``,n=e.description??``,r=e.assumeRolePolicyDocument??``,i=[{type:`bin`,value:`AWS_PROFILE=spinifex aws iam create-role`},{type:`flag`,value:` \\
|
||||
import{n as e,t}from"./compiler-runtime-D_vZfn79.js";import{t as n}from"./useNavigate-CTe_-BZA.js";import{t as r}from"./back-link-wsXUoJ12.js";import{t as i}from"./cli-command-panel-4C78XA6W.js";import{t as a}from"./input-CBUMH1Jl.js";import{u as ee}from"./iam-DtFzCnrP.js";import{t as o}from"./page-heading-vksh_67w.js";import{a as s,i as c,n as l,t as te}from"./zod-A4qtKH_p.js";import{t as ne}from"./error-banner-DeOeVBKS.js";import{t as re}from"./form-actions-ECg9_Gdo.js";import{r as u,s as d,t as f}from"./field-BKQO3cRo.js";import{t as ie}from"./json-editor-C0uKwIA1.js";import{a as ae,t as p}from"./iam-CADYUEJg.js";var m=t(),h=e();function g(){let e=(0,m.c)(65),t=n(),g=ee(),v;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(v={resolver:te(ae),defaultValues:{assumeRolePolicyDocument:p}},e[0]=v):v=e[0];let{handleSubmit:y,register:b,control:x,formState:oe}=c(v),{errors:S,isSubmitting:C}=oe,w;e[1]===x?w=e[2]:(w={control:x},e[1]=x,e[2]=w);let T=s(w),E;e[3]!==g||e[4]!==t?(E=async e=>{await g.mutateAsync(e),t({to:`/iam/list-roles`})},e[3]=g,e[4]=t,e[5]=E):E=e[5];let D=E,O,k;e[6]===Symbol.for(`react.memo_cache_sentinel`)?(O=(0,h.jsx)(r,{to:`/iam/list-roles`,children:`Back to roles`}),k=(0,h.jsx)(o,{title:`Create Role`}),e[6]=O,e[7]=k):(O=e[6],k=e[7]);let A;e[8]===g.error?A=e[9]:(A=g.error&&(0,h.jsx)(ne,{error:g.error,msg:`Failed to create role`}),e[8]=g.error,e[9]=A);let j;e[10]!==y||e[11]!==D?(j=y(D),e[10]=y,e[11]=D,e[12]=j):j=e[12];let M;e[13]===Symbol.for(`react.memo_cache_sentinel`)?(M=(0,h.jsx)(d,{children:(0,h.jsx)(`label`,{htmlFor:`roleName`,children:`Role Name`})}),e[13]=M):M=e[13];let N=!!S.roleName,P;e[14]===b?P=e[15]:(P=b(`roleName`),e[14]=b,e[15]=P);let F;e[16]!==P||e[17]!==N?(F=(0,h.jsx)(a,{"aria-invalid":N,id:`roleName`,placeholder:`my-role...`,...P}),e[16]=P,e[17]=N,e[18]=F):F=e[18];let I;e[19]===S.roleName?I=e[20]:(I=(0,h.jsx)(u,{errors:[S.roleName]}),e[19]=S.roleName,e[20]=I);let L;e[21]!==F||e[22]!==I?(L=(0,h.jsxs)(f,{children:[M,F,I]}),e[21]=F,e[22]=I,e[23]=L):L=e[23];let R;e[24]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,h.jsx)(d,{children:(0,h.jsx)(`label`,{htmlFor:`description`,children:`Description (optional)`})}),e[24]=R):R=e[24];let z;e[25]===b?z=e[26]:(z=b(`description`),e[25]=b,e[26]=z);let B;e[27]===z?B=e[28]:(B=(0,h.jsx)(a,{id:`description`,placeholder:`A brief description of this role...`,...z}),e[27]=z,e[28]=B);let V;e[29]===S.description?V=e[30]:(V=(0,h.jsx)(u,{errors:[S.description]}),e[29]=S.description,e[30]=V);let H;e[31]!==B||e[32]!==V?(H=(0,h.jsxs)(f,{children:[R,B,V]}),e[31]=B,e[32]=V,e[33]=H):H=e[33];let U;e[34]===Symbol.for(`react.memo_cache_sentinel`)?(U=(0,h.jsx)(d,{children:(0,h.jsx)(`label`,{htmlFor:`assumeRolePolicyDocument`,children:`Trust Policy (JSON)`})}),e[34]=U):U=e[34];let W;e[35]===S.assumeRolePolicyDocument?W=e[36]:(W=e=>{let{field:t}=e,{onBlur:n,onChange:r,ref:i,value:a}=t;return(0,h.jsx)(ie,{error:!!S.assumeRolePolicyDocument,id:`assumeRolePolicyDocument`,onBlur:n,onChange:r,ref:i,rows:15,value:a})},e[35]=S.assumeRolePolicyDocument,e[36]=W);let G;e[37]!==x||e[38]!==W?(G=(0,h.jsx)(l,{control:x,name:`assumeRolePolicyDocument`,render:W}),e[37]=x,e[38]=W,e[39]=G):G=e[39];let K;e[40]===S.assumeRolePolicyDocument?K=e[41]:(K=(0,h.jsx)(u,{errors:[S.assumeRolePolicyDocument]}),e[40]=S.assumeRolePolicyDocument,e[41]=K);let q;e[42]!==G||e[43]!==K?(q=(0,h.jsxs)(f,{children:[U,G,K]}),e[42]=G,e[43]=K,e[44]=q):q=e[44];let J;e[45]===T?J=e[46]:(J=_(T),e[45]=T,e[46]=J);let Y;e[47]===J?Y=e[48]:(Y=(0,h.jsx)(i,{commands:J}),e[47]=J,e[48]=Y);let X;e[49]===t?X=e[50]:(X=async()=>{await t({to:`/iam/list-roles`})},e[49]=t,e[50]=X);let Z;e[51]!==g.isPending||e[52]!==C||e[53]!==X?(Z=(0,h.jsx)(re,{isPending:g.isPending,isSubmitting:C,onCancel:X,pendingLabel:`Creating...`,submitLabel:`Create Role`}),e[51]=g.isPending,e[52]=C,e[53]=X,e[54]=Z):Z=e[54];let Q;e[55]!==L||e[56]!==H||e[57]!==q||e[58]!==Y||e[59]!==Z||e[60]!==j?(Q=(0,h.jsxs)(`form`,{className:`max-w-4xl space-y-6`,onSubmit:j,children:[L,H,q,Y,Z]}),e[55]=L,e[56]=H,e[57]=q,e[58]=Y,e[59]=Z,e[60]=j,e[61]=Q):Q=e[61];let $;return e[62]!==Q||e[63]!==A?($=(0,h.jsxs)(h.Fragment,{children:[O,k,A,Q]}),e[62]=Q,e[63]=A,e[64]=$):$=e[64],$}function _(e){let t=e.roleName??``,n=e.description??``,r=e.assumeRolePolicyDocument??``,i=[{type:`bin`,value:`AWS_PROFILE=spinifex aws iam create-role`},{type:`flag`,value:` \\
|
||||
--role-name`},{type:`value`,value:` ${t||`<RoleName>`}`}];return n&&i.push({type:`flag`,value:` \\
|
||||
--description`},{type:`value`,value:` "${n}"`}),i.push({type:`flag`,value:` \\
|
||||
--assume-role-policy-document`},{type:`value`,value:` '${r||`<TrustPolicy>`}'`}),[{label:`Create Role`,parts:i}]}export{g as component};
|
||||
+1
-1
@@ -1 +1 @@
|
||||
import{n as e,t}from"./compiler-runtime-D_vZfn79.js";import{t as n}from"./useNavigate-CTe_-BZA.js";import{t as r}from"./back-link-wsXUoJ12.js";import{t as i}from"./cli-command-panel-4C78XA6W.js";import{t as a}from"./input-CBUMH1Jl.js";import{d as o}from"./iam-BhvTeEfR.js";import{t as s}from"./page-heading-vksh_67w.js";import{a as c,i as l,t as u}from"./zod-A4qtKH_p.js";import{t as d}from"./error-banner-DeOeVBKS.js";import{t as f}from"./form-actions-ECg9_Gdo.js";import{r as p,s as m,t as h}from"./field-BKQO3cRo.js";import{o as g}from"./iam-CADYUEJg.js";var _=t(),v=e();function y(){let e=(0,_.c)(53),t=n(),y=o(),x;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(x={resolver:u(g)},e[0]=x):x=e[0];let{handleSubmit:S,register:C,control:w,formState:T}=l(x),{errors:E,isSubmitting:D}=T,O;e[1]===w?O=e[2]:(O={control:w},e[1]=w,e[2]=O);let k=c(O),A;e[3]!==y||e[4]!==t?(A=async e=>{await y.mutateAsync(e),t({to:`/iam/list-users`})},e[3]=y,e[4]=t,e[5]=A):A=e[5];let j=A,M,N;e[6]===Symbol.for(`react.memo_cache_sentinel`)?(M=(0,v.jsx)(r,{to:`/iam/list-users`,children:`Back to users`}),N=(0,v.jsx)(s,{title:`Create User`}),e[6]=M,e[7]=N):(M=e[6],N=e[7]);let P;e[8]===y.error?P=e[9]:(P=y.error&&(0,v.jsx)(d,{error:y.error,msg:`Failed to create user`}),e[8]=y.error,e[9]=P);let F;e[10]!==S||e[11]!==j?(F=S(j),e[10]=S,e[11]=j,e[12]=F):F=e[12];let I;e[13]===Symbol.for(`react.memo_cache_sentinel`)?(I=(0,v.jsx)(m,{children:(0,v.jsx)(`label`,{htmlFor:`userName`,children:`User Name`})}),e[13]=I):I=e[13];let L=!!E.userName,R;e[14]===C?R=e[15]:(R=C(`userName`),e[14]=C,e[15]=R);let z;e[16]!==R||e[17]!==L?(z=(0,v.jsx)(a,{"aria-invalid":L,id:`userName`,placeholder:`my-user...`,...R}),e[16]=R,e[17]=L,e[18]=z):z=e[18];let B;e[19]===E.userName?B=e[20]:(B=(0,v.jsx)(p,{errors:[E.userName]}),e[19]=E.userName,e[20]=B);let V;e[21]!==z||e[22]!==B?(V=(0,v.jsxs)(h,{children:[I,z,B]}),e[21]=z,e[22]=B,e[23]=V):V=e[23];let H;e[24]===Symbol.for(`react.memo_cache_sentinel`)?(H=(0,v.jsx)(m,{children:(0,v.jsx)(`label`,{htmlFor:`path`,children:`Path (optional)`})}),e[24]=H):H=e[24];let U;e[25]===C?U=e[26]:(U=C(`path`),e[25]=C,e[26]=U);let W;e[27]===U?W=e[28]:(W=(0,v.jsx)(a,{id:`path`,placeholder:`/`,...U}),e[27]=U,e[28]=W);let G;e[29]===E.path?G=e[30]:(G=(0,v.jsx)(p,{errors:[E.path]}),e[29]=E.path,e[30]=G);let K;e[31]!==W||e[32]!==G?(K=(0,v.jsxs)(h,{children:[H,W,G]}),e[31]=W,e[32]=G,e[33]=K):K=e[33];let q;e[34]===k?q=e[35]:(q=b(k),e[34]=k,e[35]=q);let J;e[36]===q?J=e[37]:(J=(0,v.jsx)(i,{commands:q}),e[36]=q,e[37]=J);let Y;e[38]===t?Y=e[39]:(Y=async()=>{await t({to:`/iam/list-users`})},e[38]=t,e[39]=Y);let X;e[40]!==y.isPending||e[41]!==D||e[42]!==Y?(X=(0,v.jsx)(f,{isPending:y.isPending,isSubmitting:D,onCancel:Y,pendingLabel:`Creating...`,submitLabel:`Create User`}),e[40]=y.isPending,e[41]=D,e[42]=Y,e[43]=X):X=e[43];let Z;e[44]!==V||e[45]!==K||e[46]!==J||e[47]!==X||e[48]!==F?(Z=(0,v.jsxs)(`form`,{className:`max-w-4xl space-y-6`,onSubmit:F,children:[V,K,J,X]}),e[44]=V,e[45]=K,e[46]=J,e[47]=X,e[48]=F,e[49]=Z):Z=e[49];let Q;return e[50]!==Z||e[51]!==P?(Q=(0,v.jsxs)(v.Fragment,{children:[M,N,P,Z]}),e[50]=Z,e[51]=P,e[52]=Q):Q=e[52],Q}function b(e){let t=e.userName??``,n=e.path??``,r=[{type:`bin`,value:`AWS_PROFILE=spinifex aws iam create-user`},{type:`flag`,value:` --user-name`},{type:`value`,value:` ${t||`<UserName>`}`}];return n&&n!==`/`&&r.push({type:`flag`,value:` --path`},{type:`value`,value:` ${n}`}),[{label:`Create User`,parts:r}]}export{y as component};
|
||||
import{n as e,t}from"./compiler-runtime-D_vZfn79.js";import{t as n}from"./useNavigate-CTe_-BZA.js";import{t as r}from"./back-link-wsXUoJ12.js";import{t as i}from"./cli-command-panel-4C78XA6W.js";import{t as a}from"./input-CBUMH1Jl.js";import{d as o}from"./iam-DtFzCnrP.js";import{t as s}from"./page-heading-vksh_67w.js";import{a as c,i as l,t as u}from"./zod-A4qtKH_p.js";import{t as d}from"./error-banner-DeOeVBKS.js";import{t as f}from"./form-actions-ECg9_Gdo.js";import{r as p,s as m,t as h}from"./field-BKQO3cRo.js";import{o as g}from"./iam-CADYUEJg.js";var _=t(),v=e();function y(){let e=(0,_.c)(53),t=n(),y=o(),x;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(x={resolver:u(g)},e[0]=x):x=e[0];let{handleSubmit:S,register:C,control:w,formState:T}=l(x),{errors:E,isSubmitting:D}=T,O;e[1]===w?O=e[2]:(O={control:w},e[1]=w,e[2]=O);let k=c(O),A;e[3]!==y||e[4]!==t?(A=async e=>{await y.mutateAsync(e),t({to:`/iam/list-users`})},e[3]=y,e[4]=t,e[5]=A):A=e[5];let j=A,M,N;e[6]===Symbol.for(`react.memo_cache_sentinel`)?(M=(0,v.jsx)(r,{to:`/iam/list-users`,children:`Back to users`}),N=(0,v.jsx)(s,{title:`Create User`}),e[6]=M,e[7]=N):(M=e[6],N=e[7]);let P;e[8]===y.error?P=e[9]:(P=y.error&&(0,v.jsx)(d,{error:y.error,msg:`Failed to create user`}),e[8]=y.error,e[9]=P);let F;e[10]!==S||e[11]!==j?(F=S(j),e[10]=S,e[11]=j,e[12]=F):F=e[12];let I;e[13]===Symbol.for(`react.memo_cache_sentinel`)?(I=(0,v.jsx)(m,{children:(0,v.jsx)(`label`,{htmlFor:`userName`,children:`User Name`})}),e[13]=I):I=e[13];let L=!!E.userName,R;e[14]===C?R=e[15]:(R=C(`userName`),e[14]=C,e[15]=R);let z;e[16]!==R||e[17]!==L?(z=(0,v.jsx)(a,{"aria-invalid":L,id:`userName`,placeholder:`my-user...`,...R}),e[16]=R,e[17]=L,e[18]=z):z=e[18];let B;e[19]===E.userName?B=e[20]:(B=(0,v.jsx)(p,{errors:[E.userName]}),e[19]=E.userName,e[20]=B);let V;e[21]!==z||e[22]!==B?(V=(0,v.jsxs)(h,{children:[I,z,B]}),e[21]=z,e[22]=B,e[23]=V):V=e[23];let H;e[24]===Symbol.for(`react.memo_cache_sentinel`)?(H=(0,v.jsx)(m,{children:(0,v.jsx)(`label`,{htmlFor:`path`,children:`Path (optional)`})}),e[24]=H):H=e[24];let U;e[25]===C?U=e[26]:(U=C(`path`),e[25]=C,e[26]=U);let W;e[27]===U?W=e[28]:(W=(0,v.jsx)(a,{id:`path`,placeholder:`/`,...U}),e[27]=U,e[28]=W);let G;e[29]===E.path?G=e[30]:(G=(0,v.jsx)(p,{errors:[E.path]}),e[29]=E.path,e[30]=G);let K;e[31]!==W||e[32]!==G?(K=(0,v.jsxs)(h,{children:[H,W,G]}),e[31]=W,e[32]=G,e[33]=K):K=e[33];let q;e[34]===k?q=e[35]:(q=b(k),e[34]=k,e[35]=q);let J;e[36]===q?J=e[37]:(J=(0,v.jsx)(i,{commands:q}),e[36]=q,e[37]=J);let Y;e[38]===t?Y=e[39]:(Y=async()=>{await t({to:`/iam/list-users`})},e[38]=t,e[39]=Y);let X;e[40]!==y.isPending||e[41]!==D||e[42]!==Y?(X=(0,v.jsx)(f,{isPending:y.isPending,isSubmitting:D,onCancel:Y,pendingLabel:`Creating...`,submitLabel:`Create User`}),e[40]=y.isPending,e[41]=D,e[42]=Y,e[43]=X):X=e[43];let Z;e[44]!==V||e[45]!==K||e[46]!==J||e[47]!==X||e[48]!==F?(Z=(0,v.jsxs)(`form`,{className:`max-w-4xl space-y-6`,onSubmit:F,children:[V,K,J,X]}),e[44]=V,e[45]=K,e[46]=J,e[47]=X,e[48]=F,e[49]=Z):Z=e[49];let Q;return e[50]!==Z||e[51]!==P?(Q=(0,v.jsxs)(v.Fragment,{children:[M,N,P,Z]}),e[50]=Z,e[51]=P,e[52]=Q):Q=e[52],Q}function b(e){let t=e.userName??``,n=e.path??``,r=[{type:`bin`,value:`AWS_PROFILE=spinifex aws iam create-user`},{type:`flag`,value:` --user-name`},{type:`value`,value:` ${t||`<UserName>`}`}];return n&&n!==`/`&&r.push({type:`flag`,value:` --path`},{type:`value`,value:` ${n}`}),[{label:`Create User`,parts:r}]}export{y as component};
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+3
-3
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
+6
-6
@@ -7,7 +7,7 @@
|
||||
<link rel="icon" href="/favicon.svg" type="image/svg+xml" />
|
||||
<meta name="theme-color" content="#000000" />
|
||||
<meta name="description" content="Spinifex Control Panel" />
|
||||
<script type="module" crossorigin src="/assets/index-D7KGTIfZ.js"></script>
|
||||
<script type="module" crossorigin src="/assets/index-BmcF1ID-.js"></script>
|
||||
<link rel="modulepreload" crossorigin href="/assets/compiler-runtime-D_vZfn79.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/removable-Dwr9otKB.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/query-BPr_oSEg.js">
|
||||
@@ -90,11 +90,11 @@
|
||||
<link rel="modulepreload" crossorigin href="/assets/_id-Dl1qhQTl.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/_id-DJwwmBFl.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/_clusterName-Dz3sFLA3.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/_groupName-BKOaZUJa.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/_instanceProfileName-FXtPzTwZ.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/_policyArn-1xb5b-UV.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/_roleName-CwOZwaUn.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/_userName-Dba8kyLA.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/_groupName-C4S4cVyl.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/_instanceProfileName-BpsvO6RI.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/_policyArn-CZ_-qqxj.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/_roleName-D14GhLGW.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/_userName-CSg21Ka8.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/_id-CvQ6rk4b.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/_name-S9yeYUIm.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/_id-bPyVIHrg.js">
|
||||
|
||||
@@ -746,6 +746,62 @@ describe("useRemoveRoleFromInstanceProfile", () => {
|
||||
})
|
||||
})
|
||||
|
||||
describe("instance profile membership changes", () => {
|
||||
const roleProfilesKey = ["iam", "instance-profiles-for-role", "app"]
|
||||
|
||||
function seedRoleProfiles() {
|
||||
createQueryClient()
|
||||
queryClient.setQueryData(roleProfilesKey, { InstanceProfiles: [] })
|
||||
}
|
||||
|
||||
function roleProfilesInvalidated() {
|
||||
return queryClient.getQueryCache().find({ queryKey: roleProfilesKey })
|
||||
?.state.isInvalidated
|
||||
}
|
||||
|
||||
it("refreshes the role page after adding a role", async () => {
|
||||
seedRoleProfiles()
|
||||
const { result } = renderHook(() => useAddRoleToInstanceProfile(), {
|
||||
wrapper,
|
||||
})
|
||||
|
||||
result.current.mutate({ instanceProfileName: "p", roleName: "app" })
|
||||
|
||||
await waitFor(() => {
|
||||
expect(result.current.isSuccess).toBeTruthy()
|
||||
})
|
||||
expect(roleProfilesInvalidated()).toBeTruthy()
|
||||
})
|
||||
|
||||
it("refreshes the role page after removing a role", async () => {
|
||||
seedRoleProfiles()
|
||||
const { result } = renderHook(() => useRemoveRoleFromInstanceProfile(), {
|
||||
wrapper,
|
||||
})
|
||||
|
||||
result.current.mutate({ instanceProfileName: "p", roleName: "app" })
|
||||
|
||||
await waitFor(() => {
|
||||
expect(result.current.isSuccess).toBeTruthy()
|
||||
})
|
||||
expect(roleProfilesInvalidated()).toBeTruthy()
|
||||
})
|
||||
|
||||
it("refreshes the role page after deleting a profile", async () => {
|
||||
seedRoleProfiles()
|
||||
const { result } = renderHook(() => useDeleteInstanceProfile(), {
|
||||
wrapper,
|
||||
})
|
||||
|
||||
result.current.mutate("p")
|
||||
|
||||
await waitFor(() => {
|
||||
expect(result.current.isSuccess).toBeTruthy()
|
||||
})
|
||||
expect(roleProfilesInvalidated()).toBeTruthy()
|
||||
})
|
||||
})
|
||||
|
||||
describe("useCreateGroup", () => {
|
||||
it("sends CreateGroupCommand with groupName", async () => {
|
||||
createQueryClient()
|
||||
|
||||
@@ -29,7 +29,11 @@ import {
|
||||
RemoveUserFromGroupCommand,
|
||||
UpdateAccessKeyCommand,
|
||||
} from "@aws-sdk/client-iam"
|
||||
import { useMutation, useQueryClient } from "@tanstack/react-query"
|
||||
import {
|
||||
type QueryClient,
|
||||
useMutation,
|
||||
useQueryClient,
|
||||
} from "@tanstack/react-query"
|
||||
|
||||
import { getIamClient } from "@/lib/awsClient"
|
||||
import type {
|
||||
@@ -361,6 +365,14 @@ export function useCreateInstanceProfile() {
|
||||
})
|
||||
}
|
||||
|
||||
// Profile membership changes also change what each role page lists.
|
||||
function invalidateInstanceProfiles(queryClient: QueryClient) {
|
||||
void queryClient.invalidateQueries({ queryKey: ["iam", "instance-profiles"] })
|
||||
void queryClient.invalidateQueries({
|
||||
queryKey: ["iam", "instance-profiles-for-role"],
|
||||
})
|
||||
}
|
||||
|
||||
export function useDeleteInstanceProfile() {
|
||||
const queryClient = useQueryClient()
|
||||
return useMutation({
|
||||
@@ -371,9 +383,7 @@ export function useDeleteInstanceProfile() {
|
||||
return await getIamClient().send(command)
|
||||
},
|
||||
onSuccess: () => {
|
||||
void queryClient.invalidateQueries({
|
||||
queryKey: ["iam", "instance-profiles"],
|
||||
})
|
||||
invalidateInstanceProfiles(queryClient)
|
||||
},
|
||||
})
|
||||
}
|
||||
@@ -392,9 +402,7 @@ export function useAddRoleToInstanceProfile() {
|
||||
return await getIamClient().send(command)
|
||||
},
|
||||
onSuccess: () => {
|
||||
void queryClient.invalidateQueries({
|
||||
queryKey: ["iam", "instance-profiles"],
|
||||
})
|
||||
invalidateInstanceProfiles(queryClient)
|
||||
},
|
||||
})
|
||||
}
|
||||
@@ -413,9 +421,7 @@ export function useRemoveRoleFromInstanceProfile() {
|
||||
return await getIamClient().send(command)
|
||||
},
|
||||
onSuccess: () => {
|
||||
void queryClient.invalidateQueries({
|
||||
queryKey: ["iam", "instance-profiles"],
|
||||
})
|
||||
invalidateInstanceProfiles(queryClient)
|
||||
},
|
||||
})
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user