n8n-nodes-shopify-custom 2.0.36 → 2.0.37
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.
- package/README.md +14 -0
- package/dist/credentials/ShopifyCustomAdminApi.credentials.js +38 -16
- package/dist/credentials/ShopifyCustomAdminApi.credentials.js.map +1 -1
- package/dist/nodes/ShopifyCustom/config/operations/index.js +2 -0
- package/dist/nodes/ShopifyCustom/config/operations/index.js.map +1 -1
- package/dist/nodes/ShopifyCustom/config/operations/product.js +11 -0
- package/dist/nodes/ShopifyCustom/config/operations/product.js.map +1 -1
- package/dist/nodes/ShopifyCustom/config/operations/taxonomy.d.ts +2 -0
- package/dist/nodes/ShopifyCustom/config/operations/taxonomy.js +134 -0
- package/dist/nodes/ShopifyCustom/config/operations/taxonomy.js.map +1 -0
- package/dist/nodes/ShopifyCustom/config/operations/types.d.ts +2 -2
- package/dist/nodes/ShopifyCustom/config/resources.d.ts +1 -1
- package/dist/nodes/ShopifyCustom/config/resources.js +5 -0
- package/dist/nodes/ShopifyCustom/config/resources.js.map +1 -1
- package/dist/nodes/ShopifyCustom/shared/graphql/client.js +36 -14
- package/dist/nodes/ShopifyCustom/shared/graphql/client.js.map +1 -1
- package/dist/nodes/ShopifyCustom/shared/graphql/registry.js +79 -0
- package/dist/nodes/ShopifyCustom/shared/graphql/registry.js.map +1 -1
- package/dist/nodes/ShopifyCustom/shared/graphql/templates/product.d.ts +4 -3
- package/dist/nodes/ShopifyCustom/shared/graphql/templates/product.js +35 -1
- package/dist/nodes/ShopifyCustom/shared/graphql/templates/product.js.map +1 -1
- package/dist/nodes/ShopifyCustom/shared/graphql/templates/taxonomy.d.ts +4 -0
- package/dist/nodes/ShopifyCustom/shared/graphql/templates/taxonomy.js +83 -0
- package/dist/nodes/ShopifyCustom/shared/graphql/templates/taxonomy.js.map +1 -0
- package/dist/package.json +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -49,6 +49,7 @@ The single node **`Shopify Custom`** includes resource-based actions:
|
|
|
49
49
|
| Draft Order | ✔ |
|
|
50
50
|
| File | ✔ |
|
|
51
51
|
| Translation | ✔ |
|
|
52
|
+
| Taxonomy | ✔ |
|
|
52
53
|
| Metaobject | ✔ |
|
|
53
54
|
| Metafield Value | ✔ |
|
|
54
55
|
| Metafield Definition | ✔ |
|
|
@@ -69,7 +70,10 @@ Most resources support:
|
|
|
69
70
|
- **Products / Product Variants:**
|
|
70
71
|
- **Get / Get Many:**
|
|
71
72
|
- Allows you to get a list of your products
|
|
73
|
+
- Returns Shopify product taxonomy category details
|
|
72
74
|
- Allows you to get product metafields and their values together with products
|
|
75
|
+
- **Set Category:**
|
|
76
|
+
- Assign a Shopify Standard Product Taxonomy category to a product
|
|
73
77
|
- **Create / Update:**
|
|
74
78
|
- **Fields supported**
|
|
75
79
|
- **For products:**
|
|
@@ -162,6 +166,14 @@ Most resources support:
|
|
|
162
166
|
- For metafields, use translation `key` = `value`
|
|
163
167
|
- Register with the same key + digest; if original metafield value changes, fetch a new digest before next register
|
|
164
168
|
|
|
169
|
+
- **Taxonomy:**
|
|
170
|
+
- **Search Categories:**
|
|
171
|
+
- Search Shopify Standard Product Taxonomy categories by text for AI-assisted product classification
|
|
172
|
+
- **Get Root Categories / Get Children / Get Descendants:**
|
|
173
|
+
- Navigate the taxonomy tree by category ID
|
|
174
|
+
- **Get Category / Get Category Attributes:**
|
|
175
|
+
- Inspect a selected category and its taxonomy attributes
|
|
176
|
+
|
|
165
177
|
- **Metaobjects:**
|
|
166
178
|
- **Get / Get Many:**
|
|
167
179
|
- Get a single metaobject or a list by type
|
|
@@ -260,6 +272,8 @@ Create credential **Shopify Custom Admin API**:
|
|
|
260
272
|
| Admin API Version | default is fine |
|
|
261
273
|
| Admin Access Token | token from Shopify |
|
|
262
274
|
|
|
275
|
+
For **Client Credentials (Dev Dashboard)**, the app and store must belong to the same Shopify organization in the Dev Dashboard. If Shopify returns `shop_not_permitted`, create or move the development store under the same Dev Dashboard organization as the app.
|
|
276
|
+
|
|
263
277
|
After saving, the node is ready to use.
|
|
264
278
|
|
|
265
279
|
---
|
|
@@ -1,6 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ShopifyCustomAdminApi = void 0;
|
|
4
|
+
function getHttpErrorMessage(error) {
|
|
5
|
+
var _a, _b, _c;
|
|
6
|
+
if (!error || typeof error !== 'object') {
|
|
7
|
+
return String(error);
|
|
8
|
+
}
|
|
9
|
+
const typedError = error;
|
|
10
|
+
const response = typedError.response;
|
|
11
|
+
const body = ((_b = (_a = response === null || response === void 0 ? void 0 : response.body) !== null && _a !== void 0 ? _a : typedError.body) !== null && _b !== void 0 ? _b : typedError.message);
|
|
12
|
+
if (typeof body === 'string') {
|
|
13
|
+
return body;
|
|
14
|
+
}
|
|
15
|
+
if (body && typeof body === 'object') {
|
|
16
|
+
return JSON.stringify(body);
|
|
17
|
+
}
|
|
18
|
+
return String((_c = typedError.message) !== null && _c !== void 0 ? _c : 'Unknown error');
|
|
19
|
+
}
|
|
4
20
|
class ShopifyCustomAdminApi {
|
|
5
21
|
constructor() {
|
|
6
22
|
this.name = 'shopifyCustomAdminApi';
|
|
@@ -29,7 +45,7 @@ class ShopifyCustomAdminApi {
|
|
|
29
45
|
{
|
|
30
46
|
name: 'Client Credentials (Dev Dashboard)',
|
|
31
47
|
value: 'clientCredentials',
|
|
32
|
-
description: 'Exchange Client ID and Client Secret for a short-lived Admin API access token.',
|
|
48
|
+
description: 'Exchange Client ID and Client Secret for a short-lived Admin API access token. Requires the app and store to be in the same Shopify organization.',
|
|
33
49
|
},
|
|
34
50
|
{
|
|
35
51
|
name: 'Admin Access Token (Legacy)',
|
|
@@ -121,23 +137,29 @@ class ShopifyCustomAdminApi {
|
|
|
121
137
|
if (!shopSubdomain || !clientId || !clientSecret) {
|
|
122
138
|
return credentials;
|
|
123
139
|
}
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
140
|
+
let response;
|
|
141
|
+
try {
|
|
142
|
+
response = (await this.helpers.httpRequest({
|
|
143
|
+
url: `https://${shopSubdomain}.myshopify.com/admin/oauth/access_token`,
|
|
144
|
+
method: 'POST',
|
|
145
|
+
headers: {
|
|
146
|
+
'Content-Type': 'application/x-www-form-urlencoded',
|
|
147
|
+
Accept: 'application/json',
|
|
148
|
+
},
|
|
149
|
+
body: new URLSearchParams({
|
|
150
|
+
grant_type: 'client_credentials',
|
|
151
|
+
client_id: clientId,
|
|
152
|
+
client_secret: clientSecret,
|
|
153
|
+
}).toString(),
|
|
154
|
+
json: true,
|
|
155
|
+
}));
|
|
156
|
+
}
|
|
157
|
+
catch (error) {
|
|
158
|
+
throw new Error(`Shopify client credentials token exchange failed: ${getHttpErrorMessage(error)}`);
|
|
159
|
+
}
|
|
138
160
|
const accessToken = String((_d = response.access_token) !== null && _d !== void 0 ? _d : '').trim();
|
|
139
161
|
if (!accessToken) {
|
|
140
|
-
return credentials;
|
|
162
|
+
throw new Error('Shopify did not return an access token for the provided client credentials.');
|
|
141
163
|
}
|
|
142
164
|
return {
|
|
143
165
|
...credentials,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ShopifyCustomAdminApi.credentials.js","sourceRoot":"","sources":["../../credentials/ShopifyCustomAdminApi.credentials.ts"],"names":[],"mappings":";;;AAUA,MAAa,qBAAqB;IAAlC;QACC,SAAI,GAAG,uBAAuB,CAAC;QAE/B,gBAAW,GAAG,0BAA0B,CAAC;QAEzC,SAAI,GAAS;YACZ,KAAK,EAAE,yCAAyC;YAChD,IAAI,EAAE,8CAA8C;SACpD,CAAC;QAEF,qBAAgB,GAAG,4CAA4C,CAAC;QAEhE,eAAU,GAAsB;YAC/B;gBACC,WAAW,EAAE,gBAAgB;gBAC7B,IAAI,EAAE,eAAe;gBACrB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,UAAU;gBACvB,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,8CAA8C;aAC3D;YACD;gBACC,WAAW,EAAE,uBAAuB;gBACpC,IAAI,EAAE,sBAAsB;gBAC5B,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,aAAa;gBACtB,OAAO,EAAE;oBACR;wBACC,IAAI,EAAE,oCAAoC;wBAC1C,KAAK,EAAE,mBAAmB;wBAC1B,WAAW,
|
|
1
|
+
{"version":3,"file":"ShopifyCustomAdminApi.credentials.js","sourceRoot":"","sources":["../../credentials/ShopifyCustomAdminApi.credentials.ts"],"names":[],"mappings":";;;AAUA,SAAS,mBAAmB,CAAC,KAAc;;IAC1C,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACzC,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;IAED,MAAM,UAAU,GAAG,KAAoB,CAAC;IACxC,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAmC,CAAC;IAChE,MAAM,IAAI,GAAG,CAAC,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,mCAAI,UAAU,CAAC,IAAI,mCAAI,UAAU,CAAC,OAAO,CAAY,CAAC;IAElF,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtC,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAED,OAAO,MAAM,CAAC,MAAA,UAAU,CAAC,OAAO,mCAAI,eAAe,CAAC,CAAC;AACtD,CAAC;AAED,MAAa,qBAAqB;IAAlC;QACC,SAAI,GAAG,uBAAuB,CAAC;QAE/B,gBAAW,GAAG,0BAA0B,CAAC;QAEzC,SAAI,GAAS;YACZ,KAAK,EAAE,yCAAyC;YAChD,IAAI,EAAE,8CAA8C;SACpD,CAAC;QAEF,qBAAgB,GAAG,4CAA4C,CAAC;QAEhE,eAAU,GAAsB;YAC/B;gBACC,WAAW,EAAE,gBAAgB;gBAC7B,IAAI,EAAE,eAAe;gBACrB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,UAAU;gBACvB,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,8CAA8C;aAC3D;YACD;gBACC,WAAW,EAAE,uBAAuB;gBACpC,IAAI,EAAE,sBAAsB;gBAC5B,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,aAAa;gBACtB,OAAO,EAAE;oBACR;wBACC,IAAI,EAAE,oCAAoC;wBAC1C,KAAK,EAAE,mBAAmB;wBAC1B,WAAW,EACV,mJAAmJ;qBACpJ;oBACD;wBACC,IAAI,EAAE,6BAA6B;wBACnC,KAAK,EAAE,aAAa;wBACpB,WAAW,EAAE,8EAA8E;qBAC3F;iBACD;aACD;YACD;gBACC,WAAW,EAAE,mBAAmB;gBAChC,IAAI,EAAE,YAAY;gBAClB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,SAAS;gBAClB,QAAQ,EAAE,IAAI;aACd;YACD;gBACC,WAAW,EAAE,oBAAoB;gBACjC,IAAI,EAAE,aAAa;gBACnB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE;oBACZ,QAAQ,EAAE,IAAI;iBACd;gBACD,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;gBACd,cAAc,EAAE;oBACf,IAAI,EAAE;wBACL,oBAAoB,EAAE,CAAC,aAAa,CAAC;qBACrC;iBACD;aACD;YACD;gBACC,WAAW,EAAE,WAAW;gBACxB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;gBACd,cAAc,EAAE;oBACf,IAAI,EAAE;wBACL,oBAAoB,EAAE,CAAC,mBAAmB,CAAC;qBAC3C;iBACD;aACD;YACD;gBACC,WAAW,EAAE,eAAe;gBAC5B,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE;oBACZ,QAAQ,EAAE,IAAI;iBACd;gBACD,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;gBACd,cAAc,EAAE;oBACf,IAAI,EAAE;wBACL,oBAAoB,EAAE,CAAC,mBAAmB,CAAC;qBAC3C;iBACD;aACD;YACD;gBACC,WAAW,EAAE,gBAAgB;gBAC7B,IAAI,EAAE,eAAe;gBACrB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE;oBACZ,QAAQ,EAAE,IAAI;iBACd;gBACD,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,KAAK;gBACf,WAAW,EACV,wHAAwH;aACzH;SACD,CAAC;QAEF,iBAAY,GAAyB;YACpC,IAAI,EAAE,SAAS;YACf,UAAU,EAAE;gBACX,OAAO,EAAE;oBACR,wBAAwB,EAAE,sCAAsC;iBAChE;aACD;SACD,CAAC;QAEF,sBAAiB,GAAG,KAAK,WAExB,WAAwB;;YAExB,IAAI,WAAW,CAAC,oBAAoB,KAAK,mBAAmB,EAAE,CAAC;gBAC9D,OAAO,WAAW,CAAC;YACpB,CAAC;YAED,MAAM,aAAa,GAAG,MAAM,CAAC,MAAA,WAAW,CAAC,aAAa,mCAAI,EAAE,CAAC;iBAC3D,IAAI,EAAE;iBACN,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;iBAC3B,OAAO,CAAC,sBAAsB,EAAE,EAAE,CAAC,CAAC;YACtC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAA,WAAW,CAAC,QAAQ,mCAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAC3D,MAAM,YAAY,GAAG,MAAM,CAAC,MAAA,WAAW,CAAC,YAAY,mCAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAEnE,IAAI,CAAC,aAAa,IAAI,CAAC,QAAQ,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClD,OAAO,WAAW,CAAC;YACpB,CAAC;YAED,IAAI,QAAqB,CAAC;YAC1B,IAAI,CAAC;gBACJ,QAAQ,GAAG,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;oBAC1C,GAAG,EAAE,WAAW,aAAa,yCAAyC;oBACtE,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE;wBACR,cAAc,EAAE,mCAAmC;wBACnD,MAAM,EAAE,kBAAkB;qBAC1B;oBACD,IAAI,EAAE,IAAI,eAAe,CAAC;wBACzB,UAAU,EAAE,oBAAoB;wBAChC,SAAS,EAAE,QAAQ;wBACnB,aAAa,EAAE,YAAY;qBAC3B,CAAC,CAAC,QAAQ,EAAE;oBACb,IAAI,EAAE,IAAI;iBACV,CAAC,CAAgB,CAAC;YACpB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,MAAM,IAAI,KAAK,CAAC,qDAAqD,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACpG,CAAC;YAED,MAAM,WAAW,GAAG,MAAM,CAAC,MAAA,QAAQ,CAAC,YAAY,mCAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAC/D,IAAI,CAAC,WAAW,EAAE,CAAC;gBAClB,MAAM,IAAI,KAAK,CAAC,6EAA6E,CAAC,CAAC;YAChG,CAAC;YAED,OAAO;gBACN,GAAG,WAAW;gBACd,WAAW;aACX,CAAC;QACH,CAAC,CAAC;QAEF,SAAI,GAA2B;YAC9B,OAAO,EAAE;gBACR,OAAO,EACN,sGAAsG;gBACvG,GAAG,EAAE,mEAAmE;gBACxE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACR,cAAc,EAAE,kBAAkB;iBAClC;gBACD,IAAI,EAAE;oBACL,KAAK,EAAE,4BAA4B;iBACnC;aACD;SACD,CAAC;IACH,CAAC;CAAA;AAjLD,sDAiLC"}
|
|
@@ -17,6 +17,7 @@ const order_1 = require("./order");
|
|
|
17
17
|
const product_1 = require("./product");
|
|
18
18
|
const productVariant_1 = require("./productVariant");
|
|
19
19
|
const service_1 = require("./service");
|
|
20
|
+
const taxonomy_1 = require("./taxonomy");
|
|
20
21
|
const translation_1 = require("./translation");
|
|
21
22
|
exports.SHOPIFY_OPERATION_CONFIGS = [
|
|
22
23
|
...product_1.PRODUCT_OPERATION_CONFIGS,
|
|
@@ -30,6 +31,7 @@ exports.SHOPIFY_OPERATION_CONFIGS = [
|
|
|
30
31
|
...inventory_1.INVENTORY_OPERATION_CONFIGS,
|
|
31
32
|
...file_1.FILE_OPERATION_CONFIGS,
|
|
32
33
|
...translation_1.TRANSLATION_OPERATION_CONFIGS,
|
|
34
|
+
...taxonomy_1.TAXONOMY_OPERATION_CONFIGS,
|
|
33
35
|
...metaobject_1.METAOBJECT_OPERATION_CONFIGS,
|
|
34
36
|
...metafieldValue_1.METAFIELD_VALUE_OPERATION_CONFIGS,
|
|
35
37
|
...metafieldDefinition_1.METAFIELD_DEFINITION_OPERATION_CONFIGS,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../nodes/ShopifyCustom/config/operations/index.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../nodes/ShopifyCustom/config/operations/index.ts"],"names":[],"mappings":";;;AAgDA,sDAQC;AAED,gDAOC;AA/DD,uCAAsD;AACtD,iCAAgD;AAChD,6CAA4D;AAC5D,yCAAwD;AACxD,6CAA6D;AAC7D,iCAAgD;AAChD,2CAA0D;AAC1D,+DAA+E;AAC/E,qDAAqE;AACrE,6CAA4D;AAC5D,mCAAkD;AAClD,uCAAsD;AACtD,qDAAqE;AACrE,uCAAsD;AACtD,yCAAwD;AACxD,+CAA8D;AAGjD,QAAA,yBAAyB,GAA8B;IACnE,GAAG,mCAAyB;IAC5B,GAAG,kDAAiC;IACpC,GAAG,yCAA4B;IAC/B,GAAG,mCAAyB;IAC5B,GAAG,6BAAsB;IACzB,GAAG,qCAA0B;IAC7B,GAAG,+BAAuB;IAC1B,GAAG,0CAA6B;IAChC,GAAG,uCAA2B;IAC9B,GAAG,6BAAsB;IACzB,GAAG,2CAA6B;IAChC,GAAG,qCAA0B;IAC7B,GAAG,yCAA4B;IAC/B,GAAG,kDAAiC;IACpC,GAAG,4DAAsC;IACzC,GAAG,mCAAyB;CAC5B,CAAC;AAEW,QAAA,qBAAqB,GAAG,iCAAyB,CAAC,MAAM,CACpE,CAAC,GAAG,EAAE,eAAe,EAAE,EAAE;;;IACxB,MAAA,GAAG,MAAC,eAAe,CAAC,QAAQ,qCAA5B,GAAG,OAA+B,EAAE,EAAC;IACrC,GAAG,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACpD,OAAO,GAAG,CAAC;AACZ,CAAC,EACD,EAA6D,CAC7D,CAAC;AAEF,SAAgB,qBAAqB,CAAC,QAA8B;;IACnE,MAAM,gBAAgB,GAAG,MAAA,6BAAqB,CAAC,QAAQ,CAAC,mCAAI,EAAE,CAAC;IAC/D,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;QACjD,IAAI,EAAE,eAAe,CAAC,IAAI;QAC1B,KAAK,EAAE,eAAe,CAAC,KAAK;QAC5B,WAAW,EAAE,eAAe,CAAC,WAAW;QACxC,MAAM,EAAE,GAAG,eAAe,CAAC,IAAI,KAAK,QAAQ,GAAG;KAC/C,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAgB,kBAAkB,CACjC,QAA8B,EAC9B,SAAiB;IAEjB,OAAO,iCAAyB,CAAC,IAAI,CACpC,CAAC,eAAe,EAAE,EAAE,CAAC,eAAe,CAAC,QAAQ,KAAK,QAAQ,IAAI,eAAe,CAAC,KAAK,KAAK,SAAS,CACjG,CAAC;AACH,CAAC"}
|
|
@@ -106,6 +106,17 @@ exports.PRODUCT_OPERATION_CONFIGS = [
|
|
|
106
106
|
fields: productUpdateFields(),
|
|
107
107
|
supportsMetafields: true,
|
|
108
108
|
},
|
|
109
|
+
{
|
|
110
|
+
resource: 'product',
|
|
111
|
+
value: 'setCategory',
|
|
112
|
+
name: 'Set Category',
|
|
113
|
+
description: 'Set the Shopify product taxonomy category for a product',
|
|
114
|
+
registryKey: 'product.setCategory',
|
|
115
|
+
fields: [
|
|
116
|
+
(0, common_1.gidField)('productId', 'Product ID', 'Global product ID in Shopify'),
|
|
117
|
+
(0, common_1.gidField)('categoryId', 'Category ID', 'Global taxonomy category ID in Shopify'),
|
|
118
|
+
],
|
|
119
|
+
},
|
|
109
120
|
{
|
|
110
121
|
resource: 'product',
|
|
111
122
|
value: 'delete',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"product.js","sourceRoot":"","sources":["../../../../../nodes/ShopifyCustom/config/operations/product.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"product.js","sourceRoot":"","sources":["../../../../../nodes/ShopifyCustom/config/operations/product.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TAXONOMY_OPERATION_CONFIGS = void 0;
|
|
4
|
+
const common_1 = require("./common");
|
|
5
|
+
function taxonomyPaginationFields() {
|
|
6
|
+
return [
|
|
7
|
+
{
|
|
8
|
+
displayName: 'Get All',
|
|
9
|
+
name: 'getAll',
|
|
10
|
+
type: 'boolean',
|
|
11
|
+
default: false,
|
|
12
|
+
description: 'Whether to fetch all pages',
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
displayName: 'Limit',
|
|
16
|
+
name: 'limit',
|
|
17
|
+
type: 'number',
|
|
18
|
+
description: 'Max number of results to return',
|
|
19
|
+
default: 50,
|
|
20
|
+
typeOptions: {
|
|
21
|
+
minValue: 1,
|
|
22
|
+
maxValue: 250,
|
|
23
|
+
},
|
|
24
|
+
displayOptions: {
|
|
25
|
+
show: {
|
|
26
|
+
getAll: [false],
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
displayName: 'Options',
|
|
32
|
+
name: 'taxonomyOptions',
|
|
33
|
+
type: 'collection',
|
|
34
|
+
placeholder: 'Add option',
|
|
35
|
+
default: {},
|
|
36
|
+
options: [
|
|
37
|
+
{
|
|
38
|
+
displayName: 'Cursor',
|
|
39
|
+
name: 'afterCursor',
|
|
40
|
+
type: 'string',
|
|
41
|
+
default: '',
|
|
42
|
+
description: 'Use to continue from a specific cursor',
|
|
43
|
+
},
|
|
44
|
+
],
|
|
45
|
+
},
|
|
46
|
+
];
|
|
47
|
+
}
|
|
48
|
+
function taxonomyCategoryIdField(name = 'categoryId', displayName = 'Category ID') {
|
|
49
|
+
return (0, common_1.gidField)(name, displayName, 'Global taxonomy category ID in Shopify');
|
|
50
|
+
}
|
|
51
|
+
exports.TAXONOMY_OPERATION_CONFIGS = [
|
|
52
|
+
{
|
|
53
|
+
resource: 'taxonomy',
|
|
54
|
+
value: 'searchCategories',
|
|
55
|
+
name: 'Search Categories',
|
|
56
|
+
description: 'Search Shopify product taxonomy categories',
|
|
57
|
+
registryKey: 'taxonomy.searchCategories',
|
|
58
|
+
fields: [
|
|
59
|
+
{
|
|
60
|
+
displayName: 'Search Query',
|
|
61
|
+
name: 'search',
|
|
62
|
+
type: 'string',
|
|
63
|
+
default: '',
|
|
64
|
+
required: true,
|
|
65
|
+
description: 'Text to search in Shopify product taxonomy categories',
|
|
66
|
+
},
|
|
67
|
+
...taxonomyPaginationFields(),
|
|
68
|
+
],
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
resource: 'taxonomy',
|
|
72
|
+
value: 'getRootCategories',
|
|
73
|
+
name: 'Get Root Categories',
|
|
74
|
+
description: 'Get top-level Shopify product taxonomy categories',
|
|
75
|
+
registryKey: 'taxonomy.getRootCategories',
|
|
76
|
+
fields: taxonomyPaginationFields(),
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
resource: 'taxonomy',
|
|
80
|
+
value: 'getChildren',
|
|
81
|
+
name: 'Get Children',
|
|
82
|
+
description: 'Get child categories for a Shopify taxonomy category',
|
|
83
|
+
registryKey: 'taxonomy.getChildren',
|
|
84
|
+
fields: [taxonomyCategoryIdField(), ...taxonomyPaginationFields()],
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
resource: 'taxonomy',
|
|
88
|
+
value: 'getDescendants',
|
|
89
|
+
name: 'Get Descendants',
|
|
90
|
+
description: 'Get descendant categories for a Shopify taxonomy category',
|
|
91
|
+
registryKey: 'taxonomy.getDescendants',
|
|
92
|
+
fields: [taxonomyCategoryIdField(), ...taxonomyPaginationFields()],
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
resource: 'taxonomy',
|
|
96
|
+
value: 'get',
|
|
97
|
+
name: 'Get Category',
|
|
98
|
+
description: 'Get a Shopify taxonomy category by ID',
|
|
99
|
+
registryKey: 'taxonomy.get',
|
|
100
|
+
fields: [taxonomyCategoryIdField()],
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
resource: 'taxonomy',
|
|
104
|
+
value: 'getCategoryAttributes',
|
|
105
|
+
name: 'Get Category Attributes',
|
|
106
|
+
description: 'Get product attributes for a Shopify taxonomy category',
|
|
107
|
+
registryKey: 'taxonomy.getCategoryAttributes',
|
|
108
|
+
fields: [
|
|
109
|
+
taxonomyCategoryIdField(),
|
|
110
|
+
{
|
|
111
|
+
displayName: 'Attribute Limit',
|
|
112
|
+
name: 'attributeLimit',
|
|
113
|
+
type: 'number',
|
|
114
|
+
default: 50,
|
|
115
|
+
typeOptions: {
|
|
116
|
+
minValue: 1,
|
|
117
|
+
maxValue: 250,
|
|
118
|
+
},
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
displayName: 'Value Limit',
|
|
122
|
+
name: 'valueLimit',
|
|
123
|
+
type: 'number',
|
|
124
|
+
default: 50,
|
|
125
|
+
typeOptions: {
|
|
126
|
+
minValue: 1,
|
|
127
|
+
maxValue: 250,
|
|
128
|
+
},
|
|
129
|
+
description: 'Max number of values to return for choice-list attributes',
|
|
130
|
+
},
|
|
131
|
+
],
|
|
132
|
+
},
|
|
133
|
+
];
|
|
134
|
+
//# sourceMappingURL=taxonomy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"taxonomy.js","sourceRoot":"","sources":["../../../../../nodes/ShopifyCustom/config/operations/taxonomy.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { INodeProperties } from 'n8n-workflow';
|
|
2
2
|
import type { ShopifyResourceValue } from '../resources';
|
|
3
|
-
export type ShopifyOperationValue = 'create' | 'createUpload' | 'coverage' | 'get' | 'getMany' | 'update' | 'delete' | 'deleteUnusedImages' | 'set' | 'adjust' | 'resolveMetadata' | 'register' | 'remove' | 'list' | 'listDefinitionTypes';
|
|
4
|
-
export type ShopifyOperationKey = 'product.create' | 'product.get' | 'product.getMany' | 'product.update' | 'product.delete' | 'article.create' | 'article.get' | 'article.getMany' | 'article.update' | 'article.delete' | 'blog.create' | 'blog.get' | 'blog.getMany' | 'blog.update' | 'blog.delete' | 'productVariant.create' | 'productVariant.get' | 'productVariant.getMany' | 'productVariant.update' | 'productVariant.delete' | 'collection.create' | 'collection.get' | 'collection.getMany' | 'collection.update' | 'collection.delete' | 'customer.create' | 'customer.get' | 'customer.getMany' | 'customer.update' | 'customer.delete' | 'order.create' | 'order.get' | 'order.getMany' | 'order.update' | 'order.delete' | 'draftOrder.create' | 'draftOrder.get' | 'draftOrder.getMany' | 'draftOrder.update' | 'draftOrder.delete' | 'inventory.get' | 'inventory.getMany' | 'inventory.update' | 'inventory.set' | 'inventory.adjust' | 'file.create' | 'file.getMany' | 'file.update' | 'file.delete' | 'file.deleteUnusedImages' | 'translation.coverage' | 'translation.get' | 'translation.getMany' | 'translation.register' | 'translation.remove' | 'metaobject.create' | 'metaobject.get' | 'metaobject.getMany' | 'metaobject.update' | 'metaobject.delete' | 'metafieldValue.set' | 'metafieldValue.get' | 'metafieldValue.getMany' | 'metafieldValue.resolveMetadata' | 'metafieldValue.delete' | 'metafieldDefinition.list' | 'metafieldDefinition.get' | 'metafieldDefinition.create' | 'metafieldDefinition.update' | 'metafieldDefinition.delete' | 'service.listDefinitionTypes';
|
|
3
|
+
export type ShopifyOperationValue = 'create' | 'createUpload' | 'coverage' | 'get' | 'getMany' | 'update' | 'delete' | 'deleteUnusedImages' | 'getCategoryAttributes' | 'getChildren' | 'getDescendants' | 'getRootCategories' | 'searchCategories' | 'setCategory' | 'set' | 'adjust' | 'resolveMetadata' | 'register' | 'remove' | 'list' | 'listDefinitionTypes';
|
|
4
|
+
export type ShopifyOperationKey = 'product.create' | 'product.get' | 'product.getMany' | 'product.update' | 'product.delete' | 'product.setCategory' | 'article.create' | 'article.get' | 'article.getMany' | 'article.update' | 'article.delete' | 'blog.create' | 'blog.get' | 'blog.getMany' | 'blog.update' | 'blog.delete' | 'productVariant.create' | 'productVariant.get' | 'productVariant.getMany' | 'productVariant.update' | 'productVariant.delete' | 'collection.create' | 'collection.get' | 'collection.getMany' | 'collection.update' | 'collection.delete' | 'customer.create' | 'customer.get' | 'customer.getMany' | 'customer.update' | 'customer.delete' | 'order.create' | 'order.get' | 'order.getMany' | 'order.update' | 'order.delete' | 'draftOrder.create' | 'draftOrder.get' | 'draftOrder.getMany' | 'draftOrder.update' | 'draftOrder.delete' | 'inventory.get' | 'inventory.getMany' | 'inventory.update' | 'inventory.set' | 'inventory.adjust' | 'file.create' | 'file.getMany' | 'file.update' | 'file.delete' | 'file.deleteUnusedImages' | 'translation.coverage' | 'translation.get' | 'translation.getMany' | 'translation.register' | 'translation.remove' | 'taxonomy.searchCategories' | 'taxonomy.getRootCategories' | 'taxonomy.getChildren' | 'taxonomy.getDescendants' | 'taxonomy.get' | 'taxonomy.getCategoryAttributes' | 'metaobject.create' | 'metaobject.get' | 'metaobject.getMany' | 'metaobject.update' | 'metaobject.delete' | 'metafieldValue.set' | 'metafieldValue.get' | 'metafieldValue.getMany' | 'metafieldValue.resolveMetadata' | 'metafieldValue.delete' | 'metafieldDefinition.list' | 'metafieldDefinition.get' | 'metafieldDefinition.create' | 'metafieldDefinition.update' | 'metafieldDefinition.delete' | 'service.listDefinitionTypes';
|
|
5
5
|
export interface IShopifyOperationConfig {
|
|
6
6
|
resource: ShopifyResourceValue;
|
|
7
7
|
value: ShopifyOperationValue;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type ShopifyResourceValue = 'product' | 'productVariant' | 'collection' | 'article' | 'blog' | 'customer' | 'order' | 'draftOrder' | 'inventory' | 'file' | 'translation' | 'metaobject' | 'metafieldValue' | 'metafieldDefinition' | 'service';
|
|
1
|
+
export type ShopifyResourceValue = 'product' | 'productVariant' | 'collection' | 'article' | 'blog' | 'customer' | 'order' | 'draftOrder' | 'inventory' | 'file' | 'translation' | 'taxonomy' | 'metaobject' | 'metafieldValue' | 'metafieldDefinition' | 'service';
|
|
2
2
|
export type ShopifyMetafieldOwnerType = 'PRODUCT' | 'PRODUCTVARIANT' | 'COLLECTION' | 'ARTICLE' | 'BLOG' | 'CUSTOMER' | 'ORDER' | 'DRAFTORDER';
|
|
3
3
|
export interface IShopifyResourceDefinition {
|
|
4
4
|
value: ShopifyResourceValue;
|
|
@@ -65,6 +65,11 @@ exports.SHOPIFY_RESOURCE_DEFINITIONS = [
|
|
|
65
65
|
name: 'Translation',
|
|
66
66
|
description: 'Manage translated content for Shopify resources',
|
|
67
67
|
},
|
|
68
|
+
{
|
|
69
|
+
value: 'taxonomy',
|
|
70
|
+
name: 'Taxonomy',
|
|
71
|
+
description: 'Search and navigate Shopify product taxonomy categories',
|
|
72
|
+
},
|
|
68
73
|
{
|
|
69
74
|
value: 'metaobject',
|
|
70
75
|
name: 'Metaobject',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resources.js","sourceRoot":"","sources":["../../../../nodes/ShopifyCustom/config/resources.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"resources.js","sourceRoot":"","sources":["../../../../nodes/ShopifyCustom/config/resources.ts"],"names":[],"mappings":";;;AAmCa,QAAA,4BAA4B,GAAiC;IACzE;QACC,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,0CAA0C;QACvD,SAAS,EAAE,SAAS;KACpB;IACD;QACC,KAAK,EAAE,gBAAgB;QACvB,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,kDAAkD;QAC/D,SAAS,EAAE,gBAAgB;KAC3B;IACD;QACC,KAAK,EAAE,YAAY;QACnB,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,4BAA4B;QACzC,SAAS,EAAE,YAAY;KACvB;IACD;QACC,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,8BAA8B;QAC3C,SAAS,EAAE,SAAS;KACpB;IACD;QACC,KAAK,EAAE,MAAM;QACb,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,sBAAsB;QACnC,SAAS,EAAE,MAAM;KACjB;IACD;QACC,KAAK,EAAE,UAAU;QACjB,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,yBAAyB;QACtC,SAAS,EAAE,UAAU;KACrB;IACD;QACC,KAAK,EAAE,OAAO;QACd,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,0BAA0B;QACvC,SAAS,EAAE,OAAO;KAClB;IACD;QACC,KAAK,EAAE,YAAY;QACnB,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,qBAAqB;QAClC,SAAS,EAAE,YAAY;KACvB;IACD;QACC,KAAK,EAAE,WAAW;QAClB,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,uCAAuC;KACpD;IACD;QACC,KAAK,EAAE,MAAM;QACb,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,uCAAuC;KACpD;IACD;QACC,KAAK,EAAE,aAAa;QACpB,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,iDAAiD;KAC9D;IACD;QACC,KAAK,EAAE,UAAU;QACjB,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,yDAAyD;KACtE;IACD;QACC,KAAK,EAAE,YAAY;QACnB,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,4BAA4B;KACzC;IACD;QACC,KAAK,EAAE,gBAAgB;QACvB,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,uCAAuC;KACpD;IACD;QACC,KAAK,EAAE,qBAAqB;QAC5B,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE,uDAAuD;KACpE;IACD;QACC,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,mBAAmB;KAChC;CACD,CAAC"}
|
|
@@ -118,6 +118,22 @@ function isAuthenticationError(error) {
|
|
|
118
118
|
const statusCode = (_b = (_a = typedError.statusCode) !== null && _a !== void 0 ? _a : typedError.httpCode) !== null && _b !== void 0 ? _b : typedError.responseCode;
|
|
119
119
|
return statusCode === 401 || statusCode === 403;
|
|
120
120
|
}
|
|
121
|
+
function getHttpErrorMessage(error) {
|
|
122
|
+
var _a, _b, _c;
|
|
123
|
+
if (!error || typeof error !== 'object') {
|
|
124
|
+
return String(error);
|
|
125
|
+
}
|
|
126
|
+
const typedError = error;
|
|
127
|
+
const response = typedError.response;
|
|
128
|
+
const body = ((_b = (_a = response === null || response === void 0 ? void 0 : response.body) !== null && _a !== void 0 ? _a : typedError.body) !== null && _b !== void 0 ? _b : typedError.message);
|
|
129
|
+
if (typeof body === 'string') {
|
|
130
|
+
return body;
|
|
131
|
+
}
|
|
132
|
+
if (body && typeof body === 'object') {
|
|
133
|
+
return JSON.stringify(body);
|
|
134
|
+
}
|
|
135
|
+
return String((_c = typedError.message) !== null && _c !== void 0 ? _c : 'Unknown error');
|
|
136
|
+
}
|
|
121
137
|
async function requestClientCredentialsAccessToken(context, credentials, itemIndex, forceRefresh = false) {
|
|
122
138
|
const clientId = toOptionalString(credentials.clientId);
|
|
123
139
|
const clientSecret = toOptionalString(credentials.clientSecret);
|
|
@@ -131,20 +147,26 @@ async function requestClientCredentialsAccessToken(context, credentials, itemInd
|
|
|
131
147
|
Date.now() < cachedEntry.expiresAt - ACCESS_TOKEN_TTL_SAFETY_MS) {
|
|
132
148
|
return cachedEntry.token;
|
|
133
149
|
}
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
150
|
+
let response;
|
|
151
|
+
try {
|
|
152
|
+
response = (await context.helpers.httpRequest({
|
|
153
|
+
url: buildAccessTokenUrl(credentials),
|
|
154
|
+
method: 'POST',
|
|
155
|
+
headers: {
|
|
156
|
+
'Content-Type': 'application/x-www-form-urlencoded',
|
|
157
|
+
Accept: 'application/json',
|
|
158
|
+
},
|
|
159
|
+
body: new URLSearchParams({
|
|
160
|
+
grant_type: 'client_credentials',
|
|
161
|
+
client_id: clientId,
|
|
162
|
+
client_secret: clientSecret,
|
|
163
|
+
}).toString(),
|
|
164
|
+
json: true,
|
|
165
|
+
}));
|
|
166
|
+
}
|
|
167
|
+
catch (error) {
|
|
168
|
+
throw new n8n_workflow_1.NodeOperationError(context.getNode(), `Shopify client credentials token exchange failed: ${getHttpErrorMessage(error)}`, { itemIndex });
|
|
169
|
+
}
|
|
148
170
|
const accessToken = toOptionalString(response.access_token);
|
|
149
171
|
if (!accessToken) {
|
|
150
172
|
throw new n8n_workflow_1.NodeOperationError(context.getNode(), 'Shopify did not return an access token for the provided client credentials.', { itemIndex });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../../nodes/ShopifyCustom/shared/graphql/client.ts"],"names":[],"mappings":";;;AAwEA,wDAEC;AAWD,kEAgBC;AAED,8DAQC;AAED,sEAmBC;AAED,kEA0BC;AAED,0CAOC;
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../../nodes/ShopifyCustom/shared/graphql/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,7 @@ const metaobject_1 = require("./templates/metaobject");
|
|
|
14
14
|
const order_1 = require("./templates/order");
|
|
15
15
|
const product_1 = require("./templates/product");
|
|
16
16
|
const productVariant_1 = require("./templates/productVariant");
|
|
17
|
+
const taxonomy_1 = require("./templates/taxonomy");
|
|
17
18
|
const ruleConditions_1 = require("../collections/ruleConditions");
|
|
18
19
|
const definitions_1 = require("../metafields/definitions");
|
|
19
20
|
function isObject(value) {
|
|
@@ -125,6 +126,19 @@ function getConnectionVariables(parameters) {
|
|
|
125
126
|
reverse: asBoolean((_f = (_e = sorting.reverse) !== null && _e !== void 0 ? _e : options.reverse) !== null && _f !== void 0 ? _f : parameters.reverse),
|
|
126
127
|
};
|
|
127
128
|
}
|
|
129
|
+
function getTaxonomyOptions(parameters) {
|
|
130
|
+
return isObject(parameters.taxonomyOptions) ? parameters.taxonomyOptions : {};
|
|
131
|
+
}
|
|
132
|
+
function getTaxonomyCategoryConnectionVariables(parameters, filters = {}) {
|
|
133
|
+
var _a;
|
|
134
|
+
const options = getTaxonomyOptions(parameters);
|
|
135
|
+
const limit = (_a = asNumber(parameters.limit)) !== null && _a !== void 0 ? _a : 50;
|
|
136
|
+
return {
|
|
137
|
+
first: Math.max(1, Math.trunc(limit)),
|
|
138
|
+
after: asString(options.afterCursor),
|
|
139
|
+
...filters,
|
|
140
|
+
};
|
|
141
|
+
}
|
|
128
142
|
function parseSelectedMetafieldKeys(value) {
|
|
129
143
|
if (!Array.isArray(value)) {
|
|
130
144
|
return undefined;
|
|
@@ -900,6 +914,17 @@ const operationRegistry = {
|
|
|
900
914
|
mapSimplified: (data) => mapSingleNode(data, ['productUpdate', 'product']),
|
|
901
915
|
getUserErrors: (data) => parseUserErrors(data, ['productUpdate']),
|
|
902
916
|
},
|
|
917
|
+
'product.setCategory': {
|
|
918
|
+
document: product_1.PRODUCT_SET_CATEGORY_MUTATION,
|
|
919
|
+
buildVariables: (parameters) => ({
|
|
920
|
+
product: {
|
|
921
|
+
id: asString(parameters.productId),
|
|
922
|
+
category: asString(parameters.categoryId),
|
|
923
|
+
},
|
|
924
|
+
}),
|
|
925
|
+
mapSimplified: (data) => mapSingleNode(data, ['productUpdate', 'product']),
|
|
926
|
+
getUserErrors: (data) => parseUserErrors(data, ['productUpdate']),
|
|
927
|
+
},
|
|
903
928
|
'product.delete': {
|
|
904
929
|
document: product_1.PRODUCT_DELETE_MUTATION,
|
|
905
930
|
buildVariables: (parameters) => ({
|
|
@@ -1607,6 +1632,60 @@ const operationRegistry = {
|
|
|
1607
1632
|
: [],
|
|
1608
1633
|
getUserErrors: (data) => parseUserErrors(data, ['translationsRemove']),
|
|
1609
1634
|
},
|
|
1635
|
+
'taxonomy.searchCategories': {
|
|
1636
|
+
document: taxonomy_1.TAXONOMY_CATEGORIES_QUERY,
|
|
1637
|
+
buildVariables: (parameters) => getTaxonomyCategoryConnectionVariables(parameters, {
|
|
1638
|
+
search: asString(parameters.search),
|
|
1639
|
+
}),
|
|
1640
|
+
mapSimplified: (data) => mapNodesFromConnection(data, ['taxonomy', 'categories']),
|
|
1641
|
+
pagination: {
|
|
1642
|
+
connectionPath: ['taxonomy', 'categories'],
|
|
1643
|
+
},
|
|
1644
|
+
},
|
|
1645
|
+
'taxonomy.getRootCategories': {
|
|
1646
|
+
document: taxonomy_1.TAXONOMY_CATEGORIES_QUERY,
|
|
1647
|
+
buildVariables: (parameters) => getTaxonomyCategoryConnectionVariables(parameters),
|
|
1648
|
+
mapSimplified: (data) => mapNodesFromConnection(data, ['taxonomy', 'categories']),
|
|
1649
|
+
pagination: {
|
|
1650
|
+
connectionPath: ['taxonomy', 'categories'],
|
|
1651
|
+
},
|
|
1652
|
+
},
|
|
1653
|
+
'taxonomy.getChildren': {
|
|
1654
|
+
document: taxonomy_1.TAXONOMY_CATEGORIES_QUERY,
|
|
1655
|
+
buildVariables: (parameters) => getTaxonomyCategoryConnectionVariables(parameters, {
|
|
1656
|
+
childrenOf: asString(parameters.categoryId),
|
|
1657
|
+
}),
|
|
1658
|
+
mapSimplified: (data) => mapNodesFromConnection(data, ['taxonomy', 'categories']),
|
|
1659
|
+
pagination: {
|
|
1660
|
+
connectionPath: ['taxonomy', 'categories'],
|
|
1661
|
+
},
|
|
1662
|
+
},
|
|
1663
|
+
'taxonomy.getDescendants': {
|
|
1664
|
+
document: taxonomy_1.TAXONOMY_CATEGORIES_QUERY,
|
|
1665
|
+
buildVariables: (parameters) => getTaxonomyCategoryConnectionVariables(parameters, {
|
|
1666
|
+
descendantsOf: asString(parameters.categoryId),
|
|
1667
|
+
}),
|
|
1668
|
+
mapSimplified: (data) => mapNodesFromConnection(data, ['taxonomy', 'categories']),
|
|
1669
|
+
pagination: {
|
|
1670
|
+
connectionPath: ['taxonomy', 'categories'],
|
|
1671
|
+
},
|
|
1672
|
+
},
|
|
1673
|
+
'taxonomy.get': {
|
|
1674
|
+
document: taxonomy_1.TAXONOMY_CATEGORY_GET_QUERY,
|
|
1675
|
+
buildVariables: (parameters) => ({
|
|
1676
|
+
id: asString(parameters.categoryId),
|
|
1677
|
+
}),
|
|
1678
|
+
mapSimplified: (data) => mapSingleNode(data, ['node']),
|
|
1679
|
+
},
|
|
1680
|
+
'taxonomy.getCategoryAttributes': {
|
|
1681
|
+
document: taxonomy_1.TAXONOMY_CATEGORY_ATTRIBUTES_QUERY,
|
|
1682
|
+
buildVariables: (parameters) => ({
|
|
1683
|
+
id: asString(parameters.categoryId),
|
|
1684
|
+
first: clampConnectionLimit(parameters.attributeLimit, 50),
|
|
1685
|
+
valuesFirst: clampConnectionLimit(parameters.valueLimit, 50),
|
|
1686
|
+
}),
|
|
1687
|
+
mapSimplified: (data) => mapSingleNode(data, ['node']),
|
|
1688
|
+
},
|
|
1610
1689
|
'metaobject.create': {
|
|
1611
1690
|
document: metaobject_1.METAOBJECT_CREATE_MUTATION,
|
|
1612
1691
|
buildVariables: (parameters) => ({
|