Skip to content
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

Product(Object) to Product(Interface) #159

Merged

Conversation

kidunot89
Copy link
Member

@kidunot89 kidunot89 commented Oct 24, 2019

Your checklist for this pull request

Thanks for sending a pull request! Please make sure you click the link above to view the contribution guidelines, then fill out the blanks below.

🚨Please review the guidelines for contributing to this repository.

  • Make sure you are making a pull request against the develop branch (left side). Also you should start your branch off our develop.
  • Make sure you are requesting to pull request from a topic/feature/bugfix branch (right side). Don't pull request from your master!

What does this implement/fix? Explain your changes.

Changes Product from WPObjectType to WPInterfaceType

New object types

  • SimpleProduct
  • VariableProduct
  • ExternalProduct
  • GroupProduct

New union types

  • ProductUnion

Removed types

  • Product
query {
  product(id: "some-id") {
    id
    name
    ... on VariableProduct {
      id
      name
      variations {
        nodes {
          id
          name
        }
      }
    }
  }
  productBy(productId: 1000) {
    id
    name
    ... on SimpleProduct {
      id
      name
    }
  }
  products {
    nodes {
      id
      name
      ... on SimpleProduct {
        id
        name
        salePrice
        regularPrice
        price
      }
      ... on ExternalProduct {
        id
        name
        buttonText
        externalUrl
      }
      ... on GroupProduct {
        id
        name
        addToCartText
        addToCartDescription
        products {
          nodes {
            ... on SimpleProduct {
              id
              name
              salePrice
              regularPrice
              price
            }
          }
        }
      }
    }
  }
}

Does this close any currently open issues?

Any relevant logs, error output, GraphiQL screenshots, etc?

(If it’s long, please paste to https://ghostbin.com/ and insert the link here.)

Any other comments?

Where has this been tested?

Operating System: Linux Mint 19.2

WordPress Version: 5.2.3

@kidunot89 kidunot89 added enhancement New feature or request work in progress Solution development in progress breaking change Solution will break some older solutions new types Feature adds a new type(s) new fields Feature adds new fields to existing types labels Oct 24, 2019
@kidunot89 kidunot89 added this to the v0.3.0 milestone Oct 24, 2019
@kidunot89 kidunot89 self-assigned this Oct 24, 2019
@kidunot89 kidunot89 changed the title Product to ProductInterface Product(Object) to Product(Interface) Oct 25, 2019
@kidunot89 kidunot89 merged commit 9fef297 into wp-graphql:release-v0.3.0 Oct 25, 2019
@kidunot89 kidunot89 deleted the feature/product-interface branch October 25, 2019 23:00
@kidunot89 kidunot89 removed the work in progress Solution development in progress label Oct 25, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
breaking change Solution will break some older solutions enhancement New feature or request new fields Feature adds new fields to existing types new types Feature adds a new type(s)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant