8000 Added new graphql request (no backwards compatibility from here) by fspv · Pull Request #13 · fspv/python-leetcode · GitHub
[go: up one dir, main page]

Skip to content

Added new graphql request (no backwards compatibility from here) #13

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Oct 25, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions README.generated.md
Original file line number Diff line number Diff line change
Expand Up @@ -223,11 +223,16 @@ Class | Method | HTTP request | Description

## Documentation For Models

- [AnyOfGraphqlQueryVariables](docs/AnyOfGraphqlQueryVariables.md)
- [AnyOfGraphqlQuestionDetailSolution](docs/AnyOfGraphqlQuestionDetailSolution.md)
- [BaseSubmissionResult](docs/BaseSubmissionResult.md)
- [Difficulty](docs/Difficulty.md)
- [GraphqlData](docs/GraphqlData.md)
- [GraphqlProblemsetQuestionList](docs/GraphqlProblemsetQuestionList.md)
- [GraphqlQuery](docs/GraphqlQuery.md)
- [GraphqlQueryGetQuestionDetailVariables](docs/GraphqlQueryGetQuestionDetailVariables.md)
- [GraphqlQueryProblemsetQuestionListVariables](docs/GraphqlQueryProblemsetQuestionListVariables.md)
- [GraphqlQueryProblemsetQuestionListVariablesFilterInput](docs/GraphqlQueryProblemsetQuestionListVariablesFilterInput.md)
- [GraphqlQueryVariables](docs/GraphqlQueryVariables.md)
- [GraphqlQuestionCodeSnippet](docs/GraphqlQuestionCodeSnippet.md)
- [GraphqlQuestionContributor](docs/GraphqlQuestionContributor.md)
Expand Down
8 changes: 8 additions & 0 deletions docs/AnyOfGraphqlQueryVariables.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# AnyOfGraphqlQueryVariables

## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------

[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

1 change: 1 addition & 0 deletions docs/GraphqlData.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**question** | [**GraphqlQuestionDetail**](GraphqlQuestionDetail.md) | | [optional]
**user** | [**GraphqlUser**](GraphqlUser.md) | | [optional]
**problemset_question_list** | [**GraphqlProblemsetQuestionList**](GraphqlProblemsetQuestionList.md) | | [optional]

[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

10 changes: 10 additions & 0 deletions docs/GraphqlProblemsetQuestionList.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# GraphqlProblemsetQuestionList

## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**total** | **int** | | [optional]
**questions** | [**list[GraphqlQuestionDetail]**](GraphqlQuestionDetail.md) | | [optional]

[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

2 changes: 1 addition & 1 deletion docs/GraphqlQuery.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**query** | **str** | |
**variables** | [**GraphqlQueryVariables**](GraphqlQueryVariables.md) | |
**variables** | [**AnyOfGraphqlQueryVariables**](AnyOfGraphqlQueryVariables.md) | |
**operation_name** | **str** | | [optional]

[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
Expand Down
9 changes: 9 additions & 0 deletions docs/GraphqlQueryGetQuestionDetailVariables.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# GraphqlQueryGetQuestionDetailVariables

## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**title_slug** | **str** | | [optional]

[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

12 changes: 12 additions & 0 deletions docs/GraphqlQueryProblemsetQuestionListVariables.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# GraphqlQueryProblemsetQuestionListVariables

## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**category_slug** | **str** | | [optional]
**limit** | **int** | | [optional]
**skip** | **int** | | [optional]
**filters** | [**GraphqlQueryProblemsetQuestionListVariablesFilterInput**](GraphqlQueryProblemsetQuestionListVariablesFilterInput.md) | | [optional]

[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

13 changes: 13 additions & 0 deletions docs/GraphqlQueryProblemsetQuestionListVariablesFilterInput.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# GraphqlQueryProblemsetQuestionListVariablesFilterInput

## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**tags** | **list[str]** | | [optional]
**difficulty** | **str** | | [optional]
**status** | **str** | | [optional]
**list_id** | **str** | | [optional]
**premium_only** | **bool** | | [optional]

[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

1 change: 0 additions & 1 deletion docs/GraphqlQueryVariables.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**title_slug** | **str** | | [optional]

[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

6 changes: 4 additions & 2 deletions example.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
from __future__ import annotations

import os
import sys
from time import sleep
Expand All @@ -10,9 +12,9 @@

# NOTE: cookies var is just a dict with `csrftoken` and `LEETCODE_SESSION`
# fields which contain corresponding cookies from web browser
leetcode_session = os.environ["LEETCODE_SESSION_ID"]
leetcode_session: str = os.environ["LEETCODE_SESSION_ID"]

csrf_token = leetcode.auth.get_csrf_cookie(leetcode_session)
csrf_token: str = leetcode.auth.get_csrf_cookie(leetcode_session)

configuration.api_key["x-csrftoken"] = csrf_token
configuration.api_key["csrftoken"] = csrf_token
Expand Down
13 changes: 13 additions & 0 deletions leetcode/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,13 +22,26 @@
from leetcode.configuration import Configuration

# import models into sdk package
from leetcode.models.any_of_graphql_query_variables import AnyOfGraphqlQueryVariables
from leetcode.models.any_of_graphql_question_detail_solution import (
AnyOfGraphqlQuestionDetailSolution,
)
from leetcode.models.base_submission_result import BaseSubmissionResult
from leetcode.models.difficulty import Difficulty
from leetcode.models.graphql_data import GraphqlData
from leetcode.models.graphql_problemset_question_list import (
GraphqlProblemsetQuestionList,
)
from leetcode.models.graphql_query import GraphqlQuery
from leetcode.models.graphql_query_get_question_detail_variables import (
GraphqlQueryGetQuestionDetailVariables,
)
from leetcode.models.graphql_query_problemset_question_list_variables import (
GraphqlQueryProblemsetQuestionListVariables,
)
from leetcode.models.graphql_query_problemset_question_list_variables_filter_input import (
GraphqlQueryProblemsetQuestionListVariablesFilterInput,
)
from leetcode.models.graphql_query_variables import GraphqlQueryVariables
from leetcode.models.graphql_question_code_snippet import GraphqlQuestionCodeSnippet
from leetcode.models.graphql_question_contributor import GraphqlQuestionContributor
Expand Down
13 changes: 13 additions & 0 deletions leetcode/models/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,26 @@
from __future__ import absolute_import

# import models into model package
from leetcode.models.any_of_graphql_query_variables import AnyOfGraphqlQueryVariables
from leetcode.models.any_of_graphql_question_detail_solution import (
AnyOfGraphqlQuestionDetailSolution,
)
from leetcode.models.base_submission_result import BaseSubmissionResult
from leetcode.models.difficulty import Difficulty
from leetcode.models.graphql_data import GraphqlData
from leetcode.models.graphql_problemset_question_list import (
GraphqlProblemsetQuestionList,
)
from leetcode.models.graphql_query import GraphqlQuery
from leetcode.models.graphql_query_get_question_detail_variables import (
GraphqlQueryGetQuestionDetailVariables,
)
from leetcode.models.graphql_query_problemset_question_list_variables import (
GraphqlQueryProblemsetQuestionListVariables,
)
from leetcode.models.graphql_query_problemset_question_list_variables_filter_input import (
GraphqlQueryProblemsetQuestionListVariablesFilterInput,
)
from leetcode.models.graphql_query_variables import GraphqlQueryVariables
from leetcode.models.graphql_question_code_snippet import GraphqlQuestionCodeSnippet
from leetcode.models.graphql_question_contributor import GraphqlQuestionContributor
Expand Down
87 changes: 87 additions & 0 deletions leetcode/models/any_of_graphql_query_variables.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
# coding: utf-8

"""
Leetcode API

Leetcode API implementation. # noqa: E501

OpenAPI spec version: 1.0.1-1
Contact: pv.safronov@gmail.com
Generated by: https://github.com/swagger-api/swagger-codegen.git
"""
from __future__ import annotations

import pprint
import re # noqa: F401

import six


class AnyOfGraphqlQueryVariables(object):
"""NOTE: This class is auto generated by the swagger code generator program.

Do not edit the class manually.
"""

"""
Attributes:
swagger_types (dict): The key is attribute name
and the value is attribute type.
attribute_map (dict): The key is attribute name
and the value is json key in definition.
"""
swagger_types = {}

attribute_map = {}

def __init__(self) -> None: # noqa: E501
"""AnyOfGraphqlQueryVariables - a model defined in Swagger""" # noqa: E501
self.discriminator = None

def to_dict(self):
"""Returns the model properties as a dict"""
result = {}

for attr, _ in six.iteritems(self.swagger_types):
value = getattr(self, attr)
if isinstance(value, list):
result[attr] = list(
map(lambda x: x.to_dict() if hasattr(x, "to_dict") else x, value)
)
elif hasattr(value, "to_dict"):
result[attr] = value.to_dict()
elif isinstance(value, dict):
result[attr] = dict(
map(
lambda item: (item[0], item[1].to_dict())
if hasattr(item[1], "to_dict")
else item,
value.items(),
)
)
else:
result[attr] = value
if issubclass(AnyOfGraphqlQueryVariables, dict):
for key, value in self.items():
result[key] = value

return result

def to_str(self) -> str:
"""Returns the string representation of the model"""
return pprint.pformat(self.to_dict())

def __repr__(self) -> str:
"""For `print` and `pprint`"""
return self.to_str()

def __eq__(self, other: AnyOfGraphqlQueryVariables) -> bool:
"""Returns true if both objects are equal"""
if not isinstance(other, AnyOfGraphqlQueryVariables):
return False

return self.__dict__ == other.__dict__

def __ne__(self, other) -> bool:
"""Returns true if both objects are not equal"""
return not self == other
44 changes: 39 additions & 5 deletions leetcode/models/graphql_data.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,19 +30,32 @@ class GraphqlData(object):
attribute_map (dict): The key is attribute name
and the value is json key in definition.
"""
swagger_types = {"question": "GraphqlQuestionDetail", "user": "GraphqlUser"}

attribute_map = {"question": "question", "user": "user"}

def __init__(self, question=None, user=None) -> None: # noqa: E501
swagger_types = {
"question": "GraphqlQuestionDetail",
"user": "GraphqlUser",
"problemset_question_list": "GraphqlProblemsetQuestionList",
}

attribute_map = {
"question": "question",
"user": "user",
"problemset_question_list": "problemsetQuestionList",
}

def __init__(
self, question=None, user=None, problemset_question_list=None
) -> None: # noqa: E501
"""GraphqlData - a model defined in Swagger""" # noqa: E501
self._question = None
self._user = None
self._problemset_question_list = None
self.discriminator = None
if question is not None:
self.question = question
if user is not None:
self.user = user
if problemset_question_list is not None:
self.problemset_question_list = problemset_question_list

@property
def question(self):
Expand Down Expand Up @@ -86,6 +99,27 @@ def user(self, user):

self._user = user

@property
def problemset_question_list(self):
"""Gets the problemset_question_list of this GraphqlData. # noqa: E501


:return: The problemset_question_list of this GraphqlData. # noqa: E501
:rtype: GraphqlProblemsetQuestionList
"""
return self._problemset_question_list

@problemset_question_list.setter
def problemset_question_list(self, problemset_question_list):
"""Sets the problemset_question_list of this GraphqlData.


:param problemset_question_list: The problemset_question_list of this GraphqlData. # noqa: E501
:type: GraphqlProblemsetQuestionList
"""

self._problemset_question_list = problemset_question_list

def to_dict(self):
"""Returns the model properties as a dict"""
result = {}
Expand Down
Loading
0