refactor: add GraphQL annotation to queries for auto formatting in oxfmt v0.42
79a525cbd3
This commit is contained in:
parent
33996701af
commit
cef5c68b9c
|
|
@ -3,54 +3,51 @@ import { ViewType } from '@/types';
|
|||
|
||||
import { baseUrl, getData, getList, variables } from './utils.js';
|
||||
|
||||
const query = `
|
||||
query MostDiscussedFeed(
|
||||
$first: Int
|
||||
$supportedTypes: [String!] = ["article","share","freeform"]
|
||||
) {
|
||||
page: mostDiscussedFeed(first: $first, supportedTypes: $supportedTypes) {
|
||||
...FeedPostConnection
|
||||
const query = /* GraphQL */ `
|
||||
query MostDiscussedFeed($first: Int, $supportedTypes: [String!] = ["article", "share", "freeform"]) {
|
||||
page: mostDiscussedFeed(first: $first, supportedTypes: $supportedTypes) {
|
||||
...FeedPostConnection
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fragment FeedPostConnection on PostConnection {
|
||||
edges {
|
||||
node {
|
||||
...FeedPost
|
||||
contentHtml
|
||||
}
|
||||
fragment FeedPostConnection on PostConnection {
|
||||
edges {
|
||||
node {
|
||||
...FeedPost
|
||||
contentHtml
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fragment FeedPost on Post {
|
||||
...SharedPostInfo
|
||||
}
|
||||
|
||||
fragment SharedPostInfo on Post {
|
||||
id
|
||||
title
|
||||
image
|
||||
readTime
|
||||
permalink
|
||||
commentsPermalink
|
||||
summary
|
||||
createdAt
|
||||
numUpvotes
|
||||
numComments
|
||||
author {
|
||||
...UserShortInfo
|
||||
fragment FeedPost on Post {
|
||||
...SharedPostInfo
|
||||
}
|
||||
tags
|
||||
}
|
||||
|
||||
fragment UserShortInfo on User {
|
||||
id
|
||||
name
|
||||
image
|
||||
permalink
|
||||
username
|
||||
bio
|
||||
}
|
||||
fragment SharedPostInfo on Post {
|
||||
id
|
||||
title
|
||||
image
|
||||
readTime
|
||||
permalink
|
||||
commentsPermalink
|
||||
summary
|
||||
createdAt
|
||||
numUpvotes
|
||||
numComments
|
||||
author {
|
||||
...UserShortInfo
|
||||
}
|
||||
tags
|
||||
}
|
||||
|
||||
fragment UserShortInfo on User {
|
||||
id
|
||||
name
|
||||
image
|
||||
permalink
|
||||
username
|
||||
bio
|
||||
}
|
||||
`;
|
||||
|
||||
export const route: Route = {
|
||||
|
|
|
|||
|
|
@ -3,124 +3,110 @@ import { ViewType } from '@/types';
|
|||
|
||||
import { baseUrl, getData, getList, variables } from './utils.js';
|
||||
|
||||
const query = `
|
||||
query AnonymousFeed(
|
||||
$loggedIn: Boolean! = false
|
||||
$first: Int
|
||||
$after: String
|
||||
$ranking: Ranking
|
||||
$version: Int
|
||||
$supportedTypes: [String!] = ["article","share","freeform","video:youtube","collection"]
|
||||
) {
|
||||
page: anonymousFeed(
|
||||
first: $first
|
||||
after: $after
|
||||
ranking: $ranking
|
||||
version: $version
|
||||
supportedTypes: $supportedTypes
|
||||
) {
|
||||
...FeedPostConnection
|
||||
const query = /* GraphQL */ `
|
||||
query AnonymousFeed($loggedIn: Boolean! = false, $first: Int, $after: String, $ranking: Ranking, $version: Int, $supportedTypes: [String!] = ["article", "share", "freeform", "video:youtube", "collection"]) {
|
||||
page: anonymousFeed(first: $first, after: $after, ranking: $ranking, version: $version, supportedTypes: $supportedTypes) {
|
||||
...FeedPostConnection
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fragment FeedPostConnection on PostConnection {
|
||||
pageInfo {
|
||||
hasNextPage
|
||||
endCursor
|
||||
|
||||
fragment FeedPostConnection on PostConnection {
|
||||
pageInfo {
|
||||
hasNextPage
|
||||
endCursor
|
||||
}
|
||||
edges {
|
||||
node {
|
||||
...FeedPost
|
||||
contentHtml
|
||||
...UserPost @include(if: $loggedIn)
|
||||
}
|
||||
}
|
||||
}
|
||||
edges {
|
||||
node {
|
||||
...FeedPost
|
||||
contentHtml
|
||||
...UserPost @include(if: $loggedIn)
|
||||
}
|
||||
|
||||
fragment FeedPost on Post {
|
||||
...FeedPostInfo
|
||||
sharedPost {
|
||||
id
|
||||
title
|
||||
image
|
||||
readTime
|
||||
permalink
|
||||
commentsPermalink
|
||||
createdAt
|
||||
type
|
||||
tags
|
||||
source {
|
||||
id
|
||||
handle
|
||||
permalink
|
||||
image
|
||||
}
|
||||
slug
|
||||
clickbaitTitleDetected
|
||||
}
|
||||
trending
|
||||
feedMeta
|
||||
collectionSources {
|
||||
handle
|
||||
image
|
||||
}
|
||||
numCollectionSources
|
||||
updatedAt
|
||||
slug
|
||||
}
|
||||
}
|
||||
|
||||
fragment FeedPost on Post {
|
||||
...FeedPostInfo
|
||||
sharedPost {
|
||||
id
|
||||
title
|
||||
image
|
||||
readTime
|
||||
permalink
|
||||
commentsPermalink
|
||||
createdAt
|
||||
type
|
||||
tags
|
||||
source {
|
||||
|
||||
fragment FeedPostInfo on Post {
|
||||
id
|
||||
handle
|
||||
permalink
|
||||
title
|
||||
image
|
||||
}
|
||||
slug
|
||||
clickbaitTitleDetected
|
||||
readTime
|
||||
permalink
|
||||
commentsPermalink
|
||||
createdAt
|
||||
commented
|
||||
bookmarked
|
||||
views
|
||||
numUpvotes
|
||||
numComments
|
||||
summary
|
||||
bookmark {
|
||||
remindAt
|
||||
}
|
||||
author {
|
||||
id
|
||||
name
|
||||
image
|
||||
username
|
||||
permalink
|
||||
}
|
||||
type
|
||||
tags
|
||||
source {
|
||||
id
|
||||
handle
|
||||
name
|
||||
permalink
|
||||
image
|
||||
type
|
||||
}
|
||||
userState {
|
||||
vote
|
||||
flags {
|
||||
feedbackDismiss
|
||||
}
|
||||
}
|
||||
slug
|
||||
clickbaitTitleDetected
|
||||
}
|
||||
trending
|
||||
feedMeta
|
||||
collectionSources {
|
||||
handle
|
||||
image
|
||||
|
||||
fragment UserPost on Post {
|
||||
read
|
||||
upvoted
|
||||
commented
|
||||
bookmarked
|
||||
downvoted
|
||||
}
|
||||
numCollectionSources
|
||||
updatedAt
|
||||
slug
|
||||
}
|
||||
|
||||
|
||||
fragment FeedPostInfo on Post {
|
||||
id
|
||||
title
|
||||
image
|
||||
readTime
|
||||
permalink
|
||||
commentsPermalink
|
||||
createdAt
|
||||
commented
|
||||
bookmarked
|
||||
views
|
||||
numUpvotes
|
||||
numComments
|
||||
summary
|
||||
bookmark {
|
||||
remindAt
|
||||
}
|
||||
author {
|
||||
id
|
||||
name
|
||||
image
|
||||
username
|
||||
permalink
|
||||
}
|
||||
type
|
||||
tags
|
||||
source {
|
||||
id
|
||||
handle
|
||||
name
|
||||
permalink
|
||||
image
|
||||
type
|
||||
}
|
||||
userState {
|
||||
vote
|
||||
flags {
|
||||
feedbackDismiss
|
||||
}
|
||||
}
|
||||
slug
|
||||
clickbaitTitleDetected
|
||||
}
|
||||
|
||||
fragment UserPost on Post {
|
||||
read
|
||||
upvoted
|
||||
commented
|
||||
bookmarked
|
||||
downvoted
|
||||
}
|
||||
`;
|
||||
|
||||
export const route: Route = {
|
||||
|
|
|
|||
|
|
@ -15,115 +15,110 @@ interface Source {
|
|||
type: string;
|
||||
}
|
||||
|
||||
const sourceFeedQuery = `
|
||||
query SourceFeed($source: ID!, $loggedIn: Boolean! = false, $first: Int, $after: String, $ranking: Ranking, $supportedTypes: [String!]) {
|
||||
page: sourceFeed(
|
||||
source: $source
|
||||
first: $first
|
||||
after: $after
|
||||
ranking: $ranking
|
||||
supportedTypes: $supportedTypes
|
||||
) {
|
||||
...FeedPostConnection
|
||||
}
|
||||
}
|
||||
|
||||
fragment FeedPostConnection on PostConnection {
|
||||
pageInfo {
|
||||
hasNextPage
|
||||
endCursor
|
||||
}
|
||||
edges {
|
||||
node {
|
||||
...FeedPost
|
||||
pinnedAt
|
||||
contentHtml
|
||||
...UserPost @include(if: $loggedIn)
|
||||
const sourceFeedQuery = /* GraphQL */ `
|
||||
query SourceFeed($source: ID!, $loggedIn: Boolean! = false, $first: Int, $after: String, $ranking: Ranking, $supportedTypes: [String!]) {
|
||||
page: sourceFeed(source: $source, first: $first, after: $after, ranking: $ranking, supportedTypes: $supportedTypes) {
|
||||
...FeedPostConnection
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fragment FeedPost on Post {
|
||||
...FeedPostInfo
|
||||
sharedPost {
|
||||
id
|
||||
title
|
||||
image
|
||||
readTime
|
||||
permalink
|
||||
commentsPermalink
|
||||
createdAt
|
||||
type
|
||||
tags
|
||||
source {
|
||||
id
|
||||
handle
|
||||
permalink
|
||||
image
|
||||
fragment FeedPostConnection on PostConnection {
|
||||
pageInfo {
|
||||
hasNextPage
|
||||
endCursor
|
||||
}
|
||||
edges {
|
||||
node {
|
||||
...FeedPost
|
||||
pinnedAt
|
||||
contentHtml
|
||||
...UserPost @include(if: $loggedIn)
|
||||
}
|
||||
}
|
||||
}
|
||||
slug
|
||||
}
|
||||
trending
|
||||
feedMeta
|
||||
collectionSources {
|
||||
handle
|
||||
image
|
||||
}
|
||||
numCollectionSources
|
||||
updatedAt
|
||||
slug
|
||||
}
|
||||
|
||||
fragment FeedPostInfo on Post {
|
||||
id
|
||||
title
|
||||
image
|
||||
readTime
|
||||
permalink
|
||||
commentsPermalink
|
||||
createdAt
|
||||
commented
|
||||
bookmarked
|
||||
views
|
||||
numUpvotes
|
||||
numComments
|
||||
summary
|
||||
bookmark {
|
||||
remindAt
|
||||
}
|
||||
author {
|
||||
id
|
||||
name
|
||||
image
|
||||
username
|
||||
permalink
|
||||
}
|
||||
type
|
||||
tags
|
||||
source {
|
||||
id
|
||||
handle
|
||||
name
|
||||
permalink
|
||||
image
|
||||
type
|
||||
}
|
||||
userState {
|
||||
vote
|
||||
flags {
|
||||
feedbackDismiss
|
||||
fragment FeedPost on Post {
|
||||
...FeedPostInfo
|
||||
sharedPost {
|
||||
id
|
||||
title
|
||||
image
|
||||
readTime
|
||||
permalink
|
||||
commentsPermalink
|
||||
createdAt
|
||||
type
|
||||
tags
|
||||
source {
|
||||
id
|
||||
handle
|
||||
permalink
|
||||
image
|
||||
}
|
||||
slug
|
||||
}
|
||||
trending
|
||||
feedMeta
|
||||
collectionSources {
|
||||
handle
|
||||
image
|
||||
}
|
||||
numCollectionSources
|
||||
updatedAt
|
||||
slug
|
||||
}
|
||||
}
|
||||
slug
|
||||
}
|
||||
|
||||
fragment UserPost on Post {
|
||||
read
|
||||
upvoted
|
||||
commented
|
||||
bookmarked
|
||||
downvoted
|
||||
}`;
|
||||
fragment FeedPostInfo on Post {
|
||||
id
|
||||
title
|
||||
image
|
||||
readTime
|
||||
permalink
|
||||
commentsPermalink
|
||||
createdAt
|
||||
commented
|
||||
bookmarked
|
||||
views
|
||||
numUpvotes
|
||||
numComments
|
||||
summary
|
||||
bookmark {
|
||||
remindAt
|
||||
}
|
||||
author {
|
||||
id
|
||||
name
|
||||
image
|
||||
username
|
||||
permalink
|
||||
}
|
||||
type
|
||||
tags
|
||||
source {
|
||||
id
|
||||
handle
|
||||
name
|
||||
permalink
|
||||
image
|
||||
type
|
||||
}
|
||||
userState {
|
||||
vote
|
||||
flags {
|
||||
feedbackDismiss
|
||||
}
|
||||
}
|
||||
slug
|
||||
}
|
||||
|
||||
fragment UserPost on Post {
|
||||
read
|
||||
upvoted
|
||||
commented
|
||||
bookmarked
|
||||
downvoted
|
||||
}
|
||||
`;
|
||||
|
||||
export const route: Route = {
|
||||
path: '/source/:sourceId/:innerSharedContent?',
|
||||
|
|
|
|||
|
|
@ -3,203 +3,188 @@ import { ViewType } from '@/types';
|
|||
|
||||
import { baseUrl, getData, getList, variables } from './utils.js';
|
||||
|
||||
const sourceQuery = `
|
||||
query Source($handle: ID!) {
|
||||
source(id: $handle) {
|
||||
...SquadBaseInfo
|
||||
moderationPostCount
|
||||
const sourceQuery = /* GraphQL */ `
|
||||
query Source($handle: ID!) {
|
||||
source(id: $handle) {
|
||||
...SquadBaseInfo
|
||||
moderationPostCount
|
||||
}
|
||||
}
|
||||
}
|
||||
fragment SquadBaseInfo on Source {
|
||||
...SourceBaseInfo
|
||||
referralUrl
|
||||
createdAt
|
||||
flags {
|
||||
featured
|
||||
totalPosts
|
||||
totalViews
|
||||
totalUpvotes
|
||||
fragment SquadBaseInfo on Source {
|
||||
...SourceBaseInfo
|
||||
referralUrl
|
||||
createdAt
|
||||
flags {
|
||||
featured
|
||||
totalPosts
|
||||
totalViews
|
||||
totalUpvotes
|
||||
}
|
||||
category {
|
||||
id
|
||||
title
|
||||
slug
|
||||
}
|
||||
...PrivilegedMembers
|
||||
}
|
||||
category {
|
||||
id
|
||||
title
|
||||
slug
|
||||
}
|
||||
...PrivilegedMembers
|
||||
}
|
||||
fragment SourceBaseInfo on Source {
|
||||
id
|
||||
active
|
||||
handle
|
||||
name
|
||||
permalink
|
||||
public
|
||||
type
|
||||
description
|
||||
image
|
||||
membersCount
|
||||
currentMember {
|
||||
...CurrentMember
|
||||
}
|
||||
memberPostingRole
|
||||
memberInviteRole
|
||||
moderationRequired
|
||||
}
|
||||
fragment CurrentMember on SourceMember {
|
||||
user {
|
||||
id
|
||||
}
|
||||
permissions
|
||||
role
|
||||
referralToken
|
||||
flags {
|
||||
hideFeedPosts
|
||||
collapsePinnedPosts
|
||||
}
|
||||
}
|
||||
fragment PrivilegedMembers on Source {
|
||||
privilegedMembers {
|
||||
user {
|
||||
fragment SourceBaseInfo on Source {
|
||||
id
|
||||
active
|
||||
handle
|
||||
name
|
||||
image
|
||||
permalink
|
||||
username
|
||||
bio
|
||||
reputation
|
||||
companies {
|
||||
name
|
||||
image
|
||||
public
|
||||
type
|
||||
description
|
||||
image
|
||||
membersCount
|
||||
currentMember {
|
||||
...CurrentMember
|
||||
}
|
||||
memberPostingRole
|
||||
memberInviteRole
|
||||
moderationRequired
|
||||
}
|
||||
fragment CurrentMember on SourceMember {
|
||||
user {
|
||||
id
|
||||
}
|
||||
permissions
|
||||
role
|
||||
referralToken
|
||||
flags {
|
||||
hideFeedPosts
|
||||
collapsePinnedPosts
|
||||
}
|
||||
}
|
||||
fragment PrivilegedMembers on Source {
|
||||
privilegedMembers {
|
||||
user {
|
||||
id
|
||||
name
|
||||
image
|
||||
permalink
|
||||
username
|
||||
bio
|
||||
reputation
|
||||
companies {
|
||||
name
|
||||
image
|
||||
}
|
||||
contentPreference {
|
||||
status
|
||||
}
|
||||
}
|
||||
role
|
||||
}
|
||||
contentPreference {
|
||||
status
|
||||
}
|
||||
}
|
||||
role
|
||||
}
|
||||
}
|
||||
|
||||
`;
|
||||
|
||||
const query = `
|
||||
query SourceFeed(
|
||||
$source: ID!
|
||||
$loggedIn: Boolean! = false
|
||||
$first: Int
|
||||
$after: String
|
||||
$ranking: Ranking
|
||||
$supportedTypes: [String!]
|
||||
) {
|
||||
page: sourceFeed(
|
||||
source: $source
|
||||
first: $first
|
||||
after: $after
|
||||
ranking: $ranking
|
||||
supportedTypes: $supportedTypes
|
||||
) {
|
||||
...FeedPostConnection
|
||||
const query = /* GraphQL */ `
|
||||
query SourceFeed($source: ID!, $loggedIn: Boolean! = false, $first: Int, $after: String, $ranking: Ranking, $supportedTypes: [String!]) {
|
||||
page: sourceFeed(source: $source, first: $first, after: $after, ranking: $ranking, supportedTypes: $supportedTypes) {
|
||||
...FeedPostConnection
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fragment FeedPostConnection on PostConnection {
|
||||
pageInfo {
|
||||
hasNextPage
|
||||
endCursor
|
||||
|
||||
fragment FeedPostConnection on PostConnection {
|
||||
pageInfo {
|
||||
hasNextPage
|
||||
endCursor
|
||||
}
|
||||
edges {
|
||||
node {
|
||||
...FeedPost
|
||||
pinnedAt
|
||||
contentHtml
|
||||
...UserPost @include(if: $loggedIn)
|
||||
}
|
||||
}
|
||||
}
|
||||
edges {
|
||||
node {
|
||||
...FeedPost
|
||||
pinnedAt contentHtml
|
||||
...UserPost @include(if: $loggedIn)
|
||||
}
|
||||
|
||||
fragment FeedPost on Post {
|
||||
...FeedPostInfo
|
||||
sharedPost {
|
||||
id
|
||||
title
|
||||
image
|
||||
readTime
|
||||
permalink
|
||||
commentsPermalink
|
||||
createdAt
|
||||
type
|
||||
tags
|
||||
source {
|
||||
id
|
||||
handle
|
||||
permalink
|
||||
image
|
||||
}
|
||||
slug
|
||||
clickbaitTitleDetected
|
||||
}
|
||||
trending
|
||||
feedMeta
|
||||
collectionSources {
|
||||
handle
|
||||
image
|
||||
}
|
||||
numCollectionSources
|
||||
updatedAt
|
||||
slug
|
||||
}
|
||||
}
|
||||
|
||||
fragment FeedPost on Post {
|
||||
...FeedPostInfo
|
||||
sharedPost {
|
||||
id
|
||||
title
|
||||
image
|
||||
readTime
|
||||
permalink
|
||||
commentsPermalink
|
||||
createdAt
|
||||
type
|
||||
tags
|
||||
source {
|
||||
|
||||
fragment FeedPostInfo on Post {
|
||||
id
|
||||
handle
|
||||
permalink
|
||||
title
|
||||
image
|
||||
}
|
||||
slug
|
||||
clickbaitTitleDetected
|
||||
readTime
|
||||
permalink
|
||||
commentsPermalink
|
||||
createdAt
|
||||
commented
|
||||
bookmarked
|
||||
views
|
||||
numUpvotes
|
||||
numComments
|
||||
summary
|
||||
bookmark {
|
||||
remindAt
|
||||
}
|
||||
author {
|
||||
id
|
||||
name
|
||||
image
|
||||
username
|
||||
permalink
|
||||
}
|
||||
type
|
||||
tags
|
||||
source {
|
||||
id
|
||||
handle
|
||||
name
|
||||
permalink
|
||||
image
|
||||
type
|
||||
}
|
||||
userState {
|
||||
vote
|
||||
flags {
|
||||
feedbackDismiss
|
||||
}
|
||||
}
|
||||
slug
|
||||
clickbaitTitleDetected
|
||||
}
|
||||
trending
|
||||
feedMeta
|
||||
collectionSources {
|
||||
handle
|
||||
image
|
||||
}
|
||||
numCollectionSources
|
||||
updatedAt
|
||||
slug
|
||||
}
|
||||
|
||||
fragment FeedPostInfo on Post {
|
||||
id
|
||||
title
|
||||
image
|
||||
readTime
|
||||
permalink
|
||||
commentsPermalink
|
||||
createdAt
|
||||
commented
|
||||
bookmarked
|
||||
views
|
||||
numUpvotes
|
||||
numComments
|
||||
summary
|
||||
bookmark {
|
||||
remindAt
|
||||
}
|
||||
author {
|
||||
id
|
||||
name
|
||||
image
|
||||
username
|
||||
permalink
|
||||
}
|
||||
type
|
||||
tags
|
||||
source {
|
||||
id
|
||||
handle
|
||||
name
|
||||
permalink
|
||||
image
|
||||
type
|
||||
}
|
||||
userState {
|
||||
vote
|
||||
flags {
|
||||
feedbackDismiss
|
||||
}
|
||||
}
|
||||
slug
|
||||
clickbaitTitleDetected
|
||||
}
|
||||
|
||||
|
||||
|
||||
fragment UserPost on Post {
|
||||
read
|
||||
upvoted
|
||||
commented
|
||||
bookmarked
|
||||
downvoted
|
||||
}
|
||||
fragment UserPost on Post {
|
||||
read
|
||||
upvoted
|
||||
commented
|
||||
bookmarked
|
||||
downvoted
|
||||
}
|
||||
`;
|
||||
|
||||
export const route: Route = {
|
||||
|
|
|
|||
|
|
@ -3,121 +3,110 @@ import { ViewType } from '@/types';
|
|||
|
||||
import { baseUrl, getData, getList, variables } from './utils.js';
|
||||
|
||||
const query = `
|
||||
query MostUpvotedFeed(
|
||||
$loggedIn: Boolean! = false
|
||||
$first: Int
|
||||
$after: String
|
||||
$period: Int
|
||||
$supportedTypes: [String!] = ["article","share","freeform","video:youtube","collection"]
|
||||
$source: ID
|
||||
$tag: String
|
||||
) {
|
||||
page: mostUpvotedFeed(first: $first, after: $after, period: $period, supportedTypes: $supportedTypes, source: $source, tag: $tag) {
|
||||
...FeedPostConnection
|
||||
const query = /* GraphQL */ `
|
||||
query MostUpvotedFeed($loggedIn: Boolean! = false, $first: Int, $after: String, $period: Int, $supportedTypes: [String!] = ["article", "share", "freeform", "video:youtube", "collection"], $source: ID, $tag: String) {
|
||||
page: mostUpvotedFeed(first: $first, after: $after, period: $period, supportedTypes: $supportedTypes, source: $source, tag: $tag) {
|
||||
...FeedPostConnection
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fragment FeedPostConnection on PostConnection {
|
||||
pageInfo {
|
||||
hasNextPage
|
||||
endCursor
|
||||
|
||||
fragment FeedPostConnection on PostConnection {
|
||||
pageInfo {
|
||||
hasNextPage
|
||||
endCursor
|
||||
}
|
||||
edges {
|
||||
node {
|
||||
...FeedPost
|
||||
contentHtml
|
||||
...UserPost @include(if: $loggedIn)
|
||||
}
|
||||
}
|
||||
}
|
||||
edges {
|
||||
node {
|
||||
...FeedPost
|
||||
contentHtml
|
||||
...UserPost @include(if: $loggedIn)
|
||||
}
|
||||
|
||||
fragment FeedPost on Post {
|
||||
...FeedPostInfo
|
||||
sharedPost {
|
||||
id
|
||||
title
|
||||
image
|
||||
readTime
|
||||
permalink
|
||||
commentsPermalink
|
||||
createdAt
|
||||
type
|
||||
tags
|
||||
source {
|
||||
id
|
||||
handle
|
||||
permalink
|
||||
image
|
||||
}
|
||||
slug
|
||||
clickbaitTitleDetected
|
||||
}
|
||||
trending
|
||||
feedMeta
|
||||
collectionSources {
|
||||
handle
|
||||
image
|
||||
}
|
||||
numCollectionSources
|
||||
updatedAt
|
||||
slug
|
||||
}
|
||||
}
|
||||
|
||||
fragment FeedPost on Post {
|
||||
...FeedPostInfo
|
||||
sharedPost {
|
||||
id
|
||||
title
|
||||
image
|
||||
readTime
|
||||
permalink
|
||||
commentsPermalink
|
||||
createdAt
|
||||
type
|
||||
tags
|
||||
source {
|
||||
|
||||
fragment FeedPostInfo on Post {
|
||||
id
|
||||
handle
|
||||
permalink
|
||||
title
|
||||
image
|
||||
}
|
||||
slug
|
||||
clickbaitTitleDetected
|
||||
readTime
|
||||
permalink
|
||||
commentsPermalink
|
||||
createdAt
|
||||
commented
|
||||
bookmarked
|
||||
views
|
||||
numUpvotes
|
||||
numComments
|
||||
summary
|
||||
bookmark {
|
||||
remindAt
|
||||
}
|
||||
author {
|
||||
id
|
||||
name
|
||||
image
|
||||
username
|
||||
permalink
|
||||
}
|
||||
type
|
||||
tags
|
||||
source {
|
||||
id
|
||||
handle
|
||||
name
|
||||
permalink
|
||||
image
|
||||
type
|
||||
}
|
||||
userState {
|
||||
vote
|
||||
flags {
|
||||
feedbackDismiss
|
||||
}
|
||||
}
|
||||
slug
|
||||
clickbaitTitleDetected
|
||||
}
|
||||
trending
|
||||
feedMeta
|
||||
collectionSources {
|
||||
handle
|
||||
image
|
||||
}
|
||||
numCollectionSources
|
||||
updatedAt
|
||||
slug
|
||||
}
|
||||
|
||||
fragment FeedPostInfo on Post {
|
||||
id
|
||||
title
|
||||
image
|
||||
readTime
|
||||
permalink
|
||||
commentsPermalink
|
||||
createdAt
|
||||
commented
|
||||
bookmarked
|
||||
views
|
||||
numUpvotes
|
||||
numComments
|
||||
summary
|
||||
bookmark {
|
||||
remindAt
|
||||
}
|
||||
author {
|
||||
id
|
||||
name
|
||||
image
|
||||
username
|
||||
permalink
|
||||
}
|
||||
type
|
||||
tags
|
||||
source {
|
||||
id
|
||||
handle
|
||||
name
|
||||
permalink
|
||||
image
|
||||
type
|
||||
}
|
||||
userState {
|
||||
vote
|
||||
flags {
|
||||
feedbackDismiss
|
||||
}
|
||||
}
|
||||
slug
|
||||
clickbaitTitleDetected
|
||||
}
|
||||
|
||||
|
||||
|
||||
fragment UserPost on Post {
|
||||
read
|
||||
upvoted
|
||||
commented
|
||||
bookmarked
|
||||
downvoted
|
||||
}
|
||||
|
||||
fragment UserPost on Post {
|
||||
read
|
||||
upvoted
|
||||
commented
|
||||
bookmarked
|
||||
downvoted
|
||||
}
|
||||
`;
|
||||
|
||||
export const route: Route = {
|
||||
|
|
|
|||
|
|
@ -5,151 +5,134 @@ import ofetch from '@/utils/ofetch';
|
|||
|
||||
import { baseUrl, getBuildId, getData, getList } from './utils';
|
||||
|
||||
const userPostQuery = `
|
||||
query AuthorFeed(
|
||||
$loggedIn: Boolean! = false
|
||||
$userId: ID!
|
||||
$after: String
|
||||
$first: Int
|
||||
$supportedTypes: [String!] = [
|
||||
"article"
|
||||
"share"
|
||||
"freeform"
|
||||
"video:youtube"
|
||||
"collection"
|
||||
]
|
||||
) {
|
||||
page: authorFeed(
|
||||
author: $userId
|
||||
after: $after
|
||||
first: $first
|
||||
ranking: TIME
|
||||
supportedTypes: $supportedTypes
|
||||
) {
|
||||
...FeedPostConnection
|
||||
const userPostQuery = /* GraphQL */ `
|
||||
query AuthorFeed($loggedIn: Boolean! = false, $userId: ID!, $after: String, $first: Int, $supportedTypes: [String!] = ["article", "share", "freeform", "video:youtube", "collection"]) {
|
||||
page: authorFeed(author: $userId, after: $after, first: $first, ranking: TIME, supportedTypes: $supportedTypes) {
|
||||
...FeedPostConnection
|
||||
}
|
||||
}
|
||||
}
|
||||
fragment FeedPostConnection on PostConnection {
|
||||
pageInfo {
|
||||
hasNextPage
|
||||
endCursor
|
||||
fragment FeedPostConnection on PostConnection {
|
||||
pageInfo {
|
||||
hasNextPage
|
||||
endCursor
|
||||
}
|
||||
edges {
|
||||
node {
|
||||
...FeedPost
|
||||
contentHtml
|
||||
...UserPost @include(if: $loggedIn)
|
||||
}
|
||||
}
|
||||
}
|
||||
edges {
|
||||
node {
|
||||
...FeedPost
|
||||
contentHtml
|
||||
...UserPost @include(if: $loggedIn)
|
||||
}
|
||||
fragment FeedPost on Post {
|
||||
...SharedPostInfo
|
||||
sharedPost {
|
||||
...SharedPostInfo
|
||||
}
|
||||
trending
|
||||
feedMeta
|
||||
collectionSources {
|
||||
handle
|
||||
image
|
||||
}
|
||||
numCollectionSources
|
||||
updatedAt
|
||||
slug
|
||||
}
|
||||
}
|
||||
fragment FeedPost on Post {
|
||||
...SharedPostInfo
|
||||
sharedPost {
|
||||
...SharedPostInfo
|
||||
}
|
||||
trending
|
||||
feedMeta
|
||||
collectionSources {
|
||||
handle
|
||||
image
|
||||
}
|
||||
numCollectionSources
|
||||
updatedAt
|
||||
slug
|
||||
}
|
||||
fragment SharedPostInfo on Post {
|
||||
id
|
||||
title
|
||||
titleHtml
|
||||
image
|
||||
readTime
|
||||
permalink
|
||||
commentsPermalink
|
||||
summary
|
||||
createdAt
|
||||
private
|
||||
upvoted
|
||||
commented
|
||||
bookmarked
|
||||
views
|
||||
numUpvotes
|
||||
numComments
|
||||
videoId
|
||||
scout {
|
||||
...UserShortInfo
|
||||
}
|
||||
author {
|
||||
...UserShortInfo
|
||||
}
|
||||
type
|
||||
tags
|
||||
source {
|
||||
...SourceBaseInfo
|
||||
}
|
||||
downvoted
|
||||
flags {
|
||||
promoteToPublic
|
||||
}
|
||||
userState {
|
||||
vote
|
||||
flags {
|
||||
feedbackDismiss
|
||||
}
|
||||
}
|
||||
slug
|
||||
}
|
||||
fragment SourceBaseInfo on Source {
|
||||
id
|
||||
active
|
||||
handle
|
||||
name
|
||||
permalink
|
||||
public
|
||||
type
|
||||
description
|
||||
image
|
||||
membersCount
|
||||
privilegedMembers {
|
||||
user {
|
||||
fragment SharedPostInfo on Post {
|
||||
id
|
||||
}
|
||||
role
|
||||
title
|
||||
titleHtml
|
||||
image
|
||||
readTime
|
||||
permalink
|
||||
commentsPermalink
|
||||
summary
|
||||
createdAt
|
||||
private
|
||||
upvoted
|
||||
commented
|
||||
bookmarked
|
||||
views
|
||||
numUpvotes
|
||||
numComments
|
||||
videoId
|
||||
scout {
|
||||
...UserShortInfo
|
||||
}
|
||||
author {
|
||||
...UserShortInfo
|
||||
}
|
||||
type
|
||||
tags
|
||||
source {
|
||||
...SourceBaseInfo
|
||||
}
|
||||
downvoted
|
||||
flags {
|
||||
promoteToPublic
|
||||
}
|
||||
userState {
|
||||
vote
|
||||
flags {
|
||||
feedbackDismiss
|
||||
}
|
||||
}
|
||||
slug
|
||||
}
|
||||
currentMember {
|
||||
...CurrentMember
|
||||
fragment SourceBaseInfo on Source {
|
||||
id
|
||||
active
|
||||
handle
|
||||
name
|
||||
permalink
|
||||
public
|
||||
type
|
||||
description
|
||||
image
|
||||
membersCount
|
||||
privilegedMembers {
|
||||
user {
|
||||
id
|
||||
}
|
||||
role
|
||||
}
|
||||
currentMember {
|
||||
...CurrentMember
|
||||
}
|
||||
memberPostingRole
|
||||
memberInviteRole
|
||||
}
|
||||
memberPostingRole
|
||||
memberInviteRole
|
||||
}
|
||||
fragment CurrentMember on SourceMember {
|
||||
user {
|
||||
id
|
||||
fragment CurrentMember on SourceMember {
|
||||
user {
|
||||
id
|
||||
}
|
||||
permissions
|
||||
role
|
||||
referralToken
|
||||
flags {
|
||||
hideFeedPosts
|
||||
collapsePinnedPosts
|
||||
}
|
||||
}
|
||||
permissions
|
||||
role
|
||||
referralToken
|
||||
flags {
|
||||
hideFeedPosts
|
||||
collapsePinnedPosts
|
||||
fragment UserShortInfo on User {
|
||||
id
|
||||
name
|
||||
image
|
||||
permalink
|
||||
username
|
||||
bio
|
||||
createdAt
|
||||
reputation
|
||||
}
|
||||
}
|
||||
fragment UserShortInfo on User {
|
||||
id
|
||||
name
|
||||
image
|
||||
permalink
|
||||
username
|
||||
bio
|
||||
createdAt
|
||||
reputation
|
||||
}
|
||||
fragment UserPost on Post {
|
||||
read
|
||||
upvoted
|
||||
commented
|
||||
bookmarked
|
||||
downvoted
|
||||
}`;
|
||||
fragment UserPost on Post {
|
||||
read
|
||||
upvoted
|
||||
commented
|
||||
bookmarked
|
||||
downvoted
|
||||
}
|
||||
`;
|
||||
|
||||
export const route: Route = {
|
||||
path: '/user/:userId/:innerSharedContent?',
|
||||
|
|
|
|||
|
|
@ -135,7 +135,7 @@ async function handler(ctx) {
|
|||
} = await ofetch(graphqlUrl, {
|
||||
method: 'POST',
|
||||
body: {
|
||||
query: `query CommunityQuery($id: ID, $slug: String) {
|
||||
query: /* GraphQL */ `query CommunityQuery($id: ID, $slug: String) {
|
||||
community(where: { _id_EQ: $id, slug_EQ: $slug }) {
|
||||
...CommunityFragment
|
||||
topContributors {
|
||||
|
|
@ -232,7 +232,7 @@ fragment ImageFragment on Image {
|
|||
} = await ofetch(graphqlUrl, {
|
||||
method: 'POST',
|
||||
body: {
|
||||
query: `query PostsQuery(
|
||||
query: /* GraphQL */ `query PostsQuery(
|
||||
$first: Int
|
||||
$after: String
|
||||
$where: PostWhere
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@ async function handler(ctx) {
|
|||
listType: 'Newest',
|
||||
},
|
||||
},
|
||||
query: `
|
||||
query: /* GraphQL */ `
|
||||
query BrowseSpaceCampaigns($id: Int, $alias: String, $campaignInput: ListCampaignInput!) {
|
||||
space(id: $id, alias: $alias) {
|
||||
id
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@ async function handler(ctx) {
|
|||
Authorization: `bearer ${config.github.access_token}`,
|
||||
},
|
||||
json: {
|
||||
query: `
|
||||
query: /* GraphQL */ `
|
||||
{
|
||||
user(login: "${user}") {
|
||||
followers(first: 10) {
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@ async function handler(ctx) {
|
|||
Authorization: `bearer ${config.github.access_token}`,
|
||||
},
|
||||
json: {
|
||||
query: `
|
||||
query: /* GraphQL */ `
|
||||
{
|
||||
repository(owner: "${user}", name: "${repo}") {
|
||||
stargazers(last: 10) {
|
||||
|
|
|
|||
|
|
@ -98,7 +98,7 @@ async function handler(ctx) {
|
|||
Authorization: `bearer ${config.github.access_token}`,
|
||||
},
|
||||
json: {
|
||||
query: `
|
||||
query: /* GraphQL */ `
|
||||
query {
|
||||
${trendingRepos
|
||||
.map(
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ async function handler(ctx) {
|
|||
return;
|
||||
}
|
||||
|
||||
const query = `
|
||||
const query = /* GraphQL */ `
|
||||
{
|
||||
user(username: "${username}") {
|
||||
publication {
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ async function handler() {
|
|||
variables: {
|
||||
order: 'START_TIME_ASC',
|
||||
},
|
||||
query: `
|
||||
query: /* GraphQL */ `
|
||||
query getTrendingEvents($first: Int, $after: String, $order: TrendingEventsRequest_EventOrder, $filter: TrendingEventsRequest_EventFilter) {
|
||||
trendingEvents(first: $first, after: $after, order: $order, filter: $filter) {
|
||||
list {
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ async function handler(ctx) {
|
|||
variables: {
|
||||
handle,
|
||||
},
|
||||
query: `
|
||||
query: /* GraphQL */ `
|
||||
query getProfile($id: ID, $handle: String) {
|
||||
profile(id: $id, handle: $handle) {
|
||||
status
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ async function handler(ctx) {
|
|||
...sectionFilter,
|
||||
},
|
||||
},
|
||||
query: `
|
||||
query: /* GraphQL */ `
|
||||
fragment section on Section {
|
||||
id
|
||||
name
|
||||
|
|
|
|||
|
|
@ -56,7 +56,7 @@ async function handler(ctx) {
|
|||
method: 'POST',
|
||||
body: {
|
||||
operationName: 'ArtistDetailLoadUser',
|
||||
query: `
|
||||
query: /* GraphQL */ `
|
||||
query ArtistDetailLoadUser($artistUrl: String!) {
|
||||
user(artistUrl: $artistUrl) {
|
||||
coverUrl
|
||||
|
|
@ -113,7 +113,7 @@ async function handler(ctx) {
|
|||
method: 'POST',
|
||||
body: {
|
||||
operationName: 'loadArtistSheets',
|
||||
query: `
|
||||
query: /* GraphQL */ `
|
||||
query loadArtistSheets($data: SheetSearchInput!) {
|
||||
sheetSearch(data: $data) {
|
||||
list {
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ export const route: Route = {
|
|||
async function handler() {
|
||||
const { data } = await got.post('https://lcen.xiaote.net//api/graphql/', {
|
||||
json: {
|
||||
query: `query($startCursor: Int) {
|
||||
query: /* GraphQL */ `query($startCursor: Int) {
|
||||
communities(startCursor: $startCursor) {
|
||||
edges {
|
||||
node {
|
||||
|
|
|
|||
Loading…
Reference in New Issue