ecomcoder-cli 1.3.6 → 1.3.8
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/commands/product/add-options.d.ts +8 -0
- package/dist/commands/product/add-options.d.ts.map +1 -0
- package/dist/commands/product/add-options.js +171 -0
- package/dist/commands/product/add-options.js.map +1 -0
- package/dist/commands/product/create.d.ts.map +1 -1
- package/dist/commands/product/create.js +13 -7
- package/dist/commands/product/create.js.map +1 -1
- package/dist/commands/product/index.d.ts.map +1 -1
- package/dist/commands/product/index.js +16 -0
- package/dist/commands/product/index.js.map +1 -1
- package/dist/commands/product/queries.d.ts +22 -2
- package/dist/commands/product/queries.d.ts.map +1 -1
- package/dist/commands/product/queries.js +163 -3
- package/dist/commands/product/queries.js.map +1 -1
- package/dist/commands/product/service.d.ts +30 -1
- package/dist/commands/product/service.d.ts.map +1 -1
- package/dist/commands/product/service.js +222 -24
- package/dist/commands/product/service.js.map +1 -1
- package/dist/commands/product/types.d.ts +74 -0
- package/dist/commands/product/types.d.ts.map +1 -1
- package/dist/commands/product/update-options.d.ts +8 -0
- package/dist/commands/product/update-options.d.ts.map +1 -0
- package/dist/commands/product/update-options.js +235 -0
- package/dist/commands/product/update-options.js.map +1 -0
- package/package.json +2 -3
|
@@ -0,0 +1,235 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Update Product Options Command
|
|
3
|
+
*
|
|
4
|
+
* Following Command Pattern - thin orchestration layer
|
|
5
|
+
* Delegates business logic to ProductService
|
|
6
|
+
*/
|
|
7
|
+
import { getCredentials, getSessionId } from '../../lib/api-client.js';
|
|
8
|
+
import { parseArgs, hasHelpFlag } from '../../lib/args-parser.js';
|
|
9
|
+
import { ProductService } from './service.js';
|
|
10
|
+
function showHelp() {
|
|
11
|
+
console.log(`
|
|
12
|
+
Update Product Options
|
|
13
|
+
|
|
14
|
+
USAGE:
|
|
15
|
+
ecomcoder product update-options [OPTIONS]
|
|
16
|
+
|
|
17
|
+
REQUIRED OPTIONS:
|
|
18
|
+
--id <id> Product ID (numeric or GID format)
|
|
19
|
+
--option-id <id> Option ID to update (numeric or GID format)
|
|
20
|
+
|
|
21
|
+
OPTIONAL OPTIONS:
|
|
22
|
+
--name <name> New option name (rename)
|
|
23
|
+
--position <number> New position (1-3, reorder)
|
|
24
|
+
--add-values <json> JSON array of value names to add
|
|
25
|
+
--update-values <json> JSON array of value updates
|
|
26
|
+
--delete-values <json> JSON array of value IDs to remove
|
|
27
|
+
--variant-strategy <strategy> Variant creation strategy
|
|
28
|
+
Values: LEAVE_AS_IS (default), CREATE
|
|
29
|
+
--session-id <id> Session ID (auto-provided)
|
|
30
|
+
--help, -h Show this help message
|
|
31
|
+
|
|
32
|
+
VALUE UPDATE FORMAT (--update-values):
|
|
33
|
+
[
|
|
34
|
+
{"id": "gid://shopify/ProductOptionValue/123", "name": "NewName"}
|
|
35
|
+
]
|
|
36
|
+
|
|
37
|
+
EXAMPLES:
|
|
38
|
+
# Rename option
|
|
39
|
+
ecomcoder product update-options \\
|
|
40
|
+
--id=123 \\
|
|
41
|
+
--option-id="gid://shopify/ProductOption/456" \\
|
|
42
|
+
--name="Tint"
|
|
43
|
+
|
|
44
|
+
# Add new values to existing option
|
|
45
|
+
ecomcoder product update-options \\
|
|
46
|
+
--id=123 \\
|
|
47
|
+
--option-id=456 \\
|
|
48
|
+
--add-values='["XXL","XXXL"]'
|
|
49
|
+
|
|
50
|
+
# Reorder option position
|
|
51
|
+
ecomcoder product update-options \\
|
|
52
|
+
--id=123 \\
|
|
53
|
+
--option-id=456 \\
|
|
54
|
+
--position=1
|
|
55
|
+
|
|
56
|
+
# Update existing value name
|
|
57
|
+
ecomcoder product update-options \\
|
|
58
|
+
--id=123 \\
|
|
59
|
+
--option-id=456 \\
|
|
60
|
+
--update-values='[{"id":"gid://shopify/ProductOptionValue/789","name":"Extra Large"}]'
|
|
61
|
+
|
|
62
|
+
# Delete option values
|
|
63
|
+
ecomcoder product update-options \\
|
|
64
|
+
--id=123 \\
|
|
65
|
+
--option-id=456 \\
|
|
66
|
+
--delete-values='["gid://shopify/ProductOptionValue/789"]'
|
|
67
|
+
|
|
68
|
+
# Combine multiple updates
|
|
69
|
+
ecomcoder product update-options \\
|
|
70
|
+
--id=123 \\
|
|
71
|
+
--option-id=456 \\
|
|
72
|
+
--name="Size" \\
|
|
73
|
+
--position=1 \\
|
|
74
|
+
--add-values='["XXL"]'
|
|
75
|
+
|
|
76
|
+
VARIANT STRATEGIES:
|
|
77
|
+
LEAVE_AS_IS Don't create variants automatically (default)
|
|
78
|
+
CREATE Auto-generate variants for new option values
|
|
79
|
+
|
|
80
|
+
NOTES:
|
|
81
|
+
- At least one update field (name, position, add/update/delete values) is required
|
|
82
|
+
- Position values must be sequential (1, 2, 3)
|
|
83
|
+
- Deleting option values may affect existing variants
|
|
84
|
+
- Option names must remain unique within the product
|
|
85
|
+
`);
|
|
86
|
+
process.exit(0);
|
|
87
|
+
}
|
|
88
|
+
export async function run(argv = process.argv.slice(2)) {
|
|
89
|
+
if (hasHelpFlag(argv)) {
|
|
90
|
+
showHelp();
|
|
91
|
+
}
|
|
92
|
+
const args = parseArgs(argv);
|
|
93
|
+
// Validate required arguments
|
|
94
|
+
if (!args.id) {
|
|
95
|
+
console.error(JSON.stringify({
|
|
96
|
+
success: false,
|
|
97
|
+
error: 'Missing required argument: --id'
|
|
98
|
+
}));
|
|
99
|
+
process.exit(1);
|
|
100
|
+
}
|
|
101
|
+
if (!args.optionId) {
|
|
102
|
+
console.error(JSON.stringify({
|
|
103
|
+
success: false,
|
|
104
|
+
error: 'Missing required argument: --option-id'
|
|
105
|
+
}));
|
|
106
|
+
process.exit(1);
|
|
107
|
+
}
|
|
108
|
+
// Validate at least one update field is provided
|
|
109
|
+
if (!args.name && !args.position && !args.addValues && !args.updateValues && !args.deleteValues) {
|
|
110
|
+
console.error(JSON.stringify({
|
|
111
|
+
success: false,
|
|
112
|
+
error: 'At least one update field is required (name, position, add-values, update-values, or delete-values)'
|
|
113
|
+
}));
|
|
114
|
+
process.exit(1);
|
|
115
|
+
}
|
|
116
|
+
try {
|
|
117
|
+
// Parse JSON fields if provided
|
|
118
|
+
let addValues;
|
|
119
|
+
let updateValues;
|
|
120
|
+
let deleteValues;
|
|
121
|
+
if (args.addValues) {
|
|
122
|
+
try {
|
|
123
|
+
addValues = JSON.parse(args.addValues);
|
|
124
|
+
if (!Array.isArray(addValues)) {
|
|
125
|
+
console.error(JSON.stringify({
|
|
126
|
+
success: false,
|
|
127
|
+
error: 'add-values must be a JSON array'
|
|
128
|
+
}));
|
|
129
|
+
process.exit(1);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
catch (parseError) {
|
|
133
|
+
console.error(JSON.stringify({
|
|
134
|
+
success: false,
|
|
135
|
+
error: `Invalid add-values JSON format: ${parseError.message}`
|
|
136
|
+
}));
|
|
137
|
+
process.exit(1);
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
if (args.updateValues) {
|
|
141
|
+
try {
|
|
142
|
+
updateValues = JSON.parse(args.updateValues);
|
|
143
|
+
if (!Array.isArray(updateValues)) {
|
|
144
|
+
console.error(JSON.stringify({
|
|
145
|
+
success: false,
|
|
146
|
+
error: 'update-values must be a JSON array'
|
|
147
|
+
}));
|
|
148
|
+
process.exit(1);
|
|
149
|
+
}
|
|
150
|
+
// Validate each update value has required fields
|
|
151
|
+
for (let i = 0; i < updateValues.length; i++) {
|
|
152
|
+
if (!updateValues[i].id || !updateValues[i].name) {
|
|
153
|
+
console.error(JSON.stringify({
|
|
154
|
+
success: false,
|
|
155
|
+
error: `update-values at index ${i} must have 'id' and 'name' fields`
|
|
156
|
+
}));
|
|
157
|
+
process.exit(1);
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
catch (parseError) {
|
|
162
|
+
console.error(JSON.stringify({
|
|
163
|
+
success: false,
|
|
164
|
+
error: `Invalid update-values JSON format: ${parseError.message}`
|
|
165
|
+
}));
|
|
166
|
+
process.exit(1);
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
if (args.deleteValues) {
|
|
170
|
+
try {
|
|
171
|
+
deleteValues = JSON.parse(args.deleteValues);
|
|
172
|
+
if (!Array.isArray(deleteValues)) {
|
|
173
|
+
console.error(JSON.stringify({
|
|
174
|
+
success: false,
|
|
175
|
+
error: 'delete-values must be a JSON array'
|
|
176
|
+
}));
|
|
177
|
+
process.exit(1);
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
catch (parseError) {
|
|
181
|
+
console.error(JSON.stringify({
|
|
182
|
+
success: false,
|
|
183
|
+
error: `Invalid delete-values JSON format: ${parseError.message}`
|
|
184
|
+
}));
|
|
185
|
+
process.exit(1);
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
// Validate position if provided
|
|
189
|
+
if (args.position !== undefined) {
|
|
190
|
+
const position = parseInt(args.position, 10);
|
|
191
|
+
if (isNaN(position) || position < 1 || position > 3) {
|
|
192
|
+
console.error(JSON.stringify({
|
|
193
|
+
success: false,
|
|
194
|
+
error: 'Position must be a number between 1 and 3'
|
|
195
|
+
}));
|
|
196
|
+
process.exit(1);
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
// Validate variant strategy if provided
|
|
200
|
+
if (args.variantStrategy && !['LEAVE_AS_IS', 'CREATE'].includes(args.variantStrategy)) {
|
|
201
|
+
console.error(JSON.stringify({
|
|
202
|
+
success: false,
|
|
203
|
+
error: 'Invalid variant strategy. Must be LEAVE_AS_IS or CREATE'
|
|
204
|
+
}));
|
|
205
|
+
process.exit(1);
|
|
206
|
+
}
|
|
207
|
+
// Get credentials
|
|
208
|
+
const sessionId = getSessionId(args.sessionId);
|
|
209
|
+
const credentials = await getCredentials(sessionId, args.backendUrl, args.jwt);
|
|
210
|
+
// Execute via service
|
|
211
|
+
const result = await ProductService.updateOption(credentials, {
|
|
212
|
+
id: args.id,
|
|
213
|
+
optionId: args.optionId,
|
|
214
|
+
name: args.name,
|
|
215
|
+
position: args.position ? parseInt(args.position, 10) : undefined,
|
|
216
|
+
addValues,
|
|
217
|
+
updateValues,
|
|
218
|
+
deleteValues,
|
|
219
|
+
variantStrategy: args.variantStrategy
|
|
220
|
+
});
|
|
221
|
+
// Output result
|
|
222
|
+
console.log(JSON.stringify(result, null, 2));
|
|
223
|
+
if (!result.success) {
|
|
224
|
+
process.exit(1);
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
catch (error) {
|
|
228
|
+
console.error(JSON.stringify({
|
|
229
|
+
success: false,
|
|
230
|
+
error: error.message || 'Unknown error occurred'
|
|
231
|
+
}));
|
|
232
|
+
process.exit(1);
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
//# sourceMappingURL=update-options.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-options.js","sourceRoot":"","sources":["../../../src/commands/product/update-options.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ecomcoder-cli",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.8",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "CLI tools for EcomCoder - Shopify development utilities",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -49,8 +49,7 @@
|
|
|
49
49
|
},
|
|
50
50
|
"dependencies": {
|
|
51
51
|
"@pinecone-database/pinecone": "^6.1.3",
|
|
52
|
-
"@supabase/supabase-js": "^2.87.0"
|
|
53
|
-
"ecomcoder-cli": "^1.2.12"
|
|
52
|
+
"@supabase/supabase-js": "^2.87.0"
|
|
54
53
|
},
|
|
55
54
|
"devDependencies": {
|
|
56
55
|
"@types/node": "^20.10.0",
|