291 lines
7.4 KiB
JavaScript
291 lines
7.4 KiB
JavaScript
import gql from 'graphql-tag'
|
|
import { COMMENTS } from './comments'
|
|
import { SUB_FULL_FIELDS } from './subs'
|
|
import { INVOICE_FIELDS } from './wallet'
|
|
|
|
const HASH_HMAC_INPUT_1 = '$hash: String, $hmac: String'
|
|
const HASH_HMAC_INPUT_2 = 'hash: $hash, hmac: $hmac'
|
|
|
|
export const PAID_ACTION = gql`
|
|
${INVOICE_FIELDS}
|
|
fragment PaidActionFields on PaidAction {
|
|
invoice {
|
|
...InvoiceFields
|
|
}
|
|
paymentMethod
|
|
}`
|
|
|
|
const ITEM_PAID_ACTION_FIELDS = gql`
|
|
${COMMENTS}
|
|
fragment ItemPaidActionFields on ItemPaidAction {
|
|
result {
|
|
id
|
|
deleteScheduledAt
|
|
reminderScheduledAt
|
|
...CommentFields
|
|
comments {
|
|
...CommentsRecursive
|
|
}
|
|
}
|
|
}`
|
|
|
|
const ITEM_PAID_ACTION_FIELDS_NO_CHILD_COMMENTS = gql`
|
|
${COMMENTS}
|
|
fragment ItemPaidActionFieldsNoChildComments on ItemPaidAction {
|
|
result {
|
|
id
|
|
deleteScheduledAt
|
|
reminderScheduledAt
|
|
...CommentFields
|
|
}
|
|
}
|
|
`
|
|
|
|
const ITEM_ACT_PAID_ACTION_FIELDS = gql`
|
|
fragment ItemActPaidActionFields on ItemActPaidAction {
|
|
result {
|
|
id
|
|
sats
|
|
path
|
|
act
|
|
}
|
|
}`
|
|
|
|
export const GET_PAID_ACTION = gql`
|
|
${PAID_ACTION}
|
|
${ITEM_PAID_ACTION_FIELDS}
|
|
${ITEM_ACT_PAID_ACTION_FIELDS}
|
|
${SUB_FULL_FIELDS}
|
|
query paidAction($invoiceId: Int!) {
|
|
paidAction(invoiceId: $invoiceId) {
|
|
__typename
|
|
...PaidActionFields
|
|
... on ItemPaidAction {
|
|
...ItemPaidActionFields
|
|
}
|
|
... on ItemActPaidAction {
|
|
...ItemActPaidActionFields
|
|
}
|
|
... on PollVotePaidAction {
|
|
result {
|
|
id
|
|
}
|
|
}
|
|
... on SubPaidAction {
|
|
result {
|
|
...SubFullFields
|
|
}
|
|
}
|
|
... on DonatePaidAction {
|
|
result {
|
|
sats
|
|
}
|
|
}
|
|
}
|
|
}`
|
|
|
|
export const RETRY_PAID_ACTION = gql`
|
|
${PAID_ACTION}
|
|
${ITEM_PAID_ACTION_FIELDS}
|
|
${ITEM_ACT_PAID_ACTION_FIELDS}
|
|
mutation retryPaidAction($invoiceId: Int!) {
|
|
retryPaidAction(invoiceId: $invoiceId) {
|
|
__typename
|
|
...PaidActionFields
|
|
... on ItemPaidAction {
|
|
...ItemPaidActionFields
|
|
}
|
|
... on ItemActPaidAction {
|
|
...ItemActPaidActionFields
|
|
}
|
|
... on PollVotePaidAction {
|
|
result {
|
|
id
|
|
}
|
|
}
|
|
}
|
|
}`
|
|
|
|
export const DONATE = gql`
|
|
${PAID_ACTION}
|
|
mutation donateToRewards($sats: Int!) {
|
|
donateToRewards(sats: $sats) {
|
|
result {
|
|
sats
|
|
}
|
|
...PaidActionFields
|
|
}
|
|
}`
|
|
|
|
export const ACT_MUTATION = gql`
|
|
${PAID_ACTION}
|
|
${ITEM_ACT_PAID_ACTION_FIELDS}
|
|
mutation act($id: ID!, $sats: Int!, $act: String) {
|
|
act(id: $id, sats: $sats, act: $act) {
|
|
...ItemActPaidActionFields
|
|
...PaidActionFields
|
|
}
|
|
}`
|
|
|
|
export const UPSERT_DISCUSSION = gql`
|
|
${PAID_ACTION}
|
|
mutation upsertDiscussion($sub: String, $id: ID, $title: String!, $text: String,
|
|
$boost: Int, $forward: [ItemForwardInput], ${HASH_HMAC_INPUT_1}) {
|
|
upsertDiscussion(sub: $sub, id: $id, title: $title, text: $text, boost: $boost,
|
|
forward: $forward, ${HASH_HMAC_INPUT_2}) {
|
|
result {
|
|
id
|
|
deleteScheduledAt
|
|
reminderScheduledAt
|
|
}
|
|
...PaidActionFields
|
|
}
|
|
}`
|
|
|
|
export const UPSERT_JOB = gql`
|
|
${PAID_ACTION}
|
|
mutation upsertJob($sub: String!, $id: ID, $title: String!, $company: String!,
|
|
$location: String, $remote: Boolean, $text: String!, $url: String!, $boost: Int,
|
|
$status: String, $logo: Int) {
|
|
upsertJob(sub: $sub, id: $id, title: $title, company: $company,
|
|
location: $location, remote: $remote, text: $text,
|
|
url: $url, boost: $boost, status: $status, logo: $logo) {
|
|
result {
|
|
id
|
|
deleteScheduledAt
|
|
reminderScheduledAt
|
|
}
|
|
...PaidActionFields
|
|
}
|
|
}`
|
|
|
|
export const UPSERT_LINK = gql`
|
|
${PAID_ACTION}
|
|
mutation upsertLink($sub: String, $id: ID, $title: String!, $url: String!,
|
|
$text: String, $boost: Int, $forward: [ItemForwardInput], ${HASH_HMAC_INPUT_1}) {
|
|
upsertLink(sub: $sub, id: $id, title: $title, url: $url, text: $text,
|
|
boost: $boost, forward: $forward, ${HASH_HMAC_INPUT_2}) {
|
|
result {
|
|
id
|
|
deleteScheduledAt
|
|
reminderScheduledAt
|
|
}
|
|
...PaidActionFields
|
|
}
|
|
}`
|
|
|
|
export const UPSERT_POLL = gql`
|
|
${PAID_ACTION}
|
|
mutation upsertPoll($sub: String, $id: ID, $title: String!, $text: String,
|
|
$options: [String!]!, $boost: Int, $forward: [ItemForwardInput], $pollExpiresAt: Date,
|
|
${HASH_HMAC_INPUT_1}) {
|
|
upsertPoll(sub: $sub, id: $id, title: $title, text: $text,
|
|
options: $options, boost: $boost, forward: $forward, pollExpiresAt: $pollExpiresAt,
|
|
${HASH_HMAC_INPUT_2}) {
|
|
result {
|
|
id
|
|
deleteScheduledAt
|
|
reminderScheduledAt
|
|
}
|
|
...PaidActionFields
|
|
}
|
|
}`
|
|
|
|
export const UPSERT_BOUNTY = gql`
|
|
${PAID_ACTION}
|
|
mutation upsertBounty($sub: String, $id: ID, $title: String!, $bounty: Int!,
|
|
$text: String, $boost: Int, $forward: [ItemForwardInput]) {
|
|
upsertBounty(sub: $sub, id: $id, title: $title, bounty: $bounty, text: $text,
|
|
boost: $boost, forward: $forward) {
|
|
result {
|
|
id
|
|
deleteScheduledAt
|
|
reminderScheduledAt
|
|
}
|
|
...PaidActionFields
|
|
}
|
|
}`
|
|
|
|
export const POLL_VOTE = gql`
|
|
${PAID_ACTION}
|
|
mutation pollVote($id: ID!) {
|
|
pollVote(id: $id) {
|
|
result {
|
|
id
|
|
}
|
|
...PaidActionFields
|
|
}
|
|
}`
|
|
|
|
export const UPSERT_BIO = gql`
|
|
${ITEM_PAID_ACTION_FIELDS}
|
|
${PAID_ACTION}
|
|
mutation upsertBio($text: String!) {
|
|
upsertBio(text: $text) {
|
|
...ItemPaidActionFields
|
|
...PaidActionFields
|
|
}
|
|
}`
|
|
|
|
export const CREATE_COMMENT = gql`
|
|
${ITEM_PAID_ACTION_FIELDS}
|
|
${PAID_ACTION}
|
|
mutation upsertComment($text: String!, $parentId: ID!) {
|
|
upsertComment(text: $text, parentId: $parentId) {
|
|
...ItemPaidActionFields
|
|
...PaidActionFields
|
|
}
|
|
}`
|
|
|
|
export const UPDATE_COMMENT = gql`
|
|
${ITEM_PAID_ACTION_FIELDS_NO_CHILD_COMMENTS}
|
|
${PAID_ACTION}
|
|
mutation upsertComment($id: ID!, $text: String!, $boost: Int, ${HASH_HMAC_INPUT_1}) {
|
|
upsertComment(id: $id, text: $text, boost: $boost, ${HASH_HMAC_INPUT_2}) {
|
|
...ItemPaidActionFieldsNoChildComments
|
|
...PaidActionFields
|
|
}
|
|
}`
|
|
|
|
export const UPSERT_SUB = gql`
|
|
${PAID_ACTION}
|
|
mutation upsertSub($oldName: String, $name: String!, $desc: String, $baseCost: Int!,
|
|
$postTypes: [String!]!, $billingType: String!,
|
|
$billingAutoRenew: Boolean!, $moderated: Boolean!, $nsfw: Boolean!) {
|
|
upsertSub(oldName: $oldName, name: $name, desc: $desc, baseCost: $baseCost,
|
|
postTypes: $postTypes, billingType: $billingType,
|
|
billingAutoRenew: $billingAutoRenew, moderated: $moderated, nsfw: $nsfw) {
|
|
result {
|
|
name
|
|
}
|
|
...PaidActionFields
|
|
}
|
|
}`
|
|
|
|
export const UNARCHIVE_TERRITORY = gql`
|
|
${PAID_ACTION}
|
|
mutation unarchiveTerritory($name: String!, $desc: String, $baseCost: Int!,
|
|
$postTypes: [String!]!, $billingType: String!,
|
|
$billingAutoRenew: Boolean!, $moderated: Boolean!, $nsfw: Boolean!) {
|
|
unarchiveTerritory(name: $name, desc: $desc, baseCost: $baseCost,
|
|
postTypes: $postTypes, billingType: $billingType,
|
|
billingAutoRenew: $billingAutoRenew, moderated: $moderated, nsfw: $nsfw) {
|
|
result {
|
|
name
|
|
}
|
|
...PaidActionFields
|
|
}
|
|
}`
|
|
|
|
export const SUB_PAY = gql`
|
|
${SUB_FULL_FIELDS}
|
|
${PAID_ACTION}
|
|
mutation paySub($name: String!) {
|
|
paySub(name: $name) {
|
|
result {
|
|
...SubFullFields
|
|
}
|
|
...PaidActionFields
|
|
}
|
|
}`
|