2
0
Arthur 2 жил өмнө
parent
commit
6bb9d68f60

+ 8 - 2
netbox/ipam/graphql/types.py

@@ -1,4 +1,4 @@
-from typing import List
+from typing import TYPE_CHECKING, Annotated, List, Union
 
 import strawberry
 import strawberry_django
@@ -108,7 +108,13 @@ class FHRPGroupType(NetBoxObjectType):
 )
 class FHRPGroupAssignmentType(BaseObjectType):
     # interface = graphene.Field('ipam.graphql.gfk_mixins.FHRPGroupInterfaceType')
-    pass
+
+    @strawberry_django.field
+    def interface(self) -> Annotated[Union[
+        Annotated["InterfaceType", strawberry.lazy('dcim.graphql.types')],
+        Annotated["VMInterfaceType", strawberry.lazy('virtualization.graphql.types')],
+    ], strawberry.union("FHRPGroupInterfaceType")]:
+        return self.interface
 
 
 @strawberry_django.type(

+ 10 - 1
netbox/vpn/graphql/types.py

@@ -1,3 +1,5 @@
+from typing import Annotated, List
+
 import strawberry
 import strawberry_django
 
@@ -62,7 +64,14 @@ class IKEProposalType(OrganizationalObjectType):
     filters=IKEPolicyFilter
 )
 class IKEPolicyType(OrganizationalObjectType):
-    pass
+
+    @strawberry_django.field
+    def proposals(self) -> List[Annotated["IKEProposalType", strawberry.lazy('vpn.graphql.types')]]:
+        return self.proposals.all()
+
+    @strawberry_django.field
+    def ipsec_profiles(self) -> List[Annotated["IPSecProposalType", strawberry.lazy('vpn.graphql.types')]]:
+        return self.ipsec_profiles.all()
 
 
 @strawberry_django.type(