@ecomweb/cli 0.2.0 → 0.3.1

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 (114) hide show
  1. package/README.md +11 -2
  2. package/dist/base-command.d.ts +3 -0
  3. package/dist/base-command.js +2 -0
  4. package/dist/base-command.js.map +1 -1
  5. package/dist/commands/assets/upload-and-link.js +2 -1
  6. package/dist/commands/assets/upload-and-link.js.map +1 -1
  7. package/dist/commands/assets/upload.js +2 -1
  8. package/dist/commands/assets/upload.js.map +1 -1
  9. package/dist/commands/attributes/list.d.ts +2 -0
  10. package/dist/commands/attributes/list.js +20 -9
  11. package/dist/commands/attributes/list.js.map +1 -1
  12. package/dist/commands/auth/login.js +9 -0
  13. package/dist/commands/auth/login.js.map +1 -1
  14. package/dist/commands/auth/status.js +8 -1
  15. package/dist/commands/auth/status.js.map +1 -1
  16. package/dist/commands/blog-posts/create.js.map +1 -1
  17. package/dist/commands/categories/all.d.ts +2 -18
  18. package/dist/commands/categories/all.js +2 -24
  19. package/dist/commands/categories/all.js.map +1 -1
  20. package/dist/commands/categories/create.d.ts +2 -27
  21. package/dist/commands/categories/create.js +2 -73
  22. package/dist/commands/categories/create.js.map +1 -1
  23. package/dist/commands/categories/delete.d.ts +2 -24
  24. package/dist/commands/categories/delete.js +2 -30
  25. package/dist/commands/categories/delete.js.map +1 -1
  26. package/dist/commands/categories/get.d.ts +2 -23
  27. package/dist/commands/categories/get.js +2 -26
  28. package/dist/commands/categories/get.js.map +1 -1
  29. package/dist/commands/categories/list.d.ts +2 -27
  30. package/dist/commands/categories/list.js +2 -65
  31. package/dist/commands/categories/list.js.map +1 -1
  32. package/dist/commands/categories/update.d.ts +2 -33
  33. package/dist/commands/categories/update.js +2 -79
  34. package/dist/commands/categories/update.js.map +1 -1
  35. package/dist/commands/collections/create.js +3 -2
  36. package/dist/commands/collections/create.js.map +1 -1
  37. package/dist/commands/deploy.js +6 -1
  38. package/dist/commands/deploy.js.map +1 -1
  39. package/dist/commands/describe.js +6 -0
  40. package/dist/commands/describe.js.map +1 -1
  41. package/dist/commands/logs.js +6 -1
  42. package/dist/commands/logs.js.map +1 -1
  43. package/dist/commands/product-services/assign.d.ts +26 -0
  44. package/dist/commands/product-services/assign.js +51 -0
  45. package/dist/commands/product-services/assign.js.map +1 -0
  46. package/dist/commands/product-services/create.d.ts +25 -0
  47. package/dist/commands/product-services/create.js +65 -0
  48. package/dist/commands/product-services/create.js.map +1 -0
  49. package/dist/commands/product-services/delete.d.ts +24 -0
  50. package/dist/commands/product-services/delete.js +30 -0
  51. package/dist/commands/product-services/delete.js.map +1 -0
  52. package/dist/commands/product-services/list.d.ts +19 -0
  53. package/dist/commands/product-services/list.js +33 -0
  54. package/dist/commands/product-services/list.js.map +1 -0
  55. package/dist/commands/product-services/update.d.ts +31 -0
  56. package/dist/commands/product-services/update.js +66 -0
  57. package/dist/commands/product-services/update.js.map +1 -0
  58. package/dist/commands/product-tags/list.d.ts +5 -0
  59. package/dist/commands/product-tags/list.js +36 -4
  60. package/dist/commands/product-tags/list.js.map +1 -1
  61. package/dist/commands/products/create.d.ts +2 -1
  62. package/dist/commands/products/create.js +6 -3
  63. package/dist/commands/products/create.js.map +1 -1
  64. package/dist/commands/products/get.d.ts +0 -1
  65. package/dist/commands/products/get.js +1 -3
  66. package/dist/commands/products/get.js.map +1 -1
  67. package/dist/commands/products/list.d.ts +0 -2
  68. package/dist/commands/products/list.js +2 -6
  69. package/dist/commands/products/list.js.map +1 -1
  70. package/dist/commands/products/search.d.ts +0 -2
  71. package/dist/commands/products/search.js +1 -5
  72. package/dist/commands/products/search.js.map +1 -1
  73. package/dist/commands/products/update.d.ts +2 -1
  74. package/dist/commands/products/update.js +6 -3
  75. package/dist/commands/products/update.js.map +1 -1
  76. package/dist/commands/store-settings/auth/get.d.ts +18 -0
  77. package/dist/commands/store-settings/auth/get.js +23 -0
  78. package/dist/commands/store-settings/auth/get.js.map +1 -0
  79. package/dist/commands/store-settings/auth/update.d.ts +29 -0
  80. package/dist/commands/store-settings/auth/update.js +78 -0
  81. package/dist/commands/store-settings/auth/update.js.map +1 -0
  82. package/dist/commands/stores/current.js +19 -2
  83. package/dist/commands/stores/current.js.map +1 -1
  84. package/dist/commands/stores/update.d.ts +22 -0
  85. package/dist/commands/stores/update.js +60 -0
  86. package/dist/commands/stores/update.js.map +1 -0
  87. package/dist/lib/api-client.d.ts +3 -1
  88. package/dist/lib/api-client.js +2 -1
  89. package/dist/lib/api-client.js.map +1 -1
  90. package/dist/lib/categories-removed.d.ts +9 -0
  91. package/dist/lib/categories-removed.js +22 -0
  92. package/dist/lib/categories-removed.js.map +1 -0
  93. package/dist/lib/config.d.ts +2 -0
  94. package/dist/lib/config.js.map +1 -1
  95. package/dist/lib/deployments.d.ts +4 -1
  96. package/dist/lib/deployments.js +15 -1
  97. package/dist/lib/deployments.js.map +1 -1
  98. package/dist/lib/email-login.d.ts +7 -0
  99. package/dist/lib/email-login.js +35 -18
  100. package/dist/lib/email-login.js.map +1 -1
  101. package/dist/lib/exit-guard.d.ts +1 -0
  102. package/dist/lib/exit-guard.js +17 -0
  103. package/dist/lib/exit-guard.js.map +1 -0
  104. package/dist/lib/multipart.d.ts +2 -0
  105. package/dist/lib/multipart.js +15 -0
  106. package/dist/lib/multipart.js.map +1 -0
  107. package/dist/lib/stdin.d.ts +6 -2
  108. package/dist/lib/stdin.js +9 -9
  109. package/dist/lib/stdin.js.map +1 -1
  110. package/dist/lib/validators.d.ts +11 -0
  111. package/dist/lib/validators.js +104 -43
  112. package/dist/lib/validators.js.map +1 -1
  113. package/oclif.manifest.json +2980 -2149
  114. package/package.json +1 -1
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@oclif/core");
4
+ const base_command_1 = require("../../base-command");
5
+ const output_1 = require("../../lib/output");
6
+ const stdin_1 = require("../../lib/stdin");
7
+ class ProductServicesCreate extends base_command_1.BaseCommand {
8
+ async run() {
9
+ const storeRef = this.requireStore();
10
+ let body = await (0, stdin_1.getJsonInput)({
11
+ stdin: this.getFlag("stdin"),
12
+ file: this.getFlag("file"),
13
+ });
14
+ if (!body) {
15
+ body = {};
16
+ if (this.getFlag("name"))
17
+ body.name = this.getFlag("name");
18
+ if (this.getFlag("description") !== undefined)
19
+ body.description = this.getFlag("description");
20
+ if (this.getFlag("icon-url") !== undefined)
21
+ body.icon_url = this.getFlag("icon-url");
22
+ if (this.getFlag("redirection-url") !== undefined)
23
+ body.redirection_url = this.getFlag("redirection-url");
24
+ if (this.getFlag("sort-index") !== undefined)
25
+ body.sort_index = this.getFlag("sort-index");
26
+ if (Object.keys(body).length === 0) {
27
+ this.outputJson({
28
+ error: {
29
+ code: "NO_INPUT",
30
+ message: "No input provided.",
31
+ hint: "Run: ecomweb describe product-services --operation create",
32
+ },
33
+ });
34
+ this.exit(2);
35
+ return;
36
+ }
37
+ }
38
+ if (this.isDryRun) {
39
+ this.outputResult((0, output_1.mutationEnvelope)("product-services", "create (dry-run)", storeRef, body));
40
+ return;
41
+ }
42
+ const result = await this.apiClient.storePost("/product-services", body);
43
+ this.outputResult((0, output_1.mutationEnvelope)("product-services", "create", storeRef, result, {
44
+ assign: `ecomweb product-services assign <product-id> --service-ids ${result.id}`,
45
+ update: `ecomweb product-services update ${result.id} --stdin`,
46
+ }));
47
+ }
48
+ }
49
+ ProductServicesCreate.description = "Create a product service (a badge shown on product pages, like free returns)";
50
+ ProductServicesCreate.examples = [
51
+ `ecomweb product-services create --name "Miễn phí đổi trả" --icon-url https://example.com/returns.svg`,
52
+ `ecomweb product-services create --stdin <<< '{"name":"Giao hàng nhanh","description":"Trong 24h nội thành"}'`,
53
+ ];
54
+ ProductServicesCreate.flags = {
55
+ ...base_command_1.BaseCommand.baseFlags,
56
+ stdin: core_1.Flags.boolean({ description: "Read JSON body from stdin" }),
57
+ file: core_1.Flags.string({ description: "Read JSON body from file" }),
58
+ name: core_1.Flags.string({ description: "Service name (max 255 characters)" }),
59
+ description: core_1.Flags.string({ description: "Details, e.g. for a tooltip" }),
60
+ "icon-url": core_1.Flags.string({ description: "Icon or badge image URL" }),
61
+ "redirection-url": core_1.Flags.string({ description: "Where clicking the badge goes" }),
62
+ "sort-index": core_1.Flags.integer({ description: "Display order (0 first)", min: 0 }),
63
+ };
64
+ exports.default = ProductServicesCreate;
65
+ //# sourceMappingURL=create.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/commands/product-services/create.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import { BaseCommand } from "../../base-command";
2
+ export default class ProductServicesDelete extends BaseCommand {
3
+ static description: string;
4
+ static examples: string[];
5
+ static args: {
6
+ id: import("@oclif/core/lib/interfaces").Arg<number, {
7
+ max?: number;
8
+ min?: number;
9
+ }>;
10
+ };
11
+ static flags: {
12
+ "store-ref": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
13
+ "api-key": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
14
+ "api-url": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
15
+ output: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
16
+ quiet: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
17
+ "dry-run": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
18
+ profile: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
19
+ full: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
20
+ fields: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
21
+ exclude: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
22
+ };
23
+ run(): Promise<void>;
24
+ }
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@oclif/core");
4
+ const base_command_1 = require("../../base-command");
5
+ const output_1 = require("../../lib/output");
6
+ class ProductServicesDelete extends base_command_1.BaseCommand {
7
+ async run() {
8
+ const storeRef = this.requireStore();
9
+ const { args } = await this.parse(ProductServicesDelete);
10
+ if (this.isDryRun) {
11
+ this.outputResult((0, output_1.mutationEnvelope)("product-services", "delete (dry-run)", storeRef, { id: args.id }));
12
+ return;
13
+ }
14
+ await this.apiClient.storeDelete(`/product-services/${args.id}`);
15
+ this.outputResult((0, output_1.mutationEnvelope)("product-services", "delete", storeRef, { id: args.id, deleted: true }));
16
+ }
17
+ }
18
+ ProductServicesDelete.description = "Delete a product service (it is removed from every product)";
19
+ ProductServicesDelete.examples = [
20
+ "ecomweb product-services delete 3",
21
+ "ecomweb product-services delete 3 --dry-run",
22
+ ];
23
+ ProductServicesDelete.args = {
24
+ id: core_1.Args.integer({ description: "Service ID", required: true }),
25
+ };
26
+ ProductServicesDelete.flags = {
27
+ ...base_command_1.BaseCommand.baseFlags,
28
+ };
29
+ exports.default = ProductServicesDelete;
30
+ //# sourceMappingURL=delete.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../src/commands/product-services/delete.ts"],"names":[],"mappings":";;AAAA,sCAAmC;AACnC,qDAAiD;AACjD,6CAAoD;AAEpD,MAAqB,qBAAsB,SAAQ,0BAAW;IAgB5D,KAAK,CAAC,GAAG;QACP,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACrC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAEzD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,IAAI,CAAC,YAAY,CAAC,IAAA,yBAAgB,EAAC,kBAAkB,EAAE,kBAAkB,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YACvG,OAAO;QACT,CAAC;QAED,MAAM,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,qBAAqB,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAEjE,IAAI,CAAC,YAAY,CAAC,IAAA,yBAAgB,EAAC,kBAAkB,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9G,CAAC;;AA3BM,iCAAW,GAAG,6DAA6D,CAAC;AAE5E,8BAAQ,GAAG;IAChB,mCAAmC;IACnC,6CAA6C;CAC9C,CAAC;AAEK,0BAAI,GAAG;IACZ,EAAE,EAAE,WAAI,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;CAChE,CAAC;AAEK,2BAAK,GAAG;IACb,GAAG,0BAAW,CAAC,SAAS;CACzB,CAAC;kBAdiB,qBAAqB"}
@@ -0,0 +1,19 @@
1
+ import { BaseCommand } from "../../base-command";
2
+ export default class ProductServicesList extends BaseCommand {
3
+ static description: string;
4
+ static examples: string[];
5
+ static flags: {
6
+ "product-id": import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
7
+ "store-ref": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
8
+ "api-key": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
9
+ "api-url": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
10
+ output: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
11
+ quiet: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
12
+ "dry-run": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
13
+ profile: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
14
+ full: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
15
+ fields: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
16
+ exclude: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
17
+ };
18
+ run(): Promise<void>;
19
+ }
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@oclif/core");
4
+ const base_command_1 = require("../../base-command");
5
+ const output_1 = require("../../lib/output");
6
+ class ProductServicesList extends base_command_1.BaseCommand {
7
+ async run() {
8
+ const storeRef = this.requireStore();
9
+ const productId = this.getFlag("product-id");
10
+ const services = await this.apiClient.storeGet(productId !== undefined ? `/products/${productId}/services` : "/product-services");
11
+ const data = Array.isArray(services) ? services : [];
12
+ this.outputResult((0, output_1.listEnvelope)("product-services", storeRef, data, { total: data.length }, {
13
+ availableActions: ["create", "update", "delete", "assign"],
14
+ hints: {
15
+ create: `ecomweb product-services create --name "Miễn phí đổi trả"`,
16
+ update: "ecomweb product-services update <id> --stdin",
17
+ delete: "ecomweb product-services delete <id>",
18
+ assign: "ecomweb product-services assign <product-id> --service-ids 1,2",
19
+ },
20
+ }));
21
+ }
22
+ }
23
+ ProductServicesList.description = "List the store's product services (badges like free returns), or one product's";
24
+ ProductServicesList.examples = [
25
+ "ecomweb product-services list",
26
+ "ecomweb product-services list --product-id 42",
27
+ ];
28
+ ProductServicesList.flags = {
29
+ ...base_command_1.BaseCommand.baseFlags,
30
+ "product-id": core_1.Flags.integer({ description: "Only the services assigned to this product" }),
31
+ };
32
+ exports.default = ProductServicesList;
33
+ //# sourceMappingURL=list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/product-services/list.ts"],"names":[],"mappings":";;AAAA,sCAAoC;AACpC,qDAAiD;AACjD,6CAAgD;AAEhD,MAAqB,mBAAoB,SAAQ,0BAAW;IAa1D,KAAK,CAAC,GAAG;QACP,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACrC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAqB,YAAY,CAAC,CAAC;QAEjE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAC5C,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,aAAa,SAAS,WAAW,CAAC,CAAC,CAAC,mBAAmB,CAClF,CAAC;QACF,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;QAErD,IAAI,CAAC,YAAY,CACf,IAAA,qBAAY,EACV,kBAAkB,EAClB,QAAQ,EACR,IAAI,EACJ,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,EACtB;YACE,gBAAgB,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;YAC1D,KAAK,EAAE;gBACL,MAAM,EAAE,2DAA2D;gBACnE,MAAM,EAAE,8CAA8C;gBACtD,MAAM,EAAE,sCAAsC;gBAC9C,MAAM,EAAE,gEAAgE;aACzE;SACF,CACF,CACF,CAAC;IACJ,CAAC;;AAtCM,+BAAW,GAAG,gFAAgF,CAAC;AAE/F,4BAAQ,GAAG;IAChB,+BAA+B;IAC/B,+CAA+C;CAChD,CAAC;AAEK,yBAAK,GAAG;IACb,GAAG,0BAAW,CAAC,SAAS;IACxB,YAAY,EAAE,YAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,4CAA4C,EAAE,CAAC;CAC3F,CAAC;kBAXiB,mBAAmB"}
@@ -0,0 +1,31 @@
1
+ import { BaseCommand } from "../../base-command";
2
+ export default class ProductServicesUpdate extends BaseCommand {
3
+ static description: string;
4
+ static examples: string[];
5
+ static args: {
6
+ id: import("@oclif/core/lib/interfaces").Arg<number, {
7
+ max?: number;
8
+ min?: number;
9
+ }>;
10
+ };
11
+ static flags: {
12
+ stdin: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
13
+ file: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
14
+ name: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
15
+ description: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
16
+ "icon-url": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
17
+ "redirection-url": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
18
+ "sort-index": import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
19
+ "store-ref": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
20
+ "api-key": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
21
+ "api-url": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
22
+ output: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
23
+ quiet: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
24
+ "dry-run": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
25
+ profile: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
26
+ full: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
27
+ fields: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
28
+ exclude: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
29
+ };
30
+ run(): Promise<void>;
31
+ }
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@oclif/core");
4
+ const base_command_1 = require("../../base-command");
5
+ const output_1 = require("../../lib/output");
6
+ const stdin_1 = require("../../lib/stdin");
7
+ class ProductServicesUpdate extends base_command_1.BaseCommand {
8
+ async run() {
9
+ const storeRef = this.requireStore();
10
+ const { args } = await this.parse(ProductServicesUpdate);
11
+ let body = await (0, stdin_1.getJsonInput)({
12
+ stdin: this.getFlag("stdin"),
13
+ file: this.getFlag("file"),
14
+ });
15
+ if (!body) {
16
+ body = {};
17
+ if (this.getFlag("name"))
18
+ body.name = this.getFlag("name");
19
+ if (this.getFlag("description") !== undefined)
20
+ body.description = this.getFlag("description");
21
+ if (this.getFlag("icon-url") !== undefined)
22
+ body.icon_url = this.getFlag("icon-url");
23
+ if (this.getFlag("redirection-url") !== undefined)
24
+ body.redirection_url = this.getFlag("redirection-url");
25
+ if (this.getFlag("sort-index") !== undefined)
26
+ body.sort_index = this.getFlag("sort-index");
27
+ if (Object.keys(body).length === 0) {
28
+ this.outputJson({
29
+ error: {
30
+ code: "NO_INPUT",
31
+ message: "No input provided.",
32
+ hint: "Run: ecomweb describe product-services --operation update",
33
+ },
34
+ });
35
+ this.exit(2);
36
+ return;
37
+ }
38
+ }
39
+ if (this.isDryRun) {
40
+ this.outputResult((0, output_1.mutationEnvelope)("product-services", "update (dry-run)", storeRef, { id: args.id, ...body }));
41
+ return;
42
+ }
43
+ const result = await this.apiClient.storePut(`/product-services/${args.id}`, body);
44
+ this.outputResult((0, output_1.mutationEnvelope)("product-services", "update", storeRef, result));
45
+ }
46
+ }
47
+ ProductServicesUpdate.description = "Update a product service by ID";
48
+ ProductServicesUpdate.examples = [
49
+ `ecomweb product-services update 3 --name "Đổi trả trong 30 ngày"`,
50
+ `ecomweb product-services update 3 --stdin <<< '{"sort_index":1}'`,
51
+ ];
52
+ ProductServicesUpdate.args = {
53
+ id: core_1.Args.integer({ description: "Service ID", required: true }),
54
+ };
55
+ ProductServicesUpdate.flags = {
56
+ ...base_command_1.BaseCommand.baseFlags,
57
+ stdin: core_1.Flags.boolean({ description: "Read JSON body from stdin" }),
58
+ file: core_1.Flags.string({ description: "Read JSON body from file" }),
59
+ name: core_1.Flags.string({ description: "Service name (max 255 characters)" }),
60
+ description: core_1.Flags.string({ description: "Details, e.g. for a tooltip" }),
61
+ "icon-url": core_1.Flags.string({ description: "Icon or badge image URL" }),
62
+ "redirection-url": core_1.Flags.string({ description: "Where clicking the badge goes" }),
63
+ "sort-index": core_1.Flags.integer({ description: "Display order (0 first)", min: 0 }),
64
+ };
65
+ exports.default = ProductServicesUpdate;
66
+ //# sourceMappingURL=update.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/commands/product-services/update.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,11 @@ export default class ProductTagsList extends BaseCommand {
3
3
  static description: string;
4
4
  static examples: string[];
5
5
  static flags: {
6
+ search: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
7
+ "sort-by": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
8
+ "sort-order": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
9
+ limit: import("@oclif/core/lib/interfaces").OptionFlag<number, import("@oclif/core/lib/interfaces").CustomOptions>;
10
+ offset: import("@oclif/core/lib/interfaces").OptionFlag<number, import("@oclif/core/lib/interfaces").CustomOptions>;
6
11
  "store-ref": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
7
12
  "api-key": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
8
13
  "api-url": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
@@ -1,27 +1,59 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@oclif/core");
3
4
  const base_command_1 = require("../../base-command");
4
5
  const output_1 = require("../../lib/output");
5
6
  class ProductTagsList extends base_command_1.BaseCommand {
6
7
  async run() {
7
8
  const storeRef = this.requireStore();
8
- const tags = await this.apiClient.storeGet("/product-tags");
9
- const data = Array.isArray(tags) ? tags : [];
10
- this.outputResult((0, output_1.listEnvelope)("product-tags", storeRef, data, { total: data.length }, {
9
+ const params = {};
10
+ const flagMap = {
11
+ search: "search",
12
+ "sort-by": "sort_by",
13
+ "sort-order": "sort_order",
14
+ limit: "limit",
15
+ offset: "offset",
16
+ };
17
+ for (const [flag, param] of Object.entries(flagMap)) {
18
+ const value = this.getFlag(flag);
19
+ if (value !== undefined)
20
+ params[param] = value;
21
+ }
22
+ const response = await this.apiClient.listPaginated("/product-tags", params);
23
+ this.outputResult((0, output_1.listEnvelope)("product-tags", storeRef, response.data, {
24
+ total: response.meta.total,
25
+ limit: response.meta.limit,
26
+ offset: response.meta.offset,
27
+ has_next: response.meta.hasNext,
28
+ }, {
11
29
  availableActions: ["create", "rename", "merge", "delete"],
12
30
  hints: {
13
31
  create: `ecomweb product-tags create --name "Summer 2026"`,
14
32
  rename: `ecomweb product-tags rename <id> --name "New name"`,
15
33
  merge: "ecomweb product-tags merge <id> --into <target-id>",
16
34
  delete: "ecomweb product-tags delete <id>",
35
+ next_page: response.meta.hasNext
36
+ ? `ecomweb product-tags list --offset ${response.meta.offset + response.meta.limit}`
37
+ : undefined,
17
38
  },
18
39
  }));
19
40
  }
20
41
  }
21
42
  ProductTagsList.description = "List product tags with product counts";
22
- ProductTagsList.examples = ["ecomweb product-tags list"];
43
+ ProductTagsList.examples = [
44
+ "ecomweb product-tags list",
45
+ "ecomweb product-tags list --search summer --limit 50",
46
+ ];
23
47
  ProductTagsList.flags = {
24
48
  ...base_command_1.BaseCommand.baseFlags,
49
+ search: core_1.Flags.string({ description: "Search tag names" }),
50
+ "sort-by": core_1.Flags.string({ description: "Sort field" }),
51
+ "sort-order": core_1.Flags.string({
52
+ description: "Sort direction",
53
+ options: ["asc", "desc"],
54
+ }),
55
+ limit: core_1.Flags.integer({ description: "Results per page", default: 20 }),
56
+ offset: core_1.Flags.integer({ description: "Offset for pagination", default: 0 }),
25
57
  };
26
58
  exports.default = ProductTagsList;
27
59
  //# sourceMappingURL=list.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/product-tags/list.ts"],"names":[],"mappings":";;AAAA,qDAAiD;AACjD,6CAAgD;AAEhD,MAAqB,eAAgB,SAAQ,0BAAW;IAStD,KAAK,CAAC,GAAG;QACP,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAErC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAQ,eAAe,CAAC,CAAC;QACnE,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QAE7C,IAAI,CAAC,YAAY,CACf,IAAA,qBAAY,EACV,cAAc,EACd,QAAQ,EACR,IAAI,EACJ,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,EACtB;YACE,gBAAgB,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC;YACzD,KAAK,EAAE;gBACL,MAAM,EAAE,kDAAkD;gBAC1D,MAAM,EAAE,oDAAoD;gBAC5D,KAAK,EAAE,oDAAoD;gBAC3D,MAAM,EAAE,kCAAkC;aAC3C;SACF,CACF,CACF,CAAC;IACJ,CAAC;;AA/BM,2BAAW,GAAG,uCAAuC,CAAC;AAEtD,wBAAQ,GAAG,CAAC,2BAA2B,CAAC,CAAC;AAEzC,qBAAK,GAAG;IACb,GAAG,0BAAW,CAAC,SAAS;CACzB,CAAC;kBAPiB,eAAe"}
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/product-tags/list.ts"],"names":[],"mappings":";;AAAA,sCAAoC;AACpC,qDAAiD;AACjD,6CAAgD;AAEhD,MAAqB,eAAgB,SAAQ,0BAAW;IAoBtD,KAAK,CAAC,GAAG;QACP,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAErC,MAAM,MAAM,GAAwB,EAAE,CAAC;QACvC,MAAM,OAAO,GAA2B;YACtC,MAAM,EAAE,QAAQ;YAChB,SAAS,EAAE,SAAS;YACpB,YAAY,EAAE,YAAY;YAC1B,KAAK,EAAE,OAAO;YACd,MAAM,EAAE,QAAQ;SACjB,CAAC;QAEF,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACpD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACjC,IAAI,KAAK,KAAK,SAAS;gBAAE,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;QACjD,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;QAE7E,IAAI,CAAC,YAAY,CACf,IAAA,qBAAY,EACV,cAAc,EACd,QAAQ,EACR,QAAQ,CAAC,IAAI,EACb;YACE,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK;YAC1B,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK;YAC1B,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM;YAC5B,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,OAAO;SAChC,EACD;YACE,gBAAgB,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC;YACzD,KAAK,EAAE;gBACL,MAAM,EAAE,kDAAkD;gBAC1D,MAAM,EAAE,oDAAoD;gBAC5D,KAAK,EAAE,oDAAoD;gBAC3D,MAAM,EAAE,kCAAkC;gBAC1C,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,OAAO;oBAC9B,CAAC,CAAC,sCAAsC,QAAQ,CAAC,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE;oBACpF,CAAC,CAAC,SAAU;aACf;SACF,CACF,CACF,CAAC;IACJ,CAAC;;AA/DM,2BAAW,GAAG,uCAAuC,CAAC;AAEtD,wBAAQ,GAAG;IAChB,2BAA2B;IAC3B,sDAAsD;CACvD,CAAC;AAEK,qBAAK,GAAG;IACb,GAAG,0BAAW,CAAC,SAAS;IACxB,MAAM,EAAE,YAAK,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,kBAAkB,EAAE,CAAC;IACzD,SAAS,EAAE,YAAK,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC;IACtD,YAAY,EAAE,YAAK,CAAC,MAAM,CAAC;QACzB,WAAW,EAAE,gBAAgB;QAC7B,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,KAAK,EAAE,YAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,kBAAkB,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IACtE,MAAM,EAAE,YAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,uBAAuB,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;CAC5E,CAAC;kBAlBiB,eAAe"}
@@ -8,7 +8,8 @@ export default class ProductsCreate extends BaseCommand {
8
8
  name: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
9
9
  slug: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
10
10
  description: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
11
- "category-id": import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
11
+ "category-code": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
12
+ "product-type": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
12
13
  status: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
13
14
  "variant-mode": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
14
15
  "external-id": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
@@ -19,8 +19,10 @@ class ProductsCreate extends base_command_1.BaseCommand {
19
19
  body.slug = this.getFlag("slug");
20
20
  if (this.getFlag("description"))
21
21
  body.description = this.getFlag("description");
22
- if (this.getFlag("category-id") !== undefined)
23
- body.category_id = this.getFlag("category-id");
22
+ if (this.getFlag("category-code") !== undefined)
23
+ body.category_code = this.getFlag("category-code");
24
+ if (this.getFlag("product-type") !== undefined)
25
+ body.product_type = this.getFlag("product-type");
24
26
  if (this.getFlag("status"))
25
27
  body.status = this.getFlag("status");
26
28
  if (this.getFlag("variant-mode"))
@@ -63,7 +65,8 @@ ProductsCreate.flags = {
63
65
  name: core_1.Flags.string({ description: "Product name" }),
64
66
  slug: core_1.Flags.string({ description: "URL slug" }),
65
67
  description: core_1.Flags.string({ description: "Product description" }),
66
- "category-id": core_1.Flags.integer({ description: "Category ID" }),
68
+ "category-code": core_1.Flags.string({ description: "Product taxonomy category code (e.g. apparel.clothing.tops)" }),
69
+ "product-type": core_1.Flags.string({ description: "Free-text product type, when no taxonomy category fits" }),
67
70
  status: core_1.Flags.string({
68
71
  description: "Product status",
69
72
  options: ["draft", "active", "unlisted"],
@@ -1 +1 @@
1
- {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/commands/products/create.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/commands/products/create.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,6 @@ export default class ProductsGet extends BaseCommand {
10
10
  };
11
11
  static flags: {
12
12
  "include-variants": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
13
- "include-category": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
14
13
  "include-combinations": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
15
14
  "include-promotion": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
16
15
  "include-seo-metadata": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
@@ -10,7 +10,6 @@ class ProductsGet extends base_command_1.BaseCommand {
10
10
  const params = {};
11
11
  const flagMap = {
12
12
  "include-variants": "include_variants",
13
- "include-category": "include_category",
14
13
  "include-combinations": "include_combinations",
15
14
  "include-promotion": "include_promotion",
16
15
  "include-seo-metadata": "include_seo_metadata",
@@ -27,7 +26,7 @@ class ProductsGet extends base_command_1.BaseCommand {
27
26
  ProductsGet.description = "Get a product by ID";
28
27
  ProductsGet.examples = [
29
28
  "ecomweb products get 42",
30
- "ecomweb products get 42 --include-variants --include-category",
29
+ "ecomweb products get 42 --include-variants",
31
30
  ];
32
31
  ProductsGet.args = {
33
32
  id: core_1.Args.integer({ description: "Product ID", required: true }),
@@ -35,7 +34,6 @@ ProductsGet.args = {
35
34
  ProductsGet.flags = {
36
35
  ...base_command_1.BaseCommand.baseFlags,
37
36
  "include-variants": core_1.Flags.boolean({ description: "Include product variants" }),
38
- "include-category": core_1.Flags.boolean({ description: "Include category details" }),
39
37
  "include-combinations": core_1.Flags.boolean({ description: "Include variant combinations" }),
40
38
  "include-promotion": core_1.Flags.boolean({ description: "Include promotion details" }),
41
39
  "include-seo-metadata": core_1.Flags.boolean({ description: "Include SEO metadata" }),
@@ -1 +1 @@
1
- {"version":3,"file":"get.js","sourceRoot":"","sources":["../../../src/commands/products/get.ts"],"names":[],"mappings":";;AAAA,sCAA0C;AAC1C,qDAAiD;AACjD,6CAA+C;AAE/C,MAAqB,WAAY,SAAQ,0BAAW;IAqBlD,KAAK,CAAC,GAAG;QACP,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACrC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAE/C,MAAM,MAAM,GAAwB,EAAE,CAAC;QACvC,MAAM,OAAO,GAA2B;YACtC,kBAAkB,EAAE,kBAAkB;YACtC,kBAAkB,EAAE,kBAAkB;YACtC,sBAAsB,EAAE,sBAAsB;YAC9C,mBAAmB,EAAE,mBAAmB;YACxC,sBAAsB,EAAE,sBAAsB;SAC/C,CAAC;QAEF,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACpD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACjC,IAAI,KAAK,KAAK,SAAS;gBAAE,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;QACjD,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,aAAa,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;QAE9E,IAAI,CAAC,YAAY,CAAC,IAAA,oBAAW,EAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;IAChE,CAAC;;AAzCM,uBAAW,GAAG,qBAAqB,CAAC;AAEpC,oBAAQ,GAAG;IAChB,yBAAyB;IACzB,+DAA+D;CAChE,CAAC;AAEK,gBAAI,GAAG;IACZ,EAAE,EAAE,WAAI,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;CAChE,CAAC;AAEK,iBAAK,GAAG;IACb,GAAG,0BAAW,CAAC,SAAS;IACxB,kBAAkB,EAAE,YAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,0BAA0B,EAAE,CAAC;IAC9E,kBAAkB,EAAE,YAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,0BAA0B,EAAE,CAAC;IAC9E,sBAAsB,EAAE,YAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,8BAA8B,EAAE,CAAC;IACtF,mBAAmB,EAAE,YAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,2BAA2B,EAAE,CAAC;IAChF,sBAAsB,EAAE,YAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,sBAAsB,EAAE,CAAC;CAC/E,CAAC;kBAnBiB,WAAW"}
1
+ {"version":3,"file":"get.js","sourceRoot":"","sources":["../../../src/commands/products/get.ts"],"names":[],"mappings":";;AAAA,sCAA0C;AAC1C,qDAAiD;AACjD,6CAA+C;AAE/C,MAAqB,WAAY,SAAQ,0BAAW;IAoBlD,KAAK,CAAC,GAAG;QACP,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACrC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAE/C,MAAM,MAAM,GAAwB,EAAE,CAAC;QACvC,MAAM,OAAO,GAA2B;YACtC,kBAAkB,EAAE,kBAAkB;YACtC,sBAAsB,EAAE,sBAAsB;YAC9C,mBAAmB,EAAE,mBAAmB;YACxC,sBAAsB,EAAE,sBAAsB;SAC/C,CAAC;QAEF,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACpD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACjC,IAAI,KAAK,KAAK,SAAS;gBAAE,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;QACjD,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,aAAa,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;QAE9E,IAAI,CAAC,YAAY,CAAC,IAAA,oBAAW,EAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;IAChE,CAAC;;AAvCM,uBAAW,GAAG,qBAAqB,CAAC;AAEpC,oBAAQ,GAAG;IAChB,yBAAyB;IACzB,4CAA4C;CAC7C,CAAC;AAEK,gBAAI,GAAG;IACZ,EAAE,EAAE,WAAI,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;CAChE,CAAC;AAEK,iBAAK,GAAG;IACb,GAAG,0BAAW,CAAC,SAAS;IACxB,kBAAkB,EAAE,YAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,0BAA0B,EAAE,CAAC;IAC9E,sBAAsB,EAAE,YAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,8BAA8B,EAAE,CAAC;IACtF,mBAAmB,EAAE,YAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,2BAA2B,EAAE,CAAC;IAChF,sBAAsB,EAAE,YAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,sBAAsB,EAAE,CAAC;CAC/E,CAAC;kBAlBiB,WAAW"}
@@ -5,12 +5,10 @@ export default class ProductsList extends BaseCommand {
5
5
  static flags: {
6
6
  search: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
7
7
  status: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
8
- "category-id": import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
9
8
  "inventory-status": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
10
9
  "sort-by": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
11
10
  "sort-order": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
12
11
  "include-counts": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
13
- "include-category": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
14
12
  "include-variants": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
15
13
  "include-combinations": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
16
14
  "include-promotion": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
@@ -10,12 +10,10 @@ class ProductsList extends base_command_1.BaseCommand {
10
10
  const flagMap = {
11
11
  search: "search",
12
12
  status: "status",
13
- "category-id": "category_id",
14
13
  "inventory-status": "inventory_status",
15
14
  "sort-by": "sort_by",
16
15
  "sort-order": "sort_order",
17
16
  "include-counts": "include_counts",
18
- "include-category": "include_category",
19
17
  "include-variants": "include_variants",
20
18
  "include-combinations": "include_combinations",
21
19
  "include-promotion": "include_promotion",
@@ -50,7 +48,7 @@ class ProductsList extends base_command_1.BaseCommand {
50
48
  ProductsList.description = "List products with pagination and filtering";
51
49
  ProductsList.examples = [
52
50
  "ecomweb products list",
53
- "ecomweb products list --status active --category-id 3",
51
+ "ecomweb products list --status active",
54
52
  "ecomweb products list --search shoes --sort-by min_price --sort-order asc",
55
53
  "ecomweb products list --inventory-status low_stock --include-variants",
56
54
  ];
@@ -65,21 +63,19 @@ ProductsList.flags = {
65
63
  description: "Filter by status",
66
64
  options: ["draft", "active", "unlisted"],
67
65
  }),
68
- "category-id": core_1.Flags.integer({ description: "Filter by category ID" }),
69
66
  "inventory-status": core_1.Flags.string({
70
67
  description: "Filter by inventory status",
71
68
  options: ["in_stock", "low_stock", "out_of_stock"],
72
69
  }),
73
70
  "sort-by": core_1.Flags.string({
74
71
  description: "Sort field",
75
- options: ["id", "name", "status", "created_at", "updated_at", "category_id", "min_price", "max_price", "sold"],
72
+ options: ["id", "name", "status", "created_at", "updated_at", "min_price", "max_price", "sold"],
76
73
  }),
77
74
  "sort-order": core_1.Flags.string({
78
75
  description: "Sort direction",
79
76
  options: ["asc", "desc"],
80
77
  }),
81
78
  "include-counts": core_1.Flags.boolean({ description: "Include variant/inventory counts" }),
82
- "include-category": core_1.Flags.boolean({ description: "Include category details" }),
83
79
  "include-variants": core_1.Flags.boolean({ description: "Include product variants" }),
84
80
  "include-combinations": core_1.Flags.boolean({ description: "Include variant combinations" }),
85
81
  "include-promotion": core_1.Flags.boolean({ description: "Include promotion details" }),
@@ -1 +1 @@
1
- {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/products/list.ts"],"names":[],"mappings":";;AAAA,sCAAoC;AACpC,qDAAiD;AACjD,6CAAgD;AAEhD,MAAqB,YAAa,SAAQ,0BAAW;IAiDnD,KAAK,CAAC,GAAG;QACP,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAErC,MAAM,MAAM,GAAwB,EAAE,CAAC;QACvC,MAAM,OAAO,GAA2B;YACtC,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,QAAQ;YAChB,aAAa,EAAE,aAAa;YAC5B,kBAAkB,EAAE,kBAAkB;YACtC,SAAS,EAAE,SAAS;YACpB,YAAY,EAAE,YAAY;YAC1B,gBAAgB,EAAE,gBAAgB;YAClC,kBAAkB,EAAE,kBAAkB;YACtC,kBAAkB,EAAE,kBAAkB;YACtC,sBAAsB,EAAE,sBAAsB;YAC9C,mBAAmB,EAAE,mBAAmB;YACxC,WAAW,EAAE,WAAW;YACxB,WAAW,EAAE,WAAW;YACxB,qBAAqB,EAAE,qBAAqB;YAC5C,KAAK,EAAE,OAAO;YACd,MAAM,EAAE,QAAQ;SACjB,CAAC;QAEF,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACpD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACjC,IAAI,KAAK,KAAK,SAAS;gBAAE,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;QACjD,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAEzE,IAAI,CAAC,YAAY,CACf,IAAA,qBAAY,EAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE;YAChD,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK;YAC1B,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK;YAC1B,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM;YAC5B,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,OAAO;SAChC,EAAE;YACD,KAAK,EAAE;gBACL,UAAU,EAAE,2BAA2B;gBACvC,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,OAAO;oBAC9B,CAAC,CAAC,kCAAkC,QAAQ,CAAC,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE;oBAChF,CAAC,CAAC,SAAU;gBACd,MAAM,EAAE,iCAAiC;aAC1C;SACF,CAAC,CACH,CAAC;IACJ,CAAC;;AA9FM,wBAAW,GAAG,6CAA6C,CAAC;AAE5D,qBAAQ,GAAG;IAChB,uBAAuB;IACvB,uDAAuD;IACvD,2EAA2E;IAC3E,uEAAuE;CACxE,CAAC;AAEK,kBAAK,GAAG;IACb,GAAG,0BAAW,CAAC,SAAS;IAIxB,MAAM,EAAE,YAAK,CAAC,MAAM,CAAC;QACnB,WAAW,EAAE,4BAA4B;QACzC,OAAO,EAAE,CAAC,SAAS,CAAC;QACpB,gBAAgB,EAAE,IAAI;KACvB,CAAC;IACF,MAAM,EAAE,YAAK,CAAC,MAAM,CAAC;QACnB,WAAW,EAAE,kBAAkB;QAC/B,OAAO,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,CAAC;KACzC,CAAC;IACF,aAAa,EAAE,YAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,uBAAuB,EAAE,CAAC;IACtE,kBAAkB,EAAE,YAAK,CAAC,MAAM,CAAC;QAC/B,WAAW,EAAE,4BAA4B;QACzC,OAAO,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,cAAc,CAAC;KACnD,CAAC;IACF,SAAS,EAAE,YAAK,CAAC,MAAM,CAAC;QACtB,WAAW,EAAE,YAAY;QACzB,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,CAAC;KAC/G,CAAC;IACF,YAAY,EAAE,YAAK,CAAC,MAAM,CAAC;QACzB,WAAW,EAAE,gBAAgB;QAC7B,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,gBAAgB,EAAE,YAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,kCAAkC,EAAE,CAAC;IACpF,kBAAkB,EAAE,YAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,0BAA0B,EAAE,CAAC;IAC9E,kBAAkB,EAAE,YAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,0BAA0B,EAAE,CAAC;IAC9E,sBAAsB,EAAE,YAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,8BAA8B,EAAE,CAAC;IACtF,mBAAmB,EAAE,YAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,2BAA2B,EAAE,CAAC;IAChF,WAAW,EAAE,YAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,yBAAyB,EAAE,CAAC;IACtE,WAAW,EAAE,YAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,yBAAyB,EAAE,CAAC;IACtE,qBAAqB,EAAE,YAAK,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,+BAA+B,EAAE,CAAC;IACrF,KAAK,EAAE,YAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,kBAAkB,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IACtE,MAAM,EAAE,YAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,uBAAuB,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;CAC5E,CAAC;kBA/CiB,YAAY"}
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/products/list.ts"],"names":[],"mappings":"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"}
@@ -5,14 +5,12 @@ export default class ProductsSearch extends BaseCommand {
5
5
  static flags: {
6
6
  search: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
7
7
  status: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
8
- "category-id": import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
9
8
  "inventory-status": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
10
9
  "sort-by": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
11
10
  "sort-order": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
12
11
  "min-price": import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
13
12
  "max-price": import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
14
13
  "include-variants": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
15
- "include-category": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
16
14
  limit: import("@oclif/core/lib/interfaces").OptionFlag<number, import("@oclif/core/lib/interfaces").CustomOptions>;
17
15
  offset: import("@oclif/core/lib/interfaces").OptionFlag<number, import("@oclif/core/lib/interfaces").CustomOptions>;
18
16
  "store-ref": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;