@pintahub/shopify-api 2.3.5 → 2.3.7

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.
@@ -0,0 +1,11 @@
1
+ import { AdminApiClient } from "@shopify/admin-api-client/dist/ts/graphql/types";
2
+ import { ActionBuilder } from "../../ActionBuilder";
3
+ import { ProductCreateInput } from "../../../input/ProductCreateInput";
4
+ export interface NextCreateProductInput extends Record<string, any> {
5
+ product: ProductCreateInput;
6
+ }
7
+ export interface NextCreateProductOutput extends Record<string, any> {
8
+ }
9
+ export declare class NextCreateProduct extends ActionBuilder<AdminApiClient, NextCreateProductInput, NextCreateProductOutput> {
10
+ run(args: NextCreateProductInput): Promise<NextCreateProductOutput>;
11
+ }
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.NextCreateProduct = void 0;
13
+ const ActionBuilder_1 = require("../../ActionBuilder");
14
+ const handleErrors_1 = require("../../../utils/handleErrors");
15
+ class NextCreateProduct extends ActionBuilder_1.ActionBuilder {
16
+ run(args) {
17
+ return __awaiter(this, void 0, void 0, function* () {
18
+ const query = `
19
+ mutation createProductAsynchronous($productSet: ProductSetInput!, $synchronous: Boolean!) {
20
+ productSet(synchronous: $synchronous, input: $productSet) {
21
+ product {
22
+ id
23
+ title
24
+ handle
25
+ status
26
+ productType
27
+ vendor
28
+ }
29
+ userErrors {
30
+ code
31
+ field
32
+ message
33
+ }
34
+ }
35
+ }
36
+ `;
37
+ const { product } = Object.assign({}, args);
38
+ const result = yield this.client.request(query, {
39
+ variables: {
40
+ synchronous: true,
41
+ productSet: product
42
+ }
43
+ });
44
+ const { data, errors } = Object.assign({}, result);
45
+ yield (0, handleErrors_1.handleErrors)(errors);
46
+ const { productSet } = data;
47
+ const { product: newProduct } = Object.assign({}, productSet);
48
+ return Object.assign({}, newProduct);
49
+ });
50
+ }
51
+ }
52
+ exports.NextCreateProduct = NextCreateProduct;
@@ -0,0 +1,11 @@
1
+ import { AdminApiClient } from "@shopify/admin-api-client/dist/ts/graphql/types";
2
+ import { ActionBuilder } from "../../ActionBuilder";
3
+ export interface PublishProductInput extends Record<string, any> {
4
+ id: string;
5
+ publicationId: string;
6
+ }
7
+ export interface PublishProductOutput extends Record<string, any> {
8
+ }
9
+ export declare class PublishProduct extends ActionBuilder<AdminApiClient, PublishProductInput, PublishProductOutput> {
10
+ run(args: PublishProductInput): Promise<PublishProductOutput>;
11
+ }
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.PublishProduct = void 0;
13
+ const ActionBuilder_1 = require("../../ActionBuilder");
14
+ const getGlobalID_1 = require("../../../utils/getGlobalID");
15
+ const handleErrors_1 = require("../../../utils/handleErrors");
16
+ class PublishProduct extends ActionBuilder_1.ActionBuilder {
17
+ run(args) {
18
+ return __awaiter(this, void 0, void 0, function* () {
19
+ const query = `
20
+ mutation publishablePublish($id: ID!, $input: [PublicationInput!]!) {
21
+ publishablePublish(id: $id, input: $input) {
22
+ publishable {
23
+ availablePublicationsCount {
24
+ count
25
+ }
26
+ resourcePublicationsCount {
27
+ count
28
+ }
29
+ }
30
+ userErrors {
31
+ field
32
+ message
33
+ }
34
+ }
35
+ }
36
+ `;
37
+ const { id, publicationId } = Object.assign({}, args);
38
+ const productId = (0, getGlobalID_1.getGlobalID)(id, 'Product');
39
+ const pubId = (0, getGlobalID_1.getGlobalID)(publicationId, 'Publication');
40
+ const newArgs = {
41
+ id: productId,
42
+ input: {
43
+ publicationId: pubId
44
+ }
45
+ };
46
+ const { data, errors } = yield this.client.request(query, {
47
+ variables: newArgs
48
+ });
49
+ yield (0, handleErrors_1.handleErrors)(errors);
50
+ const { publishablePublish } = Object.assign({}, data);
51
+ const { publishable } = Object.assign({}, publishablePublish);
52
+ return Object.assign({}, publishable);
53
+ });
54
+ }
55
+ }
56
+ exports.PublishProduct = PublishProduct;
@@ -11,10 +11,13 @@ import { UpdateProductOptionInput, UpdateProductOptionOutput } from "./UpdatePro
11
11
  import { GetProductOptionsInput, GetProductOptionsOutput } from "./GetProductOptions";
12
12
  import { ReorderMediaInput, ReorderMediaOutput } from "./ReorderMedia";
13
13
  import { CreateProductInput, CreateProductOutput } from "./CreateProduct";
14
+ import { PublishProductInput, PublishProductOutput } from "./PublishProduct";
15
+ import { NextCreateProductInput, NextCreateProductOutput } from "./NextCreateProduct";
14
16
  export interface AdminProductsAPIInterface {
15
17
  search(args: SearchProductsInput): Promise<SearchProductsOutput>;
16
18
  get(args: GetProductInput): Promise<GetProductOutput>;
17
19
  create(args: CreateProductInput): Promise<CreateProductOutput>;
20
+ createV2(args: NextCreateProductInput): Promise<NextCreateProductOutput>;
18
21
  getOptions(args: GetProductOptionsInput): Promise<GetProductOptionsOutput>;
19
22
  update(args: UpdateProductInput): Promise<UpdateProductOutput>;
20
23
  delete(args: DeleteProductInput): Promise<DeleteProductOutput>;
@@ -23,12 +26,14 @@ export interface AdminProductsAPIInterface {
23
26
  deleteMedia(args: DeleteProductMediaInput): Promise<DeleteProductMediaOutput>;
24
27
  updateOption(args: UpdateProductOptionInput): Promise<UpdateProductOptionOutput>;
25
28
  reorderMedia(args: ReorderMediaInput): Promise<ReorderMediaOutput>;
29
+ publish(args: PublishProductInput): Promise<PublishProductOutput>;
26
30
  }
27
31
  export declare class AdminProductsAPI extends APIBase<AdminApiClient> implements AdminProductsAPIInterface {
28
32
  private _runAction;
29
33
  search(args: SearchProductsInput): Promise<SearchProductsOutput>;
30
34
  get(args: GetProductInput): Promise<GetProductOutput>;
31
35
  create(args: CreateProductInput): Promise<CreateProductOutput>;
36
+ createV2(args: NextCreateProductInput): Promise<NextCreateProductOutput>;
32
37
  getOptions(args: GetProductOptionsInput): Promise<GetProductOptionsOutput>;
33
38
  update(args: UpdateProductInput): Promise<UpdateProductOutput>;
34
39
  delete(args: DeleteProductInput): Promise<DeleteProductOutput>;
@@ -37,4 +42,5 @@ export declare class AdminProductsAPI extends APIBase<AdminApiClient> implements
37
42
  deleteMedia(args: DeleteProductMediaInput): Promise<DeleteProductMediaOutput>;
38
43
  updateOption(args: UpdateProductOptionInput): Promise<UpdateProductOptionOutput>;
39
44
  reorderMedia(args: ReorderMediaInput): Promise<ReorderMediaOutput>;
45
+ publish(args: PublishProductInput): Promise<PublishProductOutput>;
40
46
  }
@@ -22,6 +22,8 @@ const UpdateProductOption_1 = require("./UpdateProductOption");
22
22
  const GetProductOptions_1 = require("./GetProductOptions");
23
23
  const ReorderMedia_1 = require("./ReorderMedia");
24
24
  const CreateProduct_1 = require("./CreateProduct");
25
+ const PublishProduct_1 = require("./PublishProduct");
26
+ const NextCreateProduct_1 = require("./NextCreateProduct");
25
27
  class AdminProductsAPI extends APIBase_1.APIBase {
26
28
  _runAction(Action, args) {
27
29
  return __awaiter(this, void 0, void 0, function* () {
@@ -44,6 +46,11 @@ class AdminProductsAPI extends APIBase_1.APIBase {
44
46
  return this._runAction(CreateProduct_1.CreateProduct, args);
45
47
  });
46
48
  }
49
+ createV2(args) {
50
+ return __awaiter(this, void 0, void 0, function* () {
51
+ return this._runAction(NextCreateProduct_1.NextCreateProduct, args);
52
+ });
53
+ }
47
54
  getOptions(args) {
48
55
  return __awaiter(this, void 0, void 0, function* () {
49
56
  return this._runAction(GetProductOptions_1.GetProductOptions, args);
@@ -84,5 +91,10 @@ class AdminProductsAPI extends APIBase_1.APIBase {
84
91
  return this._runAction(ReorderMedia_1.ReorderMedia, args);
85
92
  });
86
93
  }
94
+ publish(args) {
95
+ return __awaiter(this, void 0, void 0, function* () {
96
+ return this._runAction(PublishProduct_1.PublishProduct, args);
97
+ });
98
+ }
87
99
  }
88
100
  exports.AdminProductsAPI = AdminProductsAPI;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pintahub/shopify-api",
3
- "version": "2.3.5",
3
+ "version": "2.3.7",
4
4
  "description": "",
5
5
  "types": "dist/index.d.ts",
6
6
  "main": "dist/index.js",