docs: def get_network_extents(network_id,**kwargs):
      """
      Given a network, return its maximum extents.
      This would be the minimum x value of all nodes,
      the minimum y value of all nodes,
      the maximum x value of all nodes and
      maximum y value of all nodes.
  
      @returns NetworkExtents object
      """
      rs = db.DBSession.query(Node.x, Node.y).filter(Node.network_id==network_id).all()
      if len(rs) == 0:
          return dict(
              network_id = network_id,
              min_x=None,
              max_x=None,
              min_y=None,
              max_y=None,
          )
  
      # Compute min/max extent of the network.
      x = [r.x for r in rs if r.x is not None]
      if len(x) > 0:
          x_min = min(x)
          x_max = max(x)
      else:
          # Default x extent if all None values
          x_min, x_max = 0, 1
  
      y = [r.y for r in rs if r.y is not None]
      if len(y) > 0:
          y_min = min(y)
          y_max = max(y)
      else:
          # Default y extent if all None values
          y_min, y_max = 0, 1
  
      ne = JSONObject(dict(
          network_id = network_id,
          min_x=x_min,
          max_x=x_max,
          min_y=y_min,
          max_y=y_max,
      ))
      return ne