api-extensions.ts 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. import gql from 'graphql-tag';
  2. const productBundleAdminApiExtensions = gql`
  3. type ProductBundle implements Node {
  4. id: ID!
  5. createdAt: DateTime!
  6. updatedAt: DateTime!
  7. name: String!
  8. description: String!
  9. }
  10. type ProductBundleItem {
  11. productVariant: ProductVariant!
  12. price: Money!
  13. quantity: Int!
  14. }
  15. type ProductBundleList implements PaginatedList {
  16. items: [ProductBundle!]!
  17. totalItems: Int!
  18. }
  19. # Generated at run-time by Vendure
  20. input ProductBundleListOptions
  21. extend type Query {
  22. productBundle(id: ID!): ProductBundle
  23. productBundles(options: ProductBundleListOptions): ProductBundleList!
  24. }
  25. input CreateProductBundleInput {
  26. name: String!
  27. description: String!
  28. }
  29. input UpdateProductBundleInput {
  30. id: ID!
  31. name: String
  32. description: String
  33. }
  34. input CreateProductBundleItemInput {
  35. bundleId: ID!
  36. productVariantId: ID!
  37. price: Money!
  38. quantity: Int!
  39. }
  40. input UpdateProductBundleItemInput {
  41. id: ID!
  42. price: Money
  43. quantity: Int
  44. }
  45. extend type Mutation {
  46. createProductBundle(input: CreateProductBundleInput!): ProductBundle!
  47. updateProductBundle(input: UpdateProductBundleInput!): ProductBundle!
  48. deleteProductBundle(id: ID!): DeletionResponse!
  49. createProductBundleItem(input: CreateProductBundleItemInput!): ProductBundleItem!
  50. updateProductBundleItem(input: UpdateProductBundleItemInput!): ProductBundleItem!
  51. deleteProductBundleItem(id: ID!): DeletionResponse!
  52. }
  53. `;
  54. export const adminApiExtensions = gql`
  55. ${productBundleAdminApiExtensions}
  56. `;
  57. export const shopApiExtensions = gql`
  58. extend type Mutation {
  59. addProductBundleToOrder(bundleId: ID!): UpdateOrderItemsResult!
  60. removeProductBundleFromOrder(bundleId: ID!): RemoveOrderItemsResult!
  61. }
  62. `;