ecomcoder-cli 1.0.0 → 1.0.2
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/dist/cli.js +9 -5
- package/dist/cli.js.map +1 -1
- package/dist/commands/create-metafield.d.ts.map +1 -1
- package/dist/commands/create-metafield.js +77 -61
- package/dist/commands/create-metafield.js.map +1 -1
- package/dist/lib/api-client.js +1 -1
- package/dist/lib/api-client.js.map +1 -1
- package/package.json +5 -2
package/dist/cli.js
CHANGED
|
@@ -21,7 +21,7 @@ COMMANDS:
|
|
|
21
21
|
products create Create dummy Shopify products for testing
|
|
22
22
|
products list List products in your Shopify store
|
|
23
23
|
products set-rating Set rating metafields on a product
|
|
24
|
-
metafield create Create
|
|
24
|
+
metafield create Create metafield definition
|
|
25
25
|
metafield get Get metafield definition(s)
|
|
26
26
|
|
|
27
27
|
GLOBAL OPTIONS:
|
|
@@ -43,8 +43,7 @@ EXAMPLES:
|
|
|
43
43
|
ecomcoder products set-rating --product-id="gid://shopify/Product/123" --rating=4.5 --count=127
|
|
44
44
|
|
|
45
45
|
# Create a metafield definition
|
|
46
|
-
ecomcoder metafield create --name="
|
|
47
|
-
--description="Related products" --type=list.product_reference --owner-type=PRODUCT
|
|
46
|
+
ecomcoder metafield create --name="Rating" --key=rating --type=number_decimal --owner-type=PRODUCT
|
|
48
47
|
|
|
49
48
|
# Get metafield definition
|
|
50
49
|
ecomcoder metafield get --namespace=ecomcoder --key=upsell --owner-type=PRODUCT
|
|
@@ -55,13 +54,18 @@ For more help on specific commands, run:
|
|
|
55
54
|
}
|
|
56
55
|
async function main() {
|
|
57
56
|
const args = process.argv.slice(2);
|
|
58
|
-
// Show help if no arguments
|
|
59
|
-
if (args.length === 0
|
|
57
|
+
// Show help only if no arguments (not if help flag is after a subcommand)
|
|
58
|
+
if (args.length === 0) {
|
|
60
59
|
showHelp();
|
|
61
60
|
process.exit(0);
|
|
62
61
|
}
|
|
63
62
|
const positional = getPositionalArgs(args);
|
|
64
63
|
const [command, subcommand] = positional;
|
|
64
|
+
// Show main help if help flag with no command
|
|
65
|
+
if ((args.includes('--help') || args.includes('-h')) && !command) {
|
|
66
|
+
showHelp();
|
|
67
|
+
process.exit(0);
|
|
68
|
+
}
|
|
65
69
|
// Route to appropriate command handler
|
|
66
70
|
try {
|
|
67
71
|
if (command === 'products') {
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA;;;;;;;;;GASG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,SAAS,QAAQ;IACf,OAAO,CAAC,GAAG,CAAC
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-metafield.d.ts","sourceRoot":"","sources":["../../src/commands/create-metafield.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"create-metafield.d.ts","sourceRoot":"","sources":["../../src/commands/create-metafield.ts"],"names":[],"mappings":"AAmEA,wBAAsB,GAAG,CAAC,IAAI,GAAE,MAAM,EAA0B,iBAsF/D"}
|
|
@@ -8,25 +8,58 @@ Create Shopify Metafield Definition
|
|
|
8
8
|
USAGE:
|
|
9
9
|
ecomcoder metafield create [OPTIONS]
|
|
10
10
|
|
|
11
|
-
REQUIRED
|
|
12
|
-
--name Display name
|
|
13
|
-
--
|
|
14
|
-
--
|
|
15
|
-
--
|
|
16
|
-
--type Metafield type (see examples below)
|
|
17
|
-
--owner-type Owner type: PRODUCT, COLLECTION, CUSTOMER, ORDER, SHOP, VARIANT
|
|
11
|
+
REQUIRED:
|
|
12
|
+
--name Display name
|
|
13
|
+
--key Unique key
|
|
14
|
+
--type Data type
|
|
15
|
+
--owner-type Resource type (PRODUCT, COLLECTION, CUSTOMER, ORDER, VARIANT, etc.)
|
|
18
16
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
boolean, date, date_time, json, url, rating, list.product_reference
|
|
22
|
-
|
|
23
|
-
OTHER OPTIONS:
|
|
17
|
+
OPTIONAL:
|
|
18
|
+
--description Description (optional)
|
|
24
19
|
--session-id Session ID (auto-provided via SESSION_ID env var)
|
|
25
|
-
--help, -h Show this help
|
|
20
|
+
--help, -h Show this help
|
|
21
|
+
|
|
22
|
+
NOTE:
|
|
23
|
+
Namespace is always set to "ecomcoder"
|
|
24
|
+
|
|
25
|
+
AVAILABLE TYPES:
|
|
26
|
+
(Text)
|
|
27
|
+
single_line_text_field, multi_line_text_field, rich_text_field
|
|
28
|
+
|
|
29
|
+
(Number)
|
|
30
|
+
number_integer, number_decimal
|
|
31
|
+
|
|
32
|
+
(Date/Time)
|
|
33
|
+
date, date_time
|
|
34
|
+
|
|
35
|
+
(Other)
|
|
36
|
+
boolean, color, json, url, rating, link, id, money
|
|
37
|
+
|
|
38
|
+
(Measurement)
|
|
39
|
+
dimension, volume, weight
|
|
40
|
+
|
|
41
|
+
(Reference)
|
|
42
|
+
product_reference, variant_reference, collection_reference, page_reference,
|
|
43
|
+
file_reference, article_reference, customer_reference, company_reference,
|
|
44
|
+
metaobject_reference, mixed_reference, product_taxonomy_value_reference
|
|
45
|
+
|
|
46
|
+
(List - use list.TYPE_NAME)
|
|
47
|
+
list.single_line_text_field, list.number_integer, list.number_decimal,
|
|
48
|
+
list.date, list.date_time, list.color, list.url, list.rating, list.link,
|
|
49
|
+
list.id, list.dimension, list.volume, list.weight, list.product_reference,
|
|
50
|
+
list.variant_reference, list.collection_reference, list.page_reference,
|
|
51
|
+
list.file_reference, list.article_reference, list.customer_reference,
|
|
52
|
+
list.metaobject_reference, list.mixed_reference, list.product_taxonomy_value_reference
|
|
26
53
|
|
|
27
54
|
EXAMPLES:
|
|
28
|
-
|
|
29
|
-
|
|
55
|
+
# Simple text field
|
|
56
|
+
ecomcoder metafield create --name="Custom Note" --key=note --type=single_line_text_field --owner-type=PRODUCT
|
|
57
|
+
|
|
58
|
+
# Rating field
|
|
59
|
+
ecomcoder metafield create --name="Rating" --key=rating --type=number_decimal --owner-type=PRODUCT
|
|
60
|
+
|
|
61
|
+
# Product reference list
|
|
62
|
+
ecomcoder metafield create --name="Upsells" --key=upsell --type=list.product_reference --owner-type=PRODUCT
|
|
30
63
|
`);
|
|
31
64
|
process.exit(0);
|
|
32
65
|
}
|
|
@@ -35,27 +68,38 @@ export async function run(argv = process.argv.slice(2)) {
|
|
|
35
68
|
showHelp();
|
|
36
69
|
}
|
|
37
70
|
const args = parseArgs(argv);
|
|
38
|
-
|
|
71
|
+
// Check required args
|
|
72
|
+
const required = ['name', 'key', 'type', 'ownerType'];
|
|
39
73
|
const missing = required.filter(k => !args[k]);
|
|
40
74
|
if (missing.length > 0) {
|
|
41
75
|
console.error(JSON.stringify({
|
|
42
76
|
success: false,
|
|
43
|
-
error: `Missing required
|
|
77
|
+
error: `Missing required: ${missing.join(', ')}`
|
|
44
78
|
}));
|
|
45
79
|
process.exit(1);
|
|
46
80
|
}
|
|
47
81
|
try {
|
|
48
82
|
const sessionId = getSessionId(args.sessionId);
|
|
49
83
|
const credentials = await getCredentials(sessionId);
|
|
50
|
-
|
|
51
|
-
|
|
84
|
+
const definition = {
|
|
85
|
+
name: args.name,
|
|
86
|
+
namespace: 'ecomcoder',
|
|
87
|
+
key: args.key,
|
|
88
|
+
type: args.type,
|
|
89
|
+
ownerType: args.ownerType
|
|
90
|
+
};
|
|
91
|
+
// Add description only if provided
|
|
92
|
+
if (args.description) {
|
|
93
|
+
definition.description = args.description;
|
|
94
|
+
}
|
|
95
|
+
const result = await shopifyGraphQL(credentials, `
|
|
52
96
|
mutation CreateMetafieldDefinition($definition: MetafieldDefinitionInput!) {
|
|
53
97
|
metafieldDefinitionCreate(definition: $definition) {
|
|
54
98
|
createdDefinition {
|
|
55
99
|
id
|
|
56
100
|
name
|
|
57
|
-
key
|
|
58
101
|
namespace
|
|
102
|
+
key
|
|
59
103
|
type { name }
|
|
60
104
|
ownerType
|
|
61
105
|
}
|
|
@@ -66,52 +110,24 @@ export async function run(argv = process.argv.slice(2)) {
|
|
|
66
110
|
}
|
|
67
111
|
}
|
|
68
112
|
}
|
|
69
|
-
`, {
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
description: args.description,
|
|
75
|
-
type: args.type,
|
|
76
|
-
ownerType: args.ownerType
|
|
77
|
-
}
|
|
78
|
-
});
|
|
79
|
-
const createdDefinition = createResult?.data?.metafieldDefinitionCreate?.createdDefinition;
|
|
80
|
-
const userErrors = createResult?.data?.metafieldDefinitionCreate?.userErrors;
|
|
81
|
-
if (userErrors && userErrors.length > 0) {
|
|
82
|
-
throw new Error(`Metafield creation failed: ${userErrors.map((e) => e.message).join(', ')}`);
|
|
113
|
+
`, { definition });
|
|
114
|
+
const created = result?.data?.metafieldDefinitionCreate?.createdDefinition;
|
|
115
|
+
const errors = result?.data?.metafieldDefinitionCreate?.userErrors;
|
|
116
|
+
if (errors && errors.length > 0) {
|
|
117
|
+
throw new Error(errors.map((e) => e.message).join(', '));
|
|
83
118
|
}
|
|
84
|
-
if (!
|
|
85
|
-
throw new Error('
|
|
119
|
+
if (!created) {
|
|
120
|
+
throw new Error('No definition returned');
|
|
86
121
|
}
|
|
87
|
-
// Pin the metafield
|
|
88
|
-
const pinResult = await shopifyGraphQL(credentials, `
|
|
89
|
-
mutation metafieldDefinitionPin($definitionId: ID!) {
|
|
90
|
-
metafieldDefinitionPin(definitionId: $definitionId) {
|
|
91
|
-
pinnedDefinition {
|
|
92
|
-
id
|
|
93
|
-
pinnedPosition
|
|
94
|
-
}
|
|
95
|
-
userErrors {
|
|
96
|
-
message
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
`, {
|
|
101
|
-
definitionId: createdDefinition.id
|
|
102
|
-
});
|
|
103
|
-
const pinErrors = pinResult?.data?.metafieldDefinitionPin?.userErrors;
|
|
104
122
|
console.log(JSON.stringify({
|
|
105
123
|
success: true,
|
|
106
124
|
data: {
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
pinned: pinResult?.data?.metafieldDefinitionPin?.pinnedDefinition ? true : false,
|
|
114
|
-
warnings: pinErrors && pinErrors.length > 0 ? `Pin failed: ${pinErrors.map((e) => e.message).join(', ')}` : null
|
|
125
|
+
id: created.id,
|
|
126
|
+
name: created.name,
|
|
127
|
+
namespace: created.namespace,
|
|
128
|
+
key: created.key,
|
|
129
|
+
type: created.type?.name,
|
|
130
|
+
ownerType: created.ownerType
|
|
115
131
|
}
|
|
116
132
|
}));
|
|
117
133
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-metafield.js","sourceRoot":"","sources":["../../src/commands/create-metafield.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAE/D,SAAS,QAAQ;IACf,OAAO,CAAC,GAAG,CAAC
|
|
1
|
+
{"version":3,"file":"create-metafield.js","sourceRoot":"","sources":["../../src/commands/create-metafield.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/api-client.js
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* or explicit sessionId parameter
|
|
9
9
|
*/
|
|
10
10
|
export async function getCredentials(sessionId) {
|
|
11
|
-
const backendURL = process.env.BACKEND_URL
|
|
11
|
+
const backendURL = process.env.BACKEND_URL;
|
|
12
12
|
try {
|
|
13
13
|
const response = await fetch(`${backendURL}/api/internal/shopify-credentials`, {
|
|
14
14
|
method: 'POST',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-client.js","sourceRoot":"","sources":["../../src/lib/api-client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,SAAiB;IACpD,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,
|
|
1
|
+
{"version":3,"file":"api-client.js","sourceRoot":"","sources":["../../src/lib/api-client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,SAAiB;IACpD,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;IAE3C,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,UAAU,mCAAmC,EAAE;YAC7E,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,CAAC;SACpC,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,wBAAwB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAC7D,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAA6B,CAAC;QAE9D,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;YACnD,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC/D,CAAC;QAED,OAAO;YACL,UAAU,EAAE,IAAI,CAAC,UAAoB;YACrC,oBAAoB,EAAE,IAAI,CAAC,oBAA8B;SAC1D,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,gCAAgC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC;IAC9G,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,iBAA0B;IACrD,MAAM,SAAS,GAAG,iBAAiB,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;IAE9D,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,2FAA2F,CAAC,CAAC;IAC/G,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ecomcoder-cli",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.2",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "CLI tools for EcomCoder - Shopify development utilities",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -11,7 +11,10 @@
|
|
|
11
11
|
"scripts": {
|
|
12
12
|
"build": "tsc",
|
|
13
13
|
"dev": "tsc --watch",
|
|
14
|
-
"prepublishOnly": "npm run build"
|
|
14
|
+
"prepublishOnly": "npm run build",
|
|
15
|
+
"release:patch": "npm version patch && npm publish",
|
|
16
|
+
"release:minor": "npm version minor && npm publish",
|
|
17
|
+
"release:major": "npm version major && npm publish"
|
|
15
18
|
},
|
|
16
19
|
"files": [
|
|
17
20
|
"dist",
|