1
0
mirror of https://github.com/netbox-community/netbox.git synced 2024-05-10 07:54:54 +00:00

9856 update types

This commit is contained in:
Arthur
2024-02-26 11:04:29 -08:00
parent 82c08d9820
commit 0387cb0a48
6 changed files with 84 additions and 75 deletions

View File

@ -27,7 +27,22 @@ __all__ = (
filters=ProviderFilter
)
class ProviderType(NetBoxObjectType, ContactsMixin):
pass
@strawberry_django.field
def networks(self) -> List[Annotated["ProviderNetworkType", strawberry.lazy('circuits.graphql.types')]]:
return self.networks.all()
@strawberry_django.field
def circuits(self) -> List[Annotated["CircuitType", strawberry.lazy('circuits.graphql.types')]]:
return self.circuits.all()
@strawberry_django.field
def asns(self) -> List[Annotated["ASNType", strawberry.lazy('ipam.graphql.types')]]:
return self.asns.all()
@strawberry_django.field
def accounts(self) -> List[Annotated["ProviderAccountType", strawberry.lazy('circuits.graphql.types')]]:
return self.accounts.all()
@strawberry_django.type(
@ -36,7 +51,10 @@ class ProviderType(NetBoxObjectType, ContactsMixin):
filters=ProviderAccountFilter
)
class ProviderAccountType(NetBoxObjectType):
pass
@strawberry_django.field
def circuits(self) -> List[Annotated["CircuitType", strawberry.lazy('circuits.graphql.types')]]:
return self.circuits.all()
@strawberry_django.type(
@ -45,7 +63,10 @@ class ProviderAccountType(NetBoxObjectType):
filters=ProviderNetworkFilter
)
class ProviderNetworkType(NetBoxObjectType):
pass
@strawberry_django.field
def circuit_terminations(self) -> List[Annotated["CircuitTerminationType", strawberry.lazy('circuits.graphql.types')]]:
return self.circuit_terminations.all()
@strawberry_django.type(

View File

@ -150,9 +150,7 @@ class CableType(NetBoxObjectType):
filters=ConsolePortFilter
)
class ConsolePortType(ComponentObjectType, CabledObjectMixin, PathEndpointMixin):
def resolve_type(self, info):
return self.type or None
pass
@strawberry_django.type(
@ -163,9 +161,6 @@ class ConsolePortType(ComponentObjectType, CabledObjectMixin, PathEndpointMixin)
class ConsolePortTemplateType(ComponentTemplateObjectType):
_name: str
def resolve_type(self, info):
return self.type or None
@strawberry_django.type(
models.ConsoleServerPort,
@ -174,9 +169,7 @@ class ConsolePortTemplateType(ComponentTemplateObjectType):
filters=ConsoleServerPortFilter
)
class ConsoleServerPortType(ComponentObjectType, CabledObjectMixin, PathEndpointMixin):
def resolve_type(self, info):
return self.type or None
pass
@strawberry_django.type(
@ -187,9 +180,6 @@ class ConsoleServerPortType(ComponentObjectType, CabledObjectMixin, PathEndpoint
class ConsoleServerPortTemplateType(ComponentTemplateObjectType):
_name: str
def resolve_type(self, info):
return self.type or None
@strawberry_django.type(
models.Device,
@ -209,12 +199,6 @@ class DeviceType(ConfigContextMixin, ImageAttachmentsMixin, ContactsMixin, NetBo
module_bay_count: BigInt
inventory_item_count: BigInt
def resolve_face(self, info):
return self.face or None
def resolve_airflow(self, info):
return self.airflow or None
@strawberry_django.field
def devicebays(self) -> List[Annotated["DeviceBayType", strawberry.lazy('dcim.graphql.types')]]:
return self.device_bays.all()
@ -366,15 +350,6 @@ class DeviceTypeType(NetBoxObjectType):
module_bay_template_count: BigInt
inventory_item_template_count: BigInt
def resolve_subdevice_role(self, info):
return self.subdevice_role or None
def resolve_airflow(self, info):
return self.airflow or None
def resolve_weight_unit(self, info):
return self.weight_unit or None
@strawberry_django.field
def frontporttemplates(self) -> List[Annotated["FrontPortTemplateType", strawberry.lazy('dcim.graphql.types')]]:
return self.device_bays.all()
@ -730,12 +705,7 @@ class PowerFeedType(NetBoxObjectType, CabledObjectMixin, PathEndpointMixin):
filters=PowerOutletFilter
)
class PowerOutletType(ComponentObjectType, CabledObjectMixin, PathEndpointMixin):
def resolve_feed_leg(self, info):
return self.feed_leg or None
def resolve_type(self, info):
return self.type or None
pass
@strawberry_django.type(
@ -746,12 +716,6 @@ class PowerOutletType(ComponentObjectType, CabledObjectMixin, PathEndpointMixin)
class PowerOutletTemplateType(ComponentTemplateObjectType):
_name: str
def resolve_feed_leg(self, info):
return self.feed_leg or None
def resolve_type(self, info):
return self.type or None
@strawberry_django.type(
models.PowerPanel,
@ -772,8 +736,9 @@ class PowerPanelType(NetBoxObjectType, ContactsMixin):
)
class PowerPortType(ComponentObjectType, CabledObjectMixin, PathEndpointMixin):
def resolve_type(self, info):
return self.type or None
@strawberry_django.field
def poweroutlets(self) -> List[Annotated["PowerOutletType", strawberry.lazy('dcim.graphql.types')]]:
return self.poweroutlets.all()
@strawberry_django.type(
@ -784,8 +749,9 @@ class PowerPortType(ComponentObjectType, CabledObjectMixin, PathEndpointMixin):
class PowerPortTemplateType(ComponentTemplateObjectType):
_name: str
def resolve_type(self, info):
return self.type or None
@strawberry_django.field
def poweroutlet_templates(self) -> List[Annotated["PowerOutletTemplateType", strawberry.lazy('dcim.graphql.types')]]:
return self.poweroutlet_templates.all()
@strawberry_django.type(
@ -796,15 +762,6 @@ class PowerPortTemplateType(ComponentTemplateObjectType):
class RackType(VLANGroupsMixin, ImageAttachmentsMixin, ContactsMixin, NetBoxObjectType):
_name: str
def resolve_type(self, info):
return self.type or None
def resolve_outer_unit(self, info):
return self.outer_unit or None
def resolve_weight_unit(self, info):
return self.weight_unit or None
@strawberry_django.type(
models.RackReservation,
@ -813,7 +770,7 @@ class RackType(VLANGroupsMixin, ImageAttachmentsMixin, ContactsMixin, NetBoxObje
filters=RackReservationFilter
)
class RackReservationType(NetBoxObjectType):
pass
units: List[int]
@strawberry_django.type(
@ -823,7 +780,11 @@ class RackReservationType(NetBoxObjectType):
filters=RackRoleFilter
)
class RackRoleType(OrganizationalObjectType):
pass
color: str
@strawberry_django.field
def racks(self) -> List[Annotated["RackType", strawberry.lazy('dcim.graphql.types')]]:
return self.racks.all()
@strawberry_django.type(
@ -833,7 +794,11 @@ class RackRoleType(OrganizationalObjectType):
filters=RearPortFilter
)
class RearPortType(ComponentObjectType, CabledObjectMixin):
pass
color: str
@strawberry_django.field
def frontports(self) -> List[Annotated["FrontPortType", strawberry.lazy('dcim.graphql.types')]]:
return self.frontports.all()
@strawberry_django.type(
@ -844,6 +809,11 @@ class RearPortType(ComponentObjectType, CabledObjectMixin):
)
class RearPortTemplateType(ComponentTemplateObjectType):
_name: str
color: str
@strawberry_django.field
def frontport_templates(self) -> List[Annotated["FrontPortTemplateType", strawberry.lazy('dcim.graphql.types')]]:
return self.frontport_templates.all()
@strawberry_django.type(
@ -885,6 +855,10 @@ class SiteGroupType(VLANGroupsMixin, ContactsMixin, OrganizationalObjectType):
class VirtualChassisType(NetBoxObjectType):
member_count: BigInt
@strawberry_django.field
def members(self) -> List[Annotated["DeviceType", strawberry.lazy('dcim.graphql.types')]]:
return self.members.all()
@strawberry_django.type(
models.VirtualDeviceContext,
@ -892,4 +866,7 @@ class VirtualChassisType(NetBoxObjectType):
filters=VirtualDeviceContextFilter
)
class VirtualDeviceContextType(NetBoxObjectType):
pass
@strawberry_django.field
def interfaces(self) -> List[Annotated["InterfaceType", strawberry.lazy('dcim.graphql.types')]]:
return self.interfaces.all()

View File

@ -165,7 +165,7 @@ class IPRangeType(NetBoxObjectType):
filters=PrefixFilter
)
class PrefixType(NetBoxObjectType, BaseIPAddressFamilyType):
pass
prefix: str
@strawberry_django.type(
@ -202,7 +202,11 @@ class RouteTargetType(NetBoxObjectType):
filters=ServiceFilter
)
class ServiceType(NetBoxObjectType):
pass
ports: List[int]
@strawberry_django.field
def ipaddresses(self) -> List[Annotated["IPAddressType", strawberry.lazy('ipam.graphql.types')]]:
return self.ipaddresses.all()
@strawberry_django.type(
@ -212,7 +216,7 @@ class ServiceType(NetBoxObjectType):
filters=ServiceTemplateFilter
)
class ServiceTemplateType(NetBoxObjectType):
pass
ports: List[int]
@strawberry_django.type(

View File

@ -1,3 +1,5 @@
from typing import List
import strawberry
import strawberry_django
from django.contrib.auth import get_user_model
@ -36,3 +38,7 @@ class UserType:
@classmethod
def get_queryset(cls, queryset, info, **kwargs):
return RestrictedQuerySet(model=get_user_model()).restrict(info.context.request.user, 'view')
@strawberry_django.field
def groups(self) -> List[GroupType]:
return self.groups.all()

View File

@ -28,7 +28,10 @@ __all__ = (
filters=TunnelGroupFilter
)
class TunnelGroupType(OrganizationalObjectType):
pass
@strawberry_django.field
def tunnels(self) -> List[Annotated["TunnelType", strawberry.lazy('vpn.graphql.types')]]:
return self.tunnels.all()
@strawberry_django.type(
@ -46,7 +49,10 @@ class TunnelTerminationType(CustomFieldsMixin, TagsMixin, ObjectType):
filters=TunnelFilter
)
class TunnelType(NetBoxObjectType):
pass
@strawberry_django.field
def terminations(self) -> List[Annotated["TunnelTerminationType", strawberry.lazy('vpn.graphql.types')]]:
return self.terminations.all()
@strawberry_django.type(

View File

@ -1,3 +1,5 @@
from typing import Annotated, List, Union
import strawberry
import strawberry_django
@ -29,11 +31,9 @@ class WirelessLANGroupType(OrganizationalObjectType):
)
class WirelessLANType(NetBoxObjectType):
def resolve_auth_type(self, info):
return self.auth_type or None
def resolve_auth_cipher(self, info):
return self.auth_cipher or None
@strawberry_django.field
def interfaces(self) -> List[Annotated["InterfaceType", strawberry.lazy('dcim.graphql.types')]]:
return self.interfaces.all()
@strawberry_django.type(
@ -42,9 +42,4 @@ class WirelessLANType(NetBoxObjectType):
filters=WirelessLinkFilter
)
class WirelessLinkType(NetBoxObjectType):
def resolve_auth_type(self, info):
return self.auth_type or None
def resolve_auth_cipher(self, info):
return self.auth_cipher or None
pass