@gem-sdk/adapter-bigcommerce 1.11.1-experimental-f662f2d9 → 1.11.1-experimental-d7cbfa75

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. package/dist/api/operations/add-to-cart.d.ts +3 -0
  2. package/dist/api/operations/add-to-cart.d.ts.map +1 -0
  3. package/dist/api/operations/add-to-cart.js +34 -0
  4. package/dist/api/operations/create-cart.d.ts +3 -0
  5. package/dist/api/operations/create-cart.d.ts.map +1 -0
  6. package/dist/api/operations/create-cart.js +37 -0
  7. package/dist/api/operations/get-cart.d.ts +3 -0
  8. package/dist/api/operations/get-cart.d.ts.map +1 -0
  9. package/dist/api/operations/get-cart.js +29 -0
  10. package/dist/api/operations/index.d.ts +6 -0
  11. package/dist/api/operations/index.d.ts.map +1 -0
  12. package/dist/api/operations/index.js +5 -0
  13. package/dist/api/operations/remove-cart-item.d.ts +3 -0
  14. package/dist/api/operations/remove-cart-item.d.ts.map +1 -0
  15. package/dist/api/operations/remove-cart-item.js +31 -0
  16. package/dist/api/operations/update-cart-line.d.ts +3 -0
  17. package/dist/api/operations/update-cart-line.d.ts.map +1 -0
  18. package/dist/api/operations/update-cart-line.js +37 -0
  19. package/dist/graphql/fragments/cart-line.generated.d.ts +16 -0
  20. package/dist/graphql/fragments/cart-line.generated.d.ts.map +1 -0
  21. package/dist/{esm/graphql → graphql}/fragments/cart-line.generated.js +2 -4
  22. package/dist/graphql/fragments/cart.generated.d.ts +19 -0
  23. package/dist/graphql/fragments/cart.generated.d.ts.map +1 -0
  24. package/dist/{esm/graphql → graphql}/fragments/cart.generated.js +1 -3
  25. package/dist/graphql/fragments/media.generated.d.ts +4 -0
  26. package/dist/graphql/fragments/media.generated.d.ts.map +1 -0
  27. package/dist/{esm/graphql → graphql}/fragments/media.generated.js +1 -3
  28. package/dist/graphql/mutations/cart-create.generated.d.ts +32 -0
  29. package/dist/graphql/mutations/cart-create.generated.d.ts.map +1 -0
  30. package/dist/{esm/graphql → graphql}/mutations/cart-create.generated.js +4 -7
  31. package/dist/graphql/mutations/cart-discount-codes-update.generated.d.ts +34 -0
  32. package/dist/graphql/mutations/cart-discount-codes-update.generated.d.ts.map +1 -0
  33. package/dist/graphql/mutations/cart-discount-codes-update.generated.js +24 -0
  34. package/dist/graphql/mutations/cart-lines-add.generated.d.ts +34 -0
  35. package/dist/graphql/mutations/cart-lines-add.generated.d.ts.map +1 -0
  36. package/dist/{esm/graphql → graphql}/mutations/cart-lines-add.generated.js +4 -7
  37. package/dist/graphql/mutations/cart-lines-remove.generated.d.ts +34 -0
  38. package/dist/graphql/mutations/cart-lines-remove.generated.d.ts.map +1 -0
  39. package/dist/{esm/graphql → graphql}/mutations/cart-lines-remove.generated.js +4 -7
  40. package/dist/graphql/mutations/cart-lines-update.generated.d.ts +34 -0
  41. package/dist/graphql/mutations/cart-lines-update.generated.d.ts.map +1 -0
  42. package/dist/{esm/graphql → graphql}/mutations/cart-lines-update.generated.js +4 -7
  43. package/dist/graphql/queries/cart.generated.d.ts +29 -0
  44. package/dist/graphql/queries/cart.generated.d.ts.map +1 -0
  45. package/dist/{esm/graphql → graphql}/queries/cart.generated.js +4 -7
  46. package/dist/helpers/common.d.ts +3 -0
  47. package/dist/helpers/common.d.ts.map +1 -0
  48. package/dist/helpers/common.js +8 -0
  49. package/dist/helpers/normalize.d.ts +4 -0
  50. package/dist/helpers/normalize.d.ts.map +1 -0
  51. package/dist/helpers/normalize.js +46 -0
  52. package/dist/index.d.ts +2 -0
  53. package/dist/index.d.ts.map +1 -0
  54. package/dist/index.js +1 -0
  55. package/dist/types/common.d.ts +4 -0
  56. package/dist/types/common.d.ts.map +1 -0
  57. package/dist/types/common.js +1 -0
  58. package/dist/types/shop.d.ts +4864 -0
  59. package/dist/types/shop.d.ts.map +1 -0
  60. package/dist/types/shop.js +1 -0
  61. package/package.json +6 -14
  62. package/dist/cjs/api/operations/add-to-cart.js +0 -32
  63. package/dist/cjs/api/operations/create-cart.js +0 -32
  64. package/dist/cjs/api/operations/get-cart.js +0 -27
  65. package/dist/cjs/api/operations/remove-cart-item.js +0 -29
  66. package/dist/cjs/api/operations/update-cart-line.js +0 -35
  67. package/dist/cjs/graphql/fragments/cart-line.generated.js +0 -44
  68. package/dist/cjs/graphql/fragments/cart.generated.js +0 -51
  69. package/dist/cjs/graphql/fragments/media.generated.js +0 -14
  70. package/dist/cjs/graphql/mutations/cart-create.generated.js +0 -25
  71. package/dist/cjs/graphql/mutations/cart-lines-add.generated.js +0 -25
  72. package/dist/cjs/graphql/mutations/cart-lines-remove.generated.js +0 -25
  73. package/dist/cjs/graphql/mutations/cart-lines-update.generated.js +0 -25
  74. package/dist/cjs/graphql/queries/cart.generated.js +0 -18
  75. package/dist/cjs/helpers/common.js +0 -15
  76. package/dist/cjs/helpers/normalize.js +0 -48
  77. package/dist/cjs/index.js +0 -15
  78. package/dist/esm/api/operations/add-to-cart.js +0 -30
  79. package/dist/esm/api/operations/create-cart.js +0 -30
  80. package/dist/esm/api/operations/get-cart.js +0 -25
  81. package/dist/esm/api/operations/remove-cart-item.js +0 -27
  82. package/dist/esm/api/operations/update-cart-line.js +0 -33
  83. package/dist/esm/helpers/common.js +0 -13
  84. package/dist/esm/helpers/normalize.js +0 -46
  85. package/dist/esm/index.js +0 -5
  86. package/dist/types/index.d.ts +0 -13
@@ -0,0 +1 @@
1
+ export {};
package/package.json CHANGED
@@ -1,9 +1,10 @@
1
1
  {
2
2
  "name": "@gem-sdk/adapter-bigcommerce",
3
- "version": "1.11.1-experimental-f662f2d9",
3
+ "version": "1.11.1-experimental-d7cbfa75",
4
4
  "license": "MIT",
5
5
  "sideEffects": false,
6
- "main": "dist/cjs/index.js",
6
+ "main": "dist/index.js",
7
+ "types": "dist/index.d.ts",
7
8
  "files": [
8
9
  "dist"
9
10
  ],
@@ -13,7 +14,8 @@
13
14
  "pre:publish": "node ./../../helpers/convert-publish.js -p",
14
15
  "post:publish": "node ./../../helpers/convert-publish.js",
15
16
  "watch": "rollup -c ./../../helpers/rollup.config.mjs -w",
16
- "build": "rollup -c ./../../helpers/rollup.config.mjs --environment NODE_ENV:production",
17
+ "build:rollup": "rollup -c ./../../helpers/rollup.config.mjs --environment NODE_ENV:production",
18
+ "build": "tsc -p tsconfig.build.json",
17
19
  "lint": "eslint ./src --ext .tsx,.ts,.gql",
18
20
  "type-check": "yarn tsc --noEmit",
19
21
  "test": "jest -c ./../../helpers/jest.config.ts",
@@ -23,16 +25,6 @@
23
25
  "typegen": "graphql-codegen --config codegen/codegen.yml"
24
26
  },
25
27
  "devDependencies": {
26
- "@gem-sdk/adapter-common": "1.11.1-experimental-f662f2d9"
27
- },
28
- "module": "dist/esm/index.js",
29
- "types": "dist/types/index.d.ts",
30
- "exports": {
31
- "./package.json": "./package.json",
32
- ".": {
33
- "import": "./dist/esm/index.js",
34
- "require": "./dist/cjs/index.js",
35
- "types": "./dist/types/index.d.ts"
36
- }
28
+ "@gem-sdk/adapter-common": "1.11.1-experimental-d7cbfa75"
37
29
  }
38
30
  }
@@ -1,32 +0,0 @@
1
- 'use strict';
2
-
3
- var cartLinesAdd_generated = require('../../graphql/mutations/cart-lines-add.generated.js');
4
- var common = require('../../helpers/common.js');
5
- var normalize = require('../../helpers/normalize.js');
6
-
7
- const addToCartOperation = (config) => {
8
- const addToCart = async (args) => {
9
- if (!config.storefrontUrl) {
10
- throw new Error('Shop is not connected');
11
- }
12
- const variables = {
13
- cartId: args.cartId,
14
- platform: 3,
15
- lines: args.lines.map((v) => ({
16
- quantity: v.quantity,
17
- merchandiseId: v.variantId,
18
- })),
19
- };
20
- const res = await fetch(config.storefrontUrl, {
21
- ...common.composeRequest(config),
22
- body: JSON.stringify({ query: cartLinesAdd_generated.CartLinesAddDocument, variables }),
23
- }).then((res) => res.json());
24
- if (!res.data?.cartLinesAdd?.cart) {
25
- return Promise.reject("Can't add to cart");
26
- }
27
- return normalize.normalizeCart(res.data.cartLinesAdd.cart);
28
- };
29
- return addToCart;
30
- };
31
-
32
- exports.addToCartOperation = addToCartOperation;
@@ -1,32 +0,0 @@
1
- 'use strict';
2
-
3
- var cartCreate_generated = require('../../graphql/mutations/cart-create.generated.js');
4
- var common = require('../../helpers/common.js');
5
- var normalize = require('../../helpers/normalize.js');
6
-
7
- const createCartOperation = (config) => {
8
- const createCart = async (args) => {
9
- if (!config.storefrontUrl) {
10
- throw new Error('Shop is not connected');
11
- }
12
- const variables = {
13
- input: {
14
- lines: args.items.map((v) => ({
15
- quantity: v.quantity ?? 1,
16
- merchandiseId: v.variantId,
17
- })),
18
- },
19
- };
20
- const res = await fetch(config.storefrontUrl, {
21
- ...common.composeRequest(config),
22
- body: JSON.stringify({ query: cartCreate_generated.CartCreateDocument, variables }),
23
- }).then((res) => res.json());
24
- if (!res.data?.cartCreate?.cart) {
25
- return Promise.reject("Can't create cart");
26
- }
27
- return normalize.normalizeCart(res.data.cartCreate.cart);
28
- };
29
- return createCart;
30
- };
31
-
32
- exports.createCartOperation = createCartOperation;
@@ -1,27 +0,0 @@
1
- 'use strict';
2
-
3
- var cart_generated = require('../../graphql/queries/cart.generated.js');
4
- var common = require('../../helpers/common.js');
5
- var normalize = require('../../helpers/normalize.js');
6
-
7
- const getCartOperation = (config) => {
8
- const getCart = async (args) => {
9
- if (!config.storefrontUrl) {
10
- throw new Error('Shop is not connected');
11
- }
12
- const variables = {
13
- id: args.cartId,
14
- };
15
- const res = await fetch(config.storefrontUrl, {
16
- ...common.composeRequest(config),
17
- body: JSON.stringify({ query: cart_generated.CartDocument, variables }),
18
- }).then((res) => res.json());
19
- if (!res.data?.cart) {
20
- return undefined;
21
- }
22
- return normalize.normalizeCart(res.data.cart);
23
- };
24
- return getCart;
25
- };
26
-
27
- exports.getCartOperation = getCartOperation;
@@ -1,29 +0,0 @@
1
- 'use strict';
2
-
3
- var cartLinesRemove_generated = require('../../graphql/mutations/cart-lines-remove.generated.js');
4
- var common = require('../../helpers/common.js');
5
- var normalize = require('../../helpers/normalize.js');
6
-
7
- const removeCartItemOperation = (config) => {
8
- const removeCartItem = async (args) => {
9
- if (!config.storefrontUrl) {
10
- throw new Error('Shop is not connected');
11
- }
12
- const variables = {
13
- cartId: args.cartId,
14
- lineIds: [args.lineId],
15
- platform: 3,
16
- };
17
- const res = await fetch(config.storefrontUrl, {
18
- ...common.composeRequest(config),
19
- body: JSON.stringify({ query: cartLinesRemove_generated.CartLinesRemoveDocument, variables }),
20
- }).then((res) => res.json());
21
- if (!res.data?.cartLinesRemove?.cart) {
22
- return Promise.reject("Can't remove cart");
23
- }
24
- return normalize.normalizeCart(res.data.cartLinesRemove.cart);
25
- };
26
- return removeCartItem;
27
- };
28
-
29
- exports.removeCartItemOperation = removeCartItemOperation;
@@ -1,35 +0,0 @@
1
- 'use strict';
2
-
3
- var cartLinesUpdate_generated = require('../../graphql/mutations/cart-lines-update.generated.js');
4
- var common = require('../../helpers/common.js');
5
- var normalize = require('../../helpers/normalize.js');
6
-
7
- const updateCartLineOperation = (config) => {
8
- const updateCartLine = async (args) => {
9
- if (!config.storefrontUrl) {
10
- throw new Error('Shop is not connected');
11
- }
12
- const variables = {
13
- cartId: args.cartId,
14
- platform: 3,
15
- lines: [
16
- {
17
- id: args.line.id,
18
- quantity: args.line.quantity,
19
- merchandiseId: args.line.variantId,
20
- },
21
- ],
22
- };
23
- const res = await fetch(config.storefrontUrl, {
24
- ...common.composeRequest(config),
25
- body: JSON.stringify({ query: cartLinesUpdate_generated.CartLinesUpdateDocument, variables }),
26
- }).then((res) => res.json());
27
- if (!res.data?.cartLinesUpdate?.cart) {
28
- return Promise.reject("Can't update cart");
29
- }
30
- return normalize.normalizeCart(res.data.cartLinesUpdate.cart);
31
- };
32
- return updateCartLine;
33
- };
34
-
35
- exports.updateCartLineOperation = updateCartLineOperation;
@@ -1,44 +0,0 @@
1
- 'use strict';
2
-
3
- const CartProductVariantSelect = `
4
- fragment CartProductVariantSelect on ProductVariant {
5
- id
6
- title
7
- sku
8
- price
9
- salePrice
10
- costPrice
11
- selectedOptions {
12
- name
13
- value
14
- }
15
- media {
16
- ...MediaSelect
17
- }
18
- baseID
19
- product {
20
- id
21
- handle
22
- title
23
- }
24
- weight
25
- width
26
- height
27
- length
28
- isDigital
29
- }
30
- `;
31
- const CartLineSelect = `
32
- fragment CartLineSelect on CartLine {
33
- id
34
- quantity
35
- variant {
36
- ... on ProductVariant {
37
- ...CartProductVariantSelect
38
- }
39
- }
40
- }
41
- `;
42
-
43
- exports.CartLineSelect = CartLineSelect;
44
- exports.CartProductVariantSelect = CartProductVariantSelect;
@@ -1,51 +0,0 @@
1
- 'use strict';
2
-
3
- const CartSelect = `
4
- fragment CartSelect on Cart {
5
- id
6
- attribute {
7
- id
8
- key
9
- value
10
- }
11
- customer {
12
- id
13
- email
14
- firstName
15
- lastName
16
- }
17
- baseId
18
- checkoutUrl
19
- createdAt
20
- deletedAt
21
- discountCodes {
22
- applicable
23
- code
24
- id
25
- }
26
- lines(after: $after, before: $before, first: $first, last: $last, query: $query) {
27
- totalCount
28
- edges {
29
- cursor
30
- node {
31
- ...CartLineSelect
32
- }
33
- }
34
- }
35
- note
36
- platform
37
- subtotalAmount
38
- subtotalAmountCurrencyCode
39
- totalAmount
40
- totalAmountCurrencyCode
41
- totalDiscountedAmount
42
- totalDutyAmount
43
- totalDutyAmountCurrencyCode
44
- totalQuantity
45
- totalTaxAmount
46
- totalTaxAmountCurrencyCode
47
- updatedAt
48
- }
49
- `;
50
-
51
- exports.CartSelect = CartSelect;
@@ -1,14 +0,0 @@
1
- 'use strict';
2
-
3
- const MediaSelect = `
4
- fragment MediaSelect on Media {
5
- alt
6
- src
7
- id
8
- width
9
- height
10
- contentType
11
- }
12
- `;
13
-
14
- exports.MediaSelect = MediaSelect;
@@ -1,25 +0,0 @@
1
- 'use strict';
2
-
3
- var cart_generated = require('../fragments/cart.generated.js');
4
- var cartLine_generated = require('../fragments/cart-line.generated.js');
5
- var media_generated = require('../fragments/media.generated.js');
6
-
7
- const CartCreateDocument = `
8
- mutation cartCreate($after: Cursor, $before: Cursor, $first: Int = 50, $last: Int, $query: CartLineWhereInput, $input: CartInput!) {
9
- cartCreate(input: $input) {
10
- cart {
11
- ...CartSelect
12
- }
13
- userErrors {
14
- code
15
- field
16
- message
17
- }
18
- }
19
- }
20
- ${cart_generated.CartSelect}
21
- ${cartLine_generated.CartLineSelect}
22
- ${cartLine_generated.CartProductVariantSelect}
23
- ${media_generated.MediaSelect}`;
24
-
25
- exports.CartCreateDocument = CartCreateDocument;
@@ -1,25 +0,0 @@
1
- 'use strict';
2
-
3
- var cart_generated = require('../fragments/cart.generated.js');
4
- var cartLine_generated = require('../fragments/cart-line.generated.js');
5
- var media_generated = require('../fragments/media.generated.js');
6
-
7
- const CartLinesAddDocument = `
8
- mutation cartLinesAdd($after: Cursor, $before: Cursor, $first: Int = 50, $last: Int, $query: CartLineWhereInput, $cartId: ID!, $lines: [CartLineInput!]!, $platform: Int!) {
9
- cartLinesAdd(cartId: $cartId, lines: $lines, platform: $platform) {
10
- cart {
11
- ...CartSelect
12
- }
13
- userErrors {
14
- code
15
- field
16
- message
17
- }
18
- }
19
- }
20
- ${cart_generated.CartSelect}
21
- ${cartLine_generated.CartLineSelect}
22
- ${cartLine_generated.CartProductVariantSelect}
23
- ${media_generated.MediaSelect}`;
24
-
25
- exports.CartLinesAddDocument = CartLinesAddDocument;
@@ -1,25 +0,0 @@
1
- 'use strict';
2
-
3
- var cart_generated = require('../fragments/cart.generated.js');
4
- var cartLine_generated = require('../fragments/cart-line.generated.js');
5
- var media_generated = require('../fragments/media.generated.js');
6
-
7
- const CartLinesRemoveDocument = `
8
- mutation cartLinesRemove($after: Cursor, $before: Cursor, $first: Int = 50, $last: Int, $query: CartLineWhereInput, $cartId: ID!, $lineIds: [ID!]!, $platform: Int!) {
9
- cartLinesRemove(cartId: $cartId, lineIds: $lineIds, platform: $platform) {
10
- cart {
11
- ...CartSelect
12
- }
13
- userErrors {
14
- code
15
- field
16
- message
17
- }
18
- }
19
- }
20
- ${cart_generated.CartSelect}
21
- ${cartLine_generated.CartLineSelect}
22
- ${cartLine_generated.CartProductVariantSelect}
23
- ${media_generated.MediaSelect}`;
24
-
25
- exports.CartLinesRemoveDocument = CartLinesRemoveDocument;
@@ -1,25 +0,0 @@
1
- 'use strict';
2
-
3
- var cart_generated = require('../fragments/cart.generated.js');
4
- var cartLine_generated = require('../fragments/cart-line.generated.js');
5
- var media_generated = require('../fragments/media.generated.js');
6
-
7
- const CartLinesUpdateDocument = `
8
- mutation cartLinesUpdate($after: Cursor, $before: Cursor, $first: Int = 50, $last: Int, $query: CartLineWhereInput, $cartId: ID!, $lines: [CartLineUpdateInput!]!, $platform: Int!) {
9
- cartLinesUpdate(cartId: $cartId, lines: $lines, platform: $platform) {
10
- cart {
11
- ...CartSelect
12
- }
13
- userErrors {
14
- code
15
- field
16
- message
17
- }
18
- }
19
- }
20
- ${cart_generated.CartSelect}
21
- ${cartLine_generated.CartLineSelect}
22
- ${cartLine_generated.CartProductVariantSelect}
23
- ${media_generated.MediaSelect}`;
24
-
25
- exports.CartLinesUpdateDocument = CartLinesUpdateDocument;
@@ -1,18 +0,0 @@
1
- 'use strict';
2
-
3
- var cart_generated = require('../fragments/cart.generated.js');
4
- var cartLine_generated = require('../fragments/cart-line.generated.js');
5
- var media_generated = require('../fragments/media.generated.js');
6
-
7
- const CartDocument = `
8
- query cart($after: Cursor, $before: Cursor, $first: Int = 50, $last: Int, $query: CartLineWhereInput, $id: ID!) {
9
- cart(id: $id) {
10
- ...CartSelect
11
- }
12
- }
13
- ${cart_generated.CartSelect}
14
- ${cartLine_generated.CartLineSelect}
15
- ${cartLine_generated.CartProductVariantSelect}
16
- ${media_generated.MediaSelect}`;
17
-
18
- exports.CartDocument = CartDocument;
@@ -1,15 +0,0 @@
1
- 'use strict';
2
-
3
- const composeRequest = (config) => {
4
- return {
5
- method: 'POST',
6
- headers: {
7
- 'Content-Type': 'application/json',
8
- ...(config.storefrontToken
9
- ? { 'X-Bigcommerce-Storefront-Access-Token': config.storefrontToken }
10
- : {}),
11
- },
12
- };
13
- };
14
-
15
- exports.composeRequest = composeRequest;
@@ -1,48 +0,0 @@
1
- 'use strict';
2
-
3
- const normalizeLineItem = (item) => {
4
- const { quantity, id, variant } = item;
5
- return {
6
- id: id ?? '',
7
- quantity,
8
- name: variant?.title ?? '',
9
- productTitle: variant?.product?.title ?? '',
10
- variant: {
11
- id: variant?.id ?? '',
12
- sku: variant?.sku ?? '',
13
- name: variant?.title ?? '',
14
- image: variant?.media?.src
15
- ? {
16
- url: variant.media.src,
17
- }
18
- : undefined,
19
- requiresShipping: false,
20
- price: variant?.price ?? 0,
21
- listPrice: 0,
22
- },
23
- variantId: variant?.id ?? '',
24
- productId: variant?.product?.id ?? '',
25
- path: variant?.product?.handle,
26
- discounts: [],
27
- };
28
- };
29
- const normalizeCart = (cart) => {
30
- return {
31
- createdAt: cart.createdAt,
32
- id: cart.id,
33
- customerId: cart.customer?.id,
34
- email: cart.customer?.email,
35
- lineItems: cart.lines?.edges?.map((node) => normalizeLineItem(node.node)) ?? [],
36
- subtotalPrice: cart.subtotalAmount ? +cart.subtotalAmount : 0,
37
- totalPrice: cart.totalAmount ? +cart.totalAmount : 0,
38
- currency: {
39
- code: cart.totalAmountCurrencyCode,
40
- },
41
- taxesIncluded: true,
42
- discounts: [],
43
- lineItemsSubtotalPrice: cart.subtotalAmount ? +cart.subtotalAmount : 0,
44
- checkoutUrl: cart.checkoutUrl,
45
- };
46
- };
47
-
48
- exports.normalizeCart = normalizeCart;
package/dist/cjs/index.js DELETED
@@ -1,15 +0,0 @@
1
- 'use strict';
2
-
3
- var addToCart = require('./api/operations/add-to-cart.js');
4
- var createCart = require('./api/operations/create-cart.js');
5
- var getCart = require('./api/operations/get-cart.js');
6
- var removeCartItem = require('./api/operations/remove-cart-item.js');
7
- var updateCartLine = require('./api/operations/update-cart-line.js');
8
-
9
-
10
-
11
- exports.addToCartOperation = addToCart.addToCartOperation;
12
- exports.createCartOperation = createCart.createCartOperation;
13
- exports.getCartOperation = getCart.getCartOperation;
14
- exports.removeCartItemOperation = removeCartItem.removeCartItemOperation;
15
- exports.updateCartLineOperation = updateCartLine.updateCartLineOperation;
@@ -1,30 +0,0 @@
1
- import { CartLinesAddDocument } from '../../graphql/mutations/cart-lines-add.generated.js';
2
- import { composeRequest } from '../../helpers/common.js';
3
- import { normalizeCart } from '../../helpers/normalize.js';
4
-
5
- const addToCartOperation = (config) => {
6
- const addToCart = async (args) => {
7
- if (!config.storefrontUrl) {
8
- throw new Error('Shop is not connected');
9
- }
10
- const variables = {
11
- cartId: args.cartId,
12
- platform: 3,
13
- lines: args.lines.map((v) => ({
14
- quantity: v.quantity,
15
- merchandiseId: v.variantId,
16
- })),
17
- };
18
- const res = await fetch(config.storefrontUrl, {
19
- ...composeRequest(config),
20
- body: JSON.stringify({ query: CartLinesAddDocument, variables }),
21
- }).then((res) => res.json());
22
- if (!res.data?.cartLinesAdd?.cart) {
23
- return Promise.reject("Can't add to cart");
24
- }
25
- return normalizeCart(res.data.cartLinesAdd.cart);
26
- };
27
- return addToCart;
28
- };
29
-
30
- export { addToCartOperation };
@@ -1,30 +0,0 @@
1
- import { CartCreateDocument } from '../../graphql/mutations/cart-create.generated.js';
2
- import { composeRequest } from '../../helpers/common.js';
3
- import { normalizeCart } from '../../helpers/normalize.js';
4
-
5
- const createCartOperation = (config) => {
6
- const createCart = async (args) => {
7
- if (!config.storefrontUrl) {
8
- throw new Error('Shop is not connected');
9
- }
10
- const variables = {
11
- input: {
12
- lines: args.items.map((v) => ({
13
- quantity: v.quantity ?? 1,
14
- merchandiseId: v.variantId,
15
- })),
16
- },
17
- };
18
- const res = await fetch(config.storefrontUrl, {
19
- ...composeRequest(config),
20
- body: JSON.stringify({ query: CartCreateDocument, variables }),
21
- }).then((res) => res.json());
22
- if (!res.data?.cartCreate?.cart) {
23
- return Promise.reject("Can't create cart");
24
- }
25
- return normalizeCart(res.data.cartCreate.cart);
26
- };
27
- return createCart;
28
- };
29
-
30
- export { createCartOperation };
@@ -1,25 +0,0 @@
1
- import { CartDocument } from '../../graphql/queries/cart.generated.js';
2
- import { composeRequest } from '../../helpers/common.js';
3
- import { normalizeCart } from '../../helpers/normalize.js';
4
-
5
- const getCartOperation = (config) => {
6
- const getCart = async (args) => {
7
- if (!config.storefrontUrl) {
8
- throw new Error('Shop is not connected');
9
- }
10
- const variables = {
11
- id: args.cartId,
12
- };
13
- const res = await fetch(config.storefrontUrl, {
14
- ...composeRequest(config),
15
- body: JSON.stringify({ query: CartDocument, variables }),
16
- }).then((res) => res.json());
17
- if (!res.data?.cart) {
18
- return undefined;
19
- }
20
- return normalizeCart(res.data.cart);
21
- };
22
- return getCart;
23
- };
24
-
25
- export { getCartOperation };
@@ -1,27 +0,0 @@
1
- import { CartLinesRemoveDocument } from '../../graphql/mutations/cart-lines-remove.generated.js';
2
- import { composeRequest } from '../../helpers/common.js';
3
- import { normalizeCart } from '../../helpers/normalize.js';
4
-
5
- const removeCartItemOperation = (config) => {
6
- const removeCartItem = async (args) => {
7
- if (!config.storefrontUrl) {
8
- throw new Error('Shop is not connected');
9
- }
10
- const variables = {
11
- cartId: args.cartId,
12
- lineIds: [args.lineId],
13
- platform: 3,
14
- };
15
- const res = await fetch(config.storefrontUrl, {
16
- ...composeRequest(config),
17
- body: JSON.stringify({ query: CartLinesRemoveDocument, variables }),
18
- }).then((res) => res.json());
19
- if (!res.data?.cartLinesRemove?.cart) {
20
- return Promise.reject("Can't remove cart");
21
- }
22
- return normalizeCart(res.data.cartLinesRemove.cart);
23
- };
24
- return removeCartItem;
25
- };
26
-
27
- export { removeCartItemOperation };
@@ -1,33 +0,0 @@
1
- import { CartLinesUpdateDocument } from '../../graphql/mutations/cart-lines-update.generated.js';
2
- import { composeRequest } from '../../helpers/common.js';
3
- import { normalizeCart } from '../../helpers/normalize.js';
4
-
5
- const updateCartLineOperation = (config) => {
6
- const updateCartLine = async (args) => {
7
- if (!config.storefrontUrl) {
8
- throw new Error('Shop is not connected');
9
- }
10
- const variables = {
11
- cartId: args.cartId,
12
- platform: 3,
13
- lines: [
14
- {
15
- id: args.line.id,
16
- quantity: args.line.quantity,
17
- merchandiseId: args.line.variantId,
18
- },
19
- ],
20
- };
21
- const res = await fetch(config.storefrontUrl, {
22
- ...composeRequest(config),
23
- body: JSON.stringify({ query: CartLinesUpdateDocument, variables }),
24
- }).then((res) => res.json());
25
- if (!res.data?.cartLinesUpdate?.cart) {
26
- return Promise.reject("Can't update cart");
27
- }
28
- return normalizeCart(res.data.cartLinesUpdate.cart);
29
- };
30
- return updateCartLine;
31
- };
32
-
33
- export { updateCartLineOperation };