Skip to content

Commit

Permalink
Merge pull request #6456 from artsy/staging
Browse files Browse the repository at this point in the history
Deploy
  • Loading branch information
jpotts244 authored Feb 20, 2025
2 parents 863c491 + f3e729d commit d203156
Show file tree
Hide file tree
Showing 4 changed files with 66 additions and 68 deletions.
80 changes: 40 additions & 40 deletions _schemaV2.graphql
Original file line number Diff line number Diff line change
Expand Up @@ -2343,6 +2343,41 @@ type ArtistsWithAlertCountsEdge {
totalAlertCount: Int
}

type ArtsyShippingOptInMutationFailure {
mutationError: GravityMutationError
}

input ArtsyShippingOptInMutationInput {
# Whether Artsy domestic shipping should be enabled
artsyShippingDomestic: Boolean

# Whether Artsy international shipping should be enabled
artsyShippingInternational: Boolean
clientMutationId: String

# ID of the partner
id: String!
}

type ArtsyShippingOptInMutationPayload {
ArtsyShippingOptInOrError: ArtsyShippingOptInMutationType
clientMutationId: String
}

type ArtsyShippingOptInMutationSuccess {
skippedPartnerArtworks: ArtsyShippingOptInResponse
updatedPartnerArtworks: ArtsyShippingOptInResponse
}

union ArtsyShippingOptInMutationType =
ArtsyShippingOptInMutationFailure
| ArtsyShippingOptInMutationSuccess

type ArtsyShippingOptInResponse {
count: Int
ids: [String]
}

type Artwork implements Node & Searchable & Sellable {
additionalInformation(format: Format): String
artaShippingEnabled: Boolean
Expand Down Expand Up @@ -4190,41 +4225,6 @@ type BulkUpdateArtworksMetadataResponse {
ids: [String]
}

type BulkUpdatePartnerArtworksMutationFailure {
mutationError: GravityMutationError
}

input BulkUpdatePartnerArtworksMutationInput {
# Whether Artsy domestic shipping should be enabled
artsyShippingDomestic: Boolean

# Whether Artsy international shipping should be enabled
artsyShippingInternational: Boolean
clientMutationId: String

# ID of the partner
id: String!
}

type BulkUpdatePartnerArtworksMutationPayload {
bulkUpdatePartnerArtworksOrError: BulkUpdatePartnerArtworksMutationType
clientMutationId: String
}

type BulkUpdatePartnerArtworksMutationSuccess {
skippedPartnerArtworks: BulkUpdatePartnerArtworksResponse
updatedPartnerArtworks: BulkUpdatePartnerArtworksResponse
}

union BulkUpdatePartnerArtworksMutationType =
BulkUpdatePartnerArtworksMutationFailure
| BulkUpdatePartnerArtworksMutationSuccess

type BulkUpdatePartnerArtworksResponse {
count: Int
ids: [String]
}

type BuyersPremium {
# A formatted price with various currency formatting options.
amount(
Expand Down Expand Up @@ -13923,6 +13923,11 @@ type Mutation {
input: AdminUpdateFeatureFlagInput!
): AdminUpdateFeatureFlagPayload

# Update all artworks that belong to the partner
artsyShippingOptIn(
input: ArtsyShippingOptInMutationInput!
): ArtsyShippingOptInMutationPayload

# Add / remove artworks to / from collections
artworksCollectionsBatchUpdate(
input: ArtworksCollectionsBatchUpdateInput!
Expand All @@ -13935,11 +13940,6 @@ type Mutation {
bulkUpdateArtworksMetadata(
input: BulkUpdateArtworksMetadataMutationInput!
): BulkUpdateArtworksMetadataMutationPayload

# Update all artworks that belong to the partner
bulkUpdatePartnerArtworks(
input: BulkUpdatePartnerArtworksMutationInput!
): BulkUpdatePartnerArtworksMutationPayload
captureHold(
# Parameters for CaptureHold
input: CaptureHoldInput!
Expand Down
6 changes: 3 additions & 3 deletions src/lib/loaders/loaders_with_authentication/gravity.ts
Original file line number Diff line number Diff line change
Expand Up @@ -675,7 +675,7 @@ export default (accessToken, userID, opts) => {
),
matchPagesLoader: gravityLoader("match/pages", {}, { headers: true }),
optInArtworksIntoCommerceLoader: gravityLoader(
(id) => `partner/${id}/opt_in_artworks_into_commerce`,
(id) => `partner/${id}/bulk_operations/commerce_opt_in`,
{},
{ method: "PUT" }
),
Expand Down Expand Up @@ -990,8 +990,8 @@ export default (accessToken, userID, opts) => {
{},
{ method: "PUT" }
),
updatePartnerArtworksLoader: gravityLoader(
(id) => `partner/${id}/artworks`,
artsyShippingOptInLoader: gravityLoader(
(id) => `partner/${id}/bulk_operations/artsy_shipping_opt_in`,
{},
{ method: "PUT" }
),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,39 +16,37 @@ import { GraphQLUnionType } from "graphql"

interface Input {
id: string
// these to be migrated out soon by Jackie
artsyShippingDomestic: boolean | null
artsyShippingInternational: boolean | null
// ---------------------
}

const BulkUpdatePartnerArtworksResponseType = new GraphQLObjectType<
const ArtsyShippingOptInResponseType = new GraphQLObjectType<
any,
ResolverContext
>({
name: "BulkUpdatePartnerArtworksResponse",
name: "ArtsyShippingOptInResponse",
fields: () => ({
count: { type: GraphQLInt },
ids: { type: GraphQLList(GraphQLString) },
}),
})

const BulkUpdatePartnerArtworksMutationSuccessType = new GraphQLObjectType<
const ArtsyShippingOptInMutationSuccessType = new GraphQLObjectType<
any,
ResolverContext
>({
name: "BulkUpdatePartnerArtworksMutationSuccess",
name: "ArtsyShippingOptInMutationSuccess",
fields: () => ({
updatedPartnerArtworks: { type: BulkUpdatePartnerArtworksResponseType },
skippedPartnerArtworks: { type: BulkUpdatePartnerArtworksResponseType },
updatedPartnerArtworks: { type: ArtsyShippingOptInResponseType },
skippedPartnerArtworks: { type: ArtsyShippingOptInResponseType },
}),
})

const BulkUpdatePartnerArtworksMutationFailureType = new GraphQLObjectType<
const ArtsyShippingOptInMutationFailureType = new GraphQLObjectType<
any,
ResolverContext
>({
name: "BulkUpdatePartnerArtworksMutationFailure",
name: "ArtsyShippingOptInMutationFailure",
isTypeOf: (data) => {
return data._type === "GravityMutationError"
},
Expand All @@ -60,26 +58,26 @@ const BulkUpdatePartnerArtworksMutationFailureType = new GraphQLObjectType<
}),
})

const BulkUpdatePartnerArtworksMutationType = new GraphQLUnionType({
name: "BulkUpdatePartnerArtworksMutationType",
const ArtsyShippingOptInMutationType = new GraphQLUnionType({
name: "ArtsyShippingOptInMutationType",
types: [
BulkUpdatePartnerArtworksMutationSuccessType,
BulkUpdatePartnerArtworksMutationFailureType,
ArtsyShippingOptInMutationSuccessType,
ArtsyShippingOptInMutationFailureType,
],
resolveType: (object) => {
if (object.mutationError) {
return BulkUpdatePartnerArtworksMutationFailureType
return ArtsyShippingOptInMutationFailureType
}
return BulkUpdatePartnerArtworksMutationSuccessType
return ArtsyShippingOptInMutationSuccessType
},
})

export const bulkUpdatePartnerArtworksMutation = mutationWithClientMutationId<
export const artsyShippingOptInMutation = mutationWithClientMutationId<
Input,
any,
ResolverContext
>({
name: "BulkUpdatePartnerArtworksMutation",
name: "ArtsyShippingOptInMutation",
description: "Update all artworks that belong to the partner",
inputFields: {
id: {
Expand All @@ -96,8 +94,8 @@ export const bulkUpdatePartnerArtworksMutation = mutationWithClientMutationId<
},
},
outputFields: {
bulkUpdatePartnerArtworksOrError: {
type: BulkUpdatePartnerArtworksMutationType,
ArtsyShippingOptInOrError: {
type: ArtsyShippingOptInMutationType,
resolve: (result) => {
// In the future it could be helpful to have a list of successfully opted in ids, can add this to gravity at a later date
return {
Expand All @@ -112,19 +110,19 @@ export const bulkUpdatePartnerArtworksMutation = mutationWithClientMutationId<
},
mutateAndGetPayload: async (
{ id, artsyShippingDomestic, artsyShippingInternational },
{ updatePartnerArtworksLoader }
{ artsyShippingOptInLoader }
) => {
const gravityOptions = {
artsy_shipping_domestic: artsyShippingDomestic,
artsy_shipping_international: artsyShippingInternational,
}

if (!updatePartnerArtworksLoader) {
if (!artsyShippingOptInLoader) {
throw new Error("You need to be signed in to perform this action")
}

try {
return await updatePartnerArtworksLoader(id, gravityOptions)
return await artsyShippingOptInLoader(id, gravityOptions)
} catch (error) {
const formattedErr = formatGravityError(error)
if (formattedErr) {
Expand Down
4 changes: 2 additions & 2 deletions src/schema/v2/schema.ts
Original file line number Diff line number Diff line change
Expand Up @@ -145,7 +145,7 @@ import { artworksForUser } from "./artworksForUser"
import { authenticationStatus } from "./authenticationStatus"
import { BankAccount } from "./bank_account"
import { bulkUpdateArtworksMetadataMutation } from "./partner/BulkOperation/bulkUpdateArtworksMetadataMutation"
import { bulkUpdatePartnerArtworksMutation } from "./bulkUpdatePartnerArtworksMutation"
import { artsyShippingOptInMutation } from "./partner/ArtsyShippingOptIn/artsyShippingOptInMutation"
import { CollectorProfileForUser } from "./CollectorProfile/collectorProfile"
import { CollectorProfilesConnection } from "./CollectorProfile/collectorProfiles"
import { createConsignmentInquiryMutation } from "./consignments/createConsignmentInquiryMutation"
Expand Down Expand Up @@ -429,7 +429,7 @@ export default new GraphQLSchema({
artworksCollectionsBatchUpdate: artworksCollectionsBatchUpdateMutation,
assignArtworkImportArtist: AssignArtworkImportArtistMutation,
bulkUpdateArtworksMetadata: bulkUpdateArtworksMetadataMutation,
bulkUpdatePartnerArtworks: bulkUpdatePartnerArtworksMutation,
artsyShippingOptIn: artsyShippingOptInMutation,
commerceOptIn: commerceOptInMutation,
commerceOptInReport: commerceOptInReportMutation,
createAccountRequest: createAccountRequestMutation,
Expand Down

0 comments on commit d203156

Please sign in to comment.